{ pkgs, ... }: { # installs hyprland, and its dependencies programs = { hyprland = { enable = true; xwayland.enable = true; withUWSM = true; }; hyprlock.enable = true; ydotool.enable = true; }; # Optional, hint electron apps to use wayland: environment.sessionVariables.NIXOS_OZONE_WL = "1"; services = { xserver = { enable = true; displayManager.gdm = { enable = true; wayland = true; }; }; dbus = { enable = true; implementation = "broker"; }; }; powerManagement = { enable = true; resumeCommands = '' ${pkgs.hyprlock}/bin/hyprlock -c /home/alice/.config/hypr/hyprlock.conf ''; }; environment.systemPackages = with pkgs; [ libsForQt5.qt5.qtwayland qt6.qtwayland ]; }