Improved builder for Sqitch

wip/yesman
Robin Bate Boerop 9 years ago
parent 566cd9ba19
commit a3a98d7242
  1. 23
      pkgs/development/tools/misc/sqitch/default.nix
  2. 6
      pkgs/top-level/all-packages.nix
  3. 15
      pkgs/top-level/perl-packages.nix

@ -1,20 +1,15 @@
{ stdenv, writeScript, makeWrapper, sqitchModule }:
stdenv.mkDerivation rec {
name = "sqitch-0.999";
buildInputs = [ makeWrapper ];
builder = writeScript (name + "-builder.sh") ''
. ${stdenv}/setup
{ name, stdenv, perl, makeWrapper, sqitchModule, databaseModule }:
stdenv.mkDerivation {
name = "${name}-${sqitchModule.version}";
buildInputs = [ perl makeWrapper sqitchModule databaseModule ];
unpackPhase = ":";
buildPhase = ":";
installPhase = ''
mkdir -p $out/bin
for d in bin/sqitch etc lib share ; do
ln -s ${sqitchModule}/$d $out/$d
done
fixupPhase
wrapProgram $out/bin/sqitch \
--prefix PERL5LIB : \
"$(for i in $(cat ${sqitchModule}/nix-support/propagated-native-build-inputs) ; do
echo -n "$i"/lib/perl5/site_perl:
done
echo ${sqitchModule}/lib/perl5/site_perl
)"
'';
dontStrip = true;
postFixup = "wrapProgram $out/bin/sqitch --prefix PERL5LIB : $PERL5LIB";
}

@ -7816,8 +7816,10 @@ let
planetary_annihilation = callPackage ../games/planetaryannihilation { };
sqitch = callPackage ../development/tools/misc/sqitch {
inherit stdenv writeScript makeWrapper ;
sqitchPg = callPackage ../development/tools/misc/sqitch {
inherit stdenv perl makeWrapper;
name = "sqitch-pg";
databaseModule = perlPackages.DBDPg;
sqitchModule = perlPackages.AppSqitch;
};

@ -219,8 +219,9 @@ let self = _self // overrides; _self = with self; {
};
};
AppSqitch = buildPerlModule {
name = "App-Sqitch-0.999";
AppSqitch = buildPerlModule rec {
version = "0.999";
name = "App-Sqitch-${version}";
src = fetchurl {
url = mirror://cpan/authors/id/D/DW/DWHEELER/App-Sqitch-0.999.tar.gz;
sha256 = "e7e02194a7b0c42fb4df046cd834d5eb99ff9a2c169f5c60a52c362e89351da6";
@ -235,11 +236,11 @@ let self = _self // overrides; _self = with self; {
IPCSystemSimple ListMoreUtils Moo PathClass PerlIOutf8_strict StringFormatter
StringShellQuote SubExporter TemplateTiny Throwable TryTiny TypeTiny URI
URIdb libintlperl namespaceautoclean
strictures ModuleRuntime DevelGlobalDestruction SubExporterProgressive
ImportInto ExporterTiny DataOptList ParamsUtil SubInstall RoleTiny
MooXTypesMooseLike ClassLoad ModuleImplementation ClassLoadXS
BHooksEndOfScope namespaceclean PackageStash SubIdentify
ClassMethodModifiers
# strictures ModuleRuntime DevelGlobalDestruction SubExporterProgressive
# ImportInto ExporterTiny DataOptList ParamsUtil SubInstall RoleTiny
# MooXTypesMooseLike ClassLoad ModuleImplementation ClassLoadXS
# BHooksEndOfScope namespaceclean PackageStash SubIdentify
# ClassMethodModifiers
];
doCheck = false; # Can't find home directory.
meta = {

Loading…
Cancel
Save