this post was submitted on 02 May 2024
34 points (90.5% liked)
Linux
48003 readers
1049 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
All good on my device but I use fedora atomic. If it wasn't good, I could just roll back.
Does Fedora atomic use a rolling release model?
No, it's image based.
You can always use the testing image if you want
No they just package the exact same versions, but differently. It uses rpm-ostree which is like Git but for operating systems (binaries).
A quick tour through Atomic Fedora
It relies on a main image, which could just be used like that. This is a minimal Fedora install, containing everything thats needed and nothing more.You would then install apps via Flatpak, Appimage, binaries, Toolbox etc.
Or you can layer RPM packages, and you can install everything as on normal fedora. This will make updates a bit slower but is usually needed for small things like a different shell.
These packages will be kept updated in parallel to the OS. The OS is always 100% what Fedora ships, while the RPMs come from all the repos you can imagine, COPR, rpmfusion etc.
Rpm-ostree pulls down the update and the packages are added to that. But instead of modifying the current OS, it clones it, using the current one, and the differences (updates) that are downloaded.
This new image is now either complete, or gets the wanted RPMs added or removed. The new image is then set as new boot target.
You can use your system how long you want, but when you reboot (and this takes not any longer than a regular reboot) you will boot into the new version.
If something broke, you always have the last system kept. You can increase that number, so only the x-th last image gets automatically deleted. And you can manually
sudo ostree admim pin 0
the current system, if you know it works well and you have for example a driver update, or a big system update, and want to be sure you will have this as backup.You can also rebase, which means your system will now mirror a different repo of theirs. For example from Silverblue (GNOME) to Kinoite (KDE). This will change everything so that you now 100% have the packages of the new repo, failsafe.
If it would fail, the update would cancel and you dont get one.
So remember:
So basically: rpm-ostree gives you the needed control to have a stable OS.
But still not everything is "immutable" /managed with rpm-ostree. Your entire
/var
is mutable, and/etc
and/home
are symlinks from that. This means you can configure and break what you want, which can also be problematic.Note though, that the vanilla
/etc
files are stored in/usr/etc
, so you can restore them. Make sure to exclude crypttab, fstab and a few more!If someone is interested in the atomic concept, i would recommend looking into uBlue. It offers the Fedora atomic spins with a lot of tweaks applied that take the user experience to another level. Everything is just hassle free. Highly recommended! There are separate images with tweaks for gamers and developers.
Thx, that was what I needed to understand Fedora atomic a bit better. Cool concept!
Same, still have Kinoite 39 pinned to be safe (even though I imagine rolling back would cause tons of broken dotfiles), but didnt need that.
Dotfiles are really the issue.
Version control the dot files.
How would this be done?