Context
I have a old laptop running on Kubuntu 18.04
that I didn't use for a while and want to update using apt-offline
. The Laptop cannot be connected to internet.
apt-offline
is already installed on the laptop, and functional.
Using the classical process:
# On laptop
apt-offline set update.sig
# On Internet PC
apt-offline get --bundle updates.zip update.sig
# On laptop
apt-offline install updates.zip
Problem
Until here everything seems fine. But ! If I try any apt command after this, I have a Read Error
:
# On Offline Laptop
sudo apt-offline set --upgrade upgrade.zip
# Gathering details for the 'upgrade' operation
# E: Lzma_read Read Error (7)
# E: The package lists or status file could not be parsed or opened.
# ERROR: FATAL: Something is wrong with the APT system
Almost all APT commands give the same result. (the two E:
lines)
I tried to not --bundle
in a zip but save packages in a directory, but same problems.
Source of the Problem
After some digging, it seems that files are correctly formatted, but my guts told me to check the change-log of apt-offline. And… what I didn't find… See below:
> 1.8.2-1
> Superseded in sid-release on 2020-04-30
# (...) skip to line 30
* Switch to 3.0 (quilt) source format
* Update debian/gbp.conf about switch to 3.0 (quilt) source format
So my guess, is that they changed the format of the apt sources files. Unfortunately, I didn't see any backward compatibility in the man.
Foreseen Solutions
I see a few options here :
- Use a converter to convert the new file format to the old one
- Manually install a new version of apt on the offline laptop so its supports the new syntax
- Find a way to tell
apt-offline
to save as old file format - Install a old version of
apt-offline
on my internet PC
Questions
I would like to know what you think about it.
- A) Do you think my hypothesis (See 'Source of the problem') seems correct ?
- Any other explanations you think possible ?
- B) What option would be the safest / fastest ?
Best Answer
Solution #4
Protocol
So I have tried to following protocol :
apt-offline
(v.1.8.1) Heresudo apt remove apt-offline
sudo dpkg -i apt-offline_1.8.1_all.deb
apt-offline get update.sig --bundle updates.zip
sudo apt-offline install updates.zip
sudo apt-offline set upgrade.sig --upgrade
apt-offline get upgrade.sig --bundle upgrades.zip
sudo apt-offline install upgrades.zip
sudo apt upgrade --no-download
Result
No errors where displayed while doing the
apt-offline set --upgrade
.One Error, non-fatal, occured during the
apt-offline get
related to the Thread. See below.Conclusion : I consider the solution #4 successful, as the download of the updates was succesful.