diff --git a/flake.nix b/flake.nix index d7aec65..9398d12 100644 --- a/flake.nix +++ b/flake.nix @@ -144,6 +144,8 @@ nixosModules = (import ./modules/nixos) moduleInputs; homeManagerModules = (import ./modules/home-manager) moduleInputs; packages = eachSystem (system: import ./pkgs { inherit nixpkgs system; }); + apps = eachSystem (system: import ./pkgs/apps.nix + { inherit (self.outputs) packages; inherit system; }); nixosConfigurations = { slab = mkSystem { diff --git a/home/hyprland.nix b/home/hyprland.nix index d70c537..ebc1489 100644 --- a/home/hyprland.nix +++ b/home/hyprland.nix @@ -18,8 +18,8 @@ let in if hasAttr key keyNames then keyNames."${key}" else key; - inherit (outputs.packages.${pkgs.system}.wm-helpers) keysetting; - + inherit (outputs.packages.${pkgs.system}) wm-helpers; + keysetting = "${wm-helpers}/bin/keysetting"; in { # FIXME this is temporary just to get it working, need to make wm-common an diff --git a/pkgs/apps.nix b/pkgs/apps.nix new file mode 100644 index 0000000..73744eb --- /dev/null +++ b/pkgs/apps.nix @@ -0,0 +1,9 @@ +{ packages, system, ... }: +let _packages = packages; in +let + packages = _packages.${system}; + mkApp = program: { type = "app"; inherit program; }; +in +{ + keysetting = mkApp "${packages.wm-helpers}/bin/keysetting"; +} diff --git a/pkgs/wm-helpers/default.nix b/pkgs/wm-helpers/default.nix index 3ccf871..d0f7949 100644 --- a/pkgs/wm-helpers/default.nix +++ b/pkgs/wm-helpers/default.nix @@ -1,6 +1,6 @@ { pkgs, ...}: -{ - keysetting = pkgs.writeShellScript "keysetting" '' +let + keysetting = pkgs.writeShellScriptBin "keysetting" '' wpctl=${pkgs.wireplumber}/bin/wpctl notify_send=${pkgs.libnotify}/bin/notify-send brightnessctl=${pkgs.brightnessctl}/bin/brightnessctl @@ -34,4 +34,8 @@ mondown) setbright 5%-;; esac ''; +in +pkgs.symlinkJoin { + name = "wm-helpers"; + paths = keysetting; }