I am running Bluefin immutable distro and I would like to test Niri. I found on the net that the cleanest way is to use systemd-sysext and I have managed to install Niri using the community extensions.

Now I would like to install Dank Material Shell, and it has a couple of pre-requisites and I am clueless how I can add them again with systemd-sysext.

I tried to look for additional information, but found very little on the matter. Do any of you have experience with this?

    • Nobody@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      5 days ago

      It’s not how you “generally” do it because many immutable distro developers keep developing additional ways to do package management that are more and more complicated.

      I still don’t get why we can’t have a BSD like approach. Make usr, bin, sbin read-only. But have /usr/local be writable and have a traditional package manager install to that location instead.

      • j0rge@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        4 days ago

        Bluefin maintainer here, you’ve described how Bluefin works except it’s ~/.local/bin.

        I am pretty sure we have not been developing package managers lol.

        • Nobody@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          3 days ago

          So if i were to “sudo dnf install neovim” on Bluefin, that would install Neovim to ~/.local/bin?

          I didn’t mean to say that Universal Blue specifically was making new package managers, but that in general new package managers have been created specifically to solve problems introduced by going immutable/atomic/image-based/whatever.

          • j0rge@lemmy.ml
            link
            fedilink
            arrow-up
            1
            ·
            1 day ago

            No they would brew install neovim. System-level package management goes away entirely, that’s the point.

            What new package managers? homebrew has been around for years. What problems are you describing? If you mean read only root that has been around since the 1980s. The problem as you describe it has been removed, you move on from package based entropy to image based systems.

            This isn’t a trend, modern linux is this way, it’s just the desktop that has been behind until now.

            • Nobody@lemmy.world
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              16 hours ago

              I’m saying that we should be able to use package managers like DNF similarly to homebrew. Rather than managing system packages, it would only be used for packages the user installs. Whether it installs them into /usr/local, /home/dnf, ~/.local/bin doesn’t matter. All that matters is that it’s not managing system packages or mixing system-installed/user-installed packages.

              Homebrew isn’t perfect. Awhile ago I tried to go all homebrew for my packages, but sshfs ended up not working (maybe a SELinux issue?). So I had to fallback to overlaying the package. Simiarly, I tried to install tailscale from brew, couldn’t get it to work.

              It’s just that in “immutable” (I know how much you hate the term lol), there’s package manager fatigue.

              • There’s flatpak, which is only meant for GUI apps but for certain GUI apps (like IDEs), it’s not good.
              • There’s distrobox, which works for both GUI and CLI, but it adds some friction and sometimes the containerization breaks certain functionality.
              • Brew largely avoids the issues of distrobox and works for GUI and CLI, but the GUI app selection is limited and as I mentioned, sshfs and tailscale didn’t work for me there.
              • And so to work around the issues of those 3, we get yet another way to install packages (systemd system extensions
              • (and of course that’s not even speaking of snap, appimage, cpak, unpackaged apps, etc)

              My thesis is essentially that we’re creating too many package package managers with too many compromises. Traditional package management is far from perfect, but at least those package managers, you can do essentially anything. Brew could be that, if it had more GUI apps and maybe better SELinux integration (I say that not knowing for 100% sure that SELinux was the cause of my sshfs issuse). I would like for people to take a step back and find simpler solutions, make a single package manager that can handle any kind of package.

              Edit: correction, tested again and sshfs is actually working, not sure what was causing the original issue. though I still have sshfs overlayed, maybe that provides some necessary dependency or SELinux tweak?

      • 柊 つかさ@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        5 days ago

        I think that’s because the user can still fuck up their system by doing some stuff to those user files, like not managing their packages correctly. Note that for normal users anything that messes up their user experience equates to messing up “the system”. But I don’t really know, it’s just a guess. I just run a normal distro where you can mess with everything (like god intended lol).

        • Nobody@lemmy.world
          link
          fedilink
          arrow-up
          3
          ·
          5 days ago

          That’s not the reason. On immutable distros, you can still mess up your flatpak packages, distrobox containers, homebrew packages, etc.

          Only “OS” files like those in /bin prevent accidental modification and removal since you cannot directly change them, even with root.

          • eldavi@lemmy.ml
            link
            fedilink
            English
            arrow-up
            1
            ·
            5 days ago

            On immutable distros, you can still mess up your flatpak packages, … homebrew packages …

            wait: there’s immutable versions of macos?

            • Nobody@lemmy.world
              link
              fedilink
              arrow-up
              2
              ·
              edit-2
              5 days ago

              MacOS’s has been immutable for a while now. But that’s not what I was referring to. Homebrew also works on Linux, lots of CLI tools and libraries are available there. It does have some GUI apps, but not as many packaged as for MacOS.

              • eldavi@lemmy.ml
                link
                fedilink
                English
                arrow-up
                1
                ·
                5 days ago

                i was aware that homebrew works on linux, i just assumed people would use apt/dnf/guix/whatever since it seems superior to me; but then again, i hardly ever touch homebrew besides my employer provided mac.

                what applications does immutable macos have?

                • Nobody@lemmy.world
                  link
                  fedilink
                  arrow-up
                  3
                  ·
                  5 days ago

                  We are discussing immutable distros, where you don’t have apt/dnf/guix/whatever installed on the host system. They are replaced with other package managers. On Ubuntu Core, that is snap. On Fedora Atomic, that is rpm-ostree, flatpak, and toolbox.

                  MacOS is immutable, there is no non-immutable version.