diff options
author | Frederik Rietdijk <fridh@fridh.nl> | 2019-11-24 10:13:31 +0100 |
---|---|---|
committer | Frederik Rietdijk <fridh@fridh.nl> | 2019-11-24 10:13:31 +0100 |
commit | 1d18c5a0fe6d55fa1663e945cd47bc9e8e764f3f (patch) | |
tree | 313bc0caa017c3e41a961bf63c7b70aac8bc6334 /pkgs/development/libraries | |
parent | 525c54c7ef4ac6bc86e1a9f84cff72af43884d2a (diff) | |
parent | ab0a828662c4c6a8535b630081a67c20286099ab (diff) |
Merge staging-next into staging
Diffstat (limited to 'pkgs/development/libraries')
21 files changed, 289 insertions, 313 deletions
diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix index 6430be0b57fca..c723a54765b08 100644 --- a/pkgs/development/libraries/gjs/default.nix +++ b/pkgs/development/libraries/gjs/default.nix @@ -7,12 +7,14 @@ , gobject-introspection , spidermonkey_60 , pango +, cairo , readline , glib , libxml2 , dbus , gdk-pixbuf , makeWrapper +, nixosTests }: stdenv.mkDerivation rec { @@ -24,24 +26,24 @@ stdenv.mkDerivation rec { sha256 = "1xf68rbagkflb9yi3visfw8cbxqlzd717y8jakgw0y6whzm1dpxl"; }; - outputs = [ "out" "installedTests" ]; + outputs = [ "out" "dev" "installedTests" ]; nativeBuildInputs = [ pkgconfig makeWrapper + libxml2 # for xml-stripblanks ]; buildInputs = [ - libxml2 gobject-introspection - glib - pango + cairo readline - dbus + spidermonkey_60 + dbus # for dbus-run-session ]; propagatedBuildInputs = [ - spidermonkey_60 + glib ]; configureFlags = [ @@ -55,8 +57,6 @@ stdenv.mkDerivation rec { ''; postInstall = '' - sed 's|-lreadline|-L${readline.out}/lib -lreadline|g' -i $out/lib/libgjs.la - moveToOutput "share/installed-tests" "$installedTests" moveToOutput "libexec/gjs/installed-tests" "$installedTests" @@ -67,6 +67,10 @@ stdenv.mkDerivation rec { separateDebugInfo = stdenv.isLinux; passthru = { + tests = { + installed-tests = nixosTests.installed-tests.gjs; + }; + updateScript = gnome3.updateScript { packageName = "gjs"; }; diff --git a/pkgs/development/libraries/glib/setup-hook.sh b/pkgs/development/libraries/glib/setup-hook.sh index 20714ea7ab874..37c750b8db66e 100644 --- a/pkgs/development/libraries/glib/setup-hook.sh +++ b/pkgs/development/libraries/glib/setup-hook.sh @@ -1,8 +1,8 @@ make_glib_find_gsettings_schemas() { # For packages that need gschemas of other packages (e.g. empathy) - for maybe_dir in "$1"/share/gsettings-schemas/*/glib-2.0; do - if [[ -d "$maybe_dir/schemas" ]]; then + for maybe_dir in "$1"/share/gsettings-schemas/*; do + if [[ -d "$maybe_dir/glib-2.0/schemas" ]]; then addToSearchPath GSETTINGS_SCHEMAS_PATH "$maybe_dir" fi done diff --git a/pkgs/development/libraries/glui/default.nix b/pkgs/development/libraries/glui/default.nix index 9379a0032af66..8ac42375bf924 100644 --- a/pkgs/development/libraries/glui/default.nix +++ b/pkgs/development/libraries/glui/default.nix @@ -1,8 +1,27 @@ -{stdenv, fetchurl, freeglut, libGLU, libGL, libXmu, libXext, libX11, libXi}: -stdenv.mkDerivation { - name = "glui-2.35"; - buildInputs = [freeglut libGLU libGL libXmu libXext libX11 libXi]; +{ stdenv +, fetchurl +, freeglut +, libGL +, libGLU +, libX11 +, libXext +, libXi +, libXmu +}: + +stdenv.mkDerivation rec { + pname = "glui"; + version = "2.36"; + + src = fetchurl { + url = "mirror://sourceforge/project/glui/Source/${version}/glui-${version}.tgz"; + sha256 = "11r7f0k5jlbl825ibhm5c6bck0fn1hbliya9x1f253ikry1mxvy1"; + }; + + buildInputs = [ freeglut libGLU libGL libXmu libXext libX11 libXi ]; + preConfigure = ''cd src''; + installPhase = '' mkdir -p "$out"/{bin,lib,share/glui/doc,include} cp -rT bin "$out/bin" @@ -11,14 +30,11 @@ stdenv.mkDerivation { cp -rT doc "$out/share/glui/doc" cp LICENSE.txt "$out/share/glui/doc" ''; - src = fetchurl { - url = "mirror://sourceforge/project/glui/Source/2.36/glui-2.36.tgz"; - sha256 = "11r7f0k5jlbl825ibhm5c6bck0fn1hbliya9x1f253ikry1mxvy1"; - }; - meta = { + + meta = with stdenv.lib; { description = ''A user interface library using OpenGL''; - license = stdenv.lib.licenses.zlib ; - maintainers = [stdenv.lib.maintainers.raskin]; - platforms = stdenv.lib.platforms.linux; + license = licenses.zlib ; + maintainers = [ maintainers.raskin ]; + platforms = platforms.linux; }; } diff --git a/pkgs/development/libraries/hyphen/default.nix b/pkgs/development/libraries/hyphen/default.nix new file mode 100644 index 0000000000000..9f30ff54823f8 --- /dev/null +++ b/pkgs/development/libraries/hyphen/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchurl, perl, ... }: + +let + version = "2.8.8"; + folder = with builtins; + let parts = splitVersion version; + in concatStringsSep "." [ (elemAt parts 0) (elemAt parts 1) ]; +in stdenv.mkDerivation rec { + pname = "hyphen"; + inherit version; + + nativeBuildInputs = [ perl ]; + + src = fetchurl { + url = + "https://sourceforge.net/projects/hunspell/files/Hyphen/${folder}/${pname}-${version}.tar.gz"; + sha256 = "01ap9pr6zzzbp4ky0vy7i1983fwyqy27pl0ld55s30fdxka3ciih"; + }; + + meta = with stdenv.lib; { + description = "A text hyphenation library"; + homepage = "https://sourceforge.net/projects/hunspell/files/Hyphen/"; + platforms = platforms.all; + license = with licenses; [ gpl2 lgpl21 mpl11 ]; + maintainers = with maintainers; [ filalex77 ]; + }; +} diff --git a/pkgs/development/libraries/kde-frameworks/default.nix b/pkgs/development/libraries/kde-frameworks/default.nix index aa9f95eebd327..845c911789d0e 100644 --- a/pkgs/development/libraries/kde-frameworks/default.nix +++ b/pkgs/development/libraries/kde-frameworks/default.nix @@ -42,7 +42,7 @@ let propagate = out: let setupHook = { writeScript }: writeScript "setup-hook" '' - if [ "${hookName:-}" != postHook ]; then + if [ "''${hookName:-}" != postHook ]; then postHooks+=("source @dev@/nix-support/setup-hook") else # Propagate $dev so that this setup hook is propagated diff --git a/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/setup-hook.sh b/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/setup-hook.sh index 35982e8662844..4135f6bfd7aa3 100644 --- a/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/setup-hook.sh +++ b/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/setup-hook.sh @@ -42,12 +42,12 @@ ecmPostHook() { cmakeFlags+=" -DKDE_INSTALL_CONFDIR=${!outputBin}/etc/xdg" cmakeFlags+=" -DKDE_INSTALL_AUTOSTARTDIR=${!outputBin}/etc/xdg/autostart" - if [ -n "$qtPluginPrefix" ]; then + if [ -n "${qtPluginPrefix-}" ]; then cmakeFlags+=" -DKDE_INSTALL_QTPLUGINDIR=${!outputBin}/$qtPluginPrefix" cmakeFlags+=" -DKDE_INSTALL_PLUGINDIR=${!outputBin}/$qtPluginPrefix" fi - if [ -n "$qtQmlPrefix" ]; then + if [ -n "${qtQmlPrefix-}" ]; then cmakeFlags+=" -DKDE_INSTALL_QMLDIR=${!outputBin}/$qtQmlPrefix" fi } diff --git a/pkgs/development/libraries/ldns/default.nix b/pkgs/development/libraries/ldns/default.nix index 1aa208c2044fe..74ac59fef2835 100644 --- a/pkgs/development/libraries/ldns/default.nix +++ b/pkgs/development/libraries/ldns/default.nix @@ -1,29 +1,14 @@ -{ stdenv, fetchurl, fetchpatch, openssl, perl, which, dns-root-data }: +{ stdenv, fetchurl, openssl, perl, which, dns-root-data }: stdenv.mkDerivation rec { pname = "ldns"; - version = "1.7.0"; + version = "1.7.1"; src = fetchurl { url = "https://www.nlnetlabs.nl/downloads/ldns/${pname}-${version}.tar.gz"; - sha256 = "1k56jw4hz8njspfxcfw0czf1smg0n48ylia89ziwyx5k9wdmp7y1"; + sha256 = "0ac242n7996fswq1a3nlh1bbbhrsdwsq4mx7xq8ffq6aplb4rj4a"; }; - patches = [ - (fetchpatch { - name = "CVE-2017-1000231.patch"; - url = "https://git.nlnetlabs.nl/ldns/patch/?id=c8391790"; - sha256 = "1rprfh0y1c28dqiy3vgwvwdhn7b5rsylfzzblx5xdhwfqgdw8vn0"; - excludes = [ "Changelog" ]; - }) - (fetchpatch { - name = "CVE-2017-1000232.patch"; - url = "https://git.nlnetlabs.nl/ldns/patch/?id=3bdeed02"; - sha256 = "0bv0s5jjp0sswfg8da47d346iwp9yjhj9w7fa3bxh174br0zj07r"; - excludes = [ "Changelog" ]; - }) - ]; - postPatch = '' patchShebangs doc/doxyparse.pl ''; @@ -38,6 +23,7 @@ stdenv.mkDerivation rec { "--with-trust-anchor=${dns-root-data}/root.key" "--with-drill" "--disable-gost" + "--with-examples" ] ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "ac_cv_func_malloc_0_nonnull=yes" "ac_cv_func_realloc_0_nonnull=yes" @@ -47,16 +33,11 @@ stdenv.mkDerivation rec { doCheck = false; # fails. missing some files postInstall = '' + # Only 'drill' stays in $out + # the rest are examples: + moveToOutput "bin/ldns*" "$examples" + # with exception of ldns-config, which goes to $dev: moveToOutput "bin/ldns-config" "$dev" - - pushd examples - configureFlagsArray+=( "--bindir=$examples/bin" ) - configurePhase - make - make install - popd - - sed -i "$out/lib/libldns.la" -e "s,-L${openssl.dev},-L${openssl.out},g" ''; meta = with stdenv.lib; { @@ -64,6 +45,6 @@ stdenv.mkDerivation rec { license = licenses.bsd3; homepage = http://www.nlnetlabs.nl/projects/ldns/; platforms = platforms.unix; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ dtzWill ]; }; } diff --git a/pkgs/development/libraries/libheif/default.nix b/pkgs/development/libraries/libheif/default.nix index f69241ad552e7..85174e9c3e69f 100644 --- a/pkgs/development/libraries/libheif/default.nix +++ b/pkgs/development/libraries/libheif/default.nix @@ -2,13 +2,15 @@ stdenv.mkDerivation rec { pname = "libheif"; - version = "1.5.1"; + version = "1.6.0"; + + outputs = [ "bin" "out" "dev" "man" ]; src = fetchFromGitHub { owner = "strukturag"; repo = "libheif"; rev = "v${version}"; - sha256 = "0x6207hiy15k2696476qx9jcbzs90fq8cfv4jw6hi14w4wzq89kr"; + sha256 = "0im9k2pqghlsppj165kh3nc26c4wx1brckmncdmpy0mcj56jjmba"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; diff --git a/pkgs/development/libraries/libwmf/default.nix b/pkgs/development/libraries/libwmf/default.nix index e7aa5f7ecc9f3..5c684c7fd778e 100644 --- a/pkgs/development/libraries/libwmf/default.nix +++ b/pkgs/development/libraries/libwmf/default.nix @@ -6,6 +6,8 @@ stdenv.mkDerivation rec { pname = "libwmf"; version = "0.2.12"; + outputs = [ "out" "dev" ]; + src = fetchFromGitHub { owner = "caolanm"; repo = pname; diff --git a/pkgs/development/libraries/phonon/backends/gstreamer.nix b/pkgs/development/libraries/phonon/backends/gstreamer.nix index ef7633dadaf36..d9267827e779a 100644 --- a/pkgs/development/libraries/phonon/backends/gstreamer.nix +++ b/pkgs/development/libraries/phonon/backends/gstreamer.nix @@ -1,21 +1,13 @@ { stdenv, lib, fetchurl, cmake, gst_all_1, phonon, pkgconfig -, extra-cmake-modules, qtbase ? null, qtx11extras ? null, qt4 ? null -, withQt5 ? false +, extra-cmake-modules, qttools, qtbase, qtx11extras , debug ? false }: with lib; -let - v = "4.9.0"; +stdenv.mkDerivation rec { pname = "phonon-backend-gstreamer"; -in - -assert withQt5 -> qtbase != null; -assert withQt5 -> qtx11extras != null; - -stdenv.mkDerivation { - name = "${pname}-${if withQt5 then "qt5" else "qt4"}-${v}"; + version = "4.10.0"; meta = with stdenv.lib; { homepage = https://phonon.kde.org/; @@ -26,8 +18,8 @@ stdenv.mkDerivation { }; src = fetchurl { - url = "mirror://kde/stable/phonon/${pname}/${v}/${pname}-${v}.tar.xz"; - sha256 = "1wc5p1rqglf0n1avp55s50k7fjdzdrhg0gind15k8796w7nfbhyf"; + url = "mirror://kde/stable/phonon/${pname}/${version}/${pname}-${version}.tar.xz"; + sha256 = "1wk1ip2w7fkh65zk6rilj314dna0hgsv2xhjmpr5w08xa8sii1y5"; }; # Hardcode paths to useful plugins so the backend doesn't depend @@ -52,17 +44,26 @@ stdenv.mkDerivation { ''-DGST_PLUGIN_PATH_1_0="${gstPluginPaths}"'' ]; - buildInputs = with gst_all_1; - [ gstreamer gst-plugins-base phonon ] - ++ (if withQt5 then [ qtbase qtx11extras ] else [ qt4 ]); + buildInputs = with gst_all_1; [ + gstreamer + gst-plugins-base + phonon + qtbase + qtx11extras + ]; # cleanup: the build system creates (empty) $out/$out/share/icons (double prefix) # if DESTDIR is unset DESTDIR="/"; - nativeBuildInputs = [ cmake pkgconfig ] ++ optional withQt5 extra-cmake-modules; + nativeBuildInputs = [ + cmake + pkgconfig + extra-cmake-modules + qttools + ]; - cmakeFlags = - [ "-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}" ] - ++ optional withQt5 "-DPHONON_BUILD_PHONON4QT5=ON"; + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}" + ]; } diff --git a/pkgs/development/libraries/phonon/backends/vlc.nix b/pkgs/development/libraries/phonon/backends/vlc.nix index 98c6be85672c3..9ed137e4f4508 100644 --- a/pkgs/development/libraries/phonon/backends/vlc.nix +++ b/pkgs/development/libraries/phonon/backends/vlc.nix @@ -1,22 +1,13 @@ { stdenv, lib, fetchurl, cmake, phonon, pkgconfig, vlc -, extra-cmake-modules, qtbase ? null, qtx11extras ? null, qt4 ? null -, withQt4 ? false +, extra-cmake-modules, qttools, qtbase, qtx11extras , debug ? false }: with lib; -let - v = "0.10.2"; +stdenv.mkDerivation rec { pname = "phonon-backend-vlc"; -in - -assert withQt4 -> qt4 != null; -assert !withQt4 -> qtbase != null; -assert !withQt4 -> qtx11extras != null; - -stdenv.mkDerivation { - name = "${pname}-${if withQt4 then "qt4" else "qt5"}-${v}"; + version = "0.11.1"; meta = with stdenv.lib; { homepage = https://phonon.kde.org/; @@ -26,17 +17,25 @@ stdenv.mkDerivation { }; src = fetchurl { - url = "mirror://kde/stable/phonon/${pname}/${v}/${pname}-${v}.tar.xz"; - sha256 = "163jqq5p9n0yfw2fqk0cqn3c6mqycxsvc4956zhkw5345g81a2a9"; + url = "mirror://kde/stable/phonon/${pname}/${version}/${pname}-${version}.tar.xz"; + sha256 = "1vp52i5996khpxs233an7mlrzdji50gcs58ig8nrwfwlgyb1xnfc"; }; - buildInputs = - [ phonon vlc ] - ++ (if withQt4 then [ qt4 ] else [ qtbase qtx11extras ]); - - nativeBuildInputs = [ cmake pkgconfig ] ++ optional (!withQt4) extra-cmake-modules; - - cmakeFlags = - [ "-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}" ] - ++ optional (!withQt4) "-DPHONON_BUILD_PHONON4QT5=ON"; + buildInputs = [ + phonon + vlc + qtbase + qtx11extras + ]; + + nativeBuildInputs = [ + cmake + pkgconfig + qttools + extra-cmake-modules + ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}" + ]; } diff --git a/pkgs/development/libraries/phonon/default.nix b/pkgs/development/libraries/phonon/default.nix index 277823b91c0d2..86e3caaa1486c 100644 --- a/pkgs/development/libraries/phonon/default.nix +++ b/pkgs/development/libraries/phonon/default.nix @@ -1,22 +1,27 @@ -{ stdenv, lib, fetchurl, cmake, libGLU, libGL, pkgconfig, libpulseaudio -, qt4 ? null, extra-cmake-modules ? null, qtbase ? null, qttools ? null -, withQt5 ? false -, debug ? false }: +{ stdenv +, lib +, fetchurl +, cmake +, libGLU +, libGL +, pkgconfig +, libpulseaudio +, extra-cmake-modules +, qtbase +, qttools +, debug ? false +}: with lib; let - v = "4.11.1"; - - soname = if withQt5 then "phonon4qt5" else "phonon"; + soname = "phonon4qt5"; buildsystemdir = "share/cmake/${soname}"; in -assert withQt5 -> qtbase != null; -assert withQt5 -> qttools != null; - -stdenv.mkDerivation { - name = "phonon-${if withQt5 then "qt5" else "qt4"}-${v}"; +stdenv.mkDerivation rec { + pname = "phonon"; + version = "4.11.1"; meta = { homepage = https://phonon.kde.org/; @@ -27,25 +32,31 @@ stdenv.mkDerivation { }; src = fetchurl { - url = "mirror://kde/stable/phonon/${v}/phonon-${v}.tar.xz"; + url = "mirror://kde/stable/phonon/${version}/phonon-${version}.tar.xz"; sha256 = "0bfy8iqmjhlg3ma3iqd3kxjc2zkzpjgashbpf5x17y0dc2i1whxl"; }; - buildInputs = - [ libGLU libGL libpulseaudio ] - ++ (if withQt5 then [ qtbase qttools ] else [ qt4 ]); + buildInputs = [ + libGLU + libGL + libpulseaudio + qtbase + qttools + ]; - nativeBuildInputs = - [ cmake pkgconfig ] - ++ optional withQt5 extra-cmake-modules; + nativeBuildInputs = [ + cmake + pkgconfig + extra-cmake-modules + ]; outputs = [ "out" "dev" ]; NIX_CFLAGS_COMPILE = "-fPIC"; - cmakeFlags = - [ "-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}" ] - ++ optional withQt5 "-DPHONON_BUILD_PHONON4QT5=ON"; + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=${if debug then "Debug" else "Release"}" + ]; preConfigure = '' cmakeFlags+=" -DPHONON_QT_MKSPECS_INSTALL_DIR=''${!outputDev}/mkspecs" @@ -63,10 +74,8 @@ stdenv.mkDerivation { sed -i cmake/FindPhononInternal.cmake \ -e "/set(INCLUDE_INSTALL_DIR/ c set(INCLUDE_INSTALL_DIR \"''${!outputDev}/include\")" - ${optionalString withQt5 '' sed -i cmake/FindPhononInternal.cmake \ -e "/set(PLUGIN_INSTALL_DIR/ c set(PLUGIN_INSTALL_DIR \"$qtPluginPrefix/..\")" - ''} sed -i CMakeLists.txt \ -e "/set(BUILDSYSTEM_INSTALL_DIR/ c set(BUILDSYSTEM_INSTALL_DIR \"''${!outputDev}/${buildsystemdir}\")" diff --git a/pkgs/development/libraries/polkit/default.nix b/pkgs/development/libraries/polkit/default.nix index 05813bf29dcae..d0df41c3e5ff9 100644 --- a/pkgs/development/libraries/polkit/default.nix +++ b/pkgs/development/libraries/polkit/default.nix @@ -55,7 +55,8 @@ stdenv.mkDerivation rec { ++ [ libxslt docbook_xsl docbook_xml_dtd_412 ]; # man pages buildInputs = [ expat pam spidermonkey_60 ] - ++ (if useSystemd then [systemd] else [elogind]) + # On Linux, fall back to elogind when systemd support is off. + ++ stdenv.lib.optional stdenv.isLinux (if useSystemd then systemd else elogind) ++ stdenv.lib.optional withGnome gobject-introspection; propagatedBuildInputs = [ diff --git a/pkgs/development/libraries/qgnomeplatform/default.nix b/pkgs/development/libraries/qgnomeplatform/default.nix index 94c69a4a14b36..564fc70f2b974 100644 --- a/pkgs/development/libraries/qgnomeplatform/default.nix +++ b/pkgs/development/libraries/qgnomeplatform/default.nix @@ -1,14 +1,14 @@ -{ mkDerivation, lib, fetchFromGitHub, pkgconfig, gtk3, qtbase, qmake }: +{ mkDerivation, lib, fetchFromGitHub, pkgconfig, gtk3, qtbase, qmake, qtx11extras }: mkDerivation rec { pname = "qgnomeplatform"; - version = "0.5"; + version = "0.6.0"; src = fetchFromGitHub { owner = "FedoraQt"; repo = "QGnomePlatform"; rev = version; - sha256 = "01ncj21cxd5p7pch6p3zbhv5wp0dgn9vy5hrw54g49fmqnbb1ymz"; + sha256 = "0fb1mzs6sx76bl7f0z2xhc0jq6y1c55jrw1v3na8577is6g5ji0a"; }; nativeBuildInputs = [ @@ -19,11 +19,14 @@ mkDerivation rec { buildInputs = [ gtk3 qtbase + qtx11extras ]; postPatch = '' # Fix plugin dir - substituteInPlace qgnomeplatform.pro \ + substituteInPlace decoration/decoration.pro \ + --replace "\$\$[QT_INSTALL_PLUGINS]" "$out/$qtPluginPrefix" + substituteInPlace theme/theme.pro \ --replace "\$\$[QT_INSTALL_PLUGINS]" "$out/$qtPluginPrefix" ''; diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix index 2bb56bec8c0a9..ac70d6ec0f2cd 100644 --- a/pkgs/development/libraries/rocksdb/default.nix +++ b/pkgs/development/libraries/rocksdb/default.nix @@ -1,4 +1,8 @@ -{ stdenv, fetchFromGitHub, lib, bzip2, cmake, lz4, snappy, zlib, zstd, enableLite ? false }: +{ stdenv, fetchFromGitHub, fetchpatch +, cmake, ninja +, bzip2, lz4, snappy, zlib, zstd +, enableLite ? false +}: stdenv.mkDerivation rec { pname = "rocksdb"; @@ -11,9 +15,17 @@ stdenv.mkDerivation rec { sha256 = "0s0n4p1b4jzmslz9d2xd4ajra0m6l9x26mjwlbgw0klxjggmy8qn"; }; - nativeBuildInputs = [ cmake ]; + nativeBuildInputs = [ cmake ninja ]; buildInputs = [ bzip2 lz4 snappy zlib zstd ]; + patches = [ + # https://github.com/facebook/rocksdb/pull/6076 + (fetchpatch { + url = "https://github.com/facebook/rocksdb/commit/c0be4b2ff1a5393419673fab961cb9b09ba38752.diff"; + sha256 = "1f2wg9kqlmf2hiiihmbp8m5fr2wnn7896g6i9yg9hdgi40pw30w6"; + }) + ]; + postPatch = '' substituteInPlace CMakeLists.txt --replace "find_package(zlib " "find_package(ZLIB " ''; @@ -31,13 +43,17 @@ stdenv.mkDerivation rec { "-DWITH_ZSTD=1" "-DWITH_GFLAGS=0" "-DUSE_RTTI=1" - (lib.optional - (stdenv.hostPlatform.system == "i686-linux" - || stdenv.hostPlatform.system == "x86_64-linux") + "-DROCKSDB_INSTALL_ON_WINDOWS=YES" # harmless elsewhere + (stdenv.lib.optional + (stdenv.hostPlatform.isx86 && stdenv.hostPlatform.isLinux) "-DFORCE_SSE42=1") - (lib.optional enableLite "-DROCKSDB_LITE=1") + (stdenv.lib.optional enableLite "-DROCKSDB_LITE=1") + "-DFAIL_ON_WARNINGS=${if stdenv.hostPlatform.isMinGW then "NO" else "YES"}" ]; + # otherwise "cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]" + hardeningDisable = stdenv.lib.optional stdenv.hostPlatform.isWindows "format"; + meta = with stdenv.lib; { homepage = https://rocksdb.org; description = "A library that provides an embeddable, persistent key-value store for fast storage"; diff --git a/pkgs/development/libraries/science/math/scalapack/default.nix b/pkgs/development/libraries/science/math/scalapack/default.nix index 14277c8c6318d..bff0d9a85fa2c 100644 --- a/pkgs/development/libraries/science/math/scalapack/default.nix +++ b/pkgs/development/libraries/science/math/scalapack/default.nix @@ -1,20 +1,19 @@ -{ stdenv, fetchurl, cmake, openssh +{ stdenv, fetchFromGitHub, cmake, openssh , gfortran, mpi, openblasCompat } : stdenv.mkDerivation rec { pname = "scalapack"; - version = "2.0.2"; + version = "2.1"; - src = fetchurl { - url = "http://www.netlib.org/scalapack/scalapack-${version}.tgz"; - sha256 = "0p1r61ss1fq0bs8ynnx7xq4wwsdvs32ljvwjnx6yxr8gd6pawx0c"; + src = fetchFromGitHub { + owner = "Reference-ScaLAPACK"; + repo = pname; + rev = "v${version}"; + sha256 = "042q9kc383h7y0had9a37702z4s0szavss063ljvfdsbjy07gzb1"; }; - # patch to rename outdated MPI functions - patches = [ ./openmpi4.patch ]; - nativeBuildInputs = [ cmake openssh ]; buildInputs = [ mpi gfortran openblasCompat ]; diff --git a/pkgs/development/libraries/science/math/scalapack/openmpi4.patch b/pkgs/development/libraries/science/math/scalapack/openmpi4.patch deleted file mode 100644 index 5d0afb58c0277..0000000000000 --- a/pkgs/development/libraries/science/math/scalapack/openmpi4.patch +++ /dev/null @@ -1,143 +0,0 @@ -diff --git a/BLACS/SRC/blacs_get_.c b/BLACS/SRC/blacs_get_.c -index e979767..d4b04cf 100644 ---- a/BLACS/SRC/blacs_get_.c -+++ b/BLACS/SRC/blacs_get_.c -@@ -23,7 +23,7 @@ F_VOID_FUNC blacs_get_(int *ConTxt, int *what, int *val) - case SGET_MSGIDS: - if (BI_COMM_WORLD == NULL) Cblacs_pinfo(val, &val[1]); - iptr = &val[1]; -- ierr=MPI_Attr_get(MPI_COMM_WORLD, MPI_TAG_UB, (BVOID **) &iptr,val); -+ ierr=MPI_Comm_get_attr(MPI_COMM_WORLD, MPI_TAG_UB, (BVOID **) &iptr,val); - val[0] = 0; - val[1] = *iptr; - break; -diff --git a/BLACS/SRC/cgamn2d_.c b/BLACS/SRC/cgamn2d_.c -index 2db6ccb..6958f32 100644 ---- a/BLACS/SRC/cgamn2d_.c -+++ b/BLACS/SRC/cgamn2d_.c -@@ -221,7 +221,7 @@ F_VOID_FUNC cgamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/cgamx2d_.c b/BLACS/SRC/cgamx2d_.c -index 707c0b6..f802d01 100644 ---- a/BLACS/SRC/cgamx2d_.c -+++ b/BLACS/SRC/cgamx2d_.c -@@ -221,7 +221,7 @@ F_VOID_FUNC cgamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/dgamn2d_.c b/BLACS/SRC/dgamn2d_.c -index dff23b4..a2627ac 100644 ---- a/BLACS/SRC/dgamn2d_.c -+++ b/BLACS/SRC/dgamn2d_.c -@@ -221,7 +221,7 @@ F_VOID_FUNC dgamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/dgamx2d_.c b/BLACS/SRC/dgamx2d_.c -index a51f731..2a644d0 100644 ---- a/BLACS/SRC/dgamx2d_.c -+++ b/BLACS/SRC/dgamx2d_.c -@@ -221,7 +221,7 @@ F_VOID_FUNC dgamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/igamn2d_.c b/BLACS/SRC/igamn2d_.c -index 16bc003..f6a7859 100644 ---- a/BLACS/SRC/igamn2d_.c -+++ b/BLACS/SRC/igamn2d_.c -@@ -218,7 +218,7 @@ F_VOID_FUNC igamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/igamx2d_.c b/BLACS/SRC/igamx2d_.c -index 8165cbe..a7cfcc6 100644 ---- a/BLACS/SRC/igamx2d_.c -+++ b/BLACS/SRC/igamx2d_.c -@@ -218,7 +218,7 @@ F_VOID_FUNC igamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/sgamn2d_.c b/BLACS/SRC/sgamn2d_.c -index d6c95e5..569c797 100644 ---- a/BLACS/SRC/sgamn2d_.c -+++ b/BLACS/SRC/sgamn2d_.c -@@ -221,7 +221,7 @@ F_VOID_FUNC sgamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/sgamx2d_.c b/BLACS/SRC/sgamx2d_.c -index 4b0af6f..8897ece 100644 ---- a/BLACS/SRC/sgamx2d_.c -+++ b/BLACS/SRC/sgamx2d_.c -@@ -221,7 +221,7 @@ F_VOID_FUNC sgamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/zgamn2d_.c b/BLACS/SRC/zgamn2d_.c -index 9de2b23..37897df 100644 ---- a/BLACS/SRC/zgamn2d_.c -+++ b/BLACS/SRC/zgamn2d_.c -@@ -221,7 +221,7 @@ F_VOID_FUNC zgamn2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; -diff --git a/BLACS/SRC/zgamx2d_.c b/BLACS/SRC/zgamx2d_.c -index 414c381..0e9d474 100644 ---- a/BLACS/SRC/zgamx2d_.c -+++ b/BLACS/SRC/zgamx2d_.c -@@ -221,7 +221,7 @@ F_VOID_FUNC zgamx2d_(int *ConTxt, F_CHAR scope, F_CHAR top, int *m, int *n, - { - #endif - i = 2; -- ierr=MPI_Type_struct(i, len, disp, dtypes, &MyType); -+ ierr=MPI_Type_create_struct(i, len, disp, dtypes, &MyType); - ierr=MPI_Type_commit(&MyType); - bp->N = bp2->N = 1; - bp->dtype = bp2->dtype = MyType; diff --git a/pkgs/development/libraries/snappy/default.nix b/pkgs/development/libraries/snappy/default.nix index 80c3630af29e0..f35f5bfc55a2e 100644 --- a/pkgs/development/libraries/snappy/default.nix +++ b/pkgs/development/libraries/snappy/default.nix @@ -32,6 +32,6 @@ stdenv.mkDerivation rec { homepage = https://google.github.io/snappy/; license = licenses.bsd3; description = "Compression/decompression library for very high speeds"; - platforms = platforms.unix; + platforms = platforms.all; }; } diff --git a/pkgs/development/libraries/unixODBCDrivers/default.nix b/pkgs/development/libraries/unixODBCDrivers/default.nix index c1810443bdb3d..78f85afca9171 100644 --- a/pkgs/development/libraries/unixODBCDrivers/default.nix +++ b/pkgs/development/libraries/unixODBCDrivers/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, unixODBC, cmake, postgresql, mysql, libmysqlclient, sqlite, zlib, libxml2, dpkg, lib, openssl, kerberos, libuuid, patchelf }: +{ fetchurl, stdenv, unixODBC, cmake, postgresql, mysql, sqlite, zlib, libxml2, dpkg, lib, openssl, kerberos, libuuid, patchelf, libiconv, fetchFromGitHub }: # I haven't done any parameter tweaking.. So the defaults provided here might be bad @@ -29,35 +29,42 @@ mariadb = stdenv.mkDerivation rec { pname = "mariadb-connector-odbc"; - version = "3.1.2"; - - src = fetchurl { - url = "https://downloads.mariadb.org/interstitial/connector-odbc-${version}/${pname}-${version}-ga-src.tar.gz"; - sha256 = "0iibly2mbqijqyq4pzpb6dh40clqhvqrhgnj8knm4bw3nlksd0d5"; + version = "3.1.4"; + + src = fetchFromGitHub { + owner = "MariaDB"; + repo = "mariadb-connector-odbc"; + rev = version; + sha256 = "1kbz5mng9vx89cw2sx7gsvhbv4h86zwp31fr0hxqing3cwxhkfgw"; + # this driver only seems to build correctly when built against the mariadb-connect-c subrepo + # (see https://github.com/NixOS/nixpkgs/issues/73258) + fetchSubmodules = true; }; nativeBuildInputs = [ cmake ]; - buildInputs = [ unixODBC libmysqlclient openssl ]; + buildInputs = [ unixODBC openssl libiconv ]; + + preConfigure = '' + # we don't want to build a .pkg + sed -i 's/ADD_SUBDIRECTORY(osxinstall)//g' CMakeLists.txt + ''; cmakeFlags = [ "-DWITH_OPENSSL=ON" - ]; - - NIX_CFLAGS_COMPILE = [ - "-I${libmysqlclient}/include/mysql" - "-L${libmysqlclient}/lib/mysql" + # on darwin this defaults to ON but we want to build against unixODBC + "-DWITH_IODBC=OFF" ]; passthru = { fancyName = "MariaDB"; - driver = "lib/libmaodbc.so"; + driver = if stdenv.isDarwin then "lib/libmaodbc.dylib" else "lib/libmaodbc.so"; }; meta = with stdenv.lib; { description = "MariaDB ODBC database driver"; homepage = https://downloads.mariadb.org/connector-odbc/; license = licenses.gpl2; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; }; }; diff --git a/pkgs/development/libraries/wlroots/default.nix b/pkgs/development/libraries/wlroots/default.nix index 54464ffd4b663..a567e66285cc7 100644 --- a/pkgs/development/libraries/wlroots/default.nix +++ b/pkgs/development/libraries/wlroots/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig +{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, fetchpatch , wayland, libGL, wayland-protocols, libinput, libxkbcommon, pixman , xcbutilwm, libX11, libcap, xcbutilimage, xcbutilerrors, mesa , libpng, ffmpeg_4, freerdp @@ -15,6 +15,15 @@ stdenv.mkDerivation rec { sha256 = "1ak86kx617c81dy85wg9rldy1z3n8ch93cjc05a4j6sifv0nkyfm"; }; + patches = [ + # add missing header that changed in mesa-19.2.2 + # https://github.com/swaywm/wlroots/issues/1862 + (fetchpatch { + url = "https://github.com/swaywm/wlroots/commit/d113e48a2a32542fe6e12f1759f07888364609bf.diff"; + sha256 = "1h09j1gmnzlz4py92a92chgy8xzsd8h8xn5irq9s2hq4cla66h87"; + }) + ]; + # $out for the library and $examples for the example programs (in examples): outputs = [ "out" "examples" ]; diff --git a/pkgs/development/libraries/zeitgeist/default.nix b/pkgs/development/libraries/zeitgeist/default.nix index 9e3b06453bfae..98c94cfeccaad 100644 --- a/pkgs/development/libraries/zeitgeist/default.nix +++ b/pkgs/development/libraries/zeitgeist/default.nix @@ -1,7 +1,23 @@ -{ stdenv, fetchFromGitLab, pkgconfig, glib, sqlite, gobject-introspection, vala -, autoconf, automake, libtool, gettext, dbus, telepathy-glib -, gtk3, json-glib, librdf_raptor2, dbus-glib -, pythonSupport ? true, python2Packages +{ stdenv +, fetchFromGitLab +, fetchpatch +, pkgconfig +, glib +, sqlite +, gobject-introspection +, vala +, autoconf +, automake +, libtool +, gettext +, dbus +, telepathy-glib +, gtk3 +, json-glib +, librdf_raptor2 +, dbus-glib +, pythonSupport ? true +, python2Packages }: stdenv.mkDerivation rec { @@ -18,31 +34,58 @@ stdenv.mkDerivation rec { sha256 = "0ig3d3j1n0ghaxsgfww6g2hhcdwx8cljwwfmp9jk1nrvkxd6rnmv"; }; - preConfigure = "NOCONFIGURE=1 ./autogen.sh"; - - configureFlags = [ "--with-session-bus-services-dir=${placeholder "out"}/share/dbus-1/services" ]; + patches = [ + # Fix build with gettext 0.20 + (fetchpatch { + url = "https://gitlab.freedesktop.org/zeitgeist/zeitgeist/commit/b5c00e80189fd59a059a95c4e276728a2492cb89.patch"; + sha256 = "1r7f7j3l2p6xlzxajihgx8bzbc2sxcb9spc9pi26rz9bwmngdyq7"; + }) + ]; nativeBuildInputs = [ - autoconf automake libtool pkgconfig gettext gobject-introspection vala python2Packages.python + autoconf + automake + libtool + pkgconfig + gettext + gobject-introspection + vala + python2Packages.python ]; + buildInputs = [ - glib sqlite dbus telepathy-glib dbus-glib - gtk3 json-glib librdf_raptor2 python2Packages.rdflib + glib + sqlite + dbus + telepathy-glib + dbus-glib + gtk3 + json-glib + librdf_raptor2 + python2Packages.rdflib + ]; + + configureFlags = [ + "--with-session-bus-services-dir=${placeholder "out"}/share/dbus-1/services" ]; + enableParallelBuilding = true; + postPatch = '' patchShebangs data/ontology2code ''; - enableParallelBuilding = true; + preConfigure = '' + NOCONFIGURE=1 ./autogen.sh + ''; postFixup = stdenv.lib.optionalString pythonSupport '' moveToOutput lib/${python2Packages.python.libPrefix} "$py" ''; meta = with stdenv.lib; { - description = "A service which logs the users's activities and events"; - homepage = https://zeitgeist.freedesktop.org/; + description = "A service which logs the users’s activities and events"; + homepage = "https://zeitgeist.freedesktop.org/"; maintainers = with maintainers; [ lethalman worldofpeace ]; license = licenses.gpl2; platforms = platforms.linux; |