summaryrefslogtreecommitdiff
path: root/modules/features/desktop/niri.nix
diff options
context:
space:
mode:
authorDominik Kaiser2026-06-12 18:10:16 +0200
committerDominik Kaiser2026-06-12 18:10:16 +0200
commit2df5bc584899f427495cc20927170de2a2c84b32 (patch)
treed1a87bcd3c17d605e3f25e4bb8d7a6ec060c73ba /modules/features/desktop/niri.nix
downloadnixos-2df5bc584899f427495cc20927170de2a2c84b32.tar.gz
nixos-2df5bc584899f427495cc20927170de2a2c84b32.zip
Setup luna
Diffstat (limited to 'modules/features/desktop/niri.nix')
-rw-r--r--modules/features/desktop/niri.nix76
1 files changed, 76 insertions, 0 deletions
diff --git a/modules/features/desktop/niri.nix b/modules/features/desktop/niri.nix
new file mode 100644
index 0000000..1b0df47
--- /dev/null
+++ b/modules/features/desktop/niri.nix
@@ -0,0 +1,76 @@
+{ self, inputs, ... }: {
+
+ flake.nixosModules.niri = { pkgs, lib, ... }: {
+ programs.niri = {
+ enable = true;
+ package = self.packages.${pkgs.stdenv.hostPlatform.system}.myNiri;
+ };
+ };
+
+
+ perSystem = { pkgs, lib, self', ... }: {
+
+ packages.myNiri = inputs.wrapper-modules.wrappers.niri.wrap {
+ inherit pkgs;
+ #env.QT_QPA_PLATFORMTHEME = "gtk3";
+ settings = {
+ spawn-at-startup = [
+ "${lib.getExe self'.packages.myNoctalia}"
+ ];
+
+ spawn-sh-at-startup = [
+ "${lib.getExe pkgs.brightnessctl} set 60%"
+ ];
+
+ xwayland-satellite.path = lib.getExe pkgs.xwayland-satellite;
+
+ input.keyboard = {
+ xkb.layout = "de";
+ };
+
+ layout.gaps = 10;
+
+ prefer-no-csd = true;
+
+ binds = {
+ "Mod+Return".spawn-sh = lib.getExe pkgs.alacritty;
+ "Mod+S".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call launcher toggle";
+ "Mod+Q".close-window = _: {};
+ "Mod+Shift+E".quit = _: {};
+ "Mod+F".maximize-column = _: {};
+ "Mod+H".show-hotkey-overlay = _: {};
+ "Mod+Left".focus-column-left = _: {};
+ "Mod+Right".focus-column-right = _: {};
+ "Mod+Shift+Left".move-column-left = _: {};
+ "Mod+Shift+Right".move-column-right = _: {};
+ "Mod+Prior".focus-workspace-up = _: {};
+ "Mod+Next".focus-workspace-down = _: {};
+ "Mod+Shift+Prior".move-column-to-workspace-up = _: {};
+ "Mod+Shift+Next".move-column-to-workspace-down = _: {};
+ "Mod+O".toggle-overview = _: {};
+ "Mod+G".toggle-window-floating = _: {};
+ "Mod+Ctrl+Left".consume-or-expel-window-left = _: {};
+ "Mod+Ctrl+Right".consume-or-expel-window-right = _: {};
+ "Mod+Space".switch-focus-between-floating-and-tiling = _: {};
+ "Mod+Ctrl+Space".switch-preset-column-width = _: {};
+ "Mod+W".spawn-sh = "$BROWSER";
+ "Mod+E".spawn-sh = "emacsclient -c";
+ };
+
+ window-rules = [
+ {
+ matches = [ { app-id = ".*"; } ];
+ opacity = 0.90;
+ }
+ ];
+
+ };
+
+ extraSettings = [
+ { include = [ { optional = true; } "~/.config/niri/noctalia.kdl" ]; }
+ ];
+ };
+
+ };
+
+}