diff options
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/default.nix | 1 | ||||
-rw-r--r-- | pkgs/openlab/stackenblocken/default.nix | 35 |
2 files changed, 36 insertions, 0 deletions
diff --git a/pkgs/default.nix b/pkgs/default.nix index 2b617c6e..71b5c16c 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -45,6 +45,7 @@ let openlab = pkgs.recurseIntoAttrs { gitit = callPackage ./openlab/gitit { hlib = pkgs.haskell.lib; }; + stackenblocken = callPackage ./openlab/stackenblocken {}; }; }; in pkgs // self diff --git a/pkgs/openlab/stackenblocken/default.nix b/pkgs/openlab/stackenblocken/default.nix new file mode 100644 index 00000000..150b6afa --- /dev/null +++ b/pkgs/openlab/stackenblocken/default.nix @@ -0,0 +1,35 @@ +{ lib, fetchFromGitHub, writeScriptBin +, haskellPackages, mpg321 }: + +let + repo = fetchFromGitHub { + owner = "openlab-aux"; + repo = "stackenblocken"; + rev = "labpingbot"; + sha256 = "1x319sbkk8hl3lad2zapkdv6ihqqsl8f5l0a2n9fvppcm5c7pz0d"; + }; + + bot = haskellPackages.callPackage "${repo}/stackenblocken.nix" {}; + jingle = "${repo}/stackenblocken_jingle.mp3"; + + script = '' + #!/bin/sh + + # kill everything on SIGINT + trap exit SIGINT + # also running background processes + trap "kill 0" EXIT + + for i in $(seq 2); do + echo "starting .labping bot" + ${lib.getBin bot}/bin/stackenblocken & + + echo "DOING STACKENBLOCKEN" + ${lib.getBin mpg321}/bin/mpg321 -q ${jingle} + done + ''; + + +in + writeScriptBin "stackenblocken" script + |