diff options
Diffstat (limited to 'users/Profpatsch/cas-serve/default.nix')
-rw-r--r-- | users/Profpatsch/cas-serve/default.nix | 49 |
1 files changed, 30 insertions, 19 deletions
diff --git a/users/Profpatsch/cas-serve/default.nix b/users/Profpatsch/cas-serve/default.nix index 2236e92c8e..14c3e4aa13 100644 --- a/users/Profpatsch/cas-serve/default.nix +++ b/users/Profpatsch/cas-serve/default.nix @@ -1,27 +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 - (pkgs.haskell.lib.dontCheck - (pkgs.haskell.lib.overrideSrc pkgs.haskellPackages.superrecord { - src = pkgs.fetchFromGitHub { - owner = "Profpatsch"; - repo = "superrecord"; - rev = "c00e933f582e3fb8d209f6cece91d464faf09082"; - sha256 = "sha256-UQ2wCoBpUEPcRsI7wNOFGH+vceKF4dcbbGHFVVTkOWw="; - }; - })) + bins = depot.nix.getBins pkgs.sqlite [ "sqlite3" ]; - ]; - ghcArgs = [ "-threaded" ]; + cas-serve = pkgs.haskellPackages.mkDerivation { + pname = "cas-serve"; + version = "0.1.0"; - } ./CasServe.hs; + src = depot.users.Profpatsch.exactSource ./. [ + ./cas-serve.cabal + ./CasServe.hs + ]; + libraryHaskellDepends = [ + pkgs.haskellPackages.pa-prelude + pkgs.haskellPackages.pa-label + pkgs.haskellPackages.crypton + 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 |