Immutable systems rely heavily on Flatpak because the universal installer sandboxes an installed application
They are also all Fedora based so far. Can you install from tar.gz into home directory?
Installing development libraries, whether bleeding edge nightlies, or just slightly obscure, often requires write access to some of the key folders. Does that get difficult?
You’d do most of that stuff inside a container (Distrobox probably). You’d basically have a “clean OS” to start with (doesn’t have to be the same OS as the host even) and install your libraries like normal. Distrobox does a good job of integrating with the host so you mostly won’t know you’re in a container. It’s not perfect though, and if you have little experience with containers you’ll definitely have a hard time doing what you need to.
NixOS → Not based on any distro. Immutable-like because the entire system is declaratively managed through the Nix package manager. Rollbacks are built-in.
openSUSE MicroOS / Aeon → Based on openSUSE Tumbleweed (not Fedora). Uses transactional updates and Btrfs snapshots for immutability.
Vanilla OS (2.x, Orchid) → Originally Ubuntu-based, but now moving to a Debian Sid base with its own package manager (apx) and immutability features.
Endless OS → Independent distro, based on Debian but shipped as a read-only OSTree system with Flatpak apps.
Ubuntu Core → Based on Ubuntu, but entirely snap-based and immutable. Mostly aimed at IoT.
blendOS → Independent, immutable, designed around atomic updates and containerized package managers (supports apt, dnf, pacman, etc. via containers).
Installing development libraries, whether bleeding edge nightlies, or just slightly obscure, often requires write access to some of the key folders. Does that get difficult?
Nope if you do it in containers. In case of Bazzite, you have podman/distrobox/toolbox, and this particular thing you’d usually want to do in distrobox, which is going to be easier/faster than going full general docker/podman container route. It usually goes like this:
I think you are saying that distrobox on Fedora based system can create a ubuntu/mint/whatever “subsystem” and inside that distrobox it is as though you were in ubuntu/apt environment?
Yes, and the difference compared to docker/podman, is that a lot of things like networking, gpu, audio, shared memory, etc, are passed through automatically by default. So you for example can build/run games inside those containers and expect native performance.
They are also all Fedora based so far. Can you install from tar.gz into home directory?
Installing development libraries, whether bleeding edge nightlies, or just slightly obscure, often requires write access to some of the key folders. Does that get difficult?
You’d do most of that stuff inside a container (Distrobox probably). You’d basically have a “clean OS” to start with (doesn’t have to be the same OS as the host even) and install your libraries like normal. Distrobox does a good job of integrating with the host so you mostly won’t know you’re in a container. It’s not perfect though, and if you have little experience with containers you’ll definitely have a hard time doing what you need to.
Non-Fedora-based immutable distros:
Nope if you do it in containers. In case of Bazzite, you have podman/distrobox/toolbox, and this particular thing you’d usually want to do in distrobox, which is going to be easier/faster than going full general docker/podman container route. It usually goes like this:
distrobox create -n ubuntubox -i ubuntu:20.04 distrobox enter ubuntubox sudo apt-get install mydevlibraries ...
I think you are saying that distrobox on Fedora based system can create a ubuntu/mint/whatever “subsystem” and inside that distrobox it is as though you were in ubuntu/apt environment?
Yes, and the difference compared to docker/podman, is that a lot of things like networking, gpu, audio, shared memory, etc, are passed through automatically by default. So you for example can build/run games inside those containers and expect native performance.