diff options
Diffstat (limited to 'pkgs/profpatsch/default.nix')
-rw-r--r-- | pkgs/profpatsch/default.nix | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/pkgs/profpatsch/default.nix b/pkgs/profpatsch/default.nix index f484c2ad..e246bd29 100644 --- a/pkgs/profpatsch/default.nix +++ b/pkgs/profpatsch/default.nix @@ -35,6 +35,17 @@ let bin = getBins pkgs.s6PortableUtils [ "s6-touch" "s6-echo" ]; }; + # TODO: upstream + writeHaskellInterpret = nameOrPath: { withPackages ? lib.const [] }: content: + let ghc = pkgs.haskellPackages.ghcWithPackages withPackages; in + pkgs.writers.makeScriptWriter { + interpreter = "${ghc}/bin/runhaskell"; + check = pkgs.writers.writeDash "ghc-typecheck" '' + ln -s "$1" ./Main.hs + ${ghc}/bin/ghc -fno-code -Wall ./Main.hs + ''; + } nameOrPath content; + runExeclineFns = # todo: factor out calling tests let @@ -101,7 +112,7 @@ in rec { inherit (pkgs.haskellPackages) ghcWithPackages; }; youtube2audiopodcast = callPackage ./youtube2audiopodcast { - inherit writeExecline getBins runInEmptyEnv sandbox; + inherit writeExecline writeHaskellInterpret getBins runInEmptyEnv sandbox; }; inherit (callPackage ./utils-hs {}) |