diff --git a/pkgs/applications/audio/ladspa-plugins/default.nix b/pkgs/applications/audio/ladspa-plugins/default.nix index 9a033a42b87..70dc36240c6 100644 --- a/pkgs/applications/audio/ladspa-plugins/default.nix +++ b/pkgs/applications/audio/ladspa-plugins/default.nix @@ -17,7 +17,8 @@ in stdenv.mkDerivation { name = "swh-plugins-0.4.15"; builder = writeScript "swh-plugins-0.4.15-builder" - (textClosure [doConfigure doMakeInstall postInstall doForceShare]); + (textClosure [doConfigure doMakeInstall + postInstall doForceShare]); meta = { description = " LADSPA format audio plugins. diff --git a/pkgs/applications/audio/lame/default.nix b/pkgs/applications/audio/lame/default.nix index 503c0c39595..fa0fa679079 100644 --- a/pkgs/applications/audio/lame/default.nix +++ b/pkgs/applications/audio/lame/default.nix @@ -1,9 +1,9 @@ {stdenv, fetchurl}: stdenv.mkDerivation { - name = "lame-3.96.1"; + name = "lame-3.97"; src = fetchurl { - url = mirror://sourceforge/lame/lame-3.96.1.tar.gz ; - md5 = "e1206c46a5e276feca11a7149e2fc6ac" ; + url = mirror://sourceforge/lame/lame-3.97.tar.gz ; + sha256 = "05xy9lv6m9s013lzlvhxwvr1586c239xaiiwka52k18hs6k388qa"; }; } diff --git a/pkgs/applications/jedit/default.nix b/pkgs/applications/jedit/default.nix new file mode 100644 index 00000000000..3d694ee3ed7 --- /dev/null +++ b/pkgs/applications/jedit/default.nix @@ -0,0 +1,28 @@ +args: +args.stdenv.mkDerivation { + name = "jedit-4.2"; + + src = args.fetchurl { + url = http://kent.dl.sourceforge.net/sourceforge/jedit/jedit42source.tar.gz; + sha256 = "1ckqghsw2r30kfkqfgjl4k47gdwpz8c1h85haw0y0ymq4rqh798j"; + }; + + phases = "unpackPhase buildPhase"; + + buildPhase = " + sed -i 's/\\/org.gjt.sp.jedit.gui.SplashScreen/g' org/gjt/sp/jedit/GUIUtilities.java + ant dist + ensureDir $out/lib + cp jedit.jar $out/lib + ensureDir \$out/lib/modes + cp modes/catalog \$out/lib/modes + "; + + buildInputs =(with args; [ant]); + + meta = { + description = "really nice programmers editor written in Java. Give it a try"; + homepage = http://sourceforge.net/project/showfiles.php?group_id=588; + license = "GPL"; + }; +} diff --git a/pkgs/applications/jedit/wrapper.nix b/pkgs/applications/jedit/wrapper.nix new file mode 100644 index 00000000000..ff8f6abacfc --- /dev/null +++ b/pkgs/applications/jedit/wrapper.nix @@ -0,0 +1,18 @@ +args: +args.stdenv.mkDerivation { + name = args.jedit.name+"_startscript"; + + java = args.jre+"/bin/java"; + jeditjar = args.jedit+"/lib/jedit.jar"; + + phases = "buildPhase"; + + buildPhase = " +ensureDir \$out/bin +cat > \$out/bin/${args.jedit.name} << EOF +#!/bin/sh +exec $java -jar $jeditjar \\$* +EOF + chmod +x \$out/bin/${args.jedit.name} +"; +} diff --git a/pkgs/applications/misc/gphoto2/default.nix b/pkgs/applications/misc/gphoto2/default.nix index caab251edd9..ef70b54384a 100644 --- a/pkgs/applications/misc/gphoto2/default.nix +++ b/pkgs/applications/misc/gphoto2/default.nix @@ -1,10 +1,12 @@ -{stdenv, fetchurl, pkgconfig, libgphoto2, libexif, popt}: +args: with args; -stdenv.mkDerivation { - name = "gphoto2-2.2.0"; +stdenv.mkDerivation rec { + name = "gphoto2-2.4.0"; src = fetchurl { - url = mirror://sourceforge/gphoto/gphoto2-2.2.0.tar.bz2; - md5 = "f5c1f83185db598b4ca52889964a5e84"; + url = "mirror://sourceforge/gphoto/${name}.tar.bz2"; + sha256 = "1rf4w5m35dsi8dkwwnh4wg70xivdi9j79f2dy3rq90p1v8sar9ca"; }; - buildInputs = [pkgconfig libgphoto2 libexif popt]; + buildInputs = [pkgconfig libgphoto2 libexif popt gettext]; +# There is a bug in 2.4.0 configure.ac (in their m4 macroses) + patchPhase = "sed -e 's@_tmp=true@_tmp=false@' -i configure configure.ac"; } diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix index b2b7af6f014..7872c6abaaf 100644 --- a/pkgs/applications/misc/synergy/default.nix +++ b/pkgs/applications/misc/synergy/default.nix @@ -5,7 +5,7 @@ args.stdenv.mkDerivation { src = args.fetchcvs { url = ":pserver:anonymous@synergy2.cvs.sourceforge.net:/cvsroot/synergy2"; module = "synergy"; - tag = "-DNOW"; + date = "NOW"; sha256 = "ef8e2ebfda6e43240051a7af9417092b2af50ece8b5c6c3fbd908ba91c4fe068"; }; diff --git a/pkgs/applications/networking/browsers/elinks/default.nix b/pkgs/applications/networking/browsers/elinks/default.nix index 9804f758ba7..1e786848133 100644 --- a/pkgs/applications/networking/browsers/elinks/default.nix +++ b/pkgs/applications/networking/browsers/elinks/default.nix @@ -8,11 +8,7 @@ stdenv.mkDerivation { sha256 = "c10e657fbd884eae4f01b91b32407bbfcbcae0ad5017fb24ea365aebc71d2af1"; }; - preConfigure = " - touch config.log ; rm /tmp/elinks.config.log; ln -f config.log /tmp/elinks.config.log"; - - buildInputs = [python perl ncurses x11 bzip2 zlib openssl spidermonkey guile - libtool]; + buildInputs = [python perl ncurses x11 bzip2 zlib openssl spidermonkey guile]; configureFlags = "--enable-finger --enable-html-highlight --with-guile --with-perl --with-python --enable-gopher --enable-cgi --enable-bittorrent --enable-nntp --with-openssl=${openssl}"; diff --git a/pkgs/applications/version-management/git/default.nix b/pkgs/applications/version-management/git/default.nix index 138b4d61449..c2388f8c1aa 100644 --- a/pkgs/applications/version-management/git/default.nix +++ b/pkgs/applications/version-management/git/default.nix @@ -1,16 +1,21 @@ -{stdenv, fetchurl, curl, openssl, zlib, expat, perl}: +args: with args; -stdenv.mkDerivation { - name = "git-1.5.1.2"; +stdenv.mkDerivation rec { + name = "git-1.5.3.5"; src = fetchurl { - url = mirror://kernel/software/scm/git/git-1.5.1.2.tar.bz2; - sha256 = "0a7nnw9631h6nxk7sny0cjv89qlibilvsm6947620vr2kgc6p6k2"; + url = "mirror://kernel/software/scm/git/${name}.tar.bz2"; + sha256 = "0ab63s25wzmsl5inp7bykz5ac7xjilqa0ciaz7ydhciymz6gkawj"; }; buildInputs = [curl openssl zlib expat]; - preBuild = " - makeFlagsArray=(prefix=$out PERL_PATH=${perl}/bin/perl SHELL_PATH=${stdenv.shell}) - "; + makeFlags="prefix=\${out} PERL_PATH=${perl}/bin/perl SHELL_PATH=${stdenv.shell}"; + + meta = { + license = "GPL2"; + homepage = http://git.or.cz; + description = "A popular version control system designed to handle very + large projects with speed and efficiency"; + }; } diff --git a/pkgs/build-support/fetchcvs/builder.sh b/pkgs/build-support/fetchcvs/builder.sh index 16aad96116d..be3e9e46355 100644 --- a/pkgs/build-support/fetchcvs/builder.sh +++ b/pkgs/build-support/fetchcvs/builder.sh @@ -1,8 +1,5 @@ source $stdenv/setup -if test -z "$tag"; then - tag="-DNOW" -fi # creating the export drictory and checking out there only to be able to # move the content without the root directory into $out ... # cvs -f -d "$url" export $tag -d "$out" "$module" @@ -10,6 +7,16 @@ fi # See als man Page for those options ensureDir $out export +set -x +if [ -n "$tag" ]; then + tag="-r $tag" +else + if [ -n "$date" ]; then + tag="-D $date" + else + tag="-D NOW" + fi +fi cd export; cvs -f -d "$url" export $tag "$module" mv */* $out diff --git a/pkgs/build-support/fetchcvs/default.nix b/pkgs/build-support/fetchcvs/default.nix index 6cd31ddaade..60463ec5644 100644 --- a/pkgs/build-support/fetchcvs/default.nix +++ b/pkgs/build-support/fetchcvs/default.nix @@ -1,13 +1,13 @@ # example tags: -# "-DNOW" (get current version) -# "-D2007-20-10" (get the last version before given date) -# "-r " (get version by tag name) -{stdenv, cvs, nix}: {url, module, tag, sha256}: +# date="2007-20-10"; (get the last version before given date) +# tag="" (get version by tag name) +# If you don't specify neither one date="NOW" will be used (get latest) + +{stdenv, cvs, nix}: {url, module, tag ? null, date ? null, sha256}: stdenv.mkDerivation { name = "cvs-export"; builder = ./builder.sh; buildInputs = [cvs nix]; - - inherit url module tag sha256; + inherit url module sha256 tag date; } diff --git a/pkgs/desktops/gnome/default.nix b/pkgs/desktops/gnome/default.nix index 6410e9c053a..9b4c14340bf 100644 --- a/pkgs/desktops/gnome/default.nix +++ b/pkgs/desktops/gnome/default.nix @@ -210,7 +210,7 @@ rec { gnomedocutils = import ./gnome-doc-utils.nix { inherit stdenv fetchurl pkgconfig perl perlXMLParser python - libxml2 libxslt gettext; + libxml2 libxslt gettext libxml2Python; input = desktop.gnomedocutils; }; diff --git a/pkgs/desktops/gnome/gnome-doc-utils.nix b/pkgs/desktops/gnome/gnome-doc-utils.nix index f1650d9650a..8a77d96475f 100644 --- a/pkgs/desktops/gnome/gnome-doc-utils.nix +++ b/pkgs/desktops/gnome/gnome-doc-utils.nix @@ -1,7 +1,4 @@ -{ input, stdenv, fetchurl, pkgconfig, perl, perlXMLParser, python -, libxml2, libxslt, gettext -}: - +args: with args; # !!! xml2po needs to store the path to libxml2 stdenv.mkDerivation { @@ -9,8 +6,18 @@ stdenv.mkDerivation { buildInputs = [ pkgconfig perl perlXMLParser python - libxml2 libxslt gettext + libxml2 libxslt gettext python libxml2Python ]; configureFlags = "--disable-scrollkeeper"; + + postInstall = " + mv \$out/bin/xml2po \$out/bin/.xml2po.orig + pythonPathLibXml2=\"\$(toPythonPath ${libxml2Python})\" + echo -e '#! ${stdenv.shell}\nPYTHONPATH=$PYTHONPATH:'\"\$( toPythonPath \$out )"+ + ":\${pythonPathLibXml2//python2.5/python2.4}"+ + ":\$( toPythonPath ${libxml2Python} )\""+ + "' \$(dirname \$0)/.xml2po.orig \"\$@\"' > \$out/bin/xml2po; + chmod a+x \$out/bin/xml2po + "; } diff --git a/pkgs/desktops/kde-4/kdebase/builder.sh b/pkgs/desktops/kde-4/base/builder.sh similarity index 55% rename from pkgs/desktops/kde-4/kdebase/builder.sh rename to pkgs/desktops/kde-4/base/builder.sh index 41cff761b36..99b357fcf16 100755 --- a/pkgs/desktops/kde-4/kdebase/builder.sh +++ b/pkgs/desktops/kde-4/base/builder.sh @@ -1,21 +1,12 @@ source ${stdenv}/setup -myPreBuild() -{ - for i in ${qt}/include/*; do - NIX_CFLAGS_COMPILE="-I$i ${NIX_CFLAGS_COMPILE}" - done; - echo "${NIX_CFLAGS_COMPILE}" -} -preBuild=myPreBuild - myPatchPhase() { echo "Fixing dbus calls in CMakeLists.txt files" # Trailing slash in sed is essential find .. -name CMakeLists.txt \ | xargs sed -e "s@\${DBUS_INTERFACES_INSTALL_DIR}/@${kdelibs}/share/dbus-1/interfaces/@" -i - sed -e '/^#define HAS_RANDR_1_2 1$/d' -i ../workspace/kcontrol/randr/randr.h + #sed -e '/^#define HAS_RANDR_1_2 1$/d' -i ../workspace/kcontrol/randr/randr.h } patchPhase=myPatchPhase genericBuild diff --git a/pkgs/desktops/kde-4/base/default.nix b/pkgs/desktops/kde-4/base/default.nix new file mode 100644 index 00000000000..75dbfbf40d4 --- /dev/null +++ b/pkgs/desktops/kde-4/base/default.nix @@ -0,0 +1,14 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdebase-4.0beta4"; + #builder = ./builder.sh; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdebase-3.95.0.tar.bz2; + sha256 = "0qf7bn5jqj70hznjk74vpwb7rvk6f5gx9fxwli930b2hskib3zll"; + }; + + propagatedBuildInputs = [kdepimlibs libusb]; + inherit kdelibs; +} diff --git a/pkgs/desktops/kde-4/decibel/default.nix b/pkgs/desktops/kde-4/decibel/default.nix new file mode 100644 index 00000000000..ff98b48ee6f --- /dev/null +++ b/pkgs/desktops/kde-4/decibel/default.nix @@ -0,0 +1,11 @@ +args: with args; +stdenv.mkDerivation { + name = "decibel-0.5.0"; + + src = fetchurl { + url = http://decibel.kde.org/fileadmin/downloads/decibel/releases/decibel-0.5.0.tar.gz; + sha256 = "07visasid4mpzm0ba5j9qy0lxxb6451lvbr2gnc1vzfvjagffqz4"; + }; + + buildInputs = [kdelibs kdebase ]; +} diff --git a/pkgs/desktops/kde-4/default.nix b/pkgs/desktops/kde-4/default.nix new file mode 100644 index 00000000000..9732d9e2b2b --- /dev/null +++ b/pkgs/desktops/kde-4/default.nix @@ -0,0 +1,35 @@ +args: +rec { + fullargs = args // { kdelibs = libs; kdepimlibs = pimlibs; kdebase = base; kderuntime = runtime; }; + libs = import ./libs (args // { kdesupport = support; }); + pimlibs = import ./pimlibs (args // { kdelibs = libs; }); + graphics = import ./graphics (fullargs // { kdeworkspace = workspace; } ); + multimedia = import ./multimedia (fullargs // { kdeworkspace = workspace; } ); + toys = import ./toys (fullargs // { kdeworkspace = workspace; } ); + network = import ./network (fullargs // { kdeworkspace = workspace; } ); + utils = import ./utils (fullargs // { kdeworkspace = workspace; } ); + games = import ./games (fullargs // { kdeworkspace = workspace; } ); + edu = import ./edu (fullargs // { kdeworkspace = workspace; } ); + base = import ./base fullargs; + runtime = import ./runtime fullargs; + workspace = import ./workspace fullargs; + extragear_plasma = import ./extragear (fullargs // { kdeworkspace = workspace; }); + support = import ./support args; + decibel = import ./decibel fullargs; + pim = import ./pim (fullargs // {kdeworkspace = workspace; }); + + env = with args; runCommand "kde-env" + { + KDEDIRS = lib.concatStringsSep ":" ([ libs pimlibs graphics multimedia + toys network utils games edu base runtime workspace extragear_plasma pim] ++ + support.all); + scriptName = "echo-kde-dirs"; + } + " + ensureDir \${out}/bin + scriptPath=\${out}/bin/\${scriptName} + echo \"#!/bin/sh\" > \${scriptPath} + echo \"echo -n export KDEDIRS=\${KDEDIRS}\" >> \${scriptPath} + chmod +x \${scriptPath} + "; +} diff --git a/pkgs/desktops/kde-4/edu/default.nix b/pkgs/desktops/kde-4/edu/default.nix new file mode 100644 index 00000000000..e69a1a49be6 --- /dev/null +++ b/pkgs/desktops/kde-4/edu/default.nix @@ -0,0 +1,20 @@ +args: with args; + +stdenv.mkDerivation rec { + name = "kdeedu-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdeedu-3.95.0.tar.bz2; + sha256 = "0cydl3pp3l0cbfmf774qh8njyhycaf8yxb27k4xf6mipvw1k9jqf"; + }; + + buildInputs = [kdelibs kdepimlibs kdeworkspace boost readline openbabel ocaml + libusb facile python]; + myCmakeFiles = ./myCmakeFiles; + patchPhase = " + cp ${myCmakeFiles}/* ../cmake/modules + sed -e 's@+facile@\${LIBFACILE_INCLUDE_DIR}@' -i \\ + ../kalzium/src/CMakeOCamlInstructions.cmake + "; + configureFlags = "--debug-trycompile"; +} diff --git a/pkgs/desktops/kde-4/edu/myCmakeFiles/CheckBoostAndPythonCompatible.cmake b/pkgs/desktops/kde-4/edu/myCmakeFiles/CheckBoostAndPythonCompatible.cmake new file mode 100644 index 00000000000..35701ecf5c6 --- /dev/null +++ b/pkgs/desktops/kde-4/edu/myCmakeFiles/CheckBoostAndPythonCompatible.cmake @@ -0,0 +1,38 @@ +include(CheckCXXSourceCompiles) +include(CheckIncludeFileCXX) +include(CheckLibraryExists) + +MACRO(check_boost_and_python_compatible + _bo_inc _bo_ld _bo_py_lib + _py_inc _py_ld _py_lib) + + set(_save_CXX_FLAGS ${CMAKE_CXX_FLAGS}) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${KDE4_ENABLE_EXCEPTIONS}") + + set(CMAKE_REQUIRED_FLAGS "-L${_bo_ld} -L${_py_ld}") + set(CMAKE_REQUIRED_INCLUDES ${_py_inc} ${_bo_inc}) + set(CMAKE_REQUIRED_LIBRARIES ${_bo_py_lib} ${_py_lib}) + + check_cxx_source_compiles(" +#include +const char* greet() { return \"Hello world!\"; } +BOOST_PYTHON_MODULE(hello) { boost::python::def(\"greet\", greet); } + +int main() { return 0; } + +// some vars, in case of the compilation fail... +// python include dir: ${_py_inc} +// python lib: ${_py_lib} +// +// boost python lib: ${_bo_py_lib} +// boost include dir: ${_bo_inc} +// boost lib dir: ${_bo_ld} +// +" +BOOST_PYTHON_${_bo_inc}_${_bo_ld}_${_bo_py_lib}_${_py_inc}_${_py_ld}_${_py_lib}_COMPATIBLE ) + + set(CMAKE_REQUIRED_FLAGS) + set(CMAKE_REQUIRED_INCLUDES) + set(CMAKE_REQUIRED_LIBRARIES) + set(CMAKE_CXX_FLAGS ${_save_CXX_FLAGS}) +ENDMACRO(check_boost_and_python_compatible) diff --git a/pkgs/desktops/kde-4/edu/myCmakeFiles/FindBoostPython.cmake b/pkgs/desktops/kde-4/edu/myCmakeFiles/FindBoostPython.cmake new file mode 100644 index 00000000000..b68959d8a9c --- /dev/null +++ b/pkgs/desktops/kde-4/edu/myCmakeFiles/FindBoostPython.cmake @@ -0,0 +1,90 @@ +# - Try to find the a valid boost+python combination +# Once done this will define +# +# Boost_PYTHON_FOUND - system has a valid boost+python combination +# BOOST_PYTHON_INCLUDES - the include directory for boost+python +# BOOST_PYTHON_LIBS - the needed libs for boost+python + +# Copyright (c) 2006, Pino Toscano, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(BOOST_PYTHON_INCLUDES AND BOOST_PYTHON_LIBS) + # Already in cache, be silent + set(Boost_PYTHON_FIND_QUIETLY TRUE) +endif(BOOST_PYTHON_INCLUDES AND BOOST_PYTHON_LIBS) + +SET(Boost_PYTHON_LIB_SUFFIXES "-mt" "-gcc-mt") +SET(Boost_KNOWN_VERSIONS "-1_34_1" "-1_34_0" "-1_33_1" "-1_33_0") + +FIND_PACKAGE(Boost) +INCLUDE(PythonLibsUtils) +INCLUDE(CheckBoostAndPythonCompatible) + +IF(Boost_FOUND AND Boost_LIBRARY_DIRS) + + SET(Boost_PYTHON_LIB_NAMES boost_python) + FOREACH(_suffix ${Boost_PYTHON_LIB_SUFFIXES}) + set(Boost_PYTHON_LIB_NAMES ${Boost_PYTHON_LIB_NAMES} + boost_python${_suffix}) + FOREACH(_bo_ver ${Boost_KNOWN_VERSIONS}) + set(Boost_PYTHON_LIB_NAMES ${Boost_PYTHON_LIB_NAMES} + boost_python${_suffix}${_bo_ver}) + ENDFOREACH(_bo_ver) + ENDFOREACH(_suffix) + + SET(_found FALSE) + FOREACH(_boost_python_lib ${Boost_PYTHON_LIB_NAMES}) + IF(NOT _found) + FIND_LIBRARY(Boost_PYTHON_LIB_FULLPATH + NAME ${_boost_python_lib} + PATHS ${Boost_LIBRARY_DIRS} + NO_DEFAULT_PATH + ) + IF(Boost_PYTHON_LIB_FULLPATH) + SET(Boost_PYTHON_LIB ${_boost_python_lib}) + SET(_found TRUE) + ENDIF(Boost_PYTHON_LIB_FULLPATH) + ENDIF(NOT _found) + ENDFOREACH(_boost_python_lib) + + IF(Boost_PYTHON_LIB) + SET(_found FALSE) + FOREACH(_py_ver ${PYTHON_KNOWN_VERSIONS}) + if (NOT _found) + python_find_version(${_py_ver} _py_inc _py_ld _py_lib) + IF(PYTHON_REQ_VERSION_FOUND) + MESSAGE(STATUS " ${Boost_INCLUDE_DIRS} ${Boost_LIBRARY_DIRS} ${Boost_PYTHON_LIB} ${_py_inc} ${_py_ld} ${_py_lib}") + check_boost_and_python_compatible( + "${Boost_INCLUDE_DIRS}" "${Boost_LIBRARY_DIRS}" + "${Boost_PYTHON_LIB}" "${_py_inc}" "${_py_ld}" + "${_py_lib}") + SET(_found + BOOST_PYTHON_${Boost_INCLUDE_DIRS}_${Boost_LIBRARY_DIRS}_${Boost_PYTHON_LIB}_${_py_inc}_${_py_ld}_${_py_lib}_COMPATIBLE) + + IF(BOOST_PYTHON_${Boost_INCLUDE_DIRS}_${Boost_LIBRARY_DIRS}_${Boost_PYTHON_LIB}_${_py_inc}_${_py_ld}_${_py_lib}_COMPATIBLE) + SET(BOOST_PYTHON_INCLUDES ${Boost_INCLUDE_DIRS} ${_py_inc}) + SET(BOOST_PYTHON_LIBS "-l${_py_lib} -L${_py_ld} -l${Boost_PYTHON_LIB}") + SET(BOOST_PYTHON_FOUND TRUE) + SET(_found TRUE) + ENDIF(BOOST_PYTHON_${Boost_INCLUDE_DIRS}_${Boost_LIBRARY_DIRS}_${Boost_PYTHON_LIB}_${_py_inc}_${_py_ld}_${_py_lib}_COMPATIBLE) + ENDIF(PYTHON_REQ_VERSION_FOUND) + ENDIF(NOT _found) + ENDFOREACH(_py_ver) + ENDIF(Boost_PYTHON_LIB) +ENDIF(Boost_FOUND AND Boost_LIBRARY_DIRS) + +if(BOOST_PYTHON_FOUND) + if(NOT BoostPython_FIND_QUIETLY) + message(STATUS "Found Boost+Python: ${BOOST_PYTHON_INCLUDES} ${BOOST_PYTHON_LIBS}") + endif(NOT BoostPython_FIND_QUIETLY) + set(KIG_ENABLE_PYTHON_SCRIPTING 1) +else (BOOST_PYTHON_FOUND) + if (BoostPython_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Boost+Python") + endif(BoostPython_FIND_REQUIRED) + set(KIG_ENABLE_PYTHON_SCRIPTING 0) +endif(BOOST_PYTHON_FOUND) + +mark_as_advanced(BOOST_PYTHON_INCLUDES BOOST_PYTHON_LIBS) diff --git a/pkgs/desktops/kde-4/edu/myCmakeFiles/FindLibfacile.cmake b/pkgs/desktops/kde-4/edu/myCmakeFiles/FindLibfacile.cmake new file mode 100644 index 00000000000..154531dabc1 --- /dev/null +++ b/pkgs/desktops/kde-4/edu/myCmakeFiles/FindLibfacile.cmake @@ -0,0 +1,45 @@ +# - Try to find Libfacile +# Once done this will define +# +# LIBFACILE_FOUND - system has Libfacile +# LIBFACILE_INCLUDE_DIR - the Libfacile include directory +# LIBFACILE_LIBRARIES - Link these to use Libfacile +# LIBFACILE_DEFINITIONS - Compiler switches required for using Libfacile +# +# Copyright (c) 2006, Carsten Niehaus, +# Copyright (c) 2006, Montel Laurent, +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +find_package(OCaml) + +set(LIBFACILE_FOUND FALSE) + +if( OCAML_FOUND ) + find_file(LIBFACILE_LIBRARIES NAME facile.a + PATHS ${OCAMLC_DIR} ENV CMAKE_LIBRARY_PATH + PATH_SUFFIXES facile ocaml/facile + ) + message(STATUS "LIBFACILE_LIBRARIES :<${LIBFACILE_LIBRARIES}>") + if (LIBFACILE_LIBRARIES) + get_filename_component(LIBFACILE_INCLUDE_DIR ${LIBFACILE_LIBRARIES} PATH) + message(STATUS "LIBFACILE_INCLUDE_DIR <${LIBFACILE_INCLUDE_DIR}>") + set(LIBFACILE_FOUND TRUE) + endif(LIBFACILE_LIBRARIES) +endif(OCAML_FOUND) + + +if(LIBFACILE_FOUND) + if(NOT Libfacile_FIND_QUIETLY) + message(STATUS "Found Libfacile: ${LIBFACILE_LIBRARIES}") + endif(NOT Libfacile_FIND_QUIETLY) +else(LIBFACILE_FOUND) + if(Libfacile_FIND_REQUIRED) + message(FATAL_ERROR "Could not find Libfacile") + endif(Libfacile_FIND_REQUIRED) +endif(LIBFACILE_FOUND) + +# show the LIBFACILE_INCLUDE_DIR and LIBFACILE_LIBRARIES variables only in the advanced view +mark_as_advanced(LIBFACILE_INCLUDE_DIR LIBFACILE_LIBRARIES ) + diff --git a/pkgs/desktops/kde-4/edu/myCmakeFiles/PythonLibsUtils.cmake b/pkgs/desktops/kde-4/edu/myCmakeFiles/PythonLibsUtils.cmake new file mode 100644 index 00000000000..df54324712a --- /dev/null +++ b/pkgs/desktops/kde-4/edu/myCmakeFiles/PythonLibsUtils.cmake @@ -0,0 +1,46 @@ +SET(PYTHON_KNOWN_VERSIONS "2.5" "2.4" "2.3" "2.2" "2.1" "2.0" "1.6" "1.5") + +MACRO(python_find_version _py_ver _py_inc _py_ld _py_lib) + STRING(REPLACE "." "" _py_ver_nd "${_py_ver}") + + SET(PY_INSTALL_PATH + [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_py_ver}\\InstallPath]) + + SET(_py_libnames "python${_py_ver}" "python${_py_ver_nd}") + + SET(_py_found FALSE) + FOREACH(_py_libname ${_py_libnames}) + IF (NOT _py_found) + SET(_py_lib_full _py_lib_full-NOTFOUND) + + FIND_LIBRARY(_py_lib_full + NAMES "${_py_libname}" + PATHS "${PY_INSTALL_PATH}/libs" + NO_SYSTEM_ENVIRONMENT_PATH + ) + FIND_LIBRARY(_py_lib_full + NAMES "${_py_libname}" + PATHS "${PY_INSTALL_PATH}/libs" + PATH_SUFFIXES "python${_py_ver}/config" + NO_SYSTEM_ENVIRONMENT_PATH + ) + IF(_py_lib_full) + SET(_py_lib "${_py_libname}") + GET_FILENAME_COMPONENT(_py_ld "${_py_lib_full}" PATH) + SET(_py_found TRUE) + ENDIF(_py_lib_full) + ENDIF(NOT _py_found) + ENDFOREACH(_py_libname) + + IF(_py_found) + FIND_PATH(_py_inc + NAMES Python.h + PATHS + ${PY_INSTALL_PATH}/include + PATH_SUFFIXES + "python${_py_ver}" + ) + ENDIF(_py_found) + + SET(PYTHON_REQ_VERSION_FOUND ${_py_found}) +ENDMACRO(python_find_version) diff --git a/pkgs/desktops/kde-4/extragear/default.nix b/pkgs/desktops/kde-4/extragear/default.nix new file mode 100644 index 00000000000..c67d4b8682c --- /dev/null +++ b/pkgs/desktops/kde-4/extragear/default.nix @@ -0,0 +1,14 @@ +args: with args; + +stdenv.mkDerivation { + name = "extragear-plasma-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/extragear-plasma-3.95.0.tar.bz2; + sha256 = "1nzfy34ig66gfpgv6kbcmcap13axcy7kvj43srbd0ic6a0giv283"; + }; + + buildInputs = [ kdeworkspace kdebase ]; + patchPhase = " + sed -e 's@ +# Copyright (c) 2007, Yury G. Kudryashov, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if (ILMBASE_INCLUDE_DIR AND ILMBASE_LIBRARIES) + # in cache already + SET(ILMBASE_FOUND TRUE) + +else (ILMBASE_INCLUDE_DIR AND ILMBASE_LIBRARIES) +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(IlmBase _IlmBaseIncDir _IlmBaseLinkDir _IlmBaseLinkFlags _IlmBaseCflags) +ENDIF (NOT WIN32) + FIND_PATH(ILMBASE_INCLUDE_DIR ImathBox.h + ${_IlmBaseIncDir} + ${_IlmBaseIncDir}/OpenEXR/ + ) + + FIND_LIBRARY(ILMBASE_HALF_LIBRARY NAMES Half + PATHS + ${_IlmBaseLinkDir} + NO_DEFAULT_PATH + ) + FIND_LIBRARY(ILMBASE_HALF_LIBRARY NAMES Half ) + + FIND_LIBRARY(ILMBASE_IEX_LIBRARY NAMES Iex + PATHS + ${_IlmBaseLinkDir} + NO_DEFAULT_PATH + ) + FIND_LIBRARY(ILMBASE_IEX_LIBRARY NAMES Iex ) + + FIND_LIBRARY(ILMBASE_IMATH_LIBRARY NAMES Imath + PATHS + ${_IlmBaseLinkDir} + NO_DEFAULT_PATH + ) + FIND_LIBRARY(ILMBASE_IMATH_LIBRARY NAMES Imath ) + + if (ILMBASE_INCLUDE_DIR AND ILMBASE_IMATH_LIBRARY AND ILMBASE_IEX_LIBRARY AND ILMBASE_HALF_LIBRARY) + set(ILMBASE_FOUND TRUE) + set(ILMBASE_LIBRARIES ${ILMBASE_IMATH_LIBRARY} ${ILMBASE_IEX_LIBRARY} ${ILMBASE_HALF_LIBRARY} CACHE STRING "The libraries needed to use IlmBase") + endif (ILMBASE_INCLUDE_DIR AND ILMBASE_IMATH_LIBRARY AND ILMBASE_IEX_LIBRARY AND ILMBASE_HALF_LIBRARY) + + if (ILMBASE_FOUND) + if (NOT IlmBase_FIND_QUIETLY) + message(STATUS "Found ILMBASE: ${ILMBASE_LIBRARIES}") + endif (NOT IlmBase_FIND_QUIETLY) + else (ILMBASE_FOUND) + if (IlmBase_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find ILMBASE") + endif (IlmBase_FIND_REQUIRED) + endif (ILMBASE_FOUND) + + MARK_AS_ADVANCED( + ILMBASE_INCLUDE_DIR + ILMBASE_LIBRARIES + ILMBASE_IMATH_LIBRARY + ILMBASE_IEX_LIBRARY + ILMBASE_HALF_LIBRARY ) + +endif (ILMBASE_INCLUDE_DIR AND ILMBASE_LIBRARIES) diff --git a/pkgs/desktops/kde-4/libs/FindOpenEXR.cmake b/pkgs/desktops/kde-4/libs/FindOpenEXR.cmake new file mode 100644 index 00000000000..b1f590544fa --- /dev/null +++ b/pkgs/desktops/kde-4/libs/FindOpenEXR.cmake @@ -0,0 +1,68 @@ +# Try to find the OpenEXR libraries +# This check defines: +# +# OPENEXR_FOUND - system has OpenEXR +# OPENEXR_INCLUDE_DIR - OpenEXR include directory +# OPENEXR_LIBRARIES - Libraries needed to use OpenEXR +# +# Copyright (c) 2006, Alexander Neundorf, +# Copyright (c) 2007, Yury G. Kudryashov, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +if (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) + # in cache already + SET(OPENEXR_FOUND TRUE) + +else (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) +FIND_PACKAGE(IlmBase) +IF (NOT ILMBASE_FOUND) + SET(OPENEXR_FOUND FALSE) +ELSE (NOT ILMBASE_FOUND) +IF (NOT WIN32) + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflags) +ENDIF (NOT WIN32) + FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h + ${_OpenEXRIncDir} + ${_OpenEXRIncDir}/OpenEXR/ + ) + + FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf + PATHS + ${_OpenEXRLinkDir} + NO_DEFAULT_PATH + ) + FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf ) + + if (OPENEXR_INCLUDE_DIR AND OPENEXR_ILMIMF_LIBRARY) + set(OPENEXR_FOUND TRUE) + set(OPENEXR_LIBRARIES ${ILMBASE_LIBRARIES} ${OPENEXR_ILMIMF_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + set(OPENEXR_INCLUDE_DIR ${OPENEXR_INCLUDE_DIR} ${ILMBASE_INCLUDE_DIR}) + endif (OPENEXR_INCLUDE_DIR AND OPENEXR_ILMIMF_LIBRARY) +ENDIF (NOT ILMBASE_FOUND) + + if (OPENEXR_FOUND) + if (NOT OpenEXR_FIND_QUIETLY) + message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") + endif (NOT OpenEXR_FIND_QUIETLY) + else (OPENEXR_FOUND) + if (OpenEXR_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find OPENEXR") + endif (OpenEXR_FIND_REQUIRED) + endif (OPENEXR_FOUND) + + MARK_AS_ADVANCED( + OPENEXR_INCLUDE_DIR + OPENEXR_LIBRARIES + OPENEXR_ILMIMF_LIBRARY + OPENEXR_IMATH_LIBRARY + OPENEXR_IEX_LIBRARY + OPENEXR_HALF_LIBRARY ) + +endif (OPENEXR_INCLUDE_DIR AND OPENEXR_LIBRARIES) diff --git a/pkgs/desktops/kde-4/libs/default.nix b/pkgs/desktops/kde-4/libs/default.nix new file mode 100644 index 00000000000..844e4a03320 --- /dev/null +++ b/pkgs/desktops/kde-4/libs/default.nix @@ -0,0 +1,27 @@ +args: with args; + +stdenv.mkDerivation rec { + name = "kdelibs-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdelibs-3.95.0.tar.bz2; + sha256 = "0960880wvwrj68r35knqjjxbqq90xzy1lqv526zyaymp7jc24ybc"; + }; + + propagatedBuildInputs = [ + cmake inputproto kbproto scrnsaverproto xextproto xf86miscproto xf86vidmodeproto + xineramaproto xproto libICE libX11 libXau libXcomposite libXcursor + libXdamage libXdmcp libXext libXfixes libXft libXi libXpm libXrandr + libXrender libXScrnSaver libXt libXtst libXv libXxf86misc libxkbfile zlib + perl qt openssl pcre pkgconfig libjpeg libpng libtiff libxml2 libxslt expat + libtool freetype bzip2 shared_mime_info alsaLib libungif cups + gettext enchant openexr aspell stdenv.gcc.libc + ] ++ kdesupport.all; + patchPhase = "cp ${findIlmBase} ../cmake/modules/FindIlmBase.cmake; + cp $findOpenEXR ../cmake/modules/FindOpenEXR.cmake; + sed -e 's@Soprano/DummyModel@Soprano/Util/DummyModel@' -i ../nepomuk/core/resourcemanager.cpp;"; + + findIlmBase = ./FindIlmBase.cmake; + findOpenEXR = ./FindOpenEXR.cmake; + setupHook=./setup.sh; +} diff --git a/pkgs/desktops/kde-4/libs/setup.sh b/pkgs/desktops/kde-4/libs/setup.sh new file mode 100755 index 00000000000..6f899442d27 --- /dev/null +++ b/pkgs/desktops/kde-4/libs/setup.sh @@ -0,0 +1,5 @@ +addKDEDIRS() +{ + addToSearchPath KDEDIRS /share/kde4 /. $1 +} +envHooks=(${envHooks[@]} addKDEDIRS) diff --git a/pkgs/desktops/kde-4/multimedia/default.nix b/pkgs/desktops/kde-4/multimedia/default.nix new file mode 100644 index 00000000000..f0870c1740d --- /dev/null +++ b/pkgs/desktops/kde-4/multimedia/default.nix @@ -0,0 +1,13 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdemultimedia-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdemultimedia-3.95.0.tar.bz2; + sha256 = "0vjk5gpn45fh7hm982jw1frd7fr0grff96ksmh29wnkc160rh8va"; + }; + + buildInputs = [kdelibs kdepimlibs kdeworkspace libogg flac cdparanoia lame + libvorbis]; +} diff --git a/pkgs/desktops/kde-4/network/default.nix b/pkgs/desktops/kde-4/network/default.nix new file mode 100644 index 00000000000..21ae2074e06 --- /dev/null +++ b/pkgs/desktops/kde-4/network/default.nix @@ -0,0 +1,12 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdenetwork-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdenetwork-3.95.0.tar.bz2; + sha256 = "118r55aw0pag78kawjfn3vya7aca12n5ypknm1i4khxs747hxqbr"; + }; + + buildInputs = [kdelibs kdepimlibs kdeworkspace sqlite libidn]; +} diff --git a/pkgs/desktops/kde-4/pim/builder.sh b/pkgs/desktops/kde-4/pim/builder.sh new file mode 100755 index 00000000000..8963fae048c --- /dev/null +++ b/pkgs/desktops/kde-4/pim/builder.sh @@ -0,0 +1,10 @@ +source ${stdenv}/setup + +myPatchPhase() +{ +# They reset CMAKE_MODULE_PATH, not adding to the existing + sed -e '3s/)/ ${CMAKE_MODULE_PATH})/' -i ../CMakeLists.txt +} +patchPhase=myPatchPhase + +genericBuild diff --git a/pkgs/desktops/kde-4/pim/default.nix b/pkgs/desktops/kde-4/pim/default.nix new file mode 100644 index 00000000000..f0f4184d391 --- /dev/null +++ b/pkgs/desktops/kde-4/pim/default.nix @@ -0,0 +1,15 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdepim-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdepim-3.95.0.tar.bz2; + sha256 = "0gzvm4h6ij7i119apmh9w82raygahr18bl0i9m3ynf2mcca0aq94"; + }; + + buildInputs = [libXinerama mesa stdenv.gcc.libc alsaLib kdelibs kdepimlibs + kdeworkspace libusb glib]; + qt4BadIncludes = true; + inherit qt kdelibs; +} diff --git a/pkgs/desktops/kde-4/pimlibs/default.nix b/pkgs/desktops/kde-4/pimlibs/default.nix new file mode 100644 index 00000000000..6d273acc67e --- /dev/null +++ b/pkgs/desktops/kde-4/pimlibs/default.nix @@ -0,0 +1,12 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdepimlibs-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdepimlibs-3.95.0.tar.bz2; + sha256 = "1dhn5x3k9myqfymv6ry84v0zm2qwxnrlm1vdlllfvmgbm5nz34mg"; + }; + + propagatedBuildInputs = [kdelibs boost gpgme cyrus_sasl openldap]; +} diff --git a/pkgs/desktops/kde-4/runtime/builder.sh b/pkgs/desktops/kde-4/runtime/builder.sh new file mode 100755 index 00000000000..99b357fcf16 --- /dev/null +++ b/pkgs/desktops/kde-4/runtime/builder.sh @@ -0,0 +1,12 @@ +source ${stdenv}/setup + +myPatchPhase() +{ + echo "Fixing dbus calls in CMakeLists.txt files" +# Trailing slash in sed is essential + find .. -name CMakeLists.txt \ + | xargs sed -e "s@\${DBUS_INTERFACES_INSTALL_DIR}/@${kdelibs}/share/dbus-1/interfaces/@" -i + #sed -e '/^#define HAS_RANDR_1_2 1$/d' -i ../workspace/kcontrol/randr/randr.h +} +patchPhase=myPatchPhase +genericBuild diff --git a/pkgs/desktops/kde-4/runtime/default.nix b/pkgs/desktops/kde-4/runtime/default.nix new file mode 100644 index 00000000000..f3f241a7ffe --- /dev/null +++ b/pkgs/desktops/kde-4/runtime/default.nix @@ -0,0 +1,15 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdebase-runtime-4.0beta4"; + builder = ./builder.sh; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdebase-runtime-3.95.0.tar.bz2; + sha256 = "1s4fhbz7gpdxmvlr20c7n6cvcb9sn0qxigzpljsxw9524w177ksr"; + }; + + propagatedBuildInputs = [kdepimlibs libusb kdebase xineLib]; + inherit kdelibs; +} + diff --git a/pkgs/desktops/kde-4/support/akode.nix b/pkgs/desktops/kde-4/support/akode.nix new file mode 100644 index 00000000000..1385def6b55 --- /dev/null +++ b/pkgs/desktops/kde-4/support/akode.nix @@ -0,0 +1,13 @@ +args: with args; + +stdenv.mkDerivation { + name = "akode-2.0.0dev"; + + src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/akode; + rev = 732646; + md5 = "6629ffedc42c020d2e8645910a4efdf5"; + }; + + buildInputs = [ cmake qt openssl gettext cyrus_sasl alsaLib ]; +} diff --git a/pkgs/desktops/kde-4/support/default.nix b/pkgs/desktops/kde-4/support/default.nix new file mode 100644 index 00000000000..af1dc175bed --- /dev/null +++ b/pkgs/desktops/kde-4/support/default.nix @@ -0,0 +1,36 @@ +args: +rec { + qca = (import ./qca.nix) args; + akode = (import ./akode.nix) args; + gmm = (import ./gmm.nix) args; + eigen = (import ./eigen.nix) args; + taglib = (import ./taglib.nix) args; + soprano = (import ./soprano.nix) args; + strigi = (import ./strigi.nix) args; + qimageblitz = (import ./qimageblitz.nix) args; + all = [qca gmm eigen taglib soprano strigi qimageblitz]; +} +#args: with args; +# +#stdenv.mkDerivation { +# name = "kdesupport-4.0svn-r729462"; +# +# src = fetchsvn { +# url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport; +# rev = 729462; +# md5 = "aa50ec8e5c8d49e1dfd53143345cb4b3"; +# }; +# +# propagatedBuildInputs = [ +# exiv2 +# cmake inputproto kbproto scrnsaverproto xextproto xf86miscproto xf86vidmodeproto +# xineramaproto xproto libICE libX11 libXau libXcomposite libXcursor +# libXdamage libXdmcp libXext libXfixes libXft libXi libXpm libXrandr +# libXrender libXScrnSaver libXt libXtst libXv libXxf86misc libxkbfile zlib +# perl qt openssl pcre pkgconfig libjpeg libpng libtiff libxml2 libxslt expat +# libtool freetype bzip2 shared_mime_info alsaLib libungif cups +# gettext cluceneCore redland stdenv.gcc.libc dbus bison cppunit +# ]; +# CLUCENE_HOME=cluceneCore; +# patchPhase = "sed -e '/set(qca_PLUGINSDIR/s@\${QT_PLUGINS_DIR}@\${CMAKE_INSTALL_PREFIX}/plugins@' -i ../qca/CMakeLists.txt"; +#} diff --git a/pkgs/desktops/kde-4/support/eigen.nix b/pkgs/desktops/kde-4/support/eigen.nix new file mode 100644 index 00000000000..a3ac9eff391 --- /dev/null +++ b/pkgs/desktops/kde-4/support/eigen.nix @@ -0,0 +1,13 @@ +args: with args; + +stdenv.mkDerivation { + name = "eigen-1.0.5"; + + src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/eigen; + rev = 732646; + md5 = "f91ad5d3dd992984fb61107fd9050a36"; + }; + + buildInputs = [ cmake ]; +} diff --git a/pkgs/desktops/kde-4/support/gmm.nix b/pkgs/desktops/kde-4/support/gmm.nix new file mode 100644 index 00000000000..d32c9b9f765 --- /dev/null +++ b/pkgs/desktops/kde-4/support/gmm.nix @@ -0,0 +1,13 @@ +args: with args; + +stdenv.mkDerivation { + name = "gmm-svn"; + + src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/gmm; + rev = 732646; + md5 = "09ee4cfcbb3c428bc681c2da022648bf"; + }; + + buildInputs = [ cmake ]; +} diff --git a/pkgs/desktops/kde-4/support/qca.nix b/pkgs/desktops/kde-4/support/qca.nix new file mode 100644 index 00000000000..64b00da91ce --- /dev/null +++ b/pkgs/desktops/kde-4/support/qca.nix @@ -0,0 +1,15 @@ +args: with args; + +stdenv.mkDerivation { + name = "qca-2.0.0dev"; + + src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/qca; + rev = 732646; + md5 = "1df54bf3bf327b14ea1948f9080717c3"; + }; + + buildInputs = [ cmake qt openssl gettext cyrus_sasl libgcrypt gnupg ]; + + patchPhase = "sed -e '/set(qca_PLUGINSDIR/s@\${QT_PLUGINS_DIR}@\${CMAKE_INSTALL_PREFIX}/plugins@' -i ../CMakeLists.txt"; +} diff --git a/pkgs/desktops/kde-4/support/qimageblitz.nix b/pkgs/desktops/kde-4/support/qimageblitz.nix new file mode 100644 index 00000000000..fe6a03ca7c7 --- /dev/null +++ b/pkgs/desktops/kde-4/support/qimageblitz.nix @@ -0,0 +1,13 @@ +args: with args; + +stdenv.mkDerivation { + name = "qimageblitz-4.0.0svn"; + + src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/qimageblitz; + rev = 732646; + md5 = "c37fa505368071ec501e966225e30c78"; + }; + + buildInputs = [cmake qt]; +} diff --git a/pkgs/desktops/kde-4/support/soprano.nix b/pkgs/desktops/kde-4/support/soprano.nix new file mode 100644 index 00000000000..0f453d726d7 --- /dev/null +++ b/pkgs/desktops/kde-4/support/soprano.nix @@ -0,0 +1,14 @@ +args: with args; + +stdenv.mkDerivation { + name = "soprano-1.9.0svn"; + + src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/soprano; + rev = 732646; + md5 = "c3b43544536f0f8061e4afeb9e368072"; + }; + + CLUCENE_HOME=cluceneCore; + buildInputs = [ cmake qt cluceneCore redland ]; +} diff --git a/pkgs/desktops/kde-4/support/strigi.nix b/pkgs/desktops/kde-4/support/strigi.nix new file mode 100644 index 00000000000..f0e0fe614be --- /dev/null +++ b/pkgs/desktops/kde-4/support/strigi.nix @@ -0,0 +1,15 @@ +args: with args; + +stdenv.mkDerivation { + name = "strigi-svn"; + + src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/strigi; + rev = 732646; + md5 = "15762f5a406ef84bc1cdd776b2ca9a82"; + }; + + CLUCENE_HOME=cluceneCore; + buildInputs = [ cmake zlib cluceneCore bzip2 libxml2 qt dbus + log4cxx stdenv.gcc.libc exiv2 bison cppunit perl ]; +} diff --git a/pkgs/desktops/kde-4/support/taglib.nix b/pkgs/desktops/kde-4/support/taglib.nix new file mode 100644 index 00000000000..6aecb7a91ef --- /dev/null +++ b/pkgs/desktops/kde-4/support/taglib.nix @@ -0,0 +1,13 @@ +args: with args; + +stdenv.mkDerivation { + name = "taglib-1.4svn"; + + src = fetchsvn { + url = svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib; + rev = 732646; + md5 = "647d68a76858cf3a667656c486b0a8c2"; + }; + + buildInputs = [ cmake zlib ]; +} diff --git a/pkgs/desktops/kde-4/toys/default.nix b/pkgs/desktops/kde-4/toys/default.nix new file mode 100644 index 00000000000..19c08c4891b --- /dev/null +++ b/pkgs/desktops/kde-4/toys/default.nix @@ -0,0 +1,12 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdetoys-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdetoys-3.95.0.tar.bz2; + sha256 = "0qg9ns640v21sa837pg5basnw8clnkyxap2lm7s69ainsg69662v"; + }; + + buildInputs = [kdelibs kdepimlibs kdeworkspace]; +} diff --git a/pkgs/desktops/kde-4/utils/default.nix b/pkgs/desktops/kde-4/utils/default.nix new file mode 100644 index 00000000000..cee61c0e4cd --- /dev/null +++ b/pkgs/desktops/kde-4/utils/default.nix @@ -0,0 +1,13 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdeutils-4.0beta4"; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdeutils-3.95.0.tar.bz2; + sha256 = "1b8jvdy83qwhnfwqxzx96bxnaxss25psazifymyb0z4ynkqmadlh"; + }; + + buildInputs = [kdelibs kdepimlibs kdeworkspace gmp libzip python ]; +# TODO : tpctl +} diff --git a/pkgs/desktops/kde-4/workspace/builder.sh b/pkgs/desktops/kde-4/workspace/builder.sh new file mode 100755 index 00000000000..648d6175f35 --- /dev/null +++ b/pkgs/desktops/kde-4/workspace/builder.sh @@ -0,0 +1,12 @@ +source ${stdenv}/setup + +myPatchPhase() +{ + echo "Fixing dbus calls in CMakeLists.txt files" +# Trailing slash in sed is essential + find .. -name CMakeLists.txt \ + | xargs sed -e "s@\${DBUS_INTERFACES_INSTALL_DIR}/@${kdelibs}/share/dbus-1/interfaces/@" -i + sed -e '/^#define HAS_RANDR_1_2 1$/d' -i ../kcontrol/randr/randr.h +} +patchPhase=myPatchPhase +genericBuild diff --git a/pkgs/desktops/kde-4/workspace/default.nix b/pkgs/desktops/kde-4/workspace/default.nix new file mode 100644 index 00000000000..829393f67e9 --- /dev/null +++ b/pkgs/desktops/kde-4/workspace/default.nix @@ -0,0 +1,15 @@ +args: with args; + +stdenv.mkDerivation { + name = "kdebase-workspace-4.0beta4"; + builder = ./builder.sh; + + src = fetchurl { + url = mirror://kde/unstable/3.95/src/kdebase-workspace-3.95.0.tar.bz2; + sha256 = "0jripmw8vgs7lxlsif552rr9vqps5kav8jdlfyhmr9c3xw5c99v0"; + }; + + buildInputs = [kdelibs kdepimlibs kdebase kderuntime stdenv.gcc.libc]; + inherit kdelibs; +} + diff --git a/pkgs/development/compilers/gcc-3.4/builder.sh b/pkgs/development/compilers/gcc-3.4/builder.sh index 5a89201377d..eb1f211dce8 100644 --- a/pkgs/development/compilers/gcc-3.4/builder.sh +++ b/pkgs/development/compilers/gcc-3.4/builder.sh @@ -37,22 +37,10 @@ fi preConfigure=preConfigure preConfigure() { - - # Determine the frontends to build. - langs="c" - if test -n "$langCC"; then - langs="$langs,c++" - fi - if test -n "$langF77"; then - langs="$langs,f77" - fi - # Perform the build in a different directory. mkdir ../build cd ../build - configureScript=../$sourceRoot/configure - configureFlags="--enable-languages=$langs $configureFlags" } diff --git a/pkgs/development/compilers/gcc-3.4/default.nix b/pkgs/development/compilers/gcc-3.4/default.nix index 4cb834304e3..de7f079b2d9 100644 --- a/pkgs/development/compilers/gcc-3.4/default.nix +++ b/pkgs/development/compilers/gcc-3.4/default.nix @@ -5,6 +5,8 @@ assert langC; +with import ../../../lib; + stdenv.mkDerivation { name = "gcc-3.4.6"; builder = ./builder.sh; @@ -15,7 +17,22 @@ stdenv.mkDerivation { patches = if noSysDirs then [./no-sys-dirs.patch] else []; - inherit noSysDirs langC langCC langF77 profiledCompiler; + inherit noSysDirs profiledCompiler; + + configureFlags = " + --disable-multilib + --with-system-zlib + --enable-languages=${ + concatStrings (intersperse "," + ( optional langC "c" + ++ optional langCC "c++" + ++ optional langF77 "f77" + ) + ) + } + "; + + passthru = { inherit langC langCC langF77; }; meta = { homepage = "http://gcc.gnu.org/"; diff --git a/pkgs/development/compilers/ocaml/ocaml-3.08.0.nix b/pkgs/development/compilers/ocaml/3.08.0.nix similarity index 94% rename from pkgs/development/compilers/ocaml/ocaml-3.08.0.nix rename to pkgs/development/compilers/ocaml/3.08.0.nix index d063fead4a5..6d4b4ca616c 100644 --- a/pkgs/development/compilers/ocaml/ocaml-3.08.0.nix +++ b/pkgs/development/compilers/ocaml/3.08.0.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, x11}: +args: with args; stdenv.mkDerivation { name = "ocaml-3.08.0"; diff --git a/pkgs/development/compilers/ocaml/ocaml-3.09.1.nix b/pkgs/development/compilers/ocaml/3.09.1.nix similarity index 92% rename from pkgs/development/compilers/ocaml/ocaml-3.09.1.nix rename to pkgs/development/compilers/ocaml/3.09.1.nix index 996012d6b27..6e9922ccc36 100644 --- a/pkgs/development/compilers/ocaml/ocaml-3.09.1.nix +++ b/pkgs/development/compilers/ocaml/3.09.1.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, x11, ncurses}: +args: with args; stdenv.mkDerivation { name = "ocaml-3.09.1"; diff --git a/pkgs/development/compilers/ocaml/3.10.0.nix b/pkgs/development/compilers/ocaml/3.10.0.nix new file mode 100644 index 00000000000..a26175755b5 --- /dev/null +++ b/pkgs/development/compilers/ocaml/3.10.0.nix @@ -0,0 +1,23 @@ +args: with args; +stdenv.mkDerivation rec { + name = "ocaml-3.10.0"; + src = fetchurl { + url = "http://caml.inria.fr/pub/distrib/ocaml-3.10/${name}.tar.bz2"; + sha256 = "1ihmx1civ78s7k2hfc05z1s9vbyx2qw7fg8lnbxnfd6zxkk8878d"; + }; + prefixKey = "-prefix "; + configureFlags = ["-no-tk" "-x11lib" x11]; + buildFlags = "world bootstrap world.opt"; + buildInputs = [x11 ncurses]; + installTargets = "install installopt"; + patchPhase = " + CAT=$(type -tp cat) + sed -e \"s@/bin/cat@\${CAT}@\" -i config/auto-aux/sharpbang + "; + + meta = { + homepage = http://caml.inria.fr/ocaml; + license = "QPL, LGPL2 (library part)"; + desctiption = "Most popular variant of the Caml language"; + }; +} diff --git a/pkgs/development/compilers/ocaml/default.nix b/pkgs/development/compilers/ocaml/default.nix index 44603f95764..74d1378968c 100644 --- a/pkgs/development/compilers/ocaml/default.nix +++ b/pkgs/development/compilers/ocaml/default.nix @@ -1 +1,7 @@ -import ./ocaml-3.09.1.nix +args: +rec { + default = v_3_09_1; + v_3_08_0 = import ./3.08.0.nix (args // {stdenv = args.stdenv34;}); + v_3_09_1 = import ./3.09.1.nix args; + v_3_10_0 = import ./3.10.0.nix (args // {stdenv = args.stdenvUsingSetupNew2;}); +} diff --git a/pkgs/development/interpreters/perl/setup-hook.sh b/pkgs/development/interpreters/perl/setup-hook.sh index 6903bddd419..1f05581df97 100644 --- a/pkgs/development/interpreters/perl/setup-hook.sh +++ b/pkgs/development/interpreters/perl/setup-hook.sh @@ -1,5 +1,7 @@ addPerlLibPath () { - addToSearchPath PERL5LIB /lib/site_perl "" $1 + if test -d $1/lib/site_perl; then + export PERL5LIB="${PERL5LIB}${PERL5LIB:+:}$1/lib/site_perl" + fi } envHooks=(${envHooks[@]} addPerlLibPath) diff --git a/pkgs/development/interpreters/python/2.4.nix b/pkgs/development/interpreters/python/2.4.nix new file mode 100644 index 00000000000..726d2ac4aa9 --- /dev/null +++ b/pkgs/development/interpreters/python/2.4.nix @@ -0,0 +1,52 @@ +{stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2}: + +assert zlibSupport -> zlib != null; + +with stdenv.lib; + +let + + buildInputs = + optional (stdenv ? gcc && stdenv.gcc.libc != null) stdenv.gcc.libc ++ + [bzip2] ++ + optional zlibSupport zlib; + +in + +stdenv.mkDerivation { + name = "python-2.4.4"; + + src = fetchurl { + url = http://www.python.org/ftp/python/2.4.4/Python-2.4.4.tar.bz2; + md5 = "0ba90c79175c017101100ebf5978e906"; + }; + + patches = [ + # Look in C_INCLUDE_PATH and LIBRARY_PATH for stuff. + ./search-path.patch + ]; + + inherit buildInputs; + C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs); + LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs); + + configureFlags = "--enable-shared"; + + preConfigure = " + # Purity. + for i in /usr /sw /opt /pkg; do + substituteInPlace ./setup.py --replace $i /no-such-path + done + "; + + postInstall = " + ensureDir $out/nix-support + cp ${./setup-hook.sh} $out/nix-support/setup-hook + rm -rf $out/lib/python2.4/test + "; + + passthru = { + inherit zlibSupport; + libPrefix = "python2.4"; + }; +} diff --git a/pkgs/development/interpreters/python/2.5/setup-hook.sh b/pkgs/development/interpreters/python/2.5/setup-hook.sh index 27ad6226030..11551235c1f 100644 --- a/pkgs/development/interpreters/python/2.5/setup-hook.sh +++ b/pkgs/development/interpreters/python/2.5/setup-hook.sh @@ -1,5 +1,8 @@ addPythonPath() { - addToSearchPathWithCustomDelimiter : PYTHONPATH /lib/python2.5/site-packages "" $1 + local p=$1/lib/python2.5/site-packages + if test -d $p; then + export PYTHONPATH="${PYTHONPATH}${PYTHONPATH:+:}$p" + fi } toPythonPath() { diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index 726d2ac4aa9..3ac782e1aee 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -1,52 +1,5 @@ -{stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2}: - -assert zlibSupport -> zlib != null; - -with stdenv.lib; - -let - - buildInputs = - optional (stdenv ? gcc && stdenv.gcc.libc != null) stdenv.gcc.libc ++ - [bzip2] ++ - optional zlibSupport zlib; - -in - -stdenv.mkDerivation { - name = "python-2.4.4"; - - src = fetchurl { - url = http://www.python.org/ftp/python/2.4.4/Python-2.4.4.tar.bz2; - md5 = "0ba90c79175c017101100ebf5978e906"; - }; - - patches = [ - # Look in C_INCLUDE_PATH and LIBRARY_PATH for stuff. - ./search-path.patch - ]; - - inherit buildInputs; - C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs); - LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs); - - configureFlags = "--enable-shared"; - - preConfigure = " - # Purity. - for i in /usr /sw /opt /pkg; do - substituteInPlace ./setup.py --replace $i /no-such-path - done - "; - - postInstall = " - ensureDir $out/nix-support - cp ${./setup-hook.sh} $out/nix-support/setup-hook - rm -rf $out/lib/python2.4/test - "; - - passthru = { - inherit zlibSupport; - libPrefix = "python2.4"; - }; +args: rec { + default = v_2_4; + v_2_4 = import ./2.4.nix args; + v_2_5 = import ./2.5 args; } diff --git a/pkgs/development/interpreters/python/setup-hook.sh b/pkgs/development/interpreters/python/setup-hook.sh index 58b8d1cab76..3bc86c58229 100644 --- a/pkgs/development/interpreters/python/setup-hook.sh +++ b/pkgs/development/interpreters/python/setup-hook.sh @@ -1,5 +1,8 @@ addPythonPath() { - addToSearchPathWithCustomDelimiter : PYTHONPATH /lib/python2.4/site-packages "" $1 + local p=$1/lib/python2.4/site-packages + if test -d $p; then + export PYTHONPATH="${PYTHONPATH}${PYTHONPATH:+:}$p" + fi } toPythonPath() { diff --git a/pkgs/development/libraries/chmlib/builder.sh b/pkgs/development/libraries/chmlib/builder.sh deleted file mode 100644 index ccdbfc17a76..00000000000 --- a/pkgs/development/libraries/chmlib/builder.sh +++ /dev/null @@ -1,19 +0,0 @@ -source $stdenv/setup - -unpackCmd="tar xvfj $src" - -makeFlags="-f Makefile.simple CC=gcc LD=gcc INSTALLPREFIX=$out" - -postConfigure=postConfigure -postConfigure() { - cd src -} - -preInstall=preInstall -preInstall() { - mkdir $out - mkdir $out/lib - mkdir $out/include -} - -genericBuild \ No newline at end of file diff --git a/pkgs/development/libraries/chmlib/default.nix b/pkgs/development/libraries/chmlib/default.nix index 096f2e0e229..bd593aaea0a 100644 --- a/pkgs/development/libraries/chmlib/default.nix +++ b/pkgs/development/libraries/chmlib/default.nix @@ -1,9 +1,16 @@ -{stdenv, fetchurl}: +args: with args; -stdenv.mkDerivation { - name = "chmlib-0.38"; +stdenv.mkDerivation rec { + name = "chmlib-0.39"; src = fetchurl { - url = http://66.93.236.84/~jedwin/projects/chmlib/chmlib-0.38.tar.bz2; - md5 = "d72661526aaea377ed30e9f58a086964"; + url = "${meta.homepage}/${name}.tar.bz2"; + sha256 = "0hgzw121ffmk79wbpkd0394y5ah99c3i85z6scp958mmkr25sc6j"; + }; + + meta = { + homepage = http://www.jedrea.com/chmlib; + license = "LGPL"; + description = "CHLIB is a library for dealing with Microsoft ITSS/CHM + format files"; }; } diff --git a/pkgs/development/libraries/clucene-contrib/default.nix b/pkgs/development/libraries/clucene-contrib/default.nix deleted file mode 100644 index 8938256dec4..00000000000 --- a/pkgs/development/libraries/clucene-contrib/default.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv, fetchurl, cluceneCore}: - -stdenv.mkDerivation { - name = "clucene-contrib-0.9.16a"; - - src = fetchurl { - url = ftp://ftp.chg.ru/pub/sourceforge/c/cl/clucene/clucene-contrib-0.9.16a.tar.bz2; - sha256 = "1apk867pggxsflhgvsnhcmy5vz2cvc1b914g4inkcj6s5vn1a1jx"; - }; - inherit cluceneCore; - buildInputs=[cluceneCore]; - configureFlags = "--disable-static --with-clucene=${cluceneCore}"; - - meta = { - description = "CLucene is a port of the very popular Java Lucene text search engine API. Contrib package."; - homepage = http://clucene.sourceforge.net; - }; -} diff --git a/pkgs/development/libraries/clucene-core/default.nix b/pkgs/development/libraries/clucene-core/default.nix index 3d5734d6c2d..24e133a5de3 100644 --- a/pkgs/development/libraries/clucene-core/default.nix +++ b/pkgs/development/libraries/clucene-core/default.nix @@ -1,16 +1,15 @@ -{ stdenv, fetchurl }: +args: with args; +stdenv.mkDerivation rec { + name = "clucene-core-0.9.20"; -stdenv.mkDerivation { - name = "clucene-core-0.9.16a"; + src = fetchurl { + url = "mirror://sf/clucene/${name}.tar.bz2"; + sha256 = "1hwq3b4qp1dgygmypgpg3blj68wnksq2rbqkwyxvl5dldn12q7rg"; + }; + configureFlags = "--disable-static"; - src = fetchurl { - url = ftp://ftp.chg.ru/pub/sourceforge/c/cl/clucene/clucene-core-0.9.16a.tar.bz2; - sha256 = "0hv7sp1lbicnj2984hiki8qwrvz5zwn1zhj6azhavgjklanhihjr"; - }; - - meta = { - description = "CLucene is a port of the very popular Java Lucene text search engine API. Core package."; - homepage = http://clucene.sourceforge.net; - }; - configureFlags = "--disable-static"; + meta = { + description = "CLucene is a port of the very popular Java Lucene text search engine API. Core package."; + homepage = http://clucene.sourceforge.net; + }; } diff --git a/pkgs/development/libraries/dbus-glib/default.nix b/pkgs/development/libraries/dbus-glib/default.nix index fb206f9a6f6..e72ca406509 100644 --- a/pkgs/development/libraries/dbus-glib/default.nix +++ b/pkgs/development/libraries/dbus-glib/default.nix @@ -1,12 +1,18 @@ -{stdenv, fetchurl, pkgconfig, gettext, dbus, glib, expat}: +args: with args; stdenv.mkDerivation { - name = "dbus-glib-0.73"; + name = "dbus-glib-0.74"; src = fetchurl { - url = http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.73.tar.gz; - sha256 = "14ndjhbn6q4m7wrml8s57wghnjbm6a6fqb5jgazjxcn6748gkmyn"; + url = http://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-0.74.tar.gz; + sha256 = "1qmbnd9xgg7vahlfywd8sfd9yqhx8jdyczz3cshfsd4qc76xhw78"; }; inherit dbus glib; buildInputs = [pkgconfig gettext glib expat]; propagatedBuildInputs = [dbus]; + + meta = { + homepage = http://dbus.freedesktop.org; + license = "AFL-2.1 or GPL-2"; + description = "GLib bindings for D-Bus lightweight IPC mechanism"; + }; } diff --git a/pkgs/development/libraries/facile/default.nix b/pkgs/development/libraries/facile/default.nix new file mode 100644 index 00000000000..1890c6d0563 --- /dev/null +++ b/pkgs/development/libraries/facile/default.nix @@ -0,0 +1,19 @@ +args: with args; +stdenv.mkDerivation rec { + name = "facile-1.1"; + src = fetchurl { + url = "${meta.homepage}/distrib/${name}.tar.gz"; + sha256 = "1jp59ankjds8mh4vm0b5h4fd1lcbfn0rd6n151cgh14ihsknnym8"; + }; + dontAddPrefix = 1; + patchPhase = "sed -e 's@mkdir@mkdir -p@' -i Makefile"; + postConfigure = "make -C src .depend"; + makeFlags = "FACILEDIR=\${out}/lib/ocaml/facile"; + buildInputs = [ocaml]; + + meta = { + homepage = http://www.recherche.enac.fr/log/facile; + license = "LGPL"; + description = "A Functional Constraint Library"; + }; +} diff --git a/pkgs/development/libraries/haskell/gtk2hs/default.nix b/pkgs/development/libraries/haskell/gtk2hs/default.nix new file mode 100644 index 00000000000..f4e3a02c73f --- /dev/null +++ b/pkgs/development/libraries/haskell/gtk2hs/default.nix @@ -0,0 +1,18 @@ +{stdenv, fetchurl, pkgconfig, ghc, gtk, cairo, GConf, libglade +, glib, libgtkhtml, gtkhtml}: + +stdenv.mkDerivation { + name = "gtk2hs-0.9.12.1"; + src = fetchurl { + url = mirror://sourceforge/gtk2hs/gtk2hs-0.9.12.1.tar.gz; + sha256 = "110z6v9gzhg6nzlz5gs8aafmipbva6rc50b8z1jgq0k2g25hfy22"; + }; + + buildInputs = [pkgconfig ghc gtk glib cairo GConf libglade libgtkhtml gtkhtml]; + + configureFlags = [ + "--enable-cairo" + ]; + + +} diff --git a/pkgs/development/libraries/libexif/default.nix b/pkgs/development/libraries/libexif/default.nix index 0a63ffda2af..76434d2c30b 100644 --- a/pkgs/development/libraries/libexif/default.nix +++ b/pkgs/development/libraries/libexif/default.nix @@ -1,12 +1,12 @@ -{stdenv, fetchurl}: +args: with args; -stdenv.mkDerivation { - name = "libexif-0.6.14"; +stdenv.mkDerivation rec { + name = "libexif-0.6.16"; src = fetchurl { - url = mirror://sourceforge/libexif/libexif-0.6.14.tar.bz2; - sha256 = "0pza5ysvbvvliz7al2i8l3yai64w09xwc6ivy2v5cl7k43almz84"; + url = "mirror://sourceforge/libexif/${name}.tar.bz2"; + sha256 = "0hxc3aik3sn8xq4mbmxxb8ycx2lwffmhi5xvz0zjffhfwkaqas6v"; }; - patches = [./no-po.patch]; + buildInputs = [gettext]; } diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix index bb71e8f8499..8ea05dc73a3 100644 --- a/pkgs/development/libraries/libgcrypt/default.nix +++ b/pkgs/development/libraries/libgcrypt/default.nix @@ -1,10 +1,13 @@ -{stdenv, fetchurl, libgpgerror}: +args: with args; stdenv.mkDerivation { - name = "libgcrypt-1.2.4"; + name = "libgcrypt-1.3.1"; src = fetchurl { - url = ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.2.4.tar.gz; - sha256 = "1v6rbx2jpwvh9jwf8n91da2p66v2gzmym6s3h1fidfdy7qqkyg6g"; + urls = [ + ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.3.1.tar.bz2 + ftp://ftp.gnupg.org/gcrypt/alpha/libgcrypt/libgcrypt-1.3.1.tar.bz2 + ]; + sha256 = "0ip0bjhnn12lvb050j91x64wfhmpk7xlc3p93mxi9g2qczg413nz"; }; buildInputs = [libgpgerror]; diff --git a/pkgs/development/libraries/libgphoto2/default.nix b/pkgs/development/libraries/libgphoto2/default.nix index 78372330a94..6e332117a2d 100644 --- a/pkgs/development/libraries/libgphoto2/default.nix +++ b/pkgs/development/libraries/libgphoto2/default.nix @@ -1,14 +1,15 @@ -{stdenv, fetchurl, pkgconfig, libusb}: +args: with args; -stdenv.mkDerivation { - name = "libgphoto2-2.2.1"; +stdenv.mkDerivation rec { + name = "libgphoto2-2.4.0"; src = fetchurl { - url = mirror://sourceforge/gphoto/libgphoto2-2.2.1.tar.bz2; - md5 = "69827311733e39fafa9f77bb05e55b77"; + url = "mirror://sourceforge/gphoto/${name}.tar.bz2"; + sha256 = "0yfvpgfly774jnjrfqjf89h99az3sgvzkfpb9diygpk8hmx6phhd"; }; - buildInputs = [pkgconfig libusb]; + buildInputs = [pkgconfig libusb libtool libexif libjpeg gettext]; - ## remove this patch when 2.2.2 is released - patches = [./libgphoto2-2.2.1.patch]; + meta = { + license = "LGPL-2"; + }; } diff --git a/pkgs/development/libraries/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix index 41f946e6606..6131314a22c 100644 --- a/pkgs/development/libraries/libgsf/default.nix +++ b/pkgs/development/libraries/libgsf/default.nix @@ -1,10 +1,17 @@ -{stdenv, fetchurl, perl, perlXMLParser, pkgconfig, libxml2, glib, gettext}: +args: with args; -stdenv.mkDerivation { - name = "libgsf-1.14.1"; +stdenv.mkDerivation rec { + name = "libgsf-1.14.7"; src = fetchurl { - url = http://ftp.gnome.org/pub/gnome/sources/libgsf/1.14/libgsf-1.14.1.tar.bz2; - md5 = "00de00b99382d0b7e034e0fffd8951d4"; + url = "http://ftp.gnome.org/pub/gnome/sources/libgsf/1.14/${name}.tar.bz2"; + sha256 = "0vd8arjaavb3qywd9cm2gdn6ngrlyd99nlsj72par8fm60k48bhq"; + }; + buildInputs = [perl perlXMLParser pkgconfig libxml2 glib gettext bzip2 + gnomevfs libbonobo python]; + + meta = { + homepage = http://www.gnome.org/projects/libgsf; + license = "LGPL"; + description = "GNOME Structured File Library"; }; - buildInputs = [perl perlXMLParser pkgconfig libxml2 glib gettext]; } diff --git a/pkgs/development/libraries/libnotify/default.nix b/pkgs/development/libraries/libnotify/default.nix new file mode 100644 index 00000000000..42747db95a1 --- /dev/null +++ b/pkgs/development/libraries/libnotify/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl +, pkgconfig, dbus, dbus_glib +, gtk, glib +}: + +stdenv.mkDerivation { + name = "libnotify-0.4.4"; + #builder = ./builder.sh; + + src = fetchurl { + url = http://www.galago-project.org/files/releases/source/libnotify/libnotify-0.4.4.tar.gz; + sha256 = "2389a9b8220f776033f728a8d46352cfee5c8705066e34887bfb188f9f0d3856"; + }; + + buildInputs = [ + pkgconfig dbus dbus_glib gtk glib + ]; + + configureFlags=""; +} diff --git a/pkgs/development/libraries/libsexy/default.nix b/pkgs/development/libraries/libsexy/default.nix new file mode 100644 index 00000000000..81a38d39973 --- /dev/null +++ b/pkgs/development/libraries/libsexy/default.nix @@ -0,0 +1,17 @@ +{ stdenv, fetchurl, pkgconfig, libxml2, glib, gtk, pango +}: + +stdenv.mkDerivation { + name = "libsexy-0.1.11"; + #builder = ./builder.sh; + + src = fetchurl { + url = http://releases.chipx86.com/libsexy/libsexy/libsexy-0.1.11.tar.gz; + sha256 = "8c4101a8cda5fccbba85ba1a15f46f2cf75deaa8b3c525ce5b135b9e1a8fe49e"; + }; + + buildInputs = [ pkgconfig libxml2 glib gtk pango + ]; + + #configureFlags=""; +} diff --git a/pkgs/development/libraries/libwpd/default.nix b/pkgs/development/libraries/libwpd/default.nix index 13723fdeb85..630eb44753b 100644 --- a/pkgs/development/libraries/libwpd/default.nix +++ b/pkgs/development/libraries/libwpd/default.nix @@ -1,10 +1,9 @@ -{stdenv, fetchurl, pkgconfig, glib, libgsf, libxml2}: - +args: with args; stdenv.mkDerivation { name = "libwpd-0.8.5"; src = fetchurl { url = mirror://sourceforge/libwpd/libwpd-0.8.5.tar.gz; md5 = "6b679e205a2805c3d23f41c65b35e266"; }; - buildInputs = [pkgconfig glib libgsf libxml2]; + buildInputs = [pkgconfig glib libgsf libxml2 bzip2]; } diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index e1dbc274aed..a4f09612f9b 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -1,4 +1,4 @@ -args: with args; stdenv.mkDerivation { +{stdenv, fetchurl, perl}: stdenv.mkDerivation { name = "openssl-0.9.8g"; builder = ./builder.sh; src = fetchurl { @@ -6,5 +6,4 @@ args: with args; stdenv.mkDerivation { sha256 = "1w0wj3pgg9ga0hay3jdxs9sl17bfw307b6qvkxn735fy8ml8h9hf"; }; buildInputs = [perl]; - propagatedBuildInputs = [gmp]; } diff --git a/pkgs/development/libraries/strigi/default.nix b/pkgs/development/libraries/strigi/default.nix deleted file mode 100644 index 85f21652b53..00000000000 --- a/pkgs/development/libraries/strigi/default.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ stdenv, fetchurl, zlib, bzip2, expat, pkgconfig, cluceneCore, cluceneContrib, -qt, cmake, dbus, libxml2, perl }: - -stdenv.mkDerivation { - name = "strigi-0.5.3dev"; - - src = fetchurl { - url = http://repo.calcforge.org/f8/strigi-0.5.3.tar.bz2; - sha256 = "0rv7l2s4r022hrsw3jw0pvxh0yzlaw53jhmjxi3cbi6mdvc1y2sv"; - }; - - patchPhase="sed -e 's/ iconv / /' -i ../cmake/FindIconv.cmake; - export CLUCENE_HOME=${cluceneCore}"; - buildInputs = [zlib cluceneCore cluceneContrib expat bzip2 pkgconfig qt cmake - stdenv.gcc.libc dbus libxml2 perl]; - - meta = { - description = "Strigi is a fast and light desktop search engine"; - }; -} diff --git a/pkgs/development/libraries/xine-lib/default.nix b/pkgs/development/libraries/xine-lib/default.nix index 191fa13c0ce..738b21741b5 100644 --- a/pkgs/development/libraries/xine-lib/default.nix +++ b/pkgs/development/libraries/xine-lib/default.nix @@ -12,11 +12,11 @@ assert encryptedDVDSupport -> libdvdcss != null; assert alsaSupport -> alsaLib != null; (stdenv.mkDerivation { - name = "xine-lib-1.1.7"; + name = "xine-lib-1.1.8"; builder = ./builder.sh; src = fetchurl { - url = mirror://sourceforge/xine/xine-lib-1.1.7.tar.bz2; - sha256 = "1aycmhvq95gbb5mqw5skgcxyn4nh5qkzq21yclnqk5yzflpwwvvg"; + url = mirror://sourceforge/xine/xine-lib-1.1.8.tar.bz2; + sha256 = "03iwhgsf9kj0x5b4fgv7lzc1vj3frk4afh2idgrqskvixjyi37vc"; }; buildInputs = [ x11 diff --git a/pkgs/development/tools/build-managers/cmake/setup-hook.sh b/pkgs/development/tools/build-managers/cmake/setup-hook.sh index 4712ef2b648..f65b09f88d4 100755 --- a/pkgs/development/tools/build-managers/cmake/setup-hook.sh +++ b/pkgs/development/tools/build-managers/cmake/setup-hook.sh @@ -1,16 +1,15 @@ addCMakeParamsInclude() { - addToSearchPath CMAKE_INCLUDE_PATH /include "" $1 + if [ -d $1/include ]; then + export CMAKE_INCLUDE_PATH="${CMAKE_INCLUDE_PATH}${CMAKE_INCLUDE_PATH:+:}$1/include" + fi } addCMakeParamsLibs() { - addToSearchPath CMAKE_LIBRARY_PATH /lib "" $1 -} - -addCMakeModulePath() -{ - addToSearchPath CMAKE_MODULE_PATH /share/cmake-2.4/Modules "" $1 + if [ -d $1/lib ]; then + export CMAKE_LIBRARY_PATH="${CMAKE_LIBRARY_PATH}${CMAKE_LIBRARY_PATH:+:}$1/lib" + fi } fixCmakeFiles() @@ -46,4 +45,4 @@ if [ -z "$noCmakeTewaks" ]; then postUnpack="cmakePostUnpack${postUnpack:+; }${postUnpack}" fi; -envHooks=(${envHooks[@]} addCMakeParamsInclude addCMakeParamsLibs addCMakeModulePath) +envHooks=(${envHooks[@]} addCMakeParamsInclude addCMakeParamsLibs) diff --git a/pkgs/development/tools/misc/automake/setup-hook.sh b/pkgs/development/tools/misc/automake/setup-hook.sh index 4489d343510..097b7b6cbe5 100644 --- a/pkgs/development/tools/misc/automake/setup-hook.sh +++ b/pkgs/development/tools/misc/automake/setup-hook.sh @@ -1,5 +1,7 @@ addAclocals () { - addToSearchPathWithCustomDelimiter : ACLOCAL_PATH /share/aclocal "" $1 + if test -d $1/share/aclocal; then + export ACLOCAL_PATH="$ACLOCAL_PATH${ACLOCAL_PATH:+:}$1/share/aclocal" + fi } envHooks=(${envHooks[@]} addAclocals) diff --git a/pkgs/development/tools/misc/gdb/default.nix b/pkgs/development/tools/misc/gdb/default.nix index e914391ea2f..c9a47a953ef 100644 --- a/pkgs/development/tools/misc/gdb/default.nix +++ b/pkgs/development/tools/misc/gdb/default.nix @@ -1,10 +1,10 @@ -{stdenv, fetchurl, ncurses}: +args: with args; -stdenv.mkDerivation { - name = "gdb-6.6"; +stdenv.mkDerivation rec { + name = "gdb-6.7.1"; src = fetchurl { - url = http://ftp.gnu.org/gnu/gdb/gdb-6.6.tar.bz2; - md5 = "a4df41d28dd514d64e8ccbfe125fd9a6"; + url = "mirror://gnu/gdb/${name}.tar.bz2"; + sha256 = "0qig8j8hcqpqfhnnp685rzgj8v88bw2fc5igvbiiqkqg88wfr37r"; }; buildInputs = [ncurses]; } diff --git a/pkgs/development/tools/misc/pkgconfig/builder.sh b/pkgs/development/tools/misc/pkgconfig/builder.sh new file mode 100644 index 00000000000..6d281da71e4 --- /dev/null +++ b/pkgs/development/tools/misc/pkgconfig/builder.sh @@ -0,0 +1,10 @@ +source $stdenv/setup + +postInstall() { + test -x $out/nix-support || mkdir $out/nix-support + cp $setupHook $out/nix-support/setup-hook +} +postInstall=postInstall + +genericBuild + diff --git a/pkgs/development/tools/misc/pkgconfig/default.nix b/pkgs/development/tools/misc/pkgconfig/default.nix index 481d2174ebc..be8c4febe03 100644 --- a/pkgs/development/tools/misc/pkgconfig/default.nix +++ b/pkgs/development/tools/misc/pkgconfig/default.nix @@ -1,18 +1,14 @@ {stdenv, fetchurl}: stdenv.mkDerivation { - name = "pkgconfig-0.22"; + name = "pkgconfig-0.21"; + builder = ./builder.sh; setupHook = ./setup-hook.sh; src = fetchurl { - url = http://pkgconfig.freedesktop.org/releases/pkg-config-0.22.tar.gz; - sha256 = "1rpb5wygmp0f8nal7y3ga4556i7hkjdslv3wdq04fj30gns621vy"; + url = http://nix.cs.uu.nl/dist/tarballs/pkg-config-0.21.tar.gz; + md5 = "476f45fab1504aac6697aa7785f0ab91"; }; - postInstall = " - ensureDir \$out/nix-support - cp \$setupHook \$out/nix-support/setup-hook - "; - patches = [ # Process Requires.private properly, see # http://bugs.freedesktop.org/show_bug.cgi?id=4738. diff --git a/pkgs/development/tools/misc/pkgconfig/setup-hook.sh b/pkgs/development/tools/misc/pkgconfig/setup-hook.sh index f13a44eb999..f9e7805ccbf 100644 --- a/pkgs/development/tools/misc/pkgconfig/setup-hook.sh +++ b/pkgs/development/tools/misc/pkgconfig/setup-hook.sh @@ -1,5 +1,7 @@ addPkgConfigPath () { - addToSearchPath PKG_CONFIG_PATH /lib/pkgconfig "" $1 + if test -d $1/lib/pkgconfig; then + export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}${PKG_CONFIG_PATH:+:}$1/lib/pkgconfig" + fi } envHooks=(${envHooks[@]} addPkgConfigPath) diff --git a/pkgs/lib/default.nix b/pkgs/lib/default.nix index 33b7b3d6c9e..ce4fbf12cf4 100644 --- a/pkgs/lib/default.nix +++ b/pkgs/lib/default.nix @@ -244,4 +244,8 @@ rec { (l + (if l=="" then "" else ".") + s) (builtins.getAttr s attrs))) (builtins.attrNames attrs))))); + innerModifySumArgs = f: x: a: b: if b == null then (f a b) // x else + innerModifySumArgs f x (a // b); + modifySumArgs = f: x: innerModifySumArgs f x {}; + } diff --git a/pkgs/servers/monitoring/nagios/plugins/official/default.nix b/pkgs/servers/monitoring/nagios/plugins/official/default.nix index d415e833742..29eb7bbb7a0 100644 --- a/pkgs/servers/monitoring/nagios/plugins/official/default.nix +++ b/pkgs/servers/monitoring/nagios/plugins/official/default.nix @@ -20,6 +20,8 @@ stdenv.mkDerivation { ) "; + postInstall = "ln -s libexec $out/bin"; + buildInputs = [openssh]; # !!! make openssh a runtime dependency only meta = { diff --git a/pkgs/test/openftd/default.nix b/pkgs/test/openftd/default.nix new file mode 100644 index 00000000000..34cff9ac93f --- /dev/null +++ b/pkgs/test/openftd/default.nix @@ -0,0 +1,49 @@ +/* + +Systeemvereisten + +* libz >= 1.1.4 +* glib >= 2.2.0 +* gtk >= 2.2.0 + +Glib 2 is een 'dependancy' van gtk2. Als je gtk2 op je systeem hebt staan dan heb je ongetwijfeld ook glib2 op je systeem. Zie: www.gtk.org voor meer informatie omtrent Glib/gtk2 +Alhoewel FTD4Linux gtk 2.2 als minimumvereiste heeft raden we toch aan om gtk 2.4 te gebruiken. Dit vanwege een bug in gtk versies 2.2.2 t/m 2.2.4. + +* libxml2 >= 2.2.5 +* libxslt >= 1.0.5 + +* mozilla (gecompileerd met gtk2 support) +Mozilla is de opensource browser die is voortgekomen uit het vrijgeven van de netscape navigator source code. Als je mozilla reeds op je systeem hebt staan zou je even moeten nagaan of deze tegen gtk2 is gelinkt. Dit kun je doen met behulp van het programma ldd. +ldd /usr/X11R6/lib/mozilla-gtk2/libgtkembedmoz.so | grep gtk +/usr/X11R6/lib/mozilla-gtk2/libgtkembedmoz.so: +libgtk-x11-2.0.so.200 => /usr/X11R6/lib/libgtk-x11-2.0.so.200 (0x282c3000) +In de output van het ldd programma kun je zien of er inderdaad wordt gelink tegen gtk2. (libgtk-x11-2.0.so.200). +Heb je geen mozilla, maar heb je wel de firebird/firefox variant geinstalleerd staan dan kun je ook met de mozilla compatible onderdelen van firebird/firefox aan de gang. Je hebt hier echter wel de header (development) bestanden bij nodig. Controleer dus even of jouw firebird/firefox installatie hiermee is geleverd. (gtkembedmoz/gtkmozembed.h) Een 'locate gtkmozembed.h' zou hier snel genoeg uitsluitsel over moeten geven. + +* OpenSSL +* LibCURL + +*/ + +{ stdenv, fetchurl +, zlib, libxml2, libxslt, firefox, openssl, curl +, glib, gtk, libgnomeui, libgtkhtml +, pkgconfig, dbus_glib, realCurl, pcre, libsexy, gtkspell, libnotify +}: + +stdenv.mkDerivation { + name = "openftd-0.98.6"; + #builder = ./builder.sh; + + src = fetchurl { + url = http://speeldoos.eweka.nl/~paul/openftd/openftd-1.0.1.tar.bz2; + sha256 = "e0710865f852fdf209949788a1ced65e9ecf82b4eaa0992a7a1dde1511a3b6e7"; + }; + + buildInputs = [ + zlib libxml2 libxslt firefox openssl curl + glib gtk pkgconfig dbus_glib realCurl pcre libsexy libgnomeui gtkspell libnotify libgtkhtml + ]; + + configureFlags="--with-libcurl-libraries=${curl}/lib --with-libcurl-headers=${curl}/include --with-pcre_libraries=${pcre}/lib --with-pcre_headers=${pcre}/include"; +} diff --git a/pkgs/tools/misc/shebangfix/default.nix b/pkgs/tools/misc/shebangfix/default.nix new file mode 100644 index 00000000000..94ecc1e00f7 --- /dev/null +++ b/pkgs/tools/misc/shebangfix/default.nix @@ -0,0 +1,20 @@ +args: +args.stdenv.mkDerivation { + name = "shebangfix-0.0"; + + buildInputs = [args.perl]; + + file = ./shebangfix.pl; + + phases = "buildPhase"; + + buildPhase = " + ensureDir \$out/bin + s=\$out/bin/shebangfix + cp \$file \$s + chmod +x \$s + perl \$s \$s + "; + + meta = { description = "replaces the #!executable with $#!correctpath/executable "; }; +} diff --git a/pkgs/tools/misc/shebangfix/shebangfix.pl b/pkgs/tools/misc/shebangfix/shebangfix.pl new file mode 100644 index 00000000000..53573f8d36d --- /dev/null +++ b/pkgs/tools/misc/shebangfix/shebangfix.pl @@ -0,0 +1,35 @@ +#!/bin/perl +use warnings; +use strict; + +#usage PATH=< : separated path list> perl file1 file2 + +print "TODO fix space trouble. This script won't work if your paths contain spaces"; + +sub findInPath{ + my $file = shift(@_); + foreach (split(/:/, $ENV{'PATH'})){ + my $f = "$_/$file"; + if (-x "$f"){ + return $f; + } + } + print "unable to find $file in on of ".$ENV{'PATH'}; + exit 1 +} + +foreach (@ARGV) +{ + my $file = $_; + open(FILE, $file); + my $content = do { local $/; }; + + close(FILE); + + (my $name = $content) =~ /^#![^ ]*\/([^ \n\r]*)/; + my $fullpath = ($1 eq 'sh') ? "/bin/sh" : findInPath($1); + $content =~ s/^#![^ \n\r]*/#!$fullpath/; + open(FILE, ">$file"); + print FILE $content; + close($file); +} diff --git a/pkgs/tools/misc/wv/default.nix b/pkgs/tools/misc/wv/default.nix index 141bf91bee0..1bf88edef2a 100644 --- a/pkgs/tools/misc/wv/default.nix +++ b/pkgs/tools/misc/wv/default.nix @@ -9,7 +9,7 @@ args.stdenv.mkDerivation { }; buildInputs =(with args; [zlib imagemagick libpng glib - pkgconfig libgsf libxml2]); + pkgconfig libgsf libxml2 bzip2]); meta = { description = " diff --git a/pkgs/tools/package-management/nix/custom.nix b/pkgs/tools/package-management/nix/custom.nix new file mode 100644 index 00000000000..2cff9f53d87 --- /dev/null +++ b/pkgs/tools/package-management/nix/custom.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchurl, aterm, db4, perl, curl, bzip2, openssl ? null +, storeDir ? "/nix/store" +, stateDir ? "/nix/var" +, src +, preConfigure ? "" +, autoconf ? null, automake ? null, libtool ? null +, bison ? null +, flex ? null +, w3m ? null +, docbook5_xsl ? null, libxslt ? null +, docbook5 ? null, docbook_xml_dtd_43 ? null +, configureFlags ? [] +}: + +stdenv.mkDerivation { + name = "nix-custom"; + + inherit src; + + buildInputs = [perl curl openssl] + ++ (if automake != null then [automake] else []) + ++ (if autoconf != null then [autoconf] else []) + ++ (if libtool != null then [libtool] else []) + ++ (if bison != null then [bison] else []) + ++ (if flex != null then [flex] else []) + ++ (if docbook5_xsl != null then [docbook5_xsl] else []) + ++ (if libxslt != null then [libxslt] else []) + ++ (if docbook5 != null then [docbook5] else []) + ++ (if docbook_xml_dtd_43 != null then [docbook_xml_dtd_43] else []) + ++ (if w3m != null then [w3m] else []) + ; + + inherit preConfigure; + + configureFlags = [" + --with-store-dir=${storeDir} --localstatedir=${stateDir} + --with-aterm=${aterm} --with-bdb=${db4} --with-bzip2=${bzip2} + --disable-init-state"] ++ configureFlags ; + + meta = { + description = "The Nix Deployment System"; + homepage = http://nix.cs.uu.nl/; + license = "LGPL"; + }; +} diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix index 9d381198bee..532863d66eb 100644 --- a/pkgs/tools/package-management/nix/unstable.nix +++ b/pkgs/tools/package-management/nix/unstable.nix @@ -3,14 +3,14 @@ , stateDir ? "/nix/var" }: -let version = "0.11pre9570"; in +let version = "0.11pre9692"; in stdenv.mkDerivation { name = "nix-${version}"; src = fetchurl { url = "http://nix.cs.uu.nl/dist/nix/nix-${version}/nix-${version}.tar.bz2"; - md5 = "5170f1b1e8feda2adeb2cac3c5ca5ff9"; + md5 = "35c0bc68b81d20c7fb925bcf8faf4827"; }; buildInputs = [perl curl openssl]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1b31a9e69a0..1cf2c2792ce 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -147,6 +147,13 @@ rec { getVersion = name: alts: builtins.getAttr (getConfig [ "environment" "versions" name ] "default") alts; + # The same, another syntax. + # Warning: syntax for configuration.nix changed too + useVersion = name: f: f + { + version = getConfig [ "environment" "versions" name ]; + }; + # Whether user enabled given feature for the given package? getFlag = flag: package: default: getConfig [ "environment" "flags" package flag ] @@ -659,6 +666,11 @@ rec { inherit fetchurl stdenv ncurses; }; + shebangfix = import ../tools/misc/shebangfix { + inherit perl; + stdenv = overrideSetup stdenv ../stdenv/generic/setup-new-2.sh; + }; + smartmontools = import ../tools/system/smartmontools { inherit fetchurl stdenv; }; @@ -743,7 +755,7 @@ rec { wv = import ../tools/misc/wv { inherit fetchurl stdenv libpng zlib imagemagick - pkgconfig libgsf libxml2; + pkgconfig libgsf libxml2 bzip2; inherit (gtkLibs) glib; }; @@ -1063,13 +1075,11 @@ rec { inherit fetchurl stdenv; }; - ocaml = import ../development/compilers/ocaml { - inherit fetchurl stdenv x11 ncurses; - }; + ocaml = getVersion "ocaml" ocaml_alts; - ocaml3080 = import ../development/compilers/ocaml/ocaml-3.08.0.nix { - inherit fetchurl x11; - stdenv = overrideGCC stdenv gcc34; + ocaml_alts = import ../development/compilers/ocaml { + inherit fetchurl stdenv x11 ncurses stdenvUsingSetupNew2; + stdenv34 = overrideGCC stdenv gcc34; }; /* @@ -1096,7 +1106,7 @@ rec { qcmm = import ../development/compilers/qcmm { lua = lua4; - ocaml = ocaml3080; + ocaml = ocaml_alts.v_3_08_0; inherit fetchurl stdenv mk noweb groff; }; @@ -1202,17 +1212,15 @@ rec { }; */ - python = import ../development/interpreters/python { - inherit fetchurl stdenv zlib bzip2; - }; + python = getVersion "python" python_alts; - python25 = import ../development/interpreters/python/2.5 { + python_alts = import ../development/interpreters/python { inherit fetchurl stdenv zlib bzip2; }; pyrexFun = lib.sumArgs (import ../development/interpreters/pyrex) { inherit fetchurl stdenv stringsWithDeps lib builderDefs; - python = python25; + python = python_alts.v_2_5; }; pyrex = pyrexFun { @@ -1605,13 +1613,9 @@ rec { inherit fetchurl stdenv python; }; - cluceneContrib = (import ../development/libraries/clucene-contrib) { - inherit fetchurl stdenv cluceneCore; - }; - - cluceneCore = (import ../development/libraries/clucene-core) { - inherit fetchurl stdenv; - }; + cluceneCore = (import ../development/libraries/clucene-core) { + inherit fetchurl stdenv; + }; coredumper = import ../development/libraries/coredumper { inherit fetchurl stdenv; @@ -1681,6 +1685,13 @@ rec { inherit fetchurl stdenv; }; + facile = import ../development/libraries/facile { + inherit fetchurl; + # Actually, we don't need this version but we need native-code compilation + ocaml = ocaml_alts.v_3_10_0; + stdenv = stdenvUsingSetupNew2; + }; + ffmpeg = import ../development/libraries/ffmpeg { inherit fetchurl stdenv; }; @@ -1939,7 +1950,7 @@ rec { }; libexif = import ../development/libraries/libexif { - inherit fetchurl stdenv; + inherit fetchurl stdenv gettext; }; libgcrypt = import ../development/libraries/libgcrypt { @@ -1951,7 +1962,7 @@ rec { }; libgphoto2 = import ../development/libraries/libgphoto2 { - inherit fetchurl stdenv pkgconfig libusb; + inherit fetchurl stdenv pkgconfig libusb libtool libexif libjpeg gettext; }; # commented out because it's using the new configuration style proposal which is unstable @@ -1960,8 +1971,9 @@ rec { #}; libgsf = import ../development/libraries/libgsf { - inherit fetchurl stdenv perl perlXMLParser pkgconfig libxml2 gettext; - inherit (gnome) glib; + inherit fetchurl stdenv perl perlXMLParser pkgconfig libxml2 gettext bzip2 + python; + inherit (gnome) glib gnomevfs libbonobo; }; libidn = import ../development/libraries/libidn { @@ -2044,7 +2056,7 @@ rec { }; libwpd = import ../development/libraries/libwpd { - inherit fetchurl stdenv pkgconfig libgsf libxml2; + inherit fetchurl stdenv pkgconfig libgsf libxml2 bzip2; inherit (gnome) glib; }; @@ -2145,7 +2157,7 @@ rec { }; openssl = import ../development/libraries/openssl { - inherit fetchurl stdenv perl gmp; + inherit fetchurl stdenv perl; }; pangoxsl = import ../development/libraries/pangoxsl { @@ -2244,12 +2256,6 @@ rec { inherit fetchurl stdenv; }; - strigi = import ../development/libraries/strigi { - inherit stdenv fetchurl zlib cluceneCore cluceneContrib expat bzip2 - pkgconfig cmake dbus libxml2 perl; - qt = qt4; - }; - t1lib = import ../development/libraries/t1lib { inherit fetchurl stdenv x11; inherit (xlibs) libXaw; @@ -2409,6 +2415,11 @@ rec { ### DEVELOPMENT / LIBRARIES / HASKELL + gtk2hs = import ../development/libraries/haskell/gtk2hs { + inherit pkgconfig stdenv fetchurl cairo; + inherit (gnome) gtk glib GConf libglade libgtkhtml gtkhtml; + ghc = ghc661; + }; uulib64 = import ../development/libraries/haskell/uulib { # !!! remove? inherit stdenv fetchurl ghc; @@ -3078,6 +3089,11 @@ rec { libselinux = import ../os-specific/linux/libselinux { inherit fetchurl stdenv libsepol; }; + + libsexy = import ../development/libraries/libsexy { + inherit stdenv fetchurl pkgconfig libxml2; + inherit (gtkLibs) glib gtk pango; + }; librsvg = import ../development/libraries/librsvg { inherit fetchurl stdenv; @@ -3128,6 +3144,11 @@ rec { inherit fetchurl stdenv; }; + libnotify = import ../development/libraries/libnotify { + inherit stdenv fetchurl pkgconfig dbus dbus_glib; + inherit (gtkLibs) gtk glib; + }; + libvolume_id = import ../os-specific/linux/libvolume_id { inherit fetchurl stdenv; }; @@ -3509,7 +3530,7 @@ rec { }; compiz = compizFun { - version = getConfig ["compiz" "version"] "0.5.0"; + version = getConfig ["compiz" "version"] "0.6.2"; extraConfigureFlags = getConfig ["compiz" "extraConfigureFlags"] []; } null; @@ -3578,11 +3599,9 @@ rec { inherit (xlibs) libX11; }; - /* - djview4 = import ../applications/graphics/djview4 { + djview4 = import ../applications/graphics/djview { inherit fetchurl stdenv qt4 djvulibre; }; - */ eclipse = plugins: import ../applications/editors/eclipse { @@ -3598,7 +3617,7 @@ rec { elinks = import ../applications/networking/browsers/elinks { inherit stdenv fetchurl python perl ncurses x11 zlib openssl spidermonkey - guile bzip2 libtool; + guile bzip2; }; emacs = emacs22; @@ -3720,7 +3739,7 @@ rec { } null; gphoto2 = import ../applications/misc/gphoto2 { - inherit fetchurl stdenv pkgconfig libgphoto2 libexif popt; + inherit fetchurl stdenv pkgconfig libgphoto2 libexif popt readline gettext; }; gqview = import ../applications/graphics/gqview { @@ -3789,6 +3808,11 @@ rec { inherit (gtkLibs) glib; }; + jedit = import ../applications/jedit { + inherit fetchurl ant; + stdenv = overrideSetup stdenv ../stdenv/generic/setup-new-2.sh; + }; + joe = import ../applications/editors/joe { inherit stdenv fetchurl; }; @@ -3961,7 +3985,7 @@ rec { pythonmagick = import ../applications/graphics/PythonMagick { inherit fetchurl stdenv pkgconfig imagemagick boost; - python = python25; + python = python_alts.v_2_5; }; ratpoison = import ../applications/window-managers/ratpoison { @@ -4344,71 +4368,28 @@ rec { qt = qt3; }; - kdelibs4 = import ../desktops/kde-4/kdelibs { + kde4 = recurseIntoAttrs (import ../desktops/kde-4 { inherit - fetchurl stdenv zlib perl openssl pcre pkgconfig - libjpeg libpng libtiff libxml2 libxslt libtool - expat freetype bzip2 cmake strigi shared_mime_info alsaLib libungif cups; - inherit (xlibs) - inputproto kbproto scrnsaverproto xextproto xf86miscproto - xf86vidmodeproto xineramaproto xproto libICE libX11 libXau libXcomposite - libXcursor libXdamage libXdmcp libXext libXfixes libXft libXi libXpm - libXrandr libXrender libXScrnSaver libXt libXtst libXv libXxf86misc - libxkbfile; + fetchurl fetchsvn zlib perl openssl pcre pkgconfig libjpeg libpng libtiff + libxml2 libxslt libtool libusb expat freetype bzip2 cmake cluceneCore libgcrypt gnupg + cppunit cyrus_sasl openldap enchant openexr exiv2 samba nss log4cxx aspell + shared_mime_info alsaLib libungif cups mesa boost gpgme gettext redland + xineLib libgphoto2 djvulibre libogg flac lame libvorbis poppler readline + saneBackends chmlib python libzip gmp sqlite libidn runCommand lib + openbabel ocaml facile; + stdenv = stdenvUsingSetupNew2; + cdparanoia = cdparanoiaIII; + inherit (xlibs) + inputproto kbproto scrnsaverproto xextproto xf86miscproto + xf86vidmodeproto xineramaproto xproto libICE libX11 libXau libXcomposite + libXcursor libXdamage libXdmcp libXext libXfixes libXft libXi libXpm + libXrandr libXrender libXScrnSaver libXt libXtst libXv libXxf86misc + libxkbfile libXinerama; + inherit (gtkLibs) glib; qt = qt4; - }; - - kdepimlibs4 = import ../desktops/kde-4/kdepimlibs { - inherit - fetchurl stdenv zlib perl openssl pcre pkgconfig - libjpeg libpng libtiff libxml2 libxslt libtool - expat freetype bzip2 cmake strigi shared_mime_info alsaLib libungif cups - boost gpgme; - inherit (xlibs) - inputproto kbproto scrnsaverproto xextproto xf86miscproto - xf86vidmodeproto xineramaproto xproto libICE libX11 libXau libXcomposite - libXcursor libXdamage libXdmcp libXext libXfixes libXft libXi libXpm - libXrandr libXrender libXScrnSaver libXt libXtst libXv libXxf86misc - libxkbfile; - qt = qt4; - kdelibs = kdelibs4; - }; - - kdepim4 = import ../desktops/kde-4/kdepim { - inherit - fetchurl stdenv zlib perl openssl pcre pkgconfig - libjpeg libpng libtiff libxml2 libxslt libtool libusb - expat freetype bzip2 cmake strigi shared_mime_info alsaLib libungif cups - mesa gpgme boost; - inherit (xlibs) - inputproto kbproto scrnsaverproto xextproto xf86miscproto - xf86vidmodeproto xineramaproto xproto libICE libX11 libXau libXcomposite - libXcursor libXdamage libXdmcp libXext libXfixes libXft libXi libXpm - libXrandr libXrender libXScrnSaver libXt libXtst libXv libXxf86misc - libxkbfile libXinerama; - inherit (gtkLibs) glib; - qt = qt4; - kdelibs = kdelibs4; - kdepimlibs = kdepimlibs4; - }; - - kdebase4 = import ../desktops/kde-4/kdebase { - inherit - fetchurl stdenv zlib perl openssl pcre pkgconfig - libjpeg libpng libtiff libxml2 libxslt libtool libusb - expat freetype bzip2 cmake strigi shared_mime_info alsaLib libungif cups - mesa; - inherit (xlibs) - inputproto kbproto scrnsaverproto xextproto xf86miscproto - xf86vidmodeproto xineramaproto xproto libICE libX11 libXau libXcomposite - libXcursor libXdamage libXdmcp libXext libXfixes libXft libXi libXpm - libXrandr libXrender libXScrnSaver libXt libXtst libXv libXxf86misc - libxkbfile libXinerama; - inherit (gtkLibs) glib; - qt = qt4; - kdelibs = kdelibs4; - kdepimlibs = kdepimlibs4; - }; + dbus = dbus_alts.withX11; + bison = bison23; + }); kdebase = import ../desktops/kde/kdebase { inherit @@ -4520,6 +4501,18 @@ rec { db4 = db45; }; + nixCustomFun = src: preConfigure: configureFlags : + (import ../tools/package-management/nix/custom.nix { + inherit fetchurl stdenv perl curl bzip2 openssl src preConfigure automake + autoconf libtool configureFlags; + bison = bison23; + flex = flex2533; + aterm = aterm242fixes; + db4 = db45; + inherit docbook5_xsl libxslt docbook5 docbook_xml_dtd_43 w3m; + + }); + ntfs3g = import ../misc/ntfs-3g { inherit fetchurl stdenv fuse pkgconfig; }; diff --git a/pkgs/top-level/builder-defs.nix b/pkgs/top-level/builder-defs.nix index 3337d6dc8a2..ae5224f7101 100644 --- a/pkgs/top-level/builder-defs.nix +++ b/pkgs/top-level/builder-defs.nix @@ -1,5 +1,5 @@ args: with args; with stringsWithDeps; with lib; -rec +(rec { inherit writeScript; @@ -12,30 +12,29 @@ rec else if (hasSuffixHack ".zip" s) || (hasSuffixHack ".ZIP" s) then "zip" else (abort "unknown archive type : ${s}")); - minInit = noDepEntry (" - set -e - NIX_GCC=${stdenv.gcc} - export SHELL=${stdenv.shell} - # Set up the initial path. - PATH= - for i in \$NIX_GCC ${toString stdenv.initialPath}; do - PATH=\$PATH\${PATH:+:}\$i/bin - done - " + (if ((stdenv ? preHook) && (stdenv.preHook != null) && - ((toString stdenv.preHook) != "")) then - " - param1=${stdenv.param1} - param2=${stdenv.param2} - param3=${stdenv.param3} - param4=${stdenv.param4} - param5=${stdenv.param5} - source ${stdenv.preHook} - - export TZ=UTC - - prefix=${if args ? prefix then (toString args.prefix) else "\$out"} + defAddToSearchPath = FullDepEntry (" + addToSearchPathWithCustomDelimiter() { + local delimiter=\$1 + local varName=\$2 + local needDir=\$3 + local addDir=\${4:-\$needDir} + local prefix=\$5 + if [ -d \$prefix\$needDir ]; then + if [ -z \${!varName} ]; then + eval export \${varName}=\${prefix}\$addDir + else + eval export \${varName}=\${!varName}\${delimiter}\${prefix}\$addDir + fi + fi + } + addToSearchPath() + { + addToSearchPathWithCustomDelimiter \"\${PATH_DELIMITER}\" \"\$@\" + } + ") [defNest]; + defNest = noDepEntry (" nestingLevel=0 startNest() { @@ -62,10 +61,33 @@ rec } trap \"closeNest\" EXIT + "); + minInit = FullDepEntry (" + set -e + NIX_GCC=${stdenv.gcc} + export SHELL=${stdenv.shell} + # Set up the initial path. + PATH= + for i in \$NIX_GCC ${toString stdenv.initialPath}; do + PATH=\$PATH\${PATH:+:}\$i/bin + done + " + (if ((stdenv ? preHook) && (stdenv.preHook != null) && + ((toString stdenv.preHook) != "")) then + " + param1=${stdenv.param1} + param2=${stdenv.param2} + param3=${stdenv.param3} + param4=${stdenv.param4} + param5=${stdenv.param5} + source ${stdenv.preHook} + + export TZ=UTC + + prefix=${if args ? prefix then (toString args.prefix) else "\$out"} " - else "")); + else "")) [defNest defAddToSearchPath]; addInputs = FullDepEntry (" # Recursively find all build inputs. @@ -243,8 +265,8 @@ rec replaceInScript = file: l: (concatStringsSep "\n" ((pairMap (replaceScriptVar file) l))); replaceScripts = l:(concatStringsSep "\n" (pairMap replaceInScript l)); doReplaceScripts = FullDepEntry (replaceScripts (getAttr ["shellReplacements"] [] args)) [minInit]; - makeNest = x:(if x==minInit.text then x else "startNest\n" + x + "\nstopNest\n"); + makeNest = x:(if x==defNest.text then x else "startNest\n" + x + "\nstopNest\n"); textClosure = textClosureMap makeNest; inherit noDepEntry FullDepEntry PackEntry; -} +}) // args