How is your experience with Hyprland

Has anyone experienced development using Hyprland with any Silverblue derivative?
Is it worth installing it?
Any recommendation for a tiling window manager for Gnome besides PaperWM extension?

It looks interesting, wonder how you’d install it (assume within a distrobox), and have it available to launch into on login? As a longtime i3 user from back in the day I’d love to try this out.

Finally, I installed Hyprland this afternoon.
According to some posts I read, there are three methods for installing Hyprland in Silverblue derivatives.:

  1. Adding it as a layer. ← It installs but with a missing dependency. I haven’t tested personally. Experience from others.

  2. Rebasing using a Silverblue image (Fedora 40) from here: GitHub - wayblueorg/wayblue: Fedora Atomic images for wayland compositors. It’s called Wayblue. I tested it. Installs and runs well. The only problem is that I would need to reinstall my applications, which are running perfectly in Bluefin-DX.

  3. Using Nix. I haven’t tested it yet. I found it here Reddit - Dive into anything. I may opt this route so I save time in reinstalling development stuff if going with method #2.

The only care I had was creating a dummy user account to login into Hyprland, so my original user account doesn’t get polluted with dotfiles from Hyprland. At the end of the test in #2, I rebooted with my Bluefin-DX and logged in with my user account with no Hyprland/Fedora SB 40 legacy issues. Screenshot attached:

Hey thanks for documenting this because I really want to checkout hyprland, but I’m having an issue. I’ve rebased to a signed silverblue:40:

 phil@fedora:~$ rpm-ostree status
State: idle
Deployments:
ā— fedora:fedora/40/x86_64/silverblue
                  Version: 40.20240426.0 (2024-04-26T02:24:22Z)
                   Commit: 0b286d9a9224913d6b946aa9d386a6ba9f2d7473e0540c1dc3ebf52533aa67ef
             GPGSignature: Valid signature by 115DF9AEF857853EE8445D0A0727707EA15B79CC

  ostree-image-signed:docker://ghcr.io/ublue-os/aurora-dx:40
                   Digest: sha256:624d149bb1a62b9b6fd99c153b0f405b7494ad114df02039ae1ea5ab09dcacc9
                  Version: 40.20240425.0 (2024-04-25T16:51:42Z)

However I’m not able to rebase to hyprland:

phil@fedora:~$ rpm-ostree rebase ostree-image-signed:docker://ghcr.io/wayblueorg/hyprland:latest
Pulling manifest: ostree-image-signed:docker://ghcr.io/wayblueorg/hyprland:latest
error: Preparing import: Fetching manifest: containers-policy.json specifies a default of `insecureAcceptAnything`; refusing usage

BUT, even more concerning, I can’t get back to bluefin:40! :scream:

phil@fedora:~$ !183
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx:40
Pulling manifest: ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx:40
error: Preparing import: Fetching manifest: containers-policy.json specifies a default of `insecureAcceptAnything`; refusing usage

So I’ve mucked up something, perhaps unrelated to hyprland :smiley: any idea how to recover?

Answering my own question

rpm-ostree rollback

Which took me back to a working rpm-ostree. So what silverblue image should rebase to, so I can rebase to hyprland? I must be making this harder than it is… but that’s how I learn! :slight_smile:

You rebased to stock Fedora silverblue which doesn’t have our signing keys so rebasing from there won’t work without rebasing to an unsigned image.

After you’ve done an rpm-ostree and then rebooted into the ublue image the rebase to the wayblue image should work.

Are you back to your working Bluefin?
Did you pin your working Bluefin before rebasing?

I had trouble as well trying to rebase to Wayblue. The problem was that I have too many pinned Bluefin versions. After I unpinned all but one, Wayblue was able to find ā€œroomā€ to install and show itself in the boot menu.

From that experience:
(1) there seems to be a limit in the number of pinned versions a user can have. I am not completely sure, but I read it is five. But it is a mystery to me why Bluefin didn’t let me rebase until I had only one version pinned, even after I did the signature thingy.
(2) Always pin the working version before going around rebasing to another Silverblue derivative.

You are totally fine. :+1:
You don’t have an idea how many times I broke things experimenting with Bluefin-DX. But it is all worth it. It is a totally different kind of Linux.

Got it! I thought you had to go to Silverblue to get to Hyprland, but no, so I got into it after a rebase back to bluefin-dx:40 (which I pinned)

@f0nzie it looks really nice, and makes remember how much I liked i3, but this, everything works and is configured really nicely! I had to blindly figure out the ā€˜super’ key, how to open a term, close the active window, launch the file browser, lock the screen, logout, and open a run dialog. I’m going to get a hyprland.conf from their docs and look at modifying things to learn how to use it, but wow, looks very nice! Thanks for the help everyone - I do miss all the bluefin-dx things now though, so I see you point. Fun!

By the way, there are no dotfiles files or folders associated with this Silverblue derivative installation. I was looking for them to make some modifications. It turned out that Hyprland was installed with Nix. The configuration files, such as hyprland.conf, will be living somewhere else such as /var/usr. That gives me an indication that installing Hyprland via Nix in my current Bluefin-DX might work.

Tested #3 Installing Hyprland using Nix following the instructions here. The installation completes but at the time of starting Hyprland I get some errors related to the absence of these libraries: iris_dri.so, kms_swrast_dri.so, swrast_dri.so.

The only modification to the instructions is exporting a system variable befoire installing nixGL: export NIXPKGS_ALLOW_UNFREE=1.

Anyway, Hyprland doesn’t work in my laptop installing it via Nix.

I just looked up your missing kernel extensions, and found a couple things that might help:

Is the ostree mesa-dri-drivers equivalent installed by default on SB 40, or have you layered it? IDK the rpm-ostree method for checking your equivalent-to-rpm installation status, but you could check your /usr/lib{,64} directories and see if they’re there:

ls -1R /usr/lib{,64}/*.so | grep -i -E 'iris_dri|kms_swrast_dri|swrast_dri'

Here’s the official reference for that package if you want to install it - all 3 of the missing libs you referenced are in it:
https://packages.fedoraproject.org/pkgs/mesa/mesa-dri-drivers/fedora-40.html

While I didn’t see a direct match for someone troubleshooting a Fedora system with the same issue, there is an Ubuntu user who was able to run a different application that required the same dependencies using this environment variable. It’d be easy to try it, e.g.:

MESA_LOADER_DRIVER_OVERRIDE=i965 ./Hyprland

reference: libGL error: failed to load drivers iris and swrast in Ubuntu 20.04 - Ask Ubuntu

Anyway, good luck, and thanks for leading the charge!