This allows users to build hydra using a normal mkDerivation, package overrides, etc.
UBPWXGKFBD6VMQCCUE625I4NLLRNVD7BSJ6QD2XF7Z7A7T5BI5XAC HOMDMC3KNUTAEC3VER4DXLYBAN2U6AYJNNZKQHTZHY5O5FCYOZSAC F6IBTEIB5Q342R2TEWJX53MDWX2F4JS3MOCCHHUPUEFHUQ4MZV5QC RX5IIZMT7AKE3SME2TON6HWE7BB2GNYV3KOKL3GLH4J7J2GEOO5AC E4HX2C5YTIYBXC6SJ3TDGUQILVADSISLFB7RP3R2UAVQ7MVFECNQC 3QWDDLBR5DGFK5Y3TDMK55R2SCHRHFVO2KW2BMZGIYRTIQEZC45AC BAUP4PCK2JLRRXX7NXNMIQ5JIIRFKFH7LWIHF3MVWX2BQ4RMTIKAC XCHVWNOO4B774FXOG6FRADDPCU6RAQMCKZ4VBINZYKUZBW7ERRLAC J37GFZZZTUILBLSUA5QCFJNPWBN4KJMJX4CV5QGYE4RSHCV55PWQC GRRHPK5GNNANIVCR2V2LSKY3WJAMNJFEJKVKR4NIKG5PB6TJ7BBAC GX5R7OKFGTHBPJMN6RCPXTJTROXOJQBVRTYBK5KX3EEKX7BXIQAAC UKFZFDJOMUNXOF2QTVEA6VQG64DSGQCLJVEMH5OSBOSCZWUMKELQC IJCXGTECITDKQK6VHWETBWT4JF64H3M5LM6KWEH7NKRVTUUJUQXAC X4KYZJBQ7WULUWTHAPX5BZTZR7C6HRCC4N4J5K726PGZKSY6FQOQC GZFKERN3PQJTNMWN7WD3NVSXTD2TRN3J4JDODEPI2Q3NUXSPSTYQC CLXEECMFKLUIN5QBV3BPPPSU6G5UF6MXRSNWA6LXUBNQGSJY4U5QC WQ2VQ7H3CTHM47EOW3F3BB2OUAI7ZXX5FBBAD2DODQOFO5LRM4WAC T4LLYESZ2HUXSLKZ6GNBLVWUVG7R5IDFHYHYO773QIZ6QTOOXR2AC X7IAG7JTV4W6JH34JBC6KOVUGBAG643V4Y5MX4GTJL2BV5PP5VIQC 34UH6B6LBITNUL6HXSPLL3657R73LC6C34QMJJLKTMLUGHFTLUSQC 5CNQUQ77EWOYWMW6VXQCSDITIO55UEKBI6CBV72NR7DPUBFLMWDAC OKEMZJLSKAM23XY7I7APMM3TUSMHE2XMUAANKIVQSBN6JNXI3FJAC PKTKSVTLHM5L6MOKXDQOJZ35FV2VXAD556S26QMICR6SNIY56LBQC 7DEMMXE5S2F45FFNCU3W3YYXJAZJLUVGRXIUFROHEXOUEPDSE5YQC 4YCF3KBGI4VYKHJXAREJLCJLY3UWB2FX447CJ4XQWFRKRFKG5WCQC DODOGD7MRCMRVGX23RPY2243WG54HCMCEZ6DCHOGID3GBQB66CXQC 6K5PBUUN4GQAMOVX5BS6YYMHJ3PIF2PPZBTIEQ4R7BQNHC23GS3AC 2554VN4TY7VIYRLWCFUIASPQOQ4SAKJRTMY7JJWKVQTFSEFTFBWAC 67QM2R5CGVRCVPLUHCLAX2SCFXPSXBH4SMEHRTXCYC7CZDKDQFZQC X22X45IXVBMMYKHGCN5BFFN74UPAE56ZC5JITK4WTXTT5E6SC5PQC LZVO64YG43JD7YMZSCTZNOBS5ROZA4FMPKJW2YOMHX2V5PTGBVWQC ZDEHAFHV3PGIMALKSSPZTKHWMY3EVGYQJPH35DXVJ7OL5NXPY7WAC 66MEE6QG53NOOFIMZZE7R4TL5SA32V2547ZD3LDT2NPLFNR6Q7CAC HPIJ35SGWBE4WZE5RGSYGR7IRPCFYROUUUAHAC7E5TDCMSVM2OZAC U2BNO3C5TDLPEHTLDZ6CJ7CGZLL7RP3PV7UBUDJUQ6N6BJJ6CBFQC UMEQXUUHFYSGKRXFQV6BOB3YGZACJHFBJ3ULSCXVRRRNV7ZUQW2AC TEGLW4X37XTA5EV2GNB3IVDSOZPTWDBBWMESJSMIECK2OGDLZHNQC DO432JDJH2NWZC6AMN7PG6WYD2Y26U6O54GDMBEVBQTZEVNKBN5QC YQWH4POV22KYCCKOTZXD36QKUOWEQ2DSPYPO5DNZDZ344RI25OAAC L7RW467ZBDYCV332DAVH5PBVTCVQXNJXACVNZJTU5Y5H6P62X52QC UQYHPQ6UO7LIQ4P6NSCAEV677K52RQOQKCF4KSGNXMMFOQKY7IPQC GTUZLZRHJ6GL5BNXOO3GA6Y3GFO7AXLIVPQHSG26LCF42KC2N7LQC MC3YYO4VWSQDSPO7EXD5VJ44IET3MZEZ7MNY6OKK5V24CPVPMSIAC WTHZ4AGP4LSBUALFRGBYBR7M3HCYTVFLNHMBKQYVLKQOJK4MFV5QC LOHWNXEJKUPDI33VZMC2XLPXO7TZ2Y3AJTFJPJI2ZPHJOMLUUPRAC SAFVRDTKKD25U6VW5IVNUILLLXNQXFU72XARYC6NRVXU6MJEW2WAC K4DKM74W2QSV3ZMVV2YZ2MDQZHB6ZVQFBZV5FE5EBCELV7ZHUFSAC M4JUF5V6Y5ING6VEJZ44SVBNH7DFFE6R6QURSWFQS5FBUADB7Z6QC 7I2VJDS6UO3W36E64RNRJTJ6ZEB5Y6EP3ZWUGZY4TQW25HJORBHAC V2ALOFRRXCDVWOED74BORKDSVVIQHLWOC7FMUTPHORGFB6XRURMQC WR22RPG2ZIHVAZE4KP7LKR5INB2VRMQIZJ5HOKOXQIEM5CN3PCFQC DUUF3XJFYRDKXJDG33FKRJHSXPJAYTMTZ7FMVR3527QHNHQYQARQC DFXIN6YWMMN7BTJSSFVTFUMR4OKPAKNQF6PRBUC4BWXUFLZSQRDAC DWQCLOPQCZENDPZ3JKIL4T2XU3IPT5BU6VKTOMS3PXZDUL3KDZSQC JTRG7RDQXKPSO4ESGDLSVAT5WIFGKDL424MN6YYCVTKCOR2FTXRQC O25D52TAMOPAK45N4II5XMWOBMPQJNHLW22M37COVY43EKNQBWJAC UQ6K57MSDZQLOKQAMFBH6K4CIROQ54ZEQZ3KVZ22YCLDCJ6FRYRAC GLHKDGJ4LLKWUB6AMISXAKO7FZLOGXB4VCTYYXUANULQJOYLS6VQC Y2BFYLLKUGX3D6MKZXYMLPBPQFD4UGI4L3HK5ETYQBQVQCAQBIIQC KVNTTRVTNWMNL4RCF5USOBN3KCKLRWQQDCSKMLB3GPZEHGM53VAAC NDJ6PZB7DYL3YAZPQYQJF5RTF73GKYWGHORSMJRTMZ5HK6JSHUBQC UGA45FNCYAHX77QI3MTMSRF676N2BUW2ZUUI4OZCI2C3EJOYKY3QC IZYR3KTL4M5OERLZM4LAC6N6TWZLQXMRVQIFOCIKMDQU3F2E7FHQC RRUSDIBLMUY77XSIIVDU6FUPHY6JZ2NB5QH3KC45IXA3TDZYXE4QC { stdenv, hydraSrc ? { outPath = ./.; revCount = 1234; rev = "abcdef"; }, version ? builtins.readFile ./version + "." + toString hydraSrc.revCount + "." + hydraSrc.rev, makeWrapper, libtool, unzip, nukeReferences, sqlite, libpqxx, guile ? null, perl, nix, postgresql92, perlPackages, openssh, buildEnv, autoreconfHook, pkgconfig, topGit, mercurial, darcs, subversion, bazaar, openssl, bzip2, libxslt, docbook_xsl, coreutils, findutils, pixz, gzip, lzma, gnutar, git, gnused, rpm, dpkg, cdrkit, boehmgc, aws-sdk-cpp}: assert builtins.compareVersions "6" stdenv.cc.cc.version < 1;let perlDeps = buildEnv {name = "hydra-perl-deps";paths = with perlPackages;[ ModulePluggableCatalystActionRESTCatalystAuthenticationStoreDBIxClassCatalystDevelCatalystDispatchTypeRegexCatalystPluginAccessLogCatalystPluginAuthorizationRolesCatalystPluginCaptchaCatalystPluginSessionStateCookieCatalystPluginSessionStoreFastMmapCatalystPluginStackTraceCatalystPluginUnicodeEncodingCatalystTraitForRequestProxyBaseCatalystViewDownloadCatalystViewJSONCatalystViewTTCatalystXScriptServerStarmanCryptRandPasswdDBDPgDBDSQLiteDataDumpDateTimeDigestSHA1EmailMIMEEmailSenderFileSlurpIOCompressIPCRunJSONXSLWPLWPProtocolHttpsNetAmazonS3NetStatsdPadWalkerReadonlySQLSplitStatementSetScalarStarmanSysHostnameLongTestMoreTextDiffTextTableXMLSimplenixnix.perl-bindingsgitboehmgcaws-sdk-cpp];};in stdenv.mkDerivation {name = "hydra-${version}";src = hydraSrc;buildInputs =[ makeWrapper autoreconfHook libtool unzip nukeReferences pkgconfig sqlite libpqxxtopGit mercurial darcs subversion bazaar openssl bzip2 libxsltguile # optional, for Guile + Guix supportperlDeps perl nixpostgresql92 # for running the tests];hydraPath = stdenv.lib.makeBinPath ([ sqlite subversion openssh nix coreutils findutils pixzgzip bzip2 lzma gnutar unzip git topGit mercurial darcs gnused bazaar] ++ stdenv.lib.optionals stdenv.isLinux [ rpm dpkg cdrkit ] );configureFlags = [ "--with-docbook-xsl=${docbook_xsl}/xml/xsl/docbook" ];preHook = ''PATH=$(pwd)/src/hydra-evaluator:$(pwd)/src/script:$(pwd)/src/hydra-eval-jobs:$(pwd)/src/hydra-queue-runner:$PATHPERL5LIB=$(pwd)/src/lib:$PERL5LIB;'';preCheck = ''patchShebangs .export LOGNAME=${LOGNAME:-foo}'';postInstall = ''mkdir -p $out/nix-supportfor i in $out/bin/*; do #*/read -n 4 chars < $iif [[ $chars =~ ELF ]]; then continue; fiwrapProgram $i \--prefix PERL5LIB ':' $out/libexec/hydra/lib:$PERL5LIB \--prefix PATH ':' $out/bin:$hydraPath \--set HYDRA_RELEASE ${version} \--set HYDRA_HOME $out/libexec/hydra \--set NIX_RELEASE ${nix.name or "unknown"}done'';dontStrip = true;passthru.perlDeps = perlDeps;}
/*nix = overrideDerivation nixUnstable (attrs: {src = fetchFromGitHub {owner = "NixOS";repo = "nix";rev = "4be4f6de56f4de77f6a376f1a40ed75eb641bb89";sha256 = "0icvbwpca1jh8qkdlayxspdxl5fb0qjjd1kn74x6gs6iy66kndq6";};buildInputs = attrs.buildInputs ++ [ autoreconfHook bison flex ];nativeBuildInputs = attrs.nativeBuildInputs ++ [ aws-sdk-cpp' autoconf-archive ];configureFlags = attrs.configureFlags + " --disable-doc-gen";preConfigure = "./bootstrap.sh; mkdir -p $doc $man";});*/nix = nixUnstable;perlDeps = buildEnv {name = "hydra-perl-deps";paths = with perlPackages;[ ModulePluggableCatalystActionRESTCatalystAuthenticationStoreDBIxClassCatalystDevelCatalystDispatchTypeRegexCatalystPluginAccessLogCatalystPluginAuthorizationRolesCatalystPluginCaptchaCatalystPluginSessionStateCookieCatalystPluginSessionStoreFastMmapCatalystPluginStackTraceCatalystPluginUnicodeEncodingCatalystTraitForRequestProxyBaseCatalystViewDownloadCatalystViewJSONCatalystViewTTCatalystXScriptServerStarmanCryptRandPasswdDBDPgDBDSQLiteDataDumpDateTimeDigestSHA1EmailMIMEEmailSenderFileSlurpIOCompressIPCRunJSONXSLWPLWPProtocolHttpsNetAmazonS3NetStatsdPadWalkerReadonlySQLSplitStatementSetScalarStarmanSysHostnameLongTestMoreTextDiffTextTableXMLSimplenixnix.perl-bindingsgitboehmgcaws-sdk-cpp'];};
releaseTools.nixBuild {name = "hydra-${version}";src = if shell then null else hydraSrc;stdenv = overrideCC stdenv gcc6;buildInputs =[ makeWrapper autoconf automake libtool unzip nukeReferences pkgconfig sqlite libpqxxgitAndTools.topGit mercurial darcs subversion bazaar openssl bzip2 libxsltguile # optional, for Guile + Guix supportperlDeps perl nixpostgresql92 # for running the tests];hydraPath = lib.makeBinPath ([ sqlite subversion openssh nix coreutils findutils pixzgzip bzip2 lzma gnutar unzip git gitAndTools.topGit mercurial darcs gnused bazaar] ++ lib.optionals stdenv.isLinux [ rpm dpkg cdrkit ] );postUnpack = optionalString (!shell) ''# Clean up when building from a working tree.(cd $sourceRoot && (git ls-files -o --directory | xargs -r rm -rfv)) || true'';configureFlags = [ "--with-docbook-xsl=${docbook_xsl}/xml/xsl/docbook" ];preHook = ''PATH=$(pwd)/src/hydra-evaluator:$(pwd)/src/script:$(pwd)/src/hydra-eval-jobs:$(pwd)/src/hydra-queue-runner:$PATHPERL5LIB=$(pwd)/src/lib:$PERL5LIB;'';preConfigure = "autoreconf -vfi";enableParallelBuilding = true;preCheck = ''patchShebangs .export LOGNAME=${LOGNAME:-foo}'';postInstall = ''mkdir -p $out/nix-supportfor i in $out/bin/*; doread -n 4 chars < $iif [[ $chars =~ ELF ]]; then continue; fiwrapProgram $i \--prefix PERL5LIB ':' $out/libexec/hydra/lib:$PERL5LIB \--prefix PATH ':' $out/bin:$hydraPath \--set HYDRA_RELEASE ${version} \--set HYDRA_HOME $out/libexec/hydra \--set NIX_RELEASE ${nix.name or "unknown"}done''; # */dontStrip = true;meta.description = "Build of Hydra on ${system}";passthru.perlDeps = perlDeps;
callPackage ./. {stdenv = stdenv6 // { mkDerivation = args: releaseTools.nixBuild (args // {stdenv = stdenv6;postUnpack = optionalString (!shell) ''# Clean up when building from a working tree.(cd $sourceRoot && (git ls-files -o --directory | xargs -r rm -rfv)) || true'';}); };inherit (gitAndTools) topGit;nix = nixUnstable;aws-sdk-cpp = aws-sdk-cpp';hydraSrc = if shell then null else hydraSrc;