20+ years ago, Lindows had a great app store that let you create an “aisle” of your favorite apps so if/when you’d reinstall your OS, instead of searching and installing all your apps one-by-one, you’d just go to your aisle, click “install all” and boom.
Is there anything that exists like that today?
For me that’s the main benefit of using home-manager on nixos and other distros. You basically just make a list of packages, and install/update them through home-manager.
How long does it take to get home-manager set up?
It’s pretty fast, especially if you don’t get into flakes right away. You basically just install nix with a one liner -> install home-manager through nix -> start adding packages to list.
Here’s a comment I made when I was starting out with basic instructions. Do note I’m now using this command for updates instead (updates hm, package definitions, and the packages themselves)
cd ~/dotfiles/nix/ && nix flake update && nix-channel --update && home-manager switch --flake ~/dotfiles/nix/
For Arch you run
pacman -Qewhich lists all installed packages that were not installed as a dependency. I output that to a location via golang script which is monitored by the pCloud client for automatic backup along with a lot of other configs from$HOME/.config. I then have a systemd service that fires the script and a timer to kick off that service periodically.This is the way.
On a related note, would you recommend restoring an entire home directory (including the dot files and all the dot directories) once I reinstall all the packages after a fresh install? Would it basically replicate my restored setup or would there be random issues that emerge? I’m thinking particular system settings related to kde/gnome settings, but others I might not be aware of.
For me, I tend to focus on specific directories I know I’d need data from (or that will just be a hassle to rewrite config for). I have a scripts folder that gets backed up, Books,
.mozilla, etc. A lot of things I just know I won’t need like.cache. That folder is 7GB and mostly just the cache from yay needing to be cleared out.I don’t backup my entire home directory because I’m worried ACLs may change or other little issues that will take more time than its worth to correct. That said, you could. You worried about something like that, you could pull the existing ACLs:
find ~/ -type f -exec getfacl --absolute-names {} + > home_acls_backup.txtand then restore them:setfacl --restore=home_acls_backup.txtI haven’t really used KDE much, but I know it has a theme data in
.local/sharethat you’d want (and probably the.cachefolder as well). GNOME keeps theme data in.themes,.icons,.fonts. They might just be defaults, but if you have anything custom, you’d want those folders too.Thank you for your reply, this is helpful to know.
That’s what I currently do as well, I just backup particular .config subfolders and other directories. I’ll probably continue to avoid just raw transferring an entire home directory on a new install.
One other thing I didn’t mention is it depends on the backup tool you use. Not all of them are filesystem aware. What that means is if you have hardlinks present those will not be preserved.
That can be important to remember as it will bork things down the road with the restoring. If you aren’t familiar with linking: Hard links point to actual data (think of it like a pointer in C). Soft links (symbolic) point to file path.
use your distros method of listing every installed package and modify it to be a install command
NixOS has a config file, you backup that file, you can duplicate your system with it.
OpenSUSE has an AutoYast system where you can build a config for the next install.
OpenSUSE microOS has ignition and combustion files to replicate a system from scratch. For those that don’t like hand typing a config file there is this web based tool to write out a file based on selections https://opensuse.github.io/fuel-ignition/
instead of searching and installing all your apps one-by-one
And… that takes what, a good all 5 minutes?
Honestly unless you either re-install an OS frequently (which is a weird thing to do on a day-to-day system) or plan to go offline for a long period of time I bet you’d spend more time finding a “solution” then not doing so manually.
I’m not you but when I install a fresh OS (maybe once every couple of years, at most!) on my desktop (not counting other devices, handheld, servers, etc) I install
- Firefox (if it’s not already by default, if it’s ESR then I might get a different update mechanism)
…well honestly that’s it!
Then yes as I start to work I add KDEnlive, OBS, Blender, Cura, OpenSCAD, etc.
My point being that I can’t imagine a moment when, as you start the OS you actually need all the other software at the same time. You usually need one, then another, e.g. Inkscape to edit a PDF document you just received, then you pass the extract image to e.g. LibreOffice Writer.
So… not having everything from the start is IMHO a good moment to consider what you actually need, keep things lean.
TL;DR: there are technical solutions but on a desktop connected to the Internet it’s not worth it.
PS: I do personally keep my bash history or my
~/bin/and~/Apps/~ directories across installations (because I do keep~` on a dedicated partition) with some AppImages in but honestly I don’t rely on these.Assuming you are using an apt/dpkg distro:
Save the list of packages on your reference system:
dpkg --get-selections > packages.lstThen install packages based on that list on your target system, after updating the list of available packages:
dpkg --merge-avail <(apt-cache dumpavail) dpkg --clear-selections dpkg --set-selections < packages.lst apt-get dselect-upgradeI’m not advocating for anything, but if I remember correctly, flatpaks are typically installed in user home directory. If that’s the case, then it’s just a matter of copying a directory and installing flatpak. I might be wrong though.
I think that’s true, but permissions might come into play and really cause pain; it’s probably best to just reinstall.




