• merc@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    6
    ·
    2 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/

    • towerful@programming.dev
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 day ago

      I moved to endeavouros. First time using a rolling release, and I was struggling with some webdev stuff cause node was on a recent non-lts build and a few other things.
      Not a problem for building, cause I already have that containerised. But things like installing packages was refusing, and obviously couldn’t run dev workflows.

      Until I realised I should just work inside a container.

      I know vscode is still Microsoft (and I’m sure I could get it to work with vscodium), but the dev container workflow is fantastic.
      Absolute game changer.
      And I know I can easily work on a different platform, os whatever. And still have the same dev environment.

      • merc@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        3
        ·
        21 hours ago

        Until I realised I should just work inside a container.

        Yeah, it’s a game changer. Especially if you have different projects on the go. I’m used to having to deal with an ugly path with all kind of random things in it because I need them for one project. But, with containers / distroboxes / toolbx you can keep those changes isolated.

    • Dave@lemmy.nz
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 day 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!

      • merc@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 day 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.

        • Dave@lemmy.nz
          link
          fedilink
          English
          arrow-up
          3
          ·
          1 day ago

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

          Thanks for all the advice 🙂