From 41fcb036eb19b6aef8f4f11d7eb6135247afc8bd Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Mon, 28 Nov 2016 14:52:41 +0300 Subject: [PATCH] releaseTools.debBuild: split checkinstall into separate phase and allow to override them --- pkgs/build-support/release/debian-build.nix | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/pkgs/build-support/release/debian-build.nix b/pkgs/build-support/release/debian-build.nix index f4bc3e73056..74e061966bc 100644 --- a/pkgs/build-support/release/debian-build.nix +++ b/pkgs/build-support/release/debian-build.nix @@ -16,17 +16,14 @@ with stdenv.lib; vmTools.runInLinuxImage (stdenv.mkDerivation ( { + name = name + "-" + diskImage.name + (if src ? version then "-" + src.version else ""); + doCheck = true; prefix = "/usr"; - prePhases = "installExtraDebsPhase sysInfoPhase"; - } - - // removeAttrs args ["vmTools"] // - - { - name = name + "-" + diskImage.name + (if src ? version then "-" + src.version else ""); + prePhases = [ "installExtraDebsPhase" "sysInfoPhase" ]; + postPhases = [ "debInstallPhase" ]; # !!! cut&paste from rpm-build.nix postHook = '' @@ -72,6 +69,12 @@ vmTools.runInLinuxImage (stdenv.mkDerivation ( mkdir -p $out/debs find . -name "*.deb" -exec cp {} $out/debs \; + eval "$postInstall" + ''; + + debInstallPhase = '' + eval "$preDebInstall" + [ "$(echo $out/debs/*.deb)" != "" ] for i in $out/debs/*.deb; do @@ -87,12 +90,12 @@ vmTools.runInLinuxImage (stdenv.mkDerivation ( echo "file deb-extra $(ls $i/debs/*.deb | sort | head -1)" >> $out/nix-support/hydra-build-products done - eval "$postInstall" + eval "$postDebInstall" ''; # */ meta = (if args ? meta then args.meta else {}) // { description = "Deb package for ${diskImage.fullName}"; }; - } + } // removeAttrs args ["name" "meta" "vmTools"] ))