diff --git a/pkgs/development/libraries/haskell/CS173Tourney/default.nix b/pkgs/development/libraries/haskell/CS173Tourney/default.nix new file mode 100644 index 00000000000..b1ee27bb42c --- /dev/null +++ b/pkgs/development/libraries/haskell/CS173Tourney/default.nix @@ -0,0 +1,18 @@ +{cabal, fetchgit, json, time, hslogger, Crypto, base64string, CouchDB, WebServer, WebServerExtras}: + +cabal.mkDerivation (self : { + pname = "CS173Tourney"; + version = "2.5.2"; + + src = fetchgit { + url = git://github.com/arjunguha/173tourney.git; + rev = "dce044761b008cb685a675a1f35be6aff66fed21" ; + md5 = "21e5e5c2e184b4b70696d4d6c60e51d3"; + }; + + propagatedBuildInputs = [json time hslogger Crypto base64string CouchDB WebServer WebServerExtras]; + meta = { + description = ""; + }; +}) + diff --git a/pkgs/development/libraries/haskell/CouchDB/default.nix b/pkgs/development/libraries/haskell/CouchDB/default.nix new file mode 100644 index 00000000000..137aee52fb8 --- /dev/null +++ b/pkgs/development/libraries/haskell/CouchDB/default.nix @@ -0,0 +1,14 @@ +{cabal, network, json, HTTP, mtl}: + +cabal.mkDerivation (self : { + pname = "CouchDB"; + version = "0.8.1.1"; + + sha256 = "91edc35782e43a3b8dd5c5d3c303b88c05c57ba686e9565a11fe4d060f9372d7"; + + propagatedBuildInputs = [network HTTP mtl json]; + meta = { + description = ""; + }; +}) + diff --git a/pkgs/development/libraries/haskell/HTTP/3001.nix b/pkgs/development/libraries/haskell/HTTP/3001.nix new file mode 100644 index 00000000000..d54ff70c1a4 --- /dev/null +++ b/pkgs/development/libraries/haskell/HTTP/3001.nix @@ -0,0 +1,12 @@ +{cabal, mtl, network, parsec}: + +cabal.mkDerivation (self : { + pname = "HTTP"; + version = "3001.1.5"; + sha256 = "e34d9f979bafbbf2e45bf90a9ee9bfd291f3c67c291a250cc0a6378431578aeb"; + propagatedBuildInputs = [mtl network parsec]; + meta = { + description = "a Haskell library for client-side HTTP"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/WebServer-Extras/default.nix b/pkgs/development/libraries/haskell/WebServer-Extras/default.nix new file mode 100644 index 00000000000..a0fe545ee21 --- /dev/null +++ b/pkgs/development/libraries/haskell/WebServer-Extras/default.nix @@ -0,0 +1,19 @@ +{cabal, fetchgit, Crypto, WebServer, base64string, hslogger, json, mtl +}: + +cabal.mkDerivation (self : { + pname = "WebServer-Extras"; + version = "1.2"; + + src = fetchgit { + url = git://github.com/arjunguha/haskell-web.git; + rev = "76c9aabd31d03f052a80a0f6999dc7c5f1b11c41" ; + sha256 = "afd550a4c6aeffe2f3adb38556b8e9ae198e98db17338ea6c8fa92d56c7eddb7"; + }; + sourceRoot = "git-export/Extras"; + propagatedBuildInputs = [Crypto WebServer base64string hslogger json mtl]; + meta = { + description = ""; + }; +}) + diff --git a/pkgs/development/libraries/haskell/WebServer/default.nix b/pkgs/development/libraries/haskell/WebServer/default.nix new file mode 100644 index 00000000000..003a4f27ac7 --- /dev/null +++ b/pkgs/development/libraries/haskell/WebServer/default.nix @@ -0,0 +1,18 @@ +{cabal, fetchgit, network, mtl, parsec}: + +cabal.mkDerivation (self : { + pname = "WebServer"; + version = "1.2"; + + src = fetchgit { + url = git://github.com/arjunguha/haskell-web.git; + rev = "76c9aabd31d03f052a80a0f6999dc7c5f1b11c41" ; + sha256 = "afd550a4c6aeffe2f3adb38556b8e9ae198e98db17338ea6c8fa92d56c7eddb7"; + }; + + propagatedBuildInputs = [network mtl parsec]; + meta = { + description = ""; + }; +}) + diff --git a/pkgs/development/libraries/haskell/base64-string/default.nix b/pkgs/development/libraries/haskell/base64-string/default.nix new file mode 100644 index 00000000000..0d14a6cd142 --- /dev/null +++ b/pkgs/development/libraries/haskell/base64-string/default.nix @@ -0,0 +1,14 @@ +{cabal}: + +cabal.mkDerivation (self : { + pname = "base64-string"; + version = "0.1"; + + sha256 = "f9a6f050f5d9993313a1ceb49eba827ecf1046af51266d10b0dc899b53f13d8c"; + + propagatedBuildInputs = []; + meta = { + description = ""; + }; +}) + diff --git a/pkgs/development/libraries/haskell/json/0.3.6.nix b/pkgs/development/libraries/haskell/json/0.3.6.nix new file mode 100644 index 00000000000..e84351052c9 --- /dev/null +++ b/pkgs/development/libraries/haskell/json/0.3.6.nix @@ -0,0 +1,12 @@ +{cabal, mtl}: + +cabal.mkDerivation (self : { + pname = "json"; + version = "0.3.6"; + sha256 = "05047879ed0c7a9aa168a981e238da94758281af3cb1a1f78a6427322b946fd7"; + propagatedBuildInputs = [mtl]; + meta = { + description = "Support for serialising Haskell to and from JSON"; + }; +}) + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1b266c83d41..53ed115e2b2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4969,7 +4969,7 @@ let }; couchdb = import ../servers/http/couchdb { - inherit fetchurl stdenv erlang spidermonkey icu; + inherit fetchurl stdenv erlang spidermonkey icu getopt; }; fingerd_bsd = import ../servers/fingerd/bsd-fingerd { diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 8ffeeda0e28..8ee7ccc0697 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -71,6 +71,13 @@ rec { inherit cabal HUnit QuickCheck; }; + CS173Tourney = import ../development/libraries/haskell/CS173Tourney { + inherit cabal ; + inherit (pkgs) fetchgit ; + inherit time hslogger Crypto base64string CouchDB WebServer WebServerExtras; + json = json_036; + }; + dataenc = import ../development/libraries/haskell/dataenc { inherit cabal; }; @@ -215,6 +222,10 @@ rec { inherit cabal mtl network parsec; }; + HTTP_3001 = import ../development/libraries/haskell/HTTP/3001.nix { + inherit cabal mtl network parsec; + }; + haxr = import ../development/libraries/haskell/haxr { inherit cabal HaXml HTTP dataenc time; }; @@ -289,6 +300,10 @@ rec { inherit cabal mtl; }; + json_036 = import ../development/libraries/haskell/json/0.3.6.nix { + inherit cabal mtl; + }; + maybench = import ../development/libraries/haskell/maybench { inherit cabal benchpress; }; @@ -536,6 +551,27 @@ rec { inherit cabal utf8String terminfo; }; + WebServer = import ../development/libraries/haskell/WebServer { + inherit cabal network mtl parsec; + inherit (pkgs) fetchgit; + }; + + WebServerExtras = import ../development/libraries/haskell/WebServer-Extras { + inherit cabal Crypto WebServer base64string hslogger mtl; + json = json_036; + inherit (pkgs) fetchgit; + }; + + CouchDB = import ../development/libraries/haskell/CouchDB { + inherit cabal network mtl ; + HTTP = HTTP_3001; + json = json_036; + }; + + base64string = import ../development/libraries/haskell/base64-string { + inherit cabal; + }; + wx = import ../development/libraries/haskell/wxHaskell/wx.nix { inherit cabal stm wxcore; };