• hisao@ani.social
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 day ago

    Non-Fedora-based immutable distros:

    • 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:

    distrobox create -n ubuntubox -i ubuntu:20.04
    distrobox enter ubuntubox
    sudo apt-get install mydevlibraries
    ...
    
    • humanspiral@lemmy.ca
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      24 hours ago

      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?

      • hisao@ani.social
        link
        fedilink
        English
        arrow-up
        0
        ·
        23 hours ago

        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.