Wayland Setup
Sunday 10 March 2024

To install wayland and associated tools I did the following

Tools exchange

  • Wayland
  • Xserver + i3 -> Hyprland
  • Polybar -> Waybar
  • Feh -> Hyprpaper
  • scrot -> grim, slurp

Commands

1sudo yay -S wayland hyprland waypaper qt5-wayland qt5ct libva nvidia-vaapi-driver-git waybar-hyprland-git pipewire wireplumber qt6-wayland xdg-desktop-portal-wlr
2sudo systemctl start seatd
3sudo usermod -a -G seat <user>

Problems

Although it worked mostly there were problems

  • screensharing didn’t work with both desktop-portal implementations -wlr and -hyprland

Update 10 March 2024

I got it to work. the previous problem was solved. probably packages are updated to address the issue. the following is the setup

 1require 'bundler/inline'
 2
 3gemfile do
 4  source "https://rubygems.org"
 5
 6  gem "archlinux",
 7      # github: "emad-elsaid/archlinux"
 8      path: "/home/emad/code/archlinux"
 9end
10
11def wayland
12  package %w[
13          hyprland
14          xorg-xwayland
15          waybar
16          wofi
17          hyprpaper
18          swaylock
19          grim
20          slurp
21          wl-clipboard
22          ]
23
24  # This is what allowed screen recording, pulseaudio without pipewire doesn't
25  # allow it
26  package %w[
27          xdg-desktop-portal-hyprland
28          xdg-desktop-portal-gtk
29          pipewire
30          pipewire-audio
31          pipewire-alsa
32          pipewire-pulse
33          wireplumber
34          pavucontrol
35          libpulse
36          ]
37end
38
39linux do
40  wayland
41end

The previous script uses Archlinux Gem I’m developing. you can translate it to steps you do manually.