Live data from Hacker News

Fedora Atomic Desktops

fedoramagazine.org

41–50 of 109 posts

Re: Fedora Atomic Desktops

#42

Earlier quoted context omitted.

After working with these types of systems, I'm convinced we need a new type of package manager that works with overlays and merges package databases somehow. That way you can update the underlying image (at your own peril, maybe) and have the overlay package manager see the new versions. Constantly rebuilding everything when the underlying changes is a waste.

Nix?

AFAIK Nix wouldn't solve this as it has the same issue (/nix/var/nix/db). Here's a scenario to better illustrate:

I'm using systemd nspawn with my host root as a lowerdir overlay. In this container I install some packages not present on the host. The overlay upperdir now includes the new packages and the new package database. I upgrade my host, and now the nspawn package database is wildly out of date because overlay doesn't track line-level file changes.

OverlayFS is really handy but it causes a ton of churn from rebuilding everything.

Re: Fedora Atomic Desktops

#43

If you're not familiar, the Atomic project is really interesting. Its focus is stability and reproducibility, trying to solve the fragility that can happen when the default way to use software in Linux is `sudo apt-get install`. There's a community offshoot called Universal Blue (after the original Atomic image Silverblue). It uses the standards set for containerization to make userland configuration reproducible as…

I will say, I prefer Bazzite for dev too.

In general Project Bluefin is newer, but seems to be trying to get into gaming too.

Likewise, Bazzite is considering developer images also. So I might switch to those.

But it's so easy to switch. I currently use Bazzite + Nix + HomeManager + Flatpaks and it has been fantastic. I only layer Tailscale and a few minor things that need be system level to operate right.

Re: Fedora Atomic Desktops

#45

If you're not familiar, the Atomic project is really interesting. Its focus is stability and reproducibility, trying to solve the fragility that can happen when the default way to use software in Linux is `sudo apt-get install`. There's a community offshoot called Universal Blue (after the original Atomic image Silverblue). It uses the standards set for containerization to make userland configuration reproducible as…

> trying to solve the fragility that can happen when the default way to use software in Linux is `sudo apt-get install`

What fragility is that?

Is it something outlined in https://wiki.debian.org/DontBreakDebian ?

Re: Fedora Atomic Desktops

#46

Earlier quoted context omitted.

I use Bazzite. It includes nix and fleek, so you can easily install packages from the massive nixos ecosystem. I then add JetPack's devbox which is another nix porcelain and use it with direnv to install custom packages for each of my projects. And I have a few distrobox's (toolbox on generic Silverblue) to do things like build Debian packages.

Bazzite's sibling Bluefin is specifically meant for developers (the bluefin-dx image) and standard daily driver. Bazzite is targeted more towards gaming and Steam handheld although you can use it as a desktop too. https://projectbluefin.io/

I tried Bluefin and it's still early days and such. Also Bluefin has gaming images, so it seems it's weirdly trying to compete with Bazzite.

Also Bazzite has an issue open to make `-dx` images.

It seems both are trying to do it all with a different main focus. Bazzite is Gaming but can do other stuff just as well. Bluefin is Dev but can do others.

I personally find Bazzite more diverse and capable.

Re: Fedora Atomic Desktops

#48

If you're not familiar, the Atomic project is really interesting. Its focus is stability and reproducibility, trying to solve the fragility that can happen when the default way to use software in Linux is `sudo apt-get install`. There's a community offshoot called Universal Blue (after the original Atomic image Silverblue). It uses the standards set for containerization to make userland configuration reproducible as…

> It uses the standards set for containerization to make userland configuration reproducible as well. There's a manifest (Containerfile) that enumerates all the modifications, which means an upgrade is bump the version of the base image and replay all the modifications from the manifest.

Is the containerfile syntax and reproducibility as good as configuration.nix / NixOS?

I love NixOS but it’s a very acquired taste, to the point where even I occasionally wish I was running something bog-standard. If this is similar to NixOS but closer to regular Linux, that’d be nice to recommend to friends.

Re: Fedora Atomic Desktops

#49
post #48

If you're not familiar, the Atomic project is really interesting. Its focus is stability and reproducibility, trying to solve the fragility that can happen when the default way to use software in Linux is `sudo apt-get install`. There's a community offshoot called Universal Blue (after the original Atomic image Silverblue). It uses the standards set for containerization to make userland configuration reproducible as…

> It uses the standards set for containerization to make userland configuration reproducible as well. There's a manifest (Containerfile) that enumerates all the modifications, which means an upgrade is bump the version of the base image and replay all the modifications from the manifest. Is the containerfile syntax and reproducibility as good as configuration.nix / NixOS? I love NixOS but it’s a very acquired taste,…

I've only used NixOS, but the Containerfile looks more like a shell script than a Nix config:

https://github.com/ublue-os/bazzite/blob/main/Containerfile

Re: Fedora Atomic Desktops

#50
post #48

If you're not familiar, the Atomic project is really interesting. Its focus is stability and reproducibility, trying to solve the fragility that can happen when the default way to use software in Linux is `sudo apt-get install`. There's a community offshoot called Universal Blue (after the original Atomic image Silverblue). It uses the standards set for containerization to make userland configuration reproducible as…

> It uses the standards set for containerization to make userland configuration reproducible as well. There's a manifest (Containerfile) that enumerates all the modifications, which means an upgrade is bump the version of the base image and replay all the modifications from the manifest. Is the containerfile syntax and reproducibility as good as configuration.nix / NixOS? I love NixOS but it’s a very acquired taste,…

It's not as exactly reproducible because there's no version locking, however after running the Containerfile you have a snapshot of the filesystem that is ready to be used and that you can save. Universal blue images use GitHub container registry, and it's 90 days of history to have at least 90 days of rollbacks available.

I'm currently setting up a Bazzite machine by using a GitHub actions to build every day an image from Bazzite's image and adding/removing packages and files on top. I have the DE, login manager and all its customizations in the image and for the CLI utilities and thing like that I use home manager.

I like this setup because you just need to know Linux to customize the image, Containerfile's are just series of commands or file copies from the repo, compared to nix it's easier.

Post reply on HN