diff options
Diffstat (limited to 'makefu/2configs/Reaktor')
-rw-r--r-- | makefu/2configs/Reaktor/random-issue.sh | 20 | ||||
-rw-r--r-- | makefu/2configs/Reaktor/simpleExtend.nix | 19 | ||||
-rw-r--r-- | makefu/2configs/Reaktor/stockholmLentil.nix | 22 |
3 files changed, 61 insertions, 0 deletions
diff --git a/makefu/2configs/Reaktor/random-issue.sh b/makefu/2configs/Reaktor/random-issue.sh new file mode 100644 index 000000000..5c47c6156 --- /dev/null +++ b/makefu/2configs/Reaktor/random-issue.sh @@ -0,0 +1,20 @@ +#! /bin/sh +set -eu +# requires env: +# $state_dir +# $origin + +# in PATH: git,lentil,coreutils +subdir=`echo "$1" | tr -dc "[:alnum:]"` +name=`echo "$origin" | tr -dc "[:alnum:]"` +track="$state_dir/$name-checkout" +(if test -e "$track" ;then + cd "$track" + git fetch origin master + git reset --hard origin/master +else + git clone "$origin" "$track" +fi) >&2 + +cd "$track" +lentil "${subdir:-.}" -f csv | sed 1d | shuf | head -1 diff --git a/makefu/2configs/Reaktor/simpleExtend.nix b/makefu/2configs/Reaktor/simpleExtend.nix new file mode 100644 index 000000000..95175a4e0 --- /dev/null +++ b/makefu/2configs/Reaktor/simpleExtend.nix @@ -0,0 +1,19 @@ +{ config, lib, pkgs, ... }: + +with pkgs; +let + nixos-version-script = pkgs.writeScript "nix-version" '' + #! /bin/sh + . /etc/os-release + echo "$PRETTY_NAME" + ''; +in { + krebs.Reaktor.extraConfig = '' + public_commands.insert(0,{ + 'capname' : "nixos-version", + 'pattern' : indirect_pattern.format("nixos-version"), + 'argv' : ["${nixos-version-script}"], + 'env' : { 'state_dir': workdir } }) + ''; +} + diff --git a/makefu/2configs/Reaktor/stockholmLentil.nix b/makefu/2configs/Reaktor/stockholmLentil.nix new file mode 100644 index 000000000..147fb5a7a --- /dev/null +++ b/makefu/2configs/Reaktor/stockholmLentil.nix @@ -0,0 +1,22 @@ +{ config, lib, pkgs, ... }: + +with pkgs; +let + random-issue = pkgs.writeScript "random-issue" (builtins.readFile ./random-issue.sh); + random-issue-path = lib.makeSearchPath "bin" (with pkgs; [ + coreutils + git + gnused + lentil]); +in { + # TODO: make origin a variable, <- module is generic enough to handle different origins, not only stockholm + krebs.Reaktor.extraConfig = '' + public_commands.insert(0,{ + 'capname' : "stockholm-issue", + 'pattern' : indirect_pattern.format("stockholm-issue"), + 'argv' : ["${random-issue}"], + 'env' : { 'state_dir': workdir, + 'PATH':'${random-issue-path}', + 'origin':'http://cgit.pnp/stockholm' } }) + ''; +} |