diff --git a/modules/hosts/crow/bluetooth.nix b/modules/features/bluetooth.nix similarity index 100% rename from modules/hosts/crow/bluetooth.nix rename to modules/features/bluetooth.nix diff --git a/modules/hosts/crow/ckb-next.nix b/modules/features/ckb-next.nix similarity index 100% rename from modules/hosts/crow/ckb-next.nix rename to modules/features/ckb-next.nix diff --git a/modules/features/niri.nix b/modules/features/niri.nix new file mode 100644 index 0000000..9116d2b --- /dev/null +++ b/modules/features/niri.nix @@ -0,0 +1,70 @@ +{ self, inputs, ... }: { + + flake.wrappersModules.niri = { + config, lib, pkgs, ... + }: { + options.terminal = lib.mkOption { + type = lib.types.str; + default = "alacritty"; + }; + + config = { + settings = let + noctaliaExe = lib.getExe self.packages.${config.pkgs.stdenv.hostPlatform.system}.noctalias-shell; + in { + prefer-no-csd = null; + + binds = { + + }; + + output = { + HDMI-A-1 = { + mode = "1920x1080@60.00"; + position = { + x = 0; + y = 180; + }; + }; + + DP-2 = { + + }; + + DP-1 = { + + }; + }; + + input = { + keyboard = { + numlock = null; + + repeat-rate = 35; + repeat-delay = 500; + }; + + touchpad = { + tap = null; + natural-scroll = null; + }; + + mouse = { + accel-profile = "flat"; + }; + + focus-follows-mouse = null; + max-scroll-amount = "0%"; + }; + }; + }; + }; + + + perSystem = { pkgs, ... }: { + packages.niri = inputs.wrapper-modules.wrappers.niri.wrap { + inherit pkgs; + imports = [ self.wrapperModules.niri ]; + }; + }; +} diff --git a/modules/hosts/crow/default.nix b/modules/hosts/crow/default.nix index 92627d4..f85194a 100644 --- a/modules/hosts/crow/default.nix +++ b/modules/hosts/crow/default.nix @@ -1,5 +1,5 @@ { self, inputs, ... }: { flake.nixosConfigurations.crow = inputs.nixpkgs.lib.nixosSystem { - modules= [ ]; + modules= [ self.nixosModules.crowConfiguration ]; }; }