From 16f1554e54b9c6957ea449936091ff6e28246822 Mon Sep 17 00:00:00 2001 From: Natasha Moongrave Date: Thu, 18 Jun 2026 21:02:24 +0200 Subject: Added the base --- modules/features/niri.nix | 44 ++++++++++++++++++++++++++++++++++ modules/features/noctalia.json | 0 modules/features/noctalia.nix | 14 +++++++++++ modules/hosts/mystra/configuration.nix | 19 +++++++++++++++ modules/hosts/mystra/default.nix | 11 +++++++++ 5 files changed, 88 insertions(+) create mode 100644 modules/features/niri.nix create mode 100644 modules/features/noctalia.json create mode 100644 modules/features/noctalia.nix create mode 100644 modules/hosts/mystra/configuration.nix create mode 100644 modules/hosts/mystra/default.nix diff --git a/modules/features/niri.nix b/modules/features/niri.nix new file mode 100644 index 0000000..312ba10 --- /dev/null +++ b/modules/features/niri.nix @@ -0,0 +1,44 @@ +{ + 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; + settings = { + spawn-at-startup = [ + (lib.getExe self'.packages.myNoctalia) + ]; + + xwayland-satellite.path = lib.getExe pkgs.xwayland-satellite; + + input.keyboard.xkb.layout = "cz-qwertz"; + + layout.gaps = 5; + + binds = { + "Mod+Return".spawn-sh = lib.getExe pkgs.alacritty; + "Mod+Shift+Q".close-window = null; + "Mod+S".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call launcher toggle"; + }; + }; + }; + }; +} diff --git a/modules/features/noctalia.json b/modules/features/noctalia.json new file mode 100644 index 0000000..e69de29 diff --git a/modules/features/noctalia.nix b/modules/features/noctalia.nix new file mode 100644 index 0000000..7b4cd7d --- /dev/null +++ b/modules/features/noctalia.nix @@ -0,0 +1,14 @@ +{ + self, + inputs, + ... +}: { + perSystem = {pkgs, ...}: { + packages.myNoctalia = inputs.wrapper-modules.wrappers.noctalia-shell.wrap { + inherit pkgs; + settings = + (builtins.fromJSON + (builtins.readFile ./noctalia.json)).settings; + }; + }; +} diff --git a/modules/hosts/mystra/configuration.nix b/modules/hosts/mystra/configuration.nix new file mode 100644 index 0000000..fd34ca0 --- /dev/null +++ b/modules/hosts/mystra/configuration.nix @@ -0,0 +1,19 @@ +{ + self, + inputs, + ... +}: { + flake.nixosModules.mystraConfiguration = { + pkgs, + lib, + ... + }: { + # import any other modules from here + imports = [ + self.nixosModules.myMachineHardware + self.nixosModules.niri + ]; + + # ... + }; +} diff --git a/modules/hosts/mystra/default.nix b/modules/hosts/mystra/default.nix new file mode 100644 index 0000000..7d09d0d --- /dev/null +++ b/modules/hosts/mystra/default.nix @@ -0,0 +1,11 @@ +{ + self, + inputs, + ... +}: { + flake.nixosConfigurations.mystra = inputs.nixpkgs.lib.nixosSystem { + modules = [ + self.nixosModules.mystraConfiguration + ]; + }; +} -- cgit v1.2.3