summaryrefslogtreecommitdiff
path: root/modules/desktop/wms/hyprland.nix
blob: 8243b3d8638e9bb95244e42d290acef4c043f883 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
{pkgs, lib, config, ...}: 
  let cfg = config.addons.desktop.hyprland;  
in {
  options.addons.desktop.hyprland = {
    enable = lib.mkEnableOption "Enable Hyprland"; 
  };

  config = lib.mkIf cfg.enable (lib.mkMerge [
    (import ../../../utils/makeWm.nix "hyprland" "wayland" )
    {
      programs.hyprland.enable = true; 
      programs.hyprland.withUWSM  = true; 
      programs.uwsm = {
        enable = true; 
        waylandCompositors ={
          hyprland = {
            prettyName = "Hyprland";
            comment = "Hyprland compositor managed by UWSM";
            binPath = "/run/current-system/sw/bin/Hyprland";
          };
        };
      };

    environment.systemPackages = with pkgs; [
      hyprland
      hyprshot
      hypridle
      hyprpaper
      hyprpicker
      hyprnotify
      hyprcursor
      hyprpolkitagent
      wofi
      waybar
      waybar-mpris
      mako
      xdg-desktop-portal-gnome 
      xdg-desktop-portal-hyprland
      wl-clipboard
    ]; 
    }
  ]);
}