tvl-depot/nix/writeScript/default.nix

36 lines
583 B
Nix
Raw Permalink Normal View History

{ pkgs, depot, ... }:
# Write the given string to $out
# and make it executable.
let
bins = depot.nix.getBins pkgs.s6-portable-utils [
"s6-cat"
"s6-chmod"
];
in
name:
# string of the executable script that is put in $out
script:
depot.nix.runExecline name
{
stdin = script;
derivationArgs = {
preferLocalBuild = true;
allowSubstitutes = false;
};
} [
"importas"
"out"
"out"
# this pipes stdout of s6-cat to $out
# and s6-cat redirects from stdin to stdout
"if"
[ "redirfd" "-w" "1" "$out" bins.s6-cat ]
bins.s6-chmod
"0755"
"$out"
]