From e26b6d1f1546d48a482bd2a63c0113164eabb169 Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 7 Feb 2023 14:34:51 +0100 Subject: [PATCH] pager: expose utilities --- krebs/5pkgs/simple/pager.nix | 66 ++++++++++++++++++++---------------- 1 file changed, 36 insertions(+), 30 deletions(-) diff --git a/krebs/5pkgs/simple/pager.nix b/krebs/5pkgs/simple/pager.nix index ed740490d..f183dd1dc 100644 --- a/krebs/5pkgs/simple/pager.nix +++ b/krebs/5pkgs/simple/pager.nix @@ -1,36 +1,42 @@ { pkgs }: -pkgs.writeDashBin "pager" '' - # usage: pager {view,shift,shiftview} - # - # Environment variables - # - # PAGER_NAME (default: Pager) - # The environment variables specifies the application name under which - # resources are to be obtained. PAGER_NAME should not contain “.” or “*” - # characters. - # - set -efu +pkgs.symlinkJoin { + name = "pager-wrapper"; + paths = [ + (pkgs.writeDashBin "pager" '' + # usage: pager {view,shift,shiftview} + # + # Environment variables + # + # PAGER_NAME (default: Pager) + # The environment variables specifies the application name under + # which resources are to be obtained. PAGER_NAME should not contain + # “.” or “*” characters. + # + set -efu - pidfile=$XDG_RUNTIME_DIR/pager.lock - name=''${PAGER_NAME-Pager} + pidfile=$XDG_RUNTIME_DIR/pager.lock + name=''${PAGER_NAME-Pager} - if test -e "$pidfile" && - ${pkgs.procps}/bin/pgrep --pidfile="$pidfile" >/dev/null - then - ${pkgs.procps}/bin/pkill --pidfile="$pidfile" - ${pkgs.coreutils}/bin/rm "$pidfile" - exit - fi + if test -e "$pidfile" && + ${pkgs.procps}/bin/pgrep --pidfile="$pidfile" >/dev/null + then + ${pkgs.procps}/bin/pkill --pidfile="$pidfile" + ${pkgs.coreutils}/bin/rm "$pidfile" + exit + fi - echo $$ > "$pidfile" + echo $$ > "$pidfile" - exec ${pkgs.xterm}/bin/xterm \ - -name "$name" \ - -ti vt340 \ - -xrm 'Pager*geometry: 32x10' \ - -xrm 'Pager*internalBorder: 2' \ - -xrm 'Pager*background: #050505' \ - -xrm 'Pager*foreground: #d0d7d0' \ - -e ${pkgs.haskellPackages.pager}/bin/pager "$@" -'' + exec ${pkgs.xterm}/bin/xterm \ + -name "$name" \ + -ti vt340 \ + -xrm 'Pager*geometry: 32x10' \ + -xrm 'Pager*internalBorder: 2' \ + -xrm 'Pager*background: #050505' \ + -xrm 'Pager*foreground: #d0d7d0' \ + -e ${pkgs.haskellPackages.pager}/bin/pager "$@" + '') + pkgs.haskellPackages.pager + ]; +}