{ self, inputs, ... }: { flake-file.inputs = { wrapper-modules.url = "github:BirdeeHub/nix-wrapper-modules"; wrapper-modules.follows = "nixpkgs"; }; flake.modules.nixos.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 = [ { command = [ (lib.getExe self'.packages.myNoctalia) ]; } ]; xwayland-satellite.path = lib.getExe pkgs.xwayland-satellite; input.keyboard.xkb.layout = "us,ua"; layout.gaps = 5; binds = { "Mod+Return".spawn-sh = lib.getExe pkgs.ghostty; "Mod+Q".close-window = null; "Mod+S".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call launcher toggle"; }; }; }; }; }