offline package management functionality to Debian based system. It can be
used to download packages and its dependencies to be installed later on (or
required to update) a disconnected machine. Packages can be downloaded from a
different connected machine.
It can also fetch bug reports for the packages that are downloaded.
Unless the -h/-v or --help/--version options are given, one of the
commands must be provided.
is the signature file required for details about data to be downloaded. This
file should have been generated by the above
-d, --download-dir DIR_NAME
Download data to the specified DIR_NAME folder. If no folder name is specified, data is downloaded to a folder in the TEMPDIR path in the format
-s, --cache-dir DIR_NAME
Look for data in the cache before downloading it from the internet. If you are on a Debian box, you would want to specify
here. If the data is not available in the cache, the downloaded data is also copied to the cache.
Enabling this option will bypass the checksum verification of each downloaded file thus losing integrity of the package. Usage of this option is highly discouraged
-t, --threads NUM_OF_THREADS
Number of threads to spawn for downloads. Default is 1. Using too many threads can overload the servers, hence it is advisable to keep the number low
Create an archive file FILENAME. The file is archived in zip format
Download bug reports for packages that are being downloaded. Currently only
the Debian BTS is supported.
installs APT data to the APT package database and updates it.
Install data from the archive (bundle) file.
Install data from the folder path.
Either FILE or FOLDER argument can be provided to the
Skip listing of downloaded bug reports, if any.
Don't verify GPG signatures for the data to be installed to APT. Usage of this option is highly discouraged.
Path to filesystem where we want the source packages to be installed to. Default will be a folder in your TEMPDIR.
Show help message
Run in verbose mode
Developer only. Used for testing on windows
Display the version of the progream
To keep your disconnected machine up-to-date, here is a typical workflow
NOTE: argument/option handling
apt-offline relies on argparse for argument/option parsing. To explicitly instruct apt-offline about an argument, you can pass it with the -- delimiter.
Ex. apt-offline set --update --upgrade --install-packages wm2 -- foo.sig
By specifying the
delimiter, we instruct apt-offline that foo.sig is an argument to the
command and not to the
apt-offline set FILENAME
This command will generate a signature file FILENAME for APT Package Database.
To generate only the signature for updates, use the --update option. To
generate only the signature for package upgrades, use the --upgrade option.
Default behavior when no options are specified is to generate a signature for
both the operations.
apt-offline get FILENAME
This command will fetch the data required for APT Package Database as per the
signature file FILENAME generated by
To download bug reports also use the --bug-reports option. Currently supported bug tracker is Debian BTS only.
By default, if neither of -d or --bundle options are specified, apt-offline downloads data into a folder inside the TEMPDIR environment folder in the format apt-offline-downloads-PID, where PID is the PID of the running apt-offline process. Example on a linux machine would be something like: /tmp/apt-offline-downloads-23242/
apt-offline install FILE|FOLDER
This command will sync the data downloaded by
to the APT Package Database and update it.
Depending on where the data was downloaded to or packed into, either the
absolute FOLDER path or the archive FILE path can be specified.