Merge pull request #175 from codedmart/nixFixes

convenience scripts and nix updates
This commit is contained in:
Julian Arni 2015-07-30 16:31:46 +02:00
commit e15caf0d35
22 changed files with 325 additions and 58 deletions

2
.gitignore vendored
View file

@ -1,4 +1,4 @@
/dist **/*/dist
/bin /bin
/lib /lib
/share /share

26
scripts/clear-sandbox.sh Executable file
View file

@ -0,0 +1,26 @@
#!/bin/bash -
#===============================================================================
#
# FILE: clear-sandbox.sh
#
# USAGE: ./clear-sandbox.sh
#
# DESCRIPTION: Clear sandbox at top-level and at all packages
#
# REQUIREMENTS: bash >= 4
#===============================================================================
set -o nounset
set -o errexit
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
. "$DIR"/lib/common.sh
clear_sandbox () {
rm -rf .cabal-sandbox cabal.sandbox.config
for s in ${SOURCES[@]} ; do
(cd "$s" && rm -rf cabal.sandbox.config dist)
done
}
clear_sandbox

View file

@ -1,20 +0,0 @@
#!/bin/bash -
#===============================================================================
#
# USAGE: ./update-defaults-nix.sh
#
# DESCRIPTION: Updates the default.nix files in all source dirs
#
# REQUIREMENTS: cabal2nix, bash >= 4
#===============================================================================
set -o nounset
set -o errexit
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
. "$DIR"/lib/common.sh
for s in ${SOURCES[@]} ; do
echo $s
(cd "$BASE_DIR/$s" && cabal2nix . > default.nix )
done

46
scripts/update-nix-files.sh Executable file
View file

@ -0,0 +1,46 @@
#!/bin/bash -
#===============================================================================
#
# FILE: update-nix-files.sh
#
# USAGE: ./update-nix-files.sh
#
# DESCRIPTION: Update nix files at top-level and add all packages
#
# REQUIREMENTS: bash >= 4, cabal2nix(nix tool)
#===============================================================================
set -o nounset
set -o errexit
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
. "$DIR"/lib/common.sh
SHELLNIX="shell.nix"
write-package-shell-nix () {
rm -rf $SHELLNIX
echo -e "let" >> $SHELLNIX
echo -e " pkgs = import <nixpkgs> {};" >> $SHELLNIX
echo -e "" >> $SHELLNIX
echo -e " haskellPackages = pkgs.haskellPackages.override {" >> $SHELLNIX
echo -e " overrides = self: super: {" >> $SHELLNIX
for n in ${SOURCES[@]} ; do
if [[ $1 != $n ]]; then
echo -e " $n = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../$n {}) \"--ghc-options=-Werror\");" >> $SHELLNIX
fi
done
echo -e " $1 = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) \"--ghc-options=-Werror\";" >> $SHELLNIX
echo -e " };" >> $SHELLNIX
echo -e " };" >> $SHELLNIX
echo -e "" >> $SHELLNIX
echo -e "in haskellPackages.$s.env" >> $SHELLNIX
}
update-nix-files () {
for s in ${SOURCES[@]} ; do
cd "$s" && cabal2nix . > default.nix
write-package-shell-nix $s
done
}
update-nix-files

10
servant-blaze/default.nix Normal file
View file

@ -0,0 +1,10 @@
{ mkDerivation, base, blaze-html, http-media, servant, stdenv }:
mkDerivation {
pname = "servant-blaze";
version = "0.5";
src = ./.;
buildDepends = [ base blaze-html http-media servant ];
homepage = "http://haskell-servant.github.io/";
description = "Blaze-html support for servant";
license = stdenv.lib.licenses.bsd3;
}

18
servant-blaze/shell.nix Normal file
View file

@ -0,0 +1,18 @@
let
pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
servant = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant {}) "--ghc-options=-Werror");
servant-client = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-client {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-docs {}) "--ghc-options=-Werror");
servant-js = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-js {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-server {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-examples {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-lucid {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-mock {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
};
};
in haskellPackages.servant-blaze.env

View file

@ -6,7 +6,7 @@
}: }:
mkDerivation { mkDerivation {
pname = "servant-client"; pname = "servant-client";
version = "0.4.0"; version = "0.5";
src = ./.; src = ./.;
buildDepends = [ buildDepends = [
aeson attoparsec base bytestring either exceptions http-client aeson attoparsec base bytestring either exceptions http-client

18
servant-client/shell.nix Normal file
View file

@ -0,0 +1,18 @@
let
pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
servant = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-docs {}) "--ghc-options=-Werror");
servant-js = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-js {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-server {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-examples {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-blaze {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-lucid {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-mock {}) "--ghc-options=-Werror");
servant-client = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
};
};
in haskellPackages.servant-client.env

View file

@ -1,18 +1,19 @@
{ mkDerivation, aeson, base, bytestring, hashable, hspec { mkDerivation, aeson, base, bytestring, bytestring-conversion
, http-media, lens, servant, stdenv, string-conversions, text , case-insensitive, hashable, hspec, http-media, http-types, lens
, unordered-containers , servant, stdenv, string-conversions, text, unordered-containers
}: }:
mkDerivation { mkDerivation {
pname = "servant-docs"; pname = "servant-docs";
version = "0.4"; version = "0.5";
src = ./.; src = ./.;
isLibrary = true; isLibrary = true;
isExecutable = true; isExecutable = true;
buildDepends = [ buildDepends = [
aeson base bytestring hashable http-media lens servant aeson base bytestring bytestring-conversion case-insensitive
string-conversions text unordered-containers hashable http-media http-types lens servant string-conversions text
unordered-containers
]; ];
testDepends = [ aeson base hspec servant string-conversions ]; testDepends = [ aeson base hspec lens servant string-conversions ];
homepage = "http://haskell-servant.github.io/"; homepage = "http://haskell-servant.github.io/";
description = "generate API docs for your servant webservice"; description = "generate API docs for your servant webservice";
license = stdenv.lib.licenses.bsd3; license = stdenv.lib.licenses.bsd3;

View file

@ -1,9 +1,18 @@
with (import <nixpkgs> {}).pkgs; let
let modifiedHaskellPackages = haskellngPackages.override { pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: { overrides = self: super: {
servant = self.callPackage ../servant {}; servant = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant {}) "--ghc-options=-Werror");
servant-server = self.callPackage ./servant-server {}; servant-client = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-client {}) "--ghc-options=-Werror");
servant-docs = self.callPackage ./. {}; servant-js = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-js {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-server {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-examples {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-blaze {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-lucid {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-mock {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
}; };
}; };
in modifiedHaskellPackages.servant-docs.env
in haskellPackages.servant-docs.env

View file

@ -0,0 +1,22 @@
{ mkDerivation, aeson, base, bytestring, directory, either
, engine-io, engine-io-wai, http-types, js-jquery, lucid, mtl
, random, servant, servant-client, servant-docs, servant-js
, servant-lucid, servant-server, socket-io, stdenv, stm, text, time
, transformers, wai, wai-extra, warp
}:
mkDerivation {
pname = "servant-examples";
version = "0.5";
src = ./.;
isLibrary = false;
isExecutable = true;
buildDepends = [
aeson base bytestring directory either engine-io engine-io-wai
http-types js-jquery lucid mtl random servant servant-client
servant-docs servant-js servant-lucid servant-server socket-io stm
text time transformers wai wai-extra warp
];
homepage = "http://haskell-servant.github.io/";
description = "Example programs for servant";
license = stdenv.lib.licenses.bsd3;
}

View file

@ -0,0 +1,18 @@
let
pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
servant = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant {}) "--ghc-options=-Werror");
servant-client = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-client {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-docs {}) "--ghc-options=-Werror");
servant-js = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-js {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-server {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-blaze {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-lucid {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-mock {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
};
};
in haskellPackages.servant-examples.env

View file

@ -4,7 +4,7 @@
}: }:
mkDerivation { mkDerivation {
pname = "servant-js"; pname = "servant-js";
version = "0.4.0"; version = "0.5";
src = ./.; src = ./.;
isLibrary = true; isLibrary = true;
isExecutable = true; isExecutable = true;

18
servant-js/shell.nix Normal file
View file

@ -0,0 +1,18 @@
let
pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
servant = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant {}) "--ghc-options=-Werror");
servant-client = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-client {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-docs {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-server {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-examples {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-blaze {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-lucid {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-mock {}) "--ghc-options=-Werror");
servant-js = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
};
};
in haskellPackages.servant-js.env

10
servant-lucid/default.nix Normal file
View file

@ -0,0 +1,10 @@
{ mkDerivation, base, http-media, lucid, servant, stdenv }:
mkDerivation {
pname = "servant-lucid";
version = "0.5";
src = ./.;
buildDepends = [ base http-media lucid servant ];
homepage = "http://haskell-servant.github.io/";
description = "Servant support for lucid";
license = stdenv.lib.licenses.bsd3;
}

18
servant-lucid/shell.nix Normal file
View file

@ -0,0 +1,18 @@
let
pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
servant = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant {}) "--ghc-options=-Werror");
servant-client = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-client {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-docs {}) "--ghc-options=-Werror");
servant-js = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-js {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-server {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-examples {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-blaze {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-mock {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
};
};
in haskellPackages.servant-lucid.env

17
servant-mock/default.nix Normal file
View file

@ -0,0 +1,17 @@
{ mkDerivation, aeson, base, bytestring, http-types, QuickCheck
, servant, servant-server, stdenv, transformers, wai, warp
}:
mkDerivation {
pname = "servant-mock";
version = "0.5";
src = ./.;
isLibrary = true;
isExecutable = true;
buildDepends = [
aeson base bytestring http-types QuickCheck servant servant-server
transformers wai warp
];
homepage = "http://github.com/haskell-servant/servant";
description = "Derive a mock server for free from your servant API types";
license = stdenv.lib.licenses.bsd3;
}

18
servant-mock/shell.nix Normal file
View file

@ -0,0 +1,18 @@
let
pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
servant = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant {}) "--ghc-options=-Werror");
servant-client = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-client {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-docs {}) "--ghc-options=-Werror");
servant-js = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-js {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-server {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-examples {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-blaze {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-lucid {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
};
};
in haskellPackages.servant-mock.env

View file

@ -1,25 +1,27 @@
{ mkDerivation, aeson, attoparsec, base, bytestring { mkDerivation, aeson, attoparsec, base, bytestring
, bytestring-conversion, directory, doctest, either, exceptions , bytestring-conversion, containers, directory, doctest, either
, filemanip, hspec, hspec-wai, http-types, mmorph, mtl, network , exceptions, filemanip, filepath, hspec, hspec-wai, http-types
, network-uri, parsec, QuickCheck, safe, servant, split, stdenv , mmorph, mtl, network, network-uri, parsec, QuickCheck, safe
, string-conversions, system-filepath, temporary, text , servant, split, stdenv, string-conversions, system-filepath
, transformers, wai, wai-app-static, wai-extra, warp , temporary, text, transformers, wai, wai-app-static, wai-extra
, warp
}: }:
mkDerivation { mkDerivation {
pname = "servant-server"; pname = "servant-server";
version = "0.4.0"; version = "0.5";
src = ./.; src = ./.;
isLibrary = true; isLibrary = true;
isExecutable = true; isExecutable = true;
buildDepends = [ buildDepends = [
aeson attoparsec base bytestring either http-types mmorph mtl aeson attoparsec base bytestring containers either filepath
network-uri safe servant split string-conversions system-filepath http-types mmorph mtl network network-uri safe servant split
text transformers wai wai-app-static warp string-conversions system-filepath text transformers wai
wai-app-static warp
]; ];
testDepends = [ testDepends = [
aeson base bytestring bytestring-conversion directory doctest aeson base bytestring bytestring-conversion directory doctest
either exceptions filemanip hspec hspec-wai http-types mtl network either exceptions filemanip filepath hspec hspec-wai http-types mtl
parsec QuickCheck servant string-conversions temporary text network parsec QuickCheck servant string-conversions temporary text
transformers wai wai-extra warp transformers wai wai-extra warp
]; ];
homepage = "http://haskell-servant.github.io/"; homepage = "http://haskell-servant.github.io/";

18
servant-server/shell.nix Normal file
View file

@ -0,0 +1,18 @@
let
pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
servant = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant {}) "--ghc-options=-Werror");
servant-client = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-client {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-docs {}) "--ghc-options=-Werror");
servant-js = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-js {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-examples {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-blaze {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-lucid {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-mock {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
};
};
in haskellPackages.servant-server.env

View file

@ -1,20 +1,22 @@
{ mkDerivation, aeson, attoparsec, base, bytestring { mkDerivation, aeson, attoparsec, base, bytestring
, bytestring-conversion, case-insensitive, doctest, filemanip , bytestring-conversion, case-insensitive, directory, doctest
, hspec, http-media, http-types, network-uri, parsec, QuickCheck , filemanip, filepath, hspec, http-media, http-types, network-uri
, quickcheck-instances, stdenv, string-conversions, text, url , parsec, QuickCheck, quickcheck-instances, stdenv
, string-conversions, text, url, vault
}: }:
mkDerivation { mkDerivation {
pname = "servant"; pname = "servant";
version = "0.4.0"; version = "0.5";
src = ./.; src = ./.;
buildDepends = [ buildDepends = [
aeson attoparsec base bytestring bytestring-conversion aeson attoparsec base bytestring bytestring-conversion
case-insensitive http-media http-types network-uri case-insensitive http-media http-types network-uri
string-conversions text string-conversions text vault
]; ];
testDepends = [ testDepends = [
aeson attoparsec base bytestring doctest filemanip hspec parsec aeson attoparsec base bytestring directory doctest filemanip
QuickCheck quickcheck-instances string-conversions text url filepath hspec parsec QuickCheck quickcheck-instances
string-conversions text url
]; ];
homepage = "http://haskell-servant.github.io/"; homepage = "http://haskell-servant.github.io/";
description = "A family of combinators for defining webservices APIs"; description = "A family of combinators for defining webservices APIs";

View file

@ -1,2 +1,18 @@
with (import <nixpkgs> {}).pkgs; let
(haskellngPackages.callPackage ./. {}).env pkgs = import <nixpkgs> {};
haskellPackages = pkgs.haskellPackages.override {
overrides = self: super: {
servant-client = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-client {}) "--ghc-options=-Werror");
servant-docs = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-docs {}) "--ghc-options=-Werror");
servant-js = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-js {}) "--ghc-options=-Werror");
servant-server = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-server {}) "--ghc-options=-Werror");
servant-examples = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-examples {}) "--ghc-options=-Werror");
servant-blaze = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-blaze {}) "--ghc-options=-Werror");
servant-lucid = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-lucid {}) "--ghc-options=-Werror");
servant-mock = pkgs.haskell.lib.dontCheck (pkgs.haskell.lib.appendConfigureFlag (self.callPackage ../servant-mock {}) "--ghc-options=-Werror");
servant = pkgs.haskell.lib.appendConfigureFlag (self.callPackage ./. {}) "--ghc-options=-Werror";
};
};
in haskellPackages.servant.env