diff options
Diffstat (limited to 'pkgs/development')
37 files changed, 304 insertions, 118 deletions
diff --git a/pkgs/development/compilers/llvm/3.7/llvm.nix b/pkgs/development/compilers/llvm/3.7/llvm.nix index cc65c69927c5..ae9ba62a04ce 100644 --- a/pkgs/development/compilers/llvm/3.7/llvm.nix +++ b/pkgs/development/compilers/llvm/3.7/llvm.nix @@ -35,6 +35,18 @@ in stdenv.mkDerivation rec { propagatedBuildInputs = [ ncurses zlib ]; + # The goal here is to disable LLVM bindings (currently go and ocaml) regardless + # of whether the impure CMake search sheananigans find the compilers in global + # paths. This mostly exists because sandbox builds don't work very well on Darwin + # and sometimes you get weird behavior if CMake finds go in your system path. + # This would be far prettier if there were a CMake option to just disable bindings + # but from what I can tell, there isn't such a thing. The file in question only + # contains `if(WIN32)` conditions to check whether to disable bindings, so making + # those always succeed has the net effect of disabling all bindings. + prePatch = '' + substituteInPlace cmake/config-ix.cmake --replace "if(WIN32)" "if(1)" + ''; + # hacky fix: created binaries need to be run before installation preBuild = '' mkdir -p $out/ diff --git a/pkgs/development/compilers/pakcs/case-insensitive.patch b/pkgs/development/compilers/pakcs/case-insensitive.patch new file mode 100644 index 000000000000..e46558c25208 --- /dev/null +++ b/pkgs/development/compilers/pakcs/case-insensitive.patch @@ -0,0 +1,19 @@ +--- www/Makefile.orig 2016-10-10 21:04:36.000000000 +0300 ++++ pakcs-1.14.0/www/Makefile 2016-10-10 21:07:56.000000000 +0300 +@@ -6,7 +6,7 @@ all: submitform Registry + submitform: SubmitForm.curry $(LIBDIR)/HtmlCgi.curry \ + $(LIBDIR)/NamedSocket.curry $(LIBDIR)/CPNS.curry + $(REPL) $(REPL_OPTS) :load SubmitForm :save :q +- mv SubmitForm submitform ++ mv SubmitForm submitform.orig && mv submitform.orig submitform + + Registry: Registry.curry $(LIBDIR)/HtmlCgi.curry + $(REPL) $(REPL_OPTS) :load Registry :save :q +--- currytools/erd2curry/Makefile.orig 2016-10-10 21:13:49.000000000 +0300 ++++ pakcs-1.14.0/currytools/erd2curry/Makefile 2016-10-10 21:21:14.000000000 +0300 +@@ -32,4 +32,4 @@ uninstall: clean + erd2curry: $(DEPS) + # create saved state for top-level function "main": + $(REPL) $(REPL_OPTS) :load ERD2Curry :save "main \"$(CURDIR)\"" :q +- mv ERD2Curry $@ ++ mv ERD2Curry $@.orig && mv $@.orig $@ diff --git a/pkgs/development/compilers/pakcs/default.nix b/pkgs/development/compilers/pakcs/default.nix index 92b916ccb8e1..ca790d027e03 100644 --- a/pkgs/development/compilers/pakcs/default.nix +++ b/pkgs/development/compilers/pakcs/default.nix @@ -82,7 +82,10 @@ stdenv.mkDerivation rec { buildInputs = [ swiPrologLocked makeWrapper glibcLocales rlwrap tk which ]; - patches = [ ./adjust-buildsystem.patch ]; + patches = [ + ./adjust-buildsystem.patch + ./case-insensitive.patch + ]; configurePhase = '' # Phony HOME. @@ -151,6 +154,6 @@ stdenv.mkDerivation rec { ''; maintainers = [ stdenv.lib.maintainers.gnidorah ]; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; }; } diff --git a/pkgs/development/compilers/swi-prolog/default.nix b/pkgs/development/compilers/swi-prolog/default.nix index b6d6388c74b9..79f7e5256b21 100644 --- a/pkgs/development/compilers/swi-prolog/default.nix +++ b/pkgs/development/compilers/swi-prolog/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, gmp, readline, openssl, libjpeg, unixODBC, zlib , libXinerama, libXft, libXpm, libSM, libXt, freetype, pkgconfig -, fontconfig +, fontconfig, makeWrapper ? stdenv.isDarwin }: let @@ -15,7 +15,8 @@ stdenv.mkDerivation { }; buildInputs = [ gmp readline openssl libjpeg unixODBC libXinerama - libXft libXpm libSM libXt zlib freetype pkgconfig fontconfig ]; + libXft libXpm libSM libXt zlib freetype pkgconfig fontconfig ] + ++ stdenv.lib.optional stdenv.isDarwin makeWrapper; hardeningDisable = [ "format" ]; @@ -23,12 +24,24 @@ stdenv.mkDerivation { buildFlags = "world"; + # For macOS: still not fixed in upstream: "abort trap 6" when called + # through symlink, so wrap binary. + # We reinvent wrapProgram here but omit argv0 pass in order to not + # break PAKCS package build. This is also safe for SWI-Prolog, since + # there is no wrapping environment and hence no need to spoof $0 + postInstall = stdenv.lib.optionalString stdenv.isDarwin '' + local prog="$out/bin/swipl" + local hidden="$(dirname "$prog")/.$(basename "$prog")"-wrapped + mv $prog $hidden + makeWrapper $hidden $prog + ''; + meta = { homepage = http://www.swi-prolog.org/; description = "A Prolog compiler and interpreter"; license = "LGPL"; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; maintainers = [ stdenv.lib.maintainers.peti ]; }; } diff --git a/pkgs/development/interpreters/mujs/default.nix b/pkgs/development/interpreters/mujs/default.nix index 278191bf839f..b8359488725a 100644 --- a/pkgs/development/interpreters/mujs/default.nix +++ b/pkgs/development/interpreters/mujs/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchgit, clang }: stdenv.mkDerivation rec { - name = "mujs-2016-02-22"; + name = "mujs-2016-09-21"; src = fetchgit { url = git://git.ghostscript.com/mujs.git; - rev = "624f975aae6b451e35406d8cdde808626052ce2c"; - sha256 = "0cab7x73v380wklpkbrc1k4iyh4q2jyx3zxbymlfi1spmrpn6skl"; + rev = "5c337af4b3df80cf967e4f9f6a21522de84b392a"; + sha256 = "1x5g6nycggc83md2dbr2nahjbkkmmn64bg25a8hih7z72sw41dgw"; }; buildInputs = [ clang ]; diff --git a/pkgs/development/libraries/clutter-gst/default.nix b/pkgs/development/libraries/clutter-gst/default.nix index c2bec3a7f1de..41c7f8db6d26 100644 --- a/pkgs/development/libraries/clutter-gst/default.nix +++ b/pkgs/development/libraries/clutter-gst/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { major = "3.0"; - minor = "18"; + minor = "20"; name = "clutter-gst-${major}.${minor}"; src = fetchurl { url = "mirror://gnome/sources/clutter-gst/${major}/${name}.tar.xz"; - sha256 = "14w0pi9myvcn1yxzmk9sk8dghj17m5ji3aqdpfjikk90c060vv0a"; + sha256 = "1jb6q0f6vbh8nskz88siny70pm43wbnw2wzr2klsyb9axn3if0d0"; }; propagatedBuildInputs = [ clutter gtk3 glib cogl ]; diff --git a/pkgs/development/libraries/clutter-gtk/default.nix b/pkgs/development/libraries/clutter-gtk/default.nix index a126f7709449..ef2ac6f93853 100644 --- a/pkgs/development/libraries/clutter-gtk/default.nix +++ b/pkgs/development/libraries/clutter-gtk/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { major = "1.8"; - minor = "0"; + minor = "2"; name = "clutter-gtk-${major}.${minor}"; src = fetchurl { url = "mirror://gnome/sources/clutter-gtk/${major}/${name}.tar.xz"; - sha256 = "07dzvx0b3fsswxnpxgk0adjgccnrvbxsd971naqwndnfivbgjbkl"; + sha256 = "da27d486325490ad3f65d2abf9413aeb8b4a8f7b559e4b2f73567a5344a26b94"; }; propagatedBuildInputs = [ clutter gtk3 ]; diff --git a/pkgs/development/libraries/fontconfig/default.nix b/pkgs/development/libraries/fontconfig/default.nix index 550ec2bf5c31..0130ee2a014b 100644 --- a/pkgs/development/libraries/fontconfig/default.nix +++ b/pkgs/development/libraries/fontconfig/default.nix @@ -16,20 +16,14 @@ let configVersion = "2.11"; # bump whenever fontconfig breaks compatibility with older configurations in stdenv.mkDerivation rec { - name = "fontconfig-2.11.1"; + name = "fontconfig-2.12.1"; src = fetchurl { url = "http://fontconfig.org/release/${name}.tar.bz2"; - sha256 = "16baa4g5lswkyjlyf1h5lwc0zjap7c4d8grw79349a5w6dsl8qnw"; + sha256 = "1wy7svvp7df6bjpg1m5vizb3ngd7rhb20vpclv3x3qa71khs6jdl"; }; patches = [ - (fetchpatch ({ - url = "http://cgit.freedesktop.org/fontconfig/patch/?id=f44157c809d280e2a0ce87fb078fc4b278d24a67"; - sha256 = "19s5irclg4irj2yxd7xw9yikbazs9263px8qbv4r21asw06nfalv"; - name = "fc-cache-bug-77252.patch"; - } - )) (substituteAll { src = ./config-compat.patch; inherit configVersion; diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix index 85446aae8ca9..f3db9bf59776 100644 --- a/pkgs/development/libraries/gdk-pixbuf/default.nix +++ b/pkgs/development/libraries/gdk-pixbuf/default.nix @@ -2,7 +2,7 @@ , jasper, libintlOrEmpty, gobjectIntrospection, doCheck ? false }: let - ver_maj = "2.34"; + ver_maj = "2.36"; ver_min = "0"; in stdenv.mkDerivation rec { @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gdk-pixbuf/${ver_maj}/${name}.tar.xz"; - sha256 = "0yc8indbl3hf18z6x6kjg59xp9sngm1d8vmz4c7bs6g27qw5npnm"; + sha256 = "85ab52ce9f2c26327141b3dcf21cca3da6a3f8de84b95fa1e727d8871a23245c"; }; outputs = [ "out" "dev" "devdoc" ]; diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index c47a02ef5e47..710b65509959 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -43,7 +43,7 @@ let ''; ver_maj = "2.50"; - ver_min = "0"; + ver_min = "1"; in stdenv.mkDerivation rec { @@ -51,7 +51,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/glib/${ver_maj}/${name}.tar.xz"; - sha256 = "830b551fa626bda06e12729205b3c5bb0d82b924a8cf64d948945878f01b7d70"; + sha256 = "2ef87a78f37c1eb5b95f4cc95efd5b66f69afad9c9c0899918d04659cf6df7dd"; }; patches = optional stdenv.isDarwin ./darwin-compilation.patch ++ optional doCheck ./skip-timer-test.patch; diff --git a/pkgs/development/libraries/gtkmm/2.x.nix b/pkgs/development/libraries/gtkmm/2.x.nix index 422fdebd9c86..119e3f77f670 100644 --- a/pkgs/development/libraries/gtkmm/2.x.nix +++ b/pkgs/development/libraries/gtkmm/2.x.nix @@ -1,16 +1,14 @@ { stdenv, fetchurl, pkgconfig, gtk2, glibmm, cairomm, pangomm, atkmm }: stdenv.mkDerivation rec { - name = "gtkmm-${minVer}.4"; + name = "gtkmm-${minVer}.5"; minVer = "2.24"; src = fetchurl { url = "mirror://gnome/sources/gtkmm/${minVer}/${name}.tar.xz"; - sha256 = "1vpmjqv0aqb1ds0xi6nigxnhlr0c74090xzi15b92amlzkrjyfj4"; + sha256 = "0680a53b7bf90b4e4bf444d1d89e6df41c777e0bacc96e9c09fc4dd2f5fe6b72"; }; - patches = [ ./gtkmm-2.24.4-missing-operator.patch ]; - nativeBuildInputs = [pkgconfig]; propagatedBuildInputs = [ glibmm gtk2 atkmm cairomm pangomm ]; diff --git a/pkgs/development/libraries/gtkmm/gtkmm-2.24.4-missing-operator.patch b/pkgs/development/libraries/gtkmm/gtkmm-2.24.4-missing-operator.patch deleted file mode 100644 index c1e8cf59dde1..000000000000 --- a/pkgs/development/libraries/gtkmm/gtkmm-2.24.4-missing-operator.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gtkmm-2.24.4/gtk/gtkmm/menushell.cc.orig 2016-08-26 21:55:08.858311055 +0000 -+++ gtkmm-2.24.4/gtk/gtkmm/menushell.cc 2016-08-26 21:55:33.206310578 +0000 -@@ -130,7 +130,7 @@ MenuList::iterator MenuList::insert(Menu - { - const Glib::RefPtr<Gtk::MenuItem> item = element.get_child(); - -- g_return_val_if_fail(item != 0, position); -+ g_return_val_if_fail(!!item, position); - g_return_val_if_fail(gparent() != 0, position); - - int pos = -1; \ No newline at end of file diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix index 5ef8bbac5d16..f225f34c3364 100644 --- a/pkgs/development/libraries/gvfs/default.nix +++ b/pkgs/development/libraries/gvfs/default.nix @@ -1,19 +1,19 @@ { stdenv, fetchurl, pkgconfig, intltool, libtool -, glib, dbus, udev, libgudev, udisks2, libgcrypt +, glib, dbus, udev, libgudev, udisks2, libgcrypt, libcap, polkit , libgphoto2, avahi, libarchive, fuse, libcdio , libxml2, libxslt, docbook_xsl, samba, libmtp -, gnomeSupport ? false, gnome, libgnome_keyring, makeWrapper }: +, gnomeSupport ? false, gnome, makeWrapper }: let - ver_maj = "1.22"; - version = "${ver_maj}.4"; + ver_maj = "1.30"; + version = "${ver_maj}.1"; in stdenv.mkDerivation rec { name = "gvfs-${version}"; src = fetchurl { url = "mirror://gnome/sources/gvfs/${ver_maj}/${name}.tar.xz"; - sha256 = "57e33faad35aba72be3822099856aca847f391626cf3ec734b42e64ba31f6484"; + sha256 = "e752e7bb46e64e4025f63428d4f5247e3e5c0d0b5eeb4f81dbf1cd7b75f59d7b"; }; nativeBuildInputs = [ pkgconfig intltool libtool ]; @@ -21,13 +21,15 @@ stdenv.mkDerivation rec { buildInputs = [ makeWrapper glib dbus udev libgudev udisks2 libgcrypt libgphoto2 avahi libarchive fuse libcdio - libxml2 libxslt docbook_xsl samba libmtp + libxml2 libxslt docbook_xsl samba libmtp libcap polkit # ToDo: a ligther version of libsoup to have FTP/HTTP support? ] ++ stdenv.lib.optionals gnomeSupport (with gnome; [ - gtk libsoup libgnome_keyring gconf + gtk libsoup libgnome_keyring gconf gcr # ToDo: not working and probably useless until gnome3 from x-updates ]); + configureFlags = stdenv.lib.optional (!gnomeSupport) "--disable-gcr"; + enableParallelBuilding = true; # ToDo: one probably should specify schemas for samba and others here diff --git a/pkgs/development/libraries/libcue/default.nix b/pkgs/development/libraries/libcue/default.nix index a5ff8d409b2f..a1639397b5ea 100644 --- a/pkgs/development/libraries/libcue/default.nix +++ b/pkgs/development/libraries/libcue/default.nix @@ -1,12 +1,19 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchFromGitHub, cmake, bison, flex }: stdenv.mkDerivation rec { - name = "libcue-1.4.0"; - src = fetchurl { - url = "mirror://sourceforge/libcue/${name}.tar.bz2"; - sha256 = "17kjd7rjz1bvfn44n3n2bjb7a1ywd0yc0g4sqp5ihf9b5bn7cwlb"; + name = "libcue-${version}"; + version = "2.1.0"; + + src = fetchFromGitHub { + owner = "lipnitsk"; + repo = "libcue"; + rev = "v${version}"; + sha256 = "14a84d6sq3yp8s8i05lxvifjpkgpjwfpchrqf3bbpbwa8gvrc0rj"; }; + + nativeBuildInputs = [ cmake bison flex ]; + meta = { - description = "A library to parse a cue sheet"; + description = "CUE Sheet Parser Library"; longDescription = '' libcue is intended to parse a so called cue sheet from a char string or a file pointer. For handling of the parsed data a convenient API is diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix index 64cfb7d56cac..f2174470becf 100644 --- a/pkgs/development/libraries/libdrm/default.nix +++ b/pkgs/development/libraries/libdrm/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, udev, valgrind }: stdenv.mkDerivation rec { - name = "libdrm-2.4.70"; + name = "libdrm-2.4.71"; src = fetchurl { url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2"; - sha256 = "b17d4b39ed97ca0e4cffa0db06ff609e617bac94646ec38e8e0579d530540e7b"; + sha256 = "c66287ddeee5f46ea8f8880b94b80acb3bbc33ba6321d17767eef145046df9b8"; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/libmikmod/default.nix b/pkgs/development/libraries/libmikmod/default.nix index 806f0e9cd824..f6dc4b862921 100644 --- a/pkgs/development/libraries/libmikmod/default.nix +++ b/pkgs/development/libraries/libmikmod/default.nix @@ -4,10 +4,10 @@ let inherit (stdenv.lib) optional optionals optionalString; in stdenv.mkDerivation rec { - name = "libmikmod-3.3.7"; + name = "libmikmod-3.3.10"; src = fetchurl { url = "mirror://sourceforge/mikmod/${name}.tar.gz"; - sha256 = "18nrkf5l50hfg0y50yxr7bvik9f002lhn8c00nbcp6dgm5011x2c"; + sha256 = "0j7g4jpa2zgzw7x6s3rldypa7zlwjvn97rwx0sylx1iihhlzbcq0"; }; buildInputs = [ texinfo ] diff --git a/pkgs/development/libraries/libmpcdec/default.nix b/pkgs/development/libraries/libmpcdec/default.nix index 64cf460d75a0..084d7ba73704 100644 --- a/pkgs/development/libraries/libmpcdec/default.nix +++ b/pkgs/development/libraries/libmpcdec/default.nix @@ -1,13 +1,16 @@ -{stdenv, fetchurl}: +{ stdenv, fetchurl }: stdenv.mkDerivation { name = "libmpcdec-1.2.6"; + src = fetchurl { url = http://files.musepack.net/source/libmpcdec-1.2.6.tar.bz2; - md5 = "7f7a060e83b4278acf4b77d7a7b9d2c0"; + sha256 = "1a0jdyga1zfi4wgkg3905y6inghy3s4xfs5m4x7pal08m0llkmab"; }; meta = { + description = "Musepack SV7 decoder library"; platforms = stdenv.lib.platforms.unix; + license = stdenv.lib.licenses.bsd3; }; } diff --git a/pkgs/development/libraries/libsamplerate/default.nix b/pkgs/development/libraries/libsamplerate/default.nix index d7cb741a042a..faeeb34d65dd 100644 --- a/pkgs/development/libraries/libsamplerate/default.nix +++ b/pkgs/development/libraries/libsamplerate/default.nix @@ -4,20 +4,18 @@ let inherit (stdenv.lib) optionals optionalString; in stdenv.mkDerivation rec { - name = "libsamplerate-0.1.8"; + name = "libsamplerate-0.1.9"; src = fetchurl { url = "http://www.mega-nerd.com/SRC/${name}.tar.gz"; - sha256 = "01hw5xjbjavh412y63brcslj5hi9wdgkjd3h9csx5rnm8vglpdck"; + sha256 = "1ha46i0nbibq0pl0pjwcqiyny4hj8lp1bnl4dpxm64zjw9lb2zha"; }; nativeBuildInputs = [ pkgconfig ]; buildInputs = [ libsndfile ] ++ optionals stdenv.isDarwin [ ApplicationServices CoreServices ]; - # maybe interesting configure flags: - #--disable-fftw disable usage of FFTW - #--disable-cpu-clip disable tricky cpu specific clipper + configureFlags = [ "--disable-fftw" ]; outputs = [ "bin" "dev" "out" ]; diff --git a/pkgs/development/libraries/libsodium/default.nix b/pkgs/development/libraries/libsodium/default.nix index b0bef6149d55..e0ad21008046 100644 --- a/pkgs/development/libraries/libsodium/default.nix +++ b/pkgs/development/libraries/libsodium/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "libsodium-1.0.10"; + name = "libsodium-1.0.11"; src = fetchurl { url = "https://download.libsodium.org/libsodium/releases/${name}.tar.gz"; - sha256 = "1gn45g956lyz8l6iq187yc6l627vyivyp8qc5dkr6dnhdnlqddvi"; + sha256 = "0rf7z6bgpnf8lyz8sph4h43fbb28pmj4dgybf0hsxxj97kdljid1"; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/libsoup/default.nix b/pkgs/development/libraries/libsoup/default.nix index 707129a16bb7..1489ab627742 100644 --- a/pkgs/development/libraries/libsoup/default.nix +++ b/pkgs/development/libraries/libsoup/default.nix @@ -4,15 +4,15 @@ , libintlOrEmpty , intltool, python }: let - majorVersion = "2.54"; - version = "${majorVersion}.1"; + majorVersion = "2.56"; + version = "${majorVersion}.0"; in stdenv.mkDerivation { name = "libsoup-${version}"; src = fetchurl { url = "mirror://gnome/sources/libsoup/${majorVersion}/libsoup-${version}.tar.xz"; - sha256 = "0cyn5pq4xl1gb8413h2p4d5wrn558dc054zhwmk4swrl40ijrd27"; + sha256 = "d8216b71de8247bc6f274ec054c08547b2e04369c1f8add713e9350c8ef81fe5"; }; prePatch = '' diff --git a/pkgs/development/libraries/libuecc/default.nix b/pkgs/development/libraries/libuecc/default.nix new file mode 100644 index 000000000000..3b45d4de8842 --- /dev/null +++ b/pkgs/development/libraries/libuecc/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchgit, cmake }: + +stdenv.mkDerivation rec { + version = "7"; + name = "libuecc-${version}"; + + src = fetchgit { + url = "git://git.universe-factory.net/libuecc"; + rev = "refs/tags/v${version}"; + sha256 = "1sm05aql75sh13ykgsv3ns4x4zzw9lvzid6misd22gfgf6r9n5fs"; + }; + + buildInputs = [ cmake ]; + + enableParallelBuilding = true; + + meta = with stdenv.lib; { + description = "Very small Elliptic Curve Cryptography library"; + homepage = https://git.universe-factory.net/libuecc; + license = licenses.bsd2; + platforms = platforms.unix; + maintainers = with maintainers; [ fpletz ]; + }; +} diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index ea89bb859e5f..6aefc8b79723 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -19,6 +19,7 @@ let patches = (args.patches or []) + ++ [ ./nix-ssl-cert-file.patch ] ++ optional (versionOlder version "1.1.0") ./use-etc-ssl-certs.patch ++ optional stdenv.isCygwin ./1.0.1-cygwin64.patch ++ optional diff --git a/pkgs/development/libraries/openssl/nix-ssl-cert-file.patch b/pkgs/development/libraries/openssl/nix-ssl-cert-file.patch new file mode 100644 index 000000000000..4b3c6f458b4c --- /dev/null +++ b/pkgs/development/libraries/openssl/nix-ssl-cert-file.patch @@ -0,0 +1,15 @@ +diff -ru -x '*~' openssl-1.0.2j-orig/crypto/x509/by_file.c openssl-1.0.2j/crypto/x509/by_file.c +--- openssl-1.0.2j-orig/crypto/x509/by_file.c 2016-09-26 11:49:07.000000000 +0200 ++++ openssl-1.0.2j/crypto/x509/by_file.c 2016-10-13 16:54:31.400288302 +0200 +@@ -97,7 +97,10 @@ + switch (cmd) { + case X509_L_FILE_LOAD: + if (argl == X509_FILETYPE_DEFAULT) { +- file = (char *)getenv(X509_get_default_cert_file_env()); ++ file = (char *)getenv("NIX_SSL_CERT_FILE"); ++ if (!file) ++ file = (char *)getenv(X509_get_default_cert_file_env()); ++ fprintf(stderr, "OPEN %s", file); + if (file) + ok = (X509_load_cert_crl_file(ctx, file, + X509_FILETYPE_PEM) != 0); diff --git a/pkgs/development/libraries/pangomm/default.nix b/pkgs/development/libraries/pangomm/default.nix index 0de99ece5c43..6850c13b44e9 100644 --- a/pkgs/development/libraries/pangomm/default.nix +++ b/pkgs/development/libraries/pangomm/default.nix @@ -2,14 +2,14 @@ let ver_maj = "2.40"; - ver_min = "0"; + ver_min = "1"; in stdenv.mkDerivation rec { name = "pangomm-${ver_maj}.${ver_min}"; src = fetchurl { url = "mirror://gnome/sources/pangomm/${ver_maj}/${name}.tar.xz"; - sha256 = "03fpqdjp7plybf4zsgszbm8yhgl28vmajzfpmaqcsmyfvjlszl3x"; + sha256 = "9762ee2a2d5781be6797448d4dd2383ce14907159b30bc12bf6b08e7227be3af"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/development/libraries/unixODBC/default.nix b/pkgs/development/libraries/unixODBC/default.nix index e40f362a3b10..99ab8a056162 100644 --- a/pkgs/development/libraries/unixODBC/default.nix +++ b/pkgs/development/libraries/unixODBC/default.nix @@ -15,6 +15,6 @@ stdenv.mkDerivation rec { description = "ODBC driver manager for Unix"; homepage = http://www.unixodbc.org/; license = licenses.lgpl2; - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/vaapi-intel/default.nix b/pkgs/development/libraries/vaapi-intel/default.nix index 0bc3c196c460..922aed61ed6d 100644 --- a/pkgs/development/libraries/vaapi-intel/default.nix +++ b/pkgs/development/libraries/vaapi-intel/default.nix @@ -3,11 +3,11 @@ }: stdenv.mkDerivation rec { - name = "libva-intel-driver-1.7.0"; + name = "libva-intel-driver-1.7.2"; src = fetchurl { url = "http://www.freedesktop.org/software/vaapi/releases/libva-intel-driver/${name}.tar.bz2"; - sha256 = "032w8d0whymi5ac8fk7c5d8nnxxsjgwymw644g7gp959i73xc6cx"; + sha256 = "1g371q9p31i57fkidjp2akvrbaadpyx3bwmg5kn72sc2mbv7p7h9"; }; patchPhase = '' diff --git a/pkgs/development/libraries/zeroc-ice/default.nix b/pkgs/development/libraries/zeroc-ice/default.nix index 144af122d73f..33c30a96251d 100644 --- a/pkgs/development/libraries/zeroc-ice/default.nix +++ b/pkgs/development/libraries/zeroc-ice/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "zeroc-ice-${version}"; - version = "3.6.1"; + version = "3.6.3"; src = fetchFromGitHub { owner = "zeroc-ice"; repo = "ice"; rev = "v${version}"; - sha256 = "044511zbhwiach1867r3xjz8i4931wn7c1l3nz4kcpgks16kqhhz"; + sha256 = "05xympbns32aalgcfcpxwfd7bvg343f16xpg6jv5s335ski3cjy2"; }; buildInputs = [ mcpp bzip2 expat openssl db5 ]; diff --git a/pkgs/development/r-modules/README.md b/pkgs/development/r-modules/README.md index 3a88f45b4ccb..e384b375460a 100644 --- a/pkgs/development/r-modules/README.md +++ b/pkgs/development/r-modules/README.md @@ -29,6 +29,30 @@ profile. The set of available libraries can be discovered by running the command `nix-env -f "<nixpkgs>" -qaP -A rPackages`. The first column from that output is the name that has to be passed to rWrapper in the code snipped above. +However, if you'd like to add a file to your project source to make the +environment available for other contributors, you can create a `default.nix` +file like so: +```nix +let + pkgs = import <nixpkgs> {}; + stdenv = pkgs.stdenv; +in with pkgs; { + myProject = stdenv.mkDerivation { + name = "myProject"; + version = "1"; + src = if pkgs.lib.inNixShell then null else nix; + + buildInputs = with rPackages; [ + R + ggplot2 + knitr + ]; + }; +} +``` +and then run `nix-shell .` to be dropped into a shell with those packages +available. + ## Updating the package set ```bash diff --git a/pkgs/development/ruby-modules/bundler-env/default.nix b/pkgs/development/ruby-modules/bundler-env/default.nix index 56a3b371d1dc..57ca23d41436 100644 --- a/pkgs/development/ruby-modules/bundler-env/default.nix +++ b/pkgs/development/ruby-modules/bundler-env/default.nix @@ -6,7 +6,14 @@ , tree }@defs: -{ name, gemset, gemfile, lockfile, ruby ? defs.ruby, gemConfig ? defaultGemConfig +{ name ? null +, pname ? null +, gemdir ? null +, gemfile ? null +, lockfile ? null +, gemset ? null +, ruby ? defs.ruby +, gemConfig ? defaultGemConfig , postBuild ? null , document ? [] , meta ? {} @@ -16,54 +23,95 @@ }@args: let - importedGemset = import gemset; + drvName = + if name != null then name + else if pname != null then "${toString pname}-${mainGem.version}" + else throw "bundlerEnv: either pname or name must be set"; + + mainGem = + if pname == null then null + else gems."${pname}" or (throw "bundlerEnv: gem ${pname} not found"); + + gemfile' = + if gemfile == null then gemdir + "/Gemfile" + else gemfile; + + lockfile' = + if lockfile == null then gemdir + "/Gemfile.lock" + else lockfile; + + gemset' = + if gemset == null then gemdir + "/gemset.nix" + else gemset; + + importedGemset = import gemset'; + filteredGemset = (lib.filterAttrs (name: attrs: if (builtins.hasAttr "groups" attrs) then (builtins.any (gemGroup: builtins.any (group: group == gemGroup) groups) attrs.groups) else true ) importedGemset); + applyGemConfigs = attrs: (if gemConfig ? "${attrs.gemName}" then attrs // gemConfig."${attrs.gemName}" attrs else attrs); + configuredGemset = lib.flip lib.mapAttrs filteredGemset (name: attrs: applyGemConfigs (attrs // { inherit ruby; gemName = name; }) ); + hasBundler = builtins.hasAttr "bundler" filteredGemset; - bundler = if hasBundler then gems.bundler else defs.bundler.override (attrs: { inherit ruby; }); + + bundler = + if hasBundler then gems.bundler + else defs.bundler.override (attrs: { inherit ruby; }); + gems = lib.flip lib.mapAttrs configuredGemset (name: attrs: buildRubyGem ((removeAttrs attrs ["source"]) // attrs.source // { inherit ruby; gemName = name; gemPath = map (gemName: gems."${gemName}") (attrs.dependencies or []); })); + # We have to normalize the Gemfile.lock, otherwise bundler tries to be # helpful by doing so at run time, causing executables to immediately bail # out. Yes, I'm serious. confFiles = runCommand "gemfile-and-lockfile" {} '' mkdir -p $out - cp ${gemfile} $out/Gemfile - cp ${lockfile} $out/Gemfile.lock + cp ${gemfile'} $out/Gemfile + cp ${lockfile'} $out/Gemfile.lock ''; + envPaths = lib.attrValues gems ++ lib.optional (!hasBundler) bundler; + + binPaths = if mainGem != null then [ mainGem ] else envPaths; + bundlerEnv = buildEnv { - inherit name ignoreCollisions; + inherit ignoreCollisions; + + name = drvName; + paths = envPaths; pathsToLink = [ "/lib" ]; + postBuild = '' ${ruby}/bin/ruby ${./gen-bin-stubs.rb} \ "${ruby}/bin/ruby" \ "${confFiles}/Gemfile" \ "$out/${ruby.gemPath}" \ "${bundler}/${ruby.gemPath}" \ - ${lib.escapeShellArg envPaths} \ + ${lib.escapeShellArg binPaths} \ ${lib.escapeShellArg groups} '' + lib.optionalString (postBuild != null) postBuild; + + meta = { platforms = ruby.meta.platforms; } // meta; + passthru = rec { - inherit ruby bundler meta gems; + inherit ruby bundler gems; wrappedRuby = stdenv.mkDerivation { - name = "wrapped-ruby-${name}"; + name = "wrapped-ruby-${drvName}"; nativeBuildInputs = [ makeWrapper ]; buildCommand = '' mkdir -p $out/bin @@ -87,7 +135,7 @@ let require 'bundler/setup' ''; in stdenv.mkDerivation { - name = "interactive-${name}-environment"; + name = "interactive-${drvName}-environment"; nativeBuildInputs = [ wrappedRuby bundlerEnv ]; shellHook = '' export OLD_IRBRC="$IRBRC" @@ -102,7 +150,5 @@ let }; }; }; - in - -bundlerEnv + bundlerEnv diff --git a/pkgs/development/tools/misc/gdb/default.nix b/pkgs/development/tools/misc/gdb/default.nix index 60218bbb1ad4..da0447c49da8 100644 --- a/pkgs/development/tools/misc/gdb/default.nix +++ b/pkgs/development/tools/misc/gdb/default.nix @@ -43,6 +43,9 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + # darwin build fails with format hardening since v7.12 + hardeningDisable = stdenv.lib.optionals stdenv.isDarwin [ "format" ]; + configureFlags = with stdenv.lib; [ "--with-gmp=${gmp.dev}" "--with-mpfr=${mpfr.dev}" "--with-system-readline" "--with-system-zlib" "--with-expat" "--with-libexpat-prefix=${expat.dev}" diff --git a/pkgs/development/tools/misc/intel-gpu-tools/default.nix b/pkgs/development/tools/misc/intel-gpu-tools/default.nix index 3d3e457781ad..5ecc0421c361 100644 --- a/pkgs/development/tools/misc/intel-gpu-tools/default.nix +++ b/pkgs/development/tools/misc/intel-gpu-tools/default.nix @@ -2,11 +2,11 @@ , libX11, libXext, libXv, libXrandr, glib, bison, libunwind, python3 }: stdenv.mkDerivation rec { - name = "intel-gpu-tools-1.14"; + name = "intel-gpu-tools-1.16"; src = fetchurl { url = "http://xorg.freedesktop.org/archive/individual/app/${name}.tar.bz2"; - sha256 = "030g1akybk19y3jcxd8pp573ymrd4w7mmzxbspp064lwdv9y35im"; + sha256 = "1q9sfb15081zm1rq4z67sfj13ryvbdha4fa6pdzdsfd9261nvgn6"; }; buildInputs = [ pkgconfig libdrm libpciaccess cairo dri2proto udev libX11 diff --git a/pkgs/development/tools/misc/intltool/default.nix b/pkgs/development/tools/misc/intltool/default.nix index 4ab9fa284915..e59e4c23776d 100644 --- a/pkgs/development/tools/misc/intltool/default.nix +++ b/pkgs/development/tools/misc/intltool/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { patches = [(fetchpatch { name = "perl-5.22.patch"; url = "https://anonscm.debian.org/viewvc/pkg-gnome/desktop/unstable/intltool" - + "/debian/patches/perl5.22-regex-fixes?revision=47255&view=co"; + + "/debian/patches/perl5.22-regex-fixes?revision=47258&view=co"; sha256 = "17clqczb9fky7hp8czxa0fy82b5478irvz4f3fnans3sqxl95hx3"; })]; diff --git a/pkgs/development/tools/misc/travis/default.nix b/pkgs/development/tools/misc/travis/default.nix index adc63ce7c43f..9e7d6e3c6064 100644 --- a/pkgs/development/tools/misc/travis/default.nix +++ b/pkgs/development/tools/misc/travis/default.nix @@ -1,29 +1,14 @@ -{ stdenv, lib, bundlerEnv, ruby }: +{ lib, bundlerEnv, ruby }: -stdenv.mkDerivation rec { - name = "travis-${version}"; - version = env.gems.travis.version; - - env = bundlerEnv { - inherit ruby; - name = "${name}-gems"; - gemset = ./gemset.nix; - gemfile = ./Gemfile; - lockfile = ./Gemfile.lock; - }; - - phases = ["installPhase"]; - - installPhase = '' - mkdir -p $out/bin - ln -s ${env}/bin/travis $out/bin/travis - ''; +bundlerEnv { + inherit ruby; + pName = "travis"; + gemdir = ./.; meta = with lib; { description = "CLI and Ruby client library for Travis CI"; homepage = https://github.com/travis-ci/travis.rb; license = licenses.mit; maintainers = with maintainers; [ zimbatm ]; - platforms = ruby.meta.platforms; }; } diff --git a/pkgs/development/tools/xcbuild/default.nix b/pkgs/development/tools/xcbuild/default.nix new file mode 100644 index 000000000000..e313672aea3f --- /dev/null +++ b/pkgs/development/tools/xcbuild/default.nix @@ -0,0 +1,43 @@ +{ stdenv, cmake, fetchFromGitHub, zlib, libxml2, libpng, CoreServices, CoreGraphics, ImageIO }: + +let + googletest = fetchFromGitHub { + owner = "google"; + repo = "googletest"; + rev = "43359642a1c16ad3f4fc575c7edd0cb935810815"; + sha256 = "0y4xaah62fjr3isaryc3vfz3mn9xflr00vchdimj8785milxga4q"; + }; + + linenoise = fetchFromGitHub { + owner = "antirez"; + repo = "linenoise"; + rev = "c894b9e59f02203dbe4e2be657572cf88c4230c3"; + sha256 = "0wasql7ph5g473zxhc2z47z3pjp42q0dsn4gpijwzbxawid71b4w"; + }; +in stdenv.mkDerivation rec { + name = "xcbuild-${stdenv.lib.substring 0 8 version}"; + version = "49f8a5923f1381f87ac03ad4c1b138d1d2b74369"; + + src = fetchFromGitHub { + owner = "facebook"; + repo = "xcbuild"; + rev = version; + sha256 = "0l107xkh7dab2xc58dqyrrhpd1gp12cpzh0wrx0i9jbh0idbwnk0"; + }; + + prePatch = '' + rmdir ThirdParty/* + cp -r --no-preserve=all ${googletest} ThirdParty/googletest + cp -r --no-preserve=all ${linenoise} ThirdParty/linenoise + ''; + + enableParallelBuilding = true; + + # TODO: instruct cmake not to put it in /usr, rather than cleaning up + postInstall = '' + mv $out/usr/* $out + rmdir $out/usr + ''; + + buildInputs = [ cmake zlib libxml2 libpng CoreServices CoreGraphics ImageIO ]; +} \ No newline at end of file diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix index c10fe99f74a9..6cf73fd22b64 100644 --- a/pkgs/development/web/nodejs/nodejs.nix +++ b/pkgs/development/web/nodejs/nodejs.nix @@ -6,7 +6,8 @@ , preBuild ? "" , extraConfigFlags ? [] , extraBuildInputs ? [] -, ... +, patches ? [], + ... }: assert stdenv.system != "armv5tel-linux"; @@ -44,7 +45,7 @@ in stdenv.mkDerivation { PATH=$out/bin:$PATH patchShebangs $out ''; - patches = stdenv.lib.optionals stdenv.isDarwin [ ./no-xcode.patch ]; + patches = patches ++ stdenv.lib.optionals stdenv.isDarwin [ ./no-xcode.patch ]; buildInputs = extraBuildInputs ++ [ python which zlib libuv openssl ] diff --git a/pkgs/development/web/nodejs/v4.nix b/pkgs/development/web/nodejs/v4.nix index fa22f9d54c5c..d0e2494cd305 100644 --- a/pkgs/development/web/nodejs/v4.nix +++ b/pkgs/development/web/nodejs/v4.nix @@ -4,9 +4,9 @@ }@args: import ./nodejs.nix (args // rec { - version = "4.4.6"; + version = "4.6.0"; src = fetchurl { url = "http://nodejs.org/dist/v${version}/node-v${version}.tar.xz"; - sha256 = "0f6bbfbea525469c91932b1aac35e0810e6bcda96f1c720e42a433942ee66106"; + sha256 = "1566q1kkv8j30fgqx8sm2h8323f38wwpa1hfb10gr6z46jyhv4a2"; }; }) diff --git a/pkgs/development/web/nodejs/v6.nix b/pkgs/development/web/nodejs/v6.nix index f5d6e52ee441..ac54f0f8d492 100644 --- a/pkgs/development/web/nodejs/v6.nix +++ b/pkgs/development/web/nodejs/v6.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, openssl, python, zlib, libuv, v8, utillinux, http-parser -, pkgconfig, runCommand, which, libtool +, pkgconfig, runCommand, which, libtool, fetchpatch , callPackage , darwin ? null }@args: @@ -8,12 +8,18 @@ let inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices; in import ./nodejs.nix (args // rec { - version = "6.7.0"; - sha256 = "1r9vvnczjczqs29ja8gmbqgsfgkg0dph4qkaxb3yh7mb98r2ic6f"; + version = "6.8.0"; + sha256 = "13arzwki13688hr1lh871y06lrk019g4hkasmg11arm8j1dcwcpq"; extraBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ]; preBuild = stdenv.lib.optionalString stdenv.isDarwin '' sed -i -e "s|tr1/type_traits|type_traits|g" \ -e "s|std::tr1|std|" src/util.h ''; + patches = [ + (fetchpatch { + url = "https://github.com/nodejs/node/commit/fc164acbbb700fd50ab9c04b47fc1b2687e9c0f4.patch"; + sha256 = "1rms3n09622xmddn013yvf5c6p3s8w8s0d2h813zs8c1l15k4k1i"; + }) + ]; }) |