• @[email protected]
    link
    fedilink
    English
    012 days ago

    How does Bazzite fare when I want to do something a bit different. Install docker, Python, PHP, sqlite, etc. I’d normally just install them, but does this work for Bazzite and other atomic/immutable distros?

    • @[email protected]
      link
      fedilink
      English
      012 days ago

      So, there are multiple ways of installing things. For GUI apps the standard way is flatpaks. Some non-GUI things are installed that way, but it’s less common.

      For CLI apps, homebrew is installed by default and it’s recommended as a way to install CLI things.

      The method I like for apps that have a lot of interdependencies is to use a distrobox. If you want a development environment where multiple apps all talk to each-other, you can isolate them on their own distrobox and install them however you like there.

      I currently have a distrobox running ubuntu that I use for a kubernetes project. In that distrobox I install anything I need with apt, or sometimes from source. Within that kubernetes project I use mise-en-place to manage tools just for that particular sub-project. What I like about doing things this way is that when I’m working on that project I have all the tools I need, and don’t have to worry about the tools for other projects. My base bazzite image is basically unchanged, but my k8s project is highly customized.

      If you really want to, you can still install RPMs as overlays to the base system, it’s just not recommended because that slows down upgrades.

      More details here:

      https://docs.bazzite.gg/Installing_and_Managing_Software/

      • @[email protected]
        link
        fedilink
        English
        012 days ago

        Awesome, thanks for the explanation! I’d been put off Bazzite and other immutable distros because I had seen threads saying you basically needed flatpak for everything, but it sounds like that’s not true.

        I don’t need a project at the moment but I will give this a go once I am ready for one!

        • @[email protected]
          link
          fedilink
          English
          012 days ago

          Yeah, I only use flatpak for GUI apps that don’t need any special handling. To be fair, that’s a decent number of the things I use most often: Firefox, Thunderbird, Signal, Kodi, Discord, Gimp, VLC. I think it’s also how I installed some themes for KDE / Plasma.

          Console stuff I’ve either done in a distrobox using the conventions of that OS (apt for the Ubuntu one, DNF for the Fedora one), or I’ve used homebrew. But, I haven’t used too much homebrew because I want my “normal” console to be as unchanged as possible.

          There are a few things I’ve used distrobox-export to make available outside the distrobox.

          It took me a little while to understand how you’re supposed to think about the system, but now that I think I get it, I really like it. My one frustration is that there’s an nVidia driver bug that’s affecting me, and nVidia has been unable to fix it for a few months. I think I’d be in exactly the same situation with a traditional distro. The difference is that if they ever fix it, I’ll have to wait a couple of weeks until the fix makes it to the Bazzite stable build. I suppose I could switch to Bazzite testing and get it within days of it being fixed instead of weeks. Apparently just use a “rebase” command and reboot. But, I’m hesitant to do that because other than the nVidia driver, everything’s so stable.

          • @[email protected]
            link
            fedilink
            English
            012 days ago

            Lucky for me I don’t have any Nvidia so things sail a bit smoother.

            Thanks for all the advice 🙂