Debian has thousands of packages in the official repo, so it is possible to download 5 blu-ray discs then merge the ISOs into a single ~90gb ISO containing all apps. From there, that disk can be used to install apps at any moment without Internet access.
Then when Debian moves to a new release, it’s possible to go to a public library and fetch only apps that changed because jigdo can use the previous disk to build the new ISOs.
Apparently Ubuntu and Fedora both also have the same jigdo capability. Is that all? Are there any other distros that:
- have a good number of officially supported apps, and
- have a download manager that can build a full release using the previous release
?
I am assuming jigdo is the only game in town, and that without a *.jigdo file we can only fetch whole new set of images when a new version is released. Correct?


There was a guy who installed every
nixpkgspackage, ending up with 1.3 TB of installed software. The system was still usable, but you can of course elect to not keep tens of thousands of binaries in yourPATHand still have them in your on-disk cache, which would basically enable fully offline package management.No idea if there’s some script to prefill your cache or something. Does it count if you can bring your laptop to the library and run
nix-env -i?AFAIK, it’s possible with any distro to go to the library every time an app needs to be installed. That’s what I’m looking to avoid. I want the whole collection of interoperable versions of officially supported apps on a disk. Then I can spontaniously install something without a working connection. When I go to the library for any reason, I can opportunistically build an updated release.
Another part of this is having multiple machines (some of which are too big to bring to the library). The install disk requires 1 fetch of emacs, for example, which can then be installed many times on offline machines.
If every Nix store path is cached, there’s no need for a network connection to link any of them into your system, and you can serve your cache to other systems you have.
If I understand you correctly, what you want is sort of the exact inverse of something like
omnibin, where every binary innixpkgsis in thePATHbut gets fetched on the fly, whereas you want to have every package lying in wait on your disk but not really visible to your runtime environment.