summaryrefslogtreecommitdiff
path: root/modules/features/niri.nix
blob: 2aa9d382300d66432408d5f6c1c4f8b83a66cb1f (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
{
  self,
  inputs,
  ...
}: {
  flake.nixosModules.ngeNiri = {
    pkgs,
    lib,
    ...
  }: {
    programs.niri = {
      enable = true;
      package = self.packages.${pkgs.stdenv.hostPlatform.system}.ngeNiri;
    };
  };

  perSystem = {
    pkgs,
    lib,
    self',
    ...
  }: {
    packages.ngeNiri = inputs.wrapper-modules.wrappers.niri.wrap {
      inherit pkgs;
      settings = {
        spawn-at-startup = [
          (lib.getExe self'.packages.ngeNoctalia)
        ];

        xwayland-satellite.path = lib.getExe pkgs.xwayland-satellite;

        layout.gaps = 5;

        binds = {
          "Mod+Return".spawn-sh = lib.getExe pkgs.alacritty;
          "Mod+Shift+Q".close-window = {};
          "Mod+D".spawn-sh = "${lib.getExe self'.packages.ngeNoctalia} ipc call launcher toggle";
          "Mod+Shift+S".spawn-sh = "${lib.getExe pkgs.niri} msg action screenshot";
        };
      };
    };
  };
}