So after I last updated my deck I got a generic error message. No biggie. But then suddenly on the next reboot: stuck at the boot logo. Tried lots of things, no way of getting back in. Not with the current kernel, not with the previous one. Really annoying as I use my deck as a general purpose computer too.
So I created a recovery USB. Reinstalling the OS (which attempts to preserve user data and games) failed silently. So I reluctantly copied my entire home folder to an external drive and went with the nuclear option of completely reimaging the internal drive. After steam os finished installation I restored my entire home folder from the backup and restarted the machine.
I was expecting to having to manually reinstall and reconfigure so many apps and settings. And was verily not looking forward to it. But lo and behold: pretty much everything worked just the way it did before the fumbled system update. My desktop layout and window arrangements remained the same, settings and preferences were preserved, it didn’t even log me out of email account. No manual imports of settings required. I had to reinstall most apps via the Discover store first, that much is true. But that took just a couple of minutes.
So yeah, really happy with how that went. Last time I had to reinstall everything on a Windows system it was a major pain as settings are all over the place (on the system drive, in the registry, inside appdata, inside the my documents folder, etc). I guess it has to do with the Linux philosophy of “everything is a file”.
In the future I’ll actually move my /home/
folder to my SSD card so that if this ever happens again the process is even less painful.
PSA: when you backup your home folder make sure to include all the hidden folders and files (anything starting with a dot like the .config
folder).
It’s a good practice to have the home folder on a separate partition, so it doesn’t get overwritten on a reinstall
You don’t even need that. I have switched between several distros and always kept the same filesystem and just deleted everything but the
/home
folder. No problems. Every installer supported that.Removed by mod
The problem is this isn’t the same for every distro and sometimes different versions of the same distro. Also sometimes you have multiple options to do the same thing. There isn’t really a definitive answer, so one would need to know your situation to answer this
Linux has good bones, just needs more polishing and support sometimes.
It’s the year of the Linux desktop!
A decade or so ago, I messed around with Linux on my laptop, it was my main computer and I was distro hopping yo see what was out there.
I had my /home on a different partition and it worked well, until I left a USB hard drive plugged in…
It was my main music drive and I accidentaly picked that one to be erased…
I lost 6000+ songs…
I know the feel, many years ago I chose the wrong folder and overwrote all my video recordings.
Thing is: it was the backup that I accidentally overwrote.
If it was your only copy, then it wasn’t a backup.
True, gives me something to ponder about.
If you like this, you may be interested in https://fedoraproject.org/atomic-desktops/
I’m not a Fedora fan, but this is what Bazzite (desktop Steam Deck like OS) is based on. It’s almost like source control, where any updates you make are on top of the base image, and when you update, it just rebases your changes over to of the new base image (simplified).
Beyond that, take a look at what many people do called dotfiles. This is where you symlink common home directory files ans folders like
.config
/etc to agit
repo, so not only is it easy to restore any Linux OS settings for apps, you also get version history.Ok, sounds good.*but do I have to write manual commit logs whenever a config file changes? Feels like a hassle to track down and understand all the specifics. For instance when are app updates to new version with new features and that is reflected in new config files. I currently use freefilesync for backups and keep up to 5 version of old files.
Nope. You use it like a normal system. It handles that.You mean in
dotfiles
. Yes. But I typically just commit from my main machine just before I’m setting up a new one.