How do I get the package to the computer and how to install with apt?

  • On a computer that is online, you can say apt install --download-only foo to download (and not actually install) the .deb files for foo and its dependencies to the directory /var/cache/apt/archives/. You can then copy them from the online computer to the offline computer, and install them with dpkg -i *deb (assuming the debs are in your current working directory). Note however that apt on the online computer will only download dependencies which aren’t already installed. To force re-downloading of a specific package which is already installed, you can say apt install --reinstall --download-only foo.

    Instead of downloading with apt install --download-only you could also find the download paths for individual .deb packages using https://packages.debian.org/foo and then download them using a browser.

    You could also copy the contents of /var/lib/apt/lists/ (after running apt update) and the contents of /var/cache/apt/archives/ both to the corresponding locations on the offline computer and, if your sources.list files have the same entries, then you can offline install the things you’ve put in the cache folder using apt instead of dpkg.

    Or, if you have lots of disk space, you can create an offline mirror of all (or some) of debian and point your sources.list file at a local file:/// source and then you can use apt like normal but completely offline.

    • I used to do this many years back with a USB stick before I had Internet access at home. I think it was only the sources.list file that I needed to copy around along with a config file and the actual .deb files. It was possible to use apt-get on the offline machine instead of dpkg which worked better.