From 2f848503b9dbe5053aac2ce4f5523cdf7665bf35 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 3 Mar 2011 12:07:51 +0000 Subject: [PATCH 01/32] svn path=/nixpkgs/trunk/; revision=26142 --- pkgs/applications/networking/browsers/firefox/3.6.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox/3.6.nix b/pkgs/applications/networking/browsers/firefox/3.6.nix index f119f301dbb..6805a4c69f0 100644 --- a/pkgs/applications/networking/browsers/firefox/3.6.nix +++ b/pkgs/applications/networking/browsers/firefox/3.6.nix @@ -12,14 +12,14 @@ rec { - firefoxVersion = "3.6.13"; + firefoxVersion = "3.6.14"; - xulVersion = "1.9.2.13"; # this attribute is used by other packages + xulVersion = "1.9.2.14"; # this attribute is used by other packages src = fetchurl { url = "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"; - sha1 = "1d1bc70d651bce4006687f5762638563c0494267"; + sha1 = "8f4e221951f74366619473bd46e04b4c81606ef0"; }; From b679cf6a66813904e895cfd66886a12cf1d24ef4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 3 Mar 2011 13:41:01 +0000 Subject: [PATCH 02/32] Updating boost svn path=/nixpkgs/trunk/; revision=26143 --- pkgs/development/libraries/boost/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/boost/default.nix b/pkgs/development/libraries/boost/default.nix index c4b9f23bb23..0a64efdeb3b 100644 --- a/pkgs/development/libraries/boost/default.nix +++ b/pkgs/development/libraries/boost/default.nix @@ -33,7 +33,7 @@ let in stdenv.mkDerivation { - name = "boost-1.44.0"; + name = "boost-1.46.0"; meta = { homepage = "http://boost.org/"; @@ -44,8 +44,8 @@ stdenv.mkDerivation { }; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_44_0.tar.bz2"; - sha256 = "1nvq36mvzr1fr85q0jh86rk3bk65s1y55jgqgzfg3lcpkl12ihs5"; + url = "mirror://sourceforge/boost/boost_1_46_0.tar.bz2"; + sha256 = "0ndsiv06332gbh6wj68pcnci3l5qrc5pm1ca9dkmxhpxj83zd41g"; }; enableParallelBuilding = true; From 7912200505d026fa102f38d8327423fd4036671f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 3 Mar 2011 13:41:06 +0000 Subject: [PATCH 03/32] Adding libf2c svn path=/nixpkgs/trunk/; revision=26144 --- pkgs/development/libraries/libf2c/default.nix | 32 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/development/libraries/libf2c/default.nix diff --git a/pkgs/development/libraries/libf2c/default.nix b/pkgs/development/libraries/libf2c/default.nix new file mode 100644 index 00000000000..b14809d47bf --- /dev/null +++ b/pkgs/development/libraries/libf2c/default.nix @@ -0,0 +1,32 @@ +{stdenv, fetchurl, unzip}: + +stdenv.mkDerivation rec { + name = "libf2c"; + + src = fetchurl { + url = http://www.netlib.org/f2c/libf2c.zip; + sha256 = "14py0zdwzj5gqjzi0z2hlcy3czpzx1fav55akdj143qgav8h6dav"; + }; + + unpackPhase = '' + mkdir build + cd build + unzip ${src} + ''; + + makeFlags = "-f makefile.u"; + + installPhase = '' + ensureDir $out/include $out/lib + cp libf2c.a $out/lib + cp f2c.h $out/include + ''; + + buildInputs = [ unzip ]; + + meta = { + description = "F2c converts Fortran 77 source code to C"; + homepage = http://www.netlib.org/f2c/; + license = "BSD"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 813a9475d11..063b2bfc49f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3502,6 +3502,8 @@ let libmpeg2 = mpeg2dec; }; + libf2c = callPackage ../development/libraries/libf2c {}; + libfixposix = callPackage ../development/libraries/libfixposix {}; libffcall = builderDefsPackage (import ../development/libraries/libffcall) { From 60844f748802b546d1efb19ac0f4b3b501d4e203 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 3 Mar 2011 13:41:10 +0000 Subject: [PATCH 04/32] Making freecad build (from svn version). It does not install still, though. svn path=/nixpkgs/trunk/; revision=26145 --- .../applications/graphics/freecad/default.nix | 50 +++++++------------ 1 file changed, 18 insertions(+), 32 deletions(-) diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index 0dc942c202d..447261b15df 100644 --- a/pkgs/applications/graphics/freecad/default.nix +++ b/pkgs/applications/graphics/freecad/default.nix @@ -1,45 +1,31 @@ -{ fetchurl, stdenv, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts, +{ fetchsvn, stdenv, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts, boost, zlib, -python, swig, gfortran, soqt, autoconf, automake, libtool }: +python, swig, gfortran, soqt, libf2c }: -throw "It does not build still" +# It builds but fails to install stdenv.mkDerivation rec { name = "freecad-${version}"; - version = "0.11.3729"; + version = "svn-${src.rev}"; - src = fetchurl { -/* - url = "mirror://sourceforge/free-cad/freecad-${version}.tar.gz"; - sha256 = "0q9jhnhkjsq9iy4kqi4xh2ljack4b2jj4pjm4dylv4z2d9gg5p4l"; -*/ - url = "mirror://sourceforge/free-cad/freecad-${version}.dfsg.tar.gz"; - sha256 = "0sjcbadzzgdjr5bk51nr3nq0siyvfdq0913dqlhv9xr42vha3j8r"; + src = fetchsvn { + url = https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk; + rev = "4184"; + sha256 = "26bd8407ce38f070b81ef39145aed093eed3c200d165a605b8169162d66568ce"; }; buildInputs = [ cmake coin3d xercesc ode eigen qt4 opencascade gts boost - zlib python swig gfortran soqt /*autoconf automake libtool*/ ]; + zlib python swig gfortran soqt libf2c ]; -/* - # Using autotools - patchPhase = '' - sed -i -e 's/boost_\([a-z_]\+\)-mt/boost_\1/' \ - configure - ''; + enableParallelBuilding = true; - configureFlags = [ "--with-eigen2-include=${eigen}/include/eigen2" - "--with-boost-include=${boost}/include" - "--with-boost-lib=${boost}/lib" - "--with-qt4-dir=${qt4}" - ]; -*/ - - # Using cmake - - patchPhase = '' - sed -i -e '/Idf/d' -e '/Start/d' src/Mod/CMakeLists.txt - ''; - - cmakeFlags = [ "-Wno-dev" ]; + # They are used to boost 1.42, and we have newer boost that require + # this for freecad to build + NIX_CFLAGS_COMPILE = "-DBOOST_FILESYSTEM_VERSION=2"; + meta = { + homepage = http://free-cad.sourceforge.net/; + license = [ "GPLv2+" "LGPLv2+" ]; + description = "General purpose Open Source 3D CAD/MCAD/CAx/CAE/PLM modeler"; + }; } From 5148ee96542e5b9a65c1c95a8cda6e897055085c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 3 Mar 2011 14:10:18 +0000 Subject: [PATCH 05/32] I revert the "Updating boost" change. I don't really need it new I think, and it breaks things, niksnut reports. svn path=/nixpkgs/trunk/; revision=26146 --- pkgs/development/libraries/boost/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/boost/default.nix b/pkgs/development/libraries/boost/default.nix index 0a64efdeb3b..c4b9f23bb23 100644 --- a/pkgs/development/libraries/boost/default.nix +++ b/pkgs/development/libraries/boost/default.nix @@ -33,7 +33,7 @@ let in stdenv.mkDerivation { - name = "boost-1.46.0"; + name = "boost-1.44.0"; meta = { homepage = "http://boost.org/"; @@ -44,8 +44,8 @@ stdenv.mkDerivation { }; src = fetchurl { - url = "mirror://sourceforge/boost/boost_1_46_0.tar.bz2"; - sha256 = "0ndsiv06332gbh6wj68pcnci3l5qrc5pm1ca9dkmxhpxj83zd41g"; + url = "mirror://sourceforge/boost/boost_1_44_0.tar.bz2"; + sha256 = "1nvq36mvzr1fr85q0jh86rk3bk65s1y55jgqgzfg3lcpkl12ihs5"; }; enableParallelBuilding = true; From 4b50191fd4cffefc3d8829d3ef22bd0bc08cee08 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 3 Mar 2011 14:59:58 +0000 Subject: [PATCH 06/32] * Remove a not very useful message that didn't get printed anyway because the test condition was wrong. svn path=/nixpkgs/trunk/; revision=26147 --- pkgs/build-support/fetchurl/builder.sh | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/build-support/fetchurl/builder.sh b/pkgs/build-support/fetchurl/builder.sh index 3bb55aa3c90..808bf9f7cde 100644 --- a/pkgs/build-support/fetchurl/builder.sh +++ b/pkgs/build-support/fetchurl/builder.sh @@ -2,10 +2,6 @@ source $stdenv/setup source $mirrorsFile -if test -n "$showURLs"; then - header "downloading file $name with $outputHashAlgo hash $outputHash..." -fi - # Curl flags to handle redirects, not use EPSV, handle cookies for # servers to need them during redirects, and work on SSL without a From 43cca4d6abe9cd5bfd881a5d618b2159073693ff Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 3 Mar 2011 15:00:30 +0000 Subject: [PATCH 07/32] * Linux 2.6.32.30. svn path=/nixpkgs/trunk/; revision=26148 --- pkgs/os-specific/linux/kernel/linux-2.6.32.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix index a95072d9ed3..c72cf252ab0 100644 --- a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix +++ b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix @@ -198,11 +198,11 @@ in import ./generic.nix ( rec { - version = "2.6.32.29"; + version = "2.6.32.30"; src = fetchurl { url = "mirror://kernel/linux/kernel/v2.6/longterm/v2.6.32/linux-${version}.tar.bz2"; - sha256 = "1xwsmrlnhla8k612lz3jq9bl4c3b620m4pr74gv0rwsiksmh2l6c"; + sha256 = "173nga7awalbgyndgw85h0b9c7sh9dky9w156jicxp3p3z5sc2di"; }; config = configWithPlatform stdenv.platform; From 5cc5e16104c17d39fca62f2d27477c2d02e30183 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 3 Mar 2011 15:36:13 +0000 Subject: [PATCH 08/32] * Remove the xen-pvclock-resume patch, which has finally been merged into 2.6.32. svn path=/nixpkgs/trunk/; revision=26149 --- pkgs/os-specific/linux/kernel/patches.nix | 6 --- .../linux/kernel/xen-pvclock-resume.patch | 51 ------------------- pkgs/top-level/all-packages.nix | 1 - 3 files changed, 58 deletions(-) delete mode 100644 pkgs/os-specific/linux/kernel/xen-pvclock-resume.patch diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix index 3ad48033f7a..860dfaeef70 100644 --- a/pkgs/os-specific/linux/kernel/patches.nix +++ b/pkgs/os-specific/linux/kernel/patches.nix @@ -224,10 +224,4 @@ in patch = ./guruplug-mach-type.patch; }; - xen_pvclock_resume = - { # Fix the clock after a DomU restore following a Dom0 reboot or migration. - name = "xen-pvclock-resume"; - patch = ./xen-pvclock-resume.patch; - }; - } diff --git a/pkgs/os-specific/linux/kernel/xen-pvclock-resume.patch b/pkgs/os-specific/linux/kernel/xen-pvclock-resume.patch deleted file mode 100644 index b92bb74d30b..00000000000 --- a/pkgs/os-specific/linux/kernel/xen-pvclock-resume.patch +++ /dev/null @@ -1,51 +0,0 @@ -From: Jeremy Fitzhardinge -Date: Mon, 25 Oct 2010 16:53:46 -0700 -Subject: [PATCH] x86/pvclock: zero last_value on resume - -If the guest domain has been suspend/resumed or migrated, then the -system clock backing the pvclock clocksource may revert to a smaller -value (ie, can be non-monotonic across the migration/save-restore). -Make sure we zero last_value in that case so that the domain -continues to see clock updates. - -Signed-off-by: Jeremy Fitzhardinge - -diff --git a/arch/x86/include/asm/pvclock.h b/arch/x86/include/asm/pvclock.h -index cd02f32..6226870 100644 ---- a/arch/x86/include/asm/pvclock.h -+++ b/arch/x86/include/asm/pvclock.h -@@ -11,5 +11,6 @@ unsigned long pvclock_tsc_khz(struct pvclock_vcpu_time_info *src); - void pvclock_read_wallclock(struct pvclock_wall_clock *wall, - struct pvclock_vcpu_time_info *vcpu, - struct timespec *ts); -+void pvclock_resume(void); - - #endif /* _ASM_X86_PVCLOCK_H */ -diff --git a/arch/x86/kernel/pvclock.c b/arch/x86/kernel/pvclock.c -index 239427c..a4f07c1 100644 ---- a/arch/x86/kernel/pvclock.c -+++ b/arch/x86/kernel/pvclock.c -@@ -120,6 +120,11 @@ unsigned long pvclock_tsc_khz(struct pvclock_vcpu_time_info *src) - - static atomic64_t last_value = ATOMIC64_INIT(0); - -+void pvclock_resume(void) -+{ -+ atomic64_set(&last_value, 0); -+} -+ - cycle_t pvclock_clocksource_read(struct pvclock_vcpu_time_info *src) - { - struct pvclock_shadow_time shadow; -diff --git a/arch/x86/xen/time.c b/arch/x86/xen/time.c -index b2bb5aa..5da5e53 100644 ---- a/arch/x86/xen/time.c -+++ b/arch/x86/xen/time.c -@@ -426,6 +426,8 @@ void xen_timer_resume(void) - { - int cpu; - -+ pvclock_resume(); -+ - if (xen_clockevent != &xen_vcpuop_clockevent) - return; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 063b2bfc49f..f0ce6a3697c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4904,7 +4904,6 @@ let kernelPatches.cifs_timeout kernelPatches.no_xsave kernelPatches.dell_rfkill - kernelPatches.xen_pvclock_resume ]; }; From 5c5170ae882ae00b0b801dced7e60203567e4d86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 3 Mar 2011 16:23:59 +0000 Subject: [PATCH 09/32] Updating fossil svn path=/nixpkgs/trunk/; revision=26150 --- pkgs/applications/version-management/fossil/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/fossil/default.nix b/pkgs/applications/version-management/fossil/default.nix index 701c6967119..b76306def11 100644 --- a/pkgs/applications/version-management/fossil/default.nix +++ b/pkgs/applications/version-management/fossil/default.nix @@ -1,7 +1,7 @@ {stdenv, fetchurl, zlib, openssl, tcl}: let - version = "20110113000127907"; + version = "20110301190432"; in stdenv.mkDerivation { @@ -9,7 +9,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://www.fossil-scm.org/download/fossil-src-${version}.tar.gz"; - sha256 = "112jwz02mj44qg2xd2b45i0ff6v106649g681p34k20ngi9qqghm"; + sha256 = "1dvccfqyrxihsj376m2dk4ygrajk8nlrp9di5s49azv0vkzrpp38"; }; buildInputs = [ zlib openssl ]; From a76b0fb6fadc7cc70296a074d7fb0519e8dc80d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Fri, 4 Mar 2011 09:48:24 +0000 Subject: [PATCH 10/32] Making freecad install; it still does not find all shared objects though. Either eigen changed the hash of the tarball, or I did not commit its latest hash. I add boost 1.46 apart, because 1.44 does not work easily for freecad. svn path=/nixpkgs/trunk/; revision=26151 --- .../graphics/freecad/cmakeinstall.patch | 44 ++++++++++ .../applications/graphics/freecad/default.nix | 2 + pkgs/development/libraries/boost/1.46.nix | 80 +++++++++++++++++++ pkgs/development/libraries/eigen/default.nix | 2 +- pkgs/top-level/all-packages.nix | 6 +- 5 files changed, 132 insertions(+), 2 deletions(-) create mode 100644 pkgs/applications/graphics/freecad/cmakeinstall.patch create mode 100644 pkgs/development/libraries/boost/1.46.nix diff --git a/pkgs/applications/graphics/freecad/cmakeinstall.patch b/pkgs/applications/graphics/freecad/cmakeinstall.patch new file mode 100644 index 00000000000..10d8196169d --- /dev/null +++ b/pkgs/applications/graphics/freecad/cmakeinstall.patch @@ -0,0 +1,44 @@ +Index: src/3rdParty/salomesmesh/CMakeLists.txt +=================================================================== +--- a/src/3rdParty/salomesmesh/CMakeLists.txt (revision 4193) ++++ a/src/3rdParty/salomesmesh/CMakeLists.txt (working copy) +@@ -206,21 +206,3 @@ + IF(MINGW) + SET_TARGET_PROPERTIES(StdMeshers PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) + ENDIF(MINGW) +- +-########### +-# INSTALL # +-########### +- +-# Path name install: for instance, SMESH-5.1.2.7 +-SET(INSTALL_PATH_NAME SMESH-${SMESH_VERSION_MAJOR}.${SMESH_VERSION_MINOR}.${SMESH_VERSION_PATCH}.${SMESH_VERSION_TWEAK}) +- +-IF(UNIX) +- # Libraries are installed by default in /usr/local/lib/SMESH-5.1.2.7 +- INSTALL(TARGETS SMDS Driver DriverSTL DriverDAT DriverUNV +- SMESHDS SMESH StdMeshers +- DESTINATION /usr/local/lib/${INSTALL_PATH_NAME}) +- # Headers are installed by default in /usr/local/include/SMESH-5.1.2.7 +- INSTALL(DIRECTORY inc/ +- DESTINATION /usr/local/include/${INSTALL_PATH_NAME} +- FILES_MATCHING PATTERN "*.h*") +-ENDIF(UNIX) +Index: CMakeLists.txt +=================================================================== +--- a/CMakeLists.txt (revision 4193) ++++ a/CMakeLists.txt (working copy) +@@ -57,13 +57,6 @@ + + # ================================================================================ + +- +-if(WIN32) +- SET(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}) +-else(WIN32) +- SET(CMAKE_INSTALL_PREFIX "/usr/lib/freecad") +-endif(WIN32) +- + # ================================================================================ + # == Win32 is default behaviour use the LibPack copied in Source tree ============ + if(MSVC) diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index 447261b15df..58e36369f04 100644 --- a/pkgs/applications/graphics/freecad/default.nix +++ b/pkgs/applications/graphics/freecad/default.nix @@ -23,6 +23,8 @@ stdenv.mkDerivation rec { # this for freecad to build NIX_CFLAGS_COMPILE = "-DBOOST_FILESYSTEM_VERSION=2"; + patches = [ ./cmakeinstall.patch ]; + meta = { homepage = http://free-cad.sourceforge.net/; license = [ "GPLv2+" "LGPLv2+" ]; diff --git a/pkgs/development/libraries/boost/1.46.nix b/pkgs/development/libraries/boost/1.46.nix new file mode 100644 index 00000000000..0a64efdeb3b --- /dev/null +++ b/pkgs/development/libraries/boost/1.46.nix @@ -0,0 +1,80 @@ +{ stdenv, fetchurl, icu, expat, zlib, bzip2, python +, enableRelease ? true +, enableDebug ? false +, enableSingleThreaded ? false +, enableMultiThreaded ? true +, enableShared ? true +, enableStatic ? false +, enablePIC ? false +}: + +let + + variant = stdenv.lib.concatStringsSep "," + (stdenv.lib.optional enableRelease "release" ++ + stdenv.lib.optional enableDebug "debug"); + + threading = stdenv.lib.concatStringsSep "," + (stdenv.lib.optional enableSingleThreaded "single" ++ + stdenv.lib.optional enableMultiThreaded "multi"); + + link = stdenv.lib.concatStringsSep "," + (stdenv.lib.optional enableShared "shared" ++ + stdenv.lib.optional enableStatic "static"); + + # To avoid library name collisions + finalLayout = if ((enableRelease && enableDebug) || + (enableSingleThreaded && enableMultiThreaded) || + (enableShared && enableStatic)) then + "tagged" else "system"; + + cflags = if (enablePIC) then "cflags=-fPIC cxxflags=-fPIC linkflags=-fPIC" else ""; + +in + +stdenv.mkDerivation { + name = "boost-1.46.0"; + + meta = { + homepage = "http://boost.org/"; + description = "Boost C++ Library Collection"; + license = "boost-license"; + + maintainers = [ stdenv.lib.maintainers.simons ]; + }; + + src = fetchurl { + url = "mirror://sourceforge/boost/boost_1_46_0.tar.bz2"; + sha256 = "0ndsiv06332gbh6wj68pcnci3l5qrc5pm1ca9dkmxhpxj83zd41g"; + }; + + enableParallelBuilding = true; + + buildInputs = [icu expat zlib bzip2 python]; + + configureScript = "./bootstrap.sh"; + configureFlags = "--with-icu=${icu} --with-python=${python}/bin/python"; + + buildPhase = "./bjam -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat}/include -sEXPAT_LIBPATH=${expat}/lib --layout=${finalLayout} variant=${variant} threading=${threading} link=${link} ${cflags} install"; + + installPhase = ":"; + + crossAttrs = rec { + buildInputs = [ expat.hostDrv zlib.hostDrv bzip2.hostDrv ]; + # all buildInputs set previously fell into propagatedBuildInputs, as usual, so we have to + # override them. + propagatedBuildInputs = buildInputs; + # We want to substitute the contents of configureFlags, removing thus the + # usual --build and --host added on cross building. + preConfigure = '' + export configureFlags="--prefix=$out --without-icu" + ''; + buildPhase = '' + set -x + cat << EOF > user-config.jam + using gcc : cross : $crossConfig-g++ ; + EOF + ./bjam -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat.hostDrv}/include -sEXPAT_LIBPATH=${expat.hostDrv}/lib --layout=${finalLayout} --user-config=user-config.jam toolset=gcc-cross variant=${variant} threading=${threading} link=${link} ${cflags} --without-python install + ''; + }; +} diff --git a/pkgs/development/libraries/eigen/default.nix b/pkgs/development/libraries/eigen/default.nix index c475682c672..9cf94ca359f 100644 --- a/pkgs/development/libraries/eigen/default.nix +++ b/pkgs/development/libraries/eigen/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://bitbucket.org/eigen/eigen/get/${v}.tar.bz2"; name = "eigen-${v}.tar.bz2"; - sha256 = "1a00hqyig4rc7nkz97xv23q7k0vdkzvgd0jkayk61fn9aqcrky79"; + sha256 = "0frgmkwsgmqaw88qpgvfalisq0wjpcbgqbj6jhpk39nbrs3zcq83"; }; buildNativeInputs = [ cmake ]; meta = with stdenv.lib; { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f0ce6a3697c..52ad8a21a5f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2803,6 +2803,8 @@ let boost = callPackage ../development/libraries/boost { }; + boost146 = callPackage ../development/libraries/boost/1.46.nix { }; + # A Boost build with all library variants enabled. Very large (about 250 MB). boostFull = appendToName "full" (boost.override { enableDebug = true; @@ -6028,7 +6030,9 @@ let flite = callPackage ../applications/misc/flite { }; - freecad = callPackage ../applications/graphics/freecad { }; + freecad = callPackage ../applications/graphics/freecad { + boost = boost146; + }; freemind = callPackage ../applications/misc/freemind { jdk = jdk; From 31c38d7dd2c5b3683687ad172b0fd3ada4a887f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Fri, 4 Mar 2011 09:48:29 +0000 Subject: [PATCH 11/32] Updating pyqt and sip because the 'src' there mentioned is not at the urls anymore. svn path=/nixpkgs/trunk/; revision=26152 --- pkgs/development/python-modules/pyqt/default.nix | 4 ++-- pkgs/development/python-modules/python-sip/default.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/pyqt/default.nix b/pkgs/development/python-modules/pyqt/default.nix index 37eae0fe203..2981d9bfdb6 100644 --- a/pkgs/development/python-modules/pyqt/default.nix +++ b/pkgs/development/python-modules/pyqt/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, python, sip, qt4, pythonDBus, pkgconfig, lndir, makeWrapper }: stdenv.mkDerivation rec { - name = "PyQt-x11-gpl-4.8.1"; + name = "PyQt-x11-gpl-4.8.3"; src = fetchurl { url = "http://www.riverbankcomputing.co.uk/static/Downloads/PyQt4/${name}.tar.gz"; - sha256 = "0w7k1jz7wcfwqq77hiwgds5s6py7kkg1rszd6c94bk9dr06vishz"; + sha256 = "0r6nqdbr8hls8bywr9wahgda6sh1pzmhb51fz8fl8zsdpffzwnca"; }; preConfigure = '' diff --git a/pkgs/development/python-modules/python-sip/default.nix b/pkgs/development/python-modules/python-sip/default.nix index 7af20764fab..9d7b44b96a0 100644 --- a/pkgs/development/python-modules/python-sip/default.nix +++ b/pkgs/development/python-modules/python-sip/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, python }: stdenv.mkDerivation rec { - name = "sip-4.11.2"; + name = "sip-4.12.1"; src = fetchurl { url = "http://www.riverbankcomputing.co.uk/static/Downloads/sip4/${name}.tar.gz"; - sha256 = "0g1pj203m491rhy111ayr4k4lsbcqd8sa1np503xv94a90b05l6f"; + sha256 = "1dc16f8m52qc824ksvyfhkdmsjbxyq82g5dr2xn8x9f26246xmp9"; }; configurePhase = "python ./configure.py -d $out/lib/${python.libPrefix}/site-packages -b $out/bin -e $out/include"; From f6ea68b2ee1f81f20121e5602dd0c056de996a0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Fri, 4 Mar 2011 09:48:33 +0000 Subject: [PATCH 12/32] Freecad builds, installs and runs, (although still not with PyQt for its draft workbench). On virtualgl, it needs a variable set about the GL context set; freecad suggests that upon failing to run in that environment. svn path=/nixpkgs/trunk/; revision=26153 --- .../graphics/freecad/cmakeinstall.patch | 51 +++++++++++-------- .../applications/graphics/freecad/default.nix | 11 +++- 2 files changed, 40 insertions(+), 22 deletions(-) diff --git a/pkgs/applications/graphics/freecad/cmakeinstall.patch b/pkgs/applications/graphics/freecad/cmakeinstall.patch index 10d8196169d..6b8f9fb1a60 100644 --- a/pkgs/applications/graphics/freecad/cmakeinstall.patch +++ b/pkgs/applications/graphics/freecad/cmakeinstall.patch @@ -2,28 +2,39 @@ Index: src/3rdParty/salomesmesh/CMakeLists.txt =================================================================== --- a/src/3rdParty/salomesmesh/CMakeLists.txt (revision 4193) +++ a/src/3rdParty/salomesmesh/CMakeLists.txt (working copy) -@@ -206,21 +206,3 @@ - IF(MINGW) - SET_TARGET_PROPERTIES(StdMeshers PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) - ENDIF(MINGW) -- --########### --# INSTALL # --########### -- --# Path name install: for instance, SMESH-5.1.2.7 --SET(INSTALL_PATH_NAME SMESH-${SMESH_VERSION_MAJOR}.${SMESH_VERSION_MINOR}.${SMESH_VERSION_PATCH}.${SMESH_VERSION_TWEAK}) -- --IF(UNIX) -- # Libraries are installed by default in /usr/local/lib/SMESH-5.1.2.7 -- INSTALL(TARGETS SMDS Driver DriverSTL DriverDAT DriverUNV -- SMESHDS SMESH StdMeshers +@@ -191,7 +191,7 @@ + INCLUDE_DIRECTORIES(src/StdMeshers) + + ADD_LIBRARY(StdMeshers SHARED ${StdMeshers_source_files}) +-TARGET_LINK_LIBRARIES(StdMeshers SMESH TKernel TKMath TKAdvTools f2c) ++TARGET_LINK_LIBRARIES(StdMeshers SMESH TKernel TKMath TKAdvTools f2c gfortran) + SET(StdMeshers_CFLAGS "") + IF(WIN32) + SET(StdMeshers_CFLAGS "-DSTDMESHERS_EXPORTS -DMEFISTO2D_EXPORTS") +@@ -218,9 +218,9 @@ + # Libraries are installed by default in /usr/local/lib/SMESH-5.1.2.7 + INSTALL(TARGETS SMDS Driver DriverSTL DriverDAT DriverUNV + SMESHDS SMESH StdMeshers - DESTINATION /usr/local/lib/${INSTALL_PATH_NAME}) -- # Headers are installed by default in /usr/local/include/SMESH-5.1.2.7 -- INSTALL(DIRECTORY inc/ ++ DESTINATION lib) + # Headers are installed by default in /usr/local/include/SMESH-5.1.2.7 + INSTALL(DIRECTORY inc/ - DESTINATION /usr/local/include/${INSTALL_PATH_NAME} -- FILES_MATCHING PATTERN "*.h*") --ENDIF(UNIX) ++ DESTINATION include + FILES_MATCHING PATTERN "*.h*") + ENDIF(UNIX) +Index: src/3rdParty/Pivy-0.5/CMakeLists.txt +=================================================================== +--- a/src/3rdParty/Pivy-0.5/CMakeLists.txt (revision 4193) ++++ a/src/3rdParty/Pivy-0.5/CMakeLists.txt (working copy) +@@ -56,6 +56,7 @@ + set_target_properties(coin PROPERTIES OUTPUT_NAME "_coin") + set_target_properties(coin PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/pivy) + set_target_properties(coin PROPERTIES PREFIX "") ++ install(TARGETS coin DESTINATION bin/pivy) + endif(MSVC) + + fc_copy_sources_outpath("bin/pivy" "coin" Index: CMakeLists.txt =================================================================== --- a/CMakeLists.txt (revision 4193) diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index 58e36369f04..5cb0a21627e 100644 --- a/pkgs/applications/graphics/freecad/default.nix +++ b/pkgs/applications/graphics/freecad/default.nix @@ -1,6 +1,6 @@ { fetchsvn, stdenv, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts, boost, zlib, -python, swig, gfortran, soqt, libf2c }: +python, swig, gfortran, soqt, libf2c, pyqt4 }: # It builds but fails to install @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { }; buildInputs = [ cmake coin3d xercesc ode eigen qt4 opencascade gts boost - zlib python swig gfortran soqt libf2c ]; + zlib python swig gfortran soqt libf2c pyqt ]; enableParallelBuilding = true; @@ -23,11 +23,18 @@ stdenv.mkDerivation rec { # this for freecad to build NIX_CFLAGS_COMPILE = "-DBOOST_FILESYSTEM_VERSION=2"; + # This will help only x86_64, but will not hurt on others. + preBuild = '' + export NIX_LDFLAGS="-L${gfortran.gcc}/lib64 $NIX_LDFLAGS"; + ''; + patches = [ ./cmakeinstall.patch ]; meta = { homepage = http://free-cad.sourceforge.net/; license = [ "GPLv2+" "LGPLv2+" ]; description = "General purpose Open Source 3D CAD/MCAD/CAx/CAE/PLM modeler"; + maintainers = with stdenv.lib.maintainers; [viric]; + platforms = with stdenv.lib.platforms; linux; }; } From 370a89b5adc55e9ae62c420df7e2bc571419e449 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Fri, 4 Mar 2011 09:48:36 +0000 Subject: [PATCH 13/32] Removing the wrong pyqt references in freecad. I don't know how to make it work with pyqt still. svn path=/nixpkgs/trunk/; revision=26154 --- pkgs/applications/graphics/freecad/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index 5cb0a21627e..21a28cf1927 100644 --- a/pkgs/applications/graphics/freecad/default.nix +++ b/pkgs/applications/graphics/freecad/default.nix @@ -1,6 +1,6 @@ { fetchsvn, stdenv, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts, boost, zlib, -python, swig, gfortran, soqt, libf2c, pyqt4 }: +python, swig, gfortran, soqt, libf2c }: # It builds but fails to install @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { }; buildInputs = [ cmake coin3d xercesc ode eigen qt4 opencascade gts boost - zlib python swig gfortran soqt libf2c pyqt ]; + zlib python swig gfortran soqt libf2c ]; enableParallelBuilding = true; From f084b309264a33f8b9d8ff485271ac8f2b06f598 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Fri, 4 Mar 2011 13:08:11 +0000 Subject: [PATCH 14/32] Remove the breaking override for WebKit svn path=/nixpkgs/trunk/; revision=26159 --- pkgs/top-level/all-packages.nix | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 52ad8a21a5f..48326f93673 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3283,6 +3283,8 @@ let }); + glib_2_28 = callPackage ../development/libraries/glib/2.28.x.nix {}; + gtkmozembedsharp = callPackage ../development/libraries/gtkmozembed-sharp { inherit (gnome) gtk; gtksharp = gtksharp2; @@ -4180,18 +4182,22 @@ let vxl = callPackage ../development/libraries/vxl { }; - webkit = ((builderDefsPackage ../development/libraries/webkit { - inherit (gnome28) gtkdoc libsoup; - inherit (gtkLibs) gtk atk pango glib; - inherit freetype fontconfig gettext gperf curl + webkit = let p = applyGlobalOverrides (x : { + libsoup = x.gnome28.libsoup_2_31; + }); + in + (builderDefsPackage ../development/libraries/webkit { + inherit (p.gnome28) gtkdoc libsoup; + inherit (p.gtkLibs) gtk atk pango glib; + inherit (p) freetype fontconfig gettext gperf curl libjpeg libtiff libpng libxml2 libxslt sqlite icu cairo perl intltool automake libtool pkgconfig autoconf bison libproxy enchant python ruby which flex geoclue; - inherit (gst_all) gstreamer gstPluginsBase gstFfmpeg + inherit (p.gst_all) gstreamer gstPluginsBase gstFfmpeg gstPluginsGood; - inherit (xlibs) libXt renderproto libXrender; - }).deepOverride {libsoup = gnome28.libsoup_2_31;}); + inherit (p.xlibs) libXt renderproto libXrender; + }); wvstreams = callPackage ../development/libraries/wvstreams { }; From cc0293330561fc9d7d3fc2ab86db0912afd98404 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 4 Mar 2011 13:18:56 +0000 Subject: [PATCH 15/32] gnupdate: Improve error handling for pipes. * maintainers/scripts/gnu/gnupdate (pipe-failed?): New procedure. (nix-prefetch-url): Use it. (gnupdate)[nixpkgs->snix]: New procedure. Use it. svn path=/nixpkgs/trunk/; revision=26160 --- maintainers/scripts/gnu/gnupdate | 44 +++++++++++++++++++++++--------- 1 file changed, 32 insertions(+), 12 deletions(-) diff --git a/maintainers/scripts/gnu/gnupdate b/maintainers/scripts/gnu/gnupdate index f4cb9f504eb..64221f4b10d 100755 --- a/maintainers/scripts/gnu/gnupdate +++ b/maintainers/scripts/gnu/gnupdate @@ -277,18 +277,27 @@ exec ${GUILE-guile} -L "$PWD" -l "$0" \ "--strict" "--eval-only" "--xml" script))) +(define (pipe-failed? pipe) + "Close pipe and return its status if it failed." + (let ((status (close-pipe pipe))) + (if (or (status:term-sig status) + (not (= (status:exit-val status) 0))) + status + #f))) + (define (nix-prefetch-url url) ;; Download URL in the Nix store and return the base32-encoded SHA256 hash ;; of the file at URL (let* ((pipe (open-pipe* OPEN_READ "nix-prefetch-url" url)) (hash (read-line pipe))) - (close-pipe pipe) - (if (eof-object? hash) + (if (or (pipe-failed? pipe) + (eof-object? hash)) (values #f #f) (let* ((pipe (open-pipe* OPEN_READ "nix-store" "--print-fixed-path" - "sha256" hash (basename url))) + "sha256" hash (basename url))) (path (read-line pipe))) - (if (eof-object? path) + (if (or (pipe-failed? pipe) + (eof-object? path)) (values #f #f) (values (string-trim-both hash) (string-trim-both path))))))) @@ -815,20 +824,31 @@ pairs. Example: (\"mit-scheme-9.0.1\" . \"/gnu/mit-scheme/stable.pkg/9.0.1\"). (define (gnupdate . args) ;; Assume Nixpkgs is under $NIXPKGS or ~/src/nixpkgs. + + (define (nixpkgs->snix xml-file) + (format (current-error-port) "evaluating Nixpkgs...~%") + (let* ((home (getenv "HOME")) + (xml (if xml-file + (open-input-file xml-file) + (open-nixpkgs (or (getenv "NIXPKGS") + (string-append home "/src/nixpkgs"))))) + (snix (xml->snix xml))) + (if (not xml-file) + (let ((status (pipe-failed? xml))) + (if status + (begin + (format (current-error-port) "`nix-instantiate' failed: ~A~%" + status) + (exit 1))))) + snix)) + (let* ((opts (args-fold (cdr args) %options (lambda (opt name arg result) (error "unrecognized option `~A'" name)) (lambda (operand result) (error "extraneous argument `~A'" operand)) '())) - (home (getenv "HOME")) - (path (or (getenv "NIXPKGS") - (string-append home "/src/nixpkgs"))) - (snix (begin - (format (current-error-port) "parsing XML...~%") - (xml->snix - (or (and=> (assoc-ref opts 'xml-file) open-input-file) - (open-nixpkgs path))))) + (snix (nixpkgs->snix (assoc-ref opts 'xml-file))) (packages (match snix (('snix _ ('attribute-set attributes)) attributes) From 69e259eaf2e6865a50a562581bdc084074f57c4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 4 Mar 2011 13:19:00 +0000 Subject: [PATCH 16/32] GNU MyServer: Kill the test suite. svn path=/nixpkgs/trunk/; revision=26161 --- pkgs/servers/http/myserver/default.nix | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/http/myserver/default.nix b/pkgs/servers/http/myserver/default.nix index 776c121399e..3f491810819 100644 --- a/pkgs/servers/http/myserver/default.nix +++ b/pkgs/servers/http/myserver/default.nix @@ -1,8 +1,8 @@ { fetchurl, stdenv, libgcrypt, libevent, libidn, gnutls -, libxml2, zlib, guile, texinfo, cppunit, xz }: +, libxml2, zlib, guile, texinfo, cppunit, xz, psmisc }: let version = "0.10"; in - stdenv.mkDerivation rec { + stdenv.mkDerivation (rec { name = "myserver-${version}"; src = fetchurl { @@ -42,3 +42,11 @@ let version = "0.10"; in platforms = stdenv.lib.platforms.gnu; }; } + + // + + # On GNU/Linux the `test_suite' process sometimes stays around, so + # forcefully terminate it. + (if stdenv.isLinux + then { postCheck = "${psmisc}/bin/killall test_suite || true"; } + else { })) From e7fc725ddbd8c1c094aaf97f233d131334780ab6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 4 Mar 2011 13:19:04 +0000 Subject: [PATCH 17/32] GNU MyServer: Make the binary installable. svn path=/nixpkgs/trunk/; revision=26162 --- pkgs/servers/http/myserver/default.nix | 3 ++- .../servers/http/myserver/installable-binary.patch | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 pkgs/servers/http/myserver/installable-binary.patch diff --git a/pkgs/servers/http/myserver/default.nix b/pkgs/servers/http/myserver/default.nix index 3f491810819..0b2c971e6e5 100644 --- a/pkgs/servers/http/myserver/default.nix +++ b/pkgs/servers/http/myserver/default.nix @@ -10,7 +10,8 @@ let version = "0.10"; in sha256 = "0w8njgka54if8ycd9cyxgmqa0ivv7r0rka7gda3x2rfr2z4nxvpb"; }; - patches = [ ./disable-dns-lookup-in-chroot.patch ]; + patches = + [ ./disable-dns-lookup-in-chroot.patch ./installable-binary.patch ]; buildInputs = [ libgcrypt libevent libidn gnutls libxml2 zlib guile texinfo xz ] diff --git a/pkgs/servers/http/myserver/installable-binary.patch b/pkgs/servers/http/myserver/installable-binary.patch new file mode 100644 index 00000000000..346e76afd5e --- /dev/null +++ b/pkgs/servers/http/myserver/installable-binary.patch @@ -0,0 +1,14 @@ +We actually want the `myserver' binary to be installable. Failing to do that +it gets an RPATH pointing to $top_builddir/src/.libs. + +--- myserver-0.10/src/Makefile.in 2010-10-14 12:45:42.000000000 +0200 ++++ myserver-0.10/src/Makefile.in 2011-03-03 22:23:05.000000000 +0100 +@@ -1307,7 +1307,6 @@ libmyserver_la_LIBADD = \ + $(INTLLIBS) $(LDFLAGS) + + myserver_CXXFLAGS = $(AM_CXXFLAGS) $(CXXFLAGS) -DHOST_STR=\"$(build)\" -DPREFIX=\"$(prefix)\" +-myserver_LDFLAGS = -static -no-install + myserver_LDADD = libmyserver.la $(PTHREAD_LIB) $(IDN_LIB) \ + $(XNET_LIB) $(DL_LIB) $(ZLIB_LIB) \ + $(XML_LIBS) $(INTLLIBS) $(LDFLAGS) + From 3d50c7c0d7ea98bd93a92fd3200c11bb62bef6dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Fri, 4 Mar 2011 19:37:56 +0000 Subject: [PATCH 18/32] Updating SDL_gfx, as it should fix a memory corruption: http://yellowgrass.org/issue/Nixpkgs/108 https://gna.org/bugs/?17768 svn path=/nixpkgs/trunk/; revision=26163 --- pkgs/development/libraries/SDL_gfx/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/SDL_gfx/default.nix b/pkgs/development/libraries/SDL_gfx/default.nix index cb1d7d43cbb..aabbd8f8941 100644 --- a/pkgs/development/libraries/SDL_gfx/default.nix +++ b/pkgs/development/libraries/SDL_gfx/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, SDL} : stdenv.mkDerivation rec { - name = "SDL_gfx-2.0.20"; + name = "SDL_gfx-2.0.22"; src = fetchurl { url = "http://www.ferzkopp.net/Software/SDL_gfx-2.0/${name}.tar.gz"; - sha256 = "0dyc1sj0ymv2ghmlgwfb2c6r07scbgmi2dfhmnddsb27y8wjqz4q"; + sha256 = "1w1bdpyypvqg1nmbjwkqnjhmngvpjmhc0zanwgq7z4pxffzffx8m"; }; buildInputs = [ SDL ] ; From bf8e36dd4f4f24657ebd280c632efae0d1f5b894 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 4 Mar 2011 19:57:52 +0000 Subject: [PATCH 19/32] * Revert PyQt and sip because the upgrade breaks KDE, but use tarballs on nixos.org. svn path=/nixpkgs/trunk/; revision=26164 --- pkgs/development/python-modules/pyqt/default.nix | 6 +++--- pkgs/development/python-modules/python-sip/default.nix | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/pyqt/default.nix b/pkgs/development/python-modules/pyqt/default.nix index 2981d9bfdb6..b5ec01a52d5 100644 --- a/pkgs/development/python-modules/pyqt/default.nix +++ b/pkgs/development/python-modules/pyqt/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, python, sip, qt4, pythonDBus, pkgconfig, lndir, makeWrapper }: stdenv.mkDerivation rec { - name = "PyQt-x11-gpl-4.8.3"; + name = "PyQt-x11-gpl-4.8.1"; src = fetchurl { - url = "http://www.riverbankcomputing.co.uk/static/Downloads/PyQt4/${name}.tar.gz"; - sha256 = "0r6nqdbr8hls8bywr9wahgda6sh1pzmhb51fz8fl8zsdpffzwnca"; + url = "http://nixos.org/tarballs/${name}.tar.gz"; + sha256 = "0w7k1jz7wcfwqq77hiwgds5s6py7kkg1rszd6c94bk9dr06vishz"; }; preConfigure = '' diff --git a/pkgs/development/python-modules/python-sip/default.nix b/pkgs/development/python-modules/python-sip/default.nix index 9d7b44b96a0..7f27400c04a 100644 --- a/pkgs/development/python-modules/python-sip/default.nix +++ b/pkgs/development/python-modules/python-sip/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, python }: stdenv.mkDerivation rec { - name = "sip-4.12.1"; + name = "sip-4.11.2"; src = fetchurl { - url = "http://www.riverbankcomputing.co.uk/static/Downloads/sip4/${name}.tar.gz"; - sha256 = "1dc16f8m52qc824ksvyfhkdmsjbxyq82g5dr2xn8x9f26246xmp9"; + url = "http://nixos.org/tarballs/${name}.tar.gz"; + sha256 = "0g1pj203m491rhy111ayr4k4lsbcqd8sa1np503xv94a90b05l6f"; }; configurePhase = "python ./configure.py -d $out/lib/${python.libPrefix}/site-packages -b $out/bin -e $out/include"; From 32b0f764354ad81203e367422c1f4e646f3b3f98 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Fri, 4 Mar 2011 21:04:44 +0000 Subject: [PATCH 20/32] Missing glib-2.28 expression svn path=/nixpkgs/trunk/; revision=26165 --- pkgs/development/libraries/glib/2.28.x.nix | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 pkgs/development/libraries/glib/2.28.x.nix diff --git a/pkgs/development/libraries/glib/2.28.x.nix b/pkgs/development/libraries/glib/2.28.x.nix new file mode 100644 index 00000000000..b250cf2b342 --- /dev/null +++ b/pkgs/development/libraries/glib/2.28.x.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, pkgconfig, gettext, perl, libiconv, zlib }: + +stdenv.mkDerivation rec { + name = "glib-2.28.1"; + + src = fetchurl { + url = "mirror://gnome/sources/glib/2.28/${name}.tar.bz2"; + sha256 = "1b85b998909202c07c2def66613ae6736aac48d7a0a7c98f98967b936fe9de22"; + }; + + buildInputs = [ pkgconfig gettext ] + ++ stdenv.lib.optional (!stdenv.isLinux) libiconv; + buildNativeInputs = [ perl ]; + + propagatedBuildInputs = [ zlib ]; + + meta = { + description = "GLib, a C library of programming buildings blocks"; + + longDescription = '' + GLib provides the core application building blocks for libraries + and applications written in C. It provides the core object + system used in GNOME, the main loop implementation, and a large + set of utility functions for strings and common data structures. + ''; + + homepage = http://www.gtk.org/; + + license = "LGPLv2+"; + + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} From 56536b34985044b7735c8c4f9c3cd95ddf438bf0 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sat, 5 Mar 2011 07:28:50 +0000 Subject: [PATCH 21/32] Getting WebKit overrides less wrong so no libsoup 2.28 gets used svn path=/nixpkgs/trunk/; revision=26166 --- pkgs/top-level/all-packages.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 48326f93673..50118af0426 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4184,16 +4184,19 @@ let webkit = let p = applyGlobalOverrides (x : { libsoup = x.gnome28.libsoup_2_31; + gnome28 = x.gnome28 // { + libsoup = x.gnome28.libsoup_2_31; + }; }); in - (builderDefsPackage ../development/libraries/webkit { - inherit (p.gnome28) gtkdoc libsoup; + (p.builderDefsPackage ../development/libraries/webkit { + inherit (p.gnome28) gtkdoc; inherit (p.gtkLibs) gtk atk pango glib; inherit (p) freetype fontconfig gettext gperf curl libjpeg libtiff libpng libxml2 libxslt sqlite icu cairo perl intltool automake libtool pkgconfig autoconf bison libproxy enchant - python ruby which flex geoclue; + python ruby which flex geoclue libsoup; inherit (p.gst_all) gstreamer gstPluginsBase gstFfmpeg gstPluginsGood; inherit (p.xlibs) libXt renderproto libXrender; From 6b10954921469d4e5647a36b78e960789d4c7d9c Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sat, 5 Mar 2011 22:05:00 +0000 Subject: [PATCH 22/32] Adding Joseki: HTTP/SparQL server based on Jena framework. Just a unpack/mix/fix paths expression relying on compiled JAR releases. svn path=/nixpkgs/trunk/; revision=26168 --- pkgs/servers/http/joseki/default.nix | 114 +++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 116 insertions(+) create mode 100644 pkgs/servers/http/joseki/default.nix diff --git a/pkgs/servers/http/joseki/default.nix b/pkgs/servers/http/joseki/default.nix new file mode 100644 index 00000000000..d681a4eb248 --- /dev/null +++ b/pkgs/servers/http/joseki/default.nix @@ -0,0 +1,114 @@ +x@{builderDefsPackage + , unzip + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + []; + + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="jena-joseki"; + version="3.4.3-201103"; + name="${baseName}-${version}"; + }; +in +rec { + inherit (sourceInfo) name version; + inherit buildInputs; + + tarballs = { + jenaBin = a.fetchurl { + url = "mirror://sourceforge/project/jena/Jena/Jena-2.6.4/jena-2.6.4.zip"; + sha256 = "ec23a24eee9148b1ddb366ab035a48eacd43c2b50c534a7bdd9cf31c6f8a9e7c"; + }; + josekiBin = a.fetchurl { + url = "mirror://sourceforge/project/joseki/Joseki-SPARQL/Joseki-3.4.3/joseki-3.4.3.zip"; + sha256 = "cde1138e7bafcc2db7800dcde08f268237accd76c0a3e4b4c95cc96eacdcad12"; + }; + tdbBin = a.fetchurl { + url = "mirror://sourceforge/project/jena/TDB/TDB-0.8.9/tdb-0.8.9.zip"; + sha256 = "78fd4b6cea5a6e412f1d58ba8a9e1fc72315becdf06f3675e4e604cd4435779e"; + }; + arqBin = a.fetchurl { + url = "mirror://sourceforge/project/jena/ARQ/ARQ-2.8.7/arq-2.8.7.zip"; + sha256 = "66990e92514a85a9596a7efaf128041002cd098e063964dd5d2264cfcdd26070"; + }; + jettyBin = a.fetchurl { + url = "http://dist.codehaus.org/jetty/jetty-6.1.26/jetty-6.1.26.zip"; + sha256 = "96c08eb87ec3772dccc2b3dba54fea85ccc3f804faf7429eecfba3ed55648187"; + }; + }; + tarballFiles = map (x: builtins.getAttr x tarballs) (builtins.attrNames tarballs); + + /* doConfigure should be removed if not needed */ + phaseNames = ["doDeploy" "fixScripts"]; + + fixScripts = a.doPatchShebangs ''$TARGET/bin''; + + doDeploy = a.fullDepEntry ('' + ${a.lib.concatStringsSep ";" (map (y : "unzip ${y}") tarballFiles)} + for i in */; do cp -rTf $i merged; done + cd merged + + for i in "lib/"jsp-*/*.jar; do + ln -s "''${i#lib/}" "lib" || true + done + + cp [Cc]opyright* doc + mkdir lib/obsolete + ( + ls "lib/"log4j-[0-9]*.jar | sort | tac | tail -n +2 ; + ls "lib/"slf4j-api-[0-9]*.jar | sort | tac | tail -n +2 ; + ls "lib/"xercesImpl-[0-9]*.jar | sort | tac | tail -n +2 ; + ls "lib/"arq-[0-9]*.jar | sort | tac | tail -n +2 + ls "lib/"tdb-[0-9]*.jar | sort | tac | tail -n +2 + ls "lib/"jetty-[0-9]*.jar | sort | tac | tail -n +2 + ls "lib/"jetty-util-[0-9]*.jar | sort | tac | tail -n +2 + ) | + xargs -I @@ mv @@ lib/obsolete + + mv lib/slf4j-simple-*.jar lib/obsolete + + ensureDir "$out/share" + TARGET="$out/share/${name}-dist" + cp -r . "$TARGET" + ln -s "$TARGET/lib" "$out/lib" + chmod a+x "$TARGET/bin/"* + ensureDir "$out/bin" + + sed -e 's@ jena[.]@ com.hp.hpl.jena.@' -i "$TARGET/bin/"* + + echo -e '#! /bin/sh\nls "'"$TARGET"'"/bin' > "$out/bin/jena-list-commands" + echo '#! /bin/sh' >> "$out/bin/jena-command" + echo 'export JENAROOT="'"$TARGET"'"' >> "$out/bin/jena-command" + echo 'export JOSEKIROOT="'"$TARGET"'"' >> "$out/bin/jena-command" + echo 'export TDBROOT="'"$TARGET"'"' >> "$out/bin/jena-command" + echo 'export ARQROOT="'"$TARGET"'"' >> "$out/bin/jena-command" + echo 'sh "'"$TARGET"'"/bin/"$@"' >> "$out/bin/jena-command" + + chmod a+x "$out/bin/"* + '') ["defEnsureDir" "minInit" "addInputs"]; + + trimVersions = a.fullDepEntry ('' + '') ["doDeploy" "minInit"]; + + passthru = { + inherit tarballs; + }; + + meta = { + description = "An RDF database with SparQL interface over HTTP"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + platforms = with a.lib.platforms; + []; # Builder is just unpacking/mixing what is needed + license = "free"; # mix of packages under different licenses + homepage = "http://openjena.org/"; + }; +}) x + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 50118af0426..76507cb0286 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4508,6 +4508,8 @@ let jetty61 = callPackage ../servers/http/jetty/6.1 { }; + joseki = callPackage ../servers/http/joseki {}; + lighttpd = callPackage ../servers/http/lighttpd { }; mod_python = callPackage ../servers/http/apache-modules/mod_python { }; From 69a67fc7cfc8dc12503e84f0fa490a096afe7436 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Sat, 5 Mar 2011 22:27:51 +0000 Subject: [PATCH 23/32] Trying to make freecad find pyqt. This required a patch to be able to use PYTHONPATH. svn path=/nixpkgs/trunk/; revision=26169 --- .../applications/graphics/freecad/default.nix | 11 ++++++++--- .../graphics/freecad/pythonpath.patch | 19 +++++++++++++++++++ 2 files changed, 27 insertions(+), 3 deletions(-) create mode 100644 pkgs/applications/graphics/freecad/pythonpath.patch diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index 21a28cf1927..e222af4f0e7 100644 --- a/pkgs/applications/graphics/freecad/default.nix +++ b/pkgs/applications/graphics/freecad/default.nix @@ -1,6 +1,6 @@ { fetchsvn, stdenv, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts, boost, zlib, -python, swig, gfortran, soqt, libf2c }: +python, swig, gfortran, soqt, libf2c, pyqt4, makeWrapper }: # It builds but fails to install @@ -15,7 +15,7 @@ stdenv.mkDerivation rec { }; buildInputs = [ cmake coin3d xercesc ode eigen qt4 opencascade gts boost - zlib python swig gfortran soqt libf2c ]; + zlib python swig gfortran soqt libf2c pyqt4 makeWrapper ]; enableParallelBuilding = true; @@ -28,7 +28,12 @@ stdenv.mkDerivation rec { export NIX_LDFLAGS="-L${gfortran.gcc}/lib64 $NIX_LDFLAGS"; ''; - patches = [ ./cmakeinstall.patch ]; + postInstall = '' + wrapProgram $out/bin/FreeCAD --prefix PYTHONPATH : $PYTHONPATH \ + --set COIN_GL_NO_CURRENT_CONTEXT_CHECK 1 + ''; + + patches = [ ./cmakeinstall.patch ./pythonpath.patch ]; meta = { homepage = http://free-cad.sourceforge.net/; diff --git a/pkgs/applications/graphics/freecad/pythonpath.patch b/pkgs/applications/graphics/freecad/pythonpath.patch new file mode 100644 index 00000000000..849c778aedb --- /dev/null +++ b/pkgs/applications/graphics/freecad/pythonpath.patch @@ -0,0 +1,19 @@ +http://sourceforge.net/apps/phpbb/free-cad/viewtopic.php?f=4&t=847&p=6364 + +Index: src/Main/MainGui.cpp +=================================================================== +--- a/src/Main/MainGui.cpp (revision 4193) ++++ a/src/Main/MainGui.cpp (working copy) +@@ -149,10 +149,10 @@ + // http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=559846 + putenv("LANG=C"); + putenv("LC_ALL=C"); +- putenv("PYTHONPATH="); ++ //putenv("PYTHONPATH="); + #else + setlocale(LC_NUMERIC, "C"); +- _putenv("PYTHONPATH="); ++ //_putenv("PYTHONPATH="); + #endif + + // Name and Version of the Application From 874af6794d72e31629e592549fcddc6d5531ac52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Sat, 5 Mar 2011 22:27:55 +0000 Subject: [PATCH 24/32] Trying to get freecad work on i686-linux too. svn path=/nixpkgs/trunk/; revision=26170 --- pkgs/applications/graphics/freecad/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index e222af4f0e7..1b0955edfaa 100644 --- a/pkgs/applications/graphics/freecad/default.nix +++ b/pkgs/applications/graphics/freecad/default.nix @@ -23,9 +23,9 @@ stdenv.mkDerivation rec { # this for freecad to build NIX_CFLAGS_COMPILE = "-DBOOST_FILESYSTEM_VERSION=2"; - # This will help only x86_64, but will not hurt on others. + # This should work on both x86_64, and i686 linux preBuild = '' - export NIX_LDFLAGS="-L${gfortran.gcc}/lib64 $NIX_LDFLAGS"; + export NIX_LDFLAGS="-L${gfortran.gcc}/lib64 -L${gfortran.gcc}/lib $NIX_LDFLAGS"; ''; postInstall = '' From b3acca85fdef2fe7a119616debd544dfbac196a8 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sat, 5 Mar 2011 22:32:18 +0000 Subject: [PATCH 25/32] Remove wrong fix for a problem of disappearing tools... svn path=/nixpkgs/trunk/; revision=26171 --- pkgs/servers/http/joseki/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/servers/http/joseki/default.nix b/pkgs/servers/http/joseki/default.nix index d681a4eb248..0a83dd09601 100644 --- a/pkgs/servers/http/joseki/default.nix +++ b/pkgs/servers/http/joseki/default.nix @@ -79,8 +79,6 @@ rec { chmod a+x "$TARGET/bin/"* ensureDir "$out/bin" - sed -e 's@ jena[.]@ com.hp.hpl.jena.@' -i "$TARGET/bin/"* - echo -e '#! /bin/sh\nls "'"$TARGET"'"/bin' > "$out/bin/jena-list-commands" echo '#! /bin/sh' >> "$out/bin/jena-command" echo 'export JENAROOT="'"$TARGET"'"' >> "$out/bin/jena-command" From e132efaeeba9bb2a9eb0d863b9546523454fc636 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Sun, 6 Mar 2011 11:00:29 +0000 Subject: [PATCH 26/32] Fixing the freecad build on i686-linux svn path=/nixpkgs/trunk/; revision=26173 --- pkgs/applications/graphics/freecad/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index 1b0955edfaa..cfe97e12476 100644 --- a/pkgs/applications/graphics/freecad/default.nix +++ b/pkgs/applications/graphics/freecad/default.nix @@ -19,9 +19,11 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - # They are used to boost 1.42, and we have newer boost that require - # this for freecad to build - NIX_CFLAGS_COMPILE = "-DBOOST_FILESYSTEM_VERSION=2"; + # The freecad people are used to boost 1.42, and we have newer boost that + # require the -DBOOST_FILESYSTEM_VERSION=2 for freecad to build + # For zlib to build in i686-linux, as g++ plus glibc defines _LARGEFILE64_SOURCE, + # we need the -D-FILE_OFFSET_BITS=64 indication for zlib headers to work. + NIX_CFLAGS_COMPILE = "-DBOOST_FILESYSTEM_VERSION=2 -D_FILE_OFFSET_BITS=64"; # This should work on both x86_64, and i686 linux preBuild = '' From ecf4f6b4e27fd437c8b5d6fcef6430cc91b190e0 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Sun, 6 Mar 2011 16:07:31 +0000 Subject: [PATCH 27/32] Add mkcue (an optional dep of abcde) svn path=/nixpkgs/trunk/; revision=26175 --- pkgs/tools/cd-dvd/mkcue/default.nix | 13 +++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 15 insertions(+) create mode 100644 pkgs/tools/cd-dvd/mkcue/default.nix diff --git a/pkgs/tools/cd-dvd/mkcue/default.nix b/pkgs/tools/cd-dvd/mkcue/default.nix new file mode 100644 index 00000000000..e1aa3cc1858 --- /dev/null +++ b/pkgs/tools/cd-dvd/mkcue/default.nix @@ -0,0 +1,13 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "mkcue-1"; + + src = fetchurl { + url = "https://diplodocus.org/dist/audio/${name}.tar.bz2"; + sha256 = "08md7si3frb8sjfqf3pm7qbrcvkbd10mzszlbydkxnyxdb530b04"; + }; + + preInstall = "mkdir -pv $out/bin"; + postInstall = "chmod -v +w $out/bin/mkcue"; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 76507cb0286..ad5c32808a1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -896,6 +896,8 @@ let mjpegtools = callPackage ../tools/video/mjpegtools { }; + mkcue = callPackage ../tools/cd-dvd/mkcue { }; + mktemp = callPackage ../tools/security/mktemp { }; mldonkey = callPackage ../applications/networking/p2p/mldonkey { }; From c8f0c74eccc554a2b0d2935d093de5152d456105 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Sun, 6 Mar 2011 16:07:37 +0000 Subject: [PATCH 28/32] Add vorbisgain - replaygain for ogg/vorbis svn path=/nixpkgs/trunk/; revision=26176 --- pkgs/tools/misc/vorbisgain/default.nix | 17 +++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 19 insertions(+) create mode 100644 pkgs/tools/misc/vorbisgain/default.nix diff --git a/pkgs/tools/misc/vorbisgain/default.nix b/pkgs/tools/misc/vorbisgain/default.nix new file mode 100644 index 00000000000..0c3fb212293 --- /dev/null +++ b/pkgs/tools/misc/vorbisgain/default.nix @@ -0,0 +1,17 @@ +{ stdenv, fetchurl, unzip, libogg, libvorbis }: + +stdenv.mkDerivation rec { + name = "vorbisgain-0.34"; + + src = fetchurl { + url = "http://sjeng.org/ftp/vorbis/${name}.zip"; + sha256 = "1sjxl20ahhjv63b8a99sq9p14vz3lf1gacivkk0x2c11cc9zw4nr"; + }; + + buildInputs = [ unzip libogg libvorbis ]; + patchPhase = '' + chmod -v +x configure + sed -e 's/^ /\t/' -i Makefile.* + configureFlags="--mandir=$out/share/man" + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ad5c32808a1..35f0cbf2b00 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1348,6 +1348,8 @@ let libXp; }; + vorbisgain = callPackage ../tools/misc/vorbisgain { }; + vpnc = callPackage ../tools/networking/vpnc { }; vtun = callPackage ../tools/networking/vtun { }; From d1d9da2ff3a40b6855986aa12d4bcfe306e1add5 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Sun, 6 Mar 2011 16:07:43 +0000 Subject: [PATCH 29/32] Trying to fix foo2zjs There are still some hardcoded paths svn path=/nixpkgs/trunk/; revision=26177 --- pkgs/misc/drivers/foo2zjs/default.nix | 29 ++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/pkgs/misc/drivers/foo2zjs/default.nix b/pkgs/misc/drivers/foo2zjs/default.nix index f4ac64aa11b..1bf5651f375 100644 --- a/pkgs/misc/drivers/foo2zjs/default.nix +++ b/pkgs/misc/drivers/foo2zjs/default.nix @@ -1,5 +1,5 @@ x@{builderDefsPackage - , foomatic_filters, bc, unzip, ghostscript + , foomatic_filters, bc, unzip, ghostscript, udev, vim , ...}: builderDefsPackage (a : @@ -11,10 +11,10 @@ let (builtins.attrNames (builtins.removeAttrs x helperArgNames)); sourceInfo = rec { baseName="foo2zjs"; - version="20090908"; + version="20110210"; name="${baseName}-${version}"; - url="http://ftp.de.debian.org/debian/pool/main/f/foo2zjs/foo2zjs_${version}dfsg.orig.tar.gz"; - hash="1pg4dmckvlx94zxh4gcw7jfmyb10ada7f6vsp5bgz1z95fwwlqjz"; + url="http://www.loegria.net/mirrors/foo2zjs/${name}.tar.gz"; + hash="0vss8gdbbgxr694xw48rys2qflbnb4sp4gdb1v6z4m9ab97hs5yk"; }; in rec { @@ -26,16 +26,31 @@ rec { inherit (sourceInfo) name version; inherit buildInputs; - phaseNames = ["fixMakefile" "doMakeInstall" "deployGetWeb"]; + phaseNames = ["fixMakefile" "doMakeDirs" "doMakeInstall" "deployGetWeb"]; makeFlags = [ - ''PREFIX=$out/'' - ''UDEVBIN=$out/bin/'' + ''PREFIX=$out'' + ''UDEVBIN=$out/bin'' + ''UDEVDIR=$out/etc/udev/rules.d'' + ''UDEVD=${udev}/sbin/udevd'' + ''LIBUDEVDIR=$out/lib/udev/rules.d'' + ''USBDIR=$out/etc/hotplug/usb'' + ''FOODB=$out/share/foomatic/db/source'' + ''MODEL=$out/share/cups/model'' ]; + installFlags = [ "install-hotplug" ]; fixMakefile = a.fullDepEntry '' touch all-test sed -e "/BASENAME=/iPATH=$out/bin:$PATH" -i *-wrapper *-wrapper.in + sed -e '/install-usermap/d' -i Makefile + sed -e "s@/etc/hotplug/usb@$out&@" -i *rules* '' ["doUnpack" "minInit"]; + doMakeDirs = a.fullDepEntry '' + mkdir -pv $out/{etc/udev/rules.d,lib/udev/rules.d,etc/hotplug/usb} + mkdir -pv $out/share/foomatic/db/source/{opt,printer,driver} + mkdir -pv $out/share/cups/model + '' ["minInit"]; + deployGetWeb = a.fullDepEntry '' ensureDir "$out/bin" ensureDir "$out/share" From 513ee9fc4f47c19462156cbe36ecadeb75d80420 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Sun, 6 Mar 2011 16:07:47 +0000 Subject: [PATCH 30/32] hplip-3.11.1, enable polkit support svn path=/nixpkgs/trunk/; revision=26178 --- pkgs/misc/drivers/hplip/default.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/pkgs/misc/drivers/hplip/default.nix b/pkgs/misc/drivers/hplip/default.nix index 0cb90aa71d8..e73e6ff05fe 100644 --- a/pkgs/misc/drivers/hplip/default.nix +++ b/pkgs/misc/drivers/hplip/default.nix @@ -1,13 +1,13 @@ -{stdenv, fetchurl, cups, zlib, libjpeg, libusb, python, saneBackends, dbus, pkgconfig -, qtSupport ? false, qt4 +{stdenv, fetchurl, cups, zlib, libjpeg, libusb, python, saneBackends, dbus +, pkgconfig, polkit, qtSupport ? false, qt4 }: -stdenv.mkDerivation { - name = "hplip-3.10.5"; +stdenv.mkDerivation rec { + name = "hplip-3.11.1"; src = fetchurl { - url = "http://prdownloads.sourceforge.net/hplip/hplip-3.10.5.tar.gz"; - sha256 = "1lyl9nrdaih64cqw6fa7ivjf7a74bq8zn0gkj1gap47b04my608p"; + url = "mirror://sourceforge/hplip/${name}.tar.gz"; + sha256 = "0y68s4xm5d0kv7p5j41qq0xglp4vdbjwbrjs89b4a21wwn69hp9g"; }; #preBuild='' @@ -27,12 +27,16 @@ stdenv.mkDerivation { --with-icondir=$out/share/applications --with-systraydir=$out/xdg/autostart --with-mimedir=$out/etc/cups + --enable-policykit --disable-network-build" export makeFlags=" halpredir=$out/share/hal/fdi/preprobe/10osvendor hplip_statedir=$out/var rulesdir=$out/etc/udev/rules.d + policykit_dir=$out/share/polkit-1/actions + policykit_dbus_etcdir=$out/etc/dbus-1/system.d + policykit_dbus_sharedir=$out/share/dbus-1/system-services hplip_confdir=$out/etc/hp "; ''; From da4447afd72101206f2e014353a8be0f6967dd48 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Sun, 6 Mar 2011 16:07:53 +0000 Subject: [PATCH 31/32] foo2zjs: less hardcoded paths svn path=/nixpkgs/trunk/; revision=26179 --- pkgs/misc/drivers/foo2zjs/default.nix | 12 ++- pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff | 98 +++++++++++++++++++ 2 files changed, 107 insertions(+), 3 deletions(-) create mode 100644 pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff diff --git a/pkgs/misc/drivers/foo2zjs/default.nix b/pkgs/misc/drivers/foo2zjs/default.nix index 1bf5651f375..56c101c08b1 100644 --- a/pkgs/misc/drivers/foo2zjs/default.nix +++ b/pkgs/misc/drivers/foo2zjs/default.nix @@ -26,7 +26,10 @@ rec { inherit (sourceInfo) name version; inherit buildInputs; - phaseNames = ["fixMakefile" "doMakeDirs" "doMakeInstall" "deployGetWeb"]; + phaseNames = ["doPatch" "fixHardcodedPaths" "doMakeDirs" "doMakeInstall" "deployGetWeb"]; + + patches = [ ./no-hardcode-fw.diff ]; + makeFlags = [ ''PREFIX=$out'' ''UDEVBIN=$out/bin'' @@ -37,13 +40,16 @@ rec { ''FOODB=$out/share/foomatic/db/source'' ''MODEL=$out/share/cups/model'' ]; + installFlags = [ "install-hotplug" ]; - fixMakefile = a.fullDepEntry '' + + fixHardcodedPaths = a.fullDepEntry '' touch all-test sed -e "/BASENAME=/iPATH=$out/bin:$PATH" -i *-wrapper *-wrapper.in sed -e '/install-usermap/d' -i Makefile sed -e "s@/etc/hotplug/usb@$out&@" -i *rules* - '' ["doUnpack" "minInit"]; + sed -e "/PRINTERID=/s@=.*@=$out/bin/usb_printerid@" -i hplj1000 + '' ["doPatch" "minInit"]; doMakeDirs = a.fullDepEntry '' mkdir -pv $out/{etc/udev/rules.d,lib/udev/rules.d,etc/hotplug/usb} diff --git a/pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff b/pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff new file mode 100644 index 00000000000..003272858a4 --- /dev/null +++ b/pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff @@ -0,0 +1,98 @@ +# +# +# patch "hplj1000" +# from [d5336e74866d31735d97874191351a0dcc092b44] +# to [55102b37684ee5181674d19d866caec2cf603412] +# +============================================================ +--- a/hplj1000 d5336e74866d31735d97874191351a0dcc092b44 ++++ b/hplj1000 55102b37684ee5181674d19d866caec2cf603412 +@@ -39,11 +39,6 @@ DEV="" + DEV="" + + # +-# Directory to find downloadable HP firmware files sihpMMMM.dl +-# +-FWDIR=/usr/share/foo2zjs/firmware +- +-# + # Program used to determine USB printer id information + # + # NOTE: /usr/bin is NOT mounted at this point +@@ -83,57 +78,61 @@ case "$0" in + MODEL=P1005; FWMODEL=$MODEL + USB1=0x03f0 #Vendor + USB2=0x3d17 #Model +- FWDIR=/usr/share/foo2xqx/firmware ++ DRIVER=foo2xqx + ;; + *P1006) + MODEL=P1006; FWMODEL=$MODEL + USB1=0x03f0 #Vendor + USB2=0x3e17 #Model +- FWDIR=/usr/share/foo2xqx/firmware ++ DRIVER=foo2xqx + ;; + *P1007) + MODEL=P1007; FWMODEL=P1005 # Alias + USB1=0x03f0 #Vendor + USB2=0x4817 #Model +- FWDIR=/usr/share/foo2xqx/firmware ++ DRIVER=foo2xqx + ;; + *P1008) + MODEL=P1008; FWMODEL=P1006 # Alias + USB1=0x03f0 #Vendor + USB2=0x4917 #Model +- FWDIR=/usr/share/foo2xqx/firmware ++ DRIVER=foo2xqx + ;; + *P1505) + MODEL=P1505; FWMODEL=$MODEL + USB1=0x03f0 #Vendor + USB2=0x3f17 #Model +- FWDIR=/usr/share/foo2xqx/firmware ++ DRIVER=foo2xqx + ;; + *P1505n) + MODEL=P1505n; FWMODEL=$MODEL + USB1=0x03f0 #Vendor + USB2=0x4017 #Model +- FWDIR=/usr/share/foo2xqx/firmware ++ DRIVER=foo2xqx + ;; + *1000) + MODEL=1000; FWMODEL=$MODEL + USB1=0x03f0 #Vendor + USB2=0x0517 #Model ++ DRIVER=foo2zjs + ;; + *1005) + MODEL=1005; FWMODEL=$MODEL + USB1=0x03f0 #Vendor + USB2=0x1317 #Model ++ DRIVER=foo2zjs + ;; + *1018) + MODEL=1018; FWMODEL=$MODEL + USB1=0x03f0 #Vendor + USB2=0x4117 #Model ++ DRIVER=foo2zjs + ;; + *1020) + MODEL=1020; FWMODEL=$MODEL + USB1=0x03f0 #Vendor + USB2=0x2b17 #Model ++ DRIVER=foo2zjs + ;; + *) + log "Only HP LaserJet 100[05],1018,1020,P100[5678],P1505 are supported" +@@ -203,7 +202,7 @@ load1() { + # + load1() { + _dev="$1" +- fw="$FWDIR/sihp$FWMODEL.dl" ++ fw="${FOO2ZJS_DATADIR:-/usr/share}/$DRIVER/firmware/sihp$FWMODEL.dl" + if [ ! -f "$fw" ]; then + log "Missing HP LaserJet $MODEL firmware file $fw" + log "...read foo2zjs installation instructions and run ./getweb $MODEL" From 8944a4110d573ba38cac88cdc8025529ab7ee4b3 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sun, 6 Mar 2011 19:36:41 +0000 Subject: [PATCH 32/32] * Linux 2.6.32: fix "swiotlb" build failures. svn path=/nixpkgs/trunk/; revision=26180 --- pkgs/os-specific/linux/kernel/linux-2.6.32.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix index c72cf252ab0..fae560cd478 100644 --- a/pkgs/os-specific/linux/kernel/linux-2.6.32.nix +++ b/pkgs/os-specific/linux/kernel/linux-2.6.32.nix @@ -198,11 +198,11 @@ in import ./generic.nix ( rec { - version = "2.6.32.30"; + version = "2.6.32.31"; src = fetchurl { url = "mirror://kernel/linux/kernel/v2.6/longterm/v2.6.32/linux-${version}.tar.bz2"; - sha256 = "173nga7awalbgyndgw85h0b9c7sh9dky9w156jicxp3p3z5sc2di"; + sha256 = "1fr0by6aqv9vxglll85kbwjwfj2j6inbikybij3mg70sadq09idh"; }; config = configWithPlatform stdenv.platform;