diff options
Diffstat (limited to 'users/Profpatsch/cas-serve/default.nix')
-rw-r--r-- | users/Profpatsch/cas-serve/default.nix | 41 |
1 files changed, 31 insertions, 10 deletions
diff --git a/users/Profpatsch/cas-serve/default.nix b/users/Profpatsch/cas-serve/default.nix index 6e4bfd324233..1b4fbe03e78f 100644 --- a/users/Profpatsch/cas-serve/default.nix +++ b/users/Profpatsch/cas-serve/default.nix @@ -1,17 +1,38 @@ { depot, pkgs, lib, ... }: let - cas-serve = pkgs.writers.writeHaskell "cas-serve" - { - libraries = [ - pkgs.haskellPackages.wai - pkgs.haskellPackages.warp - pkgs.haskellPackages.sqlite-simple - depot.users.Profpatsch.my-prelude - ]; - ghcArgs = [ "-threaded" ]; + bins = depot.nix.getBins pkgs.sqlite [ "sqlite3" ]; - } ./CasServe.hs; + cas-serve = pkgs.haskellPackages.mkDerivation { + pname = "cas-serve"; + version = "0.1.0"; + src = depot.users.Profpatsch.exactSource ./. [ + ./cas-serve.cabal + ./CasServe.hs + ]; + + libraryHaskellDepends = [ + pkgs.haskellPackages.pa-prelude + pkgs.haskellPackages.pa-label + pkgs.haskellPackages.ihp-hsx + pkgs.haskellPackages.wai + pkgs.haskellPackages.warp + pkgs.haskellPackages.sqlite-simple + depot.users.Profpatsch.arglib.netencode.haskell + depot.users.Profpatsch.netencode.netencode-hs + ]; + + isExecutable = true; + isLibrary = false; + license = lib.licenses.mit; + }; + + create-cas-database = depot.nix.writeExecline "create-cas-database" { readNArgs = 1; } [ + bins.sqlite3 + "$1" + "-init" + ./schema.sql + ]; in cas-serve |