From 69d4adee1f8b6278a19708a9051f3290f8f13e04 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sat, 20 Jan 2018 19:58:06 -0500 Subject: [PATCH] idris: Move library setup to the setup hook. This was broken in preHook because addEnvHooks isn't defined yet. --- .../idris-modules/build-idris-package.nix | 27 +++---------------- .../idris-modules/idris-wrapper.nix | 3 +++ pkgs/development/idris-modules/setup-hook.sh | 16 +++++++++++ 3 files changed, 23 insertions(+), 23 deletions(-) create mode 100644 pkgs/development/idris-modules/setup-hook.sh diff --git a/pkgs/development/idris-modules/build-idris-package.nix b/pkgs/development/idris-modules/build-idris-package.nix index 66eddd0e3602..0048634f5b45 100644 --- a/pkgs/development/idris-modules/build-idris-package.nix +++ b/pkgs/development/idris-modules/build-idris-package.nix @@ -3,40 +3,21 @@ # args: Additional arguments to pass to mkDerivation. Generally should include at least # name and src. { stdenv, idris, gmp }: args: stdenv.mkDerivation ({ - preHook = '' - # Library import path - export IDRIS_LIBRARY_PATH=$PWD/idris-libs - mkdir -p $IDRIS_LIBRARY_PATH - - # Library install path - export IBCSUBDIR=$out/lib/${idris.name} - mkdir -p $IBCSUBDIR - - addIdrisLibs () { - if [ -d $1/lib/${idris.name} ]; then - ln -sv $1/lib/${idris.name}/* $IDRIS_LIBRARY_PATH - fi - } - - # All run-time deps - addEnvHooks 0 addIdrisLibs - ''; - buildPhase = '' - ${idris}/bin/idris --build *.ipkg + idris --build *.ipkg ''; doCheck = true; checkPhase = '' if grep -q test *.ipkg; then - ${idris}/bin/idris --testpkg *.ipkg + idris --testpkg *.ipkg fi ''; installPhase = '' - ${idris}/bin/idris --install *.ipkg --ibcsubdir $IBCSUBDIR + idris --install *.ipkg --ibcsubdir $IBCSUBDIR ''; - buildInputs = [ gmp ]; + buildInputs = [ gmp idris ]; } // args) diff --git a/pkgs/development/idris-modules/idris-wrapper.nix b/pkgs/development/idris-modules/idris-wrapper.nix index 32424ba1f862..c67624337bbb 100644 --- a/pkgs/development/idris-modules/idris-wrapper.nix +++ b/pkgs/development/idris-modules/idris-wrapper.nix @@ -9,6 +9,9 @@ symlinkJoin { wrapProgram $out/bin/idris \ --suffix PATH : ${ stdenv.lib.makeBinPath path } \ --suffix LIBRARY_PATH : ${stdenv.lib.makeLibraryPath lib} + + mkdir -p $out/nix-support + substituteAll ${./setup-hook.sh} $out/nix-support/setup-hook ''; } diff --git a/pkgs/development/idris-modules/setup-hook.sh b/pkgs/development/idris-modules/setup-hook.sh new file mode 100644 index 000000000000..30a487ea80d4 --- /dev/null +++ b/pkgs/development/idris-modules/setup-hook.sh @@ -0,0 +1,16 @@ +# Library import path +export IDRIS_LIBRARY_PATH=$PWD/idris-libs +mkdir -p $IDRIS_LIBRARY_PATH + +# Library install path +export IBCSUBDIR=$out/lib/@name@ +mkdir -p $IBCSUBDIR + +addIdrisLibs () { + if [ -d $1/lib/@name@ ]; then + ln -sv $1/lib/@name@/* $IDRIS_LIBRARY_PATH + fi +} + +# All run-time deps +addEnvHooks 1 addIdrisLibs