Clean up build

This commit is contained in:
Gregor Kleen 2019-03-11 12:49:19 +01:00
parent 46544f58c6
commit 3b0a020d01
3 changed files with 37 additions and 26 deletions

View File

@ -1,11 +1,8 @@
{ nixpkgs ? import <nixpkgs> {}, compiler ? null }:
{ nixpkgs ? import <nixpkgs>, compiler ? null }:
let
inherit (nixpkgs) pkgs;
haskellPackages = if isNull compiler
then pkgs.haskellPackages
else pkgs.haskell.packages."${compiler}";
inherit (nixpkgs {}) pkgs;
haskellPackages = if isNull compiler then pkgs.haskellPackages else pkgs.haskell.packages."${compiler}";
drv = haskellPackages.callPackage ./uniworx.nix {};
@ -26,21 +23,29 @@ let
shellHook = ''
export PROMPT_INFO="${oldAttrs.name}"
pgDir=$(mktemp -d)
pgSockDir=$(mktemp -d)
pgLogFile=$(mktemp)
initdb --no-locale -D ''${pgDir}
pg_ctl start -D ''${pgDir} -l ''${pgLogFile} -w -o "-k ''${pgSockDir} -c listen_addresses=''' -c hba_file='${postgresHba}' -c unix_socket_permissions=0700"
export PGHOST=''${pgSockDir} PGLOG=''${pgLogFile}
psql -f ${postgresSchema} postgres
printf "Postgres logfile is %s\nPostgres socket directory is %s\n" ''${pgLogFile} ''${pgSockDir}
if [[ -z "$PGHOST" ]]; then
set -xe
cleanup() {
pg_ctl stop -D ''${pgDir}
rm -rvf ''${pgDir} ''${pgSockDir} ''${pgLogFile}
}
pgDir=$(mktemp -d)
pgSockDir=$(mktemp -d)
pgLogFile=$(mktemp)
initdb --no-locale -D ''${pgDir}
pg_ctl start -D ''${pgDir} -l ''${pgLogFile} -w -o "-k ''${pgSockDir} -c listen_addresses=''' -c hba_file='${postgresHba}' -c unix_socket_permissions=0700"
export PGHOST=''${pgSockDir} PGLOG=''${pgLogFile}
psql -f ${postgresSchema} postgres
printf "Postgres logfile is %s\nPostgres socket directory is %s\n" ''${pgLogFile} ''${pgSockDir}
trap cleanup EXIT
cleanup() {
set +e -x
pg_ctl stop -D ''${pgDir}
rm -rvf ''${pgDir} ''${pgSockDir} ''${pgLogFile}
set +x
}
trap cleanup EXIT
set +xe
fi
${oldAttrs.shellHook}
'';

View File

@ -1,8 +1,14 @@
{ ghc, nixpkgs ? (import <nixpkgs> {}) }:
{ ghc, nixpkgs ? import <nixpkgs> }:
let
inherit (nixpkgs) haskell pkgs;
haskellPackages = if ghc.version == pkgs.haskellPackages.ghc.version then pkgs.haskellPackages else pkgs.haskell.packages."ghc${builtins.replaceStrings ["."] [""] ghc.version}";
snapshot = "lts-10.5";
stackage = import (fetchTarball {
url = "https://stackage.serokell.io/drczwlyf6mi0ilh3kgv01wxwjfgvq14b-stackage/default.nix.tar.gz";
sha256 = "1bwlbxx6np0jfl6z9gkmmcq22crm0pa07a8zrwhz5gkal64y6jpz";
});
inherit (nixpkgs { overlays = [ stackage."${snapshot}" ]; }) haskell pkgs;
haskellPackages = pkgs.haskell.packages."${snapshot}";
in haskell.lib.buildStackProject {
inherit ghc;
name = "stackenv";

View File

@ -17,6 +17,10 @@ packages:
git: https://github.com/pngwjpgh/encoding.git
commit: 67bb87ceff53f0178c988dd4e15eeb2daee92b84
extra-dep: true
- location:
git: https://github.com/pngwjpgh/memcached-binary.git
commit: b5461747e7be226d3b67daebc3c9aefe8a4490ad
extra-dep: true
extra-deps:
- colonnade-1.2.0
@ -45,8 +49,4 @@ extra-deps:
- quickcheck-classes-0.4.14
- semirings-0.2.1.1
- memcached-binary-0.2.0
allow-newer: true
resolver: lts-10.5