Fix running non shell programs

This commit is contained in:
Leonardo Eugênio 2022-10-18 19:53:40 -03:00
parent 5422aea875
commit 163debc8a0
1 changed files with 20 additions and 16 deletions

View File

@ -3,22 +3,26 @@
with pkgs;
let
import_script = (_: path: import (path) { inherit config pkgs lib; });
create_shell_app = (name: text: runtimeInputs: pkgs.writeShellApplication {
inherit name runtimeInputs;
text = (builtins.readFile text);
checkPhase = "";
});
create_shell_apps = lib.mapAttrs (name: deps: create_shell_app name ./${name} deps);
in create_shell_apps {
br = [];
bmenu = [
bemenu
dhist
fish
j4-dmenu-desktop
jq
sway
];
create_script = (name: text: runtimeInputs:
let
script_body = pkgs.writeTextFile {
inherit name;
executable = true;
text = ''
${builtins.readFile text}
'';
};
in (pkgs.writeShellApplication {
inherit name runtimeInputs;
text = ''exec ${script_body} "$@"'';
checkPhase = "";
})
);
create_scripts =
lib.mapAttrs (name: deps: create_script name ./${name} deps);
in create_scripts {
br = [ ];
bmenu = [ bemenu dhist fish j4-dmenu-desktop jq sway ];
} // lib.mapAttrs import_script {
wdmenu = ./wdmenu.nix;
wlauncher = ./wlauncher.nix;