I maintain several self-hosted systems, and I keep running into the gap between “these packages were installed” and “this machine can be rebuilt.” A selection export is useful, but it does not preserve the exact repositories, versions, signatures or configuration changes that made the system work. It certainly does not guarantee the dependency closure or provide the package artifacts when an upstream repository disappears, metadata changes, or a signing key is rotated.
Nix and Guix address much of this, while containers and distro snapshots cover other parts. I’m not arguing that every distribution should become NixOS. But mainstream package managers could expose a simple, user-owned recovery bundle by default: repository definitions, trust material, package identities or cached artifacts, relevant configuration, and enough dependency state to rebuild offline. I’m wary of recovery plans that quietly depend on a vendor or cloud still being available. Has anyone here actually rebuilt a machine from their recorded state rather than merely reinstalling from memory?