about summary refs log tree commit diff
path: root/pkgs/profpatsch/execline
diff options
context:
space:
mode:
authorProfpatsch <mail@profpatsch.de>2018-09-22 23:09:03 +0200
committerProfpatsch <mail@profpatsch.de>2018-09-22 23:16:15 +0200
commit0cfe277878425794df5804b71d828161f5a95b43 (patch)
treee8e64cf6039c5c98eb096a1d9fc6be01adbf0b81 /pkgs/profpatsch/execline
parent5dcf14e5cd3ac05767326522f64abdffbf26074e (diff)
pkgs.profpatsch: switch to different import scheme
Reference files in `bin` outputs for a derivation as an attribute set,
with renaming capabilities.
Diffstat (limited to 'pkgs/profpatsch/execline')
-rw-r--r--pkgs/profpatsch/execline/run-execline-tests.nix27
-rw-r--r--pkgs/profpatsch/execline/run-execline.nix12
2 files changed, 18 insertions, 21 deletions
diff --git a/pkgs/profpatsch/execline/run-execline-tests.nix b/pkgs/profpatsch/execline/run-execline-tests.nix
index c2c4c23e..ebfdeb20 100644
--- a/pkgs/profpatsch/execline/run-execline-tests.nix
+++ b/pkgs/profpatsch/execline/run-execline-tests.nix
@@ -1,7 +1,4 @@
-{ stdenv, drvSeqL, runExecline
-, ifCommand, redirfdCommand, s6GrepCommand
-, importasCommand, s6TouchCommand, s6CatCommand
-, execlinebCommand, s6TestCommand, s6ChmodCommand
+{ stdenv, drvSeqL, runExecline, bin
 # https://www.mail-archive.com/skaware@list.skarnet.org/msg01256.html
 , coreutils }:
 
@@ -22,7 +19,7 @@ let
       foreground {
         ${coreutils}/bin/mv $s $out
       }
-      ${s6ChmodCommand} 0755 $out
+      ${bin.s6-chmod} 0755 $out
     '';
    };
 
@@ -35,16 +32,16 @@ let
   fileHasLine = line: file: derivation {
     name = "file-${file.name}-has-line";
     inherit (stdenv) system;
-    builder = ifCommand;
+    builder = bin.execlineIf;
     args =
       (block [
-        redirfdCommand "-r" "0" file   # read file to stdin
-        s6GrepCommand "-F" "-q" line      # and grep for the line
+        bin.redirfd "-r" "0" file   # read file to stdin
+        bin.s6-grep "-F" "-q" line   # and grep for the line
       ])
       ++ [
         # if the block succeeded, touch $out
-        importasCommand "-ui" "out" "out"
-        s6TouchCommand "$out"
+        bin.importas "-ui" "out" "out"
+        bin.s6-touch "$out"
       ];
   };
 
@@ -53,7 +50,7 @@ let
     name = "basic";
     execline = ''
       importas -ui out out
-      ${s6TouchCommand} $out
+      ${bin.s6-touch} $out
     '';
   };
 
@@ -65,21 +62,21 @@ let
       importas -ui out out
       # this pipes stdout of s6-cat to $out
       # and s6-cat redirects from stdin to stdout
-      redirfd -w 1 $out ${s6CatCommand}
+      redirfd -w 1 $out ${bin.s6-cat}
     '';
   });
 
   wrapWithVar = runExecline {
     name = "wrap-with-var";
     builderWrapper = writeScript "var-wrapper" ''
-      #!${execlinebCommand} -S0
+      #!${bin.execlineb} -S0
       export myvar myvalue $@
     '';
     execline = ''
       importas -ui v myvar
-      if { ${s6TestCommand} myvalue = $v }
+      if { ${bin.s6-test} myvalue = $v }
         importas out out
-        ${s6TouchCommand} $out
+        ${bin.s6-touch} $out
     '';
   };
 
diff --git a/pkgs/profpatsch/execline/run-execline.nix b/pkgs/profpatsch/execline/run-execline.nix
index 61c8c2e6..dbc6f4fd 100644
--- a/pkgs/profpatsch/execline/run-execline.nix
+++ b/pkgs/profpatsch/execline/run-execline.nix
@@ -1,4 +1,4 @@
-{ stdenv, importasCommand, execCommand, redirfdCommand, execlinebCommand }:
+{ stdenv, bin }:
 { name
 # the execline script as string
 , execline
@@ -6,7 +6,7 @@
 , stdin ? ""
 # a program wrapping the acutal execline invocation;
 # should be in Bernstein-chaining style
-, builderWrapper ? execCommand
+, builderWrapper ? bin.exec
 # additional arguments to pass to the derivation
 , derivationArgs ? {}
 }:
@@ -37,23 +37,23 @@ derivation (derivationArgs // {
   builder = builderWrapper;
 
   args = [
-    importasCommand          # import script file as $script
+    bin.importas             # import script file as $script
     "-ui"                    # drop the envvar afterwards
     "script"                 # substitution name
     "_runExeclineScriptPath" # passed script file
 
     # TODO: can we scrap stdin via builderWrapper?
-    importasCommand          # do the same for $stdin
+    bin.importas             # do the same for $stdin
     "-ui"
     "stdin"
     "_runExeclineStdinPath"
 
-    redirfdCommand           # now we
+    bin.redirfd              # now we
     "-r"                     # read the file
     "0"                      # into the stdin of execlineb
     "$stdin"                 # that was given via stdin
 
-    execlinebCommand         # the actual invocation
+    bin.execlineb            # the actual invocation
     # TODO: depending on the use-case, -S0 might not be enough
     # in all use-cases, then a wrapper for execlineb arguments
     # should be added (-P, -S, -s).