aboutsummaryrefslogtreecommitdiffstats
path: root/modules/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'modules/scripts')
-rw-r--r--modules/scripts/default.nix32
1 files changed, 8 insertions, 24 deletions
diff --git a/modules/scripts/default.nix b/modules/scripts/default.nix
index f6efb3f..c70c3a0 100644
--- a/modules/scripts/default.nix
+++ b/modules/scripts/default.nix
@@ -2,40 +2,24 @@
config,
lib,
pkgs,
+ utils,
...
}:
let
- shell =
- if config.tools.zsh.enable then (lib.getExe config.programs.zsh.package) else "/usr/bin/env sh";
-
- mkScript =
- name: path: env:
- let
- envVars = lib.concatStringsSep "\n" (lib.mapAttrsToList (n: v: "${n}=\"${toString v}\"") env);
- in
- pkgs.writeTextFile {
- name = name;
- executable = true;
- destination = "/bin/${name}";
- text = ''
- #!${shell}
- ${envVars}
- ${builtins.readFile path}
- '';
- };
+ scriptUtils = utils.scripts { inherit pkgs lib config; };
scripts = {
- deep-clean = mkScript "deep-clean" ./deep-clean.sh { };
+ deep-clean = scriptUtils.mkScript "deep-clean" ./deep-clean.sh { };
fzf-launcher = lib.mkIf config.tools.fzf.enable (
- mkScript "fzf-launcher" ./fzf-launcher.sh {
+ scriptUtils.mkScript "fzf-launcher" ./fzf-launcher.sh {
FZF = lib.getExe pkgs.fzf;
SETSID = lib.getExe' pkgs.util-linux "setsid";
}
);
screen-recording = lib.mkIf (config.tools.ffmpeg.enable && config.tools.slop.enable) (
- mkScript "screen-recording" ./screen-recording.sh {
+ scriptUtils.mkScript "screen-recording" ./screen-recording.sh {
FFMPEG = lib.getExe pkgs.ffmpeg-full;
SLOP = lib.getExe pkgs.slop;
}
@@ -50,7 +34,7 @@ let
&& config.tools.kitty.enable
)
(
- mkScript "system-monitor" ./system-monitor.sh {
+ scriptUtils.mkScript "system-monitor" ./system-monitor.sh {
BTM = lib.getExe pkgs.bottom;
NVTOP = lib.getExe pkgs.nvtopPackages.full;
TMUX = lib.getExe pkgs.tmux;
@@ -59,7 +43,7 @@ let
);
vpn-connect = lib.mkIf (config.tools.openvpn.enable && config.tools.fzf.enable) (
- mkScript "vpn-connect" ./vpn-connect.sh {
+ scriptUtils.mkScript "vpn-connect" ./vpn-connect.sh {
FZF = lib.getExe pkgs.fzf;
OPENVPN = lib.getExe pkgs.openvpn;
SYSTEMD_RESOLVED = "${pkgs.openvpn}/libexec/update-systemd-resolved";
@@ -67,7 +51,7 @@ let
);
vpn-disconnect = lib.mkIf (config.tools.openvpn.enable && config.tools.fzf.enable) (
- mkScript "vpn-disconnect" ./vpn-disconnect.sh { }
+ scriptUtils.mkScript "vpn-disconnect" ./vpn-disconnect.sh { }
);
};
in