Every time I’ve tried to run a standard Linux distro like Ubuntu for more than a couple of years I inevitably end up breaking something in a way that I can’t recover.
I have had the same experience. Don’t run random commands from the internet, don’t install anything that doesn’t come from the distro vendor (a few very notable exceptions can be made for things like Docker if you really must), don’t mess with configuration files, do upgrades their way. Generally speaking you will have zero problems. Sometimes they will do something like switch from one network manager to something like netplan but overall that stuff is trending towards ease of use, not complexity.
If you install the newest versions of whatever from random repos or compile stuff yourself you are very likely to mess things up. But nowadays there is very little reason to do that. And you can pick a distro that releases at a pace you are comfortable with, so you have choices.
Don't use custom repos, use container technologies (e.g. Flatpak, Docker etc) to install applications, update the system regularly (at least once a week).
Usually broken distro upgrades I see are because people run "curl randomdomain.ck/totallysafescript.sh | sudo bash -" to install things or use custom repos.
I hate Flatpaks; they're bloated monstrosities and I only run them when I have no other choice. Outside of that, distribution package maintainers tend to do a good job and that is my preferred way of running programs.
container stuff breaks the MOST for me. The hooks into the subsystems invariably are not working correctly be it like xdg preferences or finding things that are global, its nice to package things into their own sandboxes but those sandboxes have not played well with my wider systems. I am still thankful for snap getting me recent copies of popular software on my aged debian installs however.
This is why I like Arch's Pacman a lot, and the reason why I avoid Debian derivatives.
That `totallysafescript.sh` could at least be inside of the package manager scope. Most of the times someone already did it, and published it to AUR.
IMO the reason why there are so many people running random scripts in Ubuntu/Debian is due to how more difficult/inconvenient it is to get a dpkg .deb when compared to a PKGBUILD file. Same for MacOS, in which you have to either rely on Homebrew wizardry or just running the script
> That `totallysafescript.sh` could at least be inside of the package manager scope. Most of the times someone already did it, and published it to AUR.
The AUR is still not as good as proper package management and shouldn't be considered a stable or reliable method of software distribution at scale.
This experience has been unique to (k)ubuntu (more than 15 years ago) for me.
I've been running rolling release distros for a decade and never had any problems - you have to follow some software migrations when needed, but I managed to migrate to systemd on Arch without an issue while any dist upgrade on ubuntu was wrecking my system.
It's not a good distro. I don't know why people insist on using it. Notice that the GP said Debian instead. (Probably Stable, because testing and unstable will break within 10 years.)
Every time I’ve tried to run a standard Linux distro like Ubuntu for more than a couple of years I inevitably end up breaking something in a way that I can’t recover.
Are you taking snapshots to roll back to?