diff options
Diffstat (limited to 'pkgs/development/libraries')
46 files changed, 562 insertions, 199 deletions
diff --git a/pkgs/development/libraries/accelio/default.nix b/pkgs/development/libraries/accelio/default.nix index 002b26078f53..a1f229ca5fb0 100644 --- a/pkgs/development/libraries/accelio/default.nix +++ b/pkgs/development/libraries/accelio/default.nix @@ -59,7 +59,6 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ wkennington ]; # kernel 4.2 is the most recent supported kernel broken = kernel != null && - (builtins.compareVersions kernel.version "4.2" == 1 || - (kernel.features.grsecurity or false)); + (builtins.compareVersions kernel.version "4.2" == 1); }; } diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix index a47e740be95b..c80abd5f3a07 100644 --- a/pkgs/development/libraries/aws-sdk-cpp/default.nix +++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix @@ -14,13 +14,13 @@ let else throw "Unsupported system!"; in stdenv.mkDerivation rec { name = "aws-sdk-cpp-${version}"; - version = "1.0.60"; + version = "1.0.127"; src = fetchFromGitHub { owner = "awslabs"; repo = "aws-sdk-cpp"; rev = version; - sha256 = "0k6jv70l4xhkf2rna6zaxkxgd7xh7cc1ghzska637h5d2v6h8nzk"; + sha256 = "1p06rkvi6mm4jylk5j7gji2c52qbls3i0yqg3hgs9iys4nd1p14r"; }; # FIXME: might be nice to put different APIs in different outputs diff --git a/pkgs/development/libraries/cmark/default.nix b/pkgs/development/libraries/cmark/default.nix index 303a6ccaeb88..5fdd1edfd972 100644 --- a/pkgs/development/libraries/cmark/default.nix +++ b/pkgs/development/libraries/cmark/default.nix @@ -1,20 +1,27 @@ -{ stdenv, fetchurl, cmake }: +{ stdenv, fetchFromGitHub, cmake }: stdenv.mkDerivation rec { - version = "0.23.0"; + version = "0.27.1"; name = "cmark-${version}"; - src = fetchurl { - url = "https://github.com/jgm/cmark/archive/${version}.tar.gz"; - sha256 = "87d289965066fce7be247d44c0304af1b20817dcc1b563702302ae33f2be0596"; + src = fetchFromGitHub { + owner = "jgm"; + repo = "cmark"; + rev = version; + sha256 = "06miwq3rl2bighkn6iq7bdwzmvcqa53qwpa0pqjqa8yn44j8ijj8"; }; - buildInputs = [ cmake ]; + nativeBuildInputs = [ cmake ]; + doCheck = true; + checkPhase = '' + export LD_LIBRARY_PATH=$(readlink -f ./src) + CTEST_OUTPUT_ON_FAILURE=1 make test + ''; - meta = { + meta = with stdenv.lib; { description = "CommonMark parsing and rendering library and program in C"; homepage = https://github.com/jgm/cmark; - maintainers = [ stdenv.lib.maintainers.michelk ]; - platforms = stdenv.lib.platforms.unix; + maintainers = [ maintainers.michelk ]; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/despotify/default.nix b/pkgs/development/libraries/despotify/default.nix deleted file mode 100644 index 43c8d18eb886..000000000000 --- a/pkgs/development/libraries/despotify/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - stdenv, fetchsvn, openssl, zlib, libvorbis, libpulseaudio, gstreamer, libao, - libtool, ncurses, glibc -}: - -stdenv.mkDerivation rec { - - name = "despotify-svn521"; - - src = fetchsvn { - url = "http://svn.code.sf.net/p/despotify/code"; - rev = "521"; - sha256 = "1vc453bv5ngkvaqkq7z5bj6x28m4kik59153jikcfah3k4qmxw21"; - }; - - buildInputs = [ - openssl zlib libvorbis libpulseaudio gstreamer libao libtool ncurses glibc - ]; - - configurePhase = "cd src"; - - installPhase = "make LDCONFIG=true INSTALL_PREFIX=$out install"; - - meta = { - description = "Open source Spotify client and library"; - longDescription = '' - despotify is a open source implementation of the Spotify API. This - package provides both a library and a few already quite useful, - proof-of-concept clients. - ''; - homepage = "http://despotify.se"; - license = stdenv.lib.licenses.bsd2; - platforms = stdenv.lib.platforms.linux; - }; - -} diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix index 1839f4d0ef3a..47be28f51302 100644 --- a/pkgs/development/libraries/ffmpeg-full/default.nix +++ b/pkgs/development/libraries/ffmpeg-full/default.nix @@ -17,6 +17,7 @@ , multithreadBuild ? true # Multithreading via pthreads/win32 threads , networkBuild ? true # Network support , pixelutilsBuild ? true # Pixel utils in libavutil +, enableLto ? false # build with link-time optimization /* * Program options */ @@ -229,11 +230,11 @@ assert nvenc -> nvidia-video-sdk != null && nonfreeLicensing; stdenv.mkDerivation rec { name = "ffmpeg-full-${version}"; - version = "3.3"; + version = "3.3.1"; src = fetchurl { url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz"; - sha256 = "17anx7rnbi63if1ndr61836lf76dpn47n0y424hc48bj05y7z7jr"; + sha256 = "0c37bdqwmaziikr2d5pqp7504ail6i7a1mfcmc06mdpwfxxwvcpw"; }; patchPhase = ''patchShebangs . @@ -257,6 +258,7 @@ stdenv.mkDerivation rec { (if stdenv.cc.isClang then "--cc=clang" else null) (enableFeature smallBuild "small") (enableFeature runtimeCpuDetectBuild "runtime-cpudetect") + (enableFeature enableLto "lto") (enableFeature grayBuild "gray") (enableFeature swscaleAlphaBuild "swscale-alpha") (enableFeature hardcodedTablesBuild "hardcoded-tables") diff --git a/pkgs/development/libraries/ffmpeg/3.3.nix b/pkgs/development/libraries/ffmpeg/3.3.nix index 03bb9d44dda9..d6380b795af8 100644 --- a/pkgs/development/libraries/ffmpeg/3.3.nix +++ b/pkgs/development/libraries/ffmpeg/3.3.nix @@ -6,7 +6,7 @@ callPackage ./generic.nix (args // rec { version = "${branch}"; - branch = "3.3"; - sha256 = "1p3brx0qa3i3569zlmcmpbxf17q73nrmbx2vp39s8h77r53qdq11"; + branch = "3.3.1"; + sha256 = "0c37bdqwmaziikr2d5pqp7504ail6i7a1mfcmc06mdpwfxxwvcpw"; darwinFrameworks = [ Cocoa CoreMedia ]; }) diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 8c74abc57094..57ac086368f4 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -55,6 +55,8 @@ let # Disable dependency that needs fixes before it will work on Darwin or Arm disDarwinOrArmFix = origArg: minVer: fixArg: if ((isDarwin || isArm) && reqMin minVer) then fixArg else origArg; + + vaapiSupport = reqMin "0.6" && ((isLinux || isFreeBSD) && !isArm); in assert openglSupport -> mesa != null; @@ -121,7 +123,7 @@ stdenv.mkDerivation rec { "--enable-libmp3lame" (ifMinVer "1.2" "--enable-iconv") "--enable-libtheora" - (ifMinVer "0.6" (enableFeature (isLinux || isFreeBSD) "vaapi")) + (ifMinVer "0.6" (enableFeature vaapiSupport "vaapi")) "--enable-vdpau" "--enable-libvorbis" (disDarwinOrArmFix (ifMinVer "0.6" "--enable-libvpx") "0.6" "--disable-libvpx") @@ -197,8 +199,7 @@ stdenv.mkDerivation rec { installFlags = [ "install-man" ]; passthru = { - vaapiSupport = if reqMin "0.6" && ((isLinux || isFreeBSD) && !isArm) then true else false; - inherit vdpauSupport; + inherit vaapiSupport vdpauSupport; }; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/fltk/default.nix b/pkgs/development/libraries/fltk/default.nix index 6f906d52502e..a1e4bb8274e0 100644 --- a/pkgs/development/libraries/fltk/default.nix +++ b/pkgs/development/libraries/fltk/default.nix @@ -6,21 +6,15 @@ let inherit (composableDerivation) edf; in -let version = "1.3.3"; in +let version = "1.3.4"; in composableDerivation.composableDerivation {} { name = "fltk-${version}"; src = fetchurl { url = "http://fltk.org/pub/fltk/${version}/fltk-${version}-source.tar.gz"; - sha256 = "15qd7lkz5d5ynz70xhxhigpz3wns39v9xcf7ggkl0792syc8sfgq"; + sha256 = "13y57pnayrkfzm8azdfvysm8b77ysac8zhhdsh8kxmb0x3203ay8"; }; - # http://www.fltk.org/str.php?L3156 - postPatch = '' - substituteInPlace FL/x.H \ - --replace 'class Fl_XFont_On_Demand' 'class FL_EXPORT Fl_XFont_On_Demand' - ''; - patches = stdenv.lib.optionals stdenv.isDarwin [ ./nsosv.patch ]; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index ec9f94d00d82..db80a8be299c 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -1,23 +1,34 @@ /* Build configuration used to build glibc, Info files, and locale information. */ -cross: - -{ name, fetchurl, lib, stdenv, installLocales ? false -, gccCross ? null, linuxHeaders ? null -, profilingLibraries ? false, meta -, withGd ? false, gd ? null, libpng ? null -, preConfigure ? "", ... }@args: +{ stdenv, lib, fetchurl +, gd ? null, libpng ? null +, buildPlatform, hostPlatform +, buildPackages +}: + +{ name +, withLinuxHeaders ? false +, profilingLibraries ? false +, installLocales ? false +, withGd ? false +, meta +, ... +} @ args: let + inherit (buildPackages) linuxHeaders; version = "2.25"; sha256 = "067bd9bb3390e79aa45911537d13c3721f1d9d3769931a30c2681bfee66f23a0"; + cross = if buildPlatform != hostPlatform then hostPlatform else null; in -assert cross != null -> gccCross != null; +assert withLinuxHeaders -> linuxHeaders != null; +assert withGd -> gd != null && libpng != null; stdenv.mkDerivation ({ - inherit linuxHeaders installLocales; + inherit installLocales; + linuxHeaders = if withLinuxHeaders then linuxHeaders else null; # The host/target system. crossConfig = if cross != null then cross.config else null; @@ -84,13 +95,13 @@ stdenv.mkDerivation ({ "--enable-obsolete-rpc" "--sysconfdir=/etc" "--enable-stackguard-randomization" - (if linuxHeaders != null + (if withLinuxHeaders then "--with-headers=${linuxHeaders}/include" else "--without-headers") (if profilingLibraries then "--enable-profile" else "--disable-profile") - ] ++ lib.optionals (cross == null && linuxHeaders != null) [ + ] ++ lib.optionals (cross == null && withLinuxHeaders) [ "--enable-kernel=2.6.32" ] ++ lib.optionals (cross != null) [ (if cross.withTLS then "--with-tls" else "--without-tls") @@ -113,8 +124,8 @@ stdenv.mkDerivation ({ outputs = [ "out" "bin" "dev" "static" ]; - buildInputs = lib.optionals (cross != null) [ gccCross ] - ++ lib.optionals withGd [ gd libpng ]; + nativeBuildInputs = lib.optional (cross != null) buildPackages.stdenv.cc; + buildInputs = lib.optionals withGd [ gd libpng ]; # Needed to install share/zoneinfo/zone.tab. Set to impure /bin/sh to # prevent a retained dependency on the bootstrap tools in the stdenv-linux @@ -122,9 +133,7 @@ stdenv.mkDerivation ({ BASH_SHELL = "/bin/sh"; } -# Remove the `gccCross' attribute so that the *native* glibc store path -# doesn't depend on whether `gccCross' is null or not. -// (removeAttrs args [ "lib" "gccCross" "fetchurl" "withGd" "gd" "libpng" ]) // +// (removeAttrs args [ "withLinuxHeaders" "withGd" ]) // { name = name + "-${version}" + @@ -153,7 +162,22 @@ stdenv.mkDerivation ({ ''makeFlags="$makeFlags BUILD_LDFLAGS=-Wl,-rpath,${stdenv.cc.libc}/lib"'' } - ${preConfigure} + + '' + lib.optionalString (cross != null) '' + sed -i s/-lgcc_eh//g "../$sourceRoot/Makeconfig" + + cat > config.cache << "EOF" + libc_cv_forced_unwind=yes + libc_cv_c_cleanup=yes + libc_cv_gnu89_inline=yes + # Only due to a problem in gcc configure scripts: + libc_cv_sparc64_tls=${if cross.withTLS then "yes" else "no"} + EOF + + export BUILD_CC=gcc + export CC="$crossConfig-gcc" + export AR="$crossConfig-ar" + export RANLIB="$crossConfig-ranlib" ''; preBuild = lib.optionalString withGd "unset NIX_DONT_SET_RPATH"; @@ -176,4 +200,17 @@ stdenv.mkDerivation ({ maintainers = [ lib.maintainers.eelco ]; platforms = lib.platforms.linux; } // meta; +} + +// lib.optionalAttrs (cross != null) { + preInstall = null; # clobber the native hook + + dontStrip = true; + + separateDebugInfo = false; # this is currently broken for crossDrv + + # To avoid a dependency on the build system 'bash'. + preFixup = '' + rm $bin/bin/{ldd,tzselect,catchsegv,xtrace} + ''; }) diff --git a/pkgs/development/libraries/glibc/default.nix b/pkgs/development/libraries/glibc/default.nix index 4f9eb2d0714f..976dbcde47ff 100644 --- a/pkgs/development/libraries/glibc/default.nix +++ b/pkgs/development/libraries/glibc/default.nix @@ -1,21 +1,16 @@ -{ lib, stdenv, fetchurl, linuxHeaders +{ stdenv, callPackage +, withLinuxHeaders ? true , installLocales ? true , profilingLibraries ? false -, gccCross ? null -, withGd ? false, gd ? null, libpng ? null +, withGd ? false }: assert stdenv.cc.isGNU; -let - build = import ./common.nix; - cross = if gccCross != null then gccCross.target else null; -in - build cross ({ - name = "glibc" + lib.optionalString withGd "-gd"; +callPackage ./common.nix { inherit stdenv; } { + name = "glibc" + stdenv.lib.optionalString withGd "-gd"; - inherit lib stdenv fetchurl linuxHeaders installLocales - profilingLibraries gccCross withGd gd libpng; + inherit withLinuxHeaders profilingLibraries installLocales withGd; NIX_NO_SELF_RPATH = true; @@ -104,36 +99,3 @@ in meta.description = "The GNU C Library"; } - - // - - (if cross != null - then { - preConfigure = '' - sed -i s/-lgcc_eh//g "../$sourceRoot/Makeconfig" - - cat > config.cache << "EOF" - libc_cv_forced_unwind=yes - libc_cv_c_cleanup=yes - libc_cv_gnu89_inline=yes - # Only due to a problem in gcc configure scripts: - libc_cv_sparc64_tls=${if cross.withTLS then "yes" else "no"} - EOF - export BUILD_CC=gcc - export CC="$crossConfig-gcc" - export AR="$crossConfig-ar" - export RANLIB="$crossConfig-ranlib" - - dontStrip=1 - ''; - - preInstall = null; # clobber the native hook - - separateDebugInfo = false; # this is currently broken for crossDrv - - # To avoid a dependency on the build system 'bash'. - preFixup = '' - rm $bin/bin/{ldd,tzselect,catchsegv,xtrace} - ''; - } - else {})) diff --git a/pkgs/development/libraries/glibc/info.nix b/pkgs/development/libraries/glibc/info.nix index 84ec43e11a85..5cb004cc870d 100644 --- a/pkgs/development/libraries/glibc/info.nix +++ b/pkgs/development/libraries/glibc/info.nix @@ -1,13 +1,8 @@ -{ lib, stdenv, fetchurl, texinfo, perl }: +{ callPackage, texinfo, perl }: -let build = import ./common.nix; in - -/* null cross builder */ -build null { +callPackage ./common.nix {} { name = "glibc-info"; - inherit fetchurl stdenv lib; - outputs = [ "out" ]; configureFlags = [ "--enable-add-ons" ]; diff --git a/pkgs/development/libraries/glibc/locales.nix b/pkgs/development/libraries/glibc/locales.nix index 994390cf8290..bf077a0c12c3 100644 --- a/pkgs/development/libraries/glibc/locales.nix +++ b/pkgs/development/libraries/glibc/locales.nix @@ -6,14 +6,13 @@ http://sourceware.org/cgi-bin/cvsweb.cgi/libc/localedata/SUPPORTED?cvsroot=glibc */ -{ lib, stdenv, fetchurl, writeText, allLocales ? true, locales ? ["en_US.UTF-8/UTF-8"] }: +{ stdenv, callPackage, writeText +, allLocales ? true, locales ? [ "en_US.UTF-8/UTF-8" ] +}: -let build = import ./common.nix; in - -build null { +callPackage ./common.nix { inherit stdenv; } { name = "glibc-locales"; - inherit fetchurl stdenv lib; installLocales = true; builder = ./locales-builder.sh; diff --git a/pkgs/development/libraries/gmp/6.x.nix b/pkgs/development/libraries/gmp/6.x.nix index e30c15e629ef..92dd602fc4d8 100644 --- a/pkgs/development/libraries/gmp/6.x.nix +++ b/pkgs/development/libraries/gmp/6.x.nix @@ -1,4 +1,7 @@ -{ stdenv, fetchurl, m4, cxx ? true, withStatic ? false }: +{ stdenv, fetchurl, m4, cxx ? true +, buildPackages +, buildPlatform, hostPlatform +, withStatic ? false }: let inherit (stdenv.lib) optional optionalString; in @@ -16,7 +19,8 @@ let self = stdenv.mkDerivation rec { outputs = [ "out" "dev" "info" ]; passthru.static = self.out; - nativeBuildInputs = [ m4 ]; + nativeBuildInputs = [ m4 ] + ++ stdenv.lib.optional (buildPlatform != hostPlatform) buildPackages.stdenv.cc; configureFlags = # Build a "fat binary", with routines for several sub-architectures @@ -39,7 +43,7 @@ let self = stdenv.mkDerivation rec { configureFlagsArray+=("--build=$(./configfsf.guess)") ''; - doCheck = true; + doCheck = buildPlatform == hostPlatform; dontDisableStatic = withStatic; diff --git a/pkgs/development/libraries/gtk+/2.x.nix b/pkgs/development/libraries/gtk+/2.x.nix index 306e2db29ce9..f6e718d82e9a 100644 --- a/pkgs/development/libraries/gtk+/2.x.nix +++ b/pkgs/development/libraries/gtk+/2.x.nix @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ setupHook perl pkgconfig gettext ]; - patches = [ ./2.0-immodules.cache.patch ]; + patches = [ ./2.0-immodules.cache.patch ./gtk2-theme-paths.patch ]; propagatedBuildInputs = with xorg; [ glib cairo pango gdk_pixbuf atk ] diff --git a/pkgs/development/libraries/gtk+/gtk2-theme-paths.patch b/pkgs/development/libraries/gtk+/gtk2-theme-paths.patch new file mode 100644 index 000000000000..edd69b078076 --- /dev/null +++ b/pkgs/development/libraries/gtk+/gtk2-theme-paths.patch @@ -0,0 +1,40 @@ +Subject: [PATCHv2] gtk: Patch GTK+ to look for themes in profiles. +To: guix-devel@gnu.org +Date: Sun, 13 Mar 2016 15:17:37 +1100 +Url: https://lists.gnu.org/archive/html/guix-devel/2016-03/msg00492.html + +diff -Naur gtk+-2.24.28.new/gtk/gtkrc.c gtk+-2.24.28/gtk/gtkrc.c +--- gtk+-2.24.28.new/gtk/gtkrc.c 2016-03-13 10:31:14.413644362 +1100 ++++ gtk+-2.24.28/gtk/gtkrc.c 2016-03-13 12:51:34.723398423 +1100 +@@ -808,6 +808,8 @@ + gchar *path = NULL; + const gchar *home_dir; + gchar *subpath; ++ const gchar * const *xdg_data_dirs; ++ gint i; + + if (type) + subpath = g_strconcat ("gtk-2.0-", type, +@@ -830,6 +832,22 @@ + } + + if (!path) ++ { ++ xdg_data_dirs = g_get_system_data_dirs (); ++ for (i = 0; xdg_data_dirs[i]; i++) ++ { ++ path = g_build_filename (xdg_data_dirs[i], "themes", name, subpath, NULL); ++ if (g_file_test (path, G_FILE_TEST_EXISTS)) ++ break; ++ else ++ { ++ g_free (path); ++ path = NULL; ++ } ++ } ++ } ++ ++ if (!path) + { + gchar *theme_dir = gtk_rc_get_theme_dir (); + path = g_build_filename (theme_dir, name, subpath, NULL); diff --git a/pkgs/development/libraries/hunspell/dictionaries.nix b/pkgs/development/libraries/hunspell/dictionaries.nix index e5cb99aa44a1..0d21649a9b1f 100644 --- a/pkgs/development/libraries/hunspell/dictionaries.nix +++ b/pkgs/development/libraries/hunspell/dictionaries.nix @@ -92,6 +92,39 @@ let }; }; + mkDictFromXuxen = + { shortName, srcs, shortDescription, longDescription, dictFileName }: + stdenv.mkDerivation rec { + name = "hunspell-dict-${shortName}-xuxen-${version}"; + version = "5-2015.11.10"; + + inherit srcs; + + phases = ["unpackPhase" "installPhase"]; + sourceRoot = "."; + # Copy files stripping until first dash (path and hash) + unpackCmd = "cp $curSrc \${curSrc##*-}"; + installPhase = '' + # hunspell dicts + install -dm755 "$out/share/hunspell" + install -m644 ${dictFileName}.dic "$out/share/hunspell/" + install -m644 ${dictFileName}.aff "$out/share/hunspell/" + # myspell dicts symlinks + install -dm755 "$out/share/myspell/dicts" + ln -sv "$out/share/hunspell/${dictFileName}.dic" "$out/share/myspell/dicts/" + ln -sv "$out/share/hunspell/${dictFileName}.aff" "$out/share/myspell/dicts/" + ''; + + meta = with stdenv.lib; { + homepage = http://xuxen.eus/; + description = shortDescription; + longDescription = longDescription; + license = licenses.gpl2; + maintainers = with maintainers; [ zalakain ]; + platforms = platforms.all; + }; + }; + in { /* ENGLISH */ @@ -191,4 +224,36 @@ in { sha256 = "0m9frz75fx456bczknay5i446gdcp1smm48lc0qfwzhz0j3zcdrd"; }; }; + + /* BASQUE */ + + eu-es = mkDictFromXuxen { + shortName = "eu-es"; + dictFileName = "eu_ES"; + shortDescription = "Basque (Xuxen 5)"; + longDescription = '' + Itxura berritzeaz gain, testuak zuzentzen laguntzeko zenbait hobekuntza + egin dira Xuxen.eus-en. Lexikoari dagokionez, 18645 sarrera berri erantsi + ditugu, eta proposamenak egiteko sistema ere aldatu dugu. Esate baterako, + gaizki idatzitako hitz baten inguruko proposamenak eskuratzeko, euskaraz + idaztean egiten ditugun akats arruntenak hartu dira kontuan. Sistemak + ematen dituen proposamenak ordenatzeko, berriz, aipatutako irizpidea + erabiltzeaz gain, Internetetik automatikoki eskuratutako euskarazko corpus + bateko datuen arabera ordenatu daitezke emaitzak. Erabiltzaileak horrela + ordenatu nahi baditu proposamenak, hautatu egin behar du aukera hori + testu-kutxaren azpian dituen aukeren artean. Interesgarria da proposamenak + ordenatzeko irizpide hori, hala sistemak formarik erabilienak proposatuko + baitizkigu gutxiago erabiltzen direnen aurretik. + ''; + srcs = [ + (fetchurl { + url = "http://xuxen.eus/static/hunspell/eu_ES.aff"; + sha256 = "12w2j6phzas2rdzc7f20jnk93sm59m2zzfdgxv6p8nvcvbrkmc02"; + }) + (fetchurl { + url = "http://xuxen.eus/static/hunspell/eu_ES.dic"; + sha256 = "0lw193jr7ldvln5x5z9p21rz1by46h0say9whfcw2kxs9vprd5b3"; + }) + ]; + }; } diff --git a/pkgs/development/libraries/kpmcore/default.nix b/pkgs/development/libraries/kpmcore/default.nix new file mode 100644 index 000000000000..8532a8880ce8 --- /dev/null +++ b/pkgs/development/libraries/kpmcore/default.nix @@ -0,0 +1,31 @@ +{ stdenv, lib, fetchurl, extra-cmake-modules, pkgconfig +, qtbase, kdeFrameworks +, eject, libatasmart, parted }: + +let + pname = "kpmcore"; + +in stdenv.mkDerivation rec { + name = "${pname}-${version}"; + version = "3.0.3"; + + src = fetchurl { + url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz"; + sha256 = "17lqrp39w31fm7haigwq23cp92zwk3czjzqa2fhn3wafx3vafwd2"; + }; + + buildInputs = [ + qtbase + eject # this is to get libblkid + libatasmart + parted # we only need the library + + kdeFrameworks.kio + ]; + nativeBuildInputs = [ extra-cmake-modules ]; + enableParallelBuilding = true; + + meta = with stdenv.lib; { + maintainers = with lib.maintainers; [ peterhoeg ]; + }; +} diff --git a/pkgs/development/libraries/libguestfs/default.nix b/pkgs/development/libraries/libguestfs/default.nix index 7902cf67c8d1..73424902cd09 100644 --- a/pkgs/development/libraries/libguestfs/default.nix +++ b/pkgs/development/libraries/libguestfs/default.nix @@ -35,11 +35,15 @@ stdenv.mkDerivation rec { substituteInPlace ocaml/Makefile.in --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml' substituteInPlace v2v/test-harness/Makefile.am --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml' substituteInPlace v2v/test-harness/Makefile.in --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml' + + # some scripts hardcore /usr/bin/env which is not available in the build env + patchShebangs . ''; configureFlags = "--disable-appliance --disable-daemon"; patches = [ ./libguestfs-syms.patch ]; NIX_CFLAGS_COMPILE="-I${libxml2.dev}/include/libxml2/"; installFlags = "REALLY_INSTALL=yes"; + enableParallelBuilding = true; postInstall = '' for bin in $out/bin/*; do diff --git a/pkgs/development/libraries/libhdhomerun/default.nix b/pkgs/development/libraries/libhdhomerun/default.nix new file mode 100644 index 000000000000..08563ed53dd5 --- /dev/null +++ b/pkgs/development/libraries/libhdhomerun/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchgit }: + +stdenv.mkDerivation { + name = "libhdhomerun-1efbcb"; + + src = fetchgit { + url = "git://github.com/Silicondust/libhdhomerun.git"; + rev = "1efbcb2b87b17a82f2b3d873d1c9cc1c6a3a9b77"; + sha256 = "11iyrfs98xb50n9iqnwfphmmnn5w3mq2l9cjjpf8qp29cvs33cgy"; + }; + + patchPhase = stdenv.lib.optionalString stdenv.isDarwin '' + substituteInPlace Makefile --replace "gcc" "cc" + substituteInPlace Makefile --replace "-arch i386" "" + ''; + + installPhase = let + libSuff = if stdenv.isDarwin then "dylib" else "so"; + in '' + mkdir -p $out/{bin,lib,include/hdhomerun} + install -Dm444 libhdhomerun.${libSuff} $out/lib + install -Dm555 hdhomerun_config $out/bin + cp *.h $out/include/hdhomerun + ''; + + meta = with stdenv.lib; { + description = "Implements the libhdhomerun protocol for use with Silicondust HDHomeRun TV tuners"; + homepage = "https://github.com/Silicondust/libhdhomerun"; + repositories.git = "https://github.com/Silicondust/libhdhomerun.git"; + license = stdenv.lib.licenses.lgpl2; + platforms = stdenv.lib.platforms.unix; + maintainers = [ maintainers.titanous ]; + }; +} diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix index f57a49ab8123..09b829695c4c 100644 --- a/pkgs/development/libraries/libmediainfo/default.nix +++ b/pkgs/development/libraries/libmediainfo/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, zlib }: stdenv.mkDerivation rec { - version = "0.7.91"; + version = "0.7.95"; name = "libmediainfo-${version}"; src = fetchurl { url = "http://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz"; - sha256 = "1h39cwd85rgidr0hbwab9dwbjv25xhvjv8y2nv35p3fwrs48p098"; + sha256 = "0snrcashc5c5gcwvfh7sl7z4h523d8vxbfin3gb6g81zv43d2b23"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; diff --git a/pkgs/development/libraries/libopus/default.nix b/pkgs/development/libraries/libopus/default.nix index 559caf8928b8..7bcfcef5788d 100644 --- a/pkgs/development/libraries/libopus/default.nix +++ b/pkgs/development/libraries/libopus/default.nix @@ -2,23 +2,16 @@ , fixedPoint ? false, withCustomModes ? true }: let - version = "1.1.3"; + version = "1.1.4"; in stdenv.mkDerivation rec { name = "libopus-${version}"; src = fetchurl { url = "http://downloads.xiph.org/releases/opus/opus-${version}.tar.gz"; - sha256 = "0cxnd7pjxbgh6l3cbzsw29phpr5cq28fikfhjlp1hc3y5s0gxdjq"; + sha256 = "14l6kpapmcnvl7p9hrmbqcnzj13zfzyppyc9a5kd4788h2rvc8li"; }; - patches = [ - (fetchpatch { # CVE-2017-0381 - url = "https://github.com/xiph/opus/commit/79e8f527b0344b0897a65be35e77f7885bd99409.patch"; - sha256 = "0clm4ixqkaj0a6i5rhaqfv3nnxyk33b2b8xlm7vyfd0y8kbh996q"; - }) - ]; - outputs = [ "out" "dev" ]; configureFlags = stdenv.lib.optional fixedPoint "--enable-fixed-point" diff --git a/pkgs/development/libraries/libqmi/default.nix b/pkgs/development/libraries/libqmi/default.nix index d0b46722ff35..2e316a30a018 100644 --- a/pkgs/development/libraries/libqmi/default.nix +++ b/pkgs/development/libraries/libqmi/default.nix @@ -1,11 +1,11 @@ -{ stdenv, fetchurl, pkgconfig, glib, python }: +{ stdenv, fetchurl, pkgconfig, glib, python, libgudev, libmbim }: stdenv.mkDerivation rec { - name = "libqmi-1.16.0"; + name = "libqmi-1.18.0"; src = fetchurl { url = "https://www.freedesktop.org/software/libqmi/${name}.tar.xz"; - sha256 = "0amshs06qc8zy8jz3r2yksqhhbamll7f893ll4zlvgr3zm3vpdks"; + sha256 = "1v4cz3nsmh7nn3smhlhwzrb7yh6l1f270bwf40qacxayjdajr950"; }; outputs = [ "out" "dev" "devdoc" ]; @@ -14,7 +14,9 @@ stdenv.mkDerivation rec { patchShebangs . ''; - buildInputs = [ pkgconfig glib python ]; + buildInputs = [ pkgconfig glib python libgudev libmbim ]; + + configureFlags = ["--enable-mbim-qmux" ]; meta = with stdenv.lib; { homepage = http://www.freedesktop.org/wiki/Software/libqmi/; diff --git a/pkgs/development/libraries/log4shib/default.nix b/pkgs/development/libraries/log4shib/default.nix index f9b68e1a0cfd..7b672aebe445 100644 --- a/pkgs/development/libraries/log4shib/default.nix +++ b/pkgs/development/libraries/log4shib/default.nix @@ -12,7 +12,8 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook ]; - meta = { + meta = with stdenv.lib; { description = "A forked version of log4cpp that has been created for the Shibboleth project"; + maintainers = [ maintainers.jammerful ]; }; } diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 4ffaee9be5ab..9e7f2eef46bf 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -5,6 +5,9 @@ , unicode ? true , gpm + +, buildPlatform, hostPlatform +, buildPackages }: let version = if abiVersion == "5" then "5.9" else "6.0"; @@ -35,7 +38,11 @@ stdenv.mkDerivation rec { # Only the C compiler, and explicitly not C++ compiler needs this flag on solaris: CFLAGS = lib.optionalString stdenv.isSunOS "-D_XOPEN_SOURCE_EXTENDED"; - nativeBuildInputs = [ pkgconfig ]; + nativeBuildInputs = [ + pkgconfig + ] ++ lib.optionals (buildPlatform != hostPlatform) [ + buildPackages.ncurses buildPackages.stdenv.cc + ]; buildInputs = lib.optional (mouseSupport && stdenv.isLinux) gpm; preConfigure = '' @@ -58,7 +65,8 @@ stdenv.mkDerivation rec { sed -i -e 's,LIB_SUFFIX="t,LIB_SUFFIX=",' configure ''; - selfNativeBuildInput = true; + # Here only for native hash, remove on next mass rebuild + selfNativeBuildInput = buildPlatform == hostPlatform; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/opencv/3.x.nix b/pkgs/development/libraries/opencv/3.x.nix index 275c1cddab0f..5c7972eb2fad 100644 --- a/pkgs/development/libraries/opencv/3.x.nix +++ b/pkgs/development/libraries/opencv/3.x.nix @@ -78,6 +78,12 @@ stdenv.mkDerivation rec { ln -s "${bootdescFiles}/$name" "$NIX_BUILD_TOP/opencv_contrib/xfeatures2d/src/$name" done ''); + + # This prevents cmake from using libraries in impure paths (which causes build failure on non NixOS) + postPatch = '' + sed -i '/Add these standard paths to the search paths for FIND_LIBRARY/,/^\s*$/{d}' CMakeLists.txt + ''; + preConfigure = (let version = "20151201"; md5 = "808b791a6eac9ed78d32a7666804320e"; diff --git a/pkgs/development/libraries/opencv/default.nix b/pkgs/development/libraries/opencv/default.nix index 37b33c21a30a..d7824dbed340 100644 --- a/pkgs/development/libraries/opencv/default.nix +++ b/pkgs/development/libraries/opencv/default.nix @@ -35,6 +35,11 @@ stdenv.mkDerivation rec { ./no-build-info.patch ]; + # This prevents cmake from using libraries in impure paths (which causes build failure on non NixOS) + postPatch = '' + sed -i '/Add these standard paths to the search paths for FIND_LIBRARY/,/^\s*$/{d}' CMakeLists.txt + ''; + outputs = [ "out" "dev" ]; buildInputs = diff --git a/pkgs/development/libraries/opensaml-cpp/default.nix b/pkgs/development/libraries/opensaml-cpp/default.nix index 9e3fbd153068..c2c102ccf9bd 100644 --- a/pkgs/development/libraries/opensaml-cpp/default.nix +++ b/pkgs/development/libraries/opensaml-cpp/default.nix @@ -22,5 +22,6 @@ stdenv.mkDerivation rec { description = "A low-level library written in C++ that provides support for producing and consuming SAML messages"; platforms = platforms.unix; license = licenses.asl20; + maintainers = [ maintainers.jammerful ]; }; } diff --git a/pkgs/development/libraries/qt-4.x/4.8/default.nix b/pkgs/development/libraries/qt-4.x/4.8/default.nix index 46bb7a4e8faa..18f2e7611a9e 100644 --- a/pkgs/development/libraries/qt-4.x/4.8/default.nix +++ b/pkgs/development/libraries/qt-4.x/4.8/default.nix @@ -6,7 +6,8 @@ , buildMultimedia ? stdenv.isLinux, alsaLib, gstreamer, gst-plugins-base , buildWebkit ? (stdenv.isLinux || stdenv.isDarwin) , flashplayerFix ? false, gdk_pixbuf -, gtkStyle ? false, libgnomeui, gtk2, GConf, gnome_vfs +, gtkStyle ? true, gtk2 +, gnomeStyle ? false, libgnomeui, GConf, gnome_vfs , developerBuild ? false , docs ? false , examples ? false @@ -73,14 +74,15 @@ stdenv.mkDerivation rec { glibc = stdenv.cc.libc.out; openglDriver = if mesaSupported then mesa.driverLink else "/no-such-path"; }) - ] ++ stdenv.lib.optional gtkStyle (substituteAll { + ] ++ stdenv.lib.optional gtkStyle (substituteAll ({ src = ./dlopen-gtkstyle.diff; # substituteAll ignores env vars starting with capital letter - gconf = GConf.out; gtk = gtk2.out; + } // stdenv.lib.optionalAttrs gnomeStyle { + gconf = GConf.out; libgnomeui = libgnomeui.out; gnome_vfs = gnome_vfs.out; - }) + })) ++ stdenv.lib.optional flashplayerFix (substituteAll { src = ./dlopen-webkit-nsplugin.diff; gtk = gtk2.out; diff --git a/pkgs/development/libraries/qt-5/5.6/qtbase/default.nix b/pkgs/development/libraries/qt-5/5.6/qtbase/default.nix index b26fc7faf9d7..289a1bbac6c7 100644 --- a/pkgs/development/libraries/qt-5/5.6/qtbase/default.nix +++ b/pkgs/development/libraries/qt-5/5.6/qtbase/default.nix @@ -104,6 +104,8 @@ stdenv.mkDerivation { -importdir $out/lib/qt5/imports \ -qmldir $out/lib/qt5/qml \ -docdir $out/share/doc/qt5" + + NIX_CFLAGS_COMPILE+=" -DNIXPKGS_QPA_PLATFORM_PLUGIN_PATH=\"''${!outputLib}/lib/qt5/plugins/platforms\"" ''; prefixKey = "-prefix "; diff --git a/pkgs/development/libraries/qt-5/5.6/qtbase/nix-profiles-library-paths.patch b/pkgs/development/libraries/qt-5/5.6/qtbase/nix-profiles-library-paths.patch new file mode 100644 index 000000000000..68163fc0c312 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.6/qtbase/nix-profiles-library-paths.patch @@ -0,0 +1,20 @@ +Index: qtbase-opensource-src-5.6.2/src/corelib/kernel/qcoreapplication.cpp +=================================================================== +--- qtbase-opensource-src-5.6.2.orig/src/corelib/kernel/qcoreapplication.cpp ++++ qtbase-opensource-src-5.6.2/src/corelib/kernel/qcoreapplication.cpp +@@ -2533,6 +2533,15 @@ QStringList QCoreApplication::libraryPat + QStringList *app_libpaths = new QStringList; + coreappdata()->app_libpaths.reset(app_libpaths); + ++ // Add library paths derived from NIX_PROFILES. ++ const QByteArrayList profiles = qgetenv("NIX_PROFILES").split(' '); ++ const QString plugindir = QString::fromLatin1("/lib/qt5/plugins"); ++ for (const QByteArray &profile: profiles) { ++ if (!profile.isEmpty()) { ++ app_libpaths->append(QFile::decodeName(profile) + plugindir); ++ } ++ } ++ + const QByteArray libPathEnv = qgetenv("QT_PLUGIN_PATH"); + if (!libPathEnv.isEmpty()) { + QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts); diff --git a/pkgs/development/libraries/qt-5/5.6/qtbase/qpa-platform-plugin-path.patch b/pkgs/development/libraries/qt-5/5.6/qtbase/qpa-platform-plugin-path.patch new file mode 100644 index 000000000000..32d9dcad622d --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.6/qtbase/qpa-platform-plugin-path.patch @@ -0,0 +1,43 @@ +Index: qtbase-opensource-src-5.6.2/src/gui/kernel/qplatformintegrationfactory.cpp +=================================================================== +--- qtbase-opensource-src-5.6.2.orig/src/gui/kernel/qplatformintegrationfactory.cpp ++++ qtbase-opensource-src-5.6.2/src/gui/kernel/qplatformintegrationfactory.cpp +@@ -67,9 +67,10 @@ QPlatformIntegration *QPlatformIntegrati + // Try loading the plugin from platformPluginPath first: + if (!platformPluginPath.isEmpty()) { + QCoreApplication::addLibraryPath(platformPluginPath); +- if (QPlatformIntegration *ret = loadIntegration(directLoader(), platform, paramList, argc, argv)) +- return ret; + } ++ QCoreApplication::addLibraryPath(QStringLiteral(NIXPKGS_QPA_PLATFORM_PLUGIN_PATH)); ++ if (QPlatformIntegration *ret = loadIntegration(directLoader(), platform, paramList, argc, argv)) ++ return ret; + if (QPlatformIntegration *ret = loadIntegration(loader(), platform, paramList, argc, argv)) + return ret; + #else +@@ -95,15 +96,16 @@ QStringList QPlatformIntegrationFactory: + QStringList list; + if (!platformPluginPath.isEmpty()) { + QCoreApplication::addLibraryPath(platformPluginPath); +- list = directLoader()->keyMap().values(); +- if (!list.isEmpty()) { +- const QString postFix = QStringLiteral(" (from ") +- + QDir::toNativeSeparators(platformPluginPath) +- + QLatin1Char(')'); +- const QStringList::iterator end = list.end(); +- for (QStringList::iterator it = list.begin(); it != end; ++it) +- (*it).append(postFix); +- } ++ } ++ QCoreApplication::addLibraryPath(QStringLiteral(NIXPKGS_QPA_PLATFORM_PLUGIN_PATH)); ++ list = directLoader()->keyMap().values(); ++ if (!list.isEmpty()) { ++ const QString postFix = QStringLiteral(" (from ") ++ + QDir::toNativeSeparators(platformPluginPath) ++ + QLatin1Char(')'); ++ const QStringList::iterator end = list.end(); ++ for (QStringList::iterator it = list.begin(); it != end; ++it) ++ (*it).append(postFix); + } + list.append(loader()->keyMap().values()); + return list; diff --git a/pkgs/development/libraries/qt-5/5.6/qtbase/series b/pkgs/development/libraries/qt-5/5.6/qtbase/series index 9ef8c998c661..3527a91c84de 100644 --- a/pkgs/development/libraries/qt-5/5.6/qtbase/series +++ b/pkgs/development/libraries/qt-5/5.6/qtbase/series @@ -4,5 +4,7 @@ dlopen-libXcursor.patch dlopen-openssl.patch dlopen-dbus.patch xdg-config-dirs.patch +nix-profiles-library-paths.patch compose-search-path.patch libressl.patch +qpa-platform-plugin-path.patch diff --git a/pkgs/development/libraries/qt-5/5.8/qtbase/default.nix b/pkgs/development/libraries/qt-5/5.8/qtbase/default.nix index e11d9dd1f29b..ee6399c2bd46 100644 --- a/pkgs/development/libraries/qt-5/5.8/qtbase/default.nix +++ b/pkgs/development/libraries/qt-5/5.8/qtbase/default.nix @@ -62,7 +62,7 @@ stdenv.mkDerivation { AGL AppKit ApplicationServices Carbon Cocoa CoreAudio CoreBluetooth CoreLocation CoreServices DiskArbitration Foundation OpenGL - darwin.cf-private darwin.apple_sdk.sdk darwin.libobjc libiconv + darwin.cf-private darwin.libobjc libiconv ]); buildInputs = [ ] @@ -128,7 +128,7 @@ stdenv.mkDerivation { -qmldir $out/lib/qt5/qml \ -docdir $out/share/doc/qt5" - NIX_CFLAGS_COMPILE+=" -DNIXPKGS_QPA_PLATFORM_PLUGIN_PATH=\"''${!outputLib}/lib/qt5/plugins\"" + NIX_CFLAGS_COMPILE+=" -DNIXPKGS_QPA_PLATFORM_PLUGIN_PATH=\"''${!outputLib}/lib/qt5/plugins/platforms\"" ''; diff --git a/pkgs/development/libraries/qt-5/5.8/qtbase/nix-profiles-library-paths.patch b/pkgs/development/libraries/qt-5/5.8/qtbase/nix-profiles-library-paths.patch new file mode 100644 index 000000000000..553c71d0ace3 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.8/qtbase/nix-profiles-library-paths.patch @@ -0,0 +1,20 @@ +Index: qtbase-opensource-src-5.8.0/src/corelib/kernel/qcoreapplication.cpp +=================================================================== +--- qtbase-opensource-src-5.8.0.orig/src/corelib/kernel/qcoreapplication.cpp ++++ qtbase-opensource-src-5.8.0/src/corelib/kernel/qcoreapplication.cpp +@@ -2476,6 +2476,15 @@ QStringList QCoreApplication::libraryPat + QStringList *app_libpaths = new QStringList; + coreappdata()->app_libpaths.reset(app_libpaths); + ++ // Add library paths derived from NIX_PROFILES. ++ const QByteArrayList profiles = qgetenv("NIX_PROFILES").split(' '); ++ const QString plugindir = QString::fromLatin1("/lib/qt5/plugins"); ++ for (const QByteArray &profile: profiles) { ++ if (!profile.isEmpty()) { ++ app_libpaths->append(QFile::decodeName(profile) + plugindir); ++ } ++ } ++ + const QByteArray libPathEnv = qgetenv("QT_PLUGIN_PATH"); + if (!libPathEnv.isEmpty()) { + QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts); diff --git a/pkgs/development/libraries/qt-5/5.8/qtbase/qpa-platform-plugin-path.patch b/pkgs/development/libraries/qt-5/5.8/qtbase/qpa-platform-plugin-path.patch new file mode 100644 index 000000000000..270116e1978d --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.8/qtbase/qpa-platform-plugin-path.patch @@ -0,0 +1,43 @@ +Index: qtbase-opensource-src-5.8.0/src/gui/kernel/qplatformintegrationfactory.cpp +=================================================================== +--- qtbase-opensource-src-5.8.0.orig/src/gui/kernel/qplatformintegrationfactory.cpp ++++ qtbase-opensource-src-5.8.0/src/gui/kernel/qplatformintegrationfactory.cpp +@@ -62,9 +62,10 @@ QPlatformIntegration *QPlatformIntegrati + // Try loading the plugin from platformPluginPath first: + if (!platformPluginPath.isEmpty()) { + QCoreApplication::addLibraryPath(platformPluginPath); +- if (QPlatformIntegration *ret = qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin>(directLoader(), platform, paramList, argc, argv)) +- return ret; + } ++ QCoreApplication::addLibraryPath(QStringLiteral(NIXPKGS_QPA_PLATFORM_PLUGIN_PATH)); ++ if (QPlatformIntegration *ret = qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin>(directLoader(), platform, paramList, argc, argv)) ++ return ret; + #else + Q_UNUSED(platformPluginPath); + #endif +@@ -84,15 +85,16 @@ QStringList QPlatformIntegrationFactory: + #ifndef QT_NO_LIBRARY + if (!platformPluginPath.isEmpty()) { + QCoreApplication::addLibraryPath(platformPluginPath); +- list = directLoader()->keyMap().values(); +- if (!list.isEmpty()) { +- const QString postFix = QLatin1String(" (from ") +- + QDir::toNativeSeparators(platformPluginPath) +- + QLatin1Char(')'); +- const QStringList::iterator end = list.end(); +- for (QStringList::iterator it = list.begin(); it != end; ++it) +- (*it).append(postFix); +- } ++ } ++ QCoreApplication::addLibraryPath(QStringLiteral(NIXPKGS_QPA_PLATFORM_PLUGIN_PATH)); ++ list = directLoader()->keyMap().values(); ++ if (!list.isEmpty()) { ++ const QString postFix = QLatin1String(" (from ") ++ + QDir::toNativeSeparators(platformPluginPath) ++ + QLatin1Char(')'); ++ const QStringList::iterator end = list.end(); ++ for (QStringList::iterator it = list.begin(); it != end; ++it) ++ (*it).append(postFix); + } + #else + Q_UNUSED(platformPluginPath); diff --git a/pkgs/development/libraries/qt-5/5.8/qtbase/qpa-plugin-path.patch b/pkgs/development/libraries/qt-5/5.8/qtbase/qpa-plugin-path.patch deleted file mode 100644 index 6d40ed19c00a..000000000000 --- a/pkgs/development/libraries/qt-5/5.8/qtbase/qpa-plugin-path.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: qtbase-opensource-src-5.8.0/src/gui/kernel/qguiapplication.cpp -=================================================================== ---- qtbase-opensource-src-5.8.0.orig/src/gui/kernel/qguiapplication.cpp -+++ qtbase-opensource-src-5.8.0/src/gui/kernel/qguiapplication.cpp -@@ -1217,6 +1217,10 @@ void QGuiApplicationPrivate::createPlatf - - // Load the platform integration - QString platformPluginPath = QString::fromLocal8Bit(qgetenv("QT_QPA_PLATFORM_PLUGIN_PATH")); -+ if (!platformPluginPath.isEmpty()) { -+ platformPluginPath.append(QStringLiteral(":")); -+ } -+ platformPluginPath.append(QStringLiteral(NIXPKGS_QPA_PLATFORM_PLUGIN_PATH)); - - - QByteArray platformName; diff --git a/pkgs/development/libraries/qt-5/5.8/qtbase/series b/pkgs/development/libraries/qt-5/5.8/qtbase/series index 0378ca1f5035..47400cf7aa30 100644 --- a/pkgs/development/libraries/qt-5/5.8/qtbase/series +++ b/pkgs/development/libraries/qt-5/5.8/qtbase/series @@ -2,8 +2,9 @@ dlopen-resolv.patch tzdir.patch dlopen-libXcursor.patch xdg-config-dirs.patch +nix-profiles-library-paths.patch libressl.patch -qpa-plugin-path.patch +qpa-platform-plugin-path.patch dlopen-gl.patch compose-search-path.patch cmake-paths.patch diff --git a/pkgs/development/libraries/rdkafka/default.nix b/pkgs/development/libraries/rdkafka/default.nix index c80c25381b3f..cc7c7a31e1df 100644 --- a/pkgs/development/libraries/rdkafka/default.nix +++ b/pkgs/development/libraries/rdkafka/default.nix @@ -15,6 +15,8 @@ stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow"; + configureFlags = stdenv.lib.optionals stdenv.isDarwin [ "--disable-ssl" ]; + postPatch = '' patchShebangs . ''; @@ -23,7 +25,7 @@ stdenv.mkDerivation rec { description = "librdkafka - Apache Kafka C/C++ client library"; homepage = "https://github.com/edenhill/librdkafka"; license = licenses.bsd2; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; maintainers = with maintainers; [ boothead wkennington ]; }; } diff --git a/pkgs/development/libraries/science/biology/htslib/default.nix b/pkgs/development/libraries/science/biology/htslib/default.nix index 29fb338c8389..a74905b5ba1d 100644 --- a/pkgs/development/libraries/science/biology/htslib/default.nix +++ b/pkgs/development/libraries/science/biology/htslib/default.nix @@ -1,16 +1,21 @@ -{ stdenv, fetchurl, zlib }: +{ stdenv, fetchurl, zlib, bzip2, lzma, curl }: stdenv.mkDerivation rec { name = "${pname}-${version}"; + version = "${major}.0"; pname = "htslib"; - version = "1.3.2"; + major = "1.4"; src = fetchurl { - url = "https://github.com/samtools/${pname}/releases/download/${version}/${name}.tar.bz2"; - sha256 = "0iq3blw23s55vkr1z88p9y2dqrb2dybzhl6hz2nlk53ncihrxcdr"; + url = "https://github.com/samtools/htslib/releases/download/${major}/htslib-${major}.tar.bz2"; + sha256 = "0l1ki3sqfhawfn7fx9v7i2pm725jki4c5zij9j96xka5zwc8iz2w"; }; - buildInputs = [ zlib ]; + buildInputs = [ zlib bzip2 lzma curl ]; + + configureFlags = "--enable-libcurl"; # optional but strongly recommended + + installFlags = "prefix=$(out)"; meta = with stdenv.lib; { description = "A C library for reading/writing high-throughput sequencing data"; diff --git a/pkgs/development/libraries/science/math/clblas/cuda/default.nix b/pkgs/development/libraries/science/math/clblas/cuda/default.nix index 6d3faa2fb7ff..ae568bc6db17 100644 --- a/pkgs/development/libraries/science/math/clblas/cuda/default.nix +++ b/pkgs/development/libraries/science/math/clblas/cuda/default.nix @@ -5,6 +5,7 @@ , blas , boost , python +, ocl-icd , cudatoolkit , nvidia_x11 , gtest @@ -51,6 +52,7 @@ stdenv.mkDerivation rec { gfortran blas python + ocl-icd cudatoolkit nvidia_x11 gtest diff --git a/pkgs/development/libraries/shibboleth-sp/default.nix b/pkgs/development/libraries/shibboleth-sp/default.nix index de6d6544c13f..f15c72498b25 100644 --- a/pkgs/development/libraries/shibboleth-sp/default.nix +++ b/pkgs/development/libraries/shibboleth-sp/default.nix @@ -27,5 +27,6 @@ stdenv.mkDerivation rec { description = "Enables SSO and Federation web applications written with any programming language or framework"; platforms = platforms.unix; license = licenses.asl20; + maintainers = [ maintainers.jammerful ]; }; } diff --git a/pkgs/development/libraries/v8/default.nix b/pkgs/development/libraries/v8/default.nix index 2c6e818b4e12..00fb037168ea 100644 --- a/pkgs/development/libraries/v8/default.nix +++ b/pkgs/development/libraries/v8/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, fetchgit, fetchFromGitHub, gyp, readline, python, which, icu -, patchelf, coreutils +, patchelf, coreutils, cctools , doCheck ? false , static ? false }: @@ -126,7 +126,13 @@ stdenv.mkDerivation rec { # Patch based off of: # https://github.com/cowboyd/libv8/tree/v5.1.281.67.0/patches - patches = lib.optional (!doCheck) ./libv8-5.4.232.patch; + patches = lib.optional (!doCheck) ./libv8-5.4.232.patch + ++ stdenv.lib.optionals stdenv.isDarwin [ ./no-xcode.patch ]; + + prePatch = '' + chmod +w tools/gyp/pylib/gyp + chmod +w tools/gyp/pylib/gyp/xcode_emulation.py + ''; postPatch = '' sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,' gypfiles/gyp_v8 @@ -152,12 +158,13 @@ stdenv.mkDerivation rec { ''; nativeBuildInputs = [ which ]; - buildInputs = [ readline python icu patchelf ]; + buildInputs = [ readline python icu patchelf ] + ++ stdenv.lib.optionals stdenv.isDarwin [ cctools ]; NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow"; buildFlags = [ - "LINK=g++" + "LINK=c++" "-C out" "builddir=$(CURDIR)/Release" "BUILDTYPE=Release" @@ -174,7 +181,7 @@ stdenv.mkDerivation rec { install -vD out/Release/mksnapshot "$out/bin/mksnapshot" ${if static then "" else if stdenv.isDarwin then '' - install -vD out/Release/lib.target/libv8.dylib "$out/lib/libv8.dylib" + install -vD out/Release/libv8.dylib "$out/lib/libv8.dylib" install_name_tool -change /usr/local/lib/libv8.dylib $out/lib/libv8.dylib -change /usr/lib/libgcc_s.1.dylib ${stdenv.cc.cc.lib}/lib/libgcc_s.1.dylib $out/bin/d8 install_name_tool -id $out/lib/libv8.dylib -change /usr/lib/libgcc_s.1.dylib ${stdenv.cc.cc.lib}/lib/libgcc_s.1.dylib $out/lib/libv8.dylib '' else '' @@ -190,7 +197,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Google's open source JavaScript engine"; maintainers = with maintainers; [ cstrahan proglodyte ]; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; license = licenses.bsd3; }; } diff --git a/pkgs/development/libraries/v8/no-xcode.patch b/pkgs/development/libraries/v8/no-xcode.patch new file mode 100644 index 000000000000..5562ffaf64e1 --- /dev/null +++ b/pkgs/development/libraries/v8/no-xcode.patch @@ -0,0 +1,64 @@ +--- a/tools/gyp/pylib/gyp/xcode_emulation.py ++++ a/tools/gyp/pylib/gyp/xcode_emulation.py +@@ -473,10 +473,16 @@ + + def _XcodeSdkPath(self, sdk_root): + if sdk_root not in XcodeSettings._sdk_path_cache: +- sdk_path = self._GetSdkVersionInfoItem(sdk_root, '--show-sdk-path') +- XcodeSettings._sdk_path_cache[sdk_root] = sdk_path +- if sdk_root: +- XcodeSettings._sdk_root_cache[sdk_path] = sdk_root ++ try: ++ sdk_path = self._GetSdkVersionInfoItem(sdk_root, '--show-sdk-path') ++ XcodeSettings._sdk_path_cache[sdk_root] = sdk_path ++ if sdk_root: ++ XcodeSettings._sdk_root_cache[sdk_path] = sdk_root ++ except: ++ # if this fails it's because xcodebuild failed, which means ++ # the user is probably on a CLT-only system, where there ++ # is no valid SDK root ++ XcodeSettings._sdk_path_cache[sdk_root] = None + return XcodeSettings._sdk_path_cache[sdk_root] + + def _AppendPlatformVersionMinFlags(self, lst): +@@ -606,10 +612,11 @@ + framework_root = sdk_root + else: + framework_root = '' +- config = self.spec['configurations'][self.configname] +- framework_dirs = config.get('mac_framework_dirs', []) +- for directory in framework_dirs: +- cflags.append('-F' + directory.replace('$(SDKROOT)', framework_root)) ++ if 'SDKROOT' in self._Settings(): ++ config = self.spec['configurations'][self.configname] ++ framework_dirs = config.get('mac_framework_dirs', []) ++ for directory in framework_dirs: ++ cflags.append('-F' + directory.replace('$(SDKROOT)', framework_root)) + + self.configname = None + return cflags +@@ -861,10 +868,11 @@ + sdk_root = self._SdkPath() + if not sdk_root: + sdk_root = '' +- config = self.spec['configurations'][self.configname] +- framework_dirs = config.get('mac_framework_dirs', []) +- for directory in framework_dirs: +- ldflags.append('-F' + directory.replace('$(SDKROOT)', sdk_root)) ++ if 'SDKROOT' in self._Settings(): ++ config = self.spec['configurations'][self.configname] ++ framework_dirs = config.get('mac_framework_dirs', []) ++ for directory in framework_dirs: ++ ldflags.append('-F' + directory.replace('$(SDKROOT)', sdk_root)) + + platform_root = self._XcodePlatformPath(configname) + if sdk_root and platform_root and self._IsXCTest(): +@@ -1358,7 +1366,7 @@ + if version: + version = re.match(r'(\d\.\d\.?\d*)', version).groups()[0] + else: +- raise GypError("No Xcode or CLT version detected!") ++ version = "7.0.0" + # The CLT has no build information, so we return an empty string. + version_list = [version, ''] + version = version_list[0] diff --git a/pkgs/development/libraries/vcg/default.nix b/pkgs/development/libraries/vcg/default.nix index 9e85ad7413d0..6225fb18e280 100644 --- a/pkgs/development/libraries/vcg/default.nix +++ b/pkgs/development/libraries/vcg/default.nix @@ -1,12 +1,14 @@ -{ stdenv, fetchsvn, eigen }: +{ stdenv, fetchFromGitHub, eigen }: stdenv.mkDerivation rec { - name = "vcg-2016-02-14"; + name = "vcg-${version}"; + version = "1.0.1"; - src = fetchsvn { - url = "svn://svn.code.sf.net/p/vcg/code/trunk/vcglib"; - rev = 5688; - sha256 = "0hkvz2d8prrjdcc7h0xhfd9hq86lmqg17ml045x4bkiciimx0w5s"; + src = fetchFromGitHub { + owner = "cnr-isti-vclab"; + repo = "vcglib"; + rev = "v${version}"; + sha256 = "0jh8jc8rn7rci8qr3q03q574fk2hsc3rllysck41j8xkr3rmxz2f"; }; propagatedBuildInputs = [ eigen ]; diff --git a/pkgs/development/libraries/xapian/default.nix b/pkgs/development/libraries/xapian/default.nix index 145ebdec8e5d..764200c89f55 100644 --- a/pkgs/development/libraries/xapian/default.nix +++ b/pkgs/development/libraries/xapian/default.nix @@ -18,6 +18,13 @@ let doCheck = true; + # the configure script thinks that Darwin has ___exp10 + # but it’s not available on my systems (or hydra apparently) + postConfigure = stdenv.lib.optionalString stdenv.isDarwin '' + substituteInPlace config.h \ + --replace "#define HAVE___EXP10 1" "#undef HAVE___EXP10" + ''; + meta = with stdenv.lib; { description = "Search engine library"; homepage = http://xapian.org/; diff --git a/pkgs/development/libraries/xml-tooling-c/default.nix b/pkgs/development/libraries/xml-tooling-c/default.nix index 139a4c8cccdf..f2d7711c9f00 100644 --- a/pkgs/development/libraries/xml-tooling-c/default.nix +++ b/pkgs/development/libraries/xml-tooling-c/default.nix @@ -19,5 +19,6 @@ stdenv.mkDerivation rec { description = "A low-level library that provides a high level interface to XML processing for OpenSAML 2"; platforms = platforms.unix; license = licenses.asl20; + maintainers = [ maintainers.jammerful ]; }; } |