Hi,
I have an air gaped[1] device. ( Devuan )
How do you manage to install packages/software on off-line[1:1] device ?
I’ve heard of apt-offline
but it seem to bug and I don’t know if it’s still maintained (last release two years ago)
of course I’ve tried manually but the dependencies relations are too crazy to do that fully manually
Dependence tree (not complete even) to install for example apt-offline
├── Depends
│ ├── Depends
│ │ ├── Depends
│ │ │ ├── Depends
│ │ │ │ └── python3-dbg_3.9.2-3_amd64.deb
│ │ │ ├── libcurl4-gnutls-dev_7.74.0-1.3+deb11u14_amd64.deb
│ │ │ ├── python3-pycurl-dbg_7.43.0.6-5_amd64.deb
│ │ │ └── python-pycurl-doc_7.43.0.6-5_all.deb
│ │ ├── python3-httplib2_0.18.1-3_all.deb
│ │ └── python3-pycurl_7.43.0.6-5_amd64.deb
│ ├── iso-codes_4.6.0-1_all.deb
│ ├── python3-pysimplesoap_1.16.2-3_all.deb
│ └── python-apt-common_2.2.1_all.deb
├── python3-apt_2.2.1_amd64.deb
└── python3-debianbts_3.1.0_all.deb
Any ideas ?
Thanks.
air gaped, off-line
https://en.wikipedia.org/wiki/Air_gap_(networking) ↩︎ ↩︎
I’d just mirror the whole repo. All of Debian main for a single architecture is less than a terabyte. I imagine yours is similar.
Yes, that’s what I use to using
apt-mirror
. It also works great for any other apt repo.and then I guess it can even be trimmed somewhat. delete the development packages, look through and filter the unneeded larger ones, …
You might want to consider using Docker. You can build an image on your normal machine, export it as a file onto a USB stick, and then transfer it to your air-gapped machine, import it there. Then running it is just
docker run --rm my_image
You can do this for a whole bunch of programs in one image, or a separate image for each one.
If an appimage is available you could probably just move it across on a USB drive.
I found this, maybe it is a suitable solution? https://unix.stackexchange.com/a/408348