diff --git a/doc/languages-frameworks/gnome.xml b/doc/languages-frameworks/gnome.xml index 8b3151d5bf94..3d69d77a1c84 100644 --- a/doc/languages-frameworks/gnome.xml +++ b/doc/languages-frameworks/gnome.xml @@ -32,7 +32,11 @@ Icons - When an application uses icons, an icon theme should be available in XDG_DATA_DIRS. The package for the default, icon-less hicolor-icon-theme contains a setup hook that will pick up icon themes from buildInputs and pass it to our wrapper. Unfortunately, relying on that would mean every user has to download the theme included in the package expression no matter their preference. For that reason, we leave the installation of icon theme on the user. If you use one of the desktop environments, you probably already have an icon theme installed. + When an application uses icons, an icon theme should be available in XDG_DATA_DIRS during runtime. The package for the default, icon-less hicolor-icon-theme (should be propagated by every icon theme) contains a setup hook that will pick up icon themes from buildInputs and pass it to our wrapper. Unfortunately, relying on that would mean every user has to download the theme included in the package expression no matter their preference. For that reason, we leave the installation of icon theme on the user. If you use one of the desktop environments, you probably already have an icon theme installed. + + + + To avoid costly file system access when locating icons, GTK, as well as Qt, can rely on icon-theme.cache files from the themes’ top-level directories. These files are generated using gtk-update-icon-cache, which is expected to be run whenever an icon is added or removed to an icon theme (typically an application icon into hicolor theme) and some programs do indeed run this after icon installation. However, since packages are installed into their own prefix by Nix, this would lead to conflicts. For that reason, gtk3 provides a setup hook that will clean the file from installation. Since most applications only ship their own icon that will be loaded on start-up, it should not affect them too much. On the other hand, icon themes are much larger and more widely used so we need to cache them. Because we recommend installing icon themes globally, we will generate the cache files from all packages in a profile using a NixOS module. You can enable the cache generation using option if your desktop environment does not already do that. @@ -91,6 +95,11 @@ preFixup = '' glib setup hook will populate GSETTINGS_SCHEMAS_PATH and then wrapGAppsHook will prepend it to XDG_DATA_DIRS. + + + One of gtk3’s setup hooks will remove icon-theme.cache files from package’s icon theme directories to avoid conflicts. Icon theme packages should prevent this with dontDropIconThemeCache = true;. + + gnome3.dconf.lib is a dependency of wrapGAppsHook, which then also adds it to the GIO_EXTRA_MODULES variable. diff --git a/nixos/modules/services/networking/firewall.nix b/nixos/modules/services/networking/firewall.nix index 5b3aa19af3bb..5919962837a2 100644 --- a/nixos/modules/services/networking/firewall.nix +++ b/nixos/modules/services/networking/firewall.nix @@ -331,6 +331,17 @@ in ''; }; + package = mkOption { + type = types.package; + default = pkgs.iptables; + defaultText = "pkgs.iptables"; + example = literalExample "pkgs.iptables-nftables-compat"; + description = + '' + The iptables package to use for running the firewall service." + ''; + }; + logRefusedConnections = mkOption { type = types.bool; default = true; @@ -536,7 +547,7 @@ in networking.firewall.trustedInterfaces = [ "lo" ]; - environment.systemPackages = [ pkgs.iptables ] ++ cfg.extraPackages; + environment.systemPackages = [ cfg.package ] ++ cfg.extraPackages; boot.kernelModules = (optional cfg.autoLoadConntrackHelpers "nf_conntrack") ++ map (x: "nf_conntrack_${x}") cfg.connectionTrackingModules; @@ -555,7 +566,7 @@ in before = [ "network-pre.target" ]; after = [ "systemd-modules-load.service" ]; - path = [ pkgs.iptables ] ++ cfg.extraPackages; + path = [ cfg.package ] ++ cfg.extraPackages; # FIXME: this module may also try to load kernel modules, but # containers don't have CAP_SYS_MODULE. So the host system had diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix index 176d26e07b04..3f1d0727d9bc 100644 --- a/nixos/modules/services/networking/networkmanager.nix +++ b/nixos/modules/services/networking/networkmanager.nix @@ -202,7 +202,7 @@ in { dhcp = mkOption { type = types.enum [ "dhclient" "dhcpcd" "internal" ]; - default = "dhclient"; + default = "internal"; description = '' Which program (or internal library) should be used for DHCP. ''; diff --git a/pkgs/applications/audio/fluidsynth/default.nix b/pkgs/applications/audio/fluidsynth/default.nix index bb86787a3cf0..8e2895bf8478 100644 --- a/pkgs/applications/audio/fluidsynth/default.nix +++ b/pkgs/applications/audio/fluidsynth/default.nix @@ -11,8 +11,8 @@ let sha256 = "0n75jq3xgq46hfmjkaaxz3gic77shs4fzajq40c8gk043i84xbdh"; }; "2" = { - fluidsynthVersion = "2.0.5"; - sha256 = "0rv0apxbj0cgm8f8sqf5xr6kdi4q58ph92ip6cg716ha0ca5lr8y"; + fluidsynthVersion = "2.0.6"; + sha256 = "0nas9pp9r8rnziznxm65x2yzf1ryg98zr3946g0br3s38sjf8l3a"; }; }; in diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix index c967576a5aa5..df3d788f51f0 100644 --- a/pkgs/applications/audio/lollypop/default.nix +++ b/pkgs/applications/audio/lollypop/default.nix @@ -11,7 +11,6 @@ , appstream-glib , desktop-file-utils , totem-pl-parser -, hicolor-icon-theme , gobject-introspection , wrapGAppsHook , lastFMSupport ? true @@ -51,7 +50,6 @@ python3.pkgs.buildPythonApplication rec { gst-plugins-ugly gstreamer gtk3 - hicolor-icon-theme libsoup totem-pl-parser ] ++ lib.optional lastFMSupport libsecret; diff --git a/pkgs/applications/audio/pulseeffects/default.nix b/pkgs/applications/audio/pulseeffects/default.nix index 2a68f9a64f22..302dd5c8e697 100644 --- a/pkgs/applications/audio/pulseeffects/default.nix +++ b/pkgs/applications/audio/pulseeffects/default.nix @@ -32,7 +32,6 @@ , rubberband , mda_lv2 , lsp-plugins -, hicolor-icon-theme }: let @@ -86,7 +85,6 @@ in stdenv.mkDerivation rec { dbus fftwFloat zita-convolver - hicolor-icon-theme ]; postPatch = '' diff --git a/pkgs/applications/display-managers/lightdm/default.nix b/pkgs/applications/display-managers/lightdm/default.nix index 1df67578b3ac..795472bf64af 100644 --- a/pkgs/applications/display-managers/lightdm/default.nix +++ b/pkgs/applications/display-managers/lightdm/default.nix @@ -53,6 +53,11 @@ stdenv.mkDerivation rec { url = "https://src.fedoraproject.org/rpms/lightdm/raw/4cf0d2bed8d1c68970b0322ccd5dbbbb7a0b12bc/f/lightdm-1.25.1-disable_dmrc.patch"; sha256 = "06f7iabagrsiws2l75sx2jyljknr9js7ydn151p3qfi104d1541n"; }) + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://github.com/canonical/lightdm/commit/a99376f5f51aa147aaf81287d7ce70db76022c47.patch"; + sha256 = "1zyx1qqajrmqcf9hbsapd39gmdanswd9l78rq7q6rdy4692il3yn"; + }) ]; preConfigure = "NOCONFIGURE=1 ./autogen.sh"; diff --git a/pkgs/applications/display-managers/sddm/default.nix b/pkgs/applications/display-managers/sddm/default.nix index 526041124bcc..735e83a0842a 100644 --- a/pkgs/applications/display-managers/sddm/default.nix +++ b/pkgs/applications/display-managers/sddm/default.nix @@ -46,6 +46,7 @@ in mkDerivation { "-DQT_IMPORTS_DIR=${placeholder "out"}/${qtbase.qtQmlPrefix}" "-DCMAKE_INSTALL_SYSCONFDIR=${placeholder "out"}/etc" "-DSYSTEMD_SYSTEM_UNIT_DIR=${placeholder "out"}/lib/systemd/system" + "-DDBUS_CONFIG_DIR=${placeholder "out"}/share/dbus-1/system.d" ]; postInstall = '' diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix index 82ed8cc19748..6ac2c6d4964c 100644 --- a/pkgs/applications/editors/gnome-builder/default.nix +++ b/pkgs/applications/editors/gnome-builder/default.nix @@ -13,7 +13,6 @@ , gtk-doc , gtk3 , gtksourceview4 -, hicolor-icon-theme , json-glib , jsonrpc-glib , libdazzle @@ -53,7 +52,6 @@ stdenv.mkDerivation rec { docbook_xml_dtd_43 gobject-introspection gtk-doc - hicolor-icon-theme (meson.override ({ inherit stdenv; })) ninja pkgconfig diff --git a/pkgs/applications/graphics/avocode/default.nix b/pkgs/applications/graphics/avocode/default.nix index bb526b75ea42..20cbd6fc5cf8 100644 --- a/pkgs/applications/graphics/avocode/default.nix +++ b/pkgs/applications/graphics/avocode/default.nix @@ -1,6 +1,6 @@ { stdenv, makeDesktopItem, fetchurl, unzip , gdk-pixbuf, glib, gtk3, atk, at-spi2-atk, pango, cairo, freetype, fontconfig, dbus, nss, nspr, alsaLib, cups, expat, udev, gnome3 -, xorg, mozjpeg, makeWrapper, wrapGAppsHook, hicolor-icon-theme, libuuid, at-spi2-core +, xorg, mozjpeg, makeWrapper, wrapGAppsHook, libuuid, at-spi2-core }: stdenv.mkDerivation rec { @@ -57,7 +57,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [makeWrapper wrapGAppsHook]; - buildInputs = [ unzip gtk3 gnome3.adwaita-icon-theme hicolor-icon-theme ]; + buildInputs = [ unzip gtk3 gnome3.adwaita-icon-theme ]; # src is producing multiple folder on unzip so we must # override unpackCmd to extract it into newly created folder diff --git a/pkgs/applications/graphics/dia/default.nix b/pkgs/applications/graphics/dia/default.nix index a1f96337d743..3984cfc17ca5 100644 --- a/pkgs/applications/graphics/dia/default.nix +++ b/pkgs/applications/graphics/dia/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchgit, autoconf, automake, libtool, gtk2, pkgconfig, perlPackages, libxml2, gettext, python, libxml2Python, docbook5, docbook_xsl, -libxslt, intltool, libart_lgpl, withGNOME ? false, libgnomeui, hicolor-icon-theme, +libxslt, intltool, libart_lgpl, withGNOME ? false, libgnomeui, gtk-mac-integration-gtk2 }: stdenv.mkDerivation { @@ -15,7 +15,7 @@ stdenv.mkDerivation { buildInputs = [ gtk2 libxml2 gettext python libxml2Python docbook5 - libxslt docbook_xsl libart_lgpl hicolor-icon-theme ] + libxslt docbook_xsl libart_lgpl ] ++ stdenv.lib.optional withGNOME libgnomeui ++ stdenv.lib.optional stdenv.isDarwin gtk-mac-integration-gtk2; diff --git a/pkgs/applications/graphics/glabels/default.nix b/pkgs/applications/graphics/glabels/default.nix index 6bc59cd7d02b..3bfd51d0370d 100644 --- a/pkgs/applications/graphics/glabels/default.nix +++ b/pkgs/applications/graphics/glabels/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, barcode, gnome3, autoreconfHook , gtk3, gtk-doc, libxml2, librsvg , libtool, libe-book, gsettings-desktop-schemas -, intltool, itstool, makeWrapper, pkgconfig, hicolor-icon-theme +, intltool, itstool, makeWrapper, pkgconfig }: stdenv.mkDerivation rec { @@ -17,7 +17,6 @@ stdenv.mkDerivation rec { barcode gtk3 gtk-doc gnome3.yelp-tools gnome3.gnome-common gsettings-desktop-schemas itstool libxml2 librsvg libe-book libtool - hicolor-icon-theme ]; preFixup = '' diff --git a/pkgs/applications/graphics/ideogram/default.nix b/pkgs/applications/graphics/ideogram/default.nix index a80008787535..61b45ce16032 100644 --- a/pkgs/applications/graphics/ideogram/default.nix +++ b/pkgs/applications/graphics/ideogram/default.nix @@ -12,7 +12,6 @@ , pantheon , desktop-file-utils , xorg -, hicolor-icon-theme , wrapGAppsHook }: @@ -29,7 +28,6 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ desktop-file-utils - hicolor-icon-theme # for setup-hook meson ninja vala diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix index 547e2914399b..ed1f61b98d3a 100644 --- a/pkgs/applications/graphics/inkscape/default.nix +++ b/pkgs/applications/graphics/inkscape/default.nix @@ -2,7 +2,7 @@ , libpng, zlib, popt, boehmgc, libxml2, libxslt, glib, gtkmm2 , glibmm, libsigcxx, lcms, boost, gettext, makeWrapper , gsl, python2, poppler, imagemagick, libwpg, librevenge -, libvisio, libcdr, libexif, potrace, cmake, hicolor-icon-theme +, libvisio, libcdr, libexif, potrace, cmake , librsvg, wrapGAppsHook }: @@ -47,7 +47,7 @@ stdenv.mkDerivation rec { libXft libpng zlib popt boehmgc libxml2 libxslt glib gtkmm2 glibmm libsigcxx lcms boost gettext gsl poppler imagemagick libwpg librevenge - libvisio libcdr libexif potrace hicolor-icon-theme + libvisio libcdr libexif potrace librsvg # for loading icons diff --git a/pkgs/applications/graphics/mypaint/default.nix b/pkgs/applications/graphics/mypaint/default.nix index 1b51732b918c..c08bbbea7668 100644 --- a/pkgs/applications/graphics/mypaint/default.nix +++ b/pkgs/applications/graphics/mypaint/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, gtk3, intltool, json_c, lcms2, libpng, librsvg, gobject-introspection, hicolor-icon-theme +{ stdenv, fetchFromGitHub, gtk3, intltool, json_c, lcms2, libpng, librsvg, gobject-introspection , gdk-pixbuf, pkgconfig, python2Packages, scons, swig, wrapGAppsHook }: let @@ -21,7 +21,7 @@ in stdenv.mkDerivation { ]; buildInputs = [ - gtk3 gdk-pixbuf json_c lcms2 libpng librsvg pycairo pygobject3 python hicolor-icon-theme + gtk3 gdk-pixbuf json_c lcms2 libpng librsvg pycairo pygobject3 python ]; propagatedBuildInputs = [ numpy ]; diff --git a/pkgs/applications/graphics/vimiv/default.nix b/pkgs/applications/graphics/vimiv/default.nix index 5fc7e309f4df..fab85052df3b 100644 --- a/pkgs/applications/graphics/vimiv/default.nix +++ b/pkgs/applications/graphics/vimiv/default.nix @@ -1,5 +1,5 @@ { lib, python3Packages, fetchFromGitHub, imagemagick, librsvg, gtk3, jhead -, hicolor-icon-theme, gnome3 +, gnome3 # Test requirements , dbus, xvfb_run, xdotool @@ -38,7 +38,7 @@ python3Packages.buildPythonApplication rec { ''; checkInputs = [ python3Packages.nose dbus.daemon xvfb_run xdotool ]; - buildInputs = [ hicolor-icon-theme gnome3.adwaita-icon-theme librsvg ]; + buildInputs = [ gnome3.adwaita-icon-theme librsvg ]; propagatedBuildInputs = with python3Packages; [ pillow pygobject3 gtk3 ]; makeWrapperArgs = [ diff --git a/pkgs/applications/graphics/xournalpp/default.nix b/pkgs/applications/graphics/xournalpp/default.nix index 41539f32b071..797b01b20d1a 100644 --- a/pkgs/applications/graphics/xournalpp/default.nix +++ b/pkgs/applications/graphics/xournalpp/default.nix @@ -10,7 +10,6 @@ , glib , gsettings-desktop-schemas , gtk3 -, hicolor-icon-theme , libsndfile , libxml2 , libzip @@ -38,7 +37,6 @@ stdenv.mkDerivation rec { [ glib gsettings-desktop-schemas gtk3 - hicolor-icon-theme libsndfile libxml2 libzip diff --git a/pkgs/applications/kde/kate.nix b/pkgs/applications/kde/kate.nix index 95ff6cf198b2..f01a57a55d4d 100644 --- a/pkgs/applications/kde/kate.nix +++ b/pkgs/applications/kde/kate.nix @@ -15,8 +15,8 @@ mkDerivation { }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; - buildInputs = [ libgit2 ]; - propagatedBuildInputs = [ + buildInputs = [ + libgit2 kactivities ki18n kio ktexteditor kwindowsystem plasma-framework qtscript kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts kxmlgui kdbusaddons kwallet kitemmodels knotifications threadweaver diff --git a/pkgs/applications/kde/konsole.nix b/pkgs/applications/kde/konsole.nix index 004fc1c37ae2..1be5b0b4a894 100644 --- a/pkgs/applications/kde/konsole.nix +++ b/pkgs/applications/kde/konsole.nix @@ -1,5 +1,5 @@ { - mkDerivation, lib, makeWrapper, + mkDerivation, lib, extra-cmake-modules, kdoctools, kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kguiaddons, ki18n, kiconthemes, kinit, kdelibs4support, kio, knotifications, @@ -18,12 +18,7 @@ mkDerivation { kbookmarks kcompletion kconfig kconfigwidgets kcoreaddons kdelibs4support kguiaddons ki18n kiconthemes kinit kio knotifications knotifyconfig kparts kpty kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript knewstuff - makeWrapper ]; - postInstall = '' - wrapProgram $out/bin/konsole --prefix XDG_DATA_DIRS ":" $out/share - ''; - propagatedUserEnvPkgs = [ (lib.getBin kinit) ]; } diff --git a/pkgs/applications/misc/appeditor/default.nix b/pkgs/applications/misc/appeditor/default.nix index 2be1a6007f10..398e14a9c252 100644 --- a/pkgs/applications/misc/appeditor/default.nix +++ b/pkgs/applications/misc/appeditor/default.nix @@ -9,7 +9,6 @@ , gettext , glib , gtk3 -, hicolor-icon-theme , libgee , wrapGAppsHook }: @@ -37,7 +36,6 @@ stdenv.mkDerivation rec { buildInputs = [ glib gtk3 - hicolor-icon-theme pantheon.granite libgee ]; diff --git a/pkgs/applications/misc/clipit/default.nix b/pkgs/applications/misc/clipit/default.nix index 7a4e25560c7b..129516a44982 100644 --- a/pkgs/applications/misc/clipit/default.nix +++ b/pkgs/applications/misc/clipit/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, intltool, pkgconfig, gtk2, xdotool, hicolor-icon-theme }: +{ fetchurl, stdenv, intltool, pkgconfig, gtk2, xdotool }: stdenv.mkDerivation rec { pname = "clipit"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool gtk2 xdotool hicolor-icon-theme ]; + buildInputs = [ intltool gtk2 xdotool ]; meta = with stdenv.lib; { description = "Lightweight GTK Clipboard Manager"; diff --git a/pkgs/applications/misc/djvulibre/default.nix b/pkgs/applications/misc/djvulibre/default.nix index 0b685e04a6fc..182ab51dbc2c 100644 --- a/pkgs/applications/misc/djvulibre/default.nix +++ b/pkgs/applications/misc/djvulibre/default.nix @@ -1,22 +1,34 @@ -{ stdenv, fetchurl, libjpeg, libtiff, librsvg, libiconv }: +{ stdenv +, fetchurl +, libjpeg +, libtiff +, librsvg +, libiconv +}: stdenv.mkDerivation rec { - name = "djvulibre-3.5.27"; + pname = "djvulibre"; + version = "3.5.27"; src = fetchurl { - url = "mirror://sourceforge/djvu/${name}.tar.gz"; + url = "mirror://sourceforge/djvu/${pname}-${version}.tar.gz"; sha256 = "0psh3zl9dj4n4r3lx25390nx34xz0bg0ql48zdskhq354ljni5p6"; }; outputs = [ "bin" "dev" "out" ]; - buildInputs = [ libjpeg libtiff librsvg libiconv ]; + buildInputs = [ + libjpeg + libtiff + librsvg + libiconv + ]; meta = with stdenv.lib; { - description = "A library and viewer for the DJVU file format for scanned images"; - homepage = http://djvu.sourceforge.net; + description = "The big set of CLI tools to make/modify/optimize/show/export DJVU files"; + homepage = "http://djvu.sourceforge.net"; license = licenses.gpl2; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ Anton-Latukha ]; platforms = platforms.all; }; } diff --git a/pkgs/applications/misc/gxmessage/default.nix b/pkgs/applications/misc/gxmessage/default.nix index a7313e7c969b..ce0a6963ea99 100644 --- a/pkgs/applications/misc/gxmessage/default.nix +++ b/pkgs/applications/misc/gxmessage/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, gtk3, intltool, pkgconfig, texinfo, hicolor-icon-theme }: +{ stdenv, fetchurl, gtk3, intltool, pkgconfig, texinfo }: stdenv.mkDerivation rec { pname = "gxmessage"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ intltool gtk3 texinfo hicolor-icon-theme ]; + buildInputs = [ intltool gtk3 texinfo ]; meta = { description = "A GTK enabled dropin replacement for xmessage"; diff --git a/pkgs/applications/misc/kupfer/default.nix b/pkgs/applications/misc/kupfer/default.nix index 81cba3f56378..c7f54990107f 100644 --- a/pkgs/applications/misc/kupfer/default.nix +++ b/pkgs/applications/misc/kupfer/default.nix @@ -6,7 +6,6 @@ , gtk3 , libwnck3 , keybinder3 -, hicolor-icon-theme , wrapGAppsHook , wafHook }: @@ -27,7 +26,7 @@ buildPythonApplication rec { # For setup hook gobject-introspection wafHook ]; - buildInputs = [ hicolor-icon-theme docutils libwnck3 keybinder3 ]; + buildInputs = [ docutils libwnck3 keybinder3 ]; propagatedBuildInputs = [ pygobject3 gtk3 pyxdg dbus-python pycairo ]; # without strictDeps kupfer fails to build: Could not find the python module 'gi.repository.Gtk' diff --git a/pkgs/applications/misc/megasync/default.nix b/pkgs/applications/misc/megasync/default.nix index bc753c5a7a9a..6e51e3cda762 100644 --- a/pkgs/applications/misc/megasync/default.nix +++ b/pkgs/applications/misc/megasync/default.nix @@ -7,7 +7,6 @@ , doxygen , fetchFromGitHub , ffmpeg -, hicolor-icon-theme , libmediainfo , libraw , libsodium @@ -51,7 +50,6 @@ mkDerivation rec { cryptopp curl ffmpeg - hicolor-icon-theme libmediainfo libraw libsodium diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/applications/misc/orca/default.nix index 4009bbb6da15..37b93eecf391 100644 --- a/pkgs/applications/misc/orca/default.nix +++ b/pkgs/applications/misc/orca/default.nix @@ -1,7 +1,7 @@ { stdenv, pkgconfig, fetchurl, buildPythonApplication , autoreconfHook, wrapGAppsHook, gobject-introspection , gettext, yelp-tools, itstool, libxmlxx3 -, python, pygobject3, gtk3, gnome3, substituteAll, hicolor-icon-theme +, python, pygobject3, gtk3, gnome3, substituteAll , at-spi2-atk, at-spi2-core, pyatspi, dbus, dbus-python, pyxdg , xkbcomp, procps, lsof, coreutils, gsettings-desktop-schemas , speechd, brltty, liblouis, setproctitle, gst_all_1, gst-python @@ -31,7 +31,6 @@ buildPythonApplication rec { nativeBuildInputs = [ autoreconfHook wrapGAppsHook pkgconfig libxmlxx3 gettext yelp-tools itstool gobject-introspection - hicolor-icon-theme # setup-hook ]; propagatedBuildInputs = [ diff --git a/pkgs/applications/misc/redshift/default.nix b/pkgs/applications/misc/redshift/default.nix index ad27c9b13a61..b751560b301a 100644 --- a/pkgs/applications/misc/redshift/default.nix +++ b/pkgs/applications/misc/redshift/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchFromGitHub, autoconf, automake, gettext, intltool , libtool, pkgconfig, wrapGAppsHook, wrapPython, gobject-introspection -, gtk3, python, pygobject3, hicolor-icon-theme, pyxdg +, gtk3, python, pygobject3, pyxdg , withQuartz ? stdenv.isDarwin, ApplicationServices , withRandr ? stdenv.isLinux, libxcb @@ -50,7 +50,6 @@ stdenv.mkDerivation rec { gobject-introspection gtk3 python - hicolor-icon-theme ] ++ stdenv.lib.optional withRandr libxcb ++ stdenv.lib.optional withGeoclue geoclue ++ stdenv.lib.optional withDrm libdrm diff --git a/pkgs/applications/misc/roxterm/default.nix b/pkgs/applications/misc/roxterm/default.nix index efd2ddad2216..d02296f0e16d 100644 --- a/pkgs/applications/misc/roxterm/default.nix +++ b/pkgs/applications/misc/roxterm/default.nix @@ -1,5 +1,5 @@ { at-spi2-core, cmake, dbus, dbus-glib, docbook_xsl, epoxy, fetchpatch, fetchFromGitHub -, glib, gtk3, harfbuzz, hicolor-icon-theme, libXdmcp, libXtst, libpthreadstubs +, glib, gtk3, harfbuzz, libXdmcp, libXtst, libpthreadstubs , libselinux, libsepol, libtasn1, libxkbcommon, libxslt, p11-kit, pcre2 , pkgconfig, stdenv, utillinuxMinimal, vte, wrapGAppsHook, xmlto }: @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 dbus dbus-glib vte pcre2 harfbuzz libpthreadstubs libXdmcp - utillinuxMinimal glib hicolor-icon-theme docbook_xsl xmlto libselinux + utillinuxMinimal glib docbook_xsl xmlto libselinux libsepol libxkbcommon epoxy at-spi2-core libXtst libtasn1 p11-kit ]; diff --git a/pkgs/applications/misc/synapse/default.nix b/pkgs/applications/misc/synapse/default.nix index c314e8ffe5ac..c12f5b176790 100644 --- a/pkgs/applications/misc/synapse/default.nix +++ b/pkgs/applications/misc/synapse/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, gettext, pkgconfig, glib, libnotify, gtk3, libgee -, keybinder3, json-glib, zeitgeist, vala, hicolor-icon-theme, gobject-introspection +, keybinder3, json-glib, zeitgeist, vala, gobject-introspection }: let @@ -20,7 +20,6 @@ in stdenv.mkDerivation rec { ]; buildInputs = [ glib libnotify gtk3 libgee keybinder3 json-glib zeitgeist - hicolor-icon-theme ]; meta = with stdenv.lib; { diff --git a/pkgs/applications/misc/tilix/default.nix b/pkgs/applications/misc/tilix/default.nix index 326b24cc6722..922b3fd20286 100644 --- a/pkgs/applications/misc/tilix/default.nix +++ b/pkgs/applications/misc/tilix/default.nix @@ -16,7 +16,6 @@ , glib , wrapGAppsHook , libunwind -, hicolor-icon-theme }: stdenv.mkDerivation { @@ -38,7 +37,6 @@ stdenv.mkDerivation { nativeBuildInputs = [ desktop-file-utils dmd - hicolor-icon-theme # for setup-hook meson ninja pkgconfig diff --git a/pkgs/applications/misc/tint2/default.nix b/pkgs/applications/misc/tint2/default.nix index e612fb10ff8c..c85feff43603 100644 --- a/pkgs/applications/misc/tint2/default.nix +++ b/pkgs/applications/misc/tint2/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitLab, pkgconfig, cmake, gettext, cairo, pango, pcre , glib, imlib2, gtk2, libXinerama, libXrender, libXcomposite, libXdamage , libX11, libXrandr, librsvg, libpthreadstubs, libXdmcp -, libstartup_notification, hicolor-icon-theme, wrapGAppsHook +, libstartup_notification, wrapGAppsHook }: stdenv.mkDerivation rec { @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { buildInputs = [ cairo pango pcre glib imlib2 gtk2 libXinerama libXrender libXcomposite libXdamage libX11 libXrandr librsvg libpthreadstubs - libXdmcp libstartup_notification hicolor-icon-theme ]; + libXdmcp libstartup_notification ]; postPatch = '' for f in ./src/launcher/apps-common.c \ diff --git a/pkgs/applications/misc/tootle/default.nix b/pkgs/applications/misc/tootle/default.nix index 5442194598d3..e747531b9e75 100644 --- a/pkgs/applications/misc/tootle/default.nix +++ b/pkgs/applications/misc/tootle/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub , vala, meson, ninja, pkgconfig, python3, libgee, gsettings-desktop-schemas , gnome3, pantheon, gobject-introspection, wrapGAppsHook -, gtk3, json-glib, glib, glib-networking, hicolor-icon-theme +, gtk3, json-glib, glib, glib-networking }: let @@ -27,7 +27,7 @@ in stdenv.mkDerivation { wrapGAppsHook ]; buildInputs = [ - gtk3 pantheon.granite json-glib glib glib-networking hicolor-icon-theme + gtk3 pantheon.granite json-glib glib glib-networking libgee gnome3.libsoup gsettings-desktop-schemas ]; diff --git a/pkgs/applications/misc/udiskie/default.nix b/pkgs/applications/misc/udiskie/default.nix index 459104aba638..63892439fa03 100644 --- a/pkgs/applications/misc/udiskie/default.nix +++ b/pkgs/applications/misc/udiskie/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchFromGitHub, asciidoc-full, gettext -, gobject-introspection, gtk3, hicolor-icon-theme, libappindicator-gtk3, libnotify, librsvg +, gobject-introspection, gtk3, libappindicator-gtk3, libnotify, librsvg , udisks2, wrapGAppsHook , python3Packages }: @@ -23,7 +23,6 @@ python3Packages.buildPythonApplication rec { ]; buildInputs = [ - hicolor-icon-theme librsvg # required for loading svg icons (udiskie uses svg icons) gobject-introspection libnotify diff --git a/pkgs/applications/misc/ulauncher/default.nix b/pkgs/applications/misc/ulauncher/default.nix index 3db6f6ae565d..9fa284aba434 100644 --- a/pkgs/applications/misc/ulauncher/default.nix +++ b/pkgs/applications/misc/ulauncher/default.nix @@ -10,7 +10,6 @@ , libappindicator , intltool , wmctrl -, hicolor-icon-theme , xvfb_run }: @@ -36,7 +35,6 @@ python27Packages.buildPythonApplication rec { buildInputs = [ gnome3.adwaita-icon-theme gobject-introspection - hicolor-icon-theme keybinder3 libappindicator libnotify diff --git a/pkgs/applications/misc/viking/default.nix b/pkgs/applications/misc/viking/default.nix index 2d8a860e7e86..c5ba35d97475 100644 --- a/pkgs/applications/misc/viking/default.nix +++ b/pkgs/applications/misc/viking/default.nix @@ -1,6 +1,6 @@ { fetchurl, stdenv, makeWrapper, pkgconfig, intltool, gettext, gtk2, expat, curl , gpsd, bc, file, gnome-doc-utils, libexif, libxml2, libxslt, scrollkeeper -, docbook_xml_dtd_412, gexiv2, sqlite, gpsbabel, expect, hicolor-icon-theme +, docbook_xml_dtd_412, gexiv2, sqlite, gpsbabel, expect , geoclue2, liboauth, nettle }: stdenv.mkDerivation rec { @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; buildInputs = [ makeWrapper intltool gettext gtk2 expat curl gpsd bc file gnome-doc-utils - libexif libxml2 libxslt scrollkeeper docbook_xml_dtd_412 gexiv2 sqlite hicolor-icon-theme + libexif libxml2 libxslt scrollkeeper docbook_xml_dtd_412 gexiv2 sqlite geoclue2 liboauth nettle ]; diff --git a/pkgs/applications/misc/xpad/default.nix b/pkgs/applications/misc/xpad/default.nix index bc91083892db..40f7ef9da08e 100644 --- a/pkgs/applications/misc/xpad/default.nix +++ b/pkgs/applications/misc/xpad/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl , autoreconfHook, pkgconfig, wrapGAppsHook -, glib, intltool, gtk3, gtksourceview, hicolor-icon-theme }: +, glib, intltool, gtk3, gtksourceview }: stdenv.mkDerivation rec { pname = "xpad"; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook pkgconfig wrapGAppsHook ]; - buildInputs = [ glib intltool gtk3 gtksourceview hicolor-icon-theme ]; + buildInputs = [ glib intltool gtk3 gtksourceview ]; meta = with stdenv.lib; { description = "A sticky note application for jotting down things to remember"; diff --git a/pkgs/applications/networking/browsers/ephemeral/default.nix b/pkgs/applications/networking/browsers/ephemeral/default.nix index cd9a8a8f0517..14c6238ec56f 100644 --- a/pkgs/applications/networking/browsers/ephemeral/default.nix +++ b/pkgs/applications/networking/browsers/ephemeral/default.nix @@ -5,7 +5,6 @@ , gettext , glib , gtk3 -, hicolor-icon-theme , libgee , libdazzle , meson @@ -44,7 +43,6 @@ stdenv.mkDerivation rec { glib glib-networking gtk3 - hicolor-icon-theme libdazzle libgee pantheon.granite diff --git a/pkgs/applications/networking/feedreaders/feedreader/default.nix b/pkgs/applications/networking/feedreaders/feedreader/default.nix index c2fda72e36a7..350e96a94a75 100644 --- a/pkgs/applications/networking/feedreaders/feedreader/default.nix +++ b/pkgs/applications/networking/feedreaders/feedreader/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchFromGitHub, meson, ninja, pkgconfig, vala, gettext, python3 , appstream-glib, desktop-file-utils, wrapGAppsHook, gnome-online-accounts, fetchpatch -, gtk3, libgee, libpeas, librest, webkitgtk, gsettings-desktop-schemas, hicolor-icon-theme +, gtk3, libgee, libpeas, librest, webkitgtk, gsettings-desktop-schemas , curl, glib, gnome3, gst_all_1, json-glib, libnotify, libsecret, sqlite, gumbo, libxml2 }: @@ -24,7 +24,6 @@ stdenv.mkDerivation rec { curl glib json-glib libnotify libsecret sqlite gumbo gtk3 libgee libpeas gnome3.libsoup librest webkitgtk gsettings-desktop-schemas gnome-online-accounts - hicolor-icon-theme # for setup hook ] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good ]); diff --git a/pkgs/applications/networking/instant-messengers/fractal/default.nix b/pkgs/applications/networking/instant-messengers/fractal/default.nix index bacf6b4338ac..478d27fcfb3f 100644 --- a/pkgs/applications/networking/instant-messengers/fractal/default.nix +++ b/pkgs/applications/networking/instant-messengers/fractal/default.nix @@ -10,7 +10,6 @@ , rustPlatform , pkgconfig , gtksourceview -, hicolor-icon-theme , glib , libhandy , gtk3 @@ -61,7 +60,6 @@ rustPlatform.buildRustPackage rec { gst_all_1.gstreamer gtk3 gtksourceview - hicolor-icon-theme libhandy openssl sqlite diff --git a/pkgs/applications/networking/irc/hexchat/default.nix b/pkgs/applications/networking/irc/hexchat/default.nix index 331be19abc4c..f537627f976f 100644 --- a/pkgs/applications/networking/irc/hexchat/default.nix +++ b/pkgs/applications/networking/irc/hexchat/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub, fetchpatch, pkgconfig, gtk2, lua, perl, python3 , pciutils, dbus-glib, libcanberra-gtk2, libproxy , libsexy, enchant2, libnotify, openssl, isocodes -, desktop-file-utils, hicolor-icon-theme +, desktop-file-utils , meson, ninja }: @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { buildInputs = [ gtk2 lua perl python3 pciutils dbus-glib libcanberra-gtk2 libproxy - libsexy libnotify openssl desktop-file-utils hicolor-icon-theme + libsexy libnotify openssl desktop-file-utils isocodes ]; diff --git a/pkgs/applications/networking/mailreaders/balsa/default.nix b/pkgs/applications/networking/mailreaders/balsa/default.nix index 15f707e06a2d..ff6599598760 100644 --- a/pkgs/applications/networking/mailreaders/balsa/default.nix +++ b/pkgs/applications/networking/mailreaders/balsa/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, pkgconfig, intltool, glib, gtk3, gmime, gnutls, webkitgtk, libesmtp, openssl, libnotify, gtkspell3, gpgme, libcanberra-gtk3, libsecret, gtksourceview, gobject-introspection, - hicolor-icon-theme, wrapGAppsHook + wrapGAppsHook }: stdenv.mkDerivation rec { @@ -17,7 +17,6 @@ stdenv.mkDerivation rec { pkgconfig intltool gobject-introspection - hicolor-icon-theme wrapGAppsHook ]; diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix index d7df94f7e673..9fcf72ce4bc0 100644 --- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix +++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix @@ -1,8 +1,8 @@ { config, fetchurl, stdenv, wrapGAppsHook, autoreconfHook -, curl, dbus, dbus-glib, enchant, gtk2, gnutls, gnupg, gpgme, hicolor-icon-theme +, curl, dbus, dbus-glib, enchant, gtk2, gnutls, gnupg, gpgme , libarchive, libcanberra-gtk2, libetpan, libnotify, libsoup, libxml2, networkmanager , openldap, perl, pkgconfig, poppler, python, shared-mime-info, webkitgtk24x-gtk2 -, glib-networking, gsettings-desktop-schemas, libSM, libytnef, libical +, glib-networking, gsettings-desktop-schemas, libSM, libytnef, libical # Build options # TODO: A flag to build the manual. # TODO: Plugins that complain about their missing dependencies, even when @@ -56,7 +56,7 @@ stdenv.mkDerivation rec { propagatedBuildInputs = with python.pkgs; [ python ] ++ optionals enablePluginPython [ pygtk pygobject2 ]; buildInputs = - [ curl dbus dbus-glib gtk2 gnutls gsettings-desktop-schemas hicolor-icon-theme + [ curl dbus dbus-glib gtk2 gnutls gsettings-desktop-schemas libetpan perl glib-networking libSM libytnef ] ++ optional enableSpellcheck enchant diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix index 0cfcf6408ba9..6352922e33e9 100644 --- a/pkgs/applications/networking/newsreaders/liferea/default.nix +++ b/pkgs/applications/networking/newsreaders/liferea/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, pkgconfig, intltool, python3Packages, wrapGAppsHook , glib, libxml2, libxslt, sqlite, libsoup , webkitgtk, json-glib, gst_all_1 , libnotify, gtk3, gsettings-desktop-schemas, libpeas, dconf, librsvg -, gobject-introspection, glib-networking, hicolor-icon-theme +, gobject-introspection, glib-networking }: stdenv.mkDerivation rec { @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { buildInputs = [ glib gtk3 webkitgtk libxml2 libxslt sqlite libsoup gsettings-desktop-schemas libpeas gsettings-desktop-schemas json-glib dconf gobject-introspection - librsvg glib-networking libnotify hicolor-icon-theme + librsvg glib-networking libnotify ] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ]); diff --git a/pkgs/applications/networking/p2p/torrential/default.nix b/pkgs/applications/networking/p2p/torrential/default.nix index b1327231e0ab..1070350116bb 100644 --- a/pkgs/applications/networking/p2p/torrential/default.nix +++ b/pkgs/applications/networking/p2p/torrential/default.nix @@ -7,7 +7,6 @@ , curl , glib , gtk3 -, hicolor-icon-theme , libb64 , libevent , libgee @@ -41,7 +40,6 @@ stdenv.mkDerivation rec { curl glib gtk3 - hicolor-icon-theme libb64 libevent libgee diff --git a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix index bec0507e4a58..55bdced74b52 100644 --- a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix +++ b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix @@ -1,6 +1,5 @@ { stdenv, autoconf, automake, libtool, wrapGAppsHook, fetchFromGitHub, pkgconfig -, intltool, gtk3, json-glib, curl, glib, autoconf-archive, appstream-glib -, hicolor-icon-theme }: +, intltool, gtk3, json-glib, curl, glib, autoconf-archive, appstream-glib }: stdenv.mkDerivation rec { @@ -22,7 +21,7 @@ stdenv.mkDerivation rec { appstream-glib ]; - buildInputs = [ gtk3 json-glib curl glib hicolor-icon-theme ]; + buildInputs = [ gtk3 json-glib curl glib ]; doCheck = false; # fails with style validation error diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/applications/networking/p2p/transmission/default.nix index 8af94b2609ff..25996953e11a 100644 --- a/pkgs/applications/networking/p2p/transmission/default.nix +++ b/pkgs/applications/networking/p2p/transmission/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, pkgconfig, intltool, file, wrapGAppsHook -, openssl, curl, libevent, inotify-tools, systemd, zlib, hicolor-icon-theme +, openssl, curl, libevent, inotify-tools, systemd, zlib , enableGTK3 ? false, gtk3 , enableSystemd ? stdenv.isLinux , enableDaemon ? true @@ -22,8 +22,7 @@ stdenv.mkDerivation rec { buildInputs = [ intltool file openssl curl libevent zlib ] ++ optionals enableGTK3 [ gtk3 ] ++ optionals enableSystemd [ systemd ] - ++ optionals stdenv.isLinux [ inotify-tools ] - ++ optionals enableGTK3 [ hicolor-icon-theme ]; + ++ optionals stdenv.isLinux [ inotify-tools ]; postPatch = '' substituteInPlace ./configure \ diff --git a/pkgs/applications/networking/ping/default.nix b/pkgs/applications/networking/ping/default.nix index c8eed0b26ef1..4d1d39a05c25 100644 --- a/pkgs/applications/networking/ping/default.nix +++ b/pkgs/applications/networking/ping/default.nix @@ -9,7 +9,6 @@ , glib , gtk3 , gtksourceview -, hicolor-icon-theme , json-glib , libsoup , libgee @@ -39,7 +38,6 @@ stdenv.mkDerivation rec { glib gtk3 gtksourceview - hicolor-icon-theme json-glib libgee libsoup diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix index f60d43f36166..adb70c3916f4 100644 --- a/pkgs/applications/networking/remote/remmina/default.nix +++ b/pkgs/applications/networking/remote/remmina/default.nix @@ -6,7 +6,7 @@ , libsecret, libsoup, spice-protocol, spice-gtk, epoxy, at-spi2-core , openssl, gsettings-desktop-schemas, json-glib # The themes here are soft dependencies; only icons are missing without them. -, hicolor-icon-theme, gnome3 +, gnome3 }: with stdenv.lib; @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { pcre libdbusmenu-gtk3 libappindicator-gtk3 libvncserver libpthreadstubs libXdmcp libxkbcommon libsecret libsoup spice-protocol spice-gtk epoxy at-spi2-core - openssl hicolor-icon-theme gnome3.adwaita-icon-theme json-glib + openssl gnome3.adwaita-icon-theme json-glib ]; cmakeFlags = [ diff --git a/pkgs/applications/networking/weather/meteo/default.nix b/pkgs/applications/networking/weather/meteo/default.nix index 88d33a9a9f3c..5fe52d5f33db 100644 --- a/pkgs/applications/networking/weather/meteo/default.nix +++ b/pkgs/applications/networking/weather/meteo/default.nix @@ -1,7 +1,6 @@ { stdenv, fetchFromGitLab, vala, python3, pkgconfig, meson, ninja, gtk3 , json-glib, libsoup, webkitgtk, geocode-glib -, libappindicator, desktop-file-utils, appstream, wrapGAppsHook -, hicolor-icon-theme }: +, libappindicator, desktop-file-utils, appstream, wrapGAppsHook }: stdenv.mkDerivation rec { pname = "meteo"; @@ -28,7 +27,6 @@ stdenv.mkDerivation rec { buildInputs = [ geocode-glib gtk3 - hicolor-icon-theme json-glib libappindicator libsoup diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix index 85868803ec6f..d8fbd4392bdb 100644 --- a/pkgs/applications/office/gnucash/default.nix +++ b/pkgs/applications/office/gnucash/default.nix @@ -36,7 +36,7 @@ stdenv.mkDerivation rec { buildInputs = [ boost icu libxml2 libxslt gettext swig isocodes gtk3 glibcLocales - webkitgtk dconf hicolor-icon-theme libofx aqbanking gwenhywfar libdbi + webkitgtk dconf libofx aqbanking gwenhywfar libdbi libdbiDrivers guile perlWrapper perl ] ++ (with perlPackages; [ FinanceQuote DateManip ]); diff --git a/pkgs/applications/office/grisbi/default.nix b/pkgs/applications/office/grisbi/default.nix index 752ad70cd094..cb8cf76b9988 100644 --- a/pkgs/applications/office/grisbi/default.nix +++ b/pkgs/applications/office/grisbi/default.nix @@ -1,5 +1,5 @@ { fetchurl, stdenv, gtk, pkgconfig, libgsf, libofx, intltool, wrapGAppsHook -, hicolor-icon-theme, libsoup, gnome3 }: +, libsoup, gnome3 }: stdenv.mkDerivation rec { pname = "grisbi"; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig wrapGAppsHook ]; - buildInputs = [ gtk libgsf libofx intltool hicolor-icon-theme libsoup + buildInputs = [ gtk libgsf libofx intltool libsoup gnome3.adwaita-icon-theme ]; meta = with stdenv.lib; { diff --git a/pkgs/applications/office/homebank/default.nix b/pkgs/applications/office/homebank/default.nix index af289c53cff3..f72f820fd23d 100644 --- a/pkgs/applications/office/homebank/default.nix +++ b/pkgs/applications/office/homebank/default.nix @@ -1,5 +1,5 @@ { fetchurl, stdenv, gtk, pkgconfig, libofx, intltool, wrapGAppsHook -, hicolor-icon-theme, libsoup, gnome3 }: +, libsoup, gnome3 }: stdenv.mkDerivation rec { name = "homebank-5.2.8"; @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig wrapGAppsHook ]; - buildInputs = [ gtk libofx intltool hicolor-icon-theme libsoup + buildInputs = [ gtk libofx intltool libsoup gnome3.adwaita-icon-theme ]; meta = with stdenv.lib; { diff --git a/pkgs/applications/office/paperwork/default.nix b/pkgs/applications/office/paperwork/default.nix index 79e4b8debc91..df5e495f936d 100644 --- a/pkgs/applications/office/paperwork/default.nix +++ b/pkgs/applications/office/paperwork/default.nix @@ -1,6 +1,6 @@ { lib, python3Packages, gtk3, cairo , aspellDicts, buildEnv -, gnome3, hicolor-icon-theme, librsvg +, gnome3, librsvg , xvfb_run, dbus, libnotify }: @@ -48,7 +48,7 @@ python3Packages.buildPythonApplication rec { checkInputs = [ xvfb_run dbus.daemon ] ++ (with python3Packages; [ paperwork-backend ]); buildInputs = [ - gnome3.adwaita-icon-theme hicolor-icon-theme libnotify librsvg + gnome3.adwaita-icon-theme libnotify librsvg ]; # A few parts of chkdeps need to have a display and a dbus session, so we not diff --git a/pkgs/applications/office/timetable/default.nix b/pkgs/applications/office/timetable/default.nix index 3ecc7b3e5623..bb13cae08f2f 100644 --- a/pkgs/applications/office/timetable/default.nix +++ b/pkgs/applications/office/timetable/default.nix @@ -3,7 +3,6 @@ , glib , gtk3 , vala -, hicolor-icon-theme , json-glib , libgee , meson @@ -38,7 +37,6 @@ stdenv.mkDerivation rec { buildInputs = [ glib gtk3 - hicolor-icon-theme json-glib libgee pantheon.granite diff --git a/pkgs/applications/office/vnote/default.nix b/pkgs/applications/office/vnote/default.nix index fbb8436f44c0..6142042e7cb3 100644 --- a/pkgs/applications/office/vnote/default.nix +++ b/pkgs/applications/office/vnote/default.nix @@ -1,4 +1,4 @@ -{ lib, mkDerivation, fetchFromGitHub, qmake, qtbase, qtwebengine, hicolor-icon-theme }: +{ lib, mkDerivation, fetchFromGitHub, qmake, qtbase, qtwebengine }: let description = "A note-taking application that knows programmers and Markdown better"; @@ -15,7 +15,7 @@ in mkDerivation rec { }; nativeBuildInputs = [ qmake ]; - buildInputs = [ qtbase qtwebengine hicolor-icon-theme ]; + buildInputs = [ qtbase qtwebengine ]; meta = with lib; { inherit description; diff --git a/pkgs/applications/search/catfish/default.nix b/pkgs/applications/search/catfish/default.nix index 30b9b9c273d4..bce5795a9c7e 100644 --- a/pkgs/applications/search/catfish/default.nix +++ b/pkgs/applications/search/catfish/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, file, which, intltool, gobject-introspection, - findutils, xdg_utils, gnome3, gtk3, pythonPackages, hicolor-icon-theme, + findutils, xdg_utils, gnome3, gtk3, pythonPackages, wrapGAppsHook }: @@ -29,7 +29,6 @@ pythonPackages.buildPythonApplication rec { pythonPackages.pyxdg pythonPackages.ptyprocess pythonPackages.pycairo - hicolor-icon-theme gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943 ]; diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix index 47da7f7a1d7f..46bbc72fb3bd 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -141,8 +141,9 @@ stdenv.mkDerivation { cp -a contrib $out/share/git/ mkdir -p $out/share/emacs/site-lisp ln -s "$out/share/git/contrib/emacs/"*.el $out/share/emacs/site-lisp/ + mkdir -p $out/share/bash-completion/completions + ln -s $out/share/git/contrib/completion/git-completion.bash $out/share/bash-completion/completions/git mkdir -p $out/etc/bash_completion.d - ln -s $out/share/git/contrib/completion/git-completion.bash $out/etc/bash_completion.d/ ln -s $out/share/git/contrib/completion/git-prompt.sh $out/etc/bash_completion.d/ # grep is a runtime dependency, need to patch so that it's found diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix index 67e6589ac1a0..42887132f313 100644 --- a/pkgs/applications/version-management/gitkraken/default.nix +++ b/pkgs/applications/version-management/gitkraken/default.nix @@ -2,7 +2,7 @@ , libXfixes, atk, gtk3, libXrender, pango, gnome3, cairo, freetype, fontconfig , libX11, libXi, libxcb, libXext, libXcursor, glib, libXScrnSaver, libxkbfile, libXtst , nss, nspr, cups, fetchurl, expat, gdk-pixbuf, libXdamage, libXrandr, dbus -, dpkg, makeDesktopItem, openssl, wrapGAppsHook, hicolor-icon-theme, at-spi2-atk, libuuid +, dpkg, makeDesktopItem, openssl, wrapGAppsHook, at-spi2-atk, libuuid , e2fsprogs, krb5 }: @@ -70,7 +70,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ makeWrapper wrapGAppsHook ]; - buildInputs = [ dpkg gtk3 gnome3.adwaita-icon-theme hicolor-icon-theme ]; + buildInputs = [ dpkg gtk3 gnome3.adwaita-icon-theme ]; unpackCmd = '' mkdir out diff --git a/pkgs/applications/version-management/smartgithg/default.nix b/pkgs/applications/version-management/smartgithg/default.nix index 343d88554d63..554dbae3882e 100644 --- a/pkgs/applications/version-management/smartgithg/default.nix +++ b/pkgs/applications/version-management/smartgithg/default.nix @@ -6,7 +6,6 @@ , glib , gnome3 , wrapGAppsHook -, hicolor-icon-theme , libXtst , which }: @@ -22,7 +21,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ wrapGAppsHook ]; - buildInputs = [ jre gnome3.adwaita-icon-theme hicolor-icon-theme gtk3 ]; + buildInputs = [ jre gnome3.adwaita-icon-theme gtk3 ]; preFixup = with stdenv.lib; '' gappsWrapperArgs+=( \ diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix index bb0b92eee030..2a8a0a64274f 100644 --- a/pkgs/applications/video/mpv/default.nix +++ b/pkgs/applications/video/mpv/default.nix @@ -1,6 +1,6 @@ { config, stdenv, fetchurl, fetchFromGitHub, makeWrapper -, docutils, perl, pkgconfig, python3, which, ffmpeg_4 -, freefont_ttf, freetype, libass, libpthreadstubs, mujs +, addOpenGLRunpath, docutils, perl, pkgconfig, python3, which +, ffmpeg_4, freefont_ttf, freetype, libass, libpthreadstubs, mujs , nv-codec-headers, lua, libuchardet, libiconv ? null, darwin , waylandSupport ? stdenv.isLinux @@ -135,8 +135,7 @@ in stdenv.mkDerivation rec { ''; nativeBuildInputs = [ - docutils makeWrapper perl - pkgconfig python3 which + addOpenGLRunpath docutils makeWrapper perl pkgconfig python3 which ]; buildInputs = [ @@ -214,11 +213,17 @@ in stdenv.mkDerivation rec { ${wrapperFlags} ''; + # Set RUNPATH so that libcuda in /run/opengl-driver(-32)/lib can be found. + # See the explanation in addOpenGLRunpath. + postFixup = optionalString stdenv.isLinux '' + addOpenGLRunpath $out/bin/.mpv-wrapped + ''; + meta = with stdenv.lib; { description = "A media player that supports many video formats (MPlayer and mplayer2 fork)"; homepage = https://mpv.io; license = licenses.gpl2Plus; - maintainers = with maintainers; [ AndersonTorres fuuzetsu fpletz globin ]; + maintainers = with maintainers; [ AndersonTorres fuuzetsu fpletz globin ivan ]; platforms = platforms.darwin ++ platforms.linux; longDescription = '' diff --git a/pkgs/applications/video/olive-editor/default.nix b/pkgs/applications/video/olive-editor/default.nix index efa06f4794ef..1285422a2f92 100644 --- a/pkgs/applications/video/olive-editor/default.nix +++ b/pkgs/applications/video/olive-editor/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchFromGitHub, pkgconfig, which, qmake, mkDerivation, - qtbase, qtmultimedia, frei0r, opencolorio, hicolor-icon-theme, ffmpeg-full, + qtbase, qtmultimedia, frei0r, opencolorio, ffmpeg-full, CoreFoundation }: mkDerivation rec { @@ -13,9 +13,9 @@ mkDerivation rec { sha256 = "15q4qwf5rc3adssywl72jrhkpqk55ihpd5h5wf07baw0s47vv5kq"; }; - nativeBuildInputs = [ - pkgconfig - which + nativeBuildInputs = [ + pkgconfig + which qmake ]; @@ -26,7 +26,6 @@ mkDerivation rec { qtbase qtmultimedia qtmultimedia.dev - hicolor-icon-theme ] ++ stdenv.lib.optional stdenv.isDarwin CoreFoundation; meta = with stdenv.lib; { diff --git a/pkgs/applications/video/screenkey/default.nix b/pkgs/applications/video/screenkey/default.nix index 1671c3f14d00..56b1134b2b8a 100644 --- a/pkgs/applications/video/screenkey/default.nix +++ b/pkgs/applications/video/screenkey/default.nix @@ -10,7 +10,6 @@ , libXtst , wrapGAppsHook , gnome3 -, hicolor-icon-theme }: buildPythonApplication rec { pname = "screenkey"; @@ -40,7 +39,6 @@ buildPythonApplication rec { buildInputs = [ gnome3.adwaita-icon-theme - hicolor-icon-theme ]; propagatedBuildInputs = [ diff --git a/pkgs/build-support/bintools-wrapper/setup-hook.sh b/pkgs/build-support/bintools-wrapper/setup-hook.sh index f65b792485a0..2e15fa95c794 100644 --- a/pkgs/build-support/bintools-wrapper/setup-hook.sh +++ b/pkgs/build-support/bintools-wrapper/setup-hook.sh @@ -24,7 +24,8 @@ bintoolsWrapper_addLDVars () { # Python and Haskell packages often only have directories like $out/lib/ghc-8.4.3/ or # $out/lib/python3.6/, so having them in LDFLAGS just makes the linker search unnecessary # directories and bloats the size of the environment variable space. - if [[ -n "$(echo $1/lib/lib*)" ]]; then + local -a glob=( $1/lib/lib* ) + if [ "${#glob[*]}" -gt 0 ]; then export NIX_${role_pre}LDFLAGS+=" -L$1/lib" fi fi @@ -61,9 +62,8 @@ do if PATH=$_PATH type -p "@targetPrefix@${cmd}" > /dev/null then - upper_case="$(echo "$cmd" | tr "[:lower:]" "[:upper:]")" - export "${role_pre}${upper_case}=@targetPrefix@${cmd}"; - export "${upper_case}${role_post}=@targetPrefix@${cmd}"; + export "${role_pre}${cmd^^}=@targetPrefix@${cmd}"; + export "${cmd^^}${role_post}=@targetPrefix@${cmd}"; fi done diff --git a/pkgs/build-support/buildenv/builder.pl b/pkgs/build-support/buildenv/builder.pl index b699d762d29c..fc6ffce735cc 100755 --- a/pkgs/build-support/buildenv/builder.pl +++ b/pkgs/build-support/buildenv/builder.pl @@ -26,6 +26,19 @@ sub isInPathsToLink { return 0; } +# Returns whether a path in one of the linked packages may contain +# files in one of the elements of pathsToLink. +sub hasPathsToLink { + my $path = shift; + foreach my $elem (@pathsToLink) { + return 1 if + $path eq "" || + (substr($elem, 0, length($path)) eq $path + && (($path eq $elem) || (substr($elem, length($path), 1) eq "/"))); + } + return 0; +} + # Similar to `lib.isStorePath` sub isStorePath { my $path = shift; @@ -103,7 +116,8 @@ sub findFiles { $relName =~ /info\/dir/ || ( $relName =~ /^\/share\/mime\// && !( $relName =~ /^\/share\/mime\/packages/ ) ) || $baseName eq "perllocal.pod" || - $baseName eq "log"; + $baseName eq "log" || + ! (hasPathsToLink($relName) || isInPathsToLink($relName)); my ($oldTarget, $oldPriority) = @{$symlinks{$relName} // [undef, undef]}; diff --git a/pkgs/build-support/cc-wrapper/cc-wrapper.sh b/pkgs/build-support/cc-wrapper/cc-wrapper.sh index bb7890100087..ba3dfc96f5c4 100644 --- a/pkgs/build-support/cc-wrapper/cc-wrapper.sh +++ b/pkgs/build-support/cc-wrapper/cc-wrapper.sh @@ -33,6 +33,7 @@ fi # GCC prints annoying warnings when they are not needed. dontLink=0 nonFlagArgs=0 +cc1=0 # shellcheck disable=SC2193 [[ "@prog@" = *++ ]] && isCpp=1 || isCpp=0 cppInclude=1 @@ -68,6 +69,8 @@ while (( "$n" < "$nParams" )); do elif [[ "$p" != -?* ]]; then # A dash alone signifies standard input; it is not a flag nonFlagArgs=1 + elif [ "$p" = -cc1 ]; then + cc1=1 fi n+=1 done @@ -167,6 +170,14 @@ if [ "$*" = -v ]; then extraBefore=() fi +# clang's -cc1 mode is not compatible with most options +# that we would pass. Rather than trying to pass only +# options that would work, let's just remove all of them. +if [ "$cc1" = 1 ]; then + extraAfter=() + extraBefore=() +fi + # Optionally print debug info. if (( "${NIX_DEBUG:-0}" >= 1 )); then # Old bash workaround, see ld-wrapper for explanation. diff --git a/pkgs/data/icons/arc-icon-theme/default.nix b/pkgs/data/icons/arc-icon-theme/default.nix index 6529e5c571c2..b0a8a05fc68d 100644 --- a/pkgs/data/icons/arc-icon-theme/default.nix +++ b/pkgs/data/icons/arc-icon-theme/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, autoreconfHook, gtk3, moka-icon-theme }: +{ stdenv, fetchFromGitHub, autoreconfHook, gtk3, moka-icon-theme, hicolor-icon-theme }: stdenv.mkDerivation rec { name = "${package-name}-${version}"; @@ -14,6 +14,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook gtk3 moka-icon-theme ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + postFixup = "gtk-update-icon-cache $out/share/icons/Arc"; meta = with stdenv.lib; { diff --git a/pkgs/data/icons/elementary-xfce-icon-theme/default.nix b/pkgs/data/icons/elementary-xfce-icon-theme/default.nix index 4b99d1c15bc2..221974c79419 100644 --- a/pkgs/data/icons/elementary-xfce-icon-theme/default.nix +++ b/pkgs/data/icons/elementary-xfce-icon-theme/default.nix @@ -11,7 +11,13 @@ stdenv.mkDerivation rec { sha256 = "00sk6sv0kkfb3q0jqwcllzawi30rw8nfkkfn5l1qwqha48izw3r4"; }; - nativeBuildInputs = [ pkgconfig gdk-pixbuf librsvg optipng gtk3 hicolor-icon-theme ]; + nativeBuildInputs = [ pkgconfig gdk-pixbuf librsvg optipng gtk3 ]; + + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; postPatch = '' substituteInPlace svgtopng/Makefile --replace "-O0" "-O" diff --git a/pkgs/data/icons/faba-icon-theme/default.nix b/pkgs/data/icons/faba-icon-theme/default.nix index c15e0f4e5510..efce0a16e130 100644 --- a/pkgs/data/icons/faba-icon-theme/default.nix +++ b/pkgs/data/icons/faba-icon-theme/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, meson, ninja, python3, gtk3, pantheon }: +{ stdenv, fetchFromGitHub, meson, ninja, python3, gtk3, pantheon, hicolor-icon-theme }: stdenv.mkDerivation rec { name = "${package-name}-${version}"; @@ -14,6 +14,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja python3 gtk3 pantheon.elementary-icon-theme ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + postPatch = '' patchShebangs meson/post_install.py ''; diff --git a/pkgs/data/icons/faba-mono-icons/default.nix b/pkgs/data/icons/faba-mono-icons/default.nix index 99488a26f2b6..96bd40311503 100644 --- a/pkgs/data/icons/faba-mono-icons/default.nix +++ b/pkgs/data/icons/faba-mono-icons/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, autoreconfHook, gtk3, moka-icon-theme }: +{ stdenv, fetchFromGitHub, autoreconfHook, gtk3, moka-icon-theme, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "faba-mono-icons"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook gtk3 moka-icon-theme ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + postFixup = '' for theme in $out/share/icons/*; do gtk-update-icon-cache $theme diff --git a/pkgs/data/icons/hicolor-icon-theme/setup-hook.sh b/pkgs/data/icons/hicolor-icon-theme/setup-hook.sh index 29306cb316af..f07bab4b269f 100644 --- a/pkgs/data/icons/hicolor-icon-theme/setup-hook.sh +++ b/pkgs/data/icons/hicolor-icon-theme/setup-hook.sh @@ -1,21 +1,13 @@ +# shellcheck shell=bash + # Populate XDG_ICON_DIRS hicolorIconThemeHook() { # where to find icon themes if [ -d "$1/share/icons" ]; then - addToSearchPath XDG_ICON_DIRS $1/share + addToSearchPath XDG_ICON_DIRS "$1/share" fi - } # I think this is meant to be a runtime dep -addEnvHooks "$hostOffset" hicolorIconThemeHook - -# Remove icon cache -hicolorPreFixupPhase() { - rm -f $out/share/icons/hicolor/icon-theme.cache - rm -f $out/share/icons/HighContrast/icon-theme.cache -} - -preFixupPhases="$preFixupPhases hicolorPreFixupPhase" - +addEnvHooks "${hostOffset:?}" hicolorIconThemeHook diff --git a/pkgs/data/icons/iconpack-obsidian/default.nix b/pkgs/data/icons/iconpack-obsidian/default.nix index f7015621853c..f48c3cbf3f74 100644 --- a/pkgs/data/icons/iconpack-obsidian/default.nix +++ b/pkgs/data/icons/iconpack-obsidian/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, gtk3 }: +{ stdenv, fetchFromGitHub, gtk3, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "iconpack-obsidian"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gtk3 ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + installPhase = '' mkdir -p $out/share/icons mv Obsidian* $out/share/icons diff --git a/pkgs/data/icons/maia-icon-theme/default.nix b/pkgs/data/icons/maia-icon-theme/default.nix index a623af206048..20bc8dc0a589 100644 --- a/pkgs/data/icons/maia-icon-theme/default.nix +++ b/pkgs/data/icons/maia-icon-theme/default.nix @@ -21,10 +21,12 @@ stdenv.mkDerivation { kdeFrameworks.kwindowsystem ]; - buildInputs = [ + propagatedBuildInputs = [ hicolor-icon-theme ]; + dontDropIconThemeCache = true; + postFixup = '' for theme in $out/share/icons/*; do gtk-update-icon-cache $theme diff --git a/pkgs/data/icons/moka-icon-theme/default.nix b/pkgs/data/icons/moka-icon-theme/default.nix index 83c4b19472a3..539dfaa2d109 100644 --- a/pkgs/data/icons/moka-icon-theme/default.nix +++ b/pkgs/data/icons/moka-icon-theme/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, meson, ninja, gtk3, python3, faba-icon-theme }: +{ stdenv, fetchFromGitHub, meson, ninja, gtk3, python3, faba-icon-theme, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "moka-icon-theme"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja gtk3 python3 faba-icon-theme ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + postPatch = '' patchShebangs meson/post_install.py ''; diff --git a/pkgs/data/icons/numix-icon-theme-circle/default.nix b/pkgs/data/icons/numix-icon-theme-circle/default.nix index 3a461e993d1a..5658f20c7446 100644 --- a/pkgs/data/icons/numix-icon-theme-circle/default.nix +++ b/pkgs/data/icons/numix-icon-theme-circle/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, gtk3, numix-icon-theme }: +{ stdenv, fetchFromGitHub, gtk3, numix-icon-theme, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "numix-icon-theme-circle"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gtk3 numix-icon-theme ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + installPhase = '' install -dm 755 $out/share/icons cp -dr --no-preserve='ownership' Numix-Circle{,-Light} $out/share/icons/ diff --git a/pkgs/data/icons/numix-icon-theme-square/default.nix b/pkgs/data/icons/numix-icon-theme-square/default.nix index 31ef15d40f7c..76176f9ad04b 100644 --- a/pkgs/data/icons/numix-icon-theme-square/default.nix +++ b/pkgs/data/icons/numix-icon-theme-square/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, gtk3, numix-icon-theme }: +{ stdenv, fetchFromGitHub, gtk3, numix-icon-theme, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "numix-icon-theme-square"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gtk3 numix-icon-theme ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + installPhase = '' mkdir -p $out/share/icons cp -a Numix-Square{,-Light} $out/share/icons/ diff --git a/pkgs/data/icons/numix-icon-theme/default.nix b/pkgs/data/icons/numix-icon-theme/default.nix index da6556c60604..d3bcdb12d3dc 100644 --- a/pkgs/data/icons/numix-icon-theme/default.nix +++ b/pkgs/data/icons/numix-icon-theme/default.nix @@ -11,7 +11,13 @@ stdenv.mkDerivation rec { sha256 = "0pn3x0mmsph777lwhg890ck366p31bjl3755h4pv161ym08d4z9w"; }; - nativeBuildInputs = [ gtk3 hicolor-icon-theme ]; + nativeBuildInputs = [ gtk3 ]; + + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; installPhase = '' mkdir -p $out/share/icons diff --git a/pkgs/data/icons/paper-icon-theme/default.nix b/pkgs/data/icons/paper-icon-theme/default.nix index 5359b2229f39..477960972a75 100644 --- a/pkgs/data/icons/paper-icon-theme/default.nix +++ b/pkgs/data/icons/paper-icon-theme/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, meson, ninja, gtk3, python3 }: +{ stdenv, fetchFromGitHub, meson, ninja, gtk3, python3, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "paper-icon-theme"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja gtk3 python3 ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + postPatch = '' patchShebangs meson/post_install.py ''; diff --git a/pkgs/data/icons/papirus-icon-theme/default.nix b/pkgs/data/icons/papirus-icon-theme/default.nix index c1959124c364..b227c9576fbc 100644 --- a/pkgs/data/icons/papirus-icon-theme/default.nix +++ b/pkgs/data/icons/papirus-icon-theme/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, gtk3 }: +{ stdenv, fetchFromGitHub, gtk3, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "papirus-icon-theme"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gtk3 ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + installPhase = '' mkdir -p $out/share/icons mv {,e}Papirus* $out/share/icons diff --git a/pkgs/data/icons/tango-icon-theme/default.nix b/pkgs/data/icons/tango-icon-theme/default.nix index d38f6485f135..a4a7237f9740 100644 --- a/pkgs/data/icons/tango-icon-theme/default.nix +++ b/pkgs/data/icons/tango-icon-theme/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, intltool, pkgconfig, iconnamingutils, imagemagick, librsvg -, gtk/*any version*/ +, gtk/*any version*/, hicolor-icon-theme }: stdenv.mkDerivation rec { @@ -15,6 +15,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; buildInputs = [ intltool iconnamingutils imagemagick librsvg ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + configureFlags = [ "--enable-png-creation" ]; postInstall = '''${gtk.out}/bin/gtk-update-icon-cache' "$out/share/icons/Tango" ''; diff --git a/pkgs/data/icons/vanilla-dmz/default.nix b/pkgs/data/icons/vanilla-dmz/default.nix index c4a8fd44a610..f271d7a44e65 100644 --- a/pkgs/data/icons/vanilla-dmz/default.nix +++ b/pkgs/data/icons/vanilla-dmz/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchzip, xorg }: +{ stdenv, lib, fetchzip, xorg, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "vanilla-dmz"; @@ -8,6 +8,10 @@ stdenv.mkDerivation rec { sha256 = "1l0c0svk7dy0d7icg7j2181wdn3fvks5gmyqnvjk749ppy5ks8mj"; }; buildInputs = [ xorg.xcursorgen ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + dontDropIconThemeCache = true; buildPhase = '' cd DMZ-White/pngs; ./make.sh; cd - cd DMZ-Black/pngs; ./make.sh; cd - diff --git a/pkgs/data/icons/zafiro-icons/default.nix b/pkgs/data/icons/zafiro-icons/default.nix index 942f79ca6e45..0b28a02ba4d9 100644 --- a/pkgs/data/icons/zafiro-icons/default.nix +++ b/pkgs/data/icons/zafiro-icons/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, gtk3 }: +{ stdenv, fetchFromGitHub, gtk3, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "zafiro-icons"; @@ -13,6 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gtk3 ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + installPhase = '' mkdir -p $out/share/icons/Zafiro-icons cp -a * $out/share/icons/Zafiro-icons diff --git a/pkgs/data/misc/cacert/setup-hook.sh b/pkgs/data/misc/cacert/setup-hook.sh index e969596752f3..77b68a5c251c 100644 --- a/pkgs/data/misc/cacert/setup-hook.sh +++ b/pkgs/data/misc/cacert/setup-hook.sh @@ -1,7 +1,3 @@ -cacertHook() { - export NIX_SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt - # left for compatibility - export SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt -} - -addEnvHooks "$targetOffset" cacertHook +export NIX_SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt +# left for compatibility +export SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt diff --git a/pkgs/data/misc/shared-mime-info/default.nix b/pkgs/data/misc/shared-mime-info/default.nix index 6569efa2cde6..4594ffc23921 100644 --- a/pkgs/data/misc/shared-mime-info/default.nix +++ b/pkgs/data/misc/shared-mime-info/default.nix @@ -1,21 +1,36 @@ -{stdenv, fetchurl, pkgconfig, gettext, perlPackages, intltool -, libxml2, glib}: +{ stdenv +, fetchurl +, pkgconfig +, gettext +, perlPackages +, itstool +, libxml2 +, glib +}: -let version = "1.12"; in -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "shared-mime-info"; - inherit version; + version = "1.13.1"; src = fetchurl { - url = "https://gitlab.freedesktop.org/xdg/shared-mime-info/uploads/80c7f1afbcad2769f38aeb9ba6317a51/shared-mime-info-1.12.tar.xz"; - sha256 = "0gj0pp36qpsr9w6v4nywnjpcisadwkndapqsjn0ny3gd0zzg1chq"; + url = "https://gitlab.freedesktop.org/xdg/${pname}/uploads/5349e18c86eb96eee258a5c1f19122d0/${pname}-${version}.tar.xz"; + sha256 = "1bic8z5nz08qxv1x6zlxnx2j4cmlzm12kygrn3rrh1djqxdhma3f"; }; - nativeBuildInputs = [ pkgconfig gettext intltool ] ++ (with perlPackages; [ perl XMLParser ]); - buildInputs = [ libxml2 glib ]; + nativeBuildInputs = [ + pkgconfig + gettext + itstool + ] ++ (with perlPackages; [ + perl XMLParser + ]); + + buildInputs = [ + libxml2 + glib + ]; meta = with stdenv.lib; { - inherit version; description = "A database of common MIME types"; homepage = http://freedesktop.org/wiki/Software/shared-mime-info; license = licenses.gpl2Plus; diff --git a/pkgs/desktops/deepin/dde-session-ui/default.nix b/pkgs/desktops/deepin/dde-session-ui/default.nix index d6713fb3688e..bad409303d98 100644 --- a/pkgs/desktops/deepin/dde-session-ui/default.nix +++ b/pkgs/desktops/deepin/dde-session-ui/default.nix @@ -1,7 +1,7 @@ { stdenv, mkDerivation, fetchFromGitHub, pkgconfig, qmake, dbus, dde-daemon, dde-qt-dbus-factory, deepin, deepin-desktop-schemas, deepin-gettext-tools, deepin-icon-theme, deepin-wallpapers, dtkcore, - dtkwidget, gnugrep, gsettings-qt, hicolor-icon-theme, lightdm_qt, + dtkwidget, gnugrep, gsettings-qt, lightdm_qt, onboard, qtsvg, qttools, qtx11extras, setxkbmap, utillinux, which, xkeyboard_config, xorg, xrandr, wrapGAppsHook }: @@ -36,7 +36,6 @@ mkDerivation rec { dtkwidget gnugrep gsettings-qt - hicolor-icon-theme lightdm_qt onboard qtsvg diff --git a/pkgs/desktops/deepin/deepin-icon-theme/default.nix b/pkgs/desktops/deepin/deepin-icon-theme/default.nix index e63a228d0cbe..51b67e055541 100644 --- a/pkgs/desktops/deepin/deepin-icon-theme/default.nix +++ b/pkgs/desktops/deepin/deepin-icon-theme/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, gtk3, xcursorgen, papirus-icon-theme, deepin }: +{ stdenv, fetchFromGitHub, gtk3, xcursorgen, papirus-icon-theme, deepin, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "deepin-icon-theme"; @@ -15,6 +15,12 @@ stdenv.mkDerivation rec { buildInputs = [ papirus-icon-theme ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; + postPatch = '' patchShebangs tools/hicolor.links patchShebangs tools/display_unused_links.sh diff --git a/pkgs/desktops/gnome-3/apps/ghex/default.nix b/pkgs/desktops/gnome-3/apps/ghex/default.nix index f776f4dbe5a2..0998dbd069db 100644 --- a/pkgs/desktops/gnome-3/apps/ghex/default.nix +++ b/pkgs/desktops/gnome-3/apps/ghex/default.nix @@ -6,7 +6,6 @@ , ninja , python3 , gnome3 -, hicolor-icon-theme , desktop-file-utils , appstream-glib , gettext @@ -32,7 +31,6 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ desktop-file-utils gettext - hicolor-icon-theme # for setup-hook itstool meson ninja diff --git a/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix b/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix index 667750b012e0..3996a2e7564a 100644 --- a/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix +++ b/pkgs/desktops/gnome-3/apps/gnome-sound-recorder/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, pkgconfig, gettext, gobject-introspection, wrapGAppsHook, gjs, glib, gtk3, gdk-pixbuf, gst_all_1, gnome3 -, meson, ninja, python3, hicolor-icon-theme, desktop-file-utils }: +, meson, ninja, python3, desktop-file-utils }: stdenv.mkDerivation rec { pname = "gnome-sound-recorder"; @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig gettext meson ninja gobject-introspection - wrapGAppsHook python3 hicolor-icon-theme desktop-file-utils + wrapGAppsHook python3 desktop-file-utils ]; buildInputs = [ gjs glib gtk3 gdk-pixbuf ] ++ (with gst_all_1; [ gstreamer.dev gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ]); diff --git a/pkgs/desktops/gnome-3/core/dconf-editor/default.nix b/pkgs/desktops/gnome-3/core/dconf-editor/default.nix index 99084b502c77..c7a126034f2b 100644 --- a/pkgs/desktops/gnome-3/core/dconf-editor/default.nix +++ b/pkgs/desktops/gnome-3/core/dconf-editor/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, meson, ninja, vala, libxslt, pkgconfig, glib, gtk3, gnome3, python3 -, libxml2, gettext, docbook_xsl, hicolor-icon-theme, wrapGAppsHook, gobject-introspection }: +, libxml2, gettext, docbook_xsl, wrapGAppsHook, gobject-introspection }: let pname = "dconf-editor"; @@ -15,7 +15,6 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja vala libxslt pkgconfig wrapGAppsHook gettext docbook_xsl libxml2 gobject-introspection python3 - hicolor-icon-theme # for setup-hook ]; buildInputs = [ glib gtk3 gnome3.dconf ]; diff --git a/pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix b/pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix index bcc8871bcf14..200d038d0fbf 100644 --- a/pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, itstool, desktop-file-utils, gnome3, glib, gtk3, libexif, libtiff, colord, colord-gtk, libcanberra-gtk3, lcms2, vte, exiv2, hicolor-icon-theme }: +{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, itstool, desktop-file-utils, gnome3, glib, gtk3, libexif, libtiff, colord, colord-gtk, libcanberra-gtk3, lcms2, vte, exiv2 }: let pname = "gnome-color-manager"; @@ -13,8 +13,6 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja pkgconfig gettext itstool desktop-file-utils - # setup-hook - hicolor-icon-theme ]; buildInputs = [ glib gtk3 libexif libtiff colord colord-gtk libcanberra-gtk3 lcms2 vte exiv2 ]; diff --git a/pkgs/desktops/gnome-3/core/gnome-software/default.nix b/pkgs/desktops/gnome-3/core/gnome-software/default.nix index 1b4abd492d6c..fb4114a524a4 100644 --- a/pkgs/desktops/gnome-3/core/gnome-software/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-software/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, substituteAll, pkgconfig, meson, ninja, gettext, gnome3, wrapGAppsHook, packagekit, ostree , glib, appstream-glib, libsoup, polkit, isocodes, gspell, libxslt, gobject-introspection, flatpak, fwupd -, gtk3, gsettings-desktop-schemas, gnome-desktop, libxmlb, gnome-online-accounts, hicolor-icon-theme +, gtk3, gsettings-desktop-schemas, gnome-desktop, libxmlb, gnome-online-accounts , json-glib, libsecret, valgrind-light, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_43, gtk-doc, desktop-file-utils }: let @@ -28,7 +28,6 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ meson ninja pkgconfig gettext wrapGAppsHook libxslt docbook_xml_dtd_42 docbook_xml_dtd_43 valgrind-light docbook_xsl gtk-doc desktop-file-utils gobject-introspection - hicolor-icon-theme # for setup-hook ]; buildInputs = [ diff --git a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix index 774d18143ed2..6c03b81d54b4 100644 --- a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, pkgconfig, libxml2, gnome3, dconf, nautilus , gtk3, gsettings-desktop-schemas, vte, intltool, which, libuuid, vala -, desktop-file-utils, itstool, wrapGAppsHook, hicolor-icon-theme, glib, pcre2 }: +, desktop-file-utils, itstool, wrapGAppsHook, glib, pcre2 }: stdenv.mkDerivation rec { pname = "gnome-terminal"; @@ -20,7 +20,6 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig intltool itstool which libxml2 vala desktop-file-utils wrapGAppsHook pcre2 - hicolor-icon-theme # for setup-hook ]; # Silly ./configure, it looks for dbus file from gnome-shell in the diff --git a/pkgs/desktops/gnome-3/games/gnome-robots/default.nix b/pkgs/desktops/gnome-3/games/gnome-robots/default.nix index 09aaae8e1e91..c8cc9f121f53 100644 --- a/pkgs/desktops/gnome-3/games/gnome-robots/default.nix +++ b/pkgs/desktops/gnome-3/games/gnome-robots/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, pkgconfig, gnome3, gtk3, wrapGAppsHook , librsvg, gsound, gettext, itstool, libxml2, libgnome-games-support -, libgee, meson, ninja, python3, desktop-file-utils , hicolor-icon-theme, adwaita-icon-theme }: +, libgee, meson, ninja, python3, desktop-file-utils, adwaita-icon-theme }: stdenv.mkDerivation rec { pname = "gnome-robots"; @@ -18,7 +18,6 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig meson ninja python3 libxml2 wrapGAppsHook gettext itstool desktop-file-utils - hicolor-icon-theme # For setup-hook ]; buildInputs = [ gtk3 librsvg gsound libgnome-games-support libgee adwaita-icon-theme diff --git a/pkgs/desktops/gnome-3/misc/gitg/default.nix b/pkgs/desktops/gnome-3/misc/gitg/default.nix index 94418849b987..d5617ee493d3 100644 --- a/pkgs/desktops/gnome-3/misc/gitg/default.nix +++ b/pkgs/desktops/gnome-3/misc/gitg/default.nix @@ -24,7 +24,6 @@ , meson , ninja , python3 -, hicolor-icon-theme , libdazzle }: @@ -66,7 +65,6 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gobject-introspection - hicolor-icon-theme gettext meson ninja diff --git a/pkgs/desktops/gnome-3/misc/gnome-packagekit/default.nix b/pkgs/desktops/gnome-3/misc/gnome-packagekit/default.nix index ea9a79de40e4..ce6d943c39fa 100644 --- a/pkgs/desktops/gnome-3/misc/gnome-packagekit/default.nix +++ b/pkgs/desktops/gnome-3/misc/gnome-packagekit/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, pkgconfig, meson, ninja, gettext, gnome3, packagekit, polkit -, gtk3, systemd, wrapGAppsHook, desktop-file-utils, hicolor-icon-theme }: +, gtk3, systemd, wrapGAppsHook, desktop-file-utils }: stdenv.mkDerivation rec { pname = "gnome-packagekit"; @@ -12,7 +12,6 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig meson ninja gettext wrapGAppsHook desktop-file-utils - hicolor-icon-theme # for setup-hook ]; buildInputs = [ gtk3 packagekit systemd polkit ]; diff --git a/pkgs/desktops/lxqt/obconf-qt/default.nix b/pkgs/desktops/lxqt/obconf-qt/default.nix index a5be8f419677..1333d027fca4 100644 --- a/pkgs/desktops/lxqt/obconf-qt/default.nix +++ b/pkgs/desktops/lxqt/obconf-qt/default.nix @@ -1,5 +1,5 @@ { lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, pcre, qtbase, qttools, - qtx11extras, xorg, lxqt-build-tools, openbox, hicolor-icon-theme }: + qtx11extras, xorg, lxqt-build-tools, openbox }: mkDerivation rec { pname = "obconf-qt"; @@ -27,7 +27,6 @@ mkDerivation rec { xorg.libXdmcp xorg.libSM openbox - hicolor-icon-theme ]; meta = with lib; { diff --git a/pkgs/desktops/mate/mate-icon-theme-faenza/default.nix b/pkgs/desktops/mate/mate-icon-theme-faenza/default.nix index 7db01f598164..1e1b2b837c37 100644 --- a/pkgs/desktops/mate/mate-icon-theme-faenza/default.nix +++ b/pkgs/desktops/mate/mate-icon-theme-faenza/default.nix @@ -11,7 +11,13 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook gtk3 ]; - buildInputs = [ mate.mate-icon-theme hicolor-icon-theme ]; + buildInputs = [ mate.mate-icon-theme ]; + + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; postInstall = '' for theme in "$out"/share/icons/*; do diff --git a/pkgs/desktops/mate/mate-icon-theme/default.nix b/pkgs/desktops/mate/mate-icon-theme/default.nix index b3610c12de68..74777a7ef5e8 100644 --- a/pkgs/desktops/mate/mate-icon-theme/default.nix +++ b/pkgs/desktops/mate/mate-icon-theme/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, intltool, iconnamingutils, librsvg, hicolor-icon-theme, gtk3 }: +{ stdenv, fetchurl, pkgconfig, intltool, iconnamingutils, librsvg, gtk3, hicolor-icon-theme }: stdenv.mkDerivation rec { pname = "mate-icon-theme"; @@ -11,7 +11,13 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig intltool iconnamingutils ]; - buildInputs = [ librsvg hicolor-icon-theme ]; + buildInputs = [ librsvg ]; + + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + + dontDropIconThemeCache = true; postInstall = '' for theme in "$out"/share/icons/*; do diff --git a/pkgs/desktops/mate/mate-settings-daemon/default.nix b/pkgs/desktops/mate/mate-settings-daemon/default.nix index 10c77304a8fc..d03863b90484 100644 --- a/pkgs/desktops/mate/mate-settings-daemon/default.nix +++ b/pkgs/desktops/mate/mate-settings-daemon/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, pkgconfig, intltool, glib, dbus-glib, libxklavier, libcanberra-gtk3, libnotify, nss, polkit, gnome3, gtk3, mate, pulseaudioSupport ? stdenv.config.pulseaudio or true, libpulseaudio, - wrapGAppsHook }: + wrapGAppsHook, fetchpatch }: stdenv.mkDerivation rec { pname = "mate-settings-daemon"; @@ -12,6 +12,14 @@ stdenv.mkDerivation rec { sha256 = "0idw02z0iig0pfxvlhc4dq4sr7kl1w50xscvg0jzzswnxid2l4ip"; }; + patches = [ + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/mate-desktop/mate-settings-daemon/pull/296.patch"; + sha256 = "00dfn8h47zw3wr7yya82vvp19wsw51whn8jwgayn4hkjd161s9nm"; + }) + ]; + nativeBuildInputs = [ pkgconfig intltool diff --git a/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix b/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix index bdf42b1c1ef0..7467bd124ac9 100644 --- a/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix +++ b/pkgs/desktops/pantheon/artwork/elementary-icon-theme/default.nix @@ -39,6 +39,8 @@ stdenv.mkDerivation rec { hicolor-icon-theme ]; + dontDropIconThemeCache = true; + mesonFlags = [ "-Dvolume_icons=false" # Tries to install some icons to / "-Dpalettes=false" # Don't install gimp and inkscape palette files diff --git a/pkgs/desktops/pantheon/granite/default.nix b/pkgs/desktops/pantheon/granite/default.nix index 287254c9615b..b93eb2f3f9b4 100644 --- a/pkgs/desktops/pantheon/granite/default.nix +++ b/pkgs/desktops/pantheon/granite/default.nix @@ -11,7 +11,6 @@ , gtk3 , glib , gettext -, hicolor-icon-theme , gobject-introspection , wrapGAppsHook }: @@ -62,7 +61,6 @@ stdenv.mkDerivation rec { buildInputs = [ glib gtk3 - hicolor-icon-theme libgee ]; diff --git a/pkgs/desktops/rox/rox-filer/default.nix b/pkgs/desktops/rox/rox-filer/default.nix index 543e3ca897f1..05f5936a6cb0 100644 --- a/pkgs/desktops/rox/rox-filer/default.nix +++ b/pkgs/desktops/rox/rox-filer/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, libxml2, gtk, libSM, shared-mime-info, hicolor-icon-theme }: +{ stdenv, fetchurl, pkgconfig, libxml2, gtk, libSM, shared-mime-info }: let version = "2.11"; @@ -12,7 +12,7 @@ in stdenv.mkDerivation { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ libxml2 gtk shared-mime-info hicolor-icon-theme libSM ]; + buildInputs = [ libxml2 gtk shared-mime-info libSM ]; NIX_LDFLAGS = [ "-ldl" "-lm" ]; patches = [ diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix index e25c7b6016af..b84b89583253 100644 --- a/pkgs/development/compilers/gcc/8/default.nix +++ b/pkgs/development/compilers/gcc/8/default.nix @@ -378,9 +378,6 @@ stdenv.mkDerivation ({ stdenv.lib.platforms.freebsd ++ stdenv.lib.platforms.illumos ++ stdenv.lib.platforms.darwin; - - # See #40038 - broken = stdenv.isDarwin; }; } diff --git a/pkgs/development/compilers/intel-graphics-compiler/default.nix b/pkgs/development/compilers/intel-graphics-compiler/default.nix new file mode 100644 index 000000000000..c8fbffcc164a --- /dev/null +++ b/pkgs/development/compilers/intel-graphics-compiler/default.nix @@ -0,0 +1,73 @@ +{ stdenv +, fetchFromGitHub +, cmake +, pkgconfig + +, bison +, flex +, llvmPackages_8 +, opencl-clang +, python +, spirv-llvm-translator + +, buildWithPatches ? true +}: + +let + llvmPkgs = llvmPackages_8 // { + inherit spirv-llvm-translator; + }; + inherit (llvmPkgs) llvm; + inherit (if buildWithPatches then opencl-clang else llvmPkgs) clang clang-unwrapped spirv-llvm-translator; + inherit (stdenv.lib) getVersion optional optionals versionOlder versions; +in + +stdenv.mkDerivation rec { + pname = "intel-graphics-compiler"; + version = "1.0.10"; + + src = fetchFromGitHub { + owner = "intel"; + repo = "intel-graphics-compiler"; + rev = "igc-${version}"; + sha256 = "1yqd2zvvvxxxzb5d3v0f03n0jdivid5l2cj11dw7ff7xz7jwiv2i"; + }; + + nativeBuildInputs = [ clang cmake bison flex llvm python ]; + + buildInputs = [ clang opencl-clang spirv-llvm-translator ]; + + # checkInputs = [ lit pythonPackages.nose ]; + + # FIXME: How do we run the test suite? + # https://github.com/intel/intel-graphics-compiler/issues/98 + doCheck = false; + + # Handholding the braindead build script + # We put this in a derivation because the cmake requires an absolute path + prebuilds = stdenv.mkDerivation { + name = "igc-cclang-prebuilds"; + phases = [ "installPhase" ]; + installPhase = '' + mkdir $out + ln -s ${clang}/bin/clang $out/ + ln -s clang $out/clang-${versions.major (getVersion clang)} + ln -s ${opencl-clang}/lib/* $out/ + ln -s ${clang-unwrapped}/lib/clang/${getVersion clang}/include/opencl-c.h $out/ + ''; + }; + + cmakeFlags = [ + "-DCCLANG_BUILD_PREBUILDS=ON" + "-DCCLANG_BUILD_PREBUILDS_DIR=${prebuilds}" + "-DIGC_PREFERRED_LLVM_VERSION=${getVersion llvm}" + ]; + + meta = with stdenv.lib; { + homepage = https://github.com/intel/intel-graphics-compiler; + description = "LLVM-based compiler for OpenCL targeting Intel Gen graphics hardware"; + license = licenses.mit; + platforms = platforms.all; + maintainers = with maintainers; [ gloaming ]; + }; +} diff --git a/pkgs/development/compilers/spirv-llvm-translator/default.nix b/pkgs/development/compilers/spirv-llvm-translator/default.nix new file mode 100644 index 000000000000..1ee0b9ed0cc8 --- /dev/null +++ b/pkgs/development/compilers/spirv-llvm-translator/default.nix @@ -0,0 +1,38 @@ +{ stdenv +, fetchFromGitHub +, cmake + +, lit +, llvm_8 +}: + +stdenv.mkDerivation rec { + pname = "SPIRV-LLVM-Translator"; + version = "8.0.1-2"; + + src = fetchFromGitHub { + owner = "KhronosGroup"; + repo = "SPIRV-LLVM-Translator"; + rev = "v${version}"; + sha256 = "0hxalc3fkliqs61hpr97phbm3qsx4b8vgnlg30aimzr6aas403r5"; + }; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ llvm_8 ]; + + checkInputs = [ lit ]; + + cmakeFlags = [ "-DLLVM_INCLUDE_TESTS=ON" ]; + + # FIXME: CMake tries to run "/llvm-lit" which of course doesn't exist + doCheck = false; + + meta = with stdenv.lib; { + homepage = https://github.com/KhronosGroup/SPIRV-LLVM-Translator; + description = "A tool and a library for bi-directional translation between SPIR-V and LLVM IR"; + license = licenses.ncsa; + platforms = platforms.all; + maintainers = with maintainers; [ gloaming ]; + }; +} diff --git a/pkgs/development/interpreters/python/hooks/setuptools-build-hook.sh b/pkgs/development/interpreters/python/hooks/setuptools-build-hook.sh index db3e4225d293..c99ef313c102 100644 --- a/pkgs/development/interpreters/python/hooks/setuptools-build-hook.sh +++ b/pkgs/development/interpreters/python/hooks/setuptools-build-hook.sh @@ -27,9 +27,9 @@ setuptoolsShellHook() { if test -e setup.py; then tmp_path=$(mktemp -d) export PATH="$tmp_path/bin:$PATH" - export PYTHONPATH="@pythonSitePackages@:$PYTHONPATH" + export PYTHONPATH="$tmp_path/@pythonSitePackages@:$PYTHONPATH" mkdir -p "$tmp_path/@pythonSitePackages@" - eval "@pythonInterpreter@ -m pip -e . --prefix $tmp_path >&2" + eval "@pythonInterpreter@ -m pip install -e . --prefix $tmp_path >&2" fi runHook postShellHook diff --git a/pkgs/development/libraries/SDL/default.nix b/pkgs/development/libraries/SDL/default.nix index 610f1b768f24..61609a90dd02 100644 --- a/pkgs/development/libraries/SDL/default.nix +++ b/pkgs/development/libraries/SDL/default.nix @@ -13,6 +13,16 @@ with stdenv.lib; +let + extraPropagatedBuildInputs = [ ] + ++ optionals x11Support [ libXext libICE libXrandr ] + ++ optionals openglSupport [ libGL libGLU ] + ++ optional alsaSupport alsaLib + ++ optional pulseaudioSupport libpulseaudio + ++ optional stdenv.isDarwin Cocoa; + rpath = makeLibraryPath extraPropagatedBuildInputs; +in + stdenv.mkDerivation rec { pname = "SDL"; version = "1.2.15"; @@ -31,12 +41,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ] ++ optional stdenv.isLinux libcap; - propagatedBuildInputs = [ libiconv ] - ++ optionals x11Support [ libXext libICE libXrandr ] - ++ optionals openglSupport [ libGL libGLU ] - ++ optional alsaSupport alsaLib - ++ optional pulseaudioSupport libpulseaudio - ++ optional stdenv.isDarwin Cocoa; + propagatedBuildInputs = [ libiconv ] ++ extraPropagatedBuildInputs; buildInputs = [ ] ++ optional (!stdenv.hostPlatform.isMinGW && alsaSupport) audiofile @@ -108,7 +113,7 @@ stdenv.mkDerivation rec { postFixup = '' for lib in $out/lib/*.so* ; do if [[ -L "$lib" ]]; then - patchelf --set-rpath "$(patchelf --print-rpath $lib):${makeLibraryPath propagatedBuildInputs}" "$lib" + patchelf --set-rpath "$(patchelf --print-rpath $lib):${rpath}" "$lib" fi done ''; diff --git a/pkgs/development/libraries/accountsservice/default.nix b/pkgs/development/libraries/accountsservice/default.nix index 860ac3fde41f..11ac842342b5 100644 --- a/pkgs/development/libraries/accountsservice/default.nix +++ b/pkgs/development/libraries/accountsservice/default.nix @@ -70,6 +70,11 @@ stdenv.mkDerivation rec { url = "https://gitlab.freedesktop.org/accountsservice/accountsservice/commit/0e712e935abd26499ff5995ab363e5bfd9ee7c4c.patch"; sha256 = "1y60a5fmgfqjzprwpizilrazqn3mggdlgc5sgcpsprsp62fv78rl"; }) + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://gitlab.freedesktop.org/accountsservice/accountsservice/commit/ced73d0fcbd2a54085a660d260482fc70d79bd5c.patch"; + sha256 = "0s7fknfgxl8hnf6givmhfg4586fjb2n64i9arh1w7xnq7x9x8d4c"; + }) ]; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/avahi/default.nix b/pkgs/development/libraries/avahi/default.nix index ee451818831c..babfd6849a84 100644 --- a/pkgs/development/libraries/avahi/default.nix +++ b/pkgs/development/libraries/avahi/default.nix @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-qt3" "--disable-gdbm" "--disable-mono" - "--disable-gtk" + "--disable-gtk" "--with-dbus-sys=${placeholder "out"}/share/dbus-1/system.d" (stdenv.lib.enableFeature gtk3Support "gtk3") "--${if qt4Support then "enable" else "disable"}-qt4" (stdenv.lib.enableFeature withPython "python") diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix index 4c0ca0210cc8..b3310e44ae06 100644 --- a/pkgs/development/libraries/ffmpeg/generic.nix +++ b/pkgs/development/libraries/ffmpeg/generic.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, perl, texinfo, yasm +{ stdenv, fetchurl, pkgconfig, addOpenGLRunpath, perl, texinfo, yasm , alsaLib, bzip2, fontconfig, freetype, gnutls, libiconv, lame, libass, libogg , libssh, libtheora, libva, libdrm, libvorbis, libvpx, lzma, libpulseaudio, soxr , x264, x265, xvidcore, zlib, libopus, speex, nv-codec-headers, dav1d @@ -42,7 +42,7 @@ let inherit (stdenv) isDarwin isFreeBSD isLinux isAarch32; - inherit (stdenv.lib) optional optionals enableFeature; + inherit (stdenv.lib) optional optionals optionalString enableFeature; cmpVer = builtins.compareVersions; reqMin = requiredVersion: (cmpVer requiredVersion branch != 1); @@ -157,7 +157,7 @@ stdenv.mkDerivation rec { "--enable-cross-compile" ] ++ optional stdenv.cc.isClang "--cc=clang"; - nativeBuildInputs = [ perl pkgconfig texinfo yasm ]; + nativeBuildInputs = [ addOpenGLRunpath perl pkgconfig texinfo yasm ]; buildInputs = [ bzip2 fontconfig freetype gnutls libiconv lame libass libogg libssh libtheora @@ -186,6 +186,10 @@ stdenv.mkDerivation rec { substituteInPlace $pc \ --replace "includedir=$out" "includedir=''${!outputInclude}" done + '' + optionalString stdenv.isLinux '' + # Set RUNPATH so that libnvcuvid in /run/opengl-driver(-32)/lib can be found. + # See the explanation in addOpenGLRunpath. + addOpenGLRunpath $out/lib/libavcodec.so* ''; installFlags = [ "install-man" ]; diff --git a/pkgs/development/libraries/flatpak/default.nix b/pkgs/development/libraries/flatpak/default.nix index d29be4cb9304..8aa61949e401 100644 --- a/pkgs/development/libraries/flatpak/default.nix +++ b/pkgs/development/libraries/flatpak/default.nix @@ -61,6 +61,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-system-bubblewrap=${bubblewrap}/bin/bwrap" "--with-system-dbus-proxy=${xdg-dbus-proxy}/bin/xdg-dbus-proxy" + "--dbus_config_dir=${placeholder "out"}/share/dbus-1/system.d" "--localstatedir=/var" "--enable-installed-tests" ]; diff --git a/pkgs/development/libraries/geoclue/default.nix b/pkgs/development/libraries/geoclue/default.nix index cc2037791e01..d597ed410724 100644 --- a/pkgs/development/libraries/geoclue/default.nix +++ b/pkgs/development/libraries/geoclue/default.nix @@ -43,6 +43,7 @@ stdenv.mkDerivation rec { "--sysconfdir=/etc" "-Dsysconfdir_install=${placeholder "out"}/etc" "-Ddbus-srv-user=geoclue" + "-Ddbus-sys-dir=${placeholder "out"}/share/dbus-1/system.d" ] ++ optionals stdenv.isDarwin [ "-D3g-source=false" "-Dcdma-source=false" diff --git a/pkgs/development/libraries/gnome-online-accounts/default.nix b/pkgs/development/libraries/gnome-online-accounts/default.nix index f97a49e26b86..828478535884 100644 --- a/pkgs/development/libraries/gnome-online-accounts/default.nix +++ b/pkgs/development/libraries/gnome-online-accounts/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, pkgconfig, vala, glib, libxslt, gtk3, wrapGAppsHook , webkitgtk, json-glib, librest, libsecret, gtk-doc, gobject-introspection -, gettext, icu, glib-networking, hicolor-icon-theme +, gettext, icu, glib-networking , libsoup, docbook_xsl, docbook_xml_dtd_412, gnome3, gcr, kerberos }: @@ -31,7 +31,6 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig gobject-introspection vala gettext wrapGAppsHook libxslt docbook_xsl docbook_xml_dtd_412 gtk-doc - hicolor-icon-theme # for setup-hook ]; buildInputs = [ glib gtk3 webkitgtk json-glib librest libsecret glib-networking icu libsoup diff --git a/pkgs/development/libraries/gtk/2.x.nix b/pkgs/development/libraries/gtk/2.x.nix index f1a53390467a..8bef9d92f5fa 100644 --- a/pkgs/development/libraries/gtk/2.x.nix +++ b/pkgs/development/libraries/gtk/2.x.nix @@ -25,9 +25,12 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - setupHook = ./setup-hook.sh; + setupHooks = [ + ./gtk2-clean-immodules-cache.sh + ./drop-icon-theme-cache.sh + ]; - nativeBuildInputs = [ setupHook perl pkgconfig gettext gobject-introspection ]; + nativeBuildInputs = [ setupHooks perl pkgconfig gettext gobject-introspection ]; patches = [ ./2.0-immodules.cache.patch diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix index 3f599a7846fc..a5bbb73e97fd 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -24,7 +24,6 @@ , libxkbcommon , gmp , gnome3 -, hicolor-icon-theme , gsettings-desktop-schemas , sassc , x11Support ? stdenv.isLinux @@ -50,7 +49,10 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" ]; outputBin = "dev"; - setupHook = ./gtk3-setup-hook.sh; + setupHooks = [ + ./gtk3-clean-immodules-cache.sh + ./drop-icon-theme-cache.sh + ]; src = fetchurl { url = "mirror://gnome/sources/gtk+/${stdenv.lib.versions.majorMinor version}/gtk+-${version}.tar.xz"; @@ -103,14 +105,13 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ gettext gobject-introspection - hicolor-icon-theme # setup-hook makeWrapper meson ninja pkgconfig python3 sassc - setupHook + setupHooks ]; buildInputs = [ diff --git a/pkgs/development/libraries/gtk/drop-icon-theme-cache.sh b/pkgs/development/libraries/gtk/drop-icon-theme-cache.sh new file mode 100644 index 000000000000..8f2cb8a334ae --- /dev/null +++ b/pkgs/development/libraries/gtk/drop-icon-theme-cache.sh @@ -0,0 +1,19 @@ +# shellcheck shell=bash + +# Packages often run gtk-update-icon-cache to include their icons in themes’ icon cache. +# However, since each package is installed to its own prefix, the files will only collide. +dropIconThemeCache() { + if [[ -z "${dontDropIconThemeCache:-}" ]]; then + local icondir="${out:?}/share/icons" + if [[ -d "${icondir}" ]]; then + # App icons are supposed to go to hicolor theme, since it is a fallback theme as per [icon-theme-spec], but some might still choose to install stylized icons to other themes. + find "${icondir}" -name 'icon-theme.cache' -print0 \ + | while IFS= read -r -d '' file; do + echo "Removing ${file}" + rm -f "${file}" + done + fi + fi +} + +preFixupPhases="$preFixupPhases dropIconThemeCache" diff --git a/pkgs/development/libraries/gtk/setup-hook.sh b/pkgs/development/libraries/gtk/gtk2-clean-immodules-cache.sh similarity index 72% rename from pkgs/development/libraries/gtk/setup-hook.sh rename to pkgs/development/libraries/gtk/gtk2-clean-immodules-cache.sh index c2b0ab502db7..dde991fd27cd 100644 --- a/pkgs/development/libraries/gtk/setup-hook.sh +++ b/pkgs/development/libraries/gtk/gtk2-clean-immodules-cache.sh @@ -1,8 +1,10 @@ +# shellcheck shell=bash + fixupOutputHooks+=(_gtk2CleanComments) # Clean comments that link to generator of the file _gtk2CleanComments() { - local f="$prefix/lib/gtk-2.0/2.10.0/immodules.cache" + local f="${prefix:?}/lib/gtk-2.0/2.10.0/immodules.cache" if [ -f "$f" ]; then sed 's|Created by .*bin/gtk-query-|Created by bin/gtk-query-|' -i "$f" fi diff --git a/pkgs/development/libraries/gtk/gtk3-setup-hook.sh b/pkgs/development/libraries/gtk/gtk3-clean-immodules-cache.sh similarity index 73% rename from pkgs/development/libraries/gtk/gtk3-setup-hook.sh rename to pkgs/development/libraries/gtk/gtk3-clean-immodules-cache.sh index bddeb2d25d50..d2d5287831a0 100644 --- a/pkgs/development/libraries/gtk/gtk3-setup-hook.sh +++ b/pkgs/development/libraries/gtk/gtk3-clean-immodules-cache.sh @@ -1,10 +1,11 @@ +# shellcheck shell=bash + fixupOutputHooks+=(_gtk3CleanComments) # Clean comments that link to generator of the file _gtk3CleanComments() { - local f="$prefix/lib/gtk-3.0/3.0.0/immodules.cache" + local f="${prefix:?}/lib/gtk-3.0/3.0.0/immodules.cache" if [ -f "$f" ]; then sed 's|Created by .*bin/gtk-query-|Created by bin/gtk-query-|' -i "$f" fi } - diff --git a/pkgs/development/libraries/kde-frameworks/breeze-icons.nix b/pkgs/development/libraries/kde-frameworks/breeze-icons.nix index c8382ed3408b..d9192b940364 100644 --- a/pkgs/development/libraries/kde-frameworks/breeze-icons.nix +++ b/pkgs/development/libraries/kde-frameworks/breeze-icons.nix @@ -1,10 +1,14 @@ -{ mkDerivation, lib, extra-cmake-modules, gtk3, qtsvg }: +{ mkDerivation, lib, extra-cmake-modules, gtk3, qtsvg, hicolor-icon-theme }: mkDerivation { name = "breeze-icons"; meta = { maintainers = [ lib.maintainers.ttuegel ]; }; nativeBuildInputs = [ extra-cmake-modules gtk3 ]; buildInputs = [ qtsvg ]; + propagatedBuildInputs = [ + hicolor-icon-theme + ]; + dontDropIconThemeCache = true; outputs = [ "out" ]; # only runtime outputs postInstall = '' gtk-update-icon-cache "''${out:?}/share/icons/breeze" diff --git a/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/nix-lib-path.patch b/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/nix-lib-path.patch index bd105d2b4a9c..f019e67d3f08 100644 --- a/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/nix-lib-path.patch +++ b/pkgs/development/libraries/kde-frameworks/extra-cmake-modules/nix-lib-path.patch @@ -1,8 +1,8 @@ diff --git a/kde-modules/KDEInstallDirs.cmake b/kde-modules/KDEInstallDirs.cmake -index 275fd65..a04596c 100644 +index 0acd33f..c04b0a5 100644 --- a/kde-modules/KDEInstallDirs.cmake +++ b/kde-modules/KDEInstallDirs.cmake -@@ -232,34 +232,6 @@ +@@ -236,35 +236,6 @@ # GNUInstallDirs code deals with re-configuring, but that is dealt with # by the _define_* macros in this module). set(_LIBDIR_DEFAULT "lib") @@ -17,6 +17,7 @@ index 275fd65..a04596c 100644 -# See https://wiki.debian.org/Multiarch -if((CMAKE_SYSTEM_NAME MATCHES "Linux|kFreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU") - AND NOT CMAKE_CROSSCOMPILING +- AND NOT EXISTS "/etc/arch-release" - AND NOT DEFINED ENV{FLATPAK_ID}) - if (EXISTS "/etc/debian_version") # is this a debian system ? - if(CMAKE_LIBRARY_ARCHITECTURE) 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 4df086ddbf21..35982e866284 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 @@ -53,13 +53,12 @@ ecmPostHook() { } postHooks+=(ecmPostHook) -xdgDataSubdirs=( - "doc" "config.kcfg" "kconf_update" "kservices5" "kservicetypes5" \ +xdgDataSubdirs=( \ + "config.kcfg" "kconf_update" "kservices5" "kservicetypes5" \ "kxmlgui5" "knotifications5" "icons" "locale" "sounds" "templates" \ "wallpapers" "applications" "desktop-directories" "mime" "appdata" "dbus-1" \ ) - ecmHostPathSeen=( ) ecmUnseenHostPath() { @@ -104,5 +103,10 @@ ecmHostPathHook() { then qtWrapperArgs+=(--prefix INFOPATH : "$infoDir") fi + + if [ -d "$1/dbus-1" ] + then + propagatedUserEnvPkgs+=" $1" + fi } -addEnvHooks "$hostOffset" ecmHostPathHook +addEnvHooks "$targetOffset" ecmHostPathHook diff --git a/pkgs/development/libraries/kde-frameworks/fetch.sh b/pkgs/development/libraries/kde-frameworks/fetch.sh index 096376ca6712..f06a515a83be 100644 --- a/pkgs/development/libraries/kde-frameworks/fetch.sh +++ b/pkgs/development/libraries/kde-frameworks/fetch.sh @@ -1 +1 @@ -WGET_ARGS=( https://download.kde.org/stable/frameworks/5.61/ ) +WGET_ARGS=( https://download.kde.org/stable/frameworks/5.62/ ) diff --git a/pkgs/development/libraries/kde-frameworks/kconfigwidgets/default.nix b/pkgs/development/libraries/kde-frameworks/kconfigwidgets/default.nix index e06d9547de07..3d7c7cdedefa 100644 --- a/pkgs/development/libraries/kde-frameworks/kconfigwidgets/default.nix +++ b/pkgs/development/libraries/kde-frameworks/kconfigwidgets/default.nix @@ -1,13 +1,13 @@ { mkDerivation, lib, extra-cmake-modules, - kauth, kcodecs, kconfig, kdoctools, kguiaddons, ki18n, kwidgetsaddons, qtbase, + kauth, kcodecs, kconfig, kdoctools, kguiaddons, ki18n, kwidgetsaddons, qttools, qtbase, }: mkDerivation { name = "kconfigwidgets"; meta = { maintainers = [ lib.maintainers.ttuegel ]; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; - buildInputs = [ kguiaddons ki18n qtbase ]; + buildInputs = [ kguiaddons ki18n qtbase qttools ]; propagatedBuildInputs = [ kauth kcodecs kconfig kwidgetsaddons ]; patches = [ ./0001-qdiriterator-follow-symlinks.patch ]; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/kde-frameworks/kiconthemes/default.nix b/pkgs/development/libraries/kde-frameworks/kiconthemes/default.nix index 4b8e0059377d..8faac005f2ac 100644 --- a/pkgs/development/libraries/kde-frameworks/kiconthemes/default.nix +++ b/pkgs/development/libraries/kde-frameworks/kiconthemes/default.nix @@ -2,7 +2,7 @@ mkDerivation, lib, copyPathsToStore, extra-cmake-modules, breeze-icons, karchive, kcoreaddons, kconfigwidgets, ki18n, kitemviews, - qtbase, qtsvg, + qtbase, qtsvg, qttools, }: mkDerivation { @@ -13,5 +13,5 @@ mkDerivation { buildInputs = [ breeze-icons karchive kcoreaddons kconfigwidgets ki18n kitemviews ]; - propagatedBuildInputs = [ qtbase qtsvg ]; + propagatedBuildInputs = [ qtbase qtsvg qttools ]; } diff --git a/pkgs/development/libraries/kde-frameworks/kio/default.nix b/pkgs/development/libraries/kde-frameworks/kio/default.nix index 281778d9d07f..6cf89669df01 100644 --- a/pkgs/development/libraries/kde-frameworks/kio/default.nix +++ b/pkgs/development/libraries/kde-frameworks/kio/default.nix @@ -1,6 +1,6 @@ { mkDerivation, lib, copyPathsToStore, - extra-cmake-modules, kdoctools, + extra-cmake-modules, kdoctools, qttools, karchive, kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kdbusaddons, ki18n, kiconthemes, kitemviews, kjobwidgets, knotifications, kservice, ktextwidgets, kwallet, kwidgetsaddons, kwindowsystem, kxmlgui, @@ -18,7 +18,7 @@ mkDerivation { ]; propagatedBuildInputs = [ kbookmarks kcompletion kconfig kcoreaddons kitemviews kjobwidgets kservice - kxmlgui qtbase solid + kxmlgui qtbase qttools solid ]; patches = (copyPathsToStore (lib.readPathsFromFile ./. ./series)); } diff --git a/pkgs/development/libraries/kde-frameworks/knewstuff.nix b/pkgs/development/libraries/kde-frameworks/knewstuff.nix index 70f3cbb3c37e..df384648e6a3 100644 --- a/pkgs/development/libraries/kde-frameworks/knewstuff.nix +++ b/pkgs/development/libraries/kde-frameworks/knewstuff.nix @@ -1,9 +1,9 @@ { - mkDerivation, lib, + mkDerivation, lib, fetchpatch, extra-cmake-modules, attica, karchive, kcompletion, kconfig, kcoreaddons, ki18n, kiconthemes, kio, kitemviews, kservice, ktextwidgets, kwidgetsaddons, kxmlgui, qtbase, - qtdeclarative, + qtdeclarative, kirigami2, }: mkDerivation { @@ -12,7 +12,13 @@ mkDerivation { nativeBuildInputs = [ extra-cmake-modules ]; buildInputs = [ karchive kcompletion kconfig kcoreaddons ki18n kiconthemes kio kitemviews - ktextwidgets kwidgetsaddons qtbase qtdeclarative + ktextwidgets kwidgetsaddons qtbase qtdeclarative kirigami2 ]; propagatedBuildInputs = [ attica kservice kxmlgui ]; + + patches = [ (fetchpatch { + url = "https://github.com/KDE/knewstuff/commit/dbf788c10130eaa3f5ea37a7f22eb4569471aa04.patch"; + sha256 = "1225rgqg1j120nvhgsahvsq2xlkg91lr37zp14x19krixxgx521j"; + revert = true; + }) ]; } diff --git a/pkgs/development/libraries/kde-frameworks/kplotting.nix b/pkgs/development/libraries/kde-frameworks/kplotting.nix index 380fd8fc5e34..1774b044b165 100644 --- a/pkgs/development/libraries/kde-frameworks/kplotting.nix +++ b/pkgs/development/libraries/kde-frameworks/kplotting.nix @@ -1,5 +1,5 @@ { mkDerivation, lib -, extra-cmake-modules, qtbase +, extra-cmake-modules, qttools, qtbase }: mkDerivation { @@ -9,6 +9,6 @@ mkDerivation { broken = builtins.compareVersions qtbase.version "5.7.0" < 0; }; nativeBuildInputs = [ extra-cmake-modules ]; - propagatedBuildInputs = [ qtbase ]; + propagatedBuildInputs = [ qtbase qttools ]; outputs = [ "out" "dev" ]; } diff --git a/pkgs/development/libraries/kde-frameworks/ktextwidgets.nix b/pkgs/development/libraries/kde-frameworks/ktextwidgets.nix index 8b082f7f3655..604066b96394 100644 --- a/pkgs/development/libraries/kde-frameworks/ktextwidgets.nix +++ b/pkgs/development/libraries/kde-frameworks/ktextwidgets.nix @@ -1,6 +1,6 @@ { mkDerivation, lib, - extra-cmake-modules, + extra-cmake-modules, qttools, kcompletion, kconfig, kconfigwidgets, ki18n, kiconthemes, kservice, kwindowsystem, qtbase, sonnet, }: @@ -12,5 +12,5 @@ mkDerivation { buildInputs = [ kcompletion kconfig kconfigwidgets kiconthemes kservice kwindowsystem ]; - propagatedBuildInputs = [ ki18n qtbase sonnet ]; + propagatedBuildInputs = [ ki18n qtbase qttools sonnet ]; } diff --git a/pkgs/development/libraries/kde-frameworks/kwindowsystem/platform-plugins-path.patch b/pkgs/development/libraries/kde-frameworks/kwindowsystem/platform-plugins-path.patch index ae0da37922e9..7c86454c5cf6 100644 --- a/pkgs/development/libraries/kde-frameworks/kwindowsystem/platform-plugins-path.patch +++ b/pkgs/development/libraries/kde-frameworks/kwindowsystem/platform-plugins-path.patch @@ -1,13 +1,13 @@ -Index: kwindowsystem-5.32.0/src/pluginwrapper.cpp -=================================================================== ---- kwindowsystem-5.32.0.orig/src/pluginwrapper.cpp -+++ kwindowsystem-5.32.0/src/pluginwrapper.cpp -@@ -37,14 +37,9 @@ Q_GLOBAL_STATIC(KWindowSystemPluginWrapp +diff --git a/src/pluginwrapper.cpp b/src/pluginwrapper.cpp +index 8e6298a..210989a 100644 +--- a/src/pluginwrapper.cpp ++++ b/src/pluginwrapper.cpp +@@ -37,14 +37,10 @@ Q_GLOBAL_STATIC(KWindowSystemPluginWrapper, s_pluginWrapper) static QStringList pluginCandidates() { QStringList ret; - foreach (const QString &path, QCoreApplication::libraryPaths()) { -- QDir pluginDir(path + QLatin1Literal("/kf5/org.kde.kwindowsystem.platforms")); +- QDir pluginDir(path + QLatin1String("/kf5/org.kde.kwindowsystem.platforms")); - if (!pluginDir.exists()) { - continue; - } @@ -15,7 +15,8 @@ Index: kwindowsystem-5.32.0/src/pluginwrapper.cpp - ret << pluginDir.absoluteFilePath(entry); - } + QDir pluginDir(QLatin1String(NIXPKGS_QT_PLUGIN_PATH) + QLatin1Literal("/kf5/org.kde.kwindowsystem.platforms")); -+ foreach (const QString &entry, pluginDir.entryList(QDir::Files | QDir::NoDotAndDotDot)) { ++ const auto entries = pluginDir.entryList(QDir::Files | QDir::NoDotAndDotDot); ++ for (const QString &entry : entries) { + ret << pluginDir.absoluteFilePath(entry); } return ret; diff --git a/pkgs/development/libraries/kde-frameworks/kxmlgui.nix b/pkgs/development/libraries/kde-frameworks/kxmlgui.nix index b9aede81f9a9..5adcf281e622 100644 --- a/pkgs/development/libraries/kde-frameworks/kxmlgui.nix +++ b/pkgs/development/libraries/kde-frameworks/kxmlgui.nix @@ -1,6 +1,6 @@ { mkDerivation, lib, - extra-cmake-modules, + extra-cmake-modules, qttools, attica, kconfig, kconfigwidgets, kglobalaccel, ki18n, kiconthemes, kitemviews, ktextwidgets, kwindowsystem, qtbase, sonnet, }: @@ -13,5 +13,5 @@ mkDerivation { attica kglobalaccel ki18n kiconthemes kitemviews ktextwidgets kwindowsystem sonnet ]; - propagatedBuildInputs = [ kconfig kconfigwidgets qtbase ]; + propagatedBuildInputs = [ kconfig kconfigwidgets qtbase qttools ]; } diff --git a/pkgs/development/libraries/kde-frameworks/srcs.nix b/pkgs/development/libraries/kde-frameworks/srcs.nix index 549f99a55886..6a7c7bc0c9c4 100644 --- a/pkgs/development/libraries/kde-frameworks/srcs.nix +++ b/pkgs/development/libraries/kde-frameworks/srcs.nix @@ -3,635 +3,635 @@ { attica = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/attica-5.61.0.tar.xz"; - sha256 = "9d3ad34c17223333b5a77144cc5a9d941cbb7baa01ab4a2ffe34ae9398c90dde"; - name = "attica-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/attica-5.62.0.tar.xz"; + sha256 = "86b5388c93dd3375dbdca23b20d539af5ed9516f6a573e32549baac3200d029f"; + name = "attica-5.62.0.tar.xz"; }; }; baloo = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/baloo-5.61.0.tar.xz"; - sha256 = "dd559e06237843f51d68eb5001b835037d4b2f6d62b7dc4d040961f9863632f1"; - name = "baloo-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/baloo-5.62.0.tar.xz"; + sha256 = "454e6808a5fe523785e5e67b7c0453fd1b6c42035aaf8084c39ad30bcbbc8d1a"; + name = "baloo-5.62.0.tar.xz"; }; }; bluez-qt = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/bluez-qt-5.61.0.tar.xz"; - sha256 = "0ea647de61fcc18a85c660fa8e05fe93072a713a8d00a018ba8e99ea790e5d27"; - name = "bluez-qt-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/bluez-qt-5.62.0.tar.xz"; + sha256 = "545a6c76042a077f04b0a6c2b8dfbe3b5b1a582edaae4454d7a57c06ab033715"; + name = "bluez-qt-5.62.0.tar.xz"; }; }; breeze-icons = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/breeze-icons-5.61.0.tar.xz"; - sha256 = "1d260a01a2617f5f755d2eb38423af19bf4a1a2ccfa9339b441b4f6be6381c30"; - name = "breeze-icons-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/breeze-icons-5.62.0.tar.xz"; + sha256 = "5858100f1a87dc865f44cde159aaee025ec46f894f544c75086ea0e8f9555951"; + name = "breeze-icons-5.62.0.tar.xz"; }; }; extra-cmake-modules = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/extra-cmake-modules-5.61.0.tar.xz"; - sha256 = "a86a3b12c8a540af822131a8d65586d985267b1d642c29b4815b6c7870bc126c"; - name = "extra-cmake-modules-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/extra-cmake-modules-5.62.0.tar.xz"; + sha256 = "e07acfecef1b4c7a481a253b58b75072a4f887376301108ed2c753b5002adcd4"; + name = "extra-cmake-modules-5.62.0.tar.xz"; }; }; frameworkintegration = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/frameworkintegration-5.61.0.tar.xz"; - sha256 = "a1a2bbb15d287b67643750cb5414ceb10c6583861dd5c00118010d409f106efb"; - name = "frameworkintegration-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/frameworkintegration-5.62.0.tar.xz"; + sha256 = "0d43d6cd008359eac4840c8b6e12d2b17eeb53c95111af1f7e8ca6ae8e6aca2c"; + name = "frameworkintegration-5.62.0.tar.xz"; }; }; kactivities = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kactivities-5.61.0.tar.xz"; - sha256 = "0d7d7e5bd68541ad1dcf1f96c7205330cb7b075c6ff0d8b46774e781eff84af5"; - name = "kactivities-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kactivities-5.62.0.tar.xz"; + sha256 = "b466b8921adad6d887f93f760634dfa344ae52df83c58dd7ae75174961def85b"; + name = "kactivities-5.62.0.tar.xz"; }; }; kactivities-stats = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kactivities-stats-5.61.0.tar.xz"; - sha256 = "9062eb0f189f1b50674e65a7db9a4b821c628acd1ac650000cebbf1f7bdf0068"; - name = "kactivities-stats-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kactivities-stats-5.62.0.tar.xz"; + sha256 = "e6850a59d2e3dd566c77aa2b2fdc684737634b59755dcc7de231b8b496acbc1a"; + name = "kactivities-stats-5.62.0.tar.xz"; }; }; kapidox = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kapidox-5.61.0.tar.xz"; - sha256 = "3c948c87c7f7b16a3835f7df8387c110efe5fefecf8a7d6ffa1cae647be0669f"; - name = "kapidox-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kapidox-5.62.0.tar.xz"; + sha256 = "6aa3928b26acc23f5271ba0591d64a55c342e36ae16094e09be1ef038538952f"; + name = "kapidox-5.62.0.tar.xz"; }; }; karchive = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/karchive-5.61.0.tar.xz"; - sha256 = "457ed420449630625cb161fcc9bedc7c6a16527f48d6db4008aea76cdb948387"; - name = "karchive-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/karchive-5.62.0.tar.xz"; + sha256 = "99980ebdc16dd9ac062fcfda0974c0ce894c09a395caf914518646ffdc48e3ca"; + name = "karchive-5.62.0.tar.xz"; }; }; kauth = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kauth-5.61.0.tar.xz"; - sha256 = "b04458f32046b2dd61b48118646180df63d2c843cb2d53560aaa15168df087f1"; - name = "kauth-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kauth-5.62.0.tar.xz"; + sha256 = "31162621200df4b927719e34ce62004c51e79b9d785f9c3056c6902f80eeefe6"; + name = "kauth-5.62.0.tar.xz"; }; }; kbookmarks = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kbookmarks-5.61.0.tar.xz"; - sha256 = "24f87ff1acc5f0c257518f67af277b454566e607f82eb09e75b4a6ed02403377"; - name = "kbookmarks-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kbookmarks-5.62.0.tar.xz"; + sha256 = "69318784fa5feaee3e60bb159fb6c827475a8ce28a74bedf5939ad592c29ea4f"; + name = "kbookmarks-5.62.0.tar.xz"; }; }; kcmutils = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kcmutils-5.61.0.tar.xz"; - sha256 = "b8b79ef2f4513fbe5e4c61cf4726ed33b95efffabdd512fcc2dcff23c23cdfa7"; - name = "kcmutils-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kcmutils-5.62.0.tar.xz"; + sha256 = "93fd9b7b97cb4488f2007a4f518159129f0caafc05a004be56c87dd355870b1b"; + name = "kcmutils-5.62.0.tar.xz"; }; }; kcodecs = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kcodecs-5.61.0.tar.xz"; - sha256 = "4604323e44c1be7547f25b43b71bd541048c3d036a7fc5ca74e5ece9792ff5ee"; - name = "kcodecs-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kcodecs-5.62.0.tar.xz"; + sha256 = "1b015be0200444f1ce18ecc5c05dbafde62575a8e094e48698b4b64f43f307b1"; + name = "kcodecs-5.62.0.tar.xz"; }; }; kcompletion = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kcompletion-5.61.0.tar.xz"; - sha256 = "68697be65d6c9e0053fc3e504170d23c3162c05a0a9027249c575bc6dc8bd3ec"; - name = "kcompletion-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kcompletion-5.62.0.tar.xz"; + sha256 = "af774190ca1a0e4d335485548d6e5c1e02042a5d0e29a3c0db17c24e3656edec"; + name = "kcompletion-5.62.0.tar.xz"; }; }; kconfig = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kconfig-5.61.0.tar.xz"; - sha256 = "94c0e292a5d57e014aa745be6b59a989118ead1252d56c768f2719b5c6471372"; - name = "kconfig-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kconfig-5.62.0.tar.xz"; + sha256 = "fffe16924245e34d6267e67a6d425dc7b4fdab405968bffa4fff7bea5779bb51"; + name = "kconfig-5.62.0.tar.xz"; }; }; kconfigwidgets = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kconfigwidgets-5.61.0.tar.xz"; - sha256 = "4cc1e55c5f994abbec03b32bef73bdf54c2613199a446ad63f4ced6e3a0e2165"; - name = "kconfigwidgets-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kconfigwidgets-5.62.0.tar.xz"; + sha256 = "6c10810725e0b109c96ddc2246ca1741bcae012296e31caf7b41167a04ae31d6"; + name = "kconfigwidgets-5.62.0.tar.xz"; }; }; kcoreaddons = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kcoreaddons-5.61.0.tar.xz"; - sha256 = "6a4ea2eca77944c24fe63d2f7111913db721533d5971497cb5bdd2cac896e813"; - name = "kcoreaddons-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kcoreaddons-5.62.0.tar.xz"; + sha256 = "3819e2792a2e61444e337cd1a4cbdc362c18810918376eefc30b203fbd160b41"; + name = "kcoreaddons-5.62.0.tar.xz"; }; }; kcrash = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kcrash-5.61.0.tar.xz"; - sha256 = "83e6333ea0cd7d1ded3fa84f126e3c86a010d7bdb7fd183e7c5d42a8b8e74db8"; - name = "kcrash-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kcrash-5.62.0.tar.xz"; + sha256 = "9fac9396212148aade4b59665ec1725fa76e229f24c46b601f066e0026eddd2c"; + name = "kcrash-5.62.0.tar.xz"; }; }; kdbusaddons = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kdbusaddons-5.61.0.tar.xz"; - sha256 = "f24fadc71670591bb679cde68147e53819f6c3d56126ecbafe59688fc47b347d"; - name = "kdbusaddons-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kdbusaddons-5.62.0.tar.xz"; + sha256 = "d32e0b16abcb2b1593a567b0ef12cfb94ec2f08e5b8a3ec56efac19b22ca0152"; + name = "kdbusaddons-5.62.0.tar.xz"; }; }; kdeclarative = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kdeclarative-5.61.0.tar.xz"; - sha256 = "464a77f88cce72c1616654c371068c11d51e484e0de5c0c5e032126d71afedaa"; - name = "kdeclarative-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kdeclarative-5.62.0.tar.xz"; + sha256 = "804bc6dd1848fe38b9160a680f3d9f9b67d47150ee9683b3d2c5a07b96a12e46"; + name = "kdeclarative-5.62.0.tar.xz"; }; }; kded = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kded-5.61.0.tar.xz"; - sha256 = "ca970111cb2d0073305a226cc005e2085952c2a02703168a775f954d27d723bc"; - name = "kded-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kded-5.62.0.tar.xz"; + sha256 = "d2d7a979114ca770442cec0f89fe87730ff0c44b98ee64b39c2cada672fc03b1"; + name = "kded-5.62.0.tar.xz"; }; }; kdelibs4support = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/portingAids/kdelibs4support-5.61.0.tar.xz"; - sha256 = "ae6f7c10e1fe67ded687f38a8ab3c8d483ae06ae69344bd1e683af752cf40b5c"; - name = "kdelibs4support-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/portingAids/kdelibs4support-5.62.0.tar.xz"; + sha256 = "9cc10b4727b8ee3bae46af796e7da5d6ae620c543278814176a389ea178595ed"; + name = "kdelibs4support-5.62.0.tar.xz"; }; }; kdesignerplugin = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kdesignerplugin-5.61.0.tar.xz"; - sha256 = "6b204dffbb4897f51143650d75383b5a3ddf4254455e5827d316c7b4ee7b3f33"; - name = "kdesignerplugin-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/portingAids/kdesignerplugin-5.62.0.tar.xz"; + sha256 = "b5c0769d0b1df99f456c3c6f22a48e8bdf9c15f00be2e0795ae5bc5170596e47"; + name = "kdesignerplugin-5.62.0.tar.xz"; }; }; kdesu = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kdesu-5.61.0.tar.xz"; - sha256 = "398e74bdfe695ec2d7b57ce78f9fce3e19bb447a8eb5924441718a8f7384f888"; - name = "kdesu-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kdesu-5.62.0.tar.xz"; + sha256 = "9c22ad0a5c1d948a91846a34066155f64758b69ab005eb423bb02ba06301c80e"; + name = "kdesu-5.62.0.tar.xz"; }; }; kdewebkit = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/portingAids/kdewebkit-5.61.0.tar.xz"; - sha256 = "1ee2a00ee3d95df9270e8c3d434568cda8f42151e361bc07fe374bf0f7afe211"; - name = "kdewebkit-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/portingAids/kdewebkit-5.62.0.tar.xz"; + sha256 = "5e45a7866b28d69e6d28f821011c020e53cc6e5b59bcdb7a5d9cb7bda37175e4"; + name = "kdewebkit-5.62.0.tar.xz"; }; }; kdnssd = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kdnssd-5.61.0.tar.xz"; - sha256 = "02d70e5ee18697867c1a12373c1dbe31e1efba1fcb1e26bba3c75472cd3b271d"; - name = "kdnssd-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kdnssd-5.62.0.tar.xz"; + sha256 = "21554c6faf2f7136fb8f7a2908340c120ed0d5dc1475f5aeb8cafed1e4228009"; + name = "kdnssd-5.62.0.tar.xz"; }; }; kdoctools = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kdoctools-5.61.0.tar.xz"; - sha256 = "e48d8f8f075171c6b83189999a10552c772c6a7e9a115a2643414f9ecec77c6f"; - name = "kdoctools-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kdoctools-5.62.0.tar.xz"; + sha256 = "471ce5106f80af7272d2ea54265bde5a833c8de7716e8bd82f7a5742939c3f48"; + name = "kdoctools-5.62.0.tar.xz"; }; }; kemoticons = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kemoticons-5.61.0.tar.xz"; - sha256 = "cfc17de43320fbb353be30ae8d5b448b88da6f83bd23e29d678cd95a4bd7a380"; - name = "kemoticons-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kemoticons-5.62.0.tar.xz"; + sha256 = "fab145b2c4106be8a4f0024cb436d02d0fdcbf8666e9a790cc1cd98db1e70313"; + name = "kemoticons-5.62.0.tar.xz"; }; }; kfilemetadata = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kfilemetadata-5.61.0.tar.xz"; - sha256 = "15f20af053c71c1e5ba6c6ade90b7cce27645b27ee30f1e6e73038e81a2c958e"; - name = "kfilemetadata-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kfilemetadata-5.62.0.tar.xz"; + sha256 = "2d8488500b19a7d8f90712775e0353e16957857a89162d6c7b947dd5536245b0"; + name = "kfilemetadata-5.62.0.tar.xz"; }; }; kglobalaccel = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kglobalaccel-5.61.0.tar.xz"; - sha256 = "ad6bd2648e39854369555dd8a0823b08d9631f3638472627eb80e01d9902150e"; - name = "kglobalaccel-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kglobalaccel-5.62.0.tar.xz"; + sha256 = "b087ec1a23a50787d27e8c5d618d4097375a2f7b6188bc9077a5e60d11e2c04d"; + name = "kglobalaccel-5.62.0.tar.xz"; }; }; kguiaddons = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kguiaddons-5.61.0.tar.xz"; - sha256 = "40cefa421b5ad5cf211875a35408ba526a5fb34e5ba19ebbda718dbf6b742520"; - name = "kguiaddons-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kguiaddons-5.62.0.tar.xz"; + sha256 = "5fc61818ed054901a8b1a6a56a83ccaf5f38d9ea7c5761fa6279cd7316d81e44"; + name = "kguiaddons-5.62.0.tar.xz"; }; }; kholidays = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kholidays-5.61.0.tar.xz"; - sha256 = "ce3d879824a3e429b468008c1ccec5de44c07299d412ea32f9a2a814c27c08c1"; - name = "kholidays-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kholidays-5.62.0.tar.xz"; + sha256 = "f9f7cc399b35cef9348b8fbaabb87145b689165a66b874e3250456f6bbdcb329"; + name = "kholidays-5.62.0.tar.xz"; }; }; khtml = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/portingAids/khtml-5.61.0.tar.xz"; - sha256 = "5d8612b584eecf96959d56bb75b1470b3b34ff7176cef7a0a15bc2531b21720b"; - name = "khtml-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/portingAids/khtml-5.62.0.tar.xz"; + sha256 = "35e3f7e419041f0892ea42c6506b627661137602c25f0f1d6a81537b583682c1"; + name = "khtml-5.62.0.tar.xz"; }; }; ki18n = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/ki18n-5.61.0.tar.xz"; - sha256 = "d8c0594268b386ee42823360aa937c664cf04eedac8232bc18a653a9c52491d9"; - name = "ki18n-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/ki18n-5.62.0.tar.xz"; + sha256 = "b11a0c94c7149798f3f6592e2c386a682d9c528d1e10a59ed3934a93acbc79cb"; + name = "ki18n-5.62.0.tar.xz"; }; }; kiconthemes = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kiconthemes-5.61.0.tar.xz"; - sha256 = "341741abd0b8aeeec8a2a87fe781b4ec1ab593563b1c063cdfdccead3706cdd7"; - name = "kiconthemes-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kiconthemes-5.62.0.tar.xz"; + sha256 = "33fb5caf28ee763edeb3def66386a27f6a7b2bac6a6a0f0728dd4b222d11ebfe"; + name = "kiconthemes-5.62.0.tar.xz"; }; }; kidletime = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kidletime-5.61.0.tar.xz"; - sha256 = "8fb302dcc5b891ac2f06b5278bd6e08043772f3325bc209175c945280621fca2"; - name = "kidletime-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kidletime-5.62.0.tar.xz"; + sha256 = "dd2b6a9f7815c8e84b635e694cbf9ee207996d2cf3adb5a85eadd4a8de37f276"; + name = "kidletime-5.62.0.tar.xz"; }; }; kimageformats = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kimageformats-5.61.0.tar.xz"; - sha256 = "5a81359a043e201b29e205dd93559de077e0317d26712cb1c07e624d76aeb207"; - name = "kimageformats-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kimageformats-5.62.0.tar.xz"; + sha256 = "65c179e15dd9c81a4515eb9189951641cca4aad9e7456067a208658ce205c2c2"; + name = "kimageformats-5.62.0.tar.xz"; }; }; kinit = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kinit-5.61.0.tar.xz"; - sha256 = "1806bba9cc3f4d9c5ed23f49eca30707e8f74a99d35f5022130a46a395f2858f"; - name = "kinit-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kinit-5.62.0.tar.xz"; + sha256 = "5c4b066362ab6528b5c9ac654c20cc4eeed87e5384b26b3aa1df968c98c1e21a"; + name = "kinit-5.62.0.tar.xz"; }; }; kio = { - version = "5.61.0"; + version = "5.62.1"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kio-5.61.0.tar.xz"; - sha256 = "1fa35126f8167bdbe029e515d01c8d4b91a07556ce6d5c9418e0ea10d7c2e44e"; - name = "kio-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kio-5.62.1.tar.xz"; + sha256 = "4b149085bcfbcd729d808a34bcbd4b11f5f9526aa919c82eaddabc1e88113df0"; + name = "kio-5.62.1.tar.xz"; }; }; kirigami2 = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kirigami2-5.61.0.tar.xz"; - sha256 = "afdbe922f0627330319f22834d6631af13edb0081c687422d36acb8697a88c30"; - name = "kirigami2-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kirigami2-5.62.0.tar.xz"; + sha256 = "b3cc36bddb5e52617075961b2cbaecbb94492523bcc6801a3ad29a35c43bd912"; + name = "kirigami2-5.62.0.tar.xz"; }; }; kitemmodels = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kitemmodels-5.61.0.tar.xz"; - sha256 = "47db271ba24904933629ed00f7a4f916a19969967dcfbfd59ae5e98f08f89d68"; - name = "kitemmodels-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kitemmodels-5.62.0.tar.xz"; + sha256 = "4ed6c4081cf6493d6f40ab45deb61325346ab8577eadec7ba8af6a36d7a6485e"; + name = "kitemmodels-5.62.0.tar.xz"; }; }; kitemviews = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kitemviews-5.61.0.tar.xz"; - sha256 = "0447b361444a853409f65e2fb5650cc95eb799ca54a5d7e15cd6d8ca527002da"; - name = "kitemviews-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kitemviews-5.62.0.tar.xz"; + sha256 = "34881a269bdae7e3643ab73290931859437fde72042a066170e7467422408065"; + name = "kitemviews-5.62.0.tar.xz"; }; }; kjobwidgets = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kjobwidgets-5.61.0.tar.xz"; - sha256 = "5246c2a230e3b4e9d7ba87c5a6b13b5f96fef6af0d1262f27f91fa0c619cf378"; - name = "kjobwidgets-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kjobwidgets-5.62.0.tar.xz"; + sha256 = "e3607167361fdd6874a165881de523505bd00d8fabb755abf62114c017a39c93"; + name = "kjobwidgets-5.62.0.tar.xz"; }; }; kjs = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/portingAids/kjs-5.61.0.tar.xz"; - sha256 = "968e1592c98ee260d80644bf4631bf09479512e48fa878887ee3b9d6d57d3d17"; - name = "kjs-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/portingAids/kjs-5.62.0.tar.xz"; + sha256 = "aaff97d97e3163f890001b7d2e4c0329fdd9d9c53ce4924233246f3ef6cd5962"; + name = "kjs-5.62.0.tar.xz"; }; }; kjsembed = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/portingAids/kjsembed-5.61.0.tar.xz"; - sha256 = "d8e0afad638574c31c89d716d78456ce51ffe6dd03eae6787bc9b4f8b52d5b44"; - name = "kjsembed-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/portingAids/kjsembed-5.62.0.tar.xz"; + sha256 = "3763c5f67fa92803b5003a41c5b696524be3d0528018a3d5643abc25b161c23b"; + name = "kjsembed-5.62.0.tar.xz"; }; }; kmediaplayer = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/portingAids/kmediaplayer-5.61.0.tar.xz"; - sha256 = "ae15a4a39e6530b505d699fb1b1ab3fd5f0e64d87dd758db17702463e44ce181"; - name = "kmediaplayer-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/portingAids/kmediaplayer-5.62.0.tar.xz"; + sha256 = "2d7fa77c085ab0a48e3ce41ec5d6ffa16fbf7194f2d6ace43e37967c0ffb7880"; + name = "kmediaplayer-5.62.0.tar.xz"; }; }; knewstuff = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/knewstuff-5.61.0.tar.xz"; - sha256 = "87f8ec030223f5f0e4e39de8407fc0d28542e48e057c1752adb2466c55fe365b"; - name = "knewstuff-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/knewstuff-5.62.0.tar.xz"; + sha256 = "5ec7806bf1c5d24a0f393fc48950afefc4bbd1b04b2ad1db59f5f05ecd8f0195"; + name = "knewstuff-5.62.0.tar.xz"; }; }; knotifications = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/knotifications-5.61.0.tar.xz"; - sha256 = "f72ce6394465316a5324e38afb07f4f71d5f8e281d09b5cf340246c9905568ac"; - name = "knotifications-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/knotifications-5.62.0.tar.xz"; + sha256 = "55ec35bc9ddccd12289d9501b11d453885eabb9caebd4b93199d7c662a147263"; + name = "knotifications-5.62.0.tar.xz"; }; }; knotifyconfig = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/knotifyconfig-5.61.0.tar.xz"; - sha256 = "bbd2260a98f70779415369ca1d99807bc3e57f618024b9663d2a462a74169bee"; - name = "knotifyconfig-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/knotifyconfig-5.62.0.tar.xz"; + sha256 = "bb51d1a3f69f9faf274ee381d6d267bf4a69edbbdfcfd9efcab76270db4f8e4d"; + name = "knotifyconfig-5.62.0.tar.xz"; }; }; kpackage = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kpackage-5.61.0.tar.xz"; - sha256 = "8ff82d14fe0dd92ac774d5cd9cd6334b01574f0f5c584266f97359dde5db9a5f"; - name = "kpackage-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kpackage-5.62.0.tar.xz"; + sha256 = "588e6f7b0c066993dbd9b6a0fd2535cd2f1c58ea5bd7ebe1dc381049776bbf62"; + name = "kpackage-5.62.0.tar.xz"; }; }; kparts = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kparts-5.61.0.tar.xz"; - sha256 = "f223b38f34f009bb25511ce7d97c607102cbb0a1bd0253ec1b7d1fe1b7c81436"; - name = "kparts-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kparts-5.62.0.tar.xz"; + sha256 = "2249e70de0b57f13d8ee7a2840106b5a4aed05a6b73da9245101e0cbc9c846ef"; + name = "kparts-5.62.0.tar.xz"; }; }; kpeople = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kpeople-5.61.0.tar.xz"; - sha256 = "549edacd7b63d704dd165bc803ae03f8d9e8c1ba31f8dbaea3f7e12c466b4298"; - name = "kpeople-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kpeople-5.62.0.tar.xz"; + sha256 = "e061991f08e6642e61531a630a81927ea0ccd7402f469806a6cfeecf9b5064a2"; + name = "kpeople-5.62.0.tar.xz"; }; }; kplotting = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kplotting-5.61.0.tar.xz"; - sha256 = "95781b50bef0e081e48b472b4fcbbcd3301ec45245498261e4a3ec8e42b892ba"; - name = "kplotting-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kplotting-5.62.0.tar.xz"; + sha256 = "7472943518a4b0e2fe1877ce47b9f667e178822926985a0efc9c20361097b94e"; + name = "kplotting-5.62.0.tar.xz"; }; }; kpty = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kpty-5.61.0.tar.xz"; - sha256 = "b91a88c00d3387927d1f6886a04e6e5bcc615ee1d0e72f647d51320ebf73471c"; - name = "kpty-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kpty-5.62.0.tar.xz"; + sha256 = "6efd3a3103f15ee825b220ac309bcce3bbce56e9b915e61a4277a2cb096bcb96"; + name = "kpty-5.62.0.tar.xz"; }; }; kross = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/portingAids/kross-5.61.0.tar.xz"; - sha256 = "103837799febbd62365a6445db046a2ee4add13d7d250abf925872cac642986e"; - name = "kross-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/portingAids/kross-5.62.0.tar.xz"; + sha256 = "38bf9a57f181d823974a00896d89ae7106488c2ccbd7179e295d297edb338563"; + name = "kross-5.62.0.tar.xz"; }; }; krunner = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/krunner-5.61.0.tar.xz"; - sha256 = "f32ea603a9bcb9c2e39231f99bfc6079d118eebbf2c72e0818e2a9cd060543be"; - name = "krunner-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/krunner-5.62.0.tar.xz"; + sha256 = "21b9564d07395f0e1c5c09557ffc64eb1929dd8925914fdb581f5daa537b01fc"; + name = "krunner-5.62.0.tar.xz"; }; }; kservice = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kservice-5.61.0.tar.xz"; - sha256 = "4489ac4553522bb76604e284338ab37a7a2369eea45dadd96a955fedf8ca99f9"; - name = "kservice-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kservice-5.62.0.tar.xz"; + sha256 = "a2e105ae8202fa0d9f443490c56e25083c0b9ee285aa82fa26bb8a14f9999db8"; + name = "kservice-5.62.0.tar.xz"; }; }; ktexteditor = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/ktexteditor-5.61.0.tar.xz"; - sha256 = "ae99eacb445f8bc27af379d1ec54e8df4d25f601fc12053bc2928a8c639ad0cb"; - name = "ktexteditor-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/ktexteditor-5.62.0.tar.xz"; + sha256 = "e02d54035367071d44a1499a7f6c482491116c5676fa8ceb57b1e9f564975092"; + name = "ktexteditor-5.62.0.tar.xz"; }; }; ktextwidgets = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/ktextwidgets-5.61.0.tar.xz"; - sha256 = "a2fddad3dda750ea6bdb104c460e50586946ded3e1f46a8729dbd304016a0b5a"; - name = "ktextwidgets-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/ktextwidgets-5.62.0.tar.xz"; + sha256 = "ec34931658cbe3a7ad7419a6e588cd9f9981e9b5ab2400e8b6f2b79b29f83774"; + name = "ktextwidgets-5.62.0.tar.xz"; }; }; kunitconversion = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kunitconversion-5.61.0.tar.xz"; - sha256 = "e5ffa3ff954c46b2416823467fcecd37c6ddb8304529703bc9cc3a24b74b6c24"; - name = "kunitconversion-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kunitconversion-5.62.0.tar.xz"; + sha256 = "e96ce3efcb6efe3afc0d5cf093971ea89fe2f20660da16349309cf6748446f41"; + name = "kunitconversion-5.62.0.tar.xz"; }; }; kwallet = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kwallet-5.61.0.tar.xz"; - sha256 = "628ded35a8f44750a770bf10bba9a763994660923a689eee05f8dfb7e92baec8"; - name = "kwallet-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kwallet-5.62.0.tar.xz"; + sha256 = "911d1f3320e7e3d25243e134ba0e42cd5e3ed2ee6c846dbb13777b1a4b338a5b"; + name = "kwallet-5.62.0.tar.xz"; }; }; kwayland = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kwayland-5.61.0.tar.xz"; - sha256 = "42d3bc629710e09074006af288986b00683853660648c9364fb09d49db3f0e07"; - name = "kwayland-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kwayland-5.62.0.tar.xz"; + sha256 = "c9f513008c91e70b09f5acb76dde332491afde0e94948066c2f1e621bc368eb6"; + name = "kwayland-5.62.0.tar.xz"; }; }; kwidgetsaddons = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kwidgetsaddons-5.61.0.tar.xz"; - sha256 = "5abc169f431fba18418f23ff1749414d8318baff868a7b821916cc44508c6891"; - name = "kwidgetsaddons-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kwidgetsaddons-5.62.0.tar.xz"; + sha256 = "3a8e75d544783a1f567016f2669c3cfdbf2809b0a3d25afd03d38af62a493671"; + name = "kwidgetsaddons-5.62.0.tar.xz"; }; }; kwindowsystem = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kwindowsystem-5.61.0.tar.xz"; - sha256 = "17958b612e751e838aa7a0d4f8c7a8a8d83d3f4ace5498fe1f2b8650a2d8f984"; - name = "kwindowsystem-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kwindowsystem-5.62.0.tar.xz"; + sha256 = "116d75216ea001b2fc8688a72bcc6105b0b0966a2c5a084497f3aef80d158a67"; + name = "kwindowsystem-5.62.0.tar.xz"; }; }; kxmlgui = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kxmlgui-5.61.0.tar.xz"; - sha256 = "867ff1c3ad464bb6268d00ca290569ef1da7659d3fd2f6349015bc3e2562836b"; - name = "kxmlgui-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kxmlgui-5.62.0.tar.xz"; + sha256 = "bc4321b4d44b0af1c2808814b89231a8c9e86de22ca1c0b080a769819ebc5d50"; + name = "kxmlgui-5.62.0.tar.xz"; }; }; kxmlrpcclient = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/kxmlrpcclient-5.61.0.tar.xz"; - sha256 = "382b4730e4b32c1d300f8fdb6269e40995ec282ebe1cbb044ab1a2b2b68c3a1a"; - name = "kxmlrpcclient-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/kxmlrpcclient-5.62.0.tar.xz"; + sha256 = "c284c3e5962d2ed6d0737e5814b85fa4d7926131b7799272cb56c464a12c4530"; + name = "kxmlrpcclient-5.62.0.tar.xz"; }; }; modemmanager-qt = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/modemmanager-qt-5.61.0.tar.xz"; - sha256 = "c9883a3aac7415045a03f0bda435a2a5ff7523538868b72dffa8e4b40e88502a"; - name = "modemmanager-qt-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/modemmanager-qt-5.62.0.tar.xz"; + sha256 = "b2a6517377b53aca895efd657d553dc5b057a673c07ccb10786031240b11adf5"; + name = "modemmanager-qt-5.62.0.tar.xz"; }; }; networkmanager-qt = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/networkmanager-qt-5.61.0.tar.xz"; - sha256 = "1ded63af93957a04292e965ecce06388f183d3adc555b4f3d33337ee15d858c3"; - name = "networkmanager-qt-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/networkmanager-qt-5.62.0.tar.xz"; + sha256 = "08f73ced96866b9dfded574a87c9e887dc907fc510d2764a4aa09315511cedf9"; + name = "networkmanager-qt-5.62.0.tar.xz"; }; }; oxygen-icons5 = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/oxygen-icons5-5.61.0.tar.xz"; - sha256 = "1ca8f6e42186d069cb4f0581914b147cabc3be3e720c382e77048be134bb1b26"; - name = "oxygen-icons5-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/oxygen-icons5-5.62.0.tar.xz"; + sha256 = "c066bc96fd45f3553e3c344c7cef34afda3180c95bf67af6cf20e964fd5c1a00"; + name = "oxygen-icons5-5.62.0.tar.xz"; }; }; plasma-framework = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/plasma-framework-5.61.0.tar.xz"; - sha256 = "873d604aadbe21ba38cdb12b778d3baf121a54e6155596f0ebee1840138060fe"; - name = "plasma-framework-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/plasma-framework-5.62.0.tar.xz"; + sha256 = "324bf14078459954c355bb6f146b927f6cbf915109365cdc58c1d81c8495bdb4"; + name = "plasma-framework-5.62.0.tar.xz"; }; }; prison = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/prison-5.61.0.tar.xz"; - sha256 = "9ebab1755e9d7cb01b2aa6e8b63640eb112d8557073423abdb94faecb42d87ab"; - name = "prison-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/prison-5.62.0.tar.xz"; + sha256 = "d7a024881119e2e91fe2ef98ec982f33e87d3f5584c3e4438638e23cf0106fb0"; + name = "prison-5.62.0.tar.xz"; }; }; purpose = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/purpose-5.61.0.tar.xz"; - sha256 = "810a660d0a4d6de41e1b4d00fcb039d3b099ceae65ec96261ca8dd1fba458d08"; - name = "purpose-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/purpose-5.62.0.tar.xz"; + sha256 = "ed0bdc72b1b95fe988fb2ceba5cc1bd36b5bf00d30c098e9de50fdc36d3b3492"; + name = "purpose-5.62.0.tar.xz"; }; }; qqc2-desktop-style = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/qqc2-desktop-style-5.61.0.tar.xz"; - sha256 = "26042c4f939b94caa559cba3ef171ef7bb1490f57c9907f5e4b30a701659abb4"; - name = "qqc2-desktop-style-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/qqc2-desktop-style-5.62.0.tar.xz"; + sha256 = "97234e956a7fc09bef0665e9a759d6f370419bd3cd2bbbd700849e4cbe549bfa"; + name = "qqc2-desktop-style-5.62.0.tar.xz"; }; }; solid = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/solid-5.61.0.tar.xz"; - sha256 = "c3a032086eacbb836fc102bd77236285ad5a808c0537ff55dbacda539ba3eacf"; - name = "solid-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/solid-5.62.0.tar.xz"; + sha256 = "24a01a7e89b2c1e39cb9ebc477f80f5ab966d35fce00f63682b159a15de64cc3"; + name = "solid-5.62.0.tar.xz"; }; }; sonnet = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/sonnet-5.61.0.tar.xz"; - sha256 = "4c8818897ea5dac25e0120acfd4e15c44adf2ee76749870b8f70178f1a3d8b29"; - name = "sonnet-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/sonnet-5.62.0.tar.xz"; + sha256 = "a1a2d3500d7fc51d94fd6f9d951c83be86436284aeda8416963fc5213956a69a"; + name = "sonnet-5.62.0.tar.xz"; }; }; syndication = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/syndication-5.61.0.tar.xz"; - sha256 = "2803b2960dd23492ad002e0f23563c9f06500ddc144dd0be2e3e0ef2f6c1f576"; - name = "syndication-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/syndication-5.62.0.tar.xz"; + sha256 = "d315a5a5e691925df44ce30abbd5208b764a72eb42d38dc5b5ca134d71c05462"; + name = "syndication-5.62.0.tar.xz"; }; }; syntax-highlighting = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/syntax-highlighting-5.61.0.tar.xz"; - sha256 = "475392c03534d7b5301ff2e02461444e463ad4def985da81ad4b315660416721"; - name = "syntax-highlighting-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/syntax-highlighting-5.62.0.tar.xz"; + sha256 = "897fac9ec2e5112d629da464d47223129e547c314369e1518a12c5c94ff2a6fd"; + name = "syntax-highlighting-5.62.0.tar.xz"; }; }; threadweaver = { - version = "5.61.0"; + version = "5.62.0"; src = fetchurl { - url = "${mirror}/stable/frameworks/5.61/threadweaver-5.61.0.tar.xz"; - sha256 = "e7a0cecfaa60c7a8e4bdd4dfe842fb54a344d331a6c62316c147d8dc2a5e5843"; - name = "threadweaver-5.61.0.tar.xz"; + url = "${mirror}/stable/frameworks/5.62/threadweaver-5.62.0.tar.xz"; + sha256 = "aa1704c20c6d38fde4f9988e13cb97356e1c69c7a9d0401870b1515a2814294a"; + name = "threadweaver-5.62.0.tar.xz"; }; }; } diff --git a/pkgs/development/libraries/libheif/default.nix b/pkgs/development/libraries/libheif/default.nix index 02c4dd334813..f69241ad552e 100644 --- a/pkgs/development/libraries/libheif/default.nix +++ b/pkgs/development/libraries/libheif/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libheif"; - version = "1.5.0"; + version = "1.5.1"; src = fetchFromGitHub { owner = "strukturag"; repo = "libheif"; rev = "v${version}"; - sha256 = "1nvfjmnha06689imm8v24nlc011814gc9xq3x54cnmqvh5gn98ah"; + sha256 = "0x6207hiy15k2696476qx9jcbzs90fq8cfv4jw6hi14w4wzq89kr"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix index 07f99a058d8b..f9b49a46ebf2 100644 --- a/pkgs/development/libraries/libuv/default.nix +++ b/pkgs/development/libraries/libuv/default.nix @@ -1,14 +1,14 @@ { stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, ApplicationServices, CoreServices }: stdenv.mkDerivation rec { - version = "1.30.1"; + version = "1.32.0"; pname = "libuv"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "16l207g9qwckxn0vnbnwiybhw6083imdwyfd6ipfsl44b1m8jmf7"; + sha256 = "1ifazxr5ssw2ay6j66acaxgfwq0x8130fvsyjs1wxvf2r9g4ds9w"; }; postPatch = let diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix index a4f0a44e60bf..7d7dd94eff49 100644 --- a/pkgs/development/libraries/libwacom/default.nix +++ b/pkgs/development/libraries/libwacom/default.nix @@ -1,17 +1,22 @@ -{ stdenv, fetchFromGitHub, autoreconfHook, glib, pkgconfig, udev, libgudev }: +{ stdenv, fetchFromGitHub, meson, ninja, glib, pkgconfig, udev, libgudev }: stdenv.mkDerivation rec { pname = "libwacom"; - version = "0.33"; + version = "1.1"; + + outputs = [ "out" "dev" ]; src = fetchFromGitHub { owner = "linuxwacom"; repo = "libwacom"; rev = "libwacom-${version}"; - sha256 = "0np0a7rpnlm9iqw1i8ycz5mprin6bb99p4h522v9vjk4lhzsp34m"; + sha256 = "037vnyfg7nim6h3f4m04w6a9pr6hi04df14qpys580kf5xnf87nz"; }; - nativeBuildInputs = [ pkgconfig autoreconfHook ]; + nativeBuildInputs = [ pkgconfig meson ninja ]; + + mesonFlags = [ "-Dtests=false" ]; + buildInputs = [ glib udev libgudev ]; meta = with stdenv.lib; { diff --git a/pkgs/development/libraries/opencl-clang/default.nix b/pkgs/development/libraries/opencl-clang/default.nix new file mode 100644 index 000000000000..50794863defb --- /dev/null +++ b/pkgs/development/libraries/opencl-clang/default.nix @@ -0,0 +1,97 @@ +{ stdenv +, fetchFromGitHub +, fetchpatch +, cmake +, git + +, llvmPackages_8 +, spirv-llvm-translator + +, buildWithPatches ? true +}: + +let + llvmPkgs = llvmPackages_8 // { + inherit spirv-llvm-translator; + }; + + inherit (stdenv.lib) getVersion; + + addPatches = component: pkg: + with builtins; with stdenv.lib; + let path = "${passthru.patchesOut}/${component}"; + in pkg.overrideAttrs (super: { + postPatch = (if super ? postPatch then super.postPatch + "\n" else "") + '' + for p in ${path}/* + do + patch -p1 -i "$p" + done + ''; + }); + + passthru = rec { + + clang-unwrapped = addPatches "clang" llvmPkgs.clang-unwrapped; + + clang = llvmPkgs.clang.override { + cc = clang-unwrapped; + }; + + patchesOut = stdenv.mkDerivation rec { + pname = "opencl-clang-patches"; + inherit (lib) version src patches; + installPhase = '' + [ -d patches ] && cp -r patches/ $out || mkdir $out + mkdir -p $out/clang $out/spirv + ''; + }; + + spirv-llvm-translator = addPatches "spirv" llvmPkgs.spirv-llvm-translator; + + }; + + lib = let + inherit (llvmPkgs) llvm; + inherit (if buildWithPatches then passthru else llvmPkgs) clang-unwrapped spirv-llvm-translator; + in + stdenv.mkDerivation rec { + pname = "opencl-clang"; + version = "unstable-2019-08-16"; + + inherit passthru; + + src = fetchFromGitHub { + owner = "intel"; + repo = "opencl-clang"; + rev = "94af090661d7c953c516c97a25ed053c744a0737"; + sha256 = "05cg89m62nqjqm705h7gpdz4jd4hiczg8944dcjsvaybrqv3hcm5"; + }; + + patches = [ + # Build script tries to find Clang OpenCL headers under ${llvm} + # Work around it by specifying that directory manually. + ./opencl-headers-dir.patch + ]; + + nativeBuildInputs = [ cmake git ]; + + buildInputs = [ clang-unwrapped llvm spirv-llvm-translator ]; + + cmakeFlags = [ + "-DPREFERRED_LLVM_VERSION=${getVersion llvm}" + "-DOPENCL_HEADERS_DIR=${clang-unwrapped}/lib/clang/${getVersion clang-unwrapped}/include/" + + "-DLLVMSPIRV_INCLUDED_IN_LLVM=OFF" + "-DSPIRV_TRANSLATOR_DIR=${spirv-llvm-translator}" + ]; + + meta = with stdenv.lib; { + homepage = https://github.com/intel/opencl-clang/; + description = "A clang wrapper library with an OpenCL-oriented API and the ability to compile OpenCL C kernels to SPIR-V modules"; + license = licenses.ncsa; + platforms = platforms.all; + maintainers = with maintainers; [ gloaming ]; + }; + }; +in + lib diff --git a/pkgs/development/libraries/opencl-clang/opencl-headers-dir.patch b/pkgs/development/libraries/opencl-clang/opencl-headers-dir.patch new file mode 100644 index 000000000000..70343b8ee197 --- /dev/null +++ b/pkgs/development/libraries/opencl-clang/opencl-headers-dir.patch @@ -0,0 +1,25 @@ +diff --git a/cl_headers/CMakeLists.txt b/cl_headers/CMakeLists.txt +index 3dd2ea4..aeae6e9 100644 +--- a/cl_headers/CMakeLists.txt ++++ b/cl_headers/CMakeLists.txt +@@ -11,12 +11,14 @@ add_custom_command( + ) + endfunction(copy_file) + +-if(USE_PREBUILT_LLVM) +- set(OPENCL_HEADERS_DIR +- "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/") +-else(USE_PREBUILT_LLVM) +- set(OPENCL_HEADERS_DIR "${CLANG_SOURCE_DIR}/lib/Headers") +-endif(USE_PREBUILT_LLVM) ++if(NOT DEFINED OPENCL_HEADERS_DIR) ++ if(USE_PREBUILT_LLVM) ++ set(OPENCL_HEADERS_DIR ++ "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/") ++ else(USE_PREBUILT_LLVM) ++ set(OPENCL_HEADERS_DIR "${CLANG_SOURCE_DIR}/lib/Headers") ++ endif(USE_PREBUILT_LLVM) ++endif() + copy_file(${OPENCL_HEADERS_DIR}/opencl-c.h opencl-c.h) + + add_custom_target ( diff --git a/pkgs/development/libraries/polkit/default.nix b/pkgs/development/libraries/polkit/default.nix index b5b9f1f7fa4d..0d220988b15f 100644 --- a/pkgs/development/libraries/polkit/default.nix +++ b/pkgs/development/libraries/polkit/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, glib, expat, pam, perl +{ stdenv, fetchurl, pkgconfig, glib, expat, pam, perl, fetchpatch , intltool, spidermonkey_60 , gobject-introspection, libxslt, docbook_xsl, dbus , docbook_xml_dtd_412, gtk-doc, coreutils , useSystemd ? stdenv.isLinux, systemd @@ -22,6 +22,14 @@ stdenv.mkDerivation rec { sha256 = "1c9lbpndh5zis22f154vjrhnqw65z8s85nrgl42v738yf6g0q5w8"; }; + patches = [ + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://gitlab.freedesktop.org/polkit/polkit/merge_requests/11.patch"; + sha256 = "17lv7xj5ksa27iv4zpm4zwd4iy8zbwjj4ximslfq3sasiz9kxhlp"; + }) + ]; + postPatch = stdenv.lib.optionalString stdenv.isDarwin '' sed -i -e "s/-Wl,--as-needed//" configure.ac ''; diff --git a/pkgs/development/libraries/qt-5/5.11/default.nix b/pkgs/development/libraries/qt-5/5.11/default.nix index 296db2eab2db..e22dc4dbae30 100644 --- a/pkgs/development/libraries/qt-5/5.11/default.nix +++ b/pkgs/development/libraries/qt-5/5.11/default.nix @@ -69,6 +69,13 @@ let qtwebengine = [ ./qtwebengine-no-build-skip.patch ./qtwebengine-darwin-no-platform-check.patch + # https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/707 + # https://bugreports.qt.io/browse/QTBUG-77037 + (fetchpatch { + name = "fix-build-with-pulseaudio-13.0.patch"; + url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/qtbug-77037-workaround.patch?h=packages/qt5-webengine&id=fc77d6b3d5ec74e421b58f199efceb2593cbf951"; + sha256 = "1gv733qfdn9746nbqqxzyjx4ijjqkkb7zb71nxax49nna5bri3am"; + }) ]; qtwebkit = [ ./qtwebkit.patch ]; }; @@ -152,9 +159,7 @@ let qmake = makeSetupHook { deps = [ self.qtbase.dev ]; substitutions = { - inherit (stdenv) isDarwin; - qtbase_dev = self.qtbase.dev; - fix_qt_builtin_paths = ../hooks/fix-qt-builtin-paths.sh; + fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh; }; } ../hooks/qmake-hook.sh; diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix index 7b4addd91617..c678cf351b1a 100644 --- a/pkgs/development/libraries/qt-5/5.12/default.nix +++ b/pkgs/development/libraries/qt-5/5.12/default.nix @@ -16,7 +16,7 @@ top-level attribute to `top-level/all-packages.nix`. { newScope, - stdenv, fetchurl, fetchFromGitHub, makeSetupHook, makeWrapper, + stdenv, fetchurl, fetchpatch, fetchFromGitHub, makeSetupHook, makeWrapper, bison, cups ? null, harfbuzz, libGL, perl, gstreamer, gst-plugins-base, gtk3, dconf, llvmPackages_5, @@ -50,15 +50,34 @@ let }; patches = { - qtbase = [ - ./qtbase.patch - ./qtbase-fixguicmake.patch - ]; + qtbase = + optionals stdenv.isDarwin [ + ./qtbase.patch.d/0001-qtbase-mkspecs-mac.patch + ./qtbase.patch.d/0002-qtbase-mac.patch + ] + ++ [ + ./qtbase.patch.d/0003-qtbase-mkspecs.patch + ./qtbase.patch.d/0004-qtbase-replace-libdir.patch + ./qtbase.patch.d/0005-qtbase-cmake.patch + ./qtbase.patch.d/0006-qtbase-gtk3.patch + ./qtbase.patch.d/0007-qtbase-xcursor.patch + ./qtbase.patch.d/0008-qtbase-xcompose.patch + ./qtbase.patch.d/0009-qtbase-tzdir.patch + ./qtbase.patch.d/0010-qtbase-qtpluginpath.patch + ./qtbase.patch.d/0011-qtbase-assert.patch + ]; qtdeclarative = [ ./qtdeclarative.patch ]; qtscript = [ ./qtscript.patch ]; qtserialport = [ ./qtserialport.patch ]; qtwebengine = [ ./qtwebengine-no-build-skip.patch + # https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/707 + # https://bugreports.qt.io/browse/QTBUG-77037 + (fetchpatch { + name = "fix-build-with-pulseaudio-13.0.patch"; + url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/qtbug-77037-workaround.patch?h=packages/qt5-webengine&id=fc77d6b3d5ec74e421b58f199efceb2593cbf951"; + sha256 = "1gv733qfdn9746nbqqxzyjx4ijjqkkb7zb71nxax49nna5bri3am"; + }) ] ++ optional stdenv.isDarwin ./qtwebengine-darwin-no-platform-check.patch; qtwebkit = [ ./qtwebkit.patch ] @@ -148,9 +167,7 @@ let qmake = makeSetupHook { deps = [ self.qtbase.dev ]; substitutions = { - inherit (stdenv) isDarwin; - qtbase_dev = self.qtbase.dev; - fix_qt_builtin_paths = ../hooks/fix-qt-builtin-paths.sh; + fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh; }; } ../hooks/qmake-hook.sh; diff --git a/pkgs/development/libraries/qt-5/5.12/fetch.sh b/pkgs/development/libraries/qt-5/5.12/fetch.sh index a4d2fc82ff2d..86cd509a9f26 100644 --- a/pkgs/development/libraries/qt-5/5.12/fetch.sh +++ b/pkgs/development/libraries/qt-5/5.12/fetch.sh @@ -1 +1 @@ -WGET_ARGS=( http://download.qt.io/official_releases/qt/5.12/5.12.3/submodules/ ) +WGET_ARGS=( http://download.qt.io/official_releases/qt/5.12/5.12.4/submodules/ ) diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase-fixguicmake.patch b/pkgs/development/libraries/qt-5/5.12/qtbase-fixguicmake.patch deleted file mode 100644 index 8b46d432812a..000000000000 --- a/pkgs/development/libraries/qt-5/5.12/qtbase-fixguicmake.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in -index 0bbc871..3673634 100644 ---- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in -+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in -@@ -286,7 +286,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) - macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) - set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) - -- set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") -+ set(imported_location \"${PLUGIN_LOCATION}\") - _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) - set_target_properties(Qt5::${Plugin} PROPERTIES - \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} -diff --git a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in -index 5baf0fd..3583745 100644 ---- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in -+++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in -@@ -2,10 +2,10 @@ - add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED) - - !!IF !isEmpty(CMAKE_RELEASE_TYPE) --_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\") -+_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_RELEASE}\") - !!ENDIF - !!IF !isEmpty(CMAKE_DEBUG_TYPE) --_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\") -+_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_DEBUG}\") - !!ENDIF - - list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME) diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch deleted file mode 100644 index 87ed0ddc4d4c..000000000000 --- a/pkgs/development/libraries/qt-5/5.12/qtbase.patch +++ /dev/null @@ -1,1146 +0,0 @@ -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/common/mac.conf qtbase-everywhere-src-5.12.3-b/mkspecs/common/mac.conf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/common/mac.conf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/common/mac.conf 2019-07-10 09:35:08.917628566 -0500 -@@ -24,7 +24,7 @@ - - QMAKE_FIX_RPATH = install_name_tool -id - --QMAKE_LFLAGS_RPATH = -Wl,-rpath, -+QMAKE_LFLAGS_RPATH = - QMAKE_LFLAGS_GCSECTIONS = -Wl,-dead_strip - - QMAKE_LFLAGS_REL_RPATH = -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/create_cmake.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/create_cmake.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/create_cmake.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/create_cmake.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -21,7 +21,7 @@ - # at cmake time whether package has been found via a symlink, and correct - # that to an absolute path. This is only done for installations to - # the /usr or / prefix. --CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$[QT_INSTALL_LIBS]) -+CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$NIX_OUTPUT_OUT/lib/) - contains(CMAKE_INSTALL_LIBS_DIR, ^(/usr)?/lib(64)?.*): CMAKE_USR_MOVE_WORKAROUND = $$CMAKE_INSTALL_LIBS_DIR - - CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake -@@ -51,45 +51,20 @@ - $$cmake_extra_source_includes.output - } - --CMAKE_INCLUDE_DIR = $$cmakeRelativePath($$[QT_INSTALL_HEADERS], $$[QT_INSTALL_PREFIX]) --contains(CMAKE_INCLUDE_DIR, "^\\.\\./.*") { -- CMAKE_INCLUDE_DIR = $$[QT_INSTALL_HEADERS]/ -- CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True --} -+CMAKE_INCLUDE_DIR = $$NIX_OUTPUT_DEV/include/ -+CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True - --CMAKE_LIB_DIR = $$cmakeRelativePath($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX]) --contains(CMAKE_LIB_DIR,"^\\.\\./.*") { -- CMAKE_LIB_DIR = $$[QT_INSTALL_LIBS]/ -- CMAKE_LIB_DIR_IS_ABSOLUTE = True --} else { -- CMAKE_RELATIVE_INSTALL_LIBS_DIR = $$cmakeRelativePath($$[QT_INSTALL_PREFIX], $$[QT_INSTALL_LIBS]) -- # We need to go up another two levels because the CMake files are -- # installed in $${CMAKE_LIB_DIR}/cmake/Qt5$${CMAKE_MODULE_NAME} -- CMAKE_RELATIVE_INSTALL_DIR = "$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}../../" --} -+CMAKE_BIN_DIR = $$NIX_OUTPUT_BIN/bin/ -+CMAKE_BIN_DIR_IS_ABSOLUTE = True - --CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX]) --contains(CMAKE_BIN_DIR, "^\\.\\./.*") { -- CMAKE_BIN_DIR = $$[QT_HOST_BINS]/ -- CMAKE_BIN_DIR_IS_ABSOLUTE = True --} -+CMAKE_LIB_DIR = $$NIX_OUTPUT_OUT/lib/ -+CMAKE_LIB_DIR_IS_ABSOLUTE = True - --CMAKE_PLUGIN_DIR = $$cmakeRelativePath($$[QT_INSTALL_PLUGINS], $$[QT_INSTALL_PREFIX]) --contains(CMAKE_PLUGIN_DIR, "^\\.\\./.*") { -- CMAKE_PLUGIN_DIR = $$[QT_INSTALL_PLUGINS]/ -- CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True --} -- --win32:!static:!staticlib { -- CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX]) -- contains(CMAKE_DLL_DIR, "^\\.\\./.*") { -- CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/ -- CMAKE_DLL_DIR_IS_ABSOLUTE = True -- } --} else { -- CMAKE_DLL_DIR = $$CMAKE_LIB_DIR -- CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE --} -+CMAKE_PLUGIN_DIR = $$NIX_OUTPUT_PLUGIN/ -+CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True -+ -+CMAKE_DLL_DIR = $$NIX_OUTPUT_OUT/lib/ -+CMAKE_DLL_DIR_IS_ABSOLUTE = True - - static|staticlib:CMAKE_STATIC_TYPE = true - -@@ -169,7 +144,7 @@ - cmake_target_file - - cmake_qt5_plugin_file.files = $$cmake_target_file.output -- cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} -+ cmake_qt5_plugin_file.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} - INSTALLS += cmake_qt5_plugin_file - - return() -@@ -318,7 +293,7 @@ - cmake_qt5_module_files.files += $$cmake_macros_file.output - } - --cmake_qt5_module_files.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} -+cmake_qt5_module_files.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} - - # We are generating cmake files. Most developers of Qt are not aware of cmake, - # so we require automatic tests to be available. The only module which should -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in qtbase-everywhere-src-5.12.3-b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in 2019-07-10 09:35:08.917628566 -0500 -@@ -3,30 +3,6 @@ - message(FATAL_ERROR \"Qt 5 $${CMAKE_MODULE_NAME} module requires at least CMake version 3.1.0\") - endif() - --!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND) --!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) --set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") --!!ELSE --get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH) --# Use original install prefix when loaded through a --# cross-prefix symbolic link such as /lib -> /usr/lib. --get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH) --get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH) --if(_realCurr STREQUAL _realOrig) -- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE) --else() -- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) --endif() --unset(_realOrig) --unset(_realCurr) --unset(_IMPORT_PREFIX) --!!ENDIF --!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) --get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) --!!ELSE --set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") --!!ENDIF -- - !!IF !equals(TEMPLATE, aux) - # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead. - set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.VERSION)") -@@ -52,11 +28,7 @@ - macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION) - set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) - --!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") --!!ELSE - set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") --!!ENDIF - _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) - set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES - \"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" -@@ -69,11 +41,7 @@ - ) - - !!IF !isEmpty(CMAKE_WINDOWS_BUILD) --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") --!!ELSE - set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") --!!ENDIF - _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib}) - if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\") - set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES -@@ -89,24 +57,13 @@ - !!IF !no_module_headers - !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) - set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\" -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\" -+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\" -+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\" - ) - !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) - set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" -- ) --!!ELSE -- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") --!!ENDIF --!!ELSE --!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) -- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\") --!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) -- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\" -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\" -+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" -+ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" - ) - !!ELSE - set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") -@@ -122,7 +79,6 @@ - set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") - !!ENDIF - !!ENDIF --!!ENDIF - !!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS) - include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL) - !!ENDIF -@@ -272,25 +228,13 @@ - !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) - !!IF isEmpty(CMAKE_DEBUG_TYPE) - !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) --!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE - if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) --!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE - _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" ) - !!ELSE // CMAKE_STATIC_WINDOWS_BUILD - if (EXISTS --!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" --!!ELSE - \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" --!!ENDIF - AND EXISTS --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) --!!ELSE - \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) --!!ENDIF - _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) - !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD - endif() -@@ -309,25 +253,13 @@ - !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) - !!IF isEmpty(CMAKE_RELEASE_TYPE) - !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE - if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE - _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" ) - !!ELSE // CMAKE_STATIC_WINDOWS_BUILD - if (EXISTS --!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" --!!ELSE - \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" --!!ENDIF - AND EXISTS --!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ELSE - \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ENDIF - _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) - !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD - endif() -@@ -346,11 +278,7 @@ - macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) - set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) - --!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") --!!ELSE - set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") --!!ENDIF - _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) - set_target_properties(Qt5::${Plugin} PROPERTIES - \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/default_post.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/default_post.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/default_post.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/default_post.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -64,202 +64,6 @@ - } - } - --# Add the same default rpaths as Xcode does for new projects. --# This is especially important for iOS/tvOS/watchOS where no other option is possible. --!no_default_rpath { -- QMAKE_RPATHDIR += @executable_path/../Frameworks -- equals(TEMPLATE, lib):!plugin:lib_bundle: QMAKE_RPATHDIR += @loader_path/Frameworks --} -- --# Don't pass -headerpad_max_install_names when using Bitcode. --# In that case the linker emits a warning stating that the flag is ignored when --# used with bitcode, for reasons that cannot be determined (rdar://problem/20748962). --# Using this flag is also unnecessary in practice on UIKit platforms since they --# are sandboxed, and only UIKit platforms support bitcode to begin with. --!bitcode: QMAKE_LFLAGS += $$QMAKE_LFLAGS_HEADERPAD -- --app_extension_api_only { -- QMAKE_CFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION -- QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION -- QMAKE_CXXFLAGS_PRECOMPILE += $$QMAKE_CFLAGS_APPLICATION_EXTENSION -- QMAKE_LFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION --} -- --macx-xcode { -- qmake_pkginfo_typeinfo.name = QMAKE_PKGINFO_TYPEINFO -- !isEmpty(QMAKE_PKGINFO_TYPEINFO): \ -- qmake_pkginfo_typeinfo.value = $$QMAKE_PKGINFO_TYPEINFO -- else: \ -- qmake_pkginfo_typeinfo.value = "????" -- QMAKE_MAC_XCODE_SETTINGS += qmake_pkginfo_typeinfo -- -- !isEmpty(VERSION) { -- l = $$split(VERSION, '.') 0 0 # make sure there are at least three -- VER_MAJ = $$member(l, 0, 0) -- VER_MIN = $$member(l, 1, 1) -- VER_PAT = $$member(l, 2, 2) -- unset(l) -- -- qmake_full_version.name = QMAKE_FULL_VERSION -- qmake_full_version.value = $${VER_MAJ}.$${VER_MIN}.$${VER_PAT} -- QMAKE_MAC_XCODE_SETTINGS += qmake_full_version -- -- qmake_short_version.name = QMAKE_SHORT_VERSION -- qmake_short_version.value = $${VER_MAJ}.$${VER_MIN} -- QMAKE_MAC_XCODE_SETTINGS += qmake_short_version -- } -- -- !isEmpty(QMAKE_XCODE_DEBUG_INFORMATION_FORMAT) { -- debug_information_format.name = DEBUG_INFORMATION_FORMAT -- debug_information_format.value = $$QMAKE_XCODE_DEBUG_INFORMATION_FORMAT -- debug_information_format.build = debug -- QMAKE_MAC_XCODE_SETTINGS += debug_information_format -- } -- -- QMAKE_XCODE_ARCHS = -- -- arch_device.name = "ARCHS[sdk=$${device.sdk}*]" -- arch_device.value = $$QMAKE_APPLE_DEVICE_ARCHS -- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_DEVICE_ARCHS -- QMAKE_MAC_XCODE_SETTINGS += arch_device -- -- simulator { -- arch_simulator.name = "ARCHS[sdk=$${simulator.sdk}*]" -- arch_simulator.value = $$QMAKE_APPLE_SIMULATOR_ARCHS -- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_SIMULATOR_ARCHS -- QMAKE_MAC_XCODE_SETTINGS += arch_simulator -- } -- -- only_active_arch.name = ONLY_ACTIVE_ARCH -- only_active_arch.value = YES -- only_active_arch.build = debug -- QMAKE_MAC_XCODE_SETTINGS += only_active_arch --} else { -- device|!simulator: VALID_DEVICE_ARCHS = $$QMAKE_APPLE_DEVICE_ARCHS -- simulator: VALID_SIMULATOR_ARCHS = $$QMAKE_APPLE_SIMULATOR_ARCHS -- VALID_ARCHS = $$VALID_DEVICE_ARCHS $$VALID_SIMULATOR_ARCHS -- -- isEmpty(VALID_ARCHS): \ -- error("QMAKE_APPLE_DEVICE_ARCHS or QMAKE_APPLE_SIMULATOR_ARCHS must contain at least one architecture") -- -- single_arch: VALID_ARCHS = $$first(VALID_ARCHS) -- -- ACTIVE_ARCHS = $(filter $(EXPORT_VALID_ARCHS), $(ARCHS)) -- ARCH_ARGS = $(foreach arch, $(if $(EXPORT_ACTIVE_ARCHS), $(EXPORT_ACTIVE_ARCHS), $(EXPORT_VALID_ARCHS)), -arch $(arch)) -- -- QMAKE_EXTRA_VARIABLES += VALID_ARCHS ACTIVE_ARCHS ARCH_ARGS -- -- arch_flags = $(EXPORT_ARCH_ARGS) -- -- QMAKE_CFLAGS += $$arch_flags -- QMAKE_CXXFLAGS += $$arch_flags -- QMAKE_LFLAGS += $$arch_flags -- -- QMAKE_PCH_ARCHS = $$VALID_ARCHS -- -- macos: deployment_target = $$QMAKE_MACOSX_DEPLOYMENT_TARGET -- ios: deployment_target = $$QMAKE_IOS_DEPLOYMENT_TARGET -- tvos: deployment_target = $$QMAKE_TVOS_DEPLOYMENT_TARGET -- watchos: deployment_target = $$QMAKE_WATCHOS_DEPLOYMENT_TARGET -- -- # If we're doing a simulator and device build, device and simulator -- # architectures use different paths and flags for the sysroot and -- # deployment target switch, so we must multiplex them across multiple -- # architectures using -Xarch. Otherwise we fall back to the simple path. -- # This is not strictly necessary, but results in cleaner command lines -- # and makes it easier for people to override EXPORT_VALID_ARCHS to limit -- # individual rules to a different set of architecture(s) from the overall -- # build (such as machtest in QtCore). -- simulator:device { -- QMAKE_XARCH_CFLAGS = -- QMAKE_XARCH_LFLAGS = -- QMAKE_EXTRA_VARIABLES += QMAKE_XARCH_CFLAGS QMAKE_XARCH_LFLAGS -- -- for (arch, VALID_ARCHS) { -- contains(VALID_SIMULATOR_ARCHS, $$arch) { -- sdk = $$simulator.sdk -- version_identifier = $$simulator.deployment_identifier -- } else { -- sdk = $$device.sdk -- version_identifier = $$device.deployment_identifier -- } -- -- version_min_flags = \ -- -Xarch_$${arch} \ -- -m$${version_identifier}-version-min=$$deployment_target -- QMAKE_XARCH_CFLAGS_$${arch} = $$version_min_flags \ -- -Xarch_$${arch} \ -- -isysroot$$xcodeSDKInfo(Path, $$sdk) -- QMAKE_XARCH_LFLAGS_$${arch} = $$version_min_flags \ -- -Xarch_$${arch} \ -- -Wl,-syslibroot,$$xcodeSDKInfo(Path, $$sdk) -- -- QMAKE_XARCH_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS_$${arch}) -- QMAKE_XARCH_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS_$${arch}) -- -- QMAKE_EXTRA_VARIABLES += \ -- QMAKE_XARCH_CFLAGS_$${arch} \ -- QMAKE_XARCH_LFLAGS_$${arch} -- } -- -- QMAKE_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS) -- QMAKE_CXXFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS) -- QMAKE_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS) -- } else { -- simulator: \ -- version_identifier = $$simulator.deployment_identifier -- else: \ -- version_identifier = $$device.deployment_identifier -- version_min_flag = -m$${version_identifier}-version-min=$$deployment_target -- QMAKE_CFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag -- QMAKE_CXXFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag -- QMAKE_LFLAGS += -Wl,-syslibroot,$$QMAKE_MAC_SDK_PATH $$version_min_flag -- } -- -- # Enable precompiled headers for multiple architectures -- QMAKE_CFLAGS_USE_PRECOMPILE = -- for (arch, VALID_ARCHS) { -- icc_pch_style: \ -- use_flag = "-pch-use " -- else: \ -- use_flag = -include -- -- # Only use Xarch with multi-arch, as the option confuses ccache -- count(VALID_ARCHS, 1, greaterThan): \ -- QMAKE_CFLAGS_USE_PRECOMPILE += \ -- -Xarch_$${arch} -- -- QMAKE_CFLAGS_USE_PRECOMPILE += \ -- $${use_flag}${QMAKE_PCH_OUTPUT_$${arch}} -- } -- icc_pch_style { -- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -include ${QMAKE_PCH_INPUT} -- QMAKE_CFLAGS_USE_PRECOMPILE = -- } else { -- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -- QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -- QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -- } -- -- QMAKE_PCH_OUTPUT_EXT = _${QMAKE_PCH_ARCH}$${QMAKE_PCH_OUTPUT_EXT} --} -- --cache(QMAKE_XCODE_DEVELOPER_PATH, stash) --!isEmpty(QMAKE_XCODE_VERSION): \ -- cache(QMAKE_XCODE_VERSION, stash) -- --QMAKE_XCODE_LIBRARY_SUFFIX = $$qtPlatformTargetSuffix() -- --xcode_product_bundle_identifier_setting.name = PRODUCT_BUNDLE_IDENTIFIER --xcode_product_bundle_identifier_setting.value = $$QMAKE_TARGET_BUNDLE_PREFIX --isEmpty(xcode_product_bundle_identifier_setting.value): \ -- xcode_product_bundle_identifier_setting.value = "com.yourcompany" --xcode_product_bundle_target = $$QMAKE_BUNDLE --isEmpty(xcode_product_bundle_target): \ -- xcode_product_bundle_target = ${PRODUCT_NAME:rfc1034identifier} --xcode_product_bundle_identifier_setting.value = "$${xcode_product_bundle_identifier_setting.value}.$${xcode_product_bundle_target}" --QMAKE_MAC_XCODE_SETTINGS += xcode_product_bundle_identifier_setting -- - !macx-xcode { - generate_xcode_project.commands = @$(QMAKE) -spec macx-xcode $(EXPORT__PRO_FILE_) - generate_xcode_project.target = xcodeproj -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/default_pre.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/default_pre.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/default_pre.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/default_pre.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -1,60 +1,2 @@ - CONFIG = asset_catalogs rez $$CONFIG - load(default_pre) -- --isEmpty(QMAKE_XCODE_DEVELOPER_PATH) { -- # Get path of Xcode's Developer directory -- QMAKE_XCODE_DEVELOPER_PATH = $$system("/usr/bin/xcode-select --print-path 2>/dev/null") -- isEmpty(QMAKE_XCODE_DEVELOPER_PATH): \ -- error("Xcode path is not set. Please use xcode-select to choose Xcode installation path.") -- -- # Make sure Xcode path is valid -- !exists($$QMAKE_XCODE_DEVELOPER_PATH): \ -- error("Xcode is not installed in $${QMAKE_XCODE_DEVELOPER_PATH}. Please use xcode-select to choose Xcode installation path.") --} -- --isEmpty(QMAKE_XCODEBUILD_PATH): \ -- QMAKE_XCODEBUILD_PATH = $$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null") -- --!isEmpty(QMAKE_XCODEBUILD_PATH) { -- # Make sure Xcode is set up properly -- !system("/usr/bin/xcrun xcodebuild -license check 2>/dev/null"): \ -- error("Xcode not set up properly. You need to confirm the license agreement by running 'sudo xcrun xcodebuild -license accept'.") -- -- isEmpty(QMAKE_XCODE_VERSION) { -- # Extract Xcode version using xcodebuild -- xcode_version = $$system("/usr/bin/xcrun xcodebuild -version") -- QMAKE_XCODE_VERSION = $$member(xcode_version, 1) -- isEmpty(QMAKE_XCODE_VERSION): error("Could not resolve Xcode version.") -- unset(xcode_version) -- } --} -- --isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) { -- QMAKE_XCODE_PREFERENCES_FILE = $$(HOME)/Library/Preferences/com.apple.dt.Xcode.plist -- exists($$QMAKE_XCODE_PREFERENCES_FILE): \ -- QMAKE_TARGET_BUNDLE_PREFIX = $$system("/usr/libexec/PlistBuddy -c 'print IDETemplateOptions:bundleIdentifierPrefix' $$QMAKE_XCODE_PREFERENCES_FILE 2>/dev/null") -- -- !isEmpty(_QMAKE_CACHE_):!isEmpty(QMAKE_TARGET_BUNDLE_PREFIX): \ -- cache(QMAKE_TARGET_BUNDLE_PREFIX) --} -- --QMAKE_ASSET_CATALOGS_APP_ICON = AppIcon -- --# Make the default debug info format for static debug builds --# DWARF instead of DWARF with dSYM. This cuts down build times --# for application debug builds significantly, as Xcode doesn't --# have to pull out all the DWARF info from the Qt static libs --# and put it into a dSYM file. We don't need that dSYM file in --# the first place, since the information is available in the --# object files inside the archives (static libraries). --macx-xcode:qtConfig(static): \ -- QMAKE_XCODE_DEBUG_INFORMATION_FORMAT = dwarf -- --# This variable is used by the xcode_dynamic_library_suffix --# feature, which allows Xcode to choose the Qt libraries to link to --# at build time, depending on the current Xcode SDK and configuration. --QMAKE_XCODE_LIBRARY_SUFFIX_SETTING = QT_LIBRARY_SUFFIX -- --xcode_copy_phase_strip_setting.name = COPY_PHASE_STRIP --xcode_copy_phase_strip_setting.value = NO --QMAKE_MAC_XCODE_SETTINGS += xcode_copy_phase_strip_setting -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/sdk.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/sdk.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/mac/sdk.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/mac/sdk.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -1,54 +1 @@ - --isEmpty(QMAKE_MAC_SDK): \ -- error("QMAKE_MAC_SDK must be set when using CONFIG += sdk.") -- --contains(QMAKE_MAC_SDK, .*/.*): \ -- error("QMAKE_MAC_SDK can only contain short-form SDK names (eg. macosx, iphoneos)") -- --defineReplace(xcodeSDKInfo) { -- info = $$1 -- equals(info, "Path"): \ -- infoarg = --show-sdk-path -- equals(info, "PlatformPath"): \ -- infoarg = --show-sdk-platform-path -- equals(info, "SDKVersion"): \ -- infoarg = --show-sdk-version -- sdk = $$2 -- isEmpty(sdk): \ -- sdk = $$QMAKE_MAC_SDK -- -- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}) { -- QMAKE_MAC_SDK.$${sdk}.$${info} = $$system("/usr/bin/xcrun --sdk $$sdk $$infoarg 2>/dev/null") -- # --show-sdk-platform-path won't work for Command Line Tools; this is fine -- # only used by the XCTest backend to testlib -- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}):if(!isEmpty(QMAKE_XCODEBUILD_PATH)|!equals(infoarg, "--show-sdk-platform-path")): \ -- error("Could not resolve SDK $$info for \'$$sdk\' using $$infoarg") -- cache(QMAKE_MAC_SDK.$${sdk}.$${info}, set stash, QMAKE_MAC_SDK.$${sdk}.$${info}) -- } -- -- return($$eval(QMAKE_MAC_SDK.$${sdk}.$${info})) --} -- --QMAKE_MAC_SDK_PATH = $$xcodeSDKInfo(Path) --QMAKE_MAC_SDK_PLATFORM_PATH = $$xcodeSDKInfo(PlatformPath) --QMAKE_MAC_SDK_VERSION = $$xcodeSDKInfo(SDKVersion) -- --QMAKESPEC_NAME = $$basename(QMAKESPEC) -- --# Resolve SDK version of various tools --for(tool, $$list(QMAKE_CC QMAKE_CXX QMAKE_FIX_RPATH QMAKE_AR QMAKE_RANLIB QMAKE_LINK QMAKE_LINK_SHLIB QMAKE_ACTOOL QMAKE_LINK_C QMAKE_LINK_C_SHLIB)) { -- tool_variable = QMAKE_MAC_SDK.$${QMAKESPEC_NAME}.$${QMAKE_MAC_SDK}.$${tool} -- !isEmpty($$tool_variable) { -- $$tool = $$eval($$tool_variable) -- next() -- } -- -- value = $$eval($$tool) -- isEmpty(value): next() -- -- sysrooted = $$system("/usr/bin/xcrun -sdk $$QMAKE_MAC_SDK -find $$first(value) 2>/dev/null") -- isEmpty(sysrooted): next() -- -- $$tool = $$sysrooted $$member(value, 1, -1) -- cache($$tool_variable, set stash, $$tool) --} -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qml_module.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qml_module.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qml_module.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qml_module.prf 2019-07-10 09:35:08.917628566 -0500 -@@ -54,7 +54,7 @@ - - qmldir.files = $$qmldir_file - install_qml_files: qmldir.files += $$fq_qml_files --qmldir.path = $$[QT_INSTALL_QML]/$$TARGETPATH -+qmldir.path = $$NIX_OUTPUT_QML/$$TARGETPATH - INSTALLS += qmldir - - qmlfiles.base = $$_PRO_FILE_PWD_ -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qml_plugin.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qml_plugin.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qml_plugin.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qml_plugin.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -50,7 +50,7 @@ - - DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH - --target.path = $$[QT_INSTALL_QML]/$$TARGETPATH -+target.path = $$NIX_OUTPUT_QML/$$TARGETPATH - INSTALLS += target - - # Some final setup -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_app.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_app.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_app.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_app.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -30,7 +30,7 @@ - target.path = $$[QT_HOST_BINS] - } else { - !build_pass:qtConfig(debug_and_release): CONFIG += release -- target.path = $$[QT_INSTALL_BINS] -+ target.path = $$NIX_OUTPUT_BIN/bin - CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable - } - INSTALLS += target -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_build_paths.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_build_paths.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_build_paths.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_build_paths.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -24,6 +24,6 @@ - !force_independent { - # If the module is not built independently, everything ends up in qtbase. - # This is the case in non-prefix builds, except for selected modules. -- MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX] -- MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX] -+ MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT -+ MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT - } -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_common.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_common.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_common.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_common.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -34,8 +34,8 @@ - qqt_libdir = \$\$\$\$[QT_HOST_LIBS] - qt_libdir = $$[QT_HOST_LIBS] - } else { -- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS] -- qt_libdir = $$[QT_INSTALL_LIBS] -+ qqt_libdir = \$\$\$\$NIX_OUTPUT_OUT/lib -+ qt_libdir = $$NIX_OUTPUT_OUT/lib - } - contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) { - lib_replace.match = "[^ ']*$$rplbase/lib" -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_docs.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_docs.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_docs.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_docs.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -45,7 +45,7 @@ - - QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR) - !build_online_docs: \ -- QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS]) -+ QDOC += -installdir $$shell_quote($$NIX_OUTPUT_DOC) - PREP_DOC_INDEXES = - DOC_INDEXES = - !isEmpty(QTREPOS) { -@@ -64,8 +64,8 @@ - DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc) - } else { - prepare_docs: \ -- PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) -- DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) -+ PREP_DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) -+ DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) - } - - qtattributionsscanner.target = qtattributionsscanner -@@ -88,12 +88,12 @@ - qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch) - - inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR -- inst_html_docs.path = $$[QT_INSTALL_DOCS] -+ inst_html_docs.path = $$NIX_OUTPUT_DOC - inst_html_docs.CONFIG += no_check_exist directory no_default_install no_build - INSTALLS += inst_html_docs - - inst_qch_docs.files = $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch -- inst_qch_docs.path = $$[QT_INSTALL_DOCS] -+ inst_qch_docs.path = $$NIX_OUTPUT_DOC - inst_qch_docs.CONFIG += no_check_exist no_default_install no_build - INSTALLS += inst_qch_docs - -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_example_installs.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_example_installs.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_example_installs.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_example_installs.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -88,7 +88,7 @@ - $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \ - $$DBUS_ADAPTORS $$DBUS_INTERFACES - addInstallFiles(sources.files, $$sourcefiles) --sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase -+sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase - INSTALLS += sources - - check_examples { -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_functions.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_functions.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_functions.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_functions.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -69,7 +69,7 @@ - defineTest(qtPrepareTool) { - cmd = $$eval(QT_TOOL.$${2}.binary) - isEmpty(cmd) { -- cmd = $$[QT_HOST_BINS]/$$2 -+ cmd = $$system("command -v $$2") - exists($${cmd}.pl) { - $${1}_EXE = $${cmd}.pl - cmd = perl -w $$system_path($${cmd}.pl) -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_installs.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_installs.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_installs.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_installs.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -12,16 +12,10 @@ - #library - !qt_no_install_library { - win32 { -- host_build: \ -- dlltarget.path = $$[QT_HOST_BINS] -- else: \ -- dlltarget.path = $$[QT_INSTALL_BINS] -+ dlltarget.path = $$NIX_OUTPUT_BIN/bin - INSTALLS += dlltarget - } -- host_build: \ -- target.path = $$[QT_HOST_LIBS] -- else: \ -- target.path = $$[QT_INSTALL_LIBS] -+ target.path = $$NIX_OUTPUT_OUT/lib - !static: target.CONFIG = no_dll - INSTALLS += target - } -@@ -29,35 +23,35 @@ - #headers - qt_install_headers { - gen_headers.files = $$SYNCQT.GENERATED_HEADER_FILES -- gen_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME -+ gen_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME - INSTALLS += gen_headers - - targ_headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.INJECTED_HEADER_FILES -- targ_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME -+ targ_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME - INSTALLS += targ_headers - - private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES $$SYNCQT.INJECTED_PRIVATE_HEADER_FILES -- private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private -+ private_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private - generated_privates: \ - private_headers.CONFIG += no_check_exist - INSTALLS += private_headers - - qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES -- qpa_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa -+ qpa_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa - INSTALLS += qpa_headers - } - - #module - qt_install_module { - !isEmpty(MODULE_PRI) { -- pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules -+ pritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules - pritarget.files = $$MODULE_PRI - INSTALLS += pritarget - } else: isEmpty(MODULE_PRIVATE_PRI) { - warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects.") - } - !isEmpty(MODULE_PRIVATE_PRI) { -- privpritarget.path = $$[QT_HOST_DATA]/mkspecs/modules -+ privpritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules - privpritarget.files = $$MODULE_PRIVATE_PRI - INSTALLS += privpritarget - } -diff -aur qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_plugin.prf qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_plugin.prf ---- qtbase-everywhere-src-5.12.3-a/mkspecs/features/qt_plugin.prf 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/mkspecs/features/qt_plugin.prf 2019-07-10 09:35:08.918628595 -0500 -@@ -88,7 +88,7 @@ - } - } - --target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE -+target.path = $$NIX_OUTPUT_PLUGIN/$$PLUGIN_TYPE - INSTALLS += target - - TARGET = $$qt5LibraryTarget($$TARGET) -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/kernel/qcoreapplication.cpp qtbase-everywhere-src-5.12.3-b/src/corelib/kernel/qcoreapplication.cpp ---- qtbase-everywhere-src-5.12.3-a/src/corelib/kernel/qcoreapplication.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/kernel/qcoreapplication.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -2668,6 +2668,15 @@ - QStringList *app_libpaths = new QStringList; - coreappdata()->app_libpaths.reset(app_libpaths); - -+ // Add library paths derived from PATH -+ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':'); -+ const QString plugindir = QStringLiteral("../" NIXPKGS_QT_PLUGIN_PREFIX); -+ for (const QString &path: paths) { -+ if (!path.isEmpty()) { -+ app_libpaths->append(QDir::cleanPath(path + QDir::separator() + plugindir)); -+ } -+ } -+ - QString libPathEnv = qEnvironmentVariable("QT_PLUGIN_PATH"); - if (!libPathEnv.isEmpty()) { - QStringList paths = libPathEnv.split(QDir::listSeparator(), QString::SkipEmptyParts); -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/kernel/qcore_mac_p.h qtbase-everywhere-src-5.12.3-b/src/corelib/kernel/qcore_mac_p.h ---- qtbase-everywhere-src-5.12.3-a/src/corelib/kernel/qcore_mac_p.h 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/kernel/qcore_mac_p.h 2019-07-10 09:35:08.920628655 -0500 -@@ -212,7 +212,7 @@ - - // -------------------------------------------------------------------------- - --#if !defined(QT_BOOTSTRAPPED) -+#if 0 - - QT_END_NAMESPACE - #include -@@ -290,7 +290,19 @@ - - #define QT_APPLE_SCOPED_LOG_ACTIVITY(...) QAppleLogActivity scopedLogActivity = QT_APPLE_LOG_ACTIVITY(__VA_ARGS__).enter(); - --#endif // !defined(QT_BOOTSTRAPPED) -+#else // !defined(QT_BOOTSTRAPPED) -+ -+#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT3(...) -+#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT2(...) -+#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT(...) -+ -+#define QT_APPLE_LOG_ACTIVITY2(...) -+#define QT_APPLE_LOG_ACTIVITY1(...) -+#define QT_APPLE_LOG_ACTIVITY(...) -+ -+#define QT_APPLE_SCOPED_LOG_ACTIVITY(...) -+ -+#endif - - // ------------------------------------------------------------------------- - -Only in qtbase-everywhere-src-5.12.3-b/src/corelib/kernel: qcore_mac_p.h.orig -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtras.cmake.in qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtras.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtras.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtras.cmake.in 2019-07-10 09:35:08.918628595 -0500 -@@ -3,7 +3,7 @@ - add_executable(Qt5::qmake IMPORTED) - - !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") - !!ELSE - set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") - !!ENDIF -@@ -18,7 +18,7 @@ - add_executable(Qt5::moc IMPORTED) - - !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") - !!ELSE - set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") - !!ENDIF -@@ -35,7 +35,7 @@ - add_executable(Qt5::rcc IMPORTED) - - !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") - !!ELSE - set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") - !!ENDIF -@@ -116,7 +116,7 @@ - !!IF !isEmpty(CMAKE_RELEASE_TYPE) - set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) - !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") - !!ELSE - set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") - !!ENDIF -@@ -130,7 +130,7 @@ - set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) - - !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") - !!ELSE - set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") - !!ENDIF -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in 2019-07-10 09:35:08.918628595 -0500 -@@ -1,6 +1,6 @@ - - !!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE) --set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") -+set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") - !!ELSE - set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\") - !!ENDIF -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in 2019-07-10 09:35:08.918628595 -0500 -@@ -1,6 +1,6 @@ - - !!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE) --set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") -+set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") - !!ELSE - set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\") - !!ENDIF -diff -aur qtbase-everywhere-src-5.12.3-a/src/corelib/tools/qtimezoneprivate_tz.cpp qtbase-everywhere-src-5.12.3-b/src/corelib/tools/qtimezoneprivate_tz.cpp ---- qtbase-everywhere-src-5.12.3-a/src/corelib/tools/qtimezoneprivate_tz.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/corelib/tools/qtimezoneprivate_tz.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -70,7 +70,11 @@ - // Parse zone.tab table, assume lists all installed zones, if not will need to read directories - static QTzTimeZoneHash loadTzTimeZones() - { -- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); -+ // Try TZDIR first, in case we're running on NixOS. -+ QString path = QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/zone.tab"); -+ // Fallback to traditional paths in case we are not on NixOS. -+ if (!QFile::exists(path)) -+ path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); - if (!QFile::exists(path)) - path = QStringLiteral("/usr/lib/zoneinfo/zone.tab"); - -@@ -644,12 +648,16 @@ - if (!tzif.open(QIODevice::ReadOnly)) - return; - } else { -- // Open named tz, try modern path first, if fails try legacy path -- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); -+ // Try TZDIR first, in case we're running on NixOS -+ tzif.setFileName(QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/") + QString::fromLocal8Bit(ianaId)); - if (!tzif.open(QIODevice::ReadOnly)) { -- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); -- if (!tzif.open(QIODevice::ReadOnly)) -- return; -+ // Open named tz, try modern path first, if fails try legacy path -+ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); -+ if (!tzif.open(QIODevice::ReadOnly)) { -+ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); -+ if (!tzif.open(QIODevice::ReadOnly)) -+ return; -+ } - } - } - -diff -aur qtbase-everywhere-src-5.12.3-a/src/dbus/Qt5DBusConfigExtras.cmake.in qtbase-everywhere-src-5.12.3-b/src/dbus/Qt5DBusConfigExtras.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/dbus/Qt5DBusConfigExtras.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/dbus/Qt5DBusConfigExtras.cmake.in 2019-07-10 09:35:08.919628625 -0500 -@@ -2,11 +2,7 @@ - if (NOT TARGET Qt5::qdbuscpp2xml) - add_executable(Qt5::qdbuscpp2xml IMPORTED) - --!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") --!!ELSE -- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") --!!ENDIF -+ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") - _qt5_DBus_check_file_exists(${imported_location}) - - set_target_properties(Qt5::qdbuscpp2xml PROPERTIES -@@ -17,11 +13,7 @@ - if (NOT TARGET Qt5::qdbusxml2cpp) - add_executable(Qt5::qdbusxml2cpp IMPORTED) - --!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") --!!ELSE -- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") --!!ENDIF -+ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") - _qt5_DBus_check_file_exists(${imported_location}) - - set_target_properties(Qt5::qdbusxml2cpp PROPERTIES -diff -aur qtbase-everywhere-src-5.12.3-a/src/gui/Qt5GuiConfigExtras.cmake.in qtbase-everywhere-src-5.12.3-b/src/gui/Qt5GuiConfigExtras.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/gui/Qt5GuiConfigExtras.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/gui/Qt5GuiConfigExtras.cmake.in 2019-07-10 09:35:08.919628625 -0500 -@@ -2,7 +2,7 @@ - !!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE) - - !!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) --set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\") -+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$NIX_OUTPUT_DEV/$$CMAKE_INCLUDE_DIR/QtANGLE\") - !!ELSE - set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\") - !!ENDIF -@@ -17,13 +17,13 @@ - set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) - - !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") -+ set(imported_location \"$$NIX_OUTPUT_OUT/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") - !!ELSE - set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") - !!ENDIF - - !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) -- set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") -+ set(imported_implib \"$$NIX_OUTPUT_OUT/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") - !!ELSE - set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") - !!ENDIF -diff -aur qtbase-everywhere-src-5.12.3-a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp qtbase-everywhere-src-5.12.3-b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp ---- qtbase-everywhere-src-5.12.3-a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -265,12 +265,9 @@ - m_possibleLocations.reserve(7); - if (qEnvironmentVariableIsSet("QTCOMPOSE")) - m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE"))); -- m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale")); -- m_possibleLocations.append(QStringLiteral("/usr/local/share/X11/locale")); -- m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale")); -- m_possibleLocations.append(QStringLiteral("/usr/local/lib/X11/locale")); - m_possibleLocations.append(QStringLiteral(X11_PREFIX "/share/X11/locale")); - m_possibleLocations.append(QStringLiteral(X11_PREFIX "/lib/X11/locale")); -+ m_possibleLocations.append(QLatin1String(NIXPKGS_QTCOMPOSE)); - } - - QString TableGenerator::findComposeFile() -diff -aur qtbase-everywhere-src-5.12.3-a/src/plugins/platforms/xcb/qxcbcursor.cpp qtbase-everywhere-src-5.12.3-b/src/plugins/platforms/xcb/qxcbcursor.cpp ---- qtbase-everywhere-src-5.12.3-a/src/plugins/platforms/xcb/qxcbcursor.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/plugins/platforms/xcb/qxcbcursor.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -317,10 +317,10 @@ - #if QT_CONFIG(xcb_xlib) && QT_CONFIG(library) - static bool function_ptrs_not_initialized = true; - if (function_ptrs_not_initialized) { -- QLibrary xcursorLib(QLatin1String("Xcursor"), 1); -+ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1); - bool xcursorFound = xcursorLib.load(); - if (!xcursorFound) { // try without the version number -- xcursorLib.setFileName(QLatin1String("Xcursor")); -+ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR)); - xcursorFound = xcursorLib.load(); - } - if (xcursorFound) { -Only in qtbase-everywhere-src-5.12.3-b/src/plugins/platforms/xcb: qxcbcursor.cpp.orig -diff -aur qtbase-everywhere-src-5.12.3-a/src/plugins/platformthemes/gtk3/main.cpp qtbase-everywhere-src-5.12.3-b/src/plugins/platformthemes/gtk3/main.cpp ---- qtbase-everywhere-src-5.12.3-a/src/plugins/platformthemes/gtk3/main.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/plugins/platformthemes/gtk3/main.cpp 2019-07-10 09:35:08.919628625 -0500 -@@ -39,6 +39,7 @@ - - #include - #include "qgtk3theme.h" -+#include - - QT_BEGIN_NAMESPACE - -@@ -54,8 +55,22 @@ - QPlatformTheme *QGtk3ThemePlugin::create(const QString &key, const QStringList ¶ms) - { - Q_UNUSED(params); -- if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) -+ if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) { -+ -+#ifdef NIXPKGS_QGTK3_XDG_DATA_DIRS -+ QStringList XDG_DATA_DIRS = QFile::decodeName(qgetenv("XDG_DATA_DIRS")).split(':'); -+ XDG_DATA_DIRS << QLatin1String(NIXPKGS_QGTK3_XDG_DATA_DIRS); -+ qputenv("XDG_DATA_DIRS", QFile::encodeName(XDG_DATA_DIRS.join(':'))); -+#endif -+ -+#ifdef NIXPKGS_QGTK3_GIO_EXTRA_MODULES -+ QStringList GIO_EXTRA_MODULES = QFile::decodeName(qgetenv("GIO_EXTRA_MODULES")).split(':'); -+ GIO_EXTRA_MODULES << QLatin1String(NIXPKGS_QGTK3_GIO_EXTRA_MODULES); -+ qputenv("GIO_EXTRA_MODULES", QFile::encodeName(GIO_EXTRA_MODULES.join(':'))); -+#endif -+ - return new QGtk3Theme; -+ } - - return 0; - } -diff -aur qtbase-everywhere-src-5.12.3-a/src/testlib/qappletestlogger.cpp qtbase-everywhere-src-5.12.3-b/src/testlib/qappletestlogger.cpp ---- qtbase-everywhere-src-5.12.3-a/src/testlib/qappletestlogger.cpp 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/testlib/qappletestlogger.cpp 2019-07-10 09:35:08.920628655 -0500 -@@ -43,7 +43,7 @@ - - QT_BEGIN_NAMESPACE - --#if defined(QT_USE_APPLE_UNIFIED_LOGGING) -+#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 - - using namespace QTestPrivate; - -diff -aur qtbase-everywhere-src-5.12.3-a/src/testlib/qtestassert.h qtbase-everywhere-src-5.12.3-b/src/testlib/qtestassert.h ---- qtbase-everywhere-src-5.12.3-a/src/testlib/qtestassert.h 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/testlib/qtestassert.h 2019-07-10 09:35:08.919628625 -0500 -@@ -44,10 +44,13 @@ - - QT_BEGIN_NAMESPACE - -- -+#if defined(QT_NO_DEBUG) && !defined(QT_FORCE_ASSERTS) -+#define QTEST_ASSERT(cond) do { } while ((false) && (cond)) -+#define QTEST_ASSERT_X(cond, where, what) do { } while ((false) && (cond)) -+#else - #define QTEST_ASSERT(cond) do { if (!(cond)) qt_assert(#cond,__FILE__,__LINE__); } while (false) -- - #define QTEST_ASSERT_X(cond, where, what) do { if (!(cond)) qt_assert_x(where, what,__FILE__,__LINE__); } while (false) -+#endif - - QT_END_NAMESPACE - -diff -aur qtbase-everywhere-src-5.12.3-a/src/widgets/Qt5WidgetsConfigExtras.cmake.in qtbase-everywhere-src-5.12.3-b/src/widgets/Qt5WidgetsConfigExtras.cmake.in ---- qtbase-everywhere-src-5.12.3-a/src/widgets/Qt5WidgetsConfigExtras.cmake.in 2019-04-09 04:51:26.000000000 -0500 -+++ qtbase-everywhere-src-5.12.3-b/src/widgets/Qt5WidgetsConfigExtras.cmake.in 2019-07-10 09:35:08.919628625 -0500 -@@ -3,7 +3,7 @@ - add_executable(Qt5::uic IMPORTED) - - !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") -+ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") - !!ELSE - set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") - !!ENDIF -diff --git a/mkspecs/features/mac/sdk.mk b/mkspecs/features/mac/sdk.mk -index c40f58c987..e69de29bb2 100644 ---- a/mkspecs/features/mac/sdk.mk -+++ b/mkspecs/features/mac/sdk.mk -@@ -1,25 +0,0 @@ -- --ifeq ($(QT_MAC_SDK_NO_VERSION_CHECK),) -- CHECK_SDK_COMMAND = /usr/bin/xcrun --sdk $(EXPORT_QMAKE_MAC_SDK) -show-sdk-version 2>&1 -- CURRENT_MAC_SDK_VERSION := $(shell DEVELOPER_DIR=$(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) $(CHECK_SDK_COMMAND)) -- ifneq ($(CURRENT_MAC_SDK_VERSION),$(EXPORT_QMAKE_MAC_SDK_VERSION)) -- # We don't want to complain about out of date SDK unless the target needs to be remade. -- # This covers use-cases such as running 'make check' after moving the build to a -- # computer without Xcode or with a different Xcode version. -- TARGET_UP_TO_DATE := $(shell QT_MAC_SDK_NO_VERSION_CHECK=1 $(MAKE) --question $(QMAKE_TARGET) && echo 1 || echo 0) -- ifeq ($(TARGET_UP_TO_DATE),0) -- ifneq ($(findstring missing DEVELOPER_DIR path,$(CURRENT_MAC_SDK_VERSION)),) -- $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) is no longer valid.) -- else ifneq ($(findstring SDK "$(EXPORT_QMAKE_MAC_SDK)" cannot be located,$(CURRENT_MAC_SDK_VERSION)),) -- $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) no longer contains the $(EXPORT_QMAKE_MAC_SDK_VERSION) platform SDK.) -- else ifneq ($(CURRENT_MAC_SDK_VERSION),) -- $(info The platform SDK has been changed from version $(EXPORT_QMAKE_MAC_SDK_VERSION) to version $(CURRENT_MAC_SDK_VERSION).) -- else -- $(info Unknown error resolving current platform SDK version.) -- endif -- $(info This requires a fresh build. Please wipe the build directory completely,) -- $(info including any .qmake.stash and .qmake.cache files generated by qmake.) -- $(error ^) -- endif -- endif --endif diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch new file mode 100644 index 000000000000..de3d68357c79 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0001-qtbase-mkspecs-mac.patch @@ -0,0 +1,397 @@ +From 58d98b66da5d748d610f053053bd12e42c97d9e6 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:34:00 -0500 +Subject: [PATCH 01/11] qtbase-mkspecs-mac + +--- + mkspecs/common/mac.conf | 2 +- + mkspecs/features/mac/default_post.prf | 196 -------------------------- + mkspecs/features/mac/default_pre.prf | 58 -------- + mkspecs/features/mac/sdk.mk | 25 ---- + mkspecs/features/mac/sdk.prf | 61 -------- + 5 files changed, 1 insertion(+), 341 deletions(-) + +diff --git a/mkspecs/common/mac.conf b/mkspecs/common/mac.conf +index b77494ec..470c38e7 100644 +--- a/mkspecs/common/mac.conf ++++ b/mkspecs/common/mac.conf +@@ -24,7 +24,7 @@ QMAKE_INCDIR_OPENGL = \ + + QMAKE_FIX_RPATH = install_name_tool -id + +-QMAKE_LFLAGS_RPATH = -Wl,-rpath, ++QMAKE_LFLAGS_RPATH = + QMAKE_LFLAGS_GCSECTIONS = -Wl,-dead_strip + + QMAKE_LFLAGS_REL_RPATH = +diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf +index c46222de..18dcfbce 100644 +--- a/mkspecs/features/mac/default_post.prf ++++ b/mkspecs/features/mac/default_post.prf +@@ -64,202 +64,6 @@ qt { + } + } + +-# Add the same default rpaths as Xcode does for new projects. +-# This is especially important for iOS/tvOS/watchOS where no other option is possible. +-!no_default_rpath { +- QMAKE_RPATHDIR += @executable_path/../Frameworks +- equals(TEMPLATE, lib):!plugin:lib_bundle: QMAKE_RPATHDIR += @loader_path/Frameworks +-} +- +-# Don't pass -headerpad_max_install_names when using Bitcode. +-# In that case the linker emits a warning stating that the flag is ignored when +-# used with bitcode, for reasons that cannot be determined (rdar://problem/20748962). +-# Using this flag is also unnecessary in practice on UIKit platforms since they +-# are sandboxed, and only UIKit platforms support bitcode to begin with. +-!bitcode: QMAKE_LFLAGS += $$QMAKE_LFLAGS_HEADERPAD +- +-app_extension_api_only { +- QMAKE_CFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION +- QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION +- QMAKE_CXXFLAGS_PRECOMPILE += $$QMAKE_CFLAGS_APPLICATION_EXTENSION +- QMAKE_LFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION +-} +- +-macx-xcode { +- qmake_pkginfo_typeinfo.name = QMAKE_PKGINFO_TYPEINFO +- !isEmpty(QMAKE_PKGINFO_TYPEINFO): \ +- qmake_pkginfo_typeinfo.value = $$QMAKE_PKGINFO_TYPEINFO +- else: \ +- qmake_pkginfo_typeinfo.value = "????" +- QMAKE_MAC_XCODE_SETTINGS += qmake_pkginfo_typeinfo +- +- !isEmpty(VERSION) { +- l = $$split(VERSION, '.') 0 0 # make sure there are at least three +- VER_MAJ = $$member(l, 0, 0) +- VER_MIN = $$member(l, 1, 1) +- VER_PAT = $$member(l, 2, 2) +- unset(l) +- +- qmake_full_version.name = QMAKE_FULL_VERSION +- qmake_full_version.value = $${VER_MAJ}.$${VER_MIN}.$${VER_PAT} +- QMAKE_MAC_XCODE_SETTINGS += qmake_full_version +- +- qmake_short_version.name = QMAKE_SHORT_VERSION +- qmake_short_version.value = $${VER_MAJ}.$${VER_MIN} +- QMAKE_MAC_XCODE_SETTINGS += qmake_short_version +- } +- +- !isEmpty(QMAKE_XCODE_DEBUG_INFORMATION_FORMAT) { +- debug_information_format.name = DEBUG_INFORMATION_FORMAT +- debug_information_format.value = $$QMAKE_XCODE_DEBUG_INFORMATION_FORMAT +- debug_information_format.build = debug +- QMAKE_MAC_XCODE_SETTINGS += debug_information_format +- } +- +- QMAKE_XCODE_ARCHS = +- +- arch_device.name = "ARCHS[sdk=$${device.sdk}*]" +- arch_device.value = $$QMAKE_APPLE_DEVICE_ARCHS +- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_DEVICE_ARCHS +- QMAKE_MAC_XCODE_SETTINGS += arch_device +- +- simulator { +- arch_simulator.name = "ARCHS[sdk=$${simulator.sdk}*]" +- arch_simulator.value = $$QMAKE_APPLE_SIMULATOR_ARCHS +- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_SIMULATOR_ARCHS +- QMAKE_MAC_XCODE_SETTINGS += arch_simulator +- } +- +- only_active_arch.name = ONLY_ACTIVE_ARCH +- only_active_arch.value = YES +- only_active_arch.build = debug +- QMAKE_MAC_XCODE_SETTINGS += only_active_arch +-} else { +- device|!simulator: VALID_DEVICE_ARCHS = $$QMAKE_APPLE_DEVICE_ARCHS +- simulator: VALID_SIMULATOR_ARCHS = $$QMAKE_APPLE_SIMULATOR_ARCHS +- VALID_ARCHS = $$VALID_DEVICE_ARCHS $$VALID_SIMULATOR_ARCHS +- +- isEmpty(VALID_ARCHS): \ +- error("QMAKE_APPLE_DEVICE_ARCHS or QMAKE_APPLE_SIMULATOR_ARCHS must contain at least one architecture") +- +- single_arch: VALID_ARCHS = $$first(VALID_ARCHS) +- +- ACTIVE_ARCHS = $(filter $(EXPORT_VALID_ARCHS), $(ARCHS)) +- ARCH_ARGS = $(foreach arch, $(if $(EXPORT_ACTIVE_ARCHS), $(EXPORT_ACTIVE_ARCHS), $(EXPORT_VALID_ARCHS)), -arch $(arch)) +- +- QMAKE_EXTRA_VARIABLES += VALID_ARCHS ACTIVE_ARCHS ARCH_ARGS +- +- arch_flags = $(EXPORT_ARCH_ARGS) +- +- QMAKE_CFLAGS += $$arch_flags +- QMAKE_CXXFLAGS += $$arch_flags +- QMAKE_LFLAGS += $$arch_flags +- +- QMAKE_PCH_ARCHS = $$VALID_ARCHS +- +- macos: deployment_target = $$QMAKE_MACOSX_DEPLOYMENT_TARGET +- ios: deployment_target = $$QMAKE_IOS_DEPLOYMENT_TARGET +- tvos: deployment_target = $$QMAKE_TVOS_DEPLOYMENT_TARGET +- watchos: deployment_target = $$QMAKE_WATCHOS_DEPLOYMENT_TARGET +- +- # If we're doing a simulator and device build, device and simulator +- # architectures use different paths and flags for the sysroot and +- # deployment target switch, so we must multiplex them across multiple +- # architectures using -Xarch. Otherwise we fall back to the simple path. +- # This is not strictly necessary, but results in cleaner command lines +- # and makes it easier for people to override EXPORT_VALID_ARCHS to limit +- # individual rules to a different set of architecture(s) from the overall +- # build (such as machtest in QtCore). +- simulator:device { +- QMAKE_XARCH_CFLAGS = +- QMAKE_XARCH_LFLAGS = +- QMAKE_EXTRA_VARIABLES += QMAKE_XARCH_CFLAGS QMAKE_XARCH_LFLAGS +- +- for (arch, VALID_ARCHS) { +- contains(VALID_SIMULATOR_ARCHS, $$arch) { +- sdk = $$simulator.sdk +- version_identifier = $$simulator.deployment_identifier +- } else { +- sdk = $$device.sdk +- version_identifier = $$device.deployment_identifier +- } +- +- version_min_flags = \ +- -Xarch_$${arch} \ +- -m$${version_identifier}-version-min=$$deployment_target +- QMAKE_XARCH_CFLAGS_$${arch} = $$version_min_flags \ +- -Xarch_$${arch} \ +- -isysroot$$xcodeSDKInfo(Path, $$sdk) +- QMAKE_XARCH_LFLAGS_$${arch} = $$version_min_flags \ +- -Xarch_$${arch} \ +- -Wl,-syslibroot,$$xcodeSDKInfo(Path, $$sdk) +- +- QMAKE_XARCH_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS_$${arch}) +- QMAKE_XARCH_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS_$${arch}) +- +- QMAKE_EXTRA_VARIABLES += \ +- QMAKE_XARCH_CFLAGS_$${arch} \ +- QMAKE_XARCH_LFLAGS_$${arch} +- } +- +- QMAKE_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS) +- QMAKE_CXXFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS) +- QMAKE_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS) +- } else { +- simulator: \ +- version_identifier = $$simulator.deployment_identifier +- else: \ +- version_identifier = $$device.deployment_identifier +- version_min_flag = -m$${version_identifier}-version-min=$$deployment_target +- QMAKE_CFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag +- QMAKE_CXXFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag +- QMAKE_LFLAGS += -Wl,-syslibroot,$$QMAKE_MAC_SDK_PATH $$version_min_flag +- } +- +- # Enable precompiled headers for multiple architectures +- QMAKE_CFLAGS_USE_PRECOMPILE = +- for (arch, VALID_ARCHS) { +- icc_pch_style: \ +- use_flag = "-pch-use " +- else: \ +- use_flag = -include +- +- # Only use Xarch with multi-arch, as the option confuses ccache +- count(VALID_ARCHS, 1, greaterThan): \ +- QMAKE_CFLAGS_USE_PRECOMPILE += \ +- -Xarch_$${arch} +- +- QMAKE_CFLAGS_USE_PRECOMPILE += \ +- $${use_flag}${QMAKE_PCH_OUTPUT_$${arch}} +- } +- icc_pch_style { +- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -include ${QMAKE_PCH_INPUT} +- QMAKE_CFLAGS_USE_PRECOMPILE = +- } else { +- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE +- QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE +- QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE +- } +- +- QMAKE_PCH_OUTPUT_EXT = _${QMAKE_PCH_ARCH}$${QMAKE_PCH_OUTPUT_EXT} +-} +- +-cache(QMAKE_XCODE_DEVELOPER_PATH, stash) +-!isEmpty(QMAKE_XCODE_VERSION): \ +- cache(QMAKE_XCODE_VERSION, stash) +- +-QMAKE_XCODE_LIBRARY_SUFFIX = $$qtPlatformTargetSuffix() +- +-xcode_product_bundle_identifier_setting.name = PRODUCT_BUNDLE_IDENTIFIER +-xcode_product_bundle_identifier_setting.value = $$QMAKE_TARGET_BUNDLE_PREFIX +-isEmpty(xcode_product_bundle_identifier_setting.value): \ +- xcode_product_bundle_identifier_setting.value = "com.yourcompany" +-xcode_product_bundle_target = $$QMAKE_BUNDLE +-isEmpty(xcode_product_bundle_target): \ +- xcode_product_bundle_target = ${PRODUCT_NAME:rfc1034identifier} +-xcode_product_bundle_identifier_setting.value = "$${xcode_product_bundle_identifier_setting.value}.$${xcode_product_bundle_target}" +-QMAKE_MAC_XCODE_SETTINGS += xcode_product_bundle_identifier_setting +- + !macx-xcode { + generate_xcode_project.commands = @$(QMAKE) -spec macx-xcode $(EXPORT__PRO_FILE_) + generate_xcode_project.target = xcodeproj +diff --git a/mkspecs/features/mac/default_pre.prf b/mkspecs/features/mac/default_pre.prf +index e3534561..3b01424e 100644 +--- a/mkspecs/features/mac/default_pre.prf ++++ b/mkspecs/features/mac/default_pre.prf +@@ -1,60 +1,2 @@ + CONFIG = asset_catalogs rez $$CONFIG + load(default_pre) +- +-isEmpty(QMAKE_XCODE_DEVELOPER_PATH) { +- # Get path of Xcode's Developer directory +- QMAKE_XCODE_DEVELOPER_PATH = $$system("/usr/bin/xcode-select --print-path 2>/dev/null") +- isEmpty(QMAKE_XCODE_DEVELOPER_PATH): \ +- error("Xcode path is not set. Please use xcode-select to choose Xcode installation path.") +- +- # Make sure Xcode path is valid +- !exists($$QMAKE_XCODE_DEVELOPER_PATH): \ +- error("Xcode is not installed in $${QMAKE_XCODE_DEVELOPER_PATH}. Please use xcode-select to choose Xcode installation path.") +-} +- +-isEmpty(QMAKE_XCODEBUILD_PATH): \ +- QMAKE_XCODEBUILD_PATH = $$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null") +- +-!isEmpty(QMAKE_XCODEBUILD_PATH) { +- # Make sure Xcode is set up properly +- !system("/usr/bin/xcrun xcodebuild -license check 2>/dev/null"): \ +- error("Xcode not set up properly. You need to confirm the license agreement by running 'sudo xcrun xcodebuild -license accept'.") +- +- isEmpty(QMAKE_XCODE_VERSION) { +- # Extract Xcode version using xcodebuild +- xcode_version = $$system("/usr/bin/xcrun xcodebuild -version") +- QMAKE_XCODE_VERSION = $$member(xcode_version, 1) +- isEmpty(QMAKE_XCODE_VERSION): error("Could not resolve Xcode version.") +- unset(xcode_version) +- } +-} +- +-isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) { +- QMAKE_XCODE_PREFERENCES_FILE = $$(HOME)/Library/Preferences/com.apple.dt.Xcode.plist +- exists($$QMAKE_XCODE_PREFERENCES_FILE): \ +- QMAKE_TARGET_BUNDLE_PREFIX = $$system("/usr/libexec/PlistBuddy -c 'print IDETemplateOptions:bundleIdentifierPrefix' $$QMAKE_XCODE_PREFERENCES_FILE 2>/dev/null") +- +- !isEmpty(_QMAKE_CACHE_):!isEmpty(QMAKE_TARGET_BUNDLE_PREFIX): \ +- cache(QMAKE_TARGET_BUNDLE_PREFIX) +-} +- +-QMAKE_ASSET_CATALOGS_APP_ICON = AppIcon +- +-# Make the default debug info format for static debug builds +-# DWARF instead of DWARF with dSYM. This cuts down build times +-# for application debug builds significantly, as Xcode doesn't +-# have to pull out all the DWARF info from the Qt static libs +-# and put it into a dSYM file. We don't need that dSYM file in +-# the first place, since the information is available in the +-# object files inside the archives (static libraries). +-macx-xcode:qtConfig(static): \ +- QMAKE_XCODE_DEBUG_INFORMATION_FORMAT = dwarf +- +-# This variable is used by the xcode_dynamic_library_suffix +-# feature, which allows Xcode to choose the Qt libraries to link to +-# at build time, depending on the current Xcode SDK and configuration. +-QMAKE_XCODE_LIBRARY_SUFFIX_SETTING = QT_LIBRARY_SUFFIX +- +-xcode_copy_phase_strip_setting.name = COPY_PHASE_STRIP +-xcode_copy_phase_strip_setting.value = NO +-QMAKE_MAC_XCODE_SETTINGS += xcode_copy_phase_strip_setting +diff --git a/mkspecs/features/mac/sdk.mk b/mkspecs/features/mac/sdk.mk +index c40f58c9..e69de29b 100644 +--- a/mkspecs/features/mac/sdk.mk ++++ b/mkspecs/features/mac/sdk.mk +@@ -1,25 +0,0 @@ +- +-ifeq ($(QT_MAC_SDK_NO_VERSION_CHECK),) +- CHECK_SDK_COMMAND = /usr/bin/xcrun --sdk $(EXPORT_QMAKE_MAC_SDK) -show-sdk-version 2>&1 +- CURRENT_MAC_SDK_VERSION := $(shell DEVELOPER_DIR=$(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) $(CHECK_SDK_COMMAND)) +- ifneq ($(CURRENT_MAC_SDK_VERSION),$(EXPORT_QMAKE_MAC_SDK_VERSION)) +- # We don't want to complain about out of date SDK unless the target needs to be remade. +- # This covers use-cases such as running 'make check' after moving the build to a +- # computer without Xcode or with a different Xcode version. +- TARGET_UP_TO_DATE := $(shell QT_MAC_SDK_NO_VERSION_CHECK=1 $(MAKE) --question $(QMAKE_TARGET) && echo 1 || echo 0) +- ifeq ($(TARGET_UP_TO_DATE),0) +- ifneq ($(findstring missing DEVELOPER_DIR path,$(CURRENT_MAC_SDK_VERSION)),) +- $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) is no longer valid.) +- else ifneq ($(findstring SDK "$(EXPORT_QMAKE_MAC_SDK)" cannot be located,$(CURRENT_MAC_SDK_VERSION)),) +- $(info The developer dir $(EXPORT_QMAKE_XCODE_DEVELOPER_PATH) no longer contains the $(EXPORT_QMAKE_MAC_SDK_VERSION) platform SDK.) +- else ifneq ($(CURRENT_MAC_SDK_VERSION),) +- $(info The platform SDK has been changed from version $(EXPORT_QMAKE_MAC_SDK_VERSION) to version $(CURRENT_MAC_SDK_VERSION).) +- else +- $(info Unknown error resolving current platform SDK version.) +- endif +- $(info This requires a fresh build. Please wipe the build directory completely,) +- $(info including any .qmake.stash and .qmake.cache files generated by qmake.) +- $(error ^) +- endif +- endif +-endif +diff --git a/mkspecs/features/mac/sdk.prf b/mkspecs/features/mac/sdk.prf +index 3a9c2778..e69de29b 100644 +--- a/mkspecs/features/mac/sdk.prf ++++ b/mkspecs/features/mac/sdk.prf +@@ -1,61 +0,0 @@ +- +-isEmpty(QMAKE_MAC_SDK): \ +- error("QMAKE_MAC_SDK must be set when using CONFIG += sdk.") +- +-contains(QMAKE_MAC_SDK, .*/.*): \ +- error("QMAKE_MAC_SDK can only contain short-form SDK names (eg. macosx, iphoneos)") +- +-defineReplace(xcodeSDKInfo) { +- info = $$1 +- equals(info, "Path"): \ +- infoarg = --show-sdk-path +- equals(info, "PlatformPath"): \ +- infoarg = --show-sdk-platform-path +- equals(info, "SDKVersion"): \ +- infoarg = --show-sdk-version +- sdk = $$2 +- isEmpty(sdk): \ +- sdk = $$QMAKE_MAC_SDK +- +- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}) { +- QMAKE_MAC_SDK.$${sdk}.$${info} = $$system("/usr/bin/xcrun --sdk $$sdk $$infoarg 2>/dev/null") +- # --show-sdk-platform-path won't work for Command Line Tools; this is fine +- # only used by the XCTest backend to testlib +- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}):if(!isEmpty(QMAKE_XCODEBUILD_PATH)|!equals(infoarg, "--show-sdk-platform-path")): \ +- error("Could not resolve SDK $$info for \'$$sdk\' using $$infoarg") +- cache(QMAKE_MAC_SDK.$${sdk}.$${info}, set stash, QMAKE_MAC_SDK.$${sdk}.$${info}) +- } +- +- return($$eval(QMAKE_MAC_SDK.$${sdk}.$${info})) +-} +- +-QMAKE_MAC_SDK_PATH = $$xcodeSDKInfo(Path) +-QMAKE_MAC_SDK_PLATFORM_PATH = $$xcodeSDKInfo(PlatformPath) +-QMAKE_MAC_SDK_VERSION = $$xcodeSDKInfo(SDKVersion) +- +-isEmpty(QMAKE_EXPORT_INCDIR_OPENGL) { +- QMAKE_EXPORT_INCDIR_OPENGL = $$QMAKE_INCDIR_OPENGL +- sysrootified = +- for(val, QMAKE_INCDIR_OPENGL): sysrootified += $${QMAKE_MAC_SDK_PATH}$$val +- QMAKE_INCDIR_OPENGL = $$sysrootified +-} +- +-QMAKESPEC_NAME = $$basename(QMAKESPEC) +- +-# Resolve SDK version of various tools +-for(tool, $$list(QMAKE_CC QMAKE_CXX QMAKE_FIX_RPATH QMAKE_AR QMAKE_RANLIB QMAKE_LINK QMAKE_LINK_SHLIB QMAKE_ACTOOL QMAKE_LINK_C QMAKE_LINK_C_SHLIB)) { +- tool_variable = QMAKE_MAC_SDK.$${QMAKESPEC_NAME}.$${QMAKE_MAC_SDK}.$${tool} +- !isEmpty($$tool_variable) { +- $$tool = $$eval($$tool_variable) +- next() +- } +- +- value = $$eval($$tool) +- isEmpty(value): next() +- +- sysrooted = $$system("/usr/bin/xcrun -sdk $$QMAKE_MAC_SDK -find $$first(value) 2>/dev/null") +- isEmpty(sysrooted): next() +- +- $$tool = $$sysrooted $$member(value, 1, -1) +- cache($$tool_variable, set stash, $$tool) +-} +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch new file mode 100644 index 000000000000..301ac67d8d0d --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0002-qtbase-mac.patch @@ -0,0 +1,116 @@ +From 203c9338dc92c2c36007cfe6633387348976637e Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:37:15 -0500 +Subject: [PATCH 02/11] qtbase-mac + +--- + src/corelib/kernel/qcore_mac_p.h | 16 ++++++++++++++-- + src/testlib/qappletestlogger.cpp | 2 +- + src/testlib/qappletestlogger_p.h | 2 +- + src/testlib/qtestcase.cpp | 2 +- + src/testlib/qtestlog.cpp | 2 +- + src/testlib/qtestlog_p.h | 2 +- + 6 files changed, 19 insertions(+), 7 deletions(-) + +diff --git a/src/corelib/kernel/qcore_mac_p.h b/src/corelib/kernel/qcore_mac_p.h +index f96e7358..650946b7 100644 +--- a/src/corelib/kernel/qcore_mac_p.h ++++ b/src/corelib/kernel/qcore_mac_p.h +@@ -212,7 +212,7 @@ private: + + // -------------------------------------------------------------------------- + +-#if !defined(QT_BOOTSTRAPPED) ++#if 0 + + QT_END_NAMESPACE + #include +@@ -290,7 +290,19 @@ QT_MAC_WEAK_IMPORT(_os_activity_current); + + #define QT_APPLE_SCOPED_LOG_ACTIVITY(...) QAppleLogActivity scopedLogActivity = QT_APPLE_LOG_ACTIVITY(__VA_ARGS__).enter(); + +-#endif // !defined(QT_BOOTSTRAPPED) ++#else // !defined(QT_BOOTSTRAPPED) ++ ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT3(...) ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT2(...) ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT(...) ++ ++#define QT_APPLE_LOG_ACTIVITY2(...) ++#define QT_APPLE_LOG_ACTIVITY1(...) ++#define QT_APPLE_LOG_ACTIVITY(...) ++ ++#define QT_APPLE_SCOPED_LOG_ACTIVITY(...) ++ ++#endif + + // ------------------------------------------------------------------------- + +diff --git a/src/testlib/qappletestlogger.cpp b/src/testlib/qappletestlogger.cpp +index dfeadebd..2a74330c 100644 +--- a/src/testlib/qappletestlogger.cpp ++++ b/src/testlib/qappletestlogger.cpp +@@ -43,7 +43,7 @@ + + QT_BEGIN_NAMESPACE + +-#if defined(QT_USE_APPLE_UNIFIED_LOGGING) ++#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 + + using namespace QTestPrivate; + +diff --git a/src/testlib/qappletestlogger_p.h b/src/testlib/qappletestlogger_p.h +index 62c6d95c..f8e0a3b7 100644 +--- a/src/testlib/qappletestlogger_p.h ++++ b/src/testlib/qappletestlogger_p.h +@@ -57,7 +57,7 @@ + + QT_BEGIN_NAMESPACE + +-#if defined(QT_USE_APPLE_UNIFIED_LOGGING) ++#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 + class QAppleTestLogger : public QAbstractTestLogger + { + public: +diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp +index 0c935a1f..22f2d75d 100644 +--- a/src/testlib/qtestcase.cpp ++++ b/src/testlib/qtestcase.cpp +@@ -850,7 +850,7 @@ Q_TESTLIB_EXPORT void qtest_qParseArgs(int argc, char *argv[], bool qml) + + bool addFallbackLogger = !explicitLoggerRequested; + +-#if defined(QT_USE_APPLE_UNIFIED_LOGGING) ++#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 + // Any explicitly requested loggers will be added by now, so we can check if they use stdout + const bool safeToAddAppleLogger = !AppleUnifiedLogger::willMirrorToStderr() || !QTestLog::loggerUsingStdout(); + if (safeToAddAppleLogger && QAppleTestLogger::debugLoggingEnabled()) { +diff --git a/src/testlib/qtestlog.cpp b/src/testlib/qtestlog.cpp +index 57bb7d95..33fb8162 100644 +--- a/src/testlib/qtestlog.cpp ++++ b/src/testlib/qtestlog.cpp +@@ -460,7 +460,7 @@ void QTestLog::addLogger(LogMode mode, const char *filename) + case QTestLog::TAP: + logger = new QTapTestLogger(filename); + break; +-#if defined(QT_USE_APPLE_UNIFIED_LOGGING) ++#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 + case QTestLog::Apple: + logger = new QAppleTestLogger; + break; +diff --git a/src/testlib/qtestlog_p.h b/src/testlib/qtestlog_p.h +index e63e89a7..213b6945 100644 +--- a/src/testlib/qtestlog_p.h ++++ b/src/testlib/qtestlog_p.h +@@ -68,7 +68,7 @@ class Q_TESTLIB_EXPORT QTestLog + public: + enum LogMode { + Plain = 0, XML, LightXML, XunitXML, CSV, TeamCity, TAP +-#if defined(QT_USE_APPLE_UNIFIED_LOGGING) ++#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 + , Apple + #endif + #if defined(HAVE_XCTEST) +-- +2.23.0 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch new file mode 100644 index 000000000000..3fabe071836f --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0003-qtbase-mkspecs.patch @@ -0,0 +1,465 @@ +From 5ff996d9028c0f54939ca7c54d358cd7503ab1ae Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Wed, 18 Sep 2019 05:39:39 -0500 +Subject: [PATCH 03/11] qtbase-mkspecs + +--- + mkspecs/features/create_cmake.prf | 53 ++++-------- + .../data/cmake/Qt5BasicConfig.cmake.in | 80 +------------------ + mkspecs/features/qml_module.prf | 2 +- + mkspecs/features/qml_plugin.prf | 2 +- + mkspecs/features/qt_app.prf | 2 +- + mkspecs/features/qt_build_paths.prf | 4 +- + mkspecs/features/qt_docs.prf | 10 +-- + mkspecs/features/qt_example_installs.prf | 2 +- + mkspecs/features/qt_functions.prf | 2 +- + mkspecs/features/qt_installs.prf | 22 ++--- + mkspecs/features/qt_plugin.prf | 2 +- + 11 files changed, 39 insertions(+), 142 deletions(-) + +diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf +index c9910dda..e9bc8076 100644 +--- a/mkspecs/features/create_cmake.prf ++++ b/mkspecs/features/create_cmake.prf +@@ -21,7 +21,7 @@ load(cmake_functions) + # at cmake time whether package has been found via a symlink, and correct + # that to an absolute path. This is only done for installations to + # the /usr or / prefix. +-CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$[QT_INSTALL_LIBS]) ++CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$NIX_OUTPUT_OUT/lib/) + contains(CMAKE_INSTALL_LIBS_DIR, ^(/usr)?/lib(64)?.*): CMAKE_USR_MOVE_WORKAROUND = $$CMAKE_INSTALL_LIBS_DIR + + CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake +@@ -60,45 +60,20 @@ split_incpath { + $$cmake_extra_source_includes.output + } + +-CMAKE_INCLUDE_DIR = $$cmakeRelativePath($$[QT_INSTALL_HEADERS], $$[QT_INSTALL_PREFIX]) +-contains(CMAKE_INCLUDE_DIR, "^\\.\\./.*") { +- CMAKE_INCLUDE_DIR = $$[QT_INSTALL_HEADERS]/ +- CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True +-} ++CMAKE_INCLUDE_DIR = $$NIX_OUTPUT_DEV/include/ ++CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True + +-CMAKE_LIB_DIR = $$cmakeRelativePath($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX]) +-contains(CMAKE_LIB_DIR,"^\\.\\./.*") { +- CMAKE_LIB_DIR = $$[QT_INSTALL_LIBS]/ +- CMAKE_LIB_DIR_IS_ABSOLUTE = True +-} else { +- CMAKE_RELATIVE_INSTALL_LIBS_DIR = $$cmakeRelativePath($$[QT_INSTALL_PREFIX], $$[QT_INSTALL_LIBS]) +- # We need to go up another two levels because the CMake files are +- # installed in $${CMAKE_LIB_DIR}/cmake/Qt5$${CMAKE_MODULE_NAME} +- CMAKE_RELATIVE_INSTALL_DIR = "$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}../../" +-} ++CMAKE_BIN_DIR = $$NIX_OUTPUT_BIN/bin/ ++CMAKE_BIN_DIR_IS_ABSOLUTE = True + +-CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX]) +-contains(CMAKE_BIN_DIR, "^\\.\\./.*") { +- CMAKE_BIN_DIR = $$[QT_HOST_BINS]/ +- CMAKE_BIN_DIR_IS_ABSOLUTE = True +-} ++CMAKE_LIB_DIR = $$NIX_OUTPUT_OUT/lib/ ++CMAKE_LIB_DIR_IS_ABSOLUTE = True + +-CMAKE_PLUGIN_DIR = $$cmakeRelativePath($$[QT_INSTALL_PLUGINS], $$[QT_INSTALL_PREFIX]) +-contains(CMAKE_PLUGIN_DIR, "^\\.\\./.*") { +- CMAKE_PLUGIN_DIR = $$[QT_INSTALL_PLUGINS]/ +- CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True +-} +- +-win32:!static:!staticlib { +- CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX]) +- contains(CMAKE_DLL_DIR, "^\\.\\./.*") { +- CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/ +- CMAKE_DLL_DIR_IS_ABSOLUTE = True +- } +-} else { +- CMAKE_DLL_DIR = $$CMAKE_LIB_DIR +- CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE +-} ++CMAKE_PLUGIN_DIR = $$NIX_OUTPUT_PLUGIN/ ++CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True ++ ++CMAKE_DLL_DIR = $$NIX_OUTPUT_OUT/lib/ ++CMAKE_DLL_DIR_IS_ABSOLUTE = True + + static|staticlib:CMAKE_STATIC_TYPE = true + +@@ -178,7 +153,7 @@ contains(CONFIG, plugin) { + cmake_target_file + + cmake_qt5_plugin_file.files = $$cmake_target_file.output +- cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} ++ cmake_qt5_plugin_file.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} + INSTALLS += cmake_qt5_plugin_file + + return() +@@ -323,7 +298,7 @@ exists($$cmake_macros_file.input) { + cmake_qt5_module_files.files += $$cmake_macros_file.output + } + +-cmake_qt5_module_files.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME} ++cmake_qt5_module_files.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME} + + # We are generating cmake files. Most developers of Qt are not aware of cmake, + # so we require automatic tests to be available. The only module which should +diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +index c7298928..c60ef16e 100644 +--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in ++++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +@@ -3,30 +3,6 @@ if (CMAKE_VERSION VERSION_LESS 3.1.0) + message(FATAL_ERROR \"Qt 5 $${CMAKE_MODULE_NAME} module requires at least CMake version 3.1.0\") + endif() + +-!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND) +-!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") +-!!ELSE +-get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH) +-# Use original install prefix when loaded through a +-# cross-prefix symbolic link such as /lib -> /usr/lib. +-get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH) +-get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH) +-if(_realCurr STREQUAL _realOrig) +- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE) +-else() +- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) +-endif() +-unset(_realOrig) +-unset(_realCurr) +-unset(_IMPORT_PREFIX) +-!!ENDIF +-!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +-get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) +-!!ELSE +-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") +-!!ENDIF +- + !!IF !equals(TEMPLATE, aux) + # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead. + set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.VERSION)") +@@ -52,11 +28,7 @@ endmacro() + macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION) + set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) + +-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") +-!!ELSE + set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") +-!!ENDIF + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) + set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES + \"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" +@@ -69,11 +41,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATI + ) + + !!IF !isEmpty(CMAKE_WINDOWS_BUILD) +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") +-!!ELSE + set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") +-!!ENDIF + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib}) + if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\") + set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES +@@ -89,24 +57,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!IF !no_module_headers + !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) + set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework\" +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Headers\" ++ \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework\" ++ \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Headers\" + ) + !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) + set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" +- ) +-!!ELSE +- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") +-!!ENDIF +-!!ELSE +-!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) +- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\") +-!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) +- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\" +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\" ++ \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\" ++ \"$${CMAKE_LIB_DIR}$${CMAKE_QT_STEM}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\" + ) + !!ELSE + set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") +@@ -122,7 +79,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\") + !!ENDIF + !!ENDIF +-!!ENDIF + !!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS) + include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL) + !!ENDIF +@@ -272,25 +228,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) + !!IF isEmpty(CMAKE_DEBUG_TYPE) + !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) +-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE + if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) +-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE + _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" ) + !!ELSE // CMAKE_STATIC_WINDOWS_BUILD + if (EXISTS +-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" +-!!ELSE + \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" +-!!ENDIF + AND EXISTS +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) +-!!ELSE + \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) +-!!ENDIF + _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" ) + !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD + endif() +@@ -309,25 +253,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD) + !!IF isEmpty(CMAKE_RELEASE_TYPE) + !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD) +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE + if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE + _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" ) + !!ELSE // CMAKE_STATIC_WINDOWS_BUILD + if (EXISTS +-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" +-!!ELSE + \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" +-!!ENDIF + AND EXISTS +-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ELSE + \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ENDIF + _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) + !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD + endif() +@@ -346,11 +278,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) + set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) + +-!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") +-!!ELSE + set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") +-!!ENDIF + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) + set_target_properties(Qt5::${Plugin} PROPERTIES + \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} +diff --git a/mkspecs/features/qml_module.prf b/mkspecs/features/qml_module.prf +index 57cfec78..5cbd7c52 100644 +--- a/mkspecs/features/qml_module.prf ++++ b/mkspecs/features/qml_module.prf +@@ -51,7 +51,7 @@ builtin_resources { + # Install rules + qmldir.base = $$qmldir_path + qmldir.files = $$qmldir_file +-qmldir.path = $$[QT_INSTALL_QML]/$$TARGETPATH ++qmldir.path = $$NIX_OUTPUT_QML/$$TARGETPATH + INSTALLS += qmldir + + qmlfiles.base = $$_PRO_FILE_PWD_ +diff --git a/mkspecs/features/qml_plugin.prf b/mkspecs/features/qml_plugin.prf +index ad8ecdf5..804634b2 100644 +--- a/mkspecs/features/qml_plugin.prf ++++ b/mkspecs/features/qml_plugin.prf +@@ -50,7 +50,7 @@ load(qt_build_paths) + + DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH + +-target.path = $$[QT_INSTALL_QML]/$$TARGETPATH ++target.path = $$NIX_OUTPUT_QML/$$TARGETPATH + INSTALLS += target + + # Some final setup +diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf +index 8354f30e..62028fef 100644 +--- a/mkspecs/features/qt_app.prf ++++ b/mkspecs/features/qt_app.prf +@@ -30,7 +30,7 @@ host_build:force_bootstrap { + target.path = $$[QT_HOST_BINS] + } else { + !build_pass:qtConfig(debug_and_release): CONFIG += release +- target.path = $$[QT_INSTALL_BINS] ++ target.path = $$NIX_OUTPUT_BIN/bin + CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable + } + INSTALLS += target +diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf +index 3bb3823a..655b7b7d 100644 +--- a/mkspecs/features/qt_build_paths.prf ++++ b/mkspecs/features/qt_build_paths.prf +@@ -24,6 +24,6 @@ exists($$MODULE_BASE_INDIR/.git): \ + !force_independent { + # If the module is not built independently, everything ends up in qtbase. + # This is the case in non-prefix builds, except for selected modules. +- MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX] +- MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX] ++ MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT ++ MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT + } +diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf +index 3b74cd4d..6bfbbe6e 100644 +--- a/mkspecs/features/qt_docs.prf ++++ b/mkspecs/features/qt_docs.prf +@@ -45,7 +45,7 @@ QMAKE_DOCS_OUTPUTDIR = $$QMAKE_DOCS_BASE_OUTDIR/$$QMAKE_DOCS_TARGETDIR + + QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR) + !build_online_docs: \ +- QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS]) ++ QDOC += -installdir $$shell_quote($$NIX_OUTPUT_DOC) + PREP_DOC_INDEXES = + DOC_INDEXES = + !isEmpty(QTREPOS) { +@@ -64,8 +64,8 @@ DOC_INDEXES = + DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc) + } else { + prepare_docs: \ +- PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) +- DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) ++ PREP_DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) ++ DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC) + } + + qtattributionsscanner.target = qtattributionsscanner +@@ -88,12 +88,12 @@ prepare_docs { + qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch) + + inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR +- inst_html_docs.path = $$[QT_INSTALL_DOCS] ++ inst_html_docs.path = $$NIX_OUTPUT_DOC + inst_html_docs.CONFIG += no_check_exist directory no_default_install no_build + INSTALLS += inst_html_docs + + inst_qch_docs.files = $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch +- inst_qch_docs.path = $$[QT_INSTALL_DOCS] ++ inst_qch_docs.path = $$NIX_OUTPUT_DOC + inst_qch_docs.CONFIG += no_check_exist no_default_install no_build + INSTALLS += inst_qch_docs + +diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf +index 43b58817..e635b8f6 100644 +--- a/mkspecs/features/qt_example_installs.prf ++++ b/mkspecs/features/qt_example_installs.prf +@@ -88,7 +88,7 @@ sourcefiles += \ + $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \ + $$DBUS_ADAPTORS $$DBUS_INTERFACES + addInstallFiles(sources.files, $$sourcefiles) +-sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase ++sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase + INSTALLS += sources + + check_examples { +diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf +index 1903e509..ae7b5859 100644 +--- a/mkspecs/features/qt_functions.prf ++++ b/mkspecs/features/qt_functions.prf +@@ -69,7 +69,7 @@ defineTest(qtHaveModule) { + defineTest(qtPrepareTool) { + cmd = $$eval(QT_TOOL.$${2}.binary) + isEmpty(cmd) { +- cmd = $$[QT_HOST_BINS]/$$2 ++ cmd = $$system("command -v $$2") + exists($${cmd}.pl) { + $${1}_EXE = $${cmd}.pl + cmd = perl -w $$system_path($${cmd}.pl) +diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf +index 1ebca173..b784441d 100644 +--- a/mkspecs/features/qt_installs.prf ++++ b/mkspecs/features/qt_installs.prf +@@ -12,16 +12,10 @@ + #library + !qt_no_install_library { + win32 { +- host_build: \ +- dlltarget.path = $$[QT_HOST_BINS] +- else: \ +- dlltarget.path = $$[QT_INSTALL_BINS] ++ dlltarget.path = $$NIX_OUTPUT_BIN/bin + INSTALLS += dlltarget + } +- host_build: \ +- target.path = $$[QT_HOST_LIBS] +- else: \ +- target.path = $$[QT_INSTALL_LIBS] ++ target.path = $$NIX_OUTPUT_OUT/lib + !static: target.CONFIG = no_dll + INSTALLS += target + } +@@ -29,35 +23,35 @@ + #headers + qt_install_headers { + gen_headers.files = $$SYNCQT.GENERATED_HEADER_FILES +- gen_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME ++ gen_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME + INSTALLS += gen_headers + + targ_headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.INJECTED_HEADER_FILES +- targ_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME ++ targ_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME + INSTALLS += targ_headers + + private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES $$SYNCQT.INJECTED_PRIVATE_HEADER_FILES +- private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private ++ private_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private + generated_privates: \ + private_headers.CONFIG += no_check_exist + INSTALLS += private_headers + + qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES +- qpa_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa ++ qpa_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa + INSTALLS += qpa_headers + } + + #module + qt_install_module { + !isEmpty(MODULE_PRI) { +- pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules ++ pritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules + pritarget.files = $$MODULE_PRI + INSTALLS += pritarget + } else: isEmpty(MODULE_PRIVATE_PRI) { + warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects.") + } + !isEmpty(MODULE_PRIVATE_PRI) { +- privpritarget.path = $$[QT_HOST_DATA]/mkspecs/modules ++ privpritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules + privpritarget.files = $$MODULE_PRIVATE_PRI + INSTALLS += privpritarget + } +diff --git a/mkspecs/features/qt_plugin.prf b/mkspecs/features/qt_plugin.prf +index 40528a65..903f7952 100644 +--- a/mkspecs/features/qt_plugin.prf ++++ b/mkspecs/features/qt_plugin.prf +@@ -88,7 +88,7 @@ CONFIG(static, static|shared)|prefix_build { + } + } + +-target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE ++target.path = $$NIX_OUTPUT_PLUGIN/$$PLUGIN_TYPE + INSTALLS += target + + TARGET = $$qt5LibraryTarget($$TARGET) +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch new file mode 100644 index 000000000000..93c4748f6fd1 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0004-qtbase-replace-libdir.patch @@ -0,0 +1,68 @@ +From d126db8f5c2c1f6d6738de1a53040c93fdf6ff73 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Wed, 18 Sep 2019 05:39:50 -0500 +Subject: [PATCH 04/11] qtbase-replace-libdir + +--- + mkspecs/features/qt_common.prf | 20 ++------------------ + mkspecs/features/qt_module.prf | 5 +---- + 2 files changed, 3 insertions(+), 22 deletions(-) + +diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf +index caecb68a..d3aa3ba5 100644 +--- a/mkspecs/features/qt_common.prf ++++ b/mkspecs/features/qt_common.prf +@@ -30,32 +30,16 @@ contains(TEMPLATE, .*lib) { + rplbase = $$dirname(_QMAKE_SUPER_CACHE_)/[^/][^/]* + else: \ + rplbase = $$MODULE_BASE_OUTDIR +- host_build { +- qqt_libdir = \$\$\$\$[QT_HOST_LIBS] +- qt_libdir = $$[QT_HOST_LIBS] +- } else { +- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS] +- qt_libdir = $$[QT_INSTALL_LIBS] +- } ++ qt_libdir = $$NIX_OUTPUT_OUT/lib + contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) { +- lib_replace0.match = $$rplbase/lib/ +- lib_replace0.replace = $$qqt_libdir/ +- lib_replace0.CONFIG = path +- QMAKE_PRL_INSTALL_REPLACE += lib_replace0 + lib_replace.match = "[^ ']*$$rplbase/lib" + lib_replace.replace = + } else { + lib_replace.match = $$rplbase/lib +- lib_replace.replace = $$qqt_libdir ++ lib_replace.replace = $$qt_libdir + } + lib_replace.CONFIG = path + QMAKE_PRL_INSTALL_REPLACE += lib_replace +- !equals(qt_libdir, $$rplbase/lib) { +- qtlibdir_replace.match = $$qt_libdir +- qtlibdir_replace.replace = $$qqt_libdir +- qtlibdir_replace.CONFIG = path +- QMAKE_PRL_INSTALL_REPLACE += qtlibdir_replace +- } + } + + # The remainder of this file must not apply to host tools/libraries, +diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf +index 51b5bde6..82e2907c 100644 +--- a/mkspecs/features/qt_module.prf ++++ b/mkspecs/features/qt_module.prf +@@ -292,10 +292,7 @@ load(qt_targets) + } + !lib_bundle:unix { + CONFIG += create_libtool +- host_build: \ +- QMAKE_LIBTOOL_LIBDIR = $$[QT_HOST_LIBS] +- else: \ +- QMAKE_LIBTOOL_LIBDIR = "=$$[QT_INSTALL_LIBS/raw]" ++ QMAKE_LIBTOOL_LIBDIR = $$NIX_OUTPUT_OUT/lib + ltlib_replace.match = $$lib_replace.match + !isEmpty(lib_replace.replace): \ + ltlib_replace.replace = $$QMAKE_LIBTOOL_LIBDIR +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch new file mode 100644 index 000000000000..b93b8f8c832c --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0005-qtbase-cmake.patch @@ -0,0 +1,194 @@ +From 0ea804da2eb1d0cfbbfc15fbc33a3d7dd5de36ed Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:34:28 -0500 +Subject: [PATCH 05/11] qtbase-cmake + +--- + mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 2 +- + mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in | 4 ++-- + src/corelib/Qt5CoreConfigExtras.cmake.in | 10 +++++----- + src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in | 2 +- + .../Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in | 2 +- + src/dbus/Qt5DBusConfigExtras.cmake.in | 12 ++---------- + src/gui/Qt5GuiConfigExtras.cmake.in | 6 +++--- + src/widgets/Qt5WidgetsConfigExtras.cmake.in | 2 +- + 8 files changed, 16 insertions(+), 24 deletions(-) + +diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +index c60ef16e..e354ab91 100644 +--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in ++++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +@@ -278,7 +278,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) + set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) + +- set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") ++ set(imported_location \"${PLUGIN_LOCATION}\") + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) + set_target_properties(Qt5::${Plugin} PROPERTIES + \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} +diff --git a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in +index 5baf0fdb..3583745a 100644 +--- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in ++++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in +@@ -2,10 +2,10 @@ + add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED) + + !!IF !isEmpty(CMAKE_RELEASE_TYPE) +-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\") ++_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_RELEASE}\") + !!ENDIF + !!IF !isEmpty(CMAKE_DEBUG_TYPE) +-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\") ++_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PLUGIN_LOCATION_DEBUG}\") + !!ENDIF + + list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME) +diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in +index e0652fdc..450b2a2d 100644 +--- a/src/corelib/Qt5CoreConfigExtras.cmake.in ++++ b/src/corelib/Qt5CoreConfigExtras.cmake.in +@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qmake) + add_executable(Qt5::qmake IMPORTED) + + !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") + !!ELSE + set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\") + !!ENDIF +@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::moc) + add_executable(Qt5::moc IMPORTED) + + !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") + !!ELSE + set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\") + !!ENDIF +@@ -35,7 +35,7 @@ if (NOT TARGET Qt5::rcc) + add_executable(Qt5::rcc IMPORTED) + + !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") + !!ELSE + set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\") + !!ENDIF +@@ -116,7 +116,7 @@ if (NOT TARGET Qt5::WinMain) + !!IF !isEmpty(CMAKE_RELEASE_TYPE) + set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") + !!ELSE + set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\") + !!ENDIF +@@ -130,7 +130,7 @@ if (NOT TARGET Qt5::WinMain) + set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) + + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") + !!ELSE + set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\") + !!ENDIF +diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in +index c357237d..6f0c75de 100644 +--- a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in ++++ b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in +@@ -1,6 +1,6 @@ + + !!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE) +-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") ++set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") + !!ELSE + set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\") + !!ENDIF +diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in +index 706304cf..546420f6 100644 +--- a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in ++++ b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in +@@ -1,6 +1,6 @@ + + !!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE) +-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") ++set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\") + !!ELSE + set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\") + !!ENDIF +diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in +index 1d947159..b36865fc 100644 +--- a/src/dbus/Qt5DBusConfigExtras.cmake.in ++++ b/src/dbus/Qt5DBusConfigExtras.cmake.in +@@ -2,11 +2,7 @@ + if (NOT TARGET Qt5::qdbuscpp2xml) + add_executable(Qt5::qdbuscpp2xml IMPORTED) + +-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") +-!!ELSE +- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") +-!!ENDIF ++ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\") + _qt5_DBus_check_file_exists(${imported_location}) + + set_target_properties(Qt5::qdbuscpp2xml PROPERTIES +@@ -17,11 +13,7 @@ endif() + if (NOT TARGET Qt5::qdbusxml2cpp) + add_executable(Qt5::qdbusxml2cpp IMPORTED) + +-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") +-!!ELSE +- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") +-!!ENDIF ++ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\") + _qt5_DBus_check_file_exists(${imported_location}) + + set_target_properties(Qt5::qdbusxml2cpp PROPERTIES +diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in +index 84dbbfeb..8ad0720c 100644 +--- a/src/gui/Qt5GuiConfigExtras.cmake.in ++++ b/src/gui/Qt5GuiConfigExtras.cmake.in +@@ -2,7 +2,7 @@ + !!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE) + + !!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE) +-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\") ++set(Qt5Gui_EGL_INCLUDE_DIRS \"$$NIX_OUTPUT_DEV/$$CMAKE_INCLUDE_DIR/QtANGLE\") + !!ELSE + set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\") + !!ENDIF +@@ -17,13 +17,13 @@ macro(_populate_qt5gui_gl_target_properties TargetName Configuration LIB_LOCATIO + set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) + + !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") ++ set(imported_location \"$$NIX_OUTPUT_OUT/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") + !!ELSE + set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") + !!ENDIF + + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") ++ set(imported_implib \"$$NIX_OUTPUT_OUT/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") + !!ELSE + set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") + !!ENDIF +diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in +index 99d87e2e..a4eab2aa 100644 +--- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in ++++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in +@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::uic) + add_executable(Qt5::uic IMPORTED) + + !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") ++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") + !!ELSE + set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\") + !!ENDIF +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch new file mode 100644 index 000000000000..80f4a4091e6b --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0006-qtbase-gtk3.patch @@ -0,0 +1,48 @@ +From 8fa184fb70a62cbe9ee160bceddaf5d7c21cb85c Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:35:33 -0500 +Subject: [PATCH 06/11] qtbase-gtk3 + +--- + src/plugins/platformthemes/gtk3/main.cpp | 17 ++++++++++++++++- + 1 file changed, 16 insertions(+), 1 deletion(-) + +diff --git a/src/plugins/platformthemes/gtk3/main.cpp b/src/plugins/platformthemes/gtk3/main.cpp +index fb1c425d..bb8bab97 100644 +--- a/src/plugins/platformthemes/gtk3/main.cpp ++++ b/src/plugins/platformthemes/gtk3/main.cpp +@@ -39,6 +39,7 @@ + + #include + #include "qgtk3theme.h" ++#include + + QT_BEGIN_NAMESPACE + +@@ -54,8 +55,22 @@ public: + QPlatformTheme *QGtk3ThemePlugin::create(const QString &key, const QStringList ¶ms) + { + Q_UNUSED(params); +- if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) ++ if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) { ++ ++#ifdef NIXPKGS_QGTK3_XDG_DATA_DIRS ++ QStringList XDG_DATA_DIRS = QFile::decodeName(qgetenv("XDG_DATA_DIRS")).split(':'); ++ XDG_DATA_DIRS << QLatin1String(NIXPKGS_QGTK3_XDG_DATA_DIRS); ++ qputenv("XDG_DATA_DIRS", QFile::encodeName(XDG_DATA_DIRS.join(':'))); ++#endif ++ ++#ifdef NIXPKGS_QGTK3_GIO_EXTRA_MODULES ++ QStringList GIO_EXTRA_MODULES = QFile::decodeName(qgetenv("GIO_EXTRA_MODULES")).split(':'); ++ GIO_EXTRA_MODULES << QLatin1String(NIXPKGS_QGTK3_GIO_EXTRA_MODULES); ++ qputenv("GIO_EXTRA_MODULES", QFile::encodeName(GIO_EXTRA_MODULES.join(':'))); ++#endif ++ + return new QGtk3Theme; ++ } + + return 0; + } +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch new file mode 100644 index 000000000000..331227735988 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0007-qtbase-xcursor.patch @@ -0,0 +1,29 @@ +From b4fe78eb31f30ef499970b2ca7e7947c025588af Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:35:58 -0500 +Subject: [PATCH 07/11] qtbase-xcursor + +--- + src/plugins/platforms/xcb/qxcbcursor.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp +index fbadab4d..c83ce0af 100644 +--- a/src/plugins/platforms/xcb/qxcbcursor.cpp ++++ b/src/plugins/platforms/xcb/qxcbcursor.cpp +@@ -317,10 +317,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen) + #if QT_CONFIG(xcb_xlib) && QT_CONFIG(library) + static bool function_ptrs_not_initialized = true; + if (function_ptrs_not_initialized) { +- QLibrary xcursorLib(QLatin1String("Xcursor"), 1); ++ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1); + bool xcursorFound = xcursorLib.load(); + if (!xcursorFound) { // try without the version number +- xcursorLib.setFileName(QLatin1String("Xcursor")); ++ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR)); + xcursorFound = xcursorLib.load(); + } + if (xcursorFound) { +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch new file mode 100644 index 000000000000..f54ba7f90029 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0008-qtbase-xcompose.patch @@ -0,0 +1,30 @@ +From 47b2bed58224bda2267480604707a580dc17dd1f Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:36:10 -0500 +Subject: [PATCH 08/11] qtbase-xcompose + +--- + .../compose/generator/qtablegenerator.cpp | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp +index b5a0a5bb..6c20305f 100644 +--- a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp ++++ b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp +@@ -265,12 +265,9 @@ void TableGenerator::initPossibleLocations() + m_possibleLocations.reserve(7); + if (qEnvironmentVariableIsSet("QTCOMPOSE")) + m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE"))); +- m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale")); +- m_possibleLocations.append(QStringLiteral("/usr/local/share/X11/locale")); +- m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale")); +- m_possibleLocations.append(QStringLiteral("/usr/local/lib/X11/locale")); + m_possibleLocations.append(QStringLiteral(X11_PREFIX "/share/X11/locale")); + m_possibleLocations.append(QStringLiteral(X11_PREFIX "/lib/X11/locale")); ++ m_possibleLocations.append(QLatin1String(NIXPKGS_QTCOMPOSE)); + } + + QString TableGenerator::findComposeFile() +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch new file mode 100644 index 000000000000..e8a4533cc2d3 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0009-qtbase-tzdir.patch @@ -0,0 +1,51 @@ +From 354713a61005b9a4743b9db0d76c72514c4579f8 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:36:25 -0500 +Subject: [PATCH 09/11] qtbase-tzdir + +--- + src/corelib/tools/qtimezoneprivate_tz.cpp | 20 ++++++++++++++------ + 1 file changed, 14 insertions(+), 6 deletions(-) + +diff --git a/src/corelib/tools/qtimezoneprivate_tz.cpp b/src/corelib/tools/qtimezoneprivate_tz.cpp +index 7d85bc07..c13d99b8 100644 +--- a/src/corelib/tools/qtimezoneprivate_tz.cpp ++++ b/src/corelib/tools/qtimezoneprivate_tz.cpp +@@ -71,7 +71,11 @@ typedef QHash QTzTimeZoneHash; + // Parse zone.tab table, assume lists all installed zones, if not will need to read directories + static QTzTimeZoneHash loadTzTimeZones() + { +- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); ++ // Try TZDIR first, in case we're running on NixOS. ++ QString path = QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/zone.tab"); ++ // Fallback to traditional paths in case we are not on NixOS. ++ if (!QFile::exists(path)) ++ path = QStringLiteral("/usr/share/zoneinfo/zone.tab"); + if (!QFile::exists(path)) + path = QStringLiteral("/usr/lib/zoneinfo/zone.tab"); + +@@ -650,12 +654,16 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId) + if (!tzif.open(QIODevice::ReadOnly)) + return; + } else { +- // Open named tz, try modern path first, if fails try legacy path +- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ // Try TZDIR first, in case we're running on NixOS ++ tzif.setFileName(QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/") + QString::fromLocal8Bit(ianaId)); + if (!tzif.open(QIODevice::ReadOnly)) { +- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); +- if (!tzif.open(QIODevice::ReadOnly)) +- return; ++ // Open named tz, try modern path first, if fails try legacy path ++ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ if (!tzif.open(QIODevice::ReadOnly)) { ++ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId)); ++ if (!tzif.open(QIODevice::ReadOnly)) ++ return; ++ } + } + } + +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch new file mode 100644 index 000000000000..b53544e0d4ed --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0010-qtbase-qtpluginpath.patch @@ -0,0 +1,32 @@ +From 571060c0e1dca29554cc97cfb33087c9b41114a5 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:36:41 -0500 +Subject: [PATCH 10/11] qtbase-qtpluginpath + +--- + src/corelib/kernel/qcoreapplication.cpp | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp +index 8652c456..74562272 100644 +--- a/src/corelib/kernel/qcoreapplication.cpp ++++ b/src/corelib/kernel/qcoreapplication.cpp +@@ -2690,6 +2690,15 @@ QStringList QCoreApplication::libraryPaths() + QStringList *app_libpaths = new QStringList; + coreappdata()->app_libpaths.reset(app_libpaths); + ++ // Add library paths derived from PATH ++ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':'); ++ const QString plugindir = QStringLiteral("../" NIXPKGS_QT_PLUGIN_PREFIX); ++ for (const QString &path: paths) { ++ if (!path.isEmpty()) { ++ app_libpaths->append(QDir::cleanPath(path + QDir::separator() + plugindir)); ++ } ++ } ++ + QString libPathEnv = qEnvironmentVariable("QT_PLUGIN_PATH"); + if (!libPathEnv.isEmpty()) { + QStringList paths = libPathEnv.split(QDir::listSeparator(), QString::SkipEmptyParts); +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch new file mode 100644 index 000000000000..0fd93759c3af --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qtbase.patch.d/0011-qtbase-assert.patch @@ -0,0 +1,32 @@ +From 545e696e270a3879dd59f71d145e31a7d93ab8f4 Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:37:04 -0500 +Subject: [PATCH 11/11] qtbase-assert + +--- + src/testlib/qtestassert.h | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/testlib/qtestassert.h b/src/testlib/qtestassert.h +index 6498ea84..d821ced7 100644 +--- a/src/testlib/qtestassert.h ++++ b/src/testlib/qtestassert.h +@@ -44,10 +44,13 @@ + + QT_BEGIN_NAMESPACE + +- ++#if defined(QT_NO_DEBUG) && !defined(QT_FORCE_ASSERTS) ++#define QTEST_ASSERT(cond) do { } while ((false) && (cond)) ++#define QTEST_ASSERT_X(cond, where, what) do { } while ((false) && (cond)) ++#else + #define QTEST_ASSERT(cond) do { if (!(cond)) qt_assert(#cond,__FILE__,__LINE__); } while (false) +- + #define QTEST_ASSERT_X(cond, where, what) do { if (!(cond)) qt_assert_x(where, what,__FILE__,__LINE__); } while (false) ++#endif + + QT_END_NAMESPACE + +-- +2.22.1 + diff --git a/pkgs/development/libraries/qt-5/5.12/srcs.nix b/pkgs/development/libraries/qt-5/5.12/srcs.nix index ce567c3a2bcd..46bc14a13460 100644 --- a/pkgs/development/libraries/qt-5/5.12/srcs.nix +++ b/pkgs/development/libraries/qt-5/5.12/srcs.nix @@ -3,323 +3,323 @@ { qt3d = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qt3d-everywhere-src-5.12.3.tar.xz"; - sha256 = "8997f07c816bbc6dd43fc2171801178bc65e704d35039998530cfa49837eaa7d"; - name = "qt3d-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qt3d-everywhere-src-5.12.4.tar.xz"; + sha256 = "cfad2e16f40fa07f8be59fa29c0c246743ee67db417ca29772a92f36fa322af3"; + name = "qt3d-everywhere-src-5.12.4.tar.xz"; }; }; qtactiveqt = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtactiveqt-everywhere-src-5.12.3.tar.xz"; - sha256 = "15a5fde0a069f402bea9f422d8d2c46af440d202122c6307c2a6be642d20dc0f"; - name = "qtactiveqt-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtactiveqt-everywhere-src-5.12.4.tar.xz"; + sha256 = "d3c78e6c2a75b9d4f9685d4eea6e84f44f97034a54aed7a159c53cfd4ec4eac7"; + name = "qtactiveqt-everywhere-src-5.12.4.tar.xz"; }; }; qtandroidextras = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtandroidextras-everywhere-src-5.12.3.tar.xz"; - sha256 = "866b3fbcfc2cbebdb83b5adec4e5d0bd29b0e0b0762d66fb3fef0b400e37254f"; - name = "qtandroidextras-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtandroidextras-everywhere-src-5.12.4.tar.xz"; + sha256 = "18e0dbd82920b0ca51b29172fc0ed1f2a923cb7c4fa8fb574595abc16ec3245e"; + name = "qtandroidextras-everywhere-src-5.12.4.tar.xz"; }; }; qtbase = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtbase-everywhere-src-5.12.3.tar.xz"; - sha256 = "fddfd8852ef7503febeed67b876d1425160869ae2b1ae8e10b3fb0fedc5fe701"; - name = "qtbase-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtbase-everywhere-src-5.12.4.tar.xz"; + sha256 = "20fbc7efa54ff7db9552a7a2cdf9047b80253c1933c834f35b0bc5c1ae021195"; + name = "qtbase-everywhere-src-5.12.4.tar.xz"; }; }; qtcanvas3d = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtcanvas3d-everywhere-src-5.12.3.tar.xz"; - sha256 = "c0821f1232c6bcd00648af9a5d1eade8e0397c6bfff60621e0fcdfc75561baea"; - name = "qtcanvas3d-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtcanvas3d-everywhere-src-5.12.4.tar.xz"; + sha256 = "d7e0e8aa542d077a929fb7700411ca9de1f65ae4748d64168d2e7533facd7869"; + name = "qtcanvas3d-everywhere-src-5.12.4.tar.xz"; }; }; qtcharts = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtcharts-everywhere-src-5.12.3.tar.xz"; - sha256 = "820c94b2bf5d73e921fe99be1e3a03a6f012d96574a08e504d68db237522b3a9"; - name = "qtcharts-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtcharts-everywhere-src-5.12.4.tar.xz"; + sha256 = "06ff68a80dc377847429cdd87d4e46465e1d6fbc417d52700a0a59d197669c9e"; + name = "qtcharts-everywhere-src-5.12.4.tar.xz"; }; }; qtconnectivity = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtconnectivity-everywhere-src-5.12.3.tar.xz"; - sha256 = "01518cee71a8d53b9c2387f8c7facbcc2c4d63ab3b79462edfa06ba3bfeae661"; - name = "qtconnectivity-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtconnectivity-everywhere-src-5.12.4.tar.xz"; + sha256 = "749d05242b9fae12e80f569fb6b918dc011cb191eeb05147cbde474ca6b173ef"; + name = "qtconnectivity-everywhere-src-5.12.4.tar.xz"; }; }; qtdatavis3d = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtdatavis3d-everywhere-src-5.12.3.tar.xz"; - sha256 = "f6d073c4575542f8ff6de3ac3b6e8dde6ae2d87e98119de7a13bc984aa967313"; - name = "qtdatavis3d-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtdatavis3d-everywhere-src-5.12.4.tar.xz"; + sha256 = "1c160eeb430c8602aaee8ae4faa55bc62f880dae642be5fd1ac019f7886eb15a"; + name = "qtdatavis3d-everywhere-src-5.12.4.tar.xz"; }; }; qtdeclarative = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtdeclarative-everywhere-src-5.12.3.tar.xz"; - sha256 = "839881cd6996e35c351bc7d560372ebb91e61f3688957c33248c4f31ea007fa7"; - name = "qtdeclarative-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtdeclarative-everywhere-src-5.12.4.tar.xz"; + sha256 = "614105ed73079d67d81b34fef31c9934c5e751342e4b2e0297128c8c301acda7"; + name = "qtdeclarative-everywhere-src-5.12.4.tar.xz"; }; }; qtdoc = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtdoc-everywhere-src-5.12.3.tar.xz"; - sha256 = "ce5e9d0f48d108c48d742ab2127ead735270d7b525103c6cf409683d7fc8334f"; - name = "qtdoc-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtdoc-everywhere-src-5.12.4.tar.xz"; + sha256 = "93e6cb6abc0dad3a831a6e2c46d950bd7a99b59d60ce2d2b81c2ce893bfb41bb"; + name = "qtdoc-everywhere-src-5.12.4.tar.xz"; }; }; qtgamepad = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtgamepad-everywhere-src-5.12.3.tar.xz"; - sha256 = "5d046869e9646912936e3622efa755d85ccc8eddba91f5b12880cfb5e6489642"; - name = "qtgamepad-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtgamepad-everywhere-src-5.12.4.tar.xz"; + sha256 = "25de6f10fb18f2484d1e569688bf33deb90ecbfb97ce41c2b5fb3521146e4c45"; + name = "qtgamepad-everywhere-src-5.12.4.tar.xz"; }; }; qtgraphicaleffects = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtgraphicaleffects-everywhere-src-5.12.3.tar.xz"; - sha256 = "772c98a009cc82ac290f868906c5aa719e4608ef3c5905d69ef7402b15924a73"; - name = "qtgraphicaleffects-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtgraphicaleffects-everywhere-src-5.12.4.tar.xz"; + sha256 = "0bc38b168fa724411984525173d667aa47076c8cbd4eeb791d0da7fe4b9bdf73"; + name = "qtgraphicaleffects-everywhere-src-5.12.4.tar.xz"; }; }; qtimageformats = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtimageformats-everywhere-src-5.12.3.tar.xz"; - sha256 = "db5a9e784f9c327c1e6830b1550311024cc91202d3b8dde82cd0944164298be2"; - name = "qtimageformats-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtimageformats-everywhere-src-5.12.4.tar.xz"; + sha256 = "2dee25c3eea90d172cbd40f41450153322b902da1daa7d2370a55124b2307bb3"; + name = "qtimageformats-everywhere-src-5.12.4.tar.xz"; }; }; qtlocation = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtlocation-everywhere-src-5.12.3.tar.xz"; - sha256 = "52d589be2852ada0c000b06cc411b61e521cd0797470be567fd1625bcc9d75c6"; - name = "qtlocation-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtlocation-everywhere-src-5.12.4.tar.xz"; + sha256 = "127b40bd7679fead3fb98f4c9c1d71dde9d6d416e90a6000129b61a5f128b3a0"; + name = "qtlocation-everywhere-src-5.12.4.tar.xz"; }; }; qtmacextras = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtmacextras-everywhere-src-5.12.3.tar.xz"; - sha256 = "38dedd29d07ea9e4e92a7ef28f9e03c06cf9a1525aee4f8084310c519f5b47ed"; - name = "qtmacextras-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtmacextras-everywhere-src-5.12.4.tar.xz"; + sha256 = "3ea0b94f9b63e801f2ddafa2a908002d9529a3c65021d261627d21e07454acde"; + name = "qtmacextras-everywhere-src-5.12.4.tar.xz"; }; }; qtmultimedia = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtmultimedia-everywhere-src-5.12.3.tar.xz"; - sha256 = "a30beeb37fb284d93522e29c01fb8d12726f40e9248e80b70b1f8ab60197a301"; - name = "qtmultimedia-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtmultimedia-everywhere-src-5.12.4.tar.xz"; + sha256 = "7c0759ab6fca2480b10b71a35beeffe0b847adeff5af94eacd1a4531d033423d"; + name = "qtmultimedia-everywhere-src-5.12.4.tar.xz"; }; }; qtnetworkauth = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtnetworkauth-everywhere-src-5.12.3.tar.xz"; - sha256 = "dd6bf334be29fb82adaeecb184779328b4ad33a069528b9954d9c07f2d889332"; - name = "qtnetworkauth-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtnetworkauth-everywhere-src-5.12.4.tar.xz"; + sha256 = "e501eb46b8405a2b7db9fe90a1c224cf6676a07dc22c0662317ffe3dee1dbf55"; + name = "qtnetworkauth-everywhere-src-5.12.4.tar.xz"; }; }; qtpurchasing = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtpurchasing-everywhere-src-5.12.3.tar.xz"; - sha256 = "a848f1e1022af38571f5ab0c4ec4b904c12fa6ef19154d44abbcaeb35156753e"; - name = "qtpurchasing-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtpurchasing-everywhere-src-5.12.4.tar.xz"; + sha256 = "7804a111043d0e8d6d81a0d0ae465ce2c36eca73f2774ccb5fa7be8670211672"; + name = "qtpurchasing-everywhere-src-5.12.4.tar.xz"; }; }; qtquickcontrols = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtquickcontrols-everywhere-src-5.12.3.tar.xz"; - sha256 = "68ae03b35eaa44a24c3f663b842252053c9f2b00b18841fd39ff7d2150986f46"; - name = "qtquickcontrols-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtquickcontrols-everywhere-src-5.12.4.tar.xz"; + sha256 = "32d4c2505337c67b0bac26d7f565ec8fabdc616e61247e98674820769dda9858"; + name = "qtquickcontrols-everywhere-src-5.12.4.tar.xz"; }; }; qtquickcontrols2 = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtquickcontrols2-everywhere-src-5.12.3.tar.xz"; - sha256 = "e855e8369c3cb5a2ebcd2028a2a195ba73945fd9d5bc26134706c2fa14e99b3a"; - name = "qtquickcontrols2-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtquickcontrols2-everywhere-src-5.12.4.tar.xz"; + sha256 = "9a447eed38bc8c7d7be7bc407317f58940377c077ddca74c9a641b1ee6200331"; + name = "qtquickcontrols2-everywhere-src-5.12.4.tar.xz"; }; }; qtremoteobjects = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtremoteobjects-everywhere-src-5.12.3.tar.xz"; - sha256 = "3475a409127739930e0bf833cea5f7f605adc66ab25fac39b72ce4bf3039cc42"; - name = "qtremoteobjects-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtremoteobjects-everywhere-src-5.12.4.tar.xz"; + sha256 = "54dd0c782abff90bf0608771c2e90b36073d9bd8d6c61706a2873bb7c317f413"; + name = "qtremoteobjects-everywhere-src-5.12.4.tar.xz"; }; }; qtscript = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtscript-everywhere-src-5.12.3.tar.xz"; - sha256 = "0f37bf032a2370bd08667aad053f5a57717ea49596c16bf6cfb32b0d6e5c1f9e"; - name = "qtscript-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtscript-everywhere-src-5.12.4.tar.xz"; + sha256 = "7adb3fe77638c7a6f2a26bca850b0ff54f5fb7e5561d2e4141d14a84305c2b6a"; + name = "qtscript-everywhere-src-5.12.4.tar.xz"; }; }; qtscxml = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtscxml-everywhere-src-5.12.3.tar.xz"; - sha256 = "70c4b1f8e23560cf54e69aeb3ded4078434e6f78e1b9573fbad1ddace5fc4b19"; - name = "qtscxml-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtscxml-everywhere-src-5.12.4.tar.xz"; + sha256 = "696fb72a62018151275fe589fc80cb160d2becab9a3254321d40e2e11a0ad4f8"; + name = "qtscxml-everywhere-src-5.12.4.tar.xz"; }; }; qtsensors = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtsensors-everywhere-src-5.12.3.tar.xz"; - sha256 = "7f63fedf60fdf110a3fc529568c7226d7acd59cc5eaee908f4d5a969e34005fc"; - name = "qtsensors-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtsensors-everywhere-src-5.12.4.tar.xz"; + sha256 = "95873c7ea5960008d6eb41368ca64d68fbd05594ca8c2cd848b1612fc4aec0a9"; + name = "qtsensors-everywhere-src-5.12.4.tar.xz"; }; }; qtserialbus = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtserialbus-everywhere-src-5.12.3.tar.xz"; - sha256 = "792cd2d411d2ebd737f5d09580f8db479cd35f2f7e7cedb4412075ef20fcfe4d"; - name = "qtserialbus-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtserialbus-everywhere-src-5.12.4.tar.xz"; + sha256 = "69d56905f43ee13e670750e8f46d373835fae81d6343baa7c4004d2a2c6311fc"; + name = "qtserialbus-everywhere-src-5.12.4.tar.xz"; }; }; qtserialport = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtserialport-everywhere-src-5.12.3.tar.xz"; - sha256 = "1faf7df4a1f9028bef1ce79330badb4e5cbbba9f717c53cafc5aea41eed1de51"; - name = "qtserialport-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtserialport-everywhere-src-5.12.4.tar.xz"; + sha256 = "bf487df8a9fb2eddf103842b57a75b17ef4c498ee40306ae9997017c82b0ad39"; + name = "qtserialport-everywhere-src-5.12.4.tar.xz"; }; }; qtspeech = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtspeech-everywhere-src-5.12.3.tar.xz"; - sha256 = "ed211822765744553fb5abeb97058420668b18a50d985061d949a0e068ee64f5"; - name = "qtspeech-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtspeech-everywhere-src-5.12.4.tar.xz"; + sha256 = "2ff9660fb3f5663c9161f491d1a304db62691720136ae22c145ef6a1c94b90ec"; + name = "qtspeech-everywhere-src-5.12.4.tar.xz"; }; }; qtsvg = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtsvg-everywhere-src-5.12.3.tar.xz"; - sha256 = "f666438dbf6816b7534e539b95e3fa4405f11d7e2e2bbcde34f2db5ae0f27dc2"; - name = "qtsvg-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtsvg-everywhere-src-5.12.4.tar.xz"; + sha256 = "110812515a73c650e5ebc41305d9a243dadeb21f485aaed773e394dd84ce0d04"; + name = "qtsvg-everywhere-src-5.12.4.tar.xz"; }; }; qttools = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qttools-everywhere-src-5.12.3.tar.xz"; - sha256 = "c9e92d2f0d369e44bb1a60e9fa6d970f8d9893d653212305e04be5e6daec2cd8"; - name = "qttools-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qttools-everywhere-src-5.12.4.tar.xz"; + sha256 = "3b0e353860a9c0cd4db9eeae5f94fef8811ed7d107e3e5e97e4a557f61bd6eb6"; + name = "qttools-everywhere-src-5.12.4.tar.xz"; }; }; qttranslations = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qttranslations-everywhere-src-5.12.3.tar.xz"; - sha256 = "eefcec0a91c302548f9d948a138b8ec77d78570ce818931bd8475b1bff1205ca"; - name = "qttranslations-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qttranslations-everywhere-src-5.12.4.tar.xz"; + sha256 = "ab8dd55f5ca869cab51c3a6ce0888f854b96dc03c7f25d2bd3d2c50314ab60fb"; + name = "qttranslations-everywhere-src-5.12.4.tar.xz"; }; }; qtvirtualkeyboard = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtvirtualkeyboard-everywhere-src-5.12.3.tar.xz"; - sha256 = "7b83af4527310de4ab81146622f3a46677daabf05556d0e33a2e25ca2aa13b22"; - name = "qtvirtualkeyboard-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtvirtualkeyboard-everywhere-src-5.12.4.tar.xz"; + sha256 = "33ac0356f916995fe5a91582e12b4c4f730c705808ea3c14e75c6e350e8131e6"; + name = "qtvirtualkeyboard-everywhere-src-5.12.4.tar.xz"; }; }; qtwayland = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwayland-everywhere-src-5.12.3.tar.xz"; - sha256 = "f0b45ad84180730e2d5a1249eb20c6357869b4b78f45eb266c2f2b17f77d86ff"; - name = "qtwayland-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwayland-everywhere-src-5.12.4.tar.xz"; + sha256 = "2fade959c3927687134c597d85c12ba1af22129a60ab326c2dc77a648e74e6b7"; + name = "qtwayland-everywhere-src-5.12.4.tar.xz"; }; }; qtwebchannel = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebchannel-everywhere-src-5.12.3.tar.xz"; - sha256 = "72d1620bcc94e14caa91ddf344c84cd1288aa9479e00b1bb3b5e51f92efe088a"; - name = "qtwebchannel-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebchannel-everywhere-src-5.12.4.tar.xz"; + sha256 = "ab571a1b699e61a86be1a6b8d6ffd998d431c4850cc27e9a21f81fa5923bfdb7"; + name = "qtwebchannel-everywhere-src-5.12.4.tar.xz"; }; }; qtwebengine = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebengine-everywhere-src-5.12.3.tar.xz"; - sha256 = "3ff3bac12d75aa0f3fd993bb7077fe411f7b0e6a3993af6f8b039d48e3dc4317"; - name = "qtwebengine-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebengine-everywhere-src-5.12.4.tar.xz"; + sha256 = "fccf5c945412c19c3805323211b504ac8becbf191c638a2dc85ec91abfb1b331"; + name = "qtwebengine-everywhere-src-5.12.4.tar.xz"; }; }; qtwebglplugin = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebglplugin-everywhere-src-5.12.3.tar.xz"; - sha256 = "23da63013101e97c4e663bb4f6dbb1c7b4386679c634680d3b8d79bcc59d26b3"; - name = "qtwebglplugin-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebglplugin-everywhere-src-5.12.4.tar.xz"; + sha256 = "756fa09893618029bb56605be3ac5756a1834255fb223f8e4b7de205846d3266"; + name = "qtwebglplugin-everywhere-src-5.12.4.tar.xz"; }; }; qtwebsockets = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebsockets-everywhere-src-5.12.3.tar.xz"; - sha256 = "258883225c5e089015c4036f31019aa8f5bb013ecd8eecd193342e606319a577"; - name = "qtwebsockets-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebsockets-everywhere-src-5.12.4.tar.xz"; + sha256 = "b471eda2f486d21c51fc3bc53bb8844022117e746d5f15c5eabb82cd37eb2abe"; + name = "qtwebsockets-everywhere-src-5.12.4.tar.xz"; }; }; qtwebview = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwebview-everywhere-src-5.12.3.tar.xz"; - sha256 = "f904e7fd7e755527e5bc4633c6f7c144065a3ffea473bf01fffb730385a983c5"; - name = "qtwebview-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwebview-everywhere-src-5.12.4.tar.xz"; + sha256 = "1f244c6b774dd9d03d3c5cafe877381900b50a2775cef6487c8bb66e32ab5a5d"; + name = "qtwebview-everywhere-src-5.12.4.tar.xz"; }; }; qtwinextras = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtwinextras-everywhere-src-5.12.3.tar.xz"; - sha256 = "2b6319f7dd19fc19b028685c163a69f0a10e610d7554411d4660c1b5e42ada3b"; - name = "qtwinextras-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtwinextras-everywhere-src-5.12.4.tar.xz"; + sha256 = "f6e0172582a499d5e50c51877552d1a3bff66546d9a02e5754100a51b192973f"; + name = "qtwinextras-everywhere-src-5.12.4.tar.xz"; }; }; qtx11extras = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtx11extras-everywhere-src-5.12.3.tar.xz"; - sha256 = "85e3ae5177970c2d8656226d7535d0dff5764c100e55a79a59161d80754ba613"; - name = "qtx11extras-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtx11extras-everywhere-src-5.12.4.tar.xz"; + sha256 = "49cc009eaf4a01ca7dbe12651ef39de9a43860acb674aec372e70b209f9bae1e"; + name = "qtx11extras-everywhere-src-5.12.4.tar.xz"; }; }; qtxmlpatterns = { - version = "5.12.3"; + version = "5.12.4"; src = fetchurl { - url = "${mirror}/official_releases/qt/5.12/5.12.3/submodules/qtxmlpatterns-everywhere-src-5.12.3.tar.xz"; - sha256 = "e0b98e7c92cd791a9b354d090788347db78f14c47579384fe22d0b650c1d8a61"; - name = "qtxmlpatterns-everywhere-src-5.12.3.tar.xz"; + url = "${mirror}/official_releases/qt/5.12/5.12.4/submodules/qtxmlpatterns-everywhere-src-5.12.4.tar.xz"; + sha256 = "0bea1719bb948f65cbed4375cc3e997a6464f35d25b631bafbd7a3161f8f5666"; + name = "qtxmlpatterns-everywhere-src-5.12.4.tar.xz"; }; }; } diff --git a/pkgs/development/libraries/qt-5/5.9/default.nix b/pkgs/development/libraries/qt-5/5.9/default.nix index a872f212ff71..8854ed547001 100644 --- a/pkgs/development/libraries/qt-5/5.9/default.nix +++ b/pkgs/development/libraries/qt-5/5.9/default.nix @@ -53,9 +53,18 @@ let ]; qtserialport = [ ./qtserialport.patch ]; qttools = [ ./qttools.patch ]; - qtwebengine = [ ./qtwebengine-no-build-skip.patch ] - ++ optional stdenv.cc.isClang ./qtwebengine-clang-fix.patch + qtwebengine = [ + ./qtwebengine-no-build-skip.patch + # https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/707 + # https://bugreports.qt.io/browse/QTBUG-77037 + (fetchpatch { + name = "fix-build-with-pulseaudio-13.0.patch"; + url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/qtbug-77037-workaround.patch?h=packages/qt5-webengine&id=fc77d6b3d5ec74e421b58f199efceb2593cbf951"; + sha256 = "1gv733qfdn9746nbqqxzyjx4ijjqkkb7zb71nxax49nna5bri3am"; + }) + ] ++ optional stdenv.cc.isClang ./qtwebengine-clang-fix.patch ++ optional stdenv.isDarwin ./qtwebengine-darwin-no-platform-check.patch; + qtwebkit = [ ./qtwebkit.patch ]; qtvirtualkeyboard = [ (fetchpatch { @@ -154,9 +163,7 @@ let qmake = makeSetupHook { deps = [ self.qtbase.dev ]; substitutions = { - inherit (stdenv) isDarwin; - qtbase_dev = self.qtbase.dev; - fix_qt_builtin_paths = ../hooks/fix-qt-builtin-paths.sh; + fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh; }; } ../hooks/qmake-hook.sh; diff --git a/pkgs/development/libraries/qt-5/hooks/fix-qmake-libtool.sh b/pkgs/development/libraries/qt-5/hooks/fix-qmake-libtool.sh new file mode 100644 index 000000000000..5acaeb824466 --- /dev/null +++ b/pkgs/development/libraries/qt-5/hooks/fix-qmake-libtool.sh @@ -0,0 +1,14 @@ +# Fix libtool libraries generated by qmake. +# qmake started inserting filenames of shared objects instead of the appropriate +# linker flags. fixQmakeLibtool searches for broken libtool libraries and +# replaces the filenames with the linker flags that should have been there. +fixQmakeLibtool() { + if [ -d "$1" ]; then + find "$1" -name '*.la' | while read la; do + sed -i "$la" \ + -e '/^dependency_libs/ s,\(/[^ ]\+\)/lib\([^/ ]\+\)\.so,-L\1 -l\2,g' + done + fi +} + +fixupOutputHooks+=('fixQmakeLibtool $prefix') diff --git a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh index eef2c7d24dfc..c3373983e325 100644 --- a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh +++ b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh @@ -1,14 +1,27 @@ +. @fix_qmake_libtool@ + +qmakeFlags=( $qmakeFlags ) + +qmakePrePhase() { + qmakeFlags=( \ + "PREFIX=$out" \ + "NIX_OUTPUT_OUT=$out" \ + "NIX_OUTPUT_DEV=${!outputDev}" \ + "NIX_OUTPUT_BIN=${!outputBin}" \ + "NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?}" \ + "NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?}" \ + "NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?}" \ + "${qmakeFlags[@]}" \ + ) +} +prePhases+=" qmakePrePhase" + qmakeConfigurePhase() { runHook preConfigure - qmake PREFIX=$out \ - NIX_OUTPUT_OUT=$out \ - NIX_OUTPUT_DEV=${!outputDev} \ - NIX_OUTPUT_BIN=${!outputBin} \ - NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?} \ - NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?} \ - NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?} \ - $qmakeFlags + echo "QMAKEPATH=$QMAKEPATH" + echo qmake "${qmakeFlags[@]}" + qmake "${qmakeFlags[@]}" if ! [[ -v enableParallelBuilding ]]; then enableParallelBuilding=1 diff --git a/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh b/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh index b09cf5f46c9c..c320a7974471 100644 --- a/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh +++ b/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh @@ -1 +1 @@ -qmakeFlags="$qmakeFlags${qmakeFlags:+ }QMAKE_LRELEASE=@dev@/bin/lrelease" +qmakeFlags+=( "QMAKE_LRELEASE=@dev@/bin/lrelease" ) diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix index 8119513618b2..3a0c9085f540 100644 --- a/pkgs/development/libraries/qt-5/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix @@ -31,6 +31,8 @@ assert withGtk3 -> gtk3 != null; let compareVersion = v: builtins.compareVersions version v; + qmakeCacheName = + if compareVersion "5.12.4" < 0 then ".qmake.cache" else ".qmake.stash"; in stdenv.mkDerivation { @@ -47,7 +49,7 @@ stdenv.mkDerivation { # Image formats libjpeg libpng libtiff - (if compareVersion "5.9.0" >= 0 then pcre2 else pcre16) + (if compareVersion "5.9.0" < 0 then pcre16 else pcre2) ] ++ ( if stdenv.isDarwin @@ -98,6 +100,7 @@ stdenv.mkDerivation { . "$fix_qt_builtin_paths" . "$fix_qt_module_paths" . ${../hooks/move-qt-dev-tools.sh} + . ${../hooks/fix-qmake-libtool.sh} ''; postPatch = @@ -171,8 +174,17 @@ stdenv.mkDerivation { -qmldir $out/$qtQmlPrefix \ -docdir $out/$qtDocPrefix" - createQmakeCache() { - cat >>"$1" <&2 "qmakeCacheInjectNixOutputs: WARNING: $cache does not exist" + fi + cat >>"$cache" < python3 != null; @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnu/gdb/${basename}.tar.xz"; - sha256 = "0bnpzz0rl672xg5547q5qck2sxi6cnyixmk8bbb4gifw17ipwbw0"; + sha256 = "1i2pjwaafrlz7wqm40b4znr77ai32rjsxkpl2az38yyarpbv8m8y"; }; postPatch = if stdenv.isDarwin then '' @@ -42,7 +42,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig texinfo perl setupDebugInfoDirs ]; - buildInputs = [ ncurses readline gmp mpfr expat zlib guile ] + buildInputs = [ ncurses readline gmp mpfr expat libipt zlib guile ] ++ stdenv.lib.optional pythonSupport python3 ++ stdenv.lib.optional doCheck dejagnu; diff --git a/pkgs/development/tools/misc/gtkdialog/default.nix b/pkgs/development/tools/misc/gtkdialog/default.nix index 02b4d1557678..efb61c4730fd 100644 --- a/pkgs/development/tools/misc/gtkdialog/default.nix +++ b/pkgs/development/tools/misc/gtkdialog/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, gtk2, pkgconfig, hicolor-icon-theme }: +{stdenv, fetchurl, gtk2, pkgconfig }: stdenv.mkDerivation { name = "gtkdialog-0.8.3"; @@ -9,7 +9,7 @@ stdenv.mkDerivation { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ gtk2 hicolor-icon-theme ]; + buildInputs = [ gtk2 ]; meta = { homepage = https://code.google.com/archive/p/gtkdialog/; diff --git a/pkgs/development/tools/parsing/bison/3.x.nix b/pkgs/development/tools/parsing/bison/3.x.nix index bbcecae8f04f..5382ec421b7e 100644 --- a/pkgs/development/tools/parsing/bison/3.x.nix +++ b/pkgs/development/tools/parsing/bison/3.x.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "bison"; - version = "3.4.1"; + version = "3.4.2"; src = fetchurl { url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz"; - sha256 = "15ah05gharrzcxs8q5pm9mli5dp5lw19nd95apzzmyqnqa4zq1vh"; + sha256 = "1kzsb6fmmpq00l2s55hyb4dbsmz8f3a64ria6354wlbx6ypj4fgz"; }; nativeBuildInputs = [ m4 perl ] ++ stdenv.lib.optional stdenv.isSunOS help2man; diff --git a/pkgs/development/web/nodejs/disable-libatomic-darwin.patch b/pkgs/development/web/nodejs/disable-libatomic-darwin.patch new file mode 100644 index 000000000000..d6ac38138b88 --- /dev/null +++ b/pkgs/development/web/nodejs/disable-libatomic-darwin.patch @@ -0,0 +1,11 @@ +--- a/node.gyp ++++ b/node.gyp +@@ -289,7 +289,7 @@ + '-Wl,-bnoerrmsg', + ], + }], +- ['(OS=="linux" or OS=="mac") and llvm_version!=0', { ++ ['OS=="linux" and llvm_version!=0', { + 'libraries': ['-latomic'], + }], + ], diff --git a/pkgs/development/web/nodejs/v12.nix b/pkgs/development/web/nodejs/v12.nix index ae74764384c6..8e617e5e6583 100644 --- a/pkgs/development/web/nodejs/v12.nix +++ b/pkgs/development/web/nodejs/v12.nix @@ -1,10 +1,12 @@ -{ callPackage, openssl, icu, enableNpm ? true }: +{ stdenv, callPackage, openssl, icu, enableNpm ? true }: let buildNodejs = callPackage ./nodejs.nix { inherit openssl icu; }; in buildNodejs { inherit enableNpm; - version = "12.5.0"; - sha256 = "08haqs104lw44l92bxfii18sdn7y1k07cz3p0ni9bhw7kh4vf5c7"; + version = "12.10.0"; + sha256 = "1k9hxqs23c3sxpr843ix8nidlca8wn30x0sq998j47wjc1ybh595"; + + patches = stdenv.lib.optionals stdenv.isDarwin [ ./disable-libatomic-darwin.patch ]; } diff --git a/pkgs/games/gscrabble/default.nix b/pkgs/games/gscrabble/default.nix index f9dd851af8e9..7e89704324f3 100644 --- a/pkgs/games/gscrabble/default.nix +++ b/pkgs/games/gscrabble/default.nix @@ -1,6 +1,6 @@ { stdenv, buildPythonApplication, fetchFromGitHub , gtk3, wrapGAppsHook, gst_all_1, gobject-introspection -, python3Packages, gnome3, hicolor-icon-theme }: +, python3Packages, gnome3 }: buildPythonApplication { pname = "gscrabble"; @@ -19,7 +19,7 @@ buildPythonApplication { buildInputs = with gst_all_1; [ gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad - hicolor-icon-theme gnome3.adwaita-icon-theme gtk3 gobject-introspection + gnome3.adwaita-icon-theme gtk3 gobject-introspection ]; propagatedBuildInputs = with python3Packages; [ gst-python pygobject3 ]; diff --git a/pkgs/misc/cups/cups-pk-helper.nix b/pkgs/misc/cups/cups-pk-helper.nix index 5e7596032b3d..6534d300e824 100644 --- a/pkgs/misc/cups/cups-pk-helper.nix +++ b/pkgs/misc/cups/cups-pk-helper.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, intltool, pkgconfig, glib, polkit, cups }: +{ stdenv, fetchurl, intltool, pkgconfig, glib, polkit, cups, fetchpatch }: stdenv.mkDerivation rec { version = "0.2.6"; @@ -12,6 +12,14 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig intltool ]; buildInputs = [ glib polkit cups ]; + patches = [ + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://gitlab.freedesktop.org/cups-pk-helper/cups-pk-helper/merge_requests/2.patch"; + sha256 = "1kamhr5kn8c1y0q8xbip0fgr7maf3dyddlvab4n0iypk7rwwikl0"; + }) + ]; + meta = with stdenv.lib; { description = "PolicyKit helper to configure cups with fine-grained privileges"; homepage = http://www.freedesktop.org/wiki/Software/cups-pk-helper/; diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix index 6e27fdb0a524..c7df3f333b65 100644 --- a/pkgs/misc/cups/default.nix +++ b/pkgs/misc/cups/default.nix @@ -48,6 +48,7 @@ stdenv.mkDerivation rec { ] ++ optionals stdenv.isLinux [ "--enable-dbus" "--enable-pam" + "--with-dbusdir=${placeholder "out"}/share/dbus-1" ] ++ optional (libusb != null) "--enable-libusb" ++ optional (gnutls != null) "--enable-ssl" ++ optional (avahi != null) "--enable-avahi" @@ -81,7 +82,6 @@ stdenv.mkDerivation rec { "STATEDIR=$(TMPDIR)/dummy" # Idem for /etc. "PAMDIR=$(out)/etc/pam.d" - "DBUSDIR=$(out)/etc/dbus-1" "XINETD=$(out)/etc/xinetd.d" "SERVERROOT=$(out)/etc/cups" # Idem for /usr. diff --git a/pkgs/os-specific/linux/bluez/default.nix b/pkgs/os-specific/linux/bluez/default.nix index be43d23d6115..cca3674bdd1c 100644 --- a/pkgs/os-specific/linux/bluez/default.nix +++ b/pkgs/os-specific/linux/bluez/default.nix @@ -48,12 +48,12 @@ stdenv.mkDerivation rec { "--enable-library" "--enable-cups" "--enable-pie" - "--with-dbusconfdir=$(out)/etc" - "--with-dbussystembusdir=$(out)/share/dbus-1/system-services" - "--with-dbussessionbusdir=$(out)/share/dbus-1/services" - "--with-systemdsystemunitdir=$(out)/etc/systemd/system" - "--with-systemduserunitdir=$(out)/etc/systemd/user" - "--with-udevdir=$(out)/lib/udev" + "--with-dbusconfdir=${placeholder "out"}/share" + "--with-dbussystembusdir=${placeholder "out"}/share/dbus-1/system-services" + "--with-dbussessionbusdir=${placeholder "out"}/share/dbus-1/services" + "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system" + "--with-systemduserunitdir=${placeholder "out"}/etc/systemd/user" + "--with-udevdir=${placeholder "out"}/lib/udev" ] ++ optional enableWiimote [ "--enable-wiimote" ] ++ optional enableMidi [ "--enable-midi" ] ++ optional enableSixaxis [ "--enable-sixaxis" ]); @@ -61,7 +61,7 @@ stdenv.mkDerivation rec { # Work around `make install' trying to create /var/lib/bluetooth. installFlags = "statedir=$(TMPDIR)/var/lib/bluetooth"; - makeFlags = "rulesdir=$(out)/lib/udev/rules.d"; + makeFlags = "rulesdir=${placeholder "out"}/lib/udev/rules.d"; postInstall = '' mkdir -p $test/{bin,test} diff --git a/pkgs/os-specific/linux/firmware/fwupd/default.nix b/pkgs/os-specific/linux/firmware/fwupd/default.nix index 75144799d014..f298073d11a4 100644 --- a/pkgs/os-specific/linux/firmware/fwupd/default.nix +++ b/pkgs/os-specific/linux/firmware/fwupd/default.nix @@ -2,6 +2,7 @@ { stdenv , fetchurl +, fetchpatch , substituteAll , gtk-doc , pkgconfig @@ -153,6 +154,11 @@ stdenv.mkDerivation rec { # needs a different set of modules than po/make-images inherit installedTestsPython; }) + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://github.com/fwupd/fwupd/commit/41a25be6f4b371c367904284e9251cd461ad5cfe.patch"; + sha256 = "0vv3x2pq5bpmg9c8ax5dsqcblw45n7jmzgw6p8h4asyjy57mzhaq"; + }) ]; postPatch = '' diff --git a/pkgs/os-specific/linux/intel-compute-runtime/default.nix b/pkgs/os-specific/linux/intel-compute-runtime/default.nix new file mode 100644 index 000000000000..5021d12acecd --- /dev/null +++ b/pkgs/os-specific/linux/intel-compute-runtime/default.nix @@ -0,0 +1,57 @@ +{ stdenv +, fetchFromGitHub +, patchelf +, cmake +, pkgconfig + +, intel-gmmlib +, intel-graphics-compiler +, libva +}: + +stdenv.mkDerivation rec { + pname = "intel-compute-runtime"; + version = "19.34.13959"; + + src = fetchFromGitHub { + owner = "intel"; + repo = "compute-runtime"; + rev = version; + sha256 = "1m54w5p5pilrkmlmqgvgrsm3d5dqfdr4jai5siq5ccsqj4gnv1wz"; + }; + + # Build script tries to write the ICD to /etc + patches = [ ./etc-dir.patch ]; + + nativeBuildInputs = [ cmake pkgconfig ]; + + buildInputs = [ intel-gmmlib intel-graphics-compiler libva ]; + + cmakeFlags = [ + "-DSKIP_UNIT_TESTS=1" + + "-DIGC_DIR=${intel-graphics-compiler}" + "-DETC_DIR=${placeholder "out"}/etc" + + # The install script assumes this path is relative to CMAKE_INSTALL_PREFIX + "-DCMAKE_INSTALL_LIBDIR=lib" + ]; + + postInstall = '' + # Avoid clash with intel-ocl + mv $out/etc/OpenCL/vendors/intel.icd $out/etc/OpenCL/vendors/intel-neo.icd + ''; + + postFixup = '' + patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ intel-gmmlib intel-graphics-compiler libva ]} \ + $out/lib/intel-opencl/libigdrcl.so + ''; + + meta = with stdenv.lib; { + homepage = https://github.com/intel/compute-runtime; + description = "Intel Graphics Compute Runtime for OpenCL. Replaces Beignet for Gen8 (Broadwell) and beyond."; + license = licenses.mit; + platforms = platforms.linux; + maintainers = with maintainers; [ gloaming ]; + }; +} diff --git a/pkgs/os-specific/linux/intel-compute-runtime/etc-dir.patch b/pkgs/os-specific/linux/intel-compute-runtime/etc-dir.patch new file mode 100644 index 000000000000..d9a80ffa6f97 --- /dev/null +++ b/pkgs/os-specific/linux/intel-compute-runtime/etc-dir.patch @@ -0,0 +1,15 @@ +diff --git a/package.cmake b/package.cmake +index 24960d5..e9a21e7 100644 +--- a/package.cmake ++++ b/package.cmake +@@ -24,7 +24,9 @@ if(UNIX) + + get_os_release_info(os_name os_version) + +- if("${os_name}" STREQUAL "clear-linux-os") ++ if(DEFINED ETC_DIR) ++ set(_dir_etc ${ETC_DIR}) ++ elseif("${os_name}" STREQUAL "clear-linux-os") + # clear-linux-os distribution avoids /etc for distribution defaults. + set(_dir_etc "/usr/share/defaults/etc") + else() diff --git a/pkgs/os-specific/linux/iptables/default.nix b/pkgs/os-specific/linux/iptables/default.nix index cf06ff353253..882c24057bbb 100644 --- a/pkgs/os-specific/linux/iptables/default.nix +++ b/pkgs/os-specific/linux/iptables/default.nix @@ -1,32 +1,48 @@ -{ stdenv, fetchurl, bison, flex, pkgconfig, pruneLibtoolFiles -, libnetfilter_conntrack, libnftnl, libmnl, libpcap }: +{ stdenv, fetchurl, pkgconfig, pruneLibtoolFiles, flex, bison +, libmnl, libnetfilter_conntrack, libnfnetlink, libnftnl, libpcap +, nftablesCompat ? false +}: + +with stdenv.lib; stdenv.mkDerivation rec { - pname = "iptables"; version = "1.8.3"; + pname = "iptables"; src = fetchurl { url = "https://www.netfilter.org/projects/${pname}/files/${pname}-${version}.tar.bz2"; sha256 = "106xkkg5crsscjlinxvqvprva23fwwqfgrzl8m2nn841841sqg52"; }; - nativeBuildInputs = [ bison flex pkgconfig pruneLibtoolFiles ]; + nativeBuildInputs = [ pkgconfig pruneLibtoolFiles flex bison ]; - buildInputs = [ libnetfilter_conntrack libnftnl libmnl libpcap ]; + buildInputs = [ libmnl libnetfilter_conntrack libnfnetlink libnftnl libpcap ]; preConfigure = '' export NIX_LDFLAGS="$NIX_LDFLAGS -lmnl -lnftnl" ''; configureFlags = [ - "--enable-devel" - "--enable-shared" "--enable-bpf-compiler" - ]; + "--enable-devel" + "--enable-libipq" + "--enable-nfsynproxy" + "--enable-shared" + ] ++ optional (!nftablesCompat) "--disable-nftables"; outputs = [ "out" "dev" ]; - meta = with stdenv.lib; { + postInstall = optional nftablesCompat '' + rm $out/sbin/{iptables,iptables-restore,iptables-save,ip6tables,ip6tables-restore,ip6tables-save} + ln -sv xtables-nft-multi $out/bin/iptables + ln -sv xtables-nft-multi $out/bin/iptables-restore + ln -sv xtables-nft-multi $out/bin/iptables-save + ln -sv xtables-nft-multi $out/bin/ip6tables + ln -sv xtables-nft-multi $out/bin/ip6tables-restore + ln -sv xtables-nft-multi $out/bin/ip6tables-save + ''; + + meta = { description = "A program to configure the Linux IP packet filtering ruleset"; homepage = https://www.netfilter.org/projects/iptables/index.html; platforms = platforms.linux; diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 3b409f15abaa..734509dfd564 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -42,6 +42,8 @@ let CRASH_DUMP = option no; # Easier debugging of NFS issues. SUNRPC_DEBUG = yes; + # Provide access to tunables like sched_migration_cost_ns + SCHED_DEBUG = yes; }; power-management = { @@ -149,6 +151,13 @@ let NF_TABLES_ARP = whenAtLeast "4.17" yes; NF_TABLES_IPV6 = whenAtLeast "4.17" yes; NF_TABLES_BRIDGE = whenBetween "4.17" "5.3" yes; + + # needed for ss + INET_DIAG = yes; + INET_TCP_DIAG = module; + INET_UDP_DIAG = module; + INET_RAW_DIAG = whenAtLeast "4.14" module; + INET_DIAG_DESTROY = whenAtLeast "4.9" yes; }; wireless = { diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix index a7ed32ab6964..e4c05e361b48 100644 --- a/pkgs/os-specific/linux/systemd/default.nix +++ b/pkgs/os-specific/linux/systemd/default.nix @@ -3,7 +3,7 @@ , glib, kbd, libxslt, coreutils, libgcrypt, libgpgerror, libidn2, libapparmor , audit, lz4, bzip2, libmicrohttpd, pcre2 , linuxHeaders ? stdenv.cc.libc.linuxHeaders -, iptables, gnu-efi +, iptables, gnu-efi, bashInteractive , gettext, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_45 , ninja, meson, python3Packages, glibcLocales , patchelf @@ -24,8 +24,8 @@ stdenv.mkDerivation { src = fetchFromGitHub { owner = "NixOS"; repo = "systemd"; - rev = "7019836a26ebdc1ba20c03d06dbb3a613833bd0f"; - sha256 = "0ywaq5jfy177k4q5hwr43v66sz62l1bqhgyxs2vk9m1d5kvrjwk6"; + rev = "ccec67cab6c0fda85a1762eee7aeea422a0dc15e"; + sha256 = "12nq2ah33amhyfma464a4ssf90wh2ai8c7w55j381cks8jliny40"; }; outputs = [ "out" "lib" "man" "dev" ]; @@ -53,7 +53,7 @@ stdenv.mkDerivation { #dontAddPrefix = true; mesonFlags = [ - "-Ddbuspolicydir=${placeholder "out"}/etc/dbus-1/system.d" + "-Ddbuspolicydir=${placeholder "out"}/share/dbus-1/system.d" "-Ddbussessionservicedir=${placeholder "out"}/share/dbus-1/services" "-Ddbussystemservicedir=${placeholder "out"}/share/dbus-1/system-services" "-Dpamconfdir=${placeholder "out"}/etc/pam.d" @@ -64,6 +64,7 @@ stdenv.mkDerivation { "-Dloadkeys-path=${kbd}/bin/loadkeys" "-Dsetfont-path=${kbd}/bin/setfont" "-Dtty-gid=3" # tty in NixOS has gid 3 + "-Ddebug-shell=${bashInteractive}/bin/bash" # while we do not run tests we should also not build them. Removes about 600 targets "-Dtests=false" "-Dlz4=true" @@ -228,6 +229,6 @@ stdenv.mkDerivation { license = licenses.lgpl21Plus; platforms = platforms.linux; priority = 10; - maintainers = with maintainers; [ eelco andir ]; + maintainers = with maintainers; [ eelco andir mic92 ]; }; } diff --git a/pkgs/os-specific/linux/wpa_supplicant/default.nix b/pkgs/os-specific/linux/wpa_supplicant/default.nix index 69525c92ede9..f54366201fff 100644 --- a/pkgs/os-specific/linux/wpa_supplicant/default.nix +++ b/pkgs/os-specific/linux/wpa_supplicant/default.nix @@ -88,7 +88,7 @@ stdenv.mkDerivation rec { mkdir -p $out/etc/dbus-1/system.d $out/share/dbus-1/system-services $out/etc/systemd/system cp -v "dbus/"*service $out/share/dbus-1/system-services sed -e "s@/sbin/wpa_supplicant@$out&@" -i "$out/share/dbus-1/system-services/"* - cp -v dbus/dbus-wpa_supplicant.conf $out/etc/dbus-1/system.d + cp -v dbus/dbus-wpa_supplicant.conf $out/share/dbus-1/system.d cp -v "systemd/"*.service $out/etc/systemd/system rm $out/share/man/man8/wpa_priv.8 install -Dm444 wpa_supplicant.conf $out/share/doc/wpa_supplicant/wpa_supplicant.conf.example diff --git a/pkgs/servers/pulseaudio/default.nix b/pkgs/servers/pulseaudio/default.nix index 13b5d4c3c9f0..2ce78a048c45 100644 --- a/pkgs/servers/pulseaudio/default.nix +++ b/pkgs/servers/pulseaudio/default.nix @@ -1,5 +1,5 @@ -{ lib, stdenv, fetchurl, fetchpatch, pkgconfig, intltool, autoreconfHook -, libsndfile, libtool, makeWrapper +{ lib, stdenv, fetchurl, pkgconfig, autoreconfHook +, libsndfile, libtool, makeWrapper, perlPackages , xorg, libcap, alsaLib, glib, gnome3 , avahi, libjack2, libasyncns, lirc, dbus , sbc, bluez5, udev, openssl, fftwFloat @@ -31,16 +31,16 @@ stdenv.mkDerivation rec { name = "${if libOnly then "lib" else ""}pulseaudio-${version}"; - version = "12.2"; + version = "13.0"; src = fetchurl { url = "http://freedesktop.org/software/pulseaudio/releases/pulseaudio-${version}.tar.xz"; - sha256 = "0ma0p8iry7fil7qb4pm2nx2pm65kq9hk9xc4r5wkf14nqbzni5l0"; + sha256 = "0mw0ybrqj7hvf8lqs5gjzip464hfnixw453lr0mqzlng3b5266wn"; }; outputs = [ "out" "dev" ]; - nativeBuildInputs = [ pkgconfig intltool autoreconfHook makeWrapper ]; + nativeBuildInputs = [ pkgconfig autoreconfHook makeWrapper perlPackages.perl perlPackages.XMLParser ]; propagatedBuildInputs = lib.optionals stdenv.isLinux [ libcap ]; @@ -61,25 +61,10 @@ stdenv.mkDerivation rec { ++ lib.optional zeroconfSupport avahi ); - patches = [ - # The following two patches fix alsalib headers move, remove after the next release - (fetchpatch { - name = "alsa-asoundlib-include.patch"; - url = "https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/993d3fd89e5611997f1e165bf03edefb0204b0a4.patch"; - sha256 = "17icnf8026947j1dqw4k16f91vy6zyg7q41zv2j6pxh9fncb1s71"; - }) - (fetchpatch { - name = "alsa-use-case-include.patch"; - url = "https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/b89d33bb182c42db5ad3987b0e91b7bf62f421e8.patch"; - sha256 = "0jccpc0dgkb0v4xrkyca2pm2k4i6pvahs9bq4hbg34173p23g5nb"; - }) - ]; - - preConfigure = '' - # Performs and autoreconf - export NOCONFIGURE="yes" + autoreconfPhase = '' + # Performs an autoreconf patchShebangs bootstrap.sh - ./bootstrap.sh + NOCONFIGURE=1 ./bootstrap.sh # Move the udev rules under $(prefix). sed -i "src/Makefile.in" \ @@ -99,11 +84,11 @@ stdenv.mkDerivation rec { [ "--localstatedir=/var" "--sysconfdir=/etc" "--with-access-group=audio" - "--with-bash-completion-dir=\${out}/share/bash-completions/completions" + "--with-bash-completion-dir=${placeholder "out"}/share/bash-completions/completions" ] ++ lib.optional (jackaudioSupport && !libOnly) "--enable-jack" ++ lib.optional stdenv.isDarwin "--with-mac-sysroot=/" - ++ lib.optional (stdenv.isLinux && useSystemd) "--with-systemduserunitdir=\${out}/lib/systemd/user"; + ++ lib.optional (stdenv.isLinux && useSystemd) "--with-systemduserunitdir=${placeholder "out"}/lib/systemd/user"; enableParallelBuilding = true; @@ -115,8 +100,8 @@ stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-I/usr/include"; installFlags = - [ "sysconfdir=$(out)/etc" - "pulseconfdir=$(out)/etc/pulse" + [ "sysconfdir=${placeholder "out"}/etc" + "pulseconfdir=${placeholder "out"}/etc/pulse" ]; postInstall = lib.optionalString libOnly '' diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 10cbca832b40..e6a94daee106 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -79,6 +79,13 @@ self: super: libX11 = super.libX11.overrideAttrs (attrs: { outputs = [ "out" "dev" "man" ]; + patches = [ + # Fixes an issue that happens when cross-compiling for us. + (fetchpatch { + url = "https://cgit.freedesktop.org/xorg/lib/libX11/patch/?id=0327c427d62f671eced067c6d9b69f4e216a8cac"; + sha256 = "11k2mx56hjgw886zf1cdf2nhv7052d5rggimfshg6lq20i38vpza"; + }) + ]; configureFlags = attrs.configureFlags or [] ++ malloc0ReturnsNullCrossFlag; depsBuildBuild = [ buildPackages.stdenv.cc ]; diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 311292169ecd..0962a1ec2fc0 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -17,7 +17,8 @@ fi # code). The hooks for are the shell function or variable # , and the values of the shell array ‘Hooks’. runHook() { - local oldOpts="$(shopt -po nounset)" + local oldOpts="-u" + shopt -qo nounset || oldOpts="+u" set -u # May be called from elsewhere, so do `set -u`. local hookName="$1" @@ -32,7 +33,7 @@ runHook() { set -u # To balance `_eval` done - eval "${oldOpts}" + set "$oldOpts" return 0 } @@ -40,7 +41,8 @@ runHook() { # Run all hooks with the specified name, until one succeeds (returns a # zero exit code). If none succeed, return a non-zero exit code. runOneHook() { - local oldOpts="$(shopt -po nounset)" + local oldOpts="-u" + shopt -qo nounset || oldOpts="+u" set -u # May be called from elsewhere, so do `set -u`. local hookName="$1" @@ -57,7 +59,7 @@ runOneHook() { set -u # To balance `_eval` done - eval "${oldOpts}" + set "$oldOpts" return "$ret" } @@ -71,21 +73,18 @@ _callImplicitHook() { set -u local def="$1" local hookName="$2" - case "$(type -t "$hookName")" in - (function|alias|builtin) - set +u - "$hookName";; - (file) - set +u - source "$hookName";; - (keyword) :;; - (*) if [ -z "${!hookName:-}" ]; then - return "$def"; - else - set +u - eval "${!hookName}" - fi;; - esac + if declare -F "$hookName" > /dev/null; then + set +u + "$hookName" + elif type -p "$hookName" > /dev/null; then + set +u + source "$hookName" + elif [ -n "${!hookName:-}" ]; then + set +u + eval "${!hookName}" + else + return "$def" + fi # `_eval` expects hook to need nounset disable and leave it # disabled anyways, so Ok to to delegate. The alternative of a # return trap is no good because it would affect nested returns. @@ -96,7 +95,7 @@ _callImplicitHook() { # hooks exits the hook, not the caller. Also will only pass args if # command can take them _eval() { - if [ "$(type -t "$1")" = function ]; then + if declare -F "$1" > /dev/null 2>&1; then set +u "$@" # including args else @@ -212,18 +211,6 @@ isELF() { if [ "$magic" = $'\177ELF' ]; then return 0; else return 1; fi } -# Return success if the specified file is an ELF object -# and its e_type is ET_EXEC (executable file) -isELFExec() { - grep -ao -P '^\177ELF.{11}\x00\x02' "$1" >/dev/null -} - -# Return success if the specified file is an ELF object -# and its e_type is ET_DYN (shared object file) -isELFDyn() { - grep -ao -P '^\177ELF.{11}\x00\x03' "$1" >/dev/null -} - # Return success if the specified file is a script (i.e. starts with # "#!"). isScript() { @@ -401,6 +388,7 @@ findInputs() { # The current package's host and target offset together # provide a <=-preserving homomorphism from the relative # offsets to current offset + local -i mapOffsetResult function mapOffset() { local -ri inputOffset="$1" if (( "$inputOffset" <= 0 )); then @@ -408,7 +396,7 @@ findInputs() { else local -ri outputOffset="$inputOffset - 1 + $targetOffset" fi - echo "$outputOffset" + mapOffsetResult="$outputOffset" } # Host offset relative to that of the package whose immediate @@ -420,8 +408,8 @@ findInputs() { # Host offset relative to the package currently being # built---as absolute an offset as will be used. - local -i hostOffsetNext - hostOffsetNext="$(mapOffset relHostOffset)" + mapOffset relHostOffset + local -i hostOffsetNext="$mapOffsetResult" # Ensure we're in bounds relative to the package currently # being built. @@ -439,8 +427,8 @@ findInputs() { # Target offset relative to the package currently being # built. - local -i targetOffsetNext - targetOffsetNext="$(mapOffset relTargetOffset)" + mapOffset relTargetOffset + local -i targetOffsetNext="$mapOffsetResult" # Once again, ensure we're in bounds relative to the # package currently being built. @@ -449,7 +437,8 @@ findInputs() { [[ -f "$pkg/nix-support/$file" ]] || continue local pkgNext - for pkgNext in $(< "$pkg/nix-support/$file"); do + read -r -d '' pkgNext < "$pkg/nix-support/$file" || true + for pkgNext in $pkgNext; do findInputs "$pkgNext" "$hostOffsetNext" "$targetOffsetNext" done done @@ -500,10 +489,11 @@ activatePackage() { (( "$hostOffset" <= "$targetOffset" )) || exit -1 if [ -f "$pkg" ]; then - local oldOpts="$(shopt -po nounset)" + local oldOpts="-u" + shopt -qo nounset || oldOpts="+u" set +u source "$pkg" - eval "$oldOpts" + set "$oldOpts" fi # Only dependencies whose host platform is guaranteed to match the @@ -522,10 +512,11 @@ activatePackage() { fi if [[ -f "$pkg/nix-support/setup-hook" ]]; then - local oldOpts="$(shopt -po nounset)" + local oldOpts="-u" + shopt -qo nounset || oldOpts="+u" set +u source "$pkg/nix-support/setup-hook" - eval "$oldOpts" + set "$oldOpts" fi } @@ -1273,17 +1264,19 @@ showPhaseHeader() { genericBuild() { if [ -f "${buildCommandPath:-}" ]; then - local oldOpts="$(shopt -po nounset)" + local oldOpts="-u" + shopt -qo nounset || oldOpts="+u" set +u source "$buildCommandPath" - eval "$oldOpts" + set "$oldOpts" return fi if [ -n "${buildCommand:-}" ]; then - local oldOpts="$(shopt -po nounset)" + local oldOpts="-u" + shopt -qo nounset || oldOpts="+u" set +u eval "$buildCommand" - eval "$oldOpts" + set "$oldOpts" return fi @@ -1313,10 +1306,11 @@ genericBuild() { # Evaluate the variable named $curPhase if it exists, otherwise the # function named $curPhase. - local oldOpts="$(shopt -po nounset)" + local oldOpts="-u" + shopt -qo nounset || oldOpts="+u" set +u eval "${!curPhase:-$curPhase}" - eval "$oldOpts" + set "$oldOpts" if [ "$curPhase" = unpackPhase ]; then cd "${sourceRoot:-.}" diff --git a/pkgs/tools/X11/screen-message/default.nix b/pkgs/tools/X11/screen-message/default.nix index 8b4a1e19572a..c57c4f824310 100644 --- a/pkgs/tools/X11/screen-message/default.nix +++ b/pkgs/tools/X11/screen-message/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, autoreconfHook, pkgconfig, gtk3, hicolor-icon-theme }: +{ stdenv, fetchurl, autoreconfHook, pkgconfig, gtk3 }: stdenv.mkDerivation rec { pname = "screen-message"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; - buildInputs = [ gtk3 hicolor-icon-theme ]; + buildInputs = [ gtk3 ]; # screen-message installs its binary in $(prefix)/games per default makeFlags = [ "execgamesdir=$(out)/bin" ]; diff --git a/pkgs/tools/admin/awscli/default.nix b/pkgs/tools/admin/awscli/default.nix index 33526ba11dfc..7e3e0c9fff05 100644 --- a/pkgs/tools/admin/awscli/default.nix +++ b/pkgs/tools/admin/awscli/default.nix @@ -38,7 +38,7 @@ in py.pkgs.buildPythonApplication rec { # No tests included doCheck = false; - propagatedBuildInputs = with py.pkgs; [ + pythonPath = with py.pkgs; [ botocore bcdoc s3transfer @@ -49,6 +49,10 @@ in py.pkgs.buildPythonApplication rec { pyyaml groff less + urllib3 + dateutil + jmespath + futures ]; postInstall = '' diff --git a/pkgs/tools/admin/google-cloud-sdk/default.nix b/pkgs/tools/admin/google-cloud-sdk/default.nix index 7c81e861ddbc..feb0b996b61c 100644 --- a/pkgs/tools/admin/google-cloud-sdk/default.nix +++ b/pkgs/tools/admin/google-cloud-sdk/default.nix @@ -7,13 +7,15 @@ # 3) used by `google-cloud-sdk` only on GCE guests # -{ stdenv, lib, fetchurl, makeWrapper, python, cffi, cryptography, pyopenssl, - crcmod, google-compute-engine, with-gce ? false }: +{ stdenv, lib, fetchurl, makeWrapper, python, with-gce ? false }: let - pythonInputs = [ cffi cryptography pyopenssl crcmod ] - ++ lib.optional (with-gce) google-compute-engine; - pythonPath = lib.makeSearchPath python.sitePackages pythonInputs; + pythonEnv = python.withPackages (p: with p; [ + cffi + cryptography + pyopenssl + crcmod + ] ++ lib.optional (with-gce) google-compute-engine); baseUrl = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads"; sources = name: system: { @@ -53,8 +55,8 @@ in stdenv.mkDerivation rec { programPath="$out/google-cloud-sdk/bin/$program" binaryPath="$out/bin/$program" wrapProgram "$programPath" \ - --set CLOUDSDK_PYTHON "${python}/bin/python" \ - --prefix PYTHONPATH : "${pythonPath}" + --set CLOUDSDK_PYTHON "${pythonEnv}/bin/python" \ + --prefix PYTHONPATH : "${pythonEnv}/${python.sitePackages}" mkdir -p $out/bin ln -s $programPath $binaryPath diff --git a/pkgs/tools/archivers/xarchiver/default.nix b/pkgs/tools/archivers/xarchiver/default.nix index 54bd9a1a08bb..1a05c1ba2699 100644 --- a/pkgs/tools/archivers/xarchiver/default.nix +++ b/pkgs/tools/archivers/xarchiver/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, gtk3, pkgconfig, intltool, libxslt, hicolor-icon-theme }: +{ stdenv, fetchFromGitHub, gtk3, pkgconfig, intltool, libxslt }: stdenv.mkDerivation rec { version = "0.5.4.14"; @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ gtk3 intltool libxslt hicolor-icon-theme ]; + buildInputs = [ gtk3 intltool libxslt ]; meta = { description = "GTK frontend to 7z,zip,rar,tar,bzip2, gzip,arj, lha, rpm and deb (open and extract only)"; diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix index 01ab2eefc212..16b7d21e2bdb 100644 --- a/pkgs/tools/bluetooth/blueman/default.nix +++ b/pkgs/tools/bluetooth/blueman/default.nix @@ -1,7 +1,7 @@ { config, stdenv, lib, fetchurl, intltool, pkgconfig, python3Packages, bluez, gtk3 , obex_data_server, xdg_utils, dnsmasq, dhcp, libappindicator, iproute , gnome3, librsvg, wrapGAppsHook, gobject-introspection -, networkmanager, withPulseAudio ? config.pulseaudio or stdenv.isLinux, libpulseaudio }: +, networkmanager, withPulseAudio ? config.pulseaudio or stdenv.isLinux, libpulseaudio, fetchpatch }: let pythonPackages = python3Packages; @@ -26,6 +26,14 @@ in stdenv.mkDerivation rec { ++ pythonPath ++ lib.optional withPulseAudio libpulseaudio; + patches = [ + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/blueman-project/blueman/pull/1103.patch"; + sha256 = "0zqdi6ya97jljwinn10n9q6bixl23ww55c0pkhskn140qnrj42wf"; + }) + ]; + postPatch = lib.optionalString withPulseAudio '' sed -i 's,CDLL(",CDLL("${libpulseaudio.out}/lib/,g' blueman/main/PulseAudioUtils.py ''; diff --git a/pkgs/tools/graphics/zbar/default.nix b/pkgs/tools/graphics/zbar/default.nix index 687c4832e476..9a071e6150f9 100644 --- a/pkgs/tools/graphics/zbar/default.nix +++ b/pkgs/tools/graphics/zbar/default.nix @@ -58,7 +58,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--without-python" ] ++ (if enableDbus then [ - "--with-dbusconfdir=${placeholder "out"}/etc" + "--with-dbusconfdir=${placeholder "out"}/share" ] else [ "--without-dbus" ]) ++ (if enableVideo then [ diff --git a/pkgs/tools/inputmethods/ibus/default.nix b/pkgs/tools/inputmethods/ibus/default.nix index a6c2404ef347..c2bcc2adfc05 100644 --- a/pkgs/tools/inputmethods/ibus/default.nix +++ b/pkgs/tools/inputmethods/ibus/default.nix @@ -98,6 +98,8 @@ stdenv.mkDerivation rec { }) ]; + outputs = [ "out" "dev" ]; + postPatch = '' echo \#!${runtimeShell} > data/dconf/make-dconf-override-db.sh cp ${buildPackages.gtk-doc}/share/gtk-doc/data/gtk-doc.make . diff --git a/pkgs/tools/misc/gparted/default.nix b/pkgs/tools/misc/gparted/default.nix index 49a2809b6042..6b32c408ed93 100644 --- a/pkgs/tools/misc/gparted/default.nix +++ b/pkgs/tools/misc/gparted/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, intltool, gettext, makeWrapper, coreutils, gnused, gnome3 -, gnugrep, parted, glib, libuuid, pkgconfig, gtkmm3, libxml2, hicolor-icon-theme +, gnugrep, parted, glib, libuuid, pkgconfig, gtkmm3, libxml2 , gpart, hdparm, procps, utillinux, polkit, wrapGAppsHook, substituteAll }: @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-doc" ]; - buildInputs = [ parted glib libuuid gtkmm3 libxml2 hicolor-icon-theme polkit.bin gnome3.adwaita-icon-theme ]; + buildInputs = [ parted glib libuuid gtkmm3 libxml2 polkit.bin gnome3.adwaita-icon-theme ]; nativeBuildInputs = [ intltool gettext pkgconfig wrapGAppsHook ]; preFixup = '' diff --git a/pkgs/tools/misc/hdf5/default.nix b/pkgs/tools/misc/hdf5/default.nix index 336010718dda..3296c0a4f928 100644 --- a/pkgs/tools/misc/hdf5/default.nix +++ b/pkgs/tools/misc/hdf5/default.nix @@ -28,6 +28,8 @@ stdenv.mkDerivation rec { inherit mpi; }; + outputs = [ "out" "dev" ]; + nativeBuildInputs = [ removeReferencesTo ]; buildInputs = [] @@ -51,6 +53,7 @@ stdenv.mkDerivation rec { postInstall = '' find "$out" -type f -exec remove-references-to -t ${stdenv.cc} '{}' + + moveToOutput bin/h5cc "''${!outputDev}" ''; meta = { diff --git a/pkgs/tools/misc/man-db/default.nix b/pkgs/tools/misc/man-db/default.nix index df1a2daddb91..a8fb7eea97c4 100644 --- a/pkgs/tools/misc/man-db/default.nix +++ b/pkgs/tools/misc/man-db/default.nix @@ -38,6 +38,7 @@ stdenv.mkDerivation rec { "--with-config-file=${placeholder "out"}/etc/man_db.conf" "--with-systemdtmpfilesdir=${placeholder "out"}/lib/tmpfiles.d" "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system" + "--with-pager=less" ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin [ "ac_cv_func__set_invalid_parameter_handler=no" "ac_cv_func_posix_fadvise=no" diff --git a/pkgs/tools/misc/rpm-ostree/default.nix b/pkgs/tools/misc/rpm-ostree/default.nix index 409e65dff773..09f2150cdce3 100644 --- a/pkgs/tools/misc/rpm-ostree/default.nix +++ b/pkgs/tools/misc/rpm-ostree/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, ostree, rpm, which, autoconf, automake, libtool, pkgconfig, cargo, rustc, gobject-introspection, gtk-doc, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_43, gperf, cmake, libcap, glib, systemd, json-glib, libarchive, libsolv, librepo, polkit, - bubblewrap, pcre, check, python, json_c, libmodulemd_1, utillinux, sqlite, cppunit }: + bubblewrap, pcre, check, python, json_c, libmodulemd_1, utillinux, sqlite, cppunit, fetchpatch }: stdenv.mkDerivation rec { pname = "rpm-ostree"; @@ -17,6 +17,12 @@ stdenv.mkDerivation rec { # https://github.com/NixOS/nixpkgs/pull/50953#issuecomment-449777169 # https://github.com/NixOS/nixpkgs/pull/50953#issuecomment-452177080 ./fix-introspection-build.patch + + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://github.com/coreos/rpm-ostree/commit/60053d0d3d2279d120ae7007c6048e499d2c4d14.patch"; + sha256 = "0ig21zip09iy2da7ksg87jykaj3q8jyzh8r7yrpzyql85qxiwm0m"; + }) ]; outputs = [ "out" "dev" "man" "devdoc" ]; diff --git a/pkgs/tools/misc/snapper/default.nix b/pkgs/tools/misc/snapper/default.nix index 5eba12285ded..6c9cbc568461 100644 --- a/pkgs/tools/misc/snapper/default.nix +++ b/pkgs/tools/misc/snapper/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub , autoreconfHook, pkgconfig, docbook_xsl, libxslt, docbook_xml_dtd_45 , acl, attr, boost, btrfs-progs, dbus, diffutils, e2fsprogs, libxml2 -, lvm2, pam, python, utillinux }: +, lvm2, pam, python, utillinux, fetchpatch }: stdenv.mkDerivation rec { pname = "snapper"; @@ -23,6 +23,14 @@ stdenv.mkDerivation rec { lvm2 pam python utillinux ]; + patches = [ + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://github.com/openSUSE/snapper/commit/c51708aea22d9436da287cba84424557ad03644b.patch"; + sha256 = "106pf7pv8z3q37c8ckmgwxs1phf2fy7l53a9g5xq5kk2rjj1cx34"; + }) + ]; + postPatch = '' # Hard-coded root paths, hard-coded root paths everywhere... for file in {client,data,pam,scripts}/Makefile.am; do diff --git a/pkgs/tools/networking/connman/default.nix b/pkgs/tools/networking/connman/default.nix index 56b0347e17f3..e58b8362f951 100644 --- a/pkgs/tools/networking/connman/default.nix +++ b/pkgs/tools/networking/connman/default.nix @@ -26,8 +26,8 @@ stdenv.mkDerivation rec { configureFlags = [ "--sysconfdir=\${out}/etc" "--localstatedir=/var" - "--with-dbusconfdir=\${out}/etc" - "--with-dbusdatadir=\${out}/usr/share" + "--with-dbusconfdir=${placeholder "out"}/share" + "--with-dbusdatadir=${placeholder "out"}/share" "--disable-maintainer-mode" "--enable-openconnect=builtin" "--with-openconnect=${openconnect}/sbin/openconnect" diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 652bcdba8748..817f3ccf19b9 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -24,14 +24,14 @@ assert brotliSupport -> brotli != null; assert gssSupport -> libkrb5 != null; stdenv.mkDerivation rec { - name = "curl-7.65.3"; + name = "curl-7.66.0"; src = fetchurl { urls = [ "https://curl.haxx.se/download/${name}.tar.bz2" "https://github.com/curl/curl/releases/download/${lib.replaceStrings ["."] ["_"] name}/${name}.tar.bz2" ]; - sha256 = "02g5zj4rq5sr15jzjqk70xk4k92i2pdmpq00xb4pnba8ps1mx18a"; + sha256 = "0hd1wwplw357hn876s4n2gk7dpmd1gfw5d2c3yi21i1m09726636"; }; outputs = [ "bin" "dev" "out" "man" "devdoc" ]; @@ -94,6 +94,9 @@ stdenv.mkDerivation rec { postInstall = '' moveToOutput bin/curl-config "$dev" + + # Install completions + make -C scripts install '' + stdenv.lib.optionalString scpSupport '' sed '/^dependency_libs/s|${libssh2.dev}|${libssh2.out}|' -i "$out"/lib/*.la '' + stdenv.lib.optionalString gnutlsSupport '' diff --git a/pkgs/tools/networking/dhcpcd/default.nix b/pkgs/tools/networking/dhcpcd/default.nix index dfc56d440e62..0827f2eac7ba 100644 --- a/pkgs/tools/networking/dhcpcd/default.nix +++ b/pkgs/tools/networking/dhcpcd/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { # when updating this to >=7, check, see previous reverts: # nix-build -A nixos.tests.networking.scripted.macvlan.x86_64-linux nixos/release-combined.nix pname = "dhcpcd"; - version = "8.0.3"; + version = "8.0.6"; src = fetchurl { url = "mirror://roy/${pname}/${pname}-${version}.tar.xz"; - sha256 = "07cg0sp8sk9b6ch2ajmvkbn6z08bgyx8xbd004s5mkasrlgrfx4n"; + sha256 = "0kxxpb79j564m6bjvjb9gsn0yzs13c0arfgsycm51gw3xnch3db6"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/tools/networking/dnsmasq/default.nix b/pkgs/tools/networking/dnsmasq/default.nix index bcc1f39e8fd3..c009affe1fff 100644 --- a/pkgs/tools/networking/dnsmasq/default.nix +++ b/pkgs/tools/networking/dnsmasq/default.nix @@ -46,7 +46,7 @@ stdenv.mkDerivation rec { substituteInPlace $out/Library/LaunchDaemons/uk.org.thekelleys.dnsmasq.plist \ --replace "/usr/local/sbin" "$out/bin" '' + optionalString stdenv.isLinux '' - install -Dm644 dbus/dnsmasq.conf $out/etc/dbus-1/system.d/dnsmasq.conf + install -Dm644 dbus/dnsmasq.conf $out/share/dbus-1/system.d/dnsmasq.conf install -Dm755 contrib/lease-tools/dhcp_lease_time $out/bin/dhcp_lease_time install -Dm755 contrib/lease-tools/dhcp_release $out/bin/dhcp_release install -Dm755 contrib/lease-tools/dhcp_release6 $out/bin/dhcp_release6 diff --git a/pkgs/tools/networking/modem-manager/default.nix b/pkgs/tools/networking/modem-manager/default.nix index fedc8d4b71d7..d921e841c5b8 100644 --- a/pkgs/tools/networking/modem-manager/default.nix +++ b/pkgs/tools/networking/modem-manager/default.nix @@ -3,12 +3,12 @@ stdenv.mkDerivation rec { pname = "modem-manager"; - version = "1.10.0"; + version = "1.10.4"; package = "ModemManager"; src = fetchurl { url = "https://www.freedesktop.org/software/${package}/${package}-${version}.tar.xz"; - sha256 = "1qkfnxqvaraz1npahqvm5xc73mbxxic8msnsjmlwkni5c2ckj3zx"; + sha256 = "0w6wdj9dh7zwhzl68775h1ni6zcgvss524dp17kph50zpas6nmgs"; }; nativeBuildInputs = [ vala gobject-introspection gettext pkgconfig ]; @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-polkit" "--with-udev-base-dir=${placeholder "out"}/lib/udev" - "--with-dbus-sys-dir=${placeholder "out"}/etc/dbus-1/system.d" + "--with-dbus-sys-dir=${placeholder "out"}/share/dbus-1/system.d" "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system" "--sysconfdir=/etc" "--localstatedir=/var" diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix index 490ebd0fa6bb..ffa56363ad67 100644 --- a/pkgs/tools/networking/network-manager/default.nix +++ b/pkgs/tools/networking/network-manager/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, substituteAll, intltool, pkgconfig, dbus, dbus-glib +{ stdenv, fetchurl, substituteAll, intltool, pkgconfig, fetchpatch, dbus , gnome3, systemd, libuuid, polkit, gnutls, ppp, dhcp, iptables, python3, vala , libgcrypt, dnsmasq, bluez5, readline, libselinux, audit , gobject-introspection, modemmanager, openresolv, libndp, newt, libsoup @@ -10,11 +10,11 @@ let pythonForDocs = python3.withPackages (pkgs: with pkgs; [ pygobject3 ]); in stdenv.mkDerivation rec { pname = "network-manager"; - version = "1.18.2"; + version = "1.20.2"; src = fetchurl { url = "mirror://gnome/sources/NetworkManager/${stdenv.lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz"; - sha256 = "1hx5dx5dgdqh3p8fq7q1pxy2bx2iymc74lj60ycrf7ydfjlprnad"; + sha256 = "115cgz448vypc7c592lqqjd7lp2kzdczhjk4ran6qls65hzkfkji"; }; outputs = [ "out" "dev" "devdoc" "man" "doc" ]; @@ -33,7 +33,7 @@ in stdenv.mkDerivation rec { # to enable link-local connections "-Dudev_dir=${placeholder "out"}/lib/udev" "-Dresolvconf=${openresolv}/bin/resolvconf" - "-Ddbus_conf_dir=${placeholder "out"}/etc/dbus-1/system.d" + "-Ddbus_conf_dir=${placeholder "out"}/share/dbus-1/system.d" "-Dsystemdsystemunitdir=${placeholder "out"}/etc/systemd/system" "-Dkernel_firmware_dir=/run/current-system/firmware" "--sysconfdir=/etc" @@ -43,8 +43,6 @@ in stdenv.mkDerivation rec { "-Dmodem_manager=true" "-Dnmtui=true" "-Ddocs=true" - # TODO: legacy library, will be *removed* in next release! - "-Dlibnm_glib=true" "-Dtests=no" "-Dqt=false" # Allow using iwd when configured to do so @@ -53,6 +51,15 @@ in stdenv.mkDerivation rec { ]; patches = [ + # 1.20.2 added a decorators.sh script but they forgot to distribute it (breaking the build) + # as it was to fix things with gtk-doc 1.32 we can safely revert it. + (fetchpatch { + url = "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/commit/2d941dc95a1d94d023ac8f98df2f344dbb1d223e.patch"; + sha256 = "1mvbajddwd6diwk6dgjg5p65i6852gx6b9p3949rs63d2i6yzg21"; + excludes = [ "tools/decorators.sh" ]; + revert = true; + }) + (substituteAll { src = ./fix-paths.patch; inherit iputils kmod openconnect ethtool gnused dbus; @@ -69,19 +76,17 @@ in stdenv.mkDerivation rec { bluez5 dnsmasq gobject-introspection modemmanager readline newt libsoup jansson ]; - propagatedBuildInputs = [ dbus-glib gnutls libgcrypt ]; + propagatedBuildInputs = [ gnutls libgcrypt ]; nativeBuildInputs = [ meson ninja intltool pkgconfig - vala gobject-introspection - dbus-glib # for dbus-binding-tool + vala gobject-introspection dbus # Docs gtk-doc libxslt docbook_xsl docbook_xml_dtd_412 docbook_xml_dtd_42 docbook_xml_dtd_43 pythonForDocs ]; doCheck = false; # requires /sys, the net - postPatch = '' patchShebangs ./tools patchShebangs libnm/generate-setting-docs.py @@ -96,13 +101,6 @@ in stdenv.mkDerivation rec { ln -s $PWD/libnm/libnm.so.0 ${placeholder "out"}/lib/libnm.so.0 ''; - postInstall = '' - # Add the legacy service name from before #51382 to prevent NetworkManager - # from not starting back up: - # TODO: remove this once 19.10 is released - ln -s $out/etc/systemd/system/NetworkManager.service $out/etc/systemd/system/network-manager.service - ''; - passthru = { updateScript = gnome3.updateScript { packageName = pname; diff --git a/pkgs/tools/networking/network-manager/fix-install-paths.patch b/pkgs/tools/networking/network-manager/fix-install-paths.patch index 068b9c8266b8..5798c1edfb6e 100644 --- a/pkgs/tools/networking/network-manager/fix-install-paths.patch +++ b/pkgs/tools/networking/network-manager/fix-install-paths.patch @@ -1,6 +1,8 @@ +diff --git a/meson.build b/meson.build +index 4105a9c80..3d912557f 100644 --- a/meson.build +++ b/meson.build -@@ -925,9 +925,9 @@ +@@ -884,9 +884,9 @@ meson.add_install_script( join_paths('tools', 'meson-post-install.sh'), nm_datadir, nm_bindir, @@ -12,9 +14,11 @@ enable_docs ? 'install_docs' : '', nm_mandir, ) +diff --git a/src/settings/plugins/ifcfg-rh/meson.build b/src/settings/plugins/ifcfg-rh/meson.build +index 58acdcfcb..e3a16d597 100644 --- a/src/settings/plugins/ifcfg-rh/meson.build +++ b/src/settings/plugins/ifcfg-rh/meson.build -@@ -70,7 +70,7 @@ +@@ -69,7 +69,7 @@ install_data( ) meson.add_install_script('sh', '-c', diff --git a/pkgs/tools/networking/network-manager/fix-paths.patch b/pkgs/tools/networking/network-manager/fix-paths.patch index 938fcbdc7719..015c540c0ede 100644 --- a/pkgs/tools/networking/network-manager/fix-paths.patch +++ b/pkgs/tools/networking/network-manager/fix-paths.patch @@ -1,6 +1,8 @@ +diff --git a/clients/common/nm-vpn-helpers.c b/clients/common/nm-vpn-helpers.c +index 204b7c286..8bdb734c2 100644 --- a/clients/common/nm-vpn-helpers.c +++ b/clients/common/nm-vpn-helpers.c -@@ -214,10 +214,7 @@ +@@ -215,10 +215,7 @@ nm_vpn_openconnect_authenticate_helper (const char *host, NULL, }; @@ -10,21 +12,25 @@ - return FALSE; + path = "@openconnect@/bin/openconnect"; - argv[0] = (char *) path; - argv[1] = "--authenticate"; + if (!g_spawn_sync (NULL, + (char **) NM_MAKE_STRV (path, "--authenticate", host), +diff --git a/data/84-nm-drivers.rules b/data/84-nm-drivers.rules +index e398cb9f2..31c56596a 100644 --- a/data/84-nm-drivers.rules +++ b/data/84-nm-drivers.rules -@@ -7,6 +7,6 @@ +@@ -7,6 +7,6 @@ ACTION!="add|change", GOTO="nm_drivers_end" # Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?) ENV{ID_NET_DRIVER}=="?*", GOTO="nm_drivers_end" DRIVERS=="?*", GOTO="nm_drivers_end" --PROGRAM="/bin/sh -c 'ethtool -i $1 | sed -n s/^driver:\ //p' -- $env{INTERFACE}", RESULT=="?*", ENV{ID_NET_DRIVER}="%c" -+PROGRAM="@shell@ -c '@ethtool@/bin/ethtool -i $1 | @gnused@/bin/sed -n s/^driver:\ //p' -- $env{INTERFACE}", RESULT=="?*", ENV{ID_NET_DRIVER}="%c" +-PROGRAM="/bin/sh -c '/usr/sbin/ethtool -i $$1 |/usr/bin/sed -n s/^driver:\ //p' -- $env{INTERFACE}", ENV{ID_NET_DRIVER}="%c" ++PROGRAM="@shell@ -c '@ethtool@/bin/ethtool -i $$1 |@gnused@/bin/sed -n s/^driver:\ //p' -- $env{INTERFACE}", ENV{ID_NET_DRIVER}="%c" LABEL="nm_drivers_end" +diff --git a/data/NetworkManager.service.in b/data/NetworkManager.service.in +index 2f442bf23..c3e797bf4 100644 --- a/data/NetworkManager.service.in +++ b/data/NetworkManager.service.in -@@ -8,7 +8,7 @@ +@@ -8,7 +8,7 @@ Before=network.target @DISTRO_NETWORK_SERVICE@ [Service] Type=dbus BusName=org.freedesktop.NetworkManager @@ -33,9 +39,11 @@ #ExecReload=/bin/kill -HUP $MAINPID ExecStart=@sbindir@/NetworkManager --no-daemon Restart=on-failure +diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c +index 823cf48a5..cda16e48d 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c -@@ -12451,14 +12451,14 @@ nm_device_start_ip_check (NMDevice *self) +@@ -12822,14 +12822,14 @@ nm_device_start_ip_check (NMDevice *self) gw = nm_ip4_config_best_default_route_get (priv->ip_config_4); if (gw) { nm_utils_inet4_ntop (NMP_OBJECT_CAST_IP4_ROUTE (gw)->gateway, buf); @@ -53,10 +61,10 @@ } } diff --git a/src/nm-core-utils.c b/src/nm-core-utils.c -index 6f55e62a7..93721e7fb 100644 +index d896d4d33..4cacb5cb6 100644 --- a/src/nm-core-utils.c +++ b/src/nm-core-utils.c -@@ -442,7 +442,7 @@ nm_utils_modprobe (GError **error, gboolean suppress_error_logging, const char * +@@ -446,7 +446,7 @@ nm_utils_modprobe (GError **error, gboolean suppress_error_logging, const char * /* construct the argument list */ argv = g_ptr_array_sized_new (4); diff --git a/pkgs/tools/networking/network-manager/fortisslvpn/default.nix b/pkgs/tools/networking/network-manager/fortisslvpn/default.nix index 7773548576b0..dbf175d20c95 100644 --- a/pkgs/tools/networking/network-manager/fortisslvpn/default.nix +++ b/pkgs/tools/networking/network-manager/fortisslvpn/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, substituteAll, openfortivpn, intltool, pkgconfig, file, gtk3, -networkmanager, ppp, libsecret, withGnome ? true, gnome3 }: +networkmanager, ppp, libsecret, withGnome ? true, gnome3, fetchpatch }: let pname = "NetworkManager-fortisslvpn"; @@ -17,6 +17,11 @@ in stdenv.mkDerivation { src = ./fix-paths.patch; inherit openfortivpn; }) + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/NetworkManager-fortisslvpn/merge_requests/11.patch"; + sha256 = "0l7l2r1njh62lh2pf497ibf99sgkvjsj58xr76qx3jxgq9zfw6n9"; + }) ]; buildInputs = [ openfortivpn networkmanager ppp ] diff --git a/pkgs/tools/networking/network-manager/iodine/default.nix b/pkgs/tools/networking/network-manager/iodine/default.nix index a7f5bbf145e5..966827a07dab 100644 --- a/pkgs/tools/networking/network-manager/iodine/default.nix +++ b/pkgs/tools/networking/network-manager/iodine/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, substituteAll, iodine, intltool, pkgconfig, networkmanager, libsecret, gtk3 -, withGnome ? true, gnome3 }: +, withGnome ? true, gnome3, fetchpatch }: let pname = "NetworkManager-iodine"; @@ -17,6 +17,11 @@ in stdenv.mkDerivation { src = ./fix-paths.patch; inherit iodine; }) + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/network-manager-iodine/merge_requests/2.patch"; + sha256 = "108pkf0mddj32s46k7jkmpwcaq2ylci4dqpp7wck3zm9q2jffff2"; + }) ]; buildInputs = [ iodine networkmanager ] diff --git a/pkgs/tools/networking/network-manager/openconnect/default.nix b/pkgs/tools/networking/network-manager/openconnect/default.nix index 4236c9e18184..7db0e59beab4 100644 --- a/pkgs/tools/networking/network-manager/openconnect/default.nix +++ b/pkgs/tools/networking/network-manager/openconnect/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, substituteAll, openconnect, intltool, pkgconfig, autoreconfHook, networkmanager, gcr, libsecret, file -, gtk3, withGnome ? true, gnome3, kmod }: +, gtk3, withGnome ? true, gnome3, kmod, fetchpatch }: let pname = "NetworkManager-openconnect"; @@ -17,6 +17,11 @@ in stdenv.mkDerivation { src = ./fix-paths.patch; inherit kmod openconnect; }) + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/NetworkManager-openconnect/merge_requests/9.patch"; + sha256 = "0yd2dmq6gq6y4czr7dqdgaiqvw2vyv2gikznpfdxyfn2v1pcrk9m"; + }) ]; buildInputs = [ openconnect networkmanager ] diff --git a/pkgs/tools/networking/network-manager/openvpn/default.nix b/pkgs/tools/networking/network-manager/openvpn/default.nix index 04ec49f7b9b1..bedc7875fb7a 100644 --- a/pkgs/tools/networking/network-manager/openvpn/default.nix +++ b/pkgs/tools/networking/network-manager/openvpn/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, substituteAll, openvpn, intltool, libxml2, pkgconfig, file, networkmanager, libsecret -, gtk3, withGnome ? true, gnome3, kmod }: +, gtk3, withGnome ? true, gnome3, kmod, fetchpatch }: let pname = "NetworkManager-openvpn"; @@ -17,6 +17,11 @@ in stdenv.mkDerivation { src = ./fix-paths.patch; inherit kmod openvpn; }) + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/NetworkManager-openvpn/merge_requests/13.patch"; + sha256 = "06cvqi28v72dd53fw8ix95mqj885xhwi8qcs2q7hvm5bvnhwn704"; + }) ]; buildInputs = [ openvpn networkmanager ] diff --git a/pkgs/tools/networking/network-manager/vpnc/default.nix b/pkgs/tools/networking/network-manager/vpnc/default.nix index 1aa4cd5658bb..af5b19eb5dbc 100644 --- a/pkgs/tools/networking/network-manager/vpnc/default.nix +++ b/pkgs/tools/networking/network-manager/vpnc/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, substituteAll, vpnc, intltool, pkgconfig, networkmanager, libsecret -, gtk3, withGnome ? true, gnome3, kmod, file }: +, gtk3, withGnome ? true, gnome3, kmod, file, fetchpatch }: let pname = "NetworkManager-vpnc"; version = "1.2.6"; @@ -16,6 +16,11 @@ in stdenv.mkDerivation { src = ./fix-paths.patch; inherit vpnc kmod; }) + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/NetworkManager-vpnc/merge_requests/5.patch"; + sha256 = "0z0x5vqmrsap3ynamhya7gh6c6k5grhj2vqpy76alnv9xns8dzi6"; + }) ]; buildInputs = [ vpnc networkmanager ] diff --git a/pkgs/tools/networking/openresolv/default.nix b/pkgs/tools/networking/openresolv/default.nix index 73cb98060a03..190c903d9c17 100644 --- a/pkgs/tools/networking/openresolv/default.nix +++ b/pkgs/tools/networking/openresolv/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "openresolv"; - version = "3.9.1"; + version = "3.9.2"; src = fetchurl { url = "mirror://roy/openresolv/${pname}-${version}.tar.xz"; - sha256 = "1wlzi88837rf4ygswmzpbcmgkbbjhn5n322n9q6ir6x367hygf1q"; + sha256 = "0wyk9sl1xgvxjvj1v3nlgs79nykdr0b76k5zp3v6cm9fd10y5mql"; }; buildInputs = [ makeWrapper ]; diff --git a/pkgs/tools/networking/strongswan/default.nix b/pkgs/tools/networking/strongswan/default.nix index 869e568d3696..a2db62c884e3 100644 --- a/pkgs/tools/networking/strongswan/default.nix +++ b/pkgs/tools/networking/strongswan/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl +{ stdenv, fetchurl, fetchpatch , pkgconfig, autoreconfHook , gmp, python, iptables, ldns, unbound, openssl, pcsclite , openresolv @@ -38,6 +38,12 @@ stdenv.mkDerivation rec { ./ext_auth-path.patch ./firewall_defaults.patch ./updown-path.patch + + # Don't use etc/dbus-1/system.d + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/strongswan/strongswan/pull/150.patch"; + sha256 = "1irfxb99blb8v3hs0kmlhzkkwbmds1p0gq319z8lmacz36cgyj2c"; + }) ]; postPatch = optionalString stdenv.isLinux '' diff --git a/pkgs/tools/package-management/disnix/default.nix b/pkgs/tools/package-management/disnix/default.nix index 50e071be29c5..c9223c9af15e 100644 --- a/pkgs/tools/package-management/disnix/default.nix +++ b/pkgs/tools/package-management/disnix/default.nix @@ -8,6 +8,10 @@ stdenv.mkDerivation { sha256 = "1kc4520zjc1z72mknylfvrsyda9rbmm5c9mw8w13zhdwg3zbna06"; }; + configureFlags = [ + " --with-dbus-sys=${placeholder "out"}/share/dbus-1/system.d" + ]; + nativeBuildInputs = [ pkgconfig ]; buildInputs = [ glib libxml2 libxslt getopt nixUnstable libintl libiconv dysnomia ]; diff --git a/pkgs/tools/package-management/packagekit/default.nix b/pkgs/tools/package-management/packagekit/default.nix index a82f44008910..a3c3c0d40a99 100644 --- a/pkgs/tools/package-management/packagekit/default.nix +++ b/pkgs/tools/package-management/packagekit/default.nix @@ -39,8 +39,8 @@ stdenv.mkDerivation rec { "--disable-offline-update" "--localstatedir=/var" "--sysconfdir=/etc" - "--with-dbus-sys=$(out)/etc/dbus-1/system.d" - "--with-systemdsystemunitdir=$(out)/lib/systemd/system/" + "--with-dbus-sys=${placeholder "out"}/share/dbus-1/system.d" + "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system/" ] ++ lib.optional enableNixBackend "--enable-nix" ++ lib.optional (!enableBashCompletion) "--disable-bash-completion" diff --git a/pkgs/tools/security/fprintd/default.nix b/pkgs/tools/security/fprintd/default.nix index 201780b14929..ab2de77b6b16 100644 --- a/pkgs/tools/security/fprintd/default.nix +++ b/pkgs/tools/security/fprintd/default.nix @@ -1,6 +1,7 @@ { thinkpad ? false , stdenv , fetchurl +, fetchpatch , pkgconfig , intltool , libfprint-thinkpad ? null @@ -22,6 +23,13 @@ stdenv.mkDerivation rec { sha256 = "182gcnwb6zjwmk0dn562rjmpbk7ac7dhipbfdhfic2sn1jzis49p"; }; + patches = [ + (fetchpatch { + url = "https://gitlab.freedesktop.org/libfprint/fprintd/merge_requests/16.patch"; + sha256 = "1y39zsmxjll9hip8464qwhq5qg06c13pnafyafgxdph75lvhdll7"; + }) + ]; + nativeBuildInputs = [ intltool pkgconfig diff --git a/pkgs/tools/system/thermald/default.nix b/pkgs/tools/system/thermald/default.nix index 3429419052fe..8caff1170bcf 100644 --- a/pkgs/tools/system/thermald/default.nix +++ b/pkgs/tools/system/thermald/default.nix @@ -23,9 +23,10 @@ stdenv.mkDerivation rec { ''; configureFlags = [ - "--sysconfdir=$(out)/etc" "--localstatedir=/var" - "--with-dbus-sys-dir=$(out)/etc/dbus-1/system.d" - "--with-systemdsystemunitdir=$(out)/etc/systemd/system" + "--sysconfdir=${placeholder "out"}/etc" + "--localstatedir=/var" + "--with-dbus-sys-dir=${placeholder "out"}/share/dbus-1/system.d" + "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system" ]; meta = with stdenv.lib; { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 157ccc91237e..36f3d33d3bc7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3547,8 +3547,8 @@ in google-authenticator = callPackage ../os-specific/linux/google-authenticator { }; - google-cloud-sdk = python2.pkgs.google-cloud-sdk; - google-cloud-sdk-gce = python2.pkgs.google-cloud-sdk-gce; + google-cloud-sdk = callPackage ../tools/admin/google-cloud-sdk { }; + google-cloud-sdk-gce = google-cloud-sdk.override { with-gce = true; }; google-fonts = callPackage ../data/fonts/google-fonts { }; @@ -7594,7 +7594,7 @@ in gerbil-unstable = callPackage ../development/compilers/gerbil/unstable.nix { stdenv = gccStdenv; }; gccFun = callPackage ../development/compilers/gcc/8; - gcc = if stdenv.isDarwin then gcc7 else gcc8; + gcc = gcc8; gcc-unwrapped = gcc.cc; gccStdenv = if stdenv.cc.isGNU then stdenv else stdenv.override { @@ -8013,6 +8013,8 @@ in idris = idrisPackages.with-packages [ idrisPackages.base ] ; + intel-graphics-compiler = callPackage ../development/compilers/intel-graphics-compiler { }; + intercal = callPackage ../development/compilers/intercal { }; irony-server = callPackage ../development/tools/irony-server { @@ -8515,6 +8517,8 @@ in souffle = callPackage ../development/compilers/souffle { }; + spirv-llvm-translator = callPackage ../development/compilers/spirv-llvm-translator { }; + sqldeveloper = callPackage ../development/tools/database/sqldeveloper { }; # sqldeveloper_18 needs JavaFX, which currently only is available inside the @@ -12746,6 +12750,8 @@ in lzo = callPackage ../development/libraries/lzo { }; + opencl-clang = callPackage ../development/libraries/opencl-clang { }; + mapnik = callPackage ../development/libraries/mapnik { }; marisa = callPackage ../development/libraries/marisa {}; @@ -13320,7 +13326,7 @@ in qt512 = recurseIntoAttrs (makeOverridable (import ../development/libraries/qt-5/5.12) { inherit newScope; - inherit stdenv fetchurl fetchFromGitHub makeSetupHook makeWrapper; + inherit stdenv fetchurl fetchpatch fetchFromGitHub makeSetupHook makeWrapper; bison = bison2; # error: too few arguments to function 'int yylex(... inherit cups; inherit harfbuzz; @@ -15746,6 +15752,8 @@ in intel2200BGFirmware = callPackage ../os-specific/linux/firmware/intel2200BGFirmware { }; + intel-compute-runtime = callPackage ../os-specific/linux/intel-compute-runtime { }; + intel-ocl = callPackage ../os-specific/linux/intel-ocl { }; iomelt = callPackage ../os-specific/linux/iomelt { }; @@ -15758,7 +15766,9 @@ in iputils = callPackage ../os-specific/linux/iputils { }; - iptables = callPackage ../os-specific/linux/iptables { }; + iptables = iptables-legacy; + iptables-legacy = callPackage ../os-specific/linux/iptables { }; + iptables-nftables-compat = callPackage ../os-specific/linux/iptables { nftablesCompat = true; }; iptstate = callPackage ../os-specific/linux/iptstate { } ; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4478b4e39dbf..07779c38f879 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2408,9 +2408,6 @@ in { python-gitlab = callPackage ../development/python-modules/python-gitlab { }; - google-cloud-sdk = callPackage ../tools/admin/google-cloud-sdk { }; - google-cloud-sdk-gce = callPackage ../tools/admin/google-cloud-sdk { with-gce=true; }; - google-compute-engine = callPackage ../tools/virtualization/google-compute-engine { }; google-music = callPackage ../development/python-modules/google-music { };