diff --git a/pkgs/build-support/builder-defs/builder-defs.nix b/pkgs/build-support/builder-defs/builder-defs.nix index 72a7dd03f8d..c3f7d384845 100644 --- a/pkgs/build-support/builder-defs/builder-defs.nix +++ b/pkgs/build-support/builder-defs/builder-defs.nix @@ -384,6 +384,14 @@ let inherit (builtins) head tail trace; in echo '${toString (attrByPath ["propagatedBuildInputs"] [] args)}' >\$out/nix-support/propagated-build-inputs ") ["minInit" "defEnsureDir"]; + cmakeFlags = ""; + + doCmake = fullDepEntry ('' + mkdir build + cd build + cmake -D CMAKE_INSTALL_PREFIX="$out" ${toString cmakeFlags} .. + '') ["minInit" "addInputs" "doUnpack"]; + /*debug = x:(trace x x); debugX = x:(trace (toXML x) x);*/ diff --git a/pkgs/build-support/release/nix-build.nix b/pkgs/build-support/release/nix-build.nix index 3a0d3a034ef..201fe4e799d 100644 --- a/pkgs/build-support/release/nix-build.nix +++ b/pkgs/build-support/release/nix-build.nix @@ -36,6 +36,18 @@ stdenv.mkDerivation ( cp $origSrc/nix-support/hydra-release-name $out/nix-support/hydra-release-name fi ''; + + failureHook = '' + if test -n "$succeedOnFailure"; then + if test -n "$keepBuildDirectory"; then + KEEPBUILDDIR="$out/`basename $TMPDIR`" + header "Copying build directory to $KEEPBUILDDIR" + ensureDir $KEEPBUILDDIR + cp -vR $TMPDIR/* $KEEPBUILDDIR + stopNest + fi + fi + ''; } // args // diff --git a/pkgs/development/libraries/ogre/default.nix b/pkgs/development/libraries/ogre/default.nix new file mode 100644 index 00000000000..107fc026119 --- /dev/null +++ b/pkgs/development/libraries/ogre/default.nix @@ -0,0 +1,57 @@ +x@{builderDefsPackage + , mesa, cmake, automake, libtool, autoconf + , freetype, freeimage, zziplib, randrproto, libXrandr + , libXaw, freeglut, libXt, libpng, boost, ois + , xproto, libX11, libXmu, libSM, pkgconfig + , libXxf86vm, xf86vidmodeproto, libICE + , renderproto, libXrender + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + []; + + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="ogre"; + majorVersion="1"; + minorVersion="7"; + patchLevel="2"; + version="${majorVersion}.${minorVersion}.${patchLevel}"; + name="${baseName}-${version}"; + project="${baseName}"; + url="mirror://sourceforge/project/${project}/${baseName}/${majorVersion}.${minorVersion}/${baseName}_src_v${majorVersion}-${minorVersion}-${patchLevel}.tar.bz2"; + hash="10q8jx842s4aws9py6q67rb4dh5vli5vvg54jl8manjb4f388jh5"; + }; +in +rec { + src = a.fetchurl { + url = sourceInfo.url; + sha256 = sourceInfo.hash; + }; + + inherit (sourceInfo) name version; + inherit buildInputs; + + /* doConfigure should be removed if not needed */ + phaseNames = ["doCmake" "doMakeInstall"]; + + meta = { + description = "A 3D engine"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + platforms = with a.lib.platforms; + linux; + license = "MIT"; + }; + passthru = { + updateInfo = { + downloadPage = "http://www.ogre3d.org/download/source"; + }; + }; +}) x + diff --git a/pkgs/development/libraries/ois/default.nix b/pkgs/development/libraries/ois/default.nix new file mode 100644 index 00000000000..abf6c7112a5 --- /dev/null +++ b/pkgs/development/libraries/ois/default.nix @@ -0,0 +1,53 @@ +x@{builderDefsPackage + , autoconf, automake, libtool, m4 + , libX11, xproto, libXi, inputproto + , libXaw, libXmu, libXt + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + []; + + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="ois"; + majorVersion="1"; + minorVersion="3"; + version="${majorVersion}.${minorVersion}"; + name="${baseName}-${version}"; + url="mirror://sourceforge/project/wgois/Source%20Release/${version}/ois_v${majorVersion}-${minorVersion}.tar.gz"; + hash="18gs6xxhbqb91x2gm95hh1pmakimqim1k9c65h7ah6g14zc7dyjh"; + }; +in +rec { + src = a.fetchurl { + url = sourceInfo.url; + sha256 = sourceInfo.hash; + }; + + inherit (sourceInfo) name version; + inherit buildInputs; + + phaseNames = ["doConfigure" "doMakeInstall"]; + + configureCommand = ''sh bootstrap; sh configure''; + + meta = { + description = "Object-oriented C++ input system"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + platforms = with a.lib.platforms; + linux; + license = a.lib.licenses.zlib; + }; + passthru = { + updateInfo = { + downloadPage = "http://sourceforge.net/projects/wgois/files/Source Release/"; + }; + }; +}) x + diff --git a/pkgs/games/thePenguinMachine/default.nix b/pkgs/games/thePenguinMachine/default.nix index 4ce42934b5a..68d44364f59 100644 --- a/pkgs/games/thePenguinMachine/default.nix +++ b/pkgs/games/thePenguinMachine/default.nix @@ -1,4 +1,4 @@ -args: with args; +{stdenv, fetchurl, python, pil, pygame, SDL} @ args: with args; stdenv.mkDerivation { name = "thePenguinMachine"; @@ -7,27 +7,35 @@ stdenv.mkDerivation { sha256 = "09ljks8vj75g00h3azc83yllbfsrxwmv1c9g32gylcmsshik0dqv"; }; - buildInputs = [python24 pil pygame SDL]; + buildInputs = [python pil pygame SDL]; - configurePhase = " - sed -e \"/includes = /aincludes.append('${SDL}/include/SDL')\" -i setup.py; - sed -e \"/includes = /aincludes.append('${pygame}/include/python2.4')\" -i setup.py; + configurePhase = '' + sed -e "/includes = /aincludes.append('${SDL}/include/SDL')" -i setup.py; + sed -e "/includes = /aincludes.append('$(echo ${pygame}/include/python*)')" -i setup.py; cat setup.py; - "; - buildPhase = " + export NIX_LDFLAGS="$NIX_LDFLAGS -lgcc_s" + ''; + buildPhase = '' + sed -e "s/pygame.display.toggle_fullscreen.*/pass;/" -i tpm/Application.py + sed -e 's@"Surface"@"pygame.Surface"@' -i src/surfutils.c python setup.py build; python setup.py build_clib; python setup.py build_ext; python setup.py build_py; python setup.py build_scripts; - "; - installPhase = " - python setup.py install --prefix=\${out} - cp -r . /tmp/tpm-build - echo 'export PYTHONPATH=$PYTHONPATH:${pygame}/lib/python2.4/site-packages:${pil}/lib/python2.4/site-packages/PIL - python ThePenguinMachine.py' >/tmp/tpm-build/tpm.sh; - chmod a+rx /tmp/tpm-build/tpm.sh - "; + ''; + installPhase = '' + python setup.py install --prefix=$out + ensureDir "$out"/share/tpm/ + cp -r . "$out"/share/tpm/build-dir + ensureDir "$out/bin" + echo "#! /bin/sh" >> "$out/bin/tpm" + echo "export PYTHONPATH=\"\$PYTHONPATH:$PYTHONPATH:$(echo ${pil}/lib/python*/site-packages/PIL)\"" >> "$out/bin/tpm" + echo "cd \"$out/share/tpm/build-dir\"" >> "$out/bin/tpm" + echo "export PYTHONPATH=\"\$PYTHONPATH:$PYTHONPATH:$(echo ${pil}/lib/python*/site-packages/PIL)\"" >> "$out/bin/tpm" + echo "${python}/bin/python \"$out\"/share/tpm/build-dir/ThePenguinMachine.py \"\$@\"" >> "$out/bin/tpm" + chmod a+x "$out/bin/tpm" + ''; meta = { description = " diff --git a/pkgs/tools/networking/openvpn/default.nix b/pkgs/tools/networking/openvpn/default.nix index aebe7945352..94629861b58 100644 --- a/pkgs/tools/networking/openvpn/default.nix +++ b/pkgs/tools/networking/openvpn/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, iproute, lzo, openssl, nettools}: stdenv.mkDerivation rec { - name = "openvpn-2.1.1"; + name = "openvpn-2.1.4"; src = fetchurl { - url = "http://openvpn.net/release/${name}.tar.gz"; - sha256 = "0hj8cdwgdxfsvjxnw4byys3ij719cg9bl9iadcchayzzymx0s653"; + url = "http://swupdate.openvpn.net/community/releases/${name}.tar.gz"; + sha256 = "1x9aymbk580zp35b7dhhkn29a4chhxnzrxjfmp948bgqvvjpizk7"; }; buildInputs = [ iproute lzo openssl ]; diff --git a/pkgs/tools/package-management/disnix/activation-scripts/default.nix b/pkgs/tools/package-management/disnix/activation-scripts/default.nix index c19c6a406a9..d1507e253a8 100644 --- a/pkgs/tools/package-management/disnix/activation-scripts/default.nix +++ b/pkgs/tools/package-management/disnix/activation-scripts/default.nix @@ -1,21 +1,25 @@ { stdenv, fetchurl -, ejabberd ? null, mysql ? null +, ejabberd ? null, mysql ? null, postgresql ? null, subversion ? null , enableApacheWebApplication ? false , enableAxis2WebService ? false , enableEjabberdDump ? false , enableMySQLDatabase ? false +, enablePostgreSQLDatabase ? false +, enableSubversionRepository ? false , enableTomcatWebApplication ? false , catalinaBaseDir ? "/var/tomcat" }: assert enableMySQLDatabase -> mysql != null; +assert enablePostgreSQLDatabase -> postgresql != null; +assert enableSubversionRepository -> subversion != null; assert enableEjabberdDump -> ejabberd != null; stdenv.mkDerivation { - name = "disnix-activation-scripts-0.2pre24557"; + name = "disnix-activation-scripts-0.2pre25210"; src = fetchurl { - url = http://hydra.nixos.org/build/774785/download/1/disnix-activation-scripts-0.2pre24557.tar.gz; - sha256 = "16allbni0hwcj9qyg67n4ly4bl09wp32rrds3s1hvq6a2p3a3fg7"; + url = http://hydra.nixos.org/build/816489/download/1/disnix-activation-scripts-0.2pre25210.tar.gz; + sha256 = "1jski4fjz4pmh0knh3rgfkkmc7i2krs164nh0fasbh2radksm0hl"; }; preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else ""; @@ -25,10 +29,14 @@ stdenv.mkDerivation { ${if enableAxis2WebService then "--with-axis2" else "--without-axis2"} ${if enableEjabberdDump then "--with-ejabberd" else "--without-ejabberd"} ${if enableMySQLDatabase then "--with-mysql" else "--without-mysql"} + ${if enablePostgreSQLDatabase then "--with-postgresql" else "--without-postgresql"} + ${if enableSubversionRepository then "--with-subversion" else "--without-subversion"} ${if enableTomcatWebApplication then "--with-tomcat=${catalinaBaseDir}" else "--without-tomcat"} ''; buildInputs = [] ++ stdenv.lib.optional enableEjabberdDump ejabberd - ++ stdenv.lib.optional enableMySQLDatabase mysql; + ++ stdenv.lib.optional enableMySQLDatabase mysql + ++ stdenv.lib.optional enablePostgreSQLDatabase postgresql + ++ stdenv.lib.optional enableSubversionRepository subversion; } diff --git a/pkgs/tools/package-management/nix/sqlite.nix b/pkgs/tools/package-management/nix/sqlite.nix index 4f4cf91af1f..d4bec98dc54 100644 --- a/pkgs/tools/package-management/nix/sqlite.nix +++ b/pkgs/tools/package-management/nix/sqlite.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "nix-1.0pre25121"; + name = "nix-1.0pre25179"; src = fetchurl { - url = "http://hydra.nixos.org/build/805927/download/4/${name}.tar.bz2"; - sha256 = "94e619e8b44f1172e71dc86d0aec1a557e76d49609e9a1fccbcea752360e3e97"; + url = "http://hydra.nixos.org/build/811883/download/4/${name}.tar.bz2"; + sha256 = "4a6f7ca69428d24f253f8f199589d25fca1e7146a6591288392423634e3303f7"; }; buildInputs = [ perl curl openssl pkgconfig boehmgc ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d2842ad37d5..eddced94b89 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3766,6 +3766,8 @@ let ode = builderDefsPackage (import ../development/libraries/ode) { }; + + ogre = callPackage ../development/libraries/ogre {}; openal = callPackage ../development/libraries/openal { }; @@ -3799,6 +3801,8 @@ let opensc = opensc_0_11_7; }; + ois = callPackage ../development/libraries/ois {}; + opal = callPackage ../development/libraries/opal {}; openjpeg = callPackage ../development/libraries/openjpeg { }; @@ -4671,7 +4675,7 @@ let kbd = callPackage ../os-specific/linux/kbd { }; - libcroup = callPackage ../os-specific/linux/libcg { }; + libcgroup = callPackage ../os-specific/linux/libcg { }; libnl = callPackage ../os-specific/linux/libnl { }; @@ -6901,10 +6905,7 @@ let tennix = callPackage ../games/tennix { }; - /*tpm = import ../games/thePenguinMachine { - inherit stdenv fetchurl pil pygame SDL; - python24 = python; - };*/ + tpm = callPackage ../games/thePenguinMachine { }; tremulous = callPackage ../games/tremulous { }; @@ -7322,6 +7323,8 @@ let enableAxis2WebService = getConfig ["disnix" "enableAxis2WebService"] false; enableEjabberdDump = getConfig ["disnix" "enableEjabberdDump"] false; enableMySQLDatabase = getConfig ["disnix" "enableMySQLDatabase"] false; + enablePostgreSQLDatabase = getConfig ["disnix" "enablePostgreSQLDatabase"] false; + enableSubversionRepository = getConfig ["disnix" "enableSubversionRepository"] false; enableTomcatWebApplication = getConfig ["disnix" "enableTomcatWebApplication"] false; };