diff options
158 files changed, 1882 insertions, 1055 deletions
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml index abb176196135b..a820ec10b82bd 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml @@ -27,6 +27,16 @@ </listitem> <listitem> <para> + GNOME has been upgraded to 42. Please take a look at their + <link xlink:href="https://release.gnome.org/42/">Release + Notes</link> for details. Notably, it replaces gedit with + GNOME Text Editor, GNOME Terminal with GNOME Console (formerly + King’s Cross), and GNOME Screenshot with a tool built into the + Shell. + </para> + </listitem> + <listitem> + <para> PHP 8.1 is now available </para> </listitem> @@ -672,6 +682,16 @@ </listitem> <listitem> <para> + <literal>services.gnome.experimental-features.realtime-scheduling</literal> + option has been removed, as GNOME Shell now + <link xlink:href="https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2060">uses + rtkit</link>. Use + <literal>security.rtkit.enable = true;</literal> instead. As + before, you will need to have it enabled using GSettings. + </para> + </listitem> + <listitem> + <para> If you previously used <literal>/etc/docker/daemon.json</literal>, you need to incorporate the changes into the new option diff --git a/nixos/doc/manual/release-notes/rl-2205.section.md b/nixos/doc/manual/release-notes/rl-2205.section.md index 909b6cd8b7ba1..5425841c9de20 100644 --- a/nixos/doc/manual/release-notes/rl-2205.section.md +++ b/nixos/doc/manual/release-notes/rl-2205.section.md @@ -11,6 +11,8 @@ In addition to numerous new and upgraded packages, this release has the followin the option to use DNS-01 validation when using `enableACME` on web server virtual hosts (e.g. `services.nginx.virtualHosts.*.enableACME`). +- GNOME has been upgraded to 42. Please take a look at their [Release Notes](https://release.gnome.org/42/) for details. Notably, it replaces gedit with GNOME Text Editor, GNOME Terminal with GNOME Console (formerly King’s Cross), and GNOME Screenshot with a tool built into the Shell. + - PHP 8.1 is now available - Mattermost has been updated to extended support release 6.3, as the previously packaged extended support release 5.37 is [reaching its end of life](https://docs.mattermost.com/upgrade/extended-support-release.html). @@ -275,6 +277,8 @@ In addition to numerous new and upgraded packages, this release has the followin - The `gnome-passwordsafe` package updated to [version 6.x](https://gitlab.gnome.org/World/secrets/-/tags/6.0) and renamed to `gnome-secrets`. +- `services.gnome.experimental-features.realtime-scheduling` option has been removed, as GNOME Shell now [uses rtkit](https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2060). Use `security.rtkit.enable = true;` instead. As before, you will need to have it enabled using GSettings. + - If you previously used `/etc/docker/daemon.json`, you need to incorporate the changes into the new option `virtualisation.docker.daemon.settings`. - Ntopng (`services.ntopng`) is updated to 5.2.1 and uses a separate Redis instance if `system.stateVersion` is at least `22.05`. Existing setups shouldn't be affected. diff --git a/nixos/modules/services/x11/desktop-managers/gnome.nix b/nixos/modules/services/x11/desktop-managers/gnome.nix index e2323785149a9..4a54de5e766eb 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome.nix @@ -132,6 +132,10 @@ in [ "environment" "gnome3" "excludePackages" ] [ "environment" "gnome" "excludePackages" ] ) + (mkRemovedOptionModule + [ "services" "gnome" "experimental-features" "realtime-scheduling" ] + "Set `security.rtkit.enable = true;` to make realtime scheduling possible. (Still needs to be enabled using GSettings.)" + ) ]; options = { @@ -142,38 +146,6 @@ in core-utilities.enable = mkEnableOption "GNOME core utilities"; core-developer-tools.enable = mkEnableOption "GNOME core developer tools"; games.enable = mkEnableOption "GNOME games"; - - experimental-features = { - realtime-scheduling = mkOption { - type = types.bool; - default = false; - description = '' - Makes mutter (which propagates to gnome-shell) request a low priority real-time - scheduling which is only available on the wayland session. - To enable this experimental feature it requires a restart of the compositor. - Note that enabling this option only enables the <emphasis>capability</emphasis> - for realtime-scheduling to be used. It doesn't automatically set the gsetting - so that mutter actually uses realtime-scheduling. This would require adding <literal> - rt-scheduler</literal> to <literal>/org/gnome/mutter/experimental-features</literal> - with dconf-editor. You cannot use extraGSettingsOverrides because that will only - change the default value of the setting. - - Please be aware of these known issues with the feature in nixos: - <itemizedlist> - <listitem> - <para> - <link xlink:href="https://github.com/NixOS/nixpkgs/issues/90201">NixOS/nixpkgs#90201</link> - </para> - </listitem> - <listitem> - <para> - <link xlink:href="https://github.com/NixOS/nixpkgs/issues/86730">NixOS/nixpkgs#86730</link> - </para> - </listitem> - </itemizedlist> - ''; - }; - }; }; services.xserver.desktopManager.gnome = { @@ -480,29 +452,6 @@ in ]; }) - # Enable soft realtime scheduling, only supported on wayland - (mkIf serviceCfg.experimental-features.realtime-scheduling { - security.wrappers.".gnome-shell-wrapped" = { - source = "${pkgs.gnome.gnome-shell}/bin/.gnome-shell-wrapped"; - owner = "root"; - group = "root"; - capabilities = "cap_sys_nice=ep"; - }; - - systemd.user.services.gnome-shell-wayland = let - gnomeShellRT = with pkgs.gnome; pkgs.runCommand "gnome-shell-rt" {} '' - mkdir -p $out/bin/ - cp ${gnome-shell}/bin/gnome-shell $out/bin - sed -i "s@${gnome-shell}/bin/@${config.security.wrapperDir}/@" $out/bin/gnome-shell - ''; - in { - # Note we need to clear ExecStart before overriding it - serviceConfig.ExecStart = ["" "${gnomeShellRT}/bin/gnome-shell"]; - # Do not use the default environment, it provides a broken PATH - environment = mkForce {}; - }; - }) - # Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-38/elements/core/meta-gnome-core-utilities.bst (mkIf serviceCfg.core-utilities.enable { environment.systemPackages = @@ -513,18 +462,18 @@ in cheese eog epiphany - gedit + pkgs.gnome-text-editor gnome-calculator gnome-calendar gnome-characters gnome-clocks + pkgs.gnome-console gnome-contacts gnome-font-viewer gnome-logs gnome-maps gnome-music pkgs.gnome-photos - gnome-screenshot gnome-system-monitor gnome-weather nautilus @@ -547,7 +496,6 @@ in programs.file-roller.enable = notExcluded pkgs.gnome.file-roller; programs.geary.enable = notExcluded pkgs.gnome.geary; programs.gnome-disks.enable = notExcluded pkgs.gnome.gnome-disk-utility; - programs.gnome-terminal.enable = notExcluded pkgs.gnome.gnome-terminal; programs.seahorse.enable = notExcluded pkgs.gnome.seahorse; services.gnome.sushi.enable = notExcluded pkgs.gnome.sushi; diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.nix b/nixos/modules/services/x11/desktop-managers/pantheon.nix index 8ff9b0b756d3d..48e119a861875 100644 --- a/nixos/modules/services/x11/desktop-managers/pantheon.nix +++ b/nixos/modules/services/x11/desktop-managers/pantheon.nix @@ -220,9 +220,7 @@ in ] config.environment.pantheon.excludePackages); programs.evince.enable = mkDefault true; - programs.evince.package = pkgs.pantheon.evince; programs.file-roller.enable = mkDefault true; - programs.file-roller.package = pkgs.pantheon.file-roller; # Settings from elementary-default-settings environment.etc."gtk-3.0/settings.ini".source = "${pkgs.pantheon.elementary-default-settings}/etc/gtk-3.0/settings.ini"; @@ -304,7 +302,6 @@ in environment.systemPackages = with pkgs.pantheon; [ contractor file-roller-contract - gnome-bluetooth-contract ]; environment.pathsToLink = [ diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix index b1dc6643be828..70ae6b8978d0b 100644 --- a/nixos/modules/services/x11/display-managers/gdm.nix +++ b/nixos/modules/services/x11/display-managers/gdm.nix @@ -141,7 +141,7 @@ in GDM_X_SERVER_EXTRA_ARGS = toString (filter (arg: arg != "-terminate") cfg.xserverArgs); # GDM is needed for gnome-login.session - XDG_DATA_DIRS = "${gdm}/share:${cfg.sessionData.desktops}/share"; + XDG_DATA_DIRS = "${gdm}/share:${cfg.sessionData.desktops}/share:${pkgs.gnome.gnome-control-center}/share"; } // optionalAttrs (xSessionWrapper != null) { # Make GDM use this wrapper before running the session, which runs the # configured setupCommands. This relies on a patched GDM which supports diff --git a/nixos/tests/installed-tests/gjs.nix b/nixos/tests/installed-tests/gjs.nix index 1656e9de171b7..d12487cba2499 100644 --- a/nixos/tests/installed-tests/gjs.nix +++ b/nixos/tests/installed-tests/gjs.nix @@ -3,4 +3,10 @@ makeInstalledTest { tested = pkgs.gjs; withX11 = true; + + testConfig = { + environment.systemPackages = [ + pkgs.gjs + ]; + }; } diff --git a/pkgs/applications/accessibility/squeekboard/default.nix b/pkgs/applications/accessibility/squeekboard/default.nix index db139ab39d080..94129d05288bd 100644 --- a/pkgs/applications/accessibility/squeekboard/default.nix +++ b/pkgs/applications/accessibility/squeekboard/default.nix @@ -5,6 +5,7 @@ , ninja , pkg-config , gnome +, gnome-desktop , glib , gtk3 , wayland @@ -54,7 +55,7 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 - gnome.gnome-desktop + gnome-desktop wayland wayland-protocols libxml2 diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix index 0e2ffe46d208d..8fd9f56a9d221 100644 --- a/pkgs/applications/editors/gnome-builder/default.nix +++ b/pkgs/applications/editors/gnome-builder/default.nix @@ -18,6 +18,7 @@ , json-glib , jsonrpc-glib , libdazzle +, libhandy , libpeas , libportal-gtk3 , libxml2 @@ -40,21 +41,20 @@ stdenv.mkDerivation rec { pname = "gnome-builder"; - version = "41.3"; + version = "42.0"; outputs = [ "out" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "4iUPyOnp8gAsRS5ZUNgmhXNNPESAs1Fnq1CKyHAlCeE="; + sha256 = "Uu/SltaLL/GCNBwEgdz9cGVMQIvbZ5/Ot225cDwiQo8="; }; patches = [ - # Fix build with latest libportal - # https://gitlab.gnome.org/GNOME/gnome-builder/-/merge_requests/486 + # Fix appstream validation (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/b3bfa0df53a3749c3b73cb6c4bad5cab3fa549a1.patch"; - sha256 = "B/uCcYavFvOAPhLHZ4MRNENDd6VytILiGYwDZRUSxTE="; + url = "https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/d7151679e0c925d27216256dc32fe67fb298d059.patch"; + sha256 = "vdNJawkqSBaFGRZvxzvjOryQpBL4jcN7tr1t3ihD7LA="; }) ]; @@ -87,6 +87,7 @@ stdenv.mkDerivation rec { json-glib jsonrpc-glib libdazzle + libhandy libxml2 ostree pcre @@ -103,10 +104,6 @@ stdenv.mkDerivation rec { xvfb-run ]; - prePatch = '' - patchShebangs build-aux/meson/post_install.py - ''; - mesonFlags = [ "-Ddocs=true" @@ -122,6 +119,10 @@ stdenv.mkDerivation rec { # understand why. Somebody should look into fixing this. doCheck = true; + postPatch = '' + patchShebangs build-aux/meson/post_install.py + ''; + checkPhase = '' export NO_AT_BRIDGE=1 xvfb-run -s '-screen 0 800x600x24' dbus-run-session \ diff --git a/pkgs/applications/graphics/gnome-photos/default.nix b/pkgs/applications/graphics/gnome-photos/default.nix index 9dc318a0674c3..774e377ca031c 100644 --- a/pkgs/applications/graphics/gnome-photos/default.nix +++ b/pkgs/applications/graphics/gnome-photos/default.nix @@ -36,13 +36,13 @@ stdenv.mkDerivation rec { pname = "gnome-photos"; - version = "40.0"; + version = "42.0"; outputs = [ "out" "installedTests" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1bzi79plw6ji6qlckhxnwfnswy6jpnhzmmyanml2i2xg73hp6bg0"; + sha256 = "JcsoFCUZnex7BF8T8y+PlgNMsMuLlNlvnf+vT1vmhVE="; }; patches = [ diff --git a/pkgs/applications/graphics/gthumb/default.nix b/pkgs/applications/graphics/gthumb/default.nix index d412c6fded878..e680554a711e9 100644 --- a/pkgs/applications/graphics/gthumb/default.nix +++ b/pkgs/applications/graphics/gthumb/default.nix @@ -33,11 +33,11 @@ stdenv.mkDerivation rec { pname = "gthumb"; - version = "3.12.0"; + version = "3.12.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-Pe/8AwOE5ktXNhxDfHm0ga4Uie9EyHroVugbsQ2OOD8="; + sha256 = "sha256-ZDBmOgAHBpbGgeXru4AQc/1GpG1oEsKeL5pPgRr6Gfw="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix index 12d6332af5d50..0958676cc99bd 100644 --- a/pkgs/applications/graphics/inkscape/default.nix +++ b/pkgs/applications/graphics/inkscape/default.nix @@ -5,6 +5,7 @@ , cairo , cmake , fetchurl +, fetchpatch , gettext , ghostscript , glib @@ -71,6 +72,13 @@ stdenv.mkDerivation rec { # e.g., those from the "Effects" menu. python3 = "${python3Env}/bin/python"; }) + + # Fix build with poppler 22.03 + # https://gitlab.com/inkscape/inkscape/-/merge_requests/4187 + (fetchpatch { + url = "https://gitlab.com/inkscape/inkscape/-/commit/a18c57ffff313fd08bc8a44f6b6bf0b01d7e9b75.patch"; + sha256 = "UZb8ZTtfA5667uo5ZlVQ5vPowiSgd4ItAJ9U1BOsRQg="; + }) ]; postPatch = '' diff --git a/pkgs/applications/kde/kitinerary.nix b/pkgs/applications/kde/kitinerary.nix index f69e705bb2f92..83763ba965afc 100644 --- a/pkgs/applications/kde/kitinerary.nix +++ b/pkgs/applications/kde/kitinerary.nix @@ -1,4 +1,4 @@ -{ mkDerivation, lib, extra-cmake-modules +{ mkDerivation, fetchpatch, lib, extra-cmake-modules , qtdeclarative, ki18n, kmime, kpkpass , poppler, kcontacts, kcalendarcore , shared-mime-info @@ -10,6 +10,15 @@ mkDerivation { license = with lib.licenses; [ lgpl21 ]; maintainers = [ lib.maintainers.bkchr ]; }; + + patches = [ + # Fix build with poppler 22.03 + (fetchpatch { + url = "https://github.com/KDE/kitinerary/commit/e21d1ffc5fa81a636245f49c97fe7cda63abbb1d.patch"; + sha256 = "1/zgq9QIOCPplqplDqgpoqzuYFf/m1Ixxawe50t2F04="; + }) + ]; + nativeBuildInputs = [ extra-cmake-modules shared-mime-info # for update-mime-database diff --git a/pkgs/applications/misc/eos-installer/default.nix b/pkgs/applications/misc/eos-installer/default.nix index 02d629412a39a..8234a77ba1456 100644 --- a/pkgs/applications/misc/eos-installer/default.nix +++ b/pkgs/applications/misc/eos-installer/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchFromGitHub , autoconf, autoconf-archive, automake, glib, intltool, libtool, pkg-config -, gnome, gnupg, gtk3, udisks +, gnome-desktop, gnupg, gtk3, udisks }: stdenv.mkDerivation rec { @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoconf autoconf-archive automake glib intltool libtool pkg-config ]; - buildInputs = [ gnome.gnome-desktop gtk3 udisks ]; + buildInputs = [ gnome-desktop gtk3 udisks ]; preConfigure = '' ./autogen.sh diff --git a/pkgs/applications/misc/lutris/fhsenv.nix b/pkgs/applications/misc/lutris/fhsenv.nix index 88b3d253114d1..0ff5b4a6a625b 100644 --- a/pkgs/applications/misc/lutris/fhsenv.nix +++ b/pkgs/applications/misc/lutris/fhsenv.nix @@ -7,7 +7,7 @@ let qt5Deps = pkgs: with pkgs.qt5; [ qtbase qtmultimedia ]; - gnomeDeps = pkgs: with pkgs; [ gnome.zenity gtksourceview gnome.gnome-desktop gnome.libgnome-keyring webkitgtk ]; + gnomeDeps = pkgs: with pkgs; [ gnome.zenity gtksourceview gnome-desktop gnome.libgnome-keyring webkitgtk ]; xorgDeps = pkgs: with pkgs.xorg; [ libX11 libXrender libXrandr libxcb libXmu libpthreadstubs libXext libXdmcp libXxf86vm libXinerama libSM libXv libXaw libXi libXcursor libXcomposite diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/applications/misc/orca/default.nix index d0b2c85f10783..63923188db7ba 100644 --- a/pkgs/applications/misc/orca/default.nix +++ b/pkgs/applications/misc/orca/default.nix @@ -34,13 +34,13 @@ buildPythonApplication rec { pname = "orca"; - version = "41.2"; + version = "42.0"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1/Jy6ps3+9ZFTkAh5GU4okcibhwKxXDW4rhOlxmqKv4="; + sha256 = "LCUXmrQbJgsY8f+Jm+uv5olDi0nf/SEd78l2olCT9zo="; }; patches = [ diff --git a/pkgs/applications/misc/phoc/default.nix b/pkgs/applications/misc/phoc/default.nix index 7acdcdf02c458..e1dd464edbc7a 100644 --- a/pkgs/applications/misc/phoc/default.nix +++ b/pkgs/applications/misc/phoc/default.nix @@ -9,6 +9,7 @@ , wrapGAppsHook , libinput , gnome +, gnome-desktop , glib , gtk3 , wayland @@ -68,7 +69,7 @@ in stdenv.mkDerivation rec { libinput glib gtk3 - gnome.gnome-desktop + gnome-desktop # For keybindings settings schemas gnome.mutter wayland diff --git a/pkgs/applications/networking/instant-messengers/chatty/default.nix b/pkgs/applications/networking/instant-messengers/chatty/default.nix index f9cec37a50683..97282c76d04cf 100644 --- a/pkgs/applications/networking/instant-messengers/chatty/default.nix +++ b/pkgs/applications/networking/instant-messengers/chatty/default.nix @@ -11,7 +11,7 @@ , evolution-data-server , feedbackd , glibmm -, gnome +, gnome-desktop , gspell , gtk3 , json-glib @@ -57,7 +57,7 @@ stdenv.mkDerivation rec { evolution-data-server feedbackd glibmm - gnome.gnome-desktop + gnome-desktop gspell gtk3 json-glib diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix index 4d4e33c6373c2..db7771bc3c9ff 100644 --- a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix +++ b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "evolution-ews"; - version = "3.42.4"; + version = "3.44.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "gpIW4GBXT0GCtV7Q8EfdEeK56gCACi+PJ/jbwQkVQbk="; + sha256 = "q4Cg6eLOdn+56EruBl0Ote9QLNebLiykUeyoQpIpeoA="; }; nativeBuildInputs = [ cmake gettext intltool pkg-config ]; diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix b/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix index 9aac3db3594c9..2fae122fc1b6c 100644 --- a/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix +++ b/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ lib +, stdenv , cmake , ninja , intltool @@ -25,6 +26,7 @@ , gcr , sqlite , gnome +, gnome-desktop , librsvg , gdk-pixbuf , libsecret @@ -32,6 +34,8 @@ , nspr , icu , libcanberra-gtk3 +, geocode-glib +, cmark , bogofilter , gst_all_1 , procps @@ -42,11 +46,11 @@ stdenv.mkDerivation rec { pname = "evolution"; - version = "3.42.4"; + version = "3.44.0"; src = fetchurl { url = "mirror://gnome/sources/evolution/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "+oprem1GsinbXfIv3nZCVFIjV/4b7NexjlNt/piJCmU="; + sha256 = "3yHT31Ik36hC6ikO/82QKv1LFBhgik37aQejt9TZlPk="; }; nativeBuildInputs = [ @@ -68,7 +72,7 @@ stdenv.mkDerivation rec { gdk-pixbuf glib glib-networking - gnome.gnome-desktop + gnome-desktop gsettings-desktop-schemas gst_all_1.gst-plugins-base gst_all_1.gstreamer @@ -77,6 +81,8 @@ stdenv.mkDerivation rec { highlight icu libcanberra-gtk3 + geocode-glib + cmark libgdata libgweather libical @@ -106,6 +112,7 @@ stdenv.mkDerivation rec { "-DWITH_SA_LEARN=${spamassassin}/bin/sa-learn" "-DWITH_BOGOFILTER=${bogofilter}/bin/bogofilter" "-DWITH_OPENLDAP=${openldap}" + "-DWITH_GWEATHER4=ON" ]; requiredSystemFeatures = [ diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix index 1fe7598d0e10c..5ebde5e10dece 100644 --- a/pkgs/applications/office/libreoffice/default.nix +++ b/pkgs/applications/office/libreoffice/default.nix @@ -82,7 +82,15 @@ in (mkDrv rec { tar -xf ${srcs.translations} ''; - patches = [ ./skip-failed-test-with-icu70.patch ]; + patches = [ + ./skip-failed-test-with-icu70.patch + + # Fix build with poppler 22.03 + (fetchurl { + url = "https://github.com/archlinux/svntogit-packages/raw/f82958b9538f86e41b51f1ba7134968d2f3788d1/trunk/poppler-22.03.0.patch"; + sha256 = "5h4qJmx6Q3Q3dHUlSi8JXBziN2mAswGVWk5aDTLTwls="; + }) + ]; ### QT/KDE # diff --git a/pkgs/applications/office/scribus/unstable.nix b/pkgs/applications/office/scribus/unstable.nix index 21adb90cab9e9..754c9ba03d4eb 100644 --- a/pkgs/applications/office/scribus/unstable.nix +++ b/pkgs/applications/office/scribus/unstable.nix @@ -54,6 +54,36 @@ mkDerivation rec { url = "https://github.com/scribusproject/scribus/commit/68ec41169eaceea4a6e1d6f359762a191c7e61d5.patch"; sha256 = "sha256-xhp65qVvaof0md1jb3XHZw7uFX1RtNxPfUOaVnvZV1Y="; }) + # For Poppler 22.02 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/85c0dff3422fa3c26fbc2e8d8561f597ec24bd92.patch"; + sha256 = "YR0ii09EVU8Qazz6b8KAIWsUMTwPIwO8JuQPymAWKdw="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/f75c1613db67f4067643d0218a2db3235e42ec9f.patch"; + sha256 = "vJU8HsKHE3oXlhcXQk9uCYINPYVPF5IGmrWYFQ6Py5c="; + }) + # For Poppler 22.03 + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/553d1fd5f76ffb3743583b88c78a7232b076a965.patch"; + sha256 = "56JrEG3eCzyALTH04yjzurKRj2PocpjO6b4PusMRxjY="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/1f82e38be0782b065910f5fb4cece23f690349ae.patch"; + sha256 = "qektUfel5KeA327D3THyqi8dznP1SQQFToUC5Kd0+W4="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/f19410ac3b27e33dd62105746784e61e85b90a1d.patch"; + sha256 = "JHdgntYcioYatPeqpmym3c9dORahj0CinGOzbGtA4ds="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/e013e8126d2100e8e56dea5b836ad43275429389.patch"; + sha256 = "+siPNtJq9Is9V2PgADeQJB+b4lkl5g8uk6zKBu10Jqw="; + }) + (fetchpatch { + url = "https://github.com/scribusproject/scribus/commit/48263954a7dee0be815b00f417ae365ab26cdd85.patch"; + sha256 = "1WE9kALFw79bQH88NUafXaZ1Y/vJEKTIWxlk5c+opsQ="; + }) ]; nativeBuildInputs = [ diff --git a/pkgs/applications/terminal-emulators/gnome-console/default.nix b/pkgs/applications/terminal-emulators/gnome-console/default.nix new file mode 100644 index 0000000000000..9b4b460550ff3 --- /dev/null +++ b/pkgs/applications/terminal-emulators/gnome-console/default.nix @@ -0,0 +1,69 @@ +{ lib +, stdenv +, fetchurl +, gettext +, gnome +, libgtop +, gtk3 +, libhandy +, pcre2 +, vte +, appstream-glib +, desktop-file-utils +, git +, meson +, ninja +, pkg-config +, python3 +, sassc +, wrapGAppsHook +, nixosTests +}: + +stdenv.mkDerivation rec { + pname = "gnome-console"; + version = "42.beta"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-console/${lib.versions.major version}/${pname}-${version}.tar.xz"; + sha256 = "Lq/shyAhDcwB5HqpihvGx2+xwVU2Xax7/NerFwR36DQ="; + }; + + buildInputs = [ + gettext + libgtop + gnome.nautilus + gtk3 + libhandy + pcre2 + vte + ]; + + nativeBuildInputs = [ + appstream-glib + desktop-file-utils + git + meson + ninja + pkg-config + python3 + sassc + wrapGAppsHook + ]; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + }; + }; + + passthru.tests.test = nixosTests.terminal-emulators.kgx; + + meta = with lib; { + description = "Simple user-friendly terminal emulator for the GNOME desktop"; + homepage = "https://gitlab.gnome.org/GNOME/console"; + license = licenses.gpl3Plus; + maintainers = teams.gnome.members ++ (with maintainers; [ zhaofengli ]); + platforms = platforms.linux; + }; +} diff --git a/pkgs/applications/terminal-emulators/kgx/default.nix b/pkgs/applications/terminal-emulators/kgx/default.nix deleted file mode 100644 index 1be9412e8dae2..0000000000000 --- a/pkgs/applications/terminal-emulators/kgx/default.nix +++ /dev/null @@ -1,79 +0,0 @@ -{ lib -, stdenv -, genericBranding ? false -, fetchFromGitLab -, gettext -, gnome -, libgtop -, gtk3 -, libhandy -, pcre2 -, vte -, appstream-glib -, desktop-file-utils -, git -, meson -, ninja -, pkg-config -, python3 -, sassc -, wrapGAppsHook -, nixosTests -}: - -stdenv.mkDerivation { - pname = "kgx"; - version = "unstable-2021-03-13"; - - src = fetchFromGitLab { - domain = "gitlab.gnome.org"; - owner = "ZanderBrown"; - repo = "kgx"; - rev = "105adb6a8d09418a3ce622442aef6ae623dee787"; - sha256 = "0m34y0nbcfkyicb40iv0iqaq6f9r3f66w43lr803j3351nxqvcz2"; - }; - - buildInputs = [ - gettext - libgtop - gnome.nautilus - gtk3 - libhandy - pcre2 - vte - ]; - - nativeBuildInputs = [ - appstream-glib - desktop-file-utils - git - meson - ninja - pkg-config - python3 - sassc - wrapGAppsHook - ]; - - mesonFlags = lib.optional genericBranding "-Dgeneric=true"; - - postPatch = '' - chmod +x build-aux/meson/postinstall.py - patchShebangs build-aux/meson/postinstall.py - ''; - - preFixup = '' - substituteInPlace $out/share/applications/org.gnome.zbrown.KingsCross.desktop \ - --replace "Exec=kgx" "Exec=$out/bin/kgx" - ''; - - passthru.tests.test = nixosTests.terminal-emulators.kgx; - - meta = with lib; { - description = "Simple user-friendly terminal emulator for the GNOME desktop"; - homepage = "https://gitlab.gnome.org/ZanderBrown/kgx"; - license = licenses.gpl3Plus; - maintainers = with maintainers; [ zhaofengli ]; - platforms = platforms.linux; - }; -} diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix index f22dd77b332a7..7ae463b987300 100644 --- a/pkgs/applications/video/pitivi/default.nix +++ b/pkgs/applications/video/pitivi/default.nix @@ -12,6 +12,7 @@ , libpeas , librsvg , gnome +, gnome-desktop , libnotify , gsound , meson @@ -52,7 +53,7 @@ python3Packages.buildPythonApplication rec { gtk3 libpeas librsvg - gnome.gnome-desktop + gnome-desktop gsound gnome.adwaita-icon-theme gsettings-desktop-schemas diff --git a/pkgs/applications/window-managers/phosh/default.nix b/pkgs/applications/window-managers/phosh/default.nix index 2c01a37aa43c2..90155fbca1ff8 100644 --- a/pkgs/applications/window-managers/phosh/default.nix +++ b/pkgs/applications/window-managers/phosh/default.nix @@ -14,6 +14,7 @@ , glib , gtk3 , gnome +, gnome-desktop , gcr , pam , systemd @@ -63,7 +64,7 @@ stdenv.mkDerivation rec { networkmanager polkit gnome.gnome-control-center - gnome.gnome-desktop + gnome-desktop gnome.gnome-session gtk3 pam diff --git a/pkgs/data/documentation/gnome-user-docs/default.nix b/pkgs/data/documentation/gnome-user-docs/default.nix index 23dfd975bf745..db177006a3dd1 100644 --- a/pkgs/data/documentation/gnome-user-docs/default.nix +++ b/pkgs/data/documentation/gnome-user-docs/default.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { pname = "gnome-user-docs"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-user-docs/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "0xcIld06i7EXyfFIoLs/tJDRr3ExxEFod7G7/sWROVo="; + sha256 = "srJ9oEEAu90vTw5bw48tBW2V+jZWcgFj9kNqMWfV6QU="; }; nativeBuildInputs = [ diff --git a/pkgs/data/misc/mobile-broadband-provider-info/default.nix b/pkgs/data/misc/mobile-broadband-provider-info/default.nix index 51598a53d50a2..234016175d260 100644 --- a/pkgs/data/misc/mobile-broadband-provider-info/default.nix +++ b/pkgs/data/misc/mobile-broadband-provider-info/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "mobile-broadband-provider-info"; - version = "20210805"; + version = "20220315"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-a/ihVY6lVBr7xve0QV50zJ9aqYKbE07Ks+8ch0ElaLw="; + sha256 = "sha256-H82sctF52xQnl4Nm9wG+HDx1Nf1aZYvFzIKCR8b2RcY="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/apps/file-roller/default.nix b/pkgs/desktops/gnome/apps/file-roller/default.nix index c4c489dae08e0..df8e9548c35e8 100644 --- a/pkgs/desktops/gnome/apps/file-roller/default.nix +++ b/pkgs/desktops/gnome/apps/file-roller/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchurl -, fetchpatch , desktop-file-utils , gettext , glibcLocales @@ -17,33 +16,23 @@ , glib , gnome , gtk3 +, libhandy , json-glib , libarchive , libnotify , nautilus -, pantheon , unzip -, withPantheon ? false }: stdenv.mkDerivation rec { pname = "file-roller"; - version = "3.40.0"; + version = "3.42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "039w1dcpa5ypmv6sm634alk9vbcdkyvy595vkh5gn032jsiqca2a"; + sha256 = "HEOObVPsEP9PLrWyLXu/KKfCqElXq2SnUcHN88UjAsc="; }; - patches = lib.optionals withPantheon [ - # Make this respect dark mode settings from Pantheon - # https://github.com/elementary/fileroller/ - (fetchpatch { - url = "https://raw.githubusercontent.com/elementary/fileroller/f183eac36c68c9c9441e72294d4e305cf5fe36ed/fr-application-prefers-color-scheme.patch"; - sha256 = "sha256-d/sqf4Oen9UrzYqru7Ck15o/6g6WfxRDH/iAGFXgYAA="; - }) - ]; - LANG = "en_US.UTF-8"; # postinstall.py nativeBuildInputs = [ @@ -65,12 +54,11 @@ stdenv.mkDerivation rec { glib gnome.adwaita-icon-theme gtk3 + libhandy json-glib libarchive libnotify nautilus - ] ++ lib.optionals withPantheon [ - pantheon.granite ]; PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0"; diff --git a/pkgs/desktops/gnome/apps/ghex/default.nix b/pkgs/desktops/gnome/apps/ghex/default.nix index d12c8f61017c0..1ec3c9dfdf27f 100644 --- a/pkgs/desktops/gnome/apps/ghex/default.nix +++ b/pkgs/desktops/gnome/apps/ghex/default.nix @@ -1,7 +1,9 @@ { stdenv , lib , fetchurl +, fetchpatch , pkg-config +, gi-docgen , meson , ninja , python3 @@ -11,23 +13,38 @@ , gettext , itstool , libxml2 -, gtk3 +, gtk4 , glib , atk +, gobject-introspection , wrapGAppsHook }: stdenv.mkDerivation rec { pname = "ghex"; - version = "3.41.1"; + version = "4.beta.1"; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { - url = "mirror://gnome/sources/ghex/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "i3nPAJ6uXEfK0KtT4hmcOm+y86thh381m+1SR3DuYfc="; + url = "mirror://gnome/sources/ghex/${version}/${pname}-${version}.tar.xz"; + sha256 = "sBS/9cY++uHLGCbLeex8ZW697JJn3dK+HaM6tHBdwJ4="; }; + patches = [ + # Fix build with -Werror=format-security + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/ghex/-/commit/3d35359f3a12b6abb4a3d8a12a0f39b7221be408.patch"; + sha256 = "4z9nUd+/eBOUGwl3MErse+FKLzGqtWKwkIzej57CnYk="; + }) + # Build devhelp index. + # https://gitlab.gnome.org/GNOME/ghex/-/merge_requests/25 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/ghex/-/commit/b26a7b1135ea2fe956a9bc0669b3b6ed818716c3.patch"; + sha256 = "nYjjxds9GNWkW/RhXEe5zJzPF4TnLMsCELEqYR4dXTk="; + }) + ]; + nativeBuildInputs = [ desktop-file-utils gettext @@ -35,12 +52,14 @@ stdenv.mkDerivation rec { meson ninja pkg-config + gi-docgen python3 + gobject-introspection wrapGAppsHook ]; buildInputs = [ - gtk3 + gtk4 atk glib ]; @@ -50,9 +69,18 @@ stdenv.mkDerivation rec { desktop-file-utils ]; + mesonFlags = [ + "-Dgtk_doc=true" + ]; + postPatch = '' - chmod +x meson_post_install.py - patchShebangs meson_post_install.py + chmod +x meson_post_install.py + patchShebangs meson_post_install.py + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/desktops/gnome/apps/gnome-boxes/default.nix b/pkgs/desktops/gnome/apps/gnome-boxes/default.nix index 29b08aa3c1edc..7853a80f073d2 100644 --- a/pkgs/desktops/gnome/apps/gnome-boxes/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-boxes/default.nix @@ -55,11 +55,11 @@ stdenv.mkDerivation rec { pname = "gnome-boxes"; - version = "41.3"; + version = "42.0.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "m4QGgNHnOG/d/WoVrU3Q8s2ljv6BjPVHg3tGrovw4Yk="; + sha256 = "GuIS/4mZFVQuxTtU2VtozfJx2VjPUSzcP+3Hgixu4SM="; }; doCheck = true; diff --git a/pkgs/desktops/gnome/apps/gnome-calendar/default.nix b/pkgs/desktops/gnome/apps/gnome-calendar/default.nix index db353165c28d6..10267a6c8701f 100644 --- a/pkgs/desktops/gnome/apps/gnome-calendar/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-calendar/default.nix @@ -1,47 +1,32 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , meson , ninja , pkg-config -, wrapGAppsHook -, libdazzle +, wrapGAppsHook4 , libgweather , geoclue2 , geocode-glib -, python3 , gettext , libxml2 , gnome -, gtk3 +, gtk4 , evolution-data-server +, libical , libsoup , glib -, gnome-online-accounts , gsettings-desktop-schemas -, libhandy -, adwaita-icon-theme +, libadwaita }: stdenv.mkDerivation rec { pname = "gnome-calendar"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "lWsvGQMiZRxn/mZyI4lviqWs8ztwraWjsFpTYb2mYRo="; - }; - - patches = [ - # https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/84 - # A refactor has caused the PR patch to drift enough to need rebasing - ./gtk_image_reset_crash.patch - ]; - - passthru = { - updateScript = gnome.updateScript { - packageName = pname; - attrPath = "gnome.${pname}"; - }; + sha256 = "tj9z9VAy/BOQRC+UzfazyrnJHHdN3S5cYez+ydLF6ao="; }; nativeBuildInputs = [ @@ -50,35 +35,34 @@ stdenv.mkDerivation rec { pkg-config gettext libxml2 - wrapGAppsHook - python3 + wrapGAppsHook4 ]; buildInputs = [ - gtk3 - evolution-data-server + gtk4 + evolution-data-server # waiting for GTK4 port + libical libsoup glib - gnome-online-accounts - libdazzle libgweather geoclue2 geocode-glib gsettings-desktop-schemas - adwaita-icon-theme - libhandy + libadwaita ]; - postPatch = '' - chmod +x build-aux/meson/meson_post_install.py # patchShebangs requires executable file - patchShebangs build-aux/meson/meson_post_install.py - ''; + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "gnome.${pname}"; + }; + }; meta = with lib; { homepage = "https://wiki.gnome.org/Apps/Calendar"; description = "Simple and beautiful calendar application for GNOME"; maintainers = teams.gnome.members; - license = licenses.gpl3; + license = licenses.gpl3Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch b/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch deleted file mode 100644 index 5065295b57b77..0000000000000 --- a/pkgs/desktops/gnome/apps/gnome-calendar/gtk_image_reset_crash.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/src/gui/views/gcal-year-view.c b/src/gui/views/gcal-year-view.c -index ac32a8f9..532425c1 100644 ---- a/src/gui/views/gcal-year-view.c -+++ b/src/gui/views/gcal-year-view.c -@@ -2158,7 +2158,11 @@ update_weather (GcalYearView *self) - if (!updated) - { - gtk_label_set_text (self->temp_label, ""); -- gtk_image_clear (self->weather_icon); -+ /* FIXME: This should never be NULL, but it somehow is. -+ * https://gitlab.gnome.org/GNOME/gnome-calendar/issues/299 -+ */ -+ if (self->weather_icon != NULL) -+ gtk_image_clear (self->weather_icon); - } - } - diff --git a/pkgs/desktops/gnome/apps/gnome-characters/default.nix b/pkgs/desktops/gnome/apps/gnome-characters/default.nix index 960a3320472d7..b43e0cdecadfa 100644 --- a/pkgs/desktops/gnome/apps/gnome-characters/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-characters/default.nix @@ -7,26 +7,26 @@ , gettext , gnome , glib -, gtk3 +, gtk4 , pango -, wrapGAppsHook +, wrapGAppsHook4 , python3 +, desktop-file-utils , gobject-introspection , gjs , libunistring -, libhandy +, libadwaita , gsettings-desktop-schemas -, adwaita-icon-theme , gnome-desktop }: stdenv.mkDerivation rec { pname = "gnome-characters"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-characters/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "0yw6mimfwn0fij8zncjb4rg8bnazd1z47rmzq85lk6807nlyqag1"; + sha256 = "XaD/uBb4prRPMDdEyoJ6NAgBGMHJONjXmvF7f+Z5gPg="; }; nativeBuildInputs = [ @@ -36,39 +36,39 @@ stdenv.mkDerivation rec { ninja pkg-config python3 - wrapGAppsHook + desktop-file-utils + wrapGAppsHook4 ]; buildInputs = [ - adwaita-icon-theme gjs glib gnome-desktop # for typelib gsettings-desktop-schemas - gtk3 + gtk4 libunistring - libhandy + libadwaita pango ]; postPatch = '' chmod +x meson_post_install.py # patchShebangs requires executable file patchShebangs meson_post_install.py + + # https://gitlab.gnome.org/GNOME/gnome-characters/-/merge_requests/70 + substituteInPlace meson_post_install.py \ + --replace "gtk-update-icon-cache" "gtk4-update-icon-cache" ''; dontWrapGApps = true; - # Fixes https://github.com/NixOS/nixpkgs/issues/31168 postFixup = '' - for file in $out/share/org.gnome.Characters/org.gnome.Characters \ - $out/share/org.gnome.Characters/org.gnome.Characters.BackgroundService - do - sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \ - -i $file - - wrapGApp "$file" - done + # Fixes https://github.com/NixOS/nixpkgs/issues/31168 + file="$out/share/org.gnome.Characters/org.gnome.Characters" + sed -e $"2iimports.package._findEffectiveEntryPointName = () => \'$(basename $file)\' " \ + -i $file + wrapGApp "$file" ''; passthru = { diff --git a/pkgs/desktops/gnome/apps/gnome-clocks/default.nix b/pkgs/desktops/gnome/apps/gnome-clocks/default.nix index 2e8ec02bd845f..3c57c6272e849 100644 --- a/pkgs/desktops/gnome/apps/gnome-clocks/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-clocks/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , meson , ninja @@ -7,35 +8,34 @@ , wrapGAppsHook , itstool , desktop-file-utils -, vala +, vala_0_56 , gobject-introspection , libxml2 -, gtk3 +, gtk4 , glib , gsound , sound-theme-freedesktop , gsettings-desktop-schemas -, adwaita-icon-theme , gnome-desktop , geocode-glib , gnome , gdk-pixbuf , geoclue2 , libgweather -, libhandy +, libadwaita }: stdenv.mkDerivation rec { pname = "gnome-clocks"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-clocks/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "34yLBKuS+mGPXe5RGFce+fyeilt5XqAKNcbcZ3ywLaw="; + sha256 = "DnEY20oDLjzqMhLZjLuCjWt88i/gXgxfyLORxqPdb+A="; }; nativeBuildInputs = [ - vala + vala_0_56 meson ninja pkg-config @@ -48,17 +48,16 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - gtk3 + gtk4 glib gsettings-desktop-schemas gdk-pixbuf - adwaita-icon-theme gnome-desktop geocode-glib geoclue2 libgweather gsound - libhandy + libadwaita ]; preFixup = '' @@ -81,7 +80,7 @@ stdenv.mkDerivation rec { homepage = "https://wiki.gnome.org/Apps/Clocks"; description = "Clock application designed for GNOME 3"; maintainers = teams.gnome.members; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/apps/gnome-connections/default.nix b/pkgs/desktops/gnome/apps/gnome-connections/default.nix index 83e88059f8064..b8517a833b004 100644 --- a/pkgs/desktops/gnome/apps/gnome-connections/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-connections/default.nix @@ -4,7 +4,7 @@ , meson , ninja , pkg-config -, vala +, vala_0_56 , gettext , itstool , python3 @@ -14,6 +14,7 @@ , glib , gtk3 , libhandy +, libsecret , libxml2 , gtk-vnc , gtk-frdp @@ -22,18 +23,18 @@ stdenv.mkDerivation rec { pname = "gnome-connections"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - hash = "sha256-WrmUKPPOn4qDdDK2e3XbxSi5U6QpOotWVE34g0b+VxM="; + hash = "sha256-L3s5u0OPS2oM3Jn2JjGpXbI+W7JC7Gg5pMlQKchwJO0="; }; nativeBuildInputs = [ meson ninja pkg-config - vala + vala_0_56 gettext itstool python3 @@ -48,6 +49,7 @@ stdenv.mkDerivation rec { gtk-vnc gtk3 libhandy + libsecret libxml2 gtk-frdp ]; diff --git a/pkgs/desktops/gnome/apps/gnome-maps/default.nix b/pkgs/desktops/gnome/apps/gnome-maps/default.nix index 5d90cefdff39d..0efb5faa3c713 100644 --- a/pkgs/desktops/gnome/apps/gnome-maps/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-maps/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl +, fetchpatch , meson , ninja , gettext @@ -29,13 +31,22 @@ stdenv.mkDerivation rec { pname = "gnome-maps"; - version = "41.4"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-40CxP0b+C31bD48BQTKR3c2HDHSlw4+iTKwfWF5wOT4="; + sha256 = "sha256-BUSG03dAc3BqdqmBQXl40VG+O3Ik1yN3W74xbvoked8="; }; + patches = [ + # Do not pin to GWeather 3.0, the used API did not change in 4.0. + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-maps/-/commit/759d3087b70341b2c5f1af575ce44338d926690e.patch"; + sha256 = "Qp9Hta00TLf2lOb9+g9vnPoK17mP3eHpCG2i1ewaw+w="; + revert = true; + }) + ]; + doCheck = true; nativeBuildInputs = [ @@ -78,7 +89,7 @@ stdenv.mkDerivation rec { # entry point to the wrapped binary we get back to a wrapped # binary. substituteInPlace "data/org.gnome.Maps.service.in" \ - --replace "Exec=@pkgdatadir@/org.gnome.Maps" \ + --replace "Exec=@pkgdatadir@/@app-id@" \ "Exec=$out/bin/gnome-maps" ''; diff --git a/pkgs/desktops/gnome/apps/gnome-music/default.nix b/pkgs/desktops/gnome/apps/gnome-music/default.nix index 96ec321fa4a97..4676710bfc616 100644 --- a/pkgs/desktops/gnome/apps/gnome-music/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-music/default.nix @@ -15,7 +15,7 @@ , grilo , grilo-plugins , pkg-config -, gtk3 +, gtk4 , pango , glib , desktop-file-utils @@ -23,21 +23,20 @@ , itstool , gnome , gst_all_1 -, libdazzle , libsoup -, libhandy +, libadwaita , gsettings-desktop-schemas }: python3.pkgs.buildPythonApplication rec { pname = "gnome-music"; - version = "41.0"; + version = "42.0"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1llz2aqa3n3ivwl7i09pgylsbgrfzb872vcj1k7pvivxm1kkbcb9"; + sha256 = "nWgZj5hSveD4NFhLlqgSiX0xDLcXKLak8Ji8spsZxdA="; }; nativeBuildInputs = [ @@ -54,7 +53,7 @@ python3.pkgs.buildPythonApplication rec { ]; buildInputs = [ - gtk3 + gtk4 pango glib libmediaart @@ -66,9 +65,8 @@ python3.pkgs.buildPythonApplication rec { grilo grilo-plugins libnotify - libdazzle libsoup - libhandy + libadwaita gsettings-desktop-schemas tracker ] ++ (with gst_all_1; [ @@ -85,13 +83,6 @@ python3.pkgs.buildPythonApplication rec { pygobject3 ]; - postPatch = '' - for f in meson_post_conf.py meson_post_install.py; do - chmod +x $f - patchShebangs $f - done - ''; - # Prevent double wrapping, let the Python wrapper use the args in preFixup. dontWrapGApps = true; diff --git a/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix b/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix index 29f7aa6e9ee4b..cd7259c3ae956 100644 --- a/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-sound-recorder/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , pkg-config , gettext @@ -6,7 +7,7 @@ , wrapGAppsHook , gjs , glib -, gtk3 +, gtk4 , gdk-pixbuf , gst_all_1 , gnome @@ -14,16 +15,16 @@ , ninja , python3 , desktop-file-utils -, libhandy +, libadwaita }: stdenv.mkDerivation rec { pname = "gnome-sound-recorder"; - version = "40.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "00b55vsfzx877b7mj744abzjws7zclz71wbvh0axsrbl9l84ranl"; + sha256 = "TAjDFSgvPr96LabyDg/58McdqlIp/NL+C1wKqqoG8K0="; }; nativeBuildInputs = [ @@ -40,9 +41,9 @@ stdenv.mkDerivation rec { buildInputs = [ gjs glib - gtk3 + gtk4 gdk-pixbuf - libhandy + libadwaita ] ++ (with gst_all_1; [ gstreamer gst-plugins-base diff --git a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix index 22f9ac176aad5..ac065aaaec7e4 100644 --- a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "gnome-text-editor"; - version = "41.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-YZ7FINbgkF1DEWcCTkPc4Nv2o0Xy1IaTUB1w3HYm+GE="; + sha256 = "sha256-DjIUDuHBNChWO81feE5h7iL/0a0n2MAig7Q1ioHfq1A="; }; nativeBuildInputs = [ @@ -53,14 +53,6 @@ stdenv.mkDerivation rec { pcre ]; - postPatch = '' - chmod +x build-aux/meson/postinstall.py - patchShebangs build-aux/meson/postinstall.py - substituteInPlace build-aux/meson/postinstall.py \ - --replace "gtk-update-icon-cache" "gtk4-update-icon-cache" - ''; - - passthru = { updateScript = gnome.updateScript { packageName = "gnome-text-editor"; diff --git a/pkgs/desktops/gnome/apps/gnome-weather/default.nix b/pkgs/desktops/gnome/apps/gnome-weather/default.nix index aa192a6a3b653..b7921322d9947 100644 --- a/pkgs/desktops/gnome/apps/gnome-weather/default.nix +++ b/pkgs/desktops/gnome/apps/gnome-weather/default.nix @@ -3,8 +3,8 @@ , fetchurl , pkg-config , gnome -, gtk3 -, libhandy +, gtk4 +, libadwaita , wrapGAppsHook , gjs , gobject-introspection @@ -12,18 +12,17 @@ , meson , ninja , geoclue2 -, gnome-desktop , python3 , gsettings-desktop-schemas }: stdenv.mkDerivation rec { pname = "gnome-weather"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-weather/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1vidwq768xnrnr24jcfbpwjczz7vm5zmaiv41nb75q4p8avlwqg5"; + sha256 = "V57mkdhT5bs/9Q6Me0P4Wundfls6ZJ4CwlSi2bgHtGU="; }; nativeBuildInputs = [ @@ -35,11 +34,10 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - gtk3 - libhandy + gtk4 + libadwaita gjs gobject-introspection - gnome-desktop libgweather gnome.adwaita-icon-theme geoclue2 @@ -70,7 +68,7 @@ stdenv.mkDerivation rec { homepage = "https://wiki.gnome.org/Apps/Weather"; description = "Access current weather conditions and forecasts"; maintainers = teams.gnome.members; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/apps/polari/default.nix b/pkgs/desktops/gnome/apps/polari/default.nix index f207307588a12..c734a5c5c8282 100644 --- a/pkgs/desktops/gnome/apps/polari/default.nix +++ b/pkgs/desktops/gnome/apps/polari/default.nix @@ -1,15 +1,40 @@ -{ lib, stdenv, itstool, fetchurl, gdk-pixbuf, adwaita-icon-theme -, telepathy-glib, gjs, meson, ninja, gettext, telepathy-idle, libxml2, desktop-file-utils -, pkg-config, gtk4, gtk3, glib, libsecret, libsoup, webkitgtk, gobject-introspection, appstream-glib -, gnome, wrapGAppsHook4, telepathy-logger, gspell, gsettings-desktop-schemas }: +{ stdenv +, lib +, itstool +, fetchurl +, gdk-pixbuf +, telepathy-glib +, gjs +, meson +, ninja +, gettext +, telepathy-idle +, libxml2 +, desktop-file-utils +, pkg-config +, gtk4 +, libadwaita +, gtk3 +, glib +, libsecret +, libsoup +, webkitgtk +, gobject-introspection +, appstream-glib +, gnome +, wrapGAppsHook4 +, telepathy-logger +, gspell +, gsettings-desktop-schemas +}: stdenv.mkDerivation rec { pname = "polari"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "o7BfgWYDcMZ8lCtvRLKYx7eIFv6zjJJuwiEr3iLqQOs="; + sha256 = "WPFbv1tCwLASPv3td1cR07DyRJl1cwlAOMpVZGHgSTw="; }; patches = [ @@ -19,16 +44,38 @@ stdenv.mkDerivation rec { ./make-thumbnailer-wrappable.patch ]; - propagatedUserEnvPkgs = [ telepathy-idle telepathy-logger ]; + propagatedUserEnvPkgs = [ + telepathy-idle + telepathy-logger + ]; nativeBuildInputs = [ - meson ninja pkg-config itstool gettext wrapGAppsHook4 libxml2 - desktop-file-utils gobject-introspection appstream-glib + meson + ninja + pkg-config + itstool + gettext + wrapGAppsHook4 + libxml2 + desktop-file-utils + gobject-introspection + appstream-glib ]; buildInputs = [ - gtk4 gtk3 glib adwaita-icon-theme gsettings-desktop-schemas - telepathy-glib telepathy-logger gjs gspell gdk-pixbuf libsecret libsoup webkitgtk + gtk4 + libadwaita + gtk3 # for thumbnailer + glib + gsettings-desktop-schemas + telepathy-glib + telepathy-logger + gjs + gspell + gdk-pixbuf + libsecret + libsoup + webkitgtk # for thumbnailer ]; postFixup = '' @@ -46,7 +93,7 @@ stdenv.mkDerivation rec { homepage = "https://wiki.gnome.org/Apps/Polari"; description = "IRC chat client designed to integrate with the GNOME desktop"; maintainers = teams.gnome.members; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix b/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix index c7c85779d3fbf..b3c9e1ea62ae7 100644 --- a/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix +++ b/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "adwaita-icon-theme"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/adwaita-icon-theme/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "71M52MNfytXRBIG3BICAPw+iCz08vDOSOPys7q7gHro="; + sha256 = "XoW1rcje5maQD8rycbpxf33LnQoD2W2uCPnL0n4YseA="; }; # For convenience, we can specify adwaita-icon-theme only in packages diff --git a/pkgs/desktops/gnome/core/baobab/default.nix b/pkgs/desktops/gnome/core/baobab/default.nix index 40ea18b1af1e4..7c463e8ed283e 100644 --- a/pkgs/desktops/gnome/core/baobab/default.nix +++ b/pkgs/desktops/gnome/core/baobab/default.nix @@ -8,22 +8,22 @@ , ninja , pkg-config , python3 -, gtk3 -, libhandy +, gtk4 +, libadwaita , glib , libxml2 -, wrapGAppsHook +, wrapGAppsHook4 , itstool , gnome }: stdenv.mkDerivation rec { pname = "baobab"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "ytYnjS3MgMhLVxBapbtY2KMM6Y1vq9dnUZ3bhshX6FU="; + sha256 = "Sxqr5rqxWCs/6nmigpvOfyQVu25QYvJTV67t1TF6UNw="; }; nativeBuildInputs = [ @@ -37,21 +37,27 @@ stdenv.mkDerivation rec { pkg-config python3 vala - wrapGAppsHook - # Prevents “error: Package `libhandy-1' not found in specified Vala API + wrapGAppsHook4 + # Prevents “error: Package `libadwaita-1' not found in specified Vala API # directories or GObject-Introspection GIR directories” with strictDeps, # even though it should only be a runtime dependency. - libhandy + libadwaita ]; buildInputs = [ - gtk3 - libhandy + gtk4 + libadwaita glib ]; doCheck = true; + postPatch = '' + # https://gitlab.gnome.org/GNOME/baobab/-/merge_requests/40 + substituteInPlace build-aux/post-install.py \ + --replace "gtk-update-icon-cache" "gtk4-update-icon-cache" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/eog/default.nix b/pkgs/desktops/gnome/core/eog/default.nix index cdde96ae43b9b..08baf9022f71d 100644 --- a/pkgs/desktops/gnome/core/eog/default.nix +++ b/pkgs/desktops/gnome/core/eog/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl -, fetchpatch , meson , ninja , gettext @@ -12,9 +12,9 @@ , libportal-gtk3 , gnome , gtk3 +, libhandy , glib , gsettings-desktop-schemas -, adwaita-icon-theme , gnome-desktop , lcms2 , gdk-pixbuf @@ -24,27 +24,20 @@ , librsvg , libexif , gobject-introspection -, python3 +, gi-docgen }: stdenv.mkDerivation rec { pname = "eog"; - version = "41.1"; + version = "42.0"; + + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-huG5ujnaz3QiavpFermDtBJTuJ9he/VBOcrQiS0C2Kk="; + sha256 = "sha256-+zW/tRZ6QhIfWae5t6wNdbvQUXua/W2Rgx6E01c13fg="; }; - patches = [ - # Fix build with latest libportal - # https://gitlab.gnome.org/GNOME/eog/-/merge_requests/115 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/eog/-/commit/a06e6325907e136678b0bbe7058c25d688034afd.patch"; - sha256 = "ttcsfHubfmIbxA51YLnxXDagLLNutXYmoQyMQ4sHRak="; - }) - ]; - nativeBuildInputs = [ meson ninja @@ -52,15 +45,16 @@ stdenv.mkDerivation rec { gettext itstool wrapGAppsHook - libxml2 + libxml2 # for xmllint for xml-stripblanks gobject-introspection - python3 + gi-docgen ]; buildInputs = [ libjpeg libportal-gtk3 gtk3 + libhandy gdk-pixbuf glib libpeas @@ -71,13 +65,11 @@ stdenv.mkDerivation rec { exempi gsettings-desktop-schemas shared-mime-info - adwaita-icon-theme ]; - postPatch = '' - chmod +x meson_post_install.py - patchShebangs meson_post_install.py - ''; + mesonFlags = [ + "-Dgtk_doc=true" + ]; preFixup = '' gappsWrapperArgs+=( @@ -88,6 +80,11 @@ stdenv.mkDerivation rec { ) ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/epiphany/default.nix b/pkgs/desktops/gnome/core/epiphany/default.nix index eb8caa4f1eff0..43b3eb2ee2fc3 100644 --- a/pkgs/desktops/gnome/core/epiphany/default.nix +++ b/pkgs/desktops/gnome/core/epiphany/default.nix @@ -11,7 +11,6 @@ , icu , wrapGAppsHook , gnome -, pantheon , libportal-gtk3 , libxml2 , libxslt @@ -41,37 +40,23 @@ stdenv.mkDerivation rec { pname = "epiphany"; - version = "41.3"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "ugEmjuVPMY39rC4B66OKP8lpQMHL9kDtJhOuKfi8ua0="; + sha256 = "Pb+owA5Ft/ROGCTQHw/r6DcHtfuTMMJhFz9ot/A81eM="; }; patches = lib.optionals withPantheon [ # Pantheon specific patches for epiphany # https://github.com/elementary/browser # - # Make this respect dark mode settings from Pantheon - # https://github.com/elementary/browser/pull/21 - # https://github.com/elementary/browser/pull/41 - (fetchpatch { - url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/dark-style.patch"; - sha256 = "sha256-RzMUc9P51UN3tRFefzRtMniXR9duOOmLj5eu5gL2TEQ="; - }) # Patch to unlink nav buttons # https://github.com/elementary/browser/pull/18 (fetchpatch { url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/navigation-buttons.patch"; sha256 = "sha256-G1/JUjn/8DyO9sgL/5Kq205KbTOs4EMi4Vf3cJ8FHXU="; }) - ] ++ [ - # Fix build with latest libportal - # https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/1051 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/epiphany/-/commit/84474398f6e59266b73170838219aa896729ce93.patch"; - sha256 = "SeiLTo3FcOxuml5sJX9GqyGdyGf1jm1A76SOI0JJvoo="; - }) ]; nativeBuildInputs = [ @@ -94,7 +79,6 @@ stdenv.mkDerivation rec { glib glib-networking gnome-desktop - gnome.adwaita-icon-theme gst_all_1.gst-libav gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-base @@ -117,8 +101,6 @@ stdenv.mkDerivation rec { p11-kit sqlite webkitgtk - ] ++ lib.optionals withPantheon [ - pantheon.granite ]; # Tests need an X display diff --git a/pkgs/desktops/gnome/core/evince/default.nix b/pkgs/desktops/gnome/core/evince/default.nix index d7001853fa6c8..18451ce239f7d 100644 --- a/pkgs/desktops/gnome/core/evince/default.nix +++ b/pkgs/desktops/gnome/core/evince/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchurl -, fetchpatch , meson , ninja , pkg-config @@ -32,42 +31,27 @@ , gsettings-desktop-schemas , gnome-desktop , dbus -, pantheon , python3 , texlive -, t1lib , gst_all_1 -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_43 +, gi-docgen , supportMultimedia ? true # PDF multimedia , libgxps , supportXPS ? true # Open XML Paper Specification via libgxps -, withPantheon ? false , withLibsecret ? true }: stdenv.mkDerivation rec { pname = "evince"; - version = "41.4"; + version = "42.1"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/evince/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "/yRSQPIwkivsMqTXsKHZGyR6g9E0hPmbdANdUesjITA="; + sha256 = "skdnuz1RA7TjWw4VzwM9viSI+IcAzdiC0ipDre7C6Ao="; }; - patches = lib.optionals withPantheon [ - # Make this respect dark mode settings from Pantheon - # https://github.com/elementary/evince/pull/21 - # https://github.com/elementary/evince/pull/31 - (fetchpatch { - url = "https://raw.githubusercontent.com/elementary/evince/c8364019ee2c2dffd2a1bccf79b8f4e526aa22af/dark-style.patch"; - sha256 = "sha256-nKELRXnM6gMRTGmWdO1Qqlo9ciy+4HOK5z2CYOoi2Lo="; - }) - ]; - postPatch = '' chmod +x meson_post_install.py patchShebangs meson_post_install.py @@ -75,11 +59,9 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ appstream - docbook-xsl-nons - docbook_xml_dtd_43 gettext gobject-introspection - gtk-doc + gi-docgen itstool meson ninja @@ -108,7 +90,6 @@ stdenv.mkDerivation rec { libxml2 pango poppler - t1lib texlive.bin.core # kpathsea for DVI support ] ++ lib.optionals withLibsecret [ libsecret @@ -121,9 +102,7 @@ stdenv.mkDerivation rec { gst-plugins-bad gst-plugins-ugly gst-libav - ]) ++ lib.optionals withPantheon [ - pantheon.granite - ]; + ]); mesonFlags = [ "-Dnautilus=false" @@ -140,6 +119,11 @@ stdenv.mkDerivation rec { gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share") ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/evolution-data-server/default.nix b/pkgs/desktops/gnome/core/evolution-data-server/default.nix index b7ba12be13567..e43fe60eb7e90 100644 --- a/pkgs/desktops/gnome/core/evolution-data-server/default.nix +++ b/pkgs/desktops/gnome/core/evolution-data-server/default.nix @@ -1,18 +1,57 @@ -{ fetchurl, lib, stdenv, substituteAll, pkg-config, gnome, python3, gobject-introspection -, intltool, libsoup, libxml2, libsecret, icu, sqlite, tzdata, libcanberra-gtk3, gcr, p11-kit -, db, nspr, nss, libical, gperf, wrapGAppsHook, glib-networking, pcre, vala, cmake, ninja -, libkrb5, openldap, webkitgtk, libaccounts-glib, json-glib, glib, gtk3, libphonenumber -, gnome-online-accounts, libgweather, libgdata, gsettings-desktop-schemas, boost, protobuf }: +{ stdenv +, lib +, fetchurl +, substituteAll +, pkg-config +, gnome +, python3 +, gobject-introspection +, gettext +, libsoup +, libxml2 +, libsecret +, icu +, sqlite +, tzdata +, libcanberra-gtk3 +, gcr +, p11-kit +, db +, nspr +, nss +, libical +, gperf +, wrapGAppsHook +, glib-networking +, pcre +, vala +, cmake +, ninja +, libkrb5 +, openldap +, webkitgtk +, libaccounts-glib +, json-glib +, glib +, gtk3 +, libphonenumber +, gnome-online-accounts +, libgweather +, libgdata +, gsettings-desktop-schemas +, boost +, protobuf +}: stdenv.mkDerivation rec { pname = "evolution-data-server"; - version = "3.42.4"; + version = "3.44.0"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "fftBs+bAWBHUSajeTfx3q5sZ+O3yCzL92FeRhmIm0lI="; + sha256 = "DYiBtcUeG5F2GxlF2yZKRqq/VKc+6hyo9EiyB4FdWC4="; }; patches = [ @@ -23,19 +62,47 @@ stdenv.mkDerivation rec { ]; prePatch = '' - substitute ${./hardcode-gsettings.patch} hardcode-gsettings.patch --subst-var-by ESD_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"} \ + substitute ${./hardcode-gsettings.patch} hardcode-gsettings.patch \ + --subst-var-by ESD_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"} \ --subst-var-by GDS_GSETTINGS_PATH ${glib.getSchemaPath gsettings-desktop-schemas} patches="$patches $PWD/hardcode-gsettings.patch" ''; nativeBuildInputs = [ - cmake ninja pkg-config intltool python3 gperf wrapGAppsHook gobject-introspection vala + cmake + ninja + pkg-config + gettext + python3 + gperf + wrapGAppsHook + gobject-introspection + vala ]; + buildInputs = [ - glib libsoup libxml2 gtk3 gnome-online-accounts - gcr p11-kit libgweather libgdata libaccounts-glib json-glib - icu sqlite libkrb5 openldap webkitgtk glib-networking - libcanberra-gtk3 pcre libphonenumber boost protobuf + glib + libsoup + libxml2 + gtk3 + gnome-online-accounts + gcr + p11-kit + libgweather + libgdata + libaccounts-glib + json-glib + icu + sqlite + libkrb5 + openldap + webkitgtk + glib-networking + libcanberra-gtk3 + pcre + libphonenumber + boost + protobuf ]; propagatedBuildInputs = [ @@ -55,6 +122,7 @@ stdenv.mkDerivation rec { "-DCMAKE_SKIP_BUILD_RPATH=OFF" "-DINCLUDE_INSTALL_DIR=${placeholder "dev"}/include" "-DWITH_PHONENUMBER=ON" + "-DWITH_GWEATHER4=ON" ]; passthru = { @@ -67,7 +135,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Unified backend for programs that work with contacts, tasks, and calendar information"; homepage = "https://wiki.gnome.org/Apps/Evolution"; - license = licenses.lgpl2; + license = licenses.lgpl2Plus; maintainers = teams.gnome.members; platforms = platforms.linux; }; diff --git a/pkgs/desktops/gnome/core/gdm/default.nix b/pkgs/desktops/gnome/core/gdm/default.nix index 6b51d11adfedb..990f1bef2119e 100644 --- a/pkgs/desktops/gnome/core/gdm/default.nix +++ b/pkgs/desktops/gnome/core/gdm/default.nix @@ -19,6 +19,7 @@ , gtk3 , libcanberra-gtk3 , pam +, libgudev , libselinux , keyutils , audit @@ -43,13 +44,13 @@ in stdenv.mkDerivation rec { pname = "gdm"; - version = "41.3"; + version = "42.0"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/gdm/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "uwtlCnzqkPCaMyhPvQKXUxVAfvwY6BQAmFLRvK00N9Q="; + sha256 = "oyisl2k3vsF5lx/weCmhJGuYznJBgcEorjKguketOFU="; }; mesonFlags = [ @@ -83,6 +84,7 @@ stdenv.mkDerivation rec { keyutils libX11 libcanberra-gtk3 + libgudev libselinux pam plymouth diff --git a/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix b/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix index 89a49e4cecb33..ba70570b1f85c 100644 --- a/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix +++ b/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix @@ -1,16 +1,18 @@ -{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gnome, gettext }: +{ stdenv +, lib +, fetchurl +, meson +, ninja +, gnome +}: stdenv.mkDerivation rec { pname = "gnome-backgrounds"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-backgrounds/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "HaGsDSYb7fD80shbSAvGVQXiPPUfEUMSbA03cX5pMUU="; - }; - - passthru = { - updateScript = gnome.updateScript { packageName = "gnome-backgrounds"; attrPath = "gnome.gnome-backgrounds"; }; + sha256 = "TH/hoJ9FnF93GJpZglJPzgXYiJRJVdZ5kQ8jRgbBKV0="; }; patches = [ @@ -20,9 +22,22 @@ stdenv.mkDerivation rec { ./stable-dir.patch ]; - nativeBuildInputs = [ meson ninja pkg-config gettext ]; + nativeBuildInputs = [ + meson + ninja + ]; + + passthru = { + updateScript = gnome.updateScript { + packageName = "gnome-backgrounds"; + attrPath = "gnome.gnome-backgrounds"; + }; + }; meta = with lib; { + description = "Default wallpaper set for GNOME"; + homepage = "https://gitlab.gnome.org/GNOME/gnome-backgrounds"; + license = licenses.cc-by-sa-30; platforms = platforms.unix; maintainers = teams.gnome.members; }; diff --git a/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix b/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix index 901dbc21e9ef8..7d8fc2bc86748 100644 --- a/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix +++ b/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix @@ -5,15 +5,17 @@ , meson , ninja , pkg-config -, gtk3 +, gtk4 +, libadwaita , gettext , glib , udev +, upower , itstool , libxml2 , wrapGAppsHook , libnotify -, libcanberra-gtk3 +, gsound , gobject-introspection , gtk-doc , docbook-xsl-nons @@ -24,14 +26,14 @@ stdenv.mkDerivation rec { pname = "gnome-bluetooth"; - version = "3.34.5"; + version = "42.0"; # TODO: split out "lib" outputs = [ "out" "dev" "devdoc" "man" ]; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1a9ynlwwkb3wpg293ym517vmrkk63y809mmcv9a21k5yr199x53c"; + url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; + sha256 = "PR4nIGc7yaJCYZ3F0jH9bndsGKSdop9DzcQzBVrbAXA="; }; nativeBuildInputs = [ @@ -51,24 +53,19 @@ stdenv.mkDerivation rec { buildInputs = [ glib - gtk3 + gtk4 + libadwaita udev + upower libnotify - libcanberra-gtk3 - gnome.adwaita-icon-theme + gsound gsettings-desktop-schemas ]; mesonFlags = [ - "-Dicon_update=false" "-Dgtk_doc=true" ]; - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - ''; - passthru = { updateScript = gnome.updateScript { packageName = pname; @@ -77,7 +74,7 @@ stdenv.mkDerivation rec { }; meta = with lib; { - homepage = "https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en"; + homepage = "https://gitlab.gnome.org/GNOME/gnome-bluetooth"; description = "Application that lets you manage Bluetooth in the GNOME desktop"; maintainers = teams.gnome.members; license = licenses.gpl2Plus; diff --git a/pkgs/desktops/gnome/core/gnome-calculator/default.nix b/pkgs/desktops/gnome/core/gnome-calculator/default.nix index 6a7a8ccec06b9..889155f19a6de 100644 --- a/pkgs/desktops/gnome/core/gnome-calculator/default.nix +++ b/pkgs/desktops/gnome/core/gnome-calculator/default.nix @@ -8,29 +8,28 @@ , fetchurl , pkg-config , libxml2 -, gtk3 +, gtk4 , glib -, gtksourceview4 +, gtksourceview5 , wrapGAppsHook , gobject-introspection -, python3 , gnome , mpfr , gmp , libsoup , libmpc -, libhandy +, libadwaita , gsettings-desktop-schemas , libgee }: stdenv.mkDerivation rec { pname = "gnome-calculator"; - version = "41.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-calculator/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "AmdhSv2yXTi3hBG0Lrq3vFDBtjQMxJu2jA5DLX3fijQ="; + sha256 = "pTWhTr6ljmkaS1oIUlau0GCiw/BzhKw6PQGDIzKifko="; }; nativeBuildInputs = [ @@ -41,32 +40,25 @@ stdenv.mkDerivation rec { gettext itstool wrapGAppsHook - python3 gobject-introspection # for finding vapi files ]; buildInputs = [ - gtk3 + gtk4 glib libxml2 - gtksourceview4 + gtksourceview5 mpfr gmp - gnome.adwaita-icon-theme libgee gsettings-desktop-schemas libsoup libmpc - libhandy + libadwaita ]; doCheck = true; - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - ''; - preCheck = '' # Currency conversion test tries to store currency data in $HOME/.cache. export HOME=$TMPDIR diff --git a/pkgs/desktops/gnome/core/gnome-color-manager/default.nix b/pkgs/desktops/gnome/core/gnome-color-manager/default.nix index dae367f1d5baa..65a9daa574549 100644 --- a/pkgs/desktops/gnome/core/gnome-color-manager/default.nix +++ b/pkgs/desktops/gnome/core/gnome-color-manager/default.nix @@ -21,11 +21,11 @@ stdenv.mkDerivation rec { pname = "gnome-color-manager"; - version = "3.32.0"; + version = "3.36.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1vpxa2zjz3lkq9ldjg0fl65db9s6b4kcs8nyaqfz3jygma7ifg3w"; + sha256 = "nduea2Ry4RmAE4H5CQUzLsHUJYmBchu6gxyiRs6zrTs="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-contacts/default.nix b/pkgs/desktops/gnome/core/gnome-contacts/default.nix index 1c16c3dd35ea8..fac22f0b5785f 100644 --- a/pkgs/desktops/gnome/core/gnome-contacts/default.nix +++ b/pkgs/desktops/gnome/core/gnome-contacts/default.nix @@ -1,18 +1,16 @@ -{ lib, stdenv +{ lib +, stdenv , gettext , fetchurl , evolution-data-server , pkg-config , libxslt -, docbook_xsl +, docbook-xsl-nons , docbook_xml_dtd_42 -, python3 -, gtk3 +, desktop-file-utils +, gtk4 , glib -, cheese -, libchamplain -, clutter-gtk -, geocode-glib +, libportal , gnome-desktop , gnome-online-accounts , wrapGAppsHook @@ -23,17 +21,17 @@ , vala , meson , ninja -, libhandy +, libadwaita , gsettings-desktop-schemas }: stdenv.mkDerivation rec { pname = "gnome-contacts"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-contacts/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "Y+MUm10UdbeiaYAFu191DzyApzVxcWDjnfjP3+v8zfA="; + sha256 = "iALDj9wj9SjawSj1O9zx9sow4OHGhIxCzWyEpeIsUhY="; }; propagatedUserEnvPkgs = [ @@ -47,34 +45,25 @@ stdenv.mkDerivation rec { vala gettext libxslt - docbook_xsl + docbook-xsl-nons docbook_xml_dtd_42 - python3 + desktop-file-utils wrapGAppsHook ]; buildInputs = [ - gtk3 + gtk4 glib + libportal evolution-data-server gsettings-desktop-schemas folks gnome-desktop - libhandy + libadwaita libxml2 gnome-online-accounts - cheese - gnome.adwaita-icon-theme - libchamplain - clutter-gtk - geocode-glib ]; - postPatch = '' - chmod +x build-aux/meson_post_install.py - patchShebangs build-aux/meson_post_install.py - ''; - doCheck = true; passthru = { diff --git a/pkgs/desktops/gnome/core/gnome-control-center/default.nix b/pkgs/desktops/gnome/core/gnome-control-center/default.nix index f68977e52dd07..9dc09cfe81a5e 100644 --- a/pkgs/desktops/gnome/core/gnome-control-center/default.nix +++ b/pkgs/desktops/gnome/core/gnome-control-center/default.nix @@ -4,11 +4,8 @@ , substituteAll , accountsservice , adwaita-icon-theme -, cheese -, clutter -, clutter-gtk , colord -, colord-gtk +, colord-gtk4 , cups , docbook-xsl-nons , fontconfig @@ -26,19 +23,17 @@ , gnome , gsettings-desktop-schemas , gsound -, gtk3 +, gtk4 , ibus -, libcanberra-gtk3 , libgnomekbd , libgtop , libgudev -, libhandy +, libadwaita , libkrb5 , libpulseaudio , libpwquality , librsvg , libsecret -, libsoup , libwacom , libxml2 , libxslt @@ -47,7 +42,7 @@ , mutter , networkmanager , networkmanagerapplet -, libnma +, libnma-gtk4 , ninja , pkg-config , polkit @@ -68,11 +63,11 @@ stdenv.mkDerivation rec { pname = "gnome-control-center"; - version = "41.4"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-1tsMTLcIV77PSKxQB/ErX2O51dfoDqfuV9O+USZp98k="; + sha256 = "sha256-BzLvp8QXHOCg7UEGWAtM41pXsQFSwOo20jkTSRN3fto="; }; patches = [ @@ -100,11 +95,8 @@ stdenv.mkDerivation rec { buildInputs = [ accountsservice adwaita-icon-theme - cheese - clutter - clutter-gtk colord - colord-gtk + colord-gtk4 libepoxy fontconfig gdk-pixbuf @@ -119,19 +111,17 @@ stdenv.mkDerivation rec { gnome-user-share # optional, sharing panel gsettings-desktop-schemas gsound - gtk3 + gtk4 ibus - libcanberra-gtk3 libgtop libgudev - libhandy + libadwaita libkrb5 - libnma + libnma-gtk4 libpulseaudio libpwquality librsvg libsecret - libsoup libwacom libxml2 modemmanager @@ -145,9 +135,19 @@ stdenv.mkDerivation rec { upower ]; - postPatch = '' - chmod +x build-aux/meson/meson_post_install.py # patchShebangs requires executable file - patchShebangs build-aux/meson/meson_post_install.py + # postPatch = '' + # scriptsToPatch=( + # build-aux/meson/meson_post_install.py + # build-aux/meson/find_xdg_file.py + # ) + # # # patchShebangs requires executable file + # # chmod +x "''${scriptsToPatch[@]}" + # # patchShebangs "''${scriptsToPatch[@]}" + # ''; + + preConfigure = '' + # For ITS rules + addToSearchPath "XDG_DATA_DIRS" "${polkit.out}/share" ''; preFixup = '' diff --git a/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix b/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix index 5f3ef81d905aa..89502c8d88305 100644 --- a/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix +++ b/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix @@ -27,11 +27,11 @@ stdenv.mkDerivation rec { pname = "gnome-disk-utility"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-disk-utility/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-h0PJj9ZWBi74YpM+/jDFvkxrMi7ALu4VTscNCO0Ild8="; + sha256 = "sha256-G2VkRU1nQmMiyzv8WlVYZTv8ff7qKuCCWx0IYp8BCQs="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix b/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix index 4ba915df2dbd1..397f0b9838f1f 100644 --- a/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix +++ b/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix @@ -1,20 +1,47 @@ -{ lib, stdenv, meson, ninja, gettext, fetchurl -, pkg-config, gtk3, glib, libxml2, gnome-desktop, adwaita-icon-theme, libhandy -, wrapGAppsHook, gnome, harfbuzz }: +{ lib +, stdenv +, meson +, ninja +, gettext +, fetchurl +, pkg-config +, gtk4 +, glib +, libxml2 +, gnome-desktop +, libadwaita +, wrapGAppsHook4 +, gnome +, harfbuzz +}: stdenv.mkDerivation rec { pname = "gnome-font-viewer"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-font-viewer/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "XdQQMxvgcOTgNDl/J1SYDgc4UdUKIRny+/lq3G/i6HY="; + sha256 = "z6K43/8hoQWhoCHa36IT8TYn5qF5p3x7Wf3O2sqEjcw="; }; doCheck = true; - nativeBuildInputs = [ meson ninja pkg-config gettext wrapGAppsHook libxml2 ]; - buildInputs = [ gtk3 glib gnome-desktop adwaita-icon-theme harfbuzz libhandy ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + gettext + wrapGAppsHook4 + libxml2 + ]; + + buildInputs = [ + gtk4 + glib + gnome-desktop + harfbuzz + libadwaita + ]; # Do not run meson-postinstall.sh preConfigure = "sed -i '2,$ d' meson-postinstall.sh"; @@ -28,8 +55,9 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Program that can preview fonts and create thumbnails for fonts"; + homepage = "https://gitlab.gnome.org/GNOME/gnome-font-viewer"; maintainers = teams.gnome.members; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } diff --git a/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix b/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix index 2d5be438c3e25..7f6724ce63ae4 100644 --- a/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix +++ b/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix @@ -27,6 +27,7 @@ , polkit , webkitgtk , systemd +, libhandy , libnma , tzdata , libgnomekbd @@ -35,11 +36,11 @@ stdenv.mkDerivation rec { pname = "gnome-initial-setup"; - version = "41.4"; + version = "42.0.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "luzS2252xROxjGBtwmK7UjIoxKrtvtageBHlaP1dtkI="; + sha256 = "/PQ/L75NwEw6wq5QVjP+se8w2nDKleq8YeIAaxkuXlU="; }; patches = [ @@ -72,6 +73,7 @@ stdenv.mkDerivation rec { json-glib krb5 libgweather + libhandy libnma libpwquality librest diff --git a/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix b/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix index 0f35b15bee9ca..61252d60814cd 100644 --- a/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix +++ b/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix @@ -7,6 +7,8 @@ , python3 , wrapGAppsHook , glib +, libepoxy +, libdrm , nv-codec-headers-11 , pipewire , systemd @@ -17,16 +19,20 @@ , gdk-pixbuf , freerdp , fuse3 +, mesa +, libgudev +, xvfb-run +, dbus , gnome }: stdenv.mkDerivation rec { pname = "gnome-remote-desktop"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - hash = "sha256-EBUeabZIwiR8XjPZou9Bn04DfuWyuuSebtasp36xulg="; + hash = "sha256-s9wrt1x4Pe2quWqNu6wW3ZqhOebTooo9s+pAxgRluY8="; }; nativeBuildInputs = [ @@ -43,6 +49,8 @@ stdenv.mkDerivation rec { fuse3 gdk-pixbuf # For libnotify glib + libepoxy + libdrm nv-codec-headers-11 libnotify libsecret @@ -50,17 +58,35 @@ stdenv.mkDerivation rec { libxkbcommon pipewire systemd - ]; + ] ++ checkInputs; - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - ''; + checkInputs = [ + mesa # for gbm + libgudev + xvfb-run + python3.pkgs.dbus-python + python3.pkgs.pygobject3 + dbus # for dbus-run-session + ]; mesonFlags = [ "-Dsystemd_user_unit_dir=${placeholder "out"}/lib/systemd/user" ]; + # Too deep of a rabbit hole. + doCheck = false; + + postPatch = '' + chmod +x meson_post_install.py # patchShebangs requires executable file + patchShebangs \ + tests/vnc-test-runner.sh \ + tests/run-vnc-tests.py \ + meson_post_install.py + + substituteInPlace tests/vnc-test-runner.sh \ + --replace "dbus-run-session" "dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/gnome-session/ctl.nix b/pkgs/desktops/gnome/core/gnome-session/ctl.nix index 7ee9e156e5bb2..09fc80bf9ef88 100644 --- a/pkgs/desktops/gnome/core/gnome-session/ctl.nix +++ b/pkgs/desktops/gnome/core/gnome-session/ctl.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation rec { pname = "gnome-session-ctl"; - version = "41.3"; + version = "42.0"; src = fetchFromGitHub { owner = "nix-community"; repo = pname; rev = version; - hash = "sha256-aC0tkTf2lgCRlcbFj1FEOVBm3YUuP+8Yz98W3ZjUydg="; + hash = "sha256-XGJVmlxqbJ/1frbzn2TI7BJm449xeLk43xMMqFsLYko="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-session/default.nix b/pkgs/desktops/gnome/core/gnome-session/default.nix index 3c6903b2b01bb..43bf56eb1fc83 100644 --- a/pkgs/desktops/gnome/core/gnome-session/default.nix +++ b/pkgs/desktops/gnome/core/gnome-session/default.nix @@ -30,13 +30,13 @@ stdenv.mkDerivation rec { pname = "gnome-session"; # Also bump ./ctl.nix when bumping major version. - version = "41.3"; + version = "42.0"; outputs = [ "out" "sessions" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-session/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "7koikFP1ImJAVIiWCTNbiFKHz2e73g3J/YgrAeybWzk="; + sha256 = "PMoGBTq2gpJpIJUafalfjMbXLadMaCxG0KBlMzKWnKo="; }; patches = [ diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix index b043883a492c3..8ab848a7dfa8c 100644 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix +++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/3.38/default.nix @@ -83,6 +83,16 @@ stdenv.mkDerivation rec { url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/28e28e9e598342c897ae5ca350d0da6f4aea057b.diff"; sha256 = "U+suR7wYjLWPqmkJpHm6pPOWL7sjL6GhIFX8MHrBRAY="; }) + + # Port to gweather4 + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/66cae69ad82cfc59435016fba737ce046ffb7e66.patch"; + sha256 = "zf8/rkKdQQFNV/qx/jo4kx1KoLl7SUSu4/T1OBGrZ4c="; + }) + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/f390e6e9d56ce7d3e3a725b8204d81c0b6240515.patch"; + sha256 = "8mfnlhkSF9ogjVWE+IESzRQzrxHQSwUWsq5OLBM08iM="; + }) ]; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix index 307de72cc4f07..03698f865d650 100644 --- a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix +++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix @@ -42,11 +42,11 @@ stdenv.mkDerivation rec { pname = "gnome-settings-daemon"; - version = "41.0"; + version = "42.1"; src = fetchurl { url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "5spjYfvR3qst4aHjkNTxQWfPR7HFR9u4tlpdielmOIQ="; + sha256 = "7WWFGuVK3NWKJMhoN9Yk/GoUvYSrIulN9Ao6TP0Z/9s="; }; patches = [ diff --git a/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix b/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix index aa61bd91c2979..1083fe1110661 100644 --- a/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix +++ b/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation rec { pname = "gnome-shell-extensions"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-shell-extensions/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "rZuoL0y9BHJpc7XoevrRiv2qMjhgoK8+ckDzp00iLxk="; + sha256 = "PuZbdbGv2LzKCioD2psohHh+1A4leogdmqbvfIcnYC8="; }; patches = [ diff --git a/pkgs/desktops/gnome/core/gnome-shell/default.nix b/pkgs/desktops/gnome/core/gnome-shell/default.nix index 3b89ceb78172e..1ad36f7e96b74 100644 --- a/pkgs/desktops/gnome/core/gnome-shell/default.nix +++ b/pkgs/desktops/gnome/core/gnome-shell/default.nix @@ -46,6 +46,7 @@ , evolution-data-server , gtk3 , gtk4 +, libadwaita , sassc , systemd , pipewire @@ -66,13 +67,13 @@ let in stdenv.mkDerivation rec { pname = "gnome-shell"; - version = "41.4"; + version = "42.0"; outputs = [ "out" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "x+73SvMEZJwDuG25m9C6x1oBH7/2d0yO41WD282tivQ="; + sha256 = "M9QE+zyTud5CmE8BEKKWnWpKckfCf+f14kxn7P7HUJQ="; }; patches = [ @@ -118,7 +119,6 @@ stdenv.mkDerivation rec { sassc desktop-file-utils libxslt.bin - python3 asciidoc ]; @@ -142,6 +142,7 @@ stdenv.mkDerivation rec { libical gtk3 gtk4 + libadwaita gdm geoclue2 adwaita-icon-theme @@ -169,6 +170,9 @@ stdenv.mkDerivation rec { bash-completion gnome-autoar json-glib + + # for tools + pythonEnv ]; mesonFlags = [ @@ -177,14 +181,9 @@ stdenv.mkDerivation rec { postPatch = '' patchShebangs src/data-to-c.pl - chmod +x meson/postinstall.py - patchShebangs meson/postinstall.py # We can generate it ourselves. rm -f man/gnome-shell.1 - - substituteInPlace src/gnome-shell-extension-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python" - substituteInPlace src/gnome-shell-perf-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python" ''; preFixup = '' diff --git a/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch b/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch index bc494caea9dd0..5ce4a2fd46d7f 100644 --- a/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch +++ b/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch @@ -1,7 +1,7 @@ diff --git a/js/dbusServices/dbus-service.in b/js/dbusServices/dbus-service.in old mode 100644 new mode 100755 -index 524166102..100b81a63 +index 524166102..6d0722a1c --- a/js/dbusServices/dbus-service.in +++ b/js/dbusServices/dbus-service.in @@ -1,3 +1,9 @@ @@ -24,18 +24,18 @@ index 3b0d09abe..4fd4bb66d 100644 -Exec=@gjs@ @pkgdatadir@/@service@ +Exec=@pkgdatadir@/@service@ diff --git a/js/dbusServices/meson.build b/js/dbusServices/meson.build -index c749f45dc..11bcb0c9e 100644 +index eb941ed90..552051e5a 100644 --- a/js/dbusServices/meson.build +++ b/js/dbusServices/meson.build @@ -2,6 +2,7 @@ launcherconf = configuration_data() launcherconf.set('PACKAGE_NAME', meson.project_name()) launcherconf.set('prefix', prefix) launcherconf.set('libdir', libdir) -+launcherconf.set('gjs', gjs.path()) ++launcherconf.set('gjs', gjs.full_path()) dbus_services = { 'org.gnome.Shell.Extensions': 'extensions', -@@ -11,16 +12,17 @@ dbus_services = { +@@ -18,16 +19,17 @@ endif config_dir = '@0@/..'.format(meson.current_build_dir()) foreach service, dir : dbus_services @@ -51,7 +51,7 @@ index c749f45dc..11bcb0c9e 100644 serviceconf = configuration_data() serviceconf.set('service', service) -- serviceconf.set('gjs', gjs.path()) +- serviceconf.set('gjs', gjs.full_path()) serviceconf.set('pkgdatadir', pkgdatadir) configure_file( diff --git a/pkgs/desktops/gnome/core/gnome-software/default.nix b/pkgs/desktops/gnome/core/gnome-software/default.nix index aa9058ad410aa..e89f616680c7f 100644 --- a/pkgs/desktops/gnome/core/gnome-software/default.nix +++ b/pkgs/desktops/gnome/core/gnome-software/default.nix @@ -13,7 +13,7 @@ , glib , appstream , libsoup -, libhandy +, libadwaita , polkit , isocodes , gspell @@ -21,7 +21,7 @@ , gobject-introspection , flatpak , fwupd -, gtk3 +, gtk4 , gsettings-desktop-schemas , gnome-desktop , libxmlb @@ -42,11 +42,11 @@ in stdenv.mkDerivation rec { pname = "gnome-software"; - version = "41.4"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "evhzzkcs8racUbyevGG4Nt+8z9b0Jwbj7TqpCaruxGU="; + sha256 = "QsaF4u95li6zCo6VjHA8mh899zFQQiOgYos7Yk733B4="; }; patches = [ @@ -73,12 +73,12 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - gtk3 + gtk4 glib packagekit appstream libsoup - libhandy + libadwaita gsettings-desktop-schemas gnome-desktop gspell @@ -97,6 +97,8 @@ stdenv.mkDerivation rec { "-Dgudev=false" # FIXME: package malcontent parental controls "-Dmalcontent=false" + # Needs flatpak to upgrade + "-Dsoup2=true" ] ++ lib.optionals (!withFwupd) [ "-Dfwupd=false" ]; diff --git a/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix b/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix index d373d6f358c63..5d24a23e41183 100644 --- a/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix +++ b/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix @@ -12,7 +12,6 @@ , wrapGAppsHook , meson , ninja -, python3 , gsettings-desktop-schemas , itstool , gnome @@ -24,11 +23,11 @@ stdenv.mkDerivation rec { pname = "gnome-system-monitor"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-system-monitor/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "x/xExhlJt5SwKJlo67vMDBX4z8PZ5Fv6qB7UXBITnl8="; + sha256 = "EyOdIgMiAaIr0pgzxXW2hIFnANLeFooVMCI1d8XAddw="; }; nativeBuildInputs = [ @@ -38,7 +37,6 @@ stdenv.mkDerivation rec { wrapGAppsHook meson ninja - python3 ]; buildInputs = [ @@ -58,12 +56,6 @@ stdenv.mkDerivation rec { doCheck = true; - postPatch = '' - chmod +x meson_post_install.py # patchShebangs requires executable file - patchShebangs meson_post_install.py - sed -i '/gtk-update-icon-cache/s/^/#/' meson_post_install.py - ''; - passthru = { updateScript = gnome.updateScript { packageName = "gnome-system-monitor"; diff --git a/pkgs/desktops/gnome/core/gnome-terminal/default.nix b/pkgs/desktops/gnome/core/gnome-terminal/default.nix index 588d6e3ced3a0..719c0eabce130 100644 --- a/pkgs/desktops/gnome/core/gnome-terminal/default.nix +++ b/pkgs/desktops/gnome/core/gnome-terminal/default.nix @@ -28,11 +28,11 @@ stdenv.mkDerivation rec { pname = "gnome-terminal"; - version = "3.42.2"; + version = "3.43.90"; src = fetchurl { url = "mirror://gnome/sources/gnome-terminal/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "ipyOXvejpzskapR+EZC7COyYk1r4YM8LOqL79GBoF6A="; + sha256 = "pQpyOodNNkoP78GfmU2IVUWqYKUdaBimL/kPgv9TydY="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/gnome-tour/default.nix b/pkgs/desktops/gnome/core/gnome-tour/default.nix index c496ceee6ed13..cbb33c2b23080 100644 --- a/pkgs/desktops/gnome/core/gnome-tour/default.nix +++ b/pkgs/desktops/gnome/core/gnome-tour/default.nix @@ -6,7 +6,7 @@ , ninja , fetchurl , pkg-config -, gtk3 +, gtk4 , glib , gdk-pixbuf , desktop-file-utils @@ -14,7 +14,7 @@ , wrapGAppsHook , python3 , gnome -, libhandy +, libadwaita , librsvg , rustc , cargo @@ -22,11 +22,11 @@ stdenv.mkDerivation rec { pname = "gnome-tour"; - version = "40.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - hash = "sha256-rYYS110B7qY8WcmY65KOvm75mEZgYbn8H97IKF02M5g="; + hash = "sha256-/PGsaJBX2oZZaXDsPag1VSHApy6VBj6wWdX+5N6oL08="; }; cargoVendorDir = "vendor"; @@ -49,16 +49,11 @@ stdenv.mkDerivation rec { buildInputs = [ gdk-pixbuf glib - gtk3 - libhandy + gtk4 + libadwaita librsvg ]; - postPatch = '' - chmod +x build-aux/meson_post_install.py - patchShebangs build-aux/meson_post_install.py - ''; - passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/desktops/gnome/core/mutter/default.nix b/pkgs/desktops/gnome/core/mutter/default.nix index d0b8a7537e294..9f3925d0ce50b 100644 --- a/pkgs/desktops/gnome/core/mutter/default.nix +++ b/pkgs/desktops/gnome/core/mutter/default.nix @@ -46,13 +46,13 @@ let self = stdenv.mkDerivation rec { pname = "mutter"; - version = "41.4"; + version = "42.0"; outputs = [ "out" "dev" "man" ]; src = fetchurl { url = "mirror://gnome/sources/mutter/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "VYgmlQZKpvA4XNH39/qywqLtLJrsePV4+qB/UgnKUpw="; + sha256 = "0eJARGt/jNij/52q4zbByQFhk7p+B2nHml5sA4SQIuU="; }; patches = [ @@ -136,7 +136,7 @@ let self = stdenv.mkDerivation rec { PKG_CONFIG_UDEV_UDEVDIR = "${placeholder "out"}/lib/udev"; passthru = { - libdir = "${self}/lib/mutter-9"; + libdir = "${self}/lib/mutter-10"; tests = { libdirExists = runCommand "mutter-libdir-exists" {} '' diff --git a/pkgs/desktops/gnome/core/nautilus/default.nix b/pkgs/desktops/gnome/core/nautilus/default.nix index 3f61f55db1dcf..1814dc732ea16 100644 --- a/pkgs/desktops/gnome/core/nautilus/default.nix +++ b/pkgs/desktops/gnome/core/nautilus/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl -, fetchpatch , meson , ninja , pkg-config @@ -35,13 +35,13 @@ stdenv.mkDerivation rec { pname = "nautilus"; - version = "41.2"; + version = "42.0"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "hyKFscQKbuQYzile0RX1Qn2nCQfYItlbz1FnXVSYgis="; + sha256 = "PJBPM7otKgeIkr7ir3FITNYIkjzXjsfooVF7whVRE9U="; }; patches = [ @@ -53,17 +53,6 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; inherit tracker; }) - - # Fix build with latest libportal - # https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/749 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/nautilus/-/commit/55cfd66ccca391fc144f5863ff6bfc1f3b137e2d.patch"; - sha256 = "xSb9l7xxEYpAwmdmeWT/t7Z9Ck3DPtsODzbReQW/Q70="; - excludes = [ - "build-aux/flatpak/org.gnome.Nautilus.json" - "build-aux/flatpak/org.gnome.Nautilus.yml" - ]; - }) ]; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/simple-scan/default.nix b/pkgs/desktops/gnome/core/simple-scan/default.nix index 0865fbb5aca72..dd96e254109dd 100644 --- a/pkgs/desktops/gnome/core/simple-scan/default.nix +++ b/pkgs/desktops/gnome/core/simple-scan/default.nix @@ -25,11 +25,11 @@ stdenv.mkDerivation rec { pname = "simple-scan"; - version = "40.7"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-fFUYUsta99NKqYn4rV7ePL4xgoz43VrsKytv3NGsPVM="; + sha256 = "sha256-rB+Fev0LyIl90gRQI618VxPlzu/KVrCzzF6aR5UylYY="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/totem/default.nix b/pkgs/desktops/gnome/core/totem/default.nix index 0178c04b53ca9..44e1319f8d4ae 100644 --- a/pkgs/desktops/gnome/core/totem/default.nix +++ b/pkgs/desktops/gnome/core/totem/default.nix @@ -4,8 +4,6 @@ , ninja , gettext , gst_all_1 -, clutter-gtk -, clutter-gst , python3Packages , shared-mime-info , pkg-config @@ -21,6 +19,7 @@ , grilo , grilo-plugins , libpeas +, libhandy , adwaita-icon-theme , gnome-desktop , gsettings-desktop-schemas @@ -30,11 +29,11 @@ stdenv.mkDerivation rec { pname = "totem"; - version = "3.38.2"; + version = "42.0"; src = fetchurl { - url = "mirror://gnome/sources/totem/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/OVi4rJsvPwMZ4U43MgfncFc5g1aie5DWJB79jQwTEA="; + url = "mirror://gnome/sources/totem/${lib.versions.major version}/${pname}-${version}.tar.xz"; + sha256 = "SvBJHduV34szruOZ06UPnHqxfeiNOvYzVlZ8+I9X5qs="; }; nativeBuildInputs = [ @@ -53,17 +52,16 @@ stdenv.mkDerivation rec { gtk3 glib grilo - clutter-gtk - clutter-gst totem-pl-parser grilo-plugins gst_all_1.gstreamer gst_all_1.gst-plugins-base - gst_all_1.gst-plugins-good + (gst_all_1.gst-plugins-good.override { gtkSupport = true; }) gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-ugly gst_all_1.gst-libav libpeas + libhandy shared-mime-info gdk-pixbuf libxml2 diff --git a/pkgs/desktops/gnome/core/yelp-xsl/default.nix b/pkgs/desktops/gnome/core/yelp-xsl/default.nix index 6fac906e4ba94..3398e8ddd571c 100644 --- a/pkgs/desktops/gnome/core/yelp-xsl/default.nix +++ b/pkgs/desktops/gnome/core/yelp-xsl/default.nix @@ -10,11 +10,11 @@ stdenv.mkDerivation rec { pname = "yelp-xsl"; - version = "41.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/yelp-xsl/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-DW2zesLvgSSD4BBHA/H6nPAy6eCVal8cOvvMI3kfilQ="; + sha256 = "sha256-KbJzzAvRbvtumDRDgD8en9wDUR5cT/Y0j9MKYE1NyEY="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/yelp/default.nix b/pkgs/desktops/gnome/core/yelp/default.nix index be858a19487da..3fdf7f3e546e5 100644 --- a/pkgs/desktops/gnome/core/yelp/default.nix +++ b/pkgs/desktops/gnome/core/yelp/default.nix @@ -5,6 +5,7 @@ , webkitgtk , pkg-config , gtk3 +, libhandy , glib , gnome , sqlite @@ -17,11 +18,11 @@ stdenv.mkDerivation rec { pname = "yelp"; - version = "41.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/yelp/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-sAvwM/At15ttPyVQMccd+NbtOOVSyHC485GjdHJMQ8U="; + sha256 = "sha256-IIglVqnF29MHWTAkXnA3HGusMOqnpe0Jx9sSfNogE/c="; }; nativeBuildInputs = [ @@ -33,6 +34,7 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 + libhandy glib webkitgtk sqlite diff --git a/pkgs/desktops/gnome/default.nix b/pkgs/desktops/gnome/default.nix index 9e02b80d9f7fb..729a6bd16ca8d 100644 --- a/pkgs/desktops/gnome/default.nix +++ b/pkgs/desktops/gnome/default.nix @@ -58,8 +58,6 @@ lib.makeScope pkgs.newScope (self: with self; { gnome-common = callPackage ./core/gnome-common { }; - gnome-desktop = callPackage ./core/gnome-desktop { }; - gnome-dictionary = callPackage ./core/gnome-dictionary { }; gnome-disk-utility = callPackage ./core/gnome-disk-utility { }; @@ -281,6 +279,7 @@ lib.makeScope pkgs.newScope (self: with self; { }) // lib.optionalAttrs (config.allowAliases or true) { #### Legacy aliases. They need to be outside the scope or they will shadow the attributes from parent scope. + gnome-desktop = pkgs.gnome-desktop; # added 2022-03-16 libgnome-games-support = pkgs.libgnome-games-support; # added 2022-02-19 bijiben = throw "The ‘gnome.bijiben’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-notes’ directly."; # added 2018-09-26 @@ -289,7 +288,7 @@ lib.makeScope pkgs.newScope (self: with self; { glib_networking = throw "The ‘gnome.glib_networking’ alias was removed on 2022-01-13. Please use ‘pkgs.glib-networking’ directly."; # added 2018-02-25 gnome_common = throw "The ‘gnome.gnome_common’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-common’ directly."; # added 2018-02-25 gnome_control_center = throw "The ‘gnome.gnome_control_center’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-control-center’ directly."; # added 2018-02-25 - gnome_desktop = throw "The ‘gnome.gnome_desktop’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-desktop’ directly."; # added 2018-02-25 + gnome_desktop = throw "The ‘gnome.gnome_desktop’ alias was removed on 2022-01-13. Please use pkgs.gnome-desktop’ directly."; # added 2018-02-25 gnome_keyring = throw "The ‘gnome.gnome_keyring’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-keyring’ directly."; # added 2018-02-25 gnome_online_accounts = throw "The ‘gnome.gnome_online_accounts’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-online-accounts’ directly."; # added 2018-02-25 gnome_session = throw "The ‘gnome.gnome_session’ alias was removed on 2022-01-13. Please use ‘gnome.gnome-session’ directly."; # added 2018-02-25 diff --git a/pkgs/desktops/gnome/extensions/default.nix b/pkgs/desktops/gnome/extensions/default.nix index 39a1e00be1415..f4077cac5b22c 100644 --- a/pkgs/desktops/gnome/extensions/default.nix +++ b/pkgs/desktops/gnome/extensions/default.nix @@ -60,7 +60,7 @@ in rec { gnome41Extensions = mapUuidNames (produceExtensionsList "41"); gnome42Extensions = mapUuidNames (produceExtensionsList "42"); - gnomeExtensions = lib.trivial.pipe (gnome40Extensions // gnome41Extensions) [ + gnomeExtensions = lib.trivial.pipe (gnome41Extensions // gnome42Extensions) [ # Apply some custom patches for automatically packaged extensions (callPackage ./extensionOverrides.nix {}) # Add all manually packaged extensions diff --git a/pkgs/desktops/gnome/extensions/gsconnect/default.nix b/pkgs/desktops/gnome/extensions/gsconnect/default.nix index 2d3d2415db245..0b72d35bda7be 100644 --- a/pkgs/desktops/gnome/extensions/gsconnect/default.nix +++ b/pkgs/desktops/gnome/extensions/gsconnect/default.nix @@ -19,15 +19,15 @@ stdenv.mkDerivation rec { pname = "gnome-shell-extension-gsconnect"; - version = "48"; + version = "53"; outputs = [ "out" "installedTests" ]; src = fetchFromGitHub { - owner = "andyholmes"; + owner = "GSConnect"; repo = "gnome-shell-extension-gsconnect"; rev = "v${version}"; - sha256 = "sha256-cKEFTF8DnQIQAXVW9NvE34mUqueQP/OtxTzMUy1dT5U="; + sha256 = "sha256-u14OVv3iyQbLEmqLgMdEUD2iC4nsYVCOr4ua66T3TBk="; }; patches = [ @@ -111,7 +111,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "KDE Connect implementation for Gnome Shell"; - homepage = "https://github.com/andyholmes/gnome-shell-extension-gsconnect/wiki"; + homepage = "https://github.com/GSConnect/gnome-shell-extension-gsconnect/wiki"; license = licenses.gpl2Plus; maintainers = teams.gnome.members; platforms = platforms.linux; diff --git a/pkgs/desktops/gnome/games/aisleriot/default.nix b/pkgs/desktops/gnome/games/aisleriot/default.nix index 21e38c548e989..5a7446862bdc5 100644 --- a/pkgs/desktops/gnome/games/aisleriot/default.nix +++ b/pkgs/desktops/gnome/games/aisleriot/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchFromGitLab , nix-update-script , pkg-config @@ -9,8 +10,7 @@ , librsvg , libxml2 , desktop-file-utils -, pysolfc -, guile +, guile_3_0 , libcanberra-gtk3 , ninja , appstream-glib @@ -19,14 +19,14 @@ stdenv.mkDerivation rec { pname = "aisleriot"; - version = "3.22.20"; + version = "3.22.21"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "GNOME"; repo = pname; rev = version; - sha256 = "sha256-5xFwlhT9qjtvNDQ8kfGd2BeK2KcJDzpfsEC8z4Ei3ns="; + sha256 = "sha256-dpzuePxSoJcwUlj314r5G9A8aF1Yz49r+DxNTfA8/Ks="; }; nativeBuildInputs = [ @@ -44,9 +44,8 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 librsvg - guile + guile_3_0 libcanberra-gtk3 - pysolfc ]; prePatch = '' diff --git a/pkgs/desktops/gnome/games/gnome-chess/default.nix b/pkgs/desktops/gnome/games/gnome-chess/default.nix index e47e77d9c0aba..5690355a0ce26 100644 --- a/pkgs/desktops/gnome/games/gnome-chess/default.nix +++ b/pkgs/desktops/gnome/games/gnome-chess/default.nix @@ -14,16 +14,17 @@ , gnome , glib , gtk4 +, libadwaita , librsvg }: stdenv.mkDerivation rec { pname = "gnome-chess"; - version = "41.1"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-chess/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "62GYhlljlrQDOj8oo8LjAEtU6+Gzi0DWQiwXufLMF9A="; + sha256 = "Eq9Uk6YiBaxrt0VA8KhYQT2okolmo0boVDMLQdc7w5M="; }; nativeBuildInputs = [ @@ -42,8 +43,8 @@ stdenv.mkDerivation rec { buildInputs = [ glib gtk4 + libadwaita librsvg - gnome.adwaita-icon-theme ]; postPatch = '' diff --git a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix index 1431a61794939..87e7c467d04c4 100644 --- a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix +++ b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "gnome-sudoku"; - version = "40.2"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-sudoku/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "NhIFMePHE5WB6jgA+/48KzFpTEQBRezIl6w05WLXVKM="; + sha256 = "HS603bgCa0Q2Rc81hbjfEkTjgo7hwHUYBSslmeHFwo8="; }; nativeBuildInputs = [ meson ninja vala pkg-config gobject-introspection gettext itstool libxml2 python3 desktop-file-utils wrapGAppsHook ]; diff --git a/pkgs/desktops/gnome/games/tali/default.nix b/pkgs/desktops/gnome/games/tali/default.nix index 936fe62c259b3..c12853e5daee5 100644 --- a/pkgs/desktops/gnome/games/tali/default.nix +++ b/pkgs/desktops/gnome/games/tali/default.nix @@ -20,11 +20,11 @@ stdenv.mkDerivation rec { pname = "tali"; - version = "40.5"; + version = "40.6"; src = fetchurl { url = "mirror://gnome/sources/tali/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "Y6CcVeRqGhl1a/XglXyvmUMA+tq9umvaYC5mjfzfcSI="; + sha256 = "g/ugR+3s0ZbTBxmnDi9NCYa7Jswr1flVoKkgDqY/BhI="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/misc/gnome-applets/default.nix b/pkgs/desktops/gnome/misc/gnome-applets/default.nix index 2cdafcc23b301..a03b356c21f35 100644 --- a/pkgs/desktops/gnome/misc/gnome-applets/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-applets/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "gnome-applets"; - version = "3.42.0"; + version = "3.44.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/RaXR7kv7/Rs05/mLyPd+WZ8EAaPRigDOF0TjvxIedQ="; + sha256 = "MDlifKknGeSAWH1yT0aXEJw9Em7BUPFPOy4Gkk2576c="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix index 9e796670aa02b..34d2b6eea3c29 100644 --- a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix @@ -30,7 +30,7 @@ }: let pname = "gnome-flashback"; - version = "3.42.1"; + version = "3.44.0"; # From data/sessions/Makefile.am requiredComponentsCommon = enableGnomePanel: @@ -61,7 +61,7 @@ let src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz"; - sha256 = "sha256:0kl4m05whm03m2v0y3jd69lghkggn8s0hxdhvchcas7jmhh940n8"; + sha256 = "sha256-HfCDgSfGJG7s2J0cUP+I/IKr9t47MGjlLd5JWkK9VQo="; }; # make .desktop Execs absolute diff --git a/pkgs/desktops/gnome/misc/gnome-panel/default.nix b/pkgs/desktops/gnome/misc/gnome-panel/default.nix index aa472230e9cd9..139e161352a11 100644 --- a/pkgs/desktops/gnome/misc/gnome-panel/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-panel/default.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gnome-panel"; - version = "3.42.0"; + version = "3.44.0"; outputs = [ "out" "dev" "man" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - hash = "sha256-rqjA78LtuiDpetRpUXnNCiU45kwpBHAsyMWU6OCJhwM="; + hash = "sha256-mWVfddAxh2wTDtI8TaIsCZ57zEBIsCVaPDo7vHh7Mao="; }; patches = [ diff --git a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix index 0725af81c0a1d..5643741aceb47 100644 --- a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix +++ b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix @@ -6,6 +6,7 @@ , gettext , glib , gnome +, gnome-desktop , gobject-introspection , gsettings-desktop-schemas , gtk3 @@ -20,13 +21,13 @@ python3Packages.buildPythonApplication rec { pname = "gnome-tweaks"; - version = "40.10"; + version = "42.beta"; format = "other"; strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943 src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "z/07M6OZV3+7RJHOj70C9UxZJPEFbzARTo1CApDvI/w="; + sha256 = "g/RMwdyK3HcM2tcXtAPLmmzDwN5Q445vHmeLQ0Aa2Gg="; }; nativeBuildInputs = [ @@ -43,7 +44,7 @@ python3Packages.buildPythonApplication rec { buildInputs = [ gdk-pixbuf glib - gnome.gnome-desktop + gnome-desktop gnome.gnome-settings-daemon gnome.gnome-shell # Makes it possible to select user themes through the `user-theme` extension diff --git a/pkgs/desktops/gnome/misc/gpaste/default.nix b/pkgs/desktops/gnome/misc/gpaste/default.nix index f593fbbd65351..1a6abacad7d75 100644 --- a/pkgs/desktops/gnome/misc/gpaste/default.nix +++ b/pkgs/desktops/gnome/misc/gpaste/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchFromGitHub , fetchpatch , appstream-glib @@ -7,6 +8,8 @@ , glib , gobject-introspection , gtk3 +, gtk4 +, libadwaita , meson , mutter , ninja @@ -17,14 +20,14 @@ }: stdenv.mkDerivation rec { - version = "3.42.6"; + version = "42.0"; pname = "gpaste"; src = fetchFromGitHub { owner = "Keruspe"; repo = "GPaste"; rev = "v${version}"; - sha256 = "sha256-dCeNWdHj3bBGJR1VpJtQjSn601Vdl3f9FjHAPB2wuhE="; + sha256 = "sha256-dwL06BL6P8fqvAfrYpifqMAh6d+3Er6RhUeP6nfCr1M="; }; patches = [ @@ -38,7 +41,7 @@ stdenv.mkDerivation rec { --subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0" substituteInPlace src/gnome-shell/prefs.js \ --subst-var-by typelibPath "${placeholder "out"}/lib/girepository-1.0" - substituteInPlace src/libgpaste/settings/gpaste-settings.c \ + substituteInPlace src/libgpaste/gpaste/gpaste-settings.c \ --subst-var-by gschemasCompiled ${glib.makeSchemaPath (placeholder "out") "${pname}-${version}"} ''; @@ -57,6 +60,8 @@ stdenv.mkDerivation rec { gjs glib gtk3 + gtk4 + libadwaita mutter pango ]; diff --git a/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch b/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch index 46e30ce2e2cb1..2ec807b61c055 100644 --- a/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch +++ b/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch @@ -1,3 +1,5 @@ +diff --git a/src/gnome-shell/extension.js b/src/gnome-shell/extension.js +index c8773fd6..9efbed67 100644 --- a/src/gnome-shell/extension.js +++ b/src/gnome-shell/extension.js @@ -6,6 +6,8 @@ @@ -8,21 +10,25 @@ + imports.gi.versions.Clutter = Config.LIBMUTTER_API_VERSION; imports.gi.versions.GLib = '2.0'; - imports.gi.versions.GPaste = '1.0'; + imports.gi.versions.GPaste = '2'; +diff --git a/src/gnome-shell/prefs.js b/src/gnome-shell/prefs.js +index 32244ab2..74b85572 100644 --- a/src/gnome-shell/prefs.js +++ b/src/gnome-shell/prefs.js @@ -6,6 +6,8 @@ - const Gettext = imports.gettext; + imports.gi.versions.GPasteGtk = '4'; +imports.gi.GIRepository.Repository.prepend_search_path('@typelibPath@'); + - //const { GPaste } = imports.gi; - const ExtensionUtils = imports.misc.extensionUtils; ---- a/src/libgpaste/settings/gpaste-settings.c -+++ b/src/libgpaste/settings/gpaste-settings.c -@@ -1013,7 +1013,11 @@ + + const { GPasteGtk } = imports.gi; +diff --git a/src/libgpaste/gpaste/gpaste-settings.c b/src/libgpaste/gpaste/gpaste-settings.c +index 7e53eb64..57c399fc 100644 +--- a/src/libgpaste/gpaste/gpaste-settings.c ++++ b/src/libgpaste/gpaste/gpaste-settings.c +@@ -1013,7 +1013,11 @@ create_g_settings (void) } else { diff --git a/pkgs/desktops/gnome/misc/metacity/default.nix b/pkgs/desktops/gnome/misc/metacity/default.nix index 8dcef7922659d..ef3e31f1032f1 100644 --- a/pkgs/desktops/gnome/misc/metacity/default.nix +++ b/pkgs/desktops/gnome/misc/metacity/default.nix @@ -18,11 +18,11 @@ stdenv.mkDerivation rec { pname = "metacity"; - version = "3.42.0"; + version = "3.44.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "2J1nnc/tm17vGPBuLcszp6tUPVOzWPqJzmVZPCMe7rw="; + sha256 = "GcPF150hcfRbqg9jLMiZX4YHvxIxoWAUQ5usm6Flp8A="; }; patches = [ diff --git a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix index 15bc1941af3f4..5d5134d38d29e 100644 --- a/pkgs/desktops/lxqt/lxqt-build-tools/default.nix +++ b/pkgs/desktops/lxqt/lxqt-build-tools/default.nix @@ -22,11 +22,16 @@ mkDerivation rec { sha256 = "1hb04zgpalxv6da3myf1dxsbjix15dczzfq8a24g5dg2zfhwpx21"; }; - # Nix clang on darwin identifies as 'Clang', not 'AppleClang' - # Without this, dependants fail to link. postPatch = '' + # Nix clang on darwin identifies as 'Clang', not 'AppleClang' + # Without this, dependants fail to link. substituteInPlace cmake/modules/LXQtCompilerSettings.cmake \ --replace AppleClang Clang + + # GLib 2.72 moved the file from gio-unix-2.0 to gio-2.0. + # https://github.com/lxqt/lxqt-build-tools/pull/74 + substituteInPlace cmake/find-modules/FindGLIB.cmake \ + --replace gio/gunixconnection.h gio/gunixfdlist.h ''; nativeBuildInputs = [ diff --git a/pkgs/desktops/pantheon/default.nix b/pkgs/desktops/pantheon/default.nix index 29192a4dd80a6..a3d5f873cbcbc 100644 --- a/pkgs/desktops/pantheon/default.nix +++ b/pkgs/desktops/pantheon/default.nix @@ -83,10 +83,6 @@ lib.makeScope pkgs.newScope (self: with self; { epiphany = pkgs.epiphany.override { withPantheon = true; }; - evince = pkgs.evince.override { withPantheon = true; }; - - file-roller = pkgs.gnome.file-roller.override { withPantheon = true; }; - sideload = callPackage ./apps/sideload { }; #### DESKTOP @@ -109,9 +105,7 @@ lib.makeScope pkgs.newScope (self: with self; { inherit (gnome) file-roller; }; - gala = callPackage ./desktop/gala { - inherit (gnome) gnome-desktop; - }; + gala = callPackage ./desktop/gala { }; gnome-bluetooth-contract = callPackage ./desktop/gnome-bluetooth-contract { inherit (gnome) gnome-bluetooth; @@ -199,9 +193,7 @@ lib.makeScope pkgs.newScope (self: with self; { switchboard-plug-onlineaccounts = callPackage ./apps/switchboard-plugs/onlineaccounts { }; - switchboard-plug-pantheon-shell = callPackage ./apps/switchboard-plugs/pantheon-shell { - inherit (gnome) gnome-desktop; - }; + switchboard-plug-pantheon-shell = callPackage ./apps/switchboard-plugs/pantheon-shell { }; switchboard-plug-power = callPackage ./apps/switchboard-plugs/power { }; @@ -246,8 +238,12 @@ lib.makeScope pkgs.newScope (self: with self; { elementary-screenshot-tool = throw "The ‘pantheon.elementary-screenshot-tool’ alias was removed on 2022-02-02, please use ‘pantheon.elementary-screenshot’ directly."; # added 2021-07-21 + evince = pkgs.gnome.evince; # added 2022-03-18 + extra-elementary-contracts = throw "extra-elementary-contracts has been removed as all contracts have been upstreamed."; # added 2021-12-01 + file-roller = pkgs.gnome.file-roller; # added 2022-03-12 + notes-up = throw "The ‘pantheon.notes-up’ alias was removed on 2022-02-02, please use ‘pkgs.notes-up’ directly."; # added 2021-12-18 } diff --git a/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix b/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix index e1a25eea4a635..1905143920987 100644 --- a/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix +++ b/pkgs/desktops/pantheon/desktop/gnome-bluetooth-contract/default.nix @@ -49,5 +49,8 @@ stdenv.mkDerivation rec { license = licenses.gpl3Plus; maintainers = teams.pantheon.members; platforms = platforms.linux; + # sendto device selection is removed in gnome-bluetooth 42 + # https://github.com/elementary/gnome-bluetooth-contract/issues/1 + broken = true; }; } diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix index 72512a1202f2b..230f6ee19a20d 100644 --- a/pkgs/development/compilers/vala/default.nix +++ b/pkgs/development/compilers/vala/default.nix @@ -20,6 +20,8 @@ let "0.54" = ./disable-graphviz-0.46.1.patch; + "0.56" = ./disable-graphviz-0.46.1.patch; + }.${lib.versions.majorMinor version} or (throw "no graphviz patch for this version of vala"); disableGraphviz = lib.versionAtLeast version "0.38" && !withGraphviz; @@ -68,7 +70,10 @@ let passthru = { updateScript = gnome.updateScript { - attrPath = "${pname}_${lib.versions.major version}_${lib.versions.minor version}"; + attrPath = + let + roundUpToEven = num: num + lib.mod num 2; + in "${pname}_${lib.versions.major version}_${builtins.toString (roundUpToEven (lib.toInt (lib.versions.minor version)))}"; packageName = pname; freeze = true; }; @@ -90,8 +95,13 @@ in rec { }; vala_0_54 = generic { - version = "0.54.7"; - sha256 = "Ygecof8C5dF65yqppa3GGuav3P67DZ8GBjo2776soMc="; + version = "0.54.8"; + sha256 = "7fs+eUhqS/SM666pKR5X/HfakyK2lh6VSd9tlz0EvIA="; + }; + + vala_0_56 = generic { + version = "0.56.0"; + sha256 = "2SvRPFYwkF7rapg9y3AiBNqXMUYMKm5OOfhnmW83EEA="; }; vala = vala_0_54; diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix index 66b0c13646b52..675c930d9edda 100644 --- a/pkgs/development/libraries/at-spi2-core/default.nix +++ b/pkgs/development/libraries/at-spi2-core/default.nix @@ -1,48 +1,66 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl - , meson , ninja , pkg-config , gobject-introspection , gsettings-desktop-schemas , makeWrapper - , dbus , glib , dconf , libX11 -, libXtst # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case +, libXtst , libXi , libXext - -, gnome # To pass updateScript +, gnome }: stdenv.mkDerivation rec { pname = "at-spi2-core"; - version = "2.42.0"; + version = "2.44.0"; + + outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "11p3lvmbm0hfck3p5xwxxycln8x0cf7l68jjz6an2g7sjh7a2pab"; + sha256 = "fu488oWwiQYP1rblGz6yys91LMo6CCx/TCxauEHlE1M="; }; - outputs = [ "out" "dev" ]; + nativeBuildInputs = [ + meson + ninja + pkg-config + gobject-introspection + makeWrapper + ]; + + buildInputs = [ + libX11 + # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case + libXtst + libXi + # libXext is a transitive dependency of libXi + libXext + ]; - nativeBuildInputs = [ meson ninja pkg-config gobject-introspection makeWrapper ]; - # libXext is a transitive dependency of libXi - buildInputs = [ libX11 libXtst libXi libXext ]; # In atspi-2.pc dbus-1 glib-2.0 - propagatedBuildInputs = [ dbus glib ]; + propagatedBuildInputs = [ + dbus + glib + ]; - doCheck = false; # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?" + # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?" + doCheck = false; - # Provide dbus-daemon fallback when it is not already running when - # at-spi2-bus-launcher is executed. This allows us to avoid - # including the entire dbus closure in libraries linked with - # the at-spi2-core libraries. - mesonFlags = [ "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" ]; + mesonFlags = [ + # Provide dbus-daemon fallback when it is not already running when + # at-spi2-bus-launcher is executed. This allows us to avoid + # including the entire dbus closure in libraries linked with + # the at-spi2-core libraries. + "-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon" + ]; passthru = { updateScript = gnome.updateScript { diff --git a/pkgs/development/libraries/folks/default.nix b/pkgs/development/libraries/folks/default.nix index 965016e1c740e..f6161535df5dd 100644 --- a/pkgs/development/libraries/folks/default.nix +++ b/pkgs/development/libraries/folks/default.nix @@ -35,13 +35,13 @@ stdenv.mkDerivation rec { pname = "folks"; - version = "0.15.4"; + version = "0.15.5"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "5xCZr8noj61OdXrhNLw/1j4SuQGtYrDtVTavt5Ekr18="; + sha256 = "D/+KiWMwzYKu5FmDJPflQciE0DN1NiEnI7S+s4x1kIY="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix index 3182a4b39988c..1e9c881ae8ce8 100644 --- a/pkgs/development/libraries/gdk-pixbuf/default.nix +++ b/pkgs/development/libraries/gdk-pixbuf/default.nix @@ -28,7 +28,7 @@ let in stdenv.mkDerivation rec { pname = "gdk-pixbuf"; - version = "2.42.6"; + version = "2.42.8"; outputs = [ "out" "dev" "man" ] ++ lib.optional withGtkDoc "devdoc" @@ -36,7 +36,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0zz7pmw2z46g7mr1yjxbsdldd5pd03xbjc58inj8rxfqgrdvg9n4"; + sha256 = "hKzqOsskEbKRNLMgFaWxqqYoRLGcSx74uJccawdZ9MY="; }; patches = [ @@ -111,10 +111,6 @@ stdenv.mkDerivation rec { '' + lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) '' # We need to install 'loaders.cache' in lib/gdk-pixbuf-2.0/2.10.0/ $dev/bin/gdk-pixbuf-query-loaders --update-cache - '' + lib.optionalString withGtkDoc '' - # So that devhelp can find this. - mkdir -p "$devdoc/share/devhelp" - mv "$out/share/doc" "$devdoc/share/devhelp/books" ''; # The fixDarwinDylibNames hook doesn't patch binaries. @@ -124,6 +120,11 @@ stdenv.mkDerivation rec { done ''; + postFixup = lib.optionalString withGtkDoc '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + # The tests take an excessive amount of time (> 1.5 hours) and memory (> 6 GB). inherit doCheck; diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix index 07c97ea6e0d67..42ba3bd46df8c 100644 --- a/pkgs/development/libraries/gjs/default.nix +++ b/pkgs/development/libraries/gjs/default.nix @@ -8,7 +8,7 @@ , gtk3 , atk , gobject-introspection -, spidermonkey_78 +, spidermonkey_91 , pango , cairo , readline @@ -30,13 +30,13 @@ let ]; in stdenv.mkDerivation rec { pname = "gjs"; - version = "1.70.1"; + version = "1.72.0"; outputs = [ "out" "dev" "installedTests" ]; src = fetchurl { url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-u9wO7HzyX7xTR2n2ofssehjhe4ce/bDKWOmr8IsoAD8="; + sha256 = "sha256-PvDK9xbjkg3WH3dI9tVuR2zA/Bg1GtBUjn3xoKub3K0="; }; patches = [ @@ -60,7 +60,7 @@ in stdenv.mkDerivation rec { gobject-introspection cairo readline - spidermonkey_78 + spidermonkey_91 dbus # for dbus-run-session ]; diff --git a/pkgs/development/libraries/glib-networking/default.nix b/pkgs/development/libraries/glib-networking/default.nix index 1a693e0e04527..fce73f74660e1 100644 --- a/pkgs/development/libraries/glib-networking/default.nix +++ b/pkgs/development/libraries/glib-networking/default.nix @@ -18,13 +18,13 @@ stdenv.mkDerivation rec { pname = "glib-networking"; - version = "2.70.1"; + version = "2.72.0"; outputs = [ "out" "installedTests" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "Kha/wtJxzNMmbj+0YryKQQPALoG7szmqktb7BgWS17w="; + sha256 = "EAquuzaShQQd5S2kIra3FnidXk11SaOnG6WHuTLggjs="; }; patches = [ diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index c98058768b2eb..ecae47b3d2dd7 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -45,16 +45,15 @@ in stdenv.mkDerivation rec { pname = "glib"; - version = "2.70.3"; + version = "2.72.0"; src = fetchurl { url = "mirror://gnome/sources/glib/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "Iz+khBweGeOW23YH1Y9rdbozE8UL8Pzgey41MtXrfUY="; + sha256 = "177w1MTnpi4I77jl8lKgE1cAe5WIqH/ytGOjhXAR950="; }; patches = optionals stdenv.isDarwin [ ./darwin-compilation.patch - ./link-with-coreservices.patch ] ++ optionals stdenv.hostPlatform.isMusl [ ./quark_init_on_demand.patch ./gobject_init_on_demand.patch @@ -116,7 +115,10 @@ stdenv.mkDerivation rec { strictDeps = true; nativeBuildInputs = [ - meson ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2 + (meson.override { + withDarwinFrameworksGtkDocPatch = stdenv.isDarwin; + }) + ninja pkg-config perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 libxml2 ]; propagatedBuildInputs = [ zlib libffi gettext libiconv ]; @@ -142,8 +144,8 @@ stdenv.mkDerivation rec { chmod +x docs/reference/gio/concat-files-helper.py patchShebangs docs/reference/gio/concat-files-helper.py patchShebangs glib/gen-unicode-tables.pl - patchShebangs tests/gen-casefold-txt.py - patchShebangs tests/gen-casemap-txt.py + patchShebangs glib/tests/gen-casefold-txt.py + patchShebangs glib/tests/gen-casemap-txt.py '' + lib.optionalString stdenv.hostPlatform.isWindows '' substituteInPlace gio/win32/meson.build \ --replace "libintl, " "" diff --git a/pkgs/development/libraries/glib/link-with-coreservices.patch b/pkgs/development/libraries/glib/link-with-coreservices.patch deleted file mode 100644 index dcc0a8998cc3b..0000000000000 --- a/pkgs/development/libraries/glib/link-with-coreservices.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/meson.build.orig 2020-11-25 13:47:38.499149252 +0900 -+++ b/meson.build 2020-11-25 13:48:47.098444800 +0900 -@@ -742,7 +742,7 @@ - - if glib_have_carbon - glib_conf.set('HAVE_CARBON', true) -- osx_ldflags += '-Wl,-framework,Carbon' -+ osx_ldflags += ['-Wl,-framework,Carbon', '-Wl,-framework,CoreServices'] - glib_have_os_x_9_or_later = objcc.compiles('''#include <AvailabilityMacros.h> - #if MAC_OS_X_VERSION_MIN_REQUIRED < 1090 - #error Compiling for minimum OS X version before 10.9 diff --git a/pkgs/desktops/gnome/core/gnome-desktop/bubblewrap-paths.patch b/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch index c31e093f4b7e1..c31e093f4b7e1 100644 --- a/pkgs/desktops/gnome/core/gnome-desktop/bubblewrap-paths.patch +++ b/pkgs/development/libraries/gnome-desktop/bubblewrap-paths.patch diff --git a/pkgs/desktops/gnome/core/gnome-desktop/default.nix b/pkgs/development/libraries/gnome-desktop/default.nix index 302d201f234f3..5d682e23b277c 100644 --- a/pkgs/desktops/gnome/core/gnome-desktop/default.nix +++ b/pkgs/development/libraries/gnome-desktop/default.nix @@ -7,6 +7,7 @@ , ninja , gnome , gtk3 +, gtk4 , glib , gettext , libxml2 @@ -26,13 +27,13 @@ stdenv.mkDerivation rec { pname = "gnome-desktop"; - version = "41.3"; + version = "42.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-desktop/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-jNHKq5MRgowEUkaMalBnqbxEY4NbI6FL5E6P2bAwAcY="; + sha256 = "sha256-88qik6Xob2zK0Y+BcnPbHGcGHmgNedg5qop1KOW7JtY="; }; patches = [ @@ -63,6 +64,7 @@ stdenv.mkDerivation rec { isocodes wayland gtk3 + gtk4 glib libseccomp systemd @@ -84,7 +86,6 @@ stdenv.mkDerivation rec { passthru = { updateScript = gnome.updateScript { packageName = "gnome-desktop"; - attrPath = "gnome.gnome-desktop"; }; }; diff --git a/pkgs/development/libraries/gnome-online-accounts/default.nix b/pkgs/development/libraries/gnome-online-accounts/default.nix index 9337a8e93d6de..f58e87b2f7e68 100644 --- a/pkgs/development/libraries/gnome-online-accounts/default.nix +++ b/pkgs/development/libraries/gnome-online-accounts/default.nix @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { pname = "gnome-online-accounts"; - version = "3.40.1"; + version = "3.43.1"; # https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/87 src = fetchFromGitLab { @@ -38,7 +38,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "gnome-online-accounts"; rev = version; - sha256 = "sha256-q4bLGOOGoGH/Et3hu7/372tjNMouX9ePTanIo0c4Jbw="; + sha256 = "sha256-Dpq5bQwU0ZAxmEllpbLnS1Jz3F0rxtFMKZcIvAteObU="; }; outputs = [ "out" "man" "dev" "devdoc" ]; diff --git a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch index c02330adf6d1a..b6dc66fc66b1c 100644 --- a/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch +++ b/pkgs/development/libraries/gobject-introspection/absolute_shlib_path.patch @@ -1,3 +1,5 @@ +diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py +index 64575557..1eb0a2b4 100644 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py @@ -95,6 +95,39 @@ def get_windows_option_group(parser): @@ -41,16 +43,18 @@ parser = optparse.OptionParser('%prog [options] sources', version='%prog ' + giscanner.__version__) @@ -214,6 +247,10 @@ match the namespace prefix.""") - parser.add_option("", "--filelist", - action="store", dest="filelist", default=[], - help="file containing headers and sources to be scanned") + parser.add_option("", "--c-include", + action="append", dest="c_includes", default=[], + help="headers which should be included in C programs") + parser.add_option("", "--fallback-library-path", + action="store", dest="fallback_libpath", + default=_get_default_fallback_libpath(), + help="Path to prepend to unknown shared libraries") - - group = get_preprocessor_option_group(parser) - parser.add_option_group(group) + parser.add_option("", "--filelist", + action="store", dest="filelist", default=[], + help="file containing headers and sources to be scanned") +diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py +index 9f8ab5df..af325022 100644 --- a/giscanner/shlibs.py +++ b/giscanner/shlibs.py @@ -57,6 +57,12 @@ def _ldd_library_pattern(library_name): @@ -115,9 +119,11 @@ if m: del patterns[library] shlibs.append(m.group()) +diff --git a/giscanner/utils.py b/giscanner/utils.py +index 31c7ea48..630002a8 100644 --- a/giscanner/utils.py +++ b/giscanner/utils.py -@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file): +@@ -114,16 +114,11 @@ def extract_libtool_shlib(la_file): if dlname is None: return None @@ -139,6 +145,8 @@ # Returns arguments for invoking libtool, if applicable, otherwise None +diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py +index a8337c60..72789d76 100644 --- a/tests/scanner/test_shlibs.py +++ b/tests/scanner/test_shlibs.py @@ -7,6 +7,30 @@ from giscanner.shlibs import resolve_from_ldd_output, sanitize_shlib_path diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix index 667d50ca4d8b8..b457331983aac 100644 --- a/pkgs/development/libraries/gobject-introspection/default.nix +++ b/pkgs/development/libraries/gobject-introspection/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , glib , flex @@ -26,7 +27,7 @@ stdenv.mkDerivation rec { pname = "gobject-introspection"; - version = "1.70.0"; + version = "1.72.0"; # outputs TODO: share/gobject-introspection-1.0/tests is needed during build # by pygobject3 (and maybe others), but it's only searched in $out @@ -35,7 +36,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0jpwraip7pwl9bf9s59am3r7074p34fasvfb5ym1fb8hwc34jawh"; + sha256 = "Av6OWQhh2I+DBg3TnNpcyqYLLaHSHQ+VSZMBsYa+qrw="; }; patches = [ @@ -46,15 +47,6 @@ stdenv.mkDerivation rec { src = ./absolute_shlib_path.patch; inherit nixStoreDir; }) - # Fix build with meson 0.61.0 - (fetchurl { - url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/827494d6415b696a98fa195cbd883b50cc893bfc.patch"; - sha256 = "sha256-imVWzU760FRsX+eXREQDQ6mDcmzZ5ASLT9rBf4oyBGQ="; - }) - (fetchurl { - url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/effb1e09dee263cdac4ec593e8caf316e6f01fe2.patch"; - sha256 = "sha256-o7a0qDT5IYcYcz8toeZu+nPj3SwS52sNgmxgzsmlp4Q="; - }) ] ++ lib.optionals x11Support [ # Hardcode the cairo shared library path in the Cairo gir shipped with this package. # https://github.com/NixOS/nixpkgs/issues/34080 diff --git a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix index 483ee0b084963..085544a36120e 100644 --- a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix +++ b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation rec { pname = "gsettings-desktop-schemas"; - version = "41.0"; + version = "42.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "dyiZcuWW0ERYPwwFYwbY8dvYrc+RKRClDaCmY+ZTMu0="; + sha256 = "ZoYzWp7WI/euInb++lCkENTnHUIxiAgkcUBwyzFzI9I="; }; strictDeps = true; diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix index bb1451594475c..c736c5cc76171 100644 --- a/pkgs/development/libraries/gtk/3.x.nix +++ b/pkgs/development/libraries/gtk/3.x.nix @@ -2,7 +2,6 @@ , stdenv , substituteAll , fetchurl -, fetchpatch , pkg-config , gettext , docbook-xsl-nons @@ -60,7 +59,7 @@ in stdenv.mkDerivation rec { pname = "gtk+3"; - version = "3.24.31"; + version = "3.24.33"; outputs = [ "out" "dev" ] ++ lib.optional withGtkDoc "devdoc"; outputBin = "dev"; @@ -72,7 +71,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${lib.versions.majorMinor version}/gtk+-${version}.tar.xz"; - sha256 = "sha256-Qjw+f9tMRZ7oieNf1Ncf0mI1YlQcEEGxHAflrR/xC/k="; + sha256 = "sha256-WIsGUi4l0VeemJtvnYob2/L+E83gGgTpBP80aiJeeAE="; }; patches = [ @@ -84,12 +83,6 @@ stdenv.mkDerivation rec { # e.g. https://gitlab.gnome.org/GNOME/gtk/blob/3.24.4/gtk/gtk-launch.c#L31-33 # https://gitlab.gnome.org/GNOME/gtk/merge_requests/536 ./patches/3.0-darwin-x11.patch - - # 3.24.31 does not declare QuartzCore dependency properly and fails to link - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/0ac61443694b477c41fc246cb387ef86aba441de.patch"; - sha256 = "sha256-KaMeIdV/gfM4xzN9lIkY99E7bzAfTM6VETk5DEunB2w="; - }) ]; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix index 6da3fc769ea67..db682d99dca0f 100644 --- a/pkgs/development/libraries/gtk/4.x.nix +++ b/pkgs/development/libraries/gtk/4.x.nix @@ -62,7 +62,7 @@ in stdenv.mkDerivation rec { pname = "gtk4"; - version = "4.6.1"; + version = "4.6.2"; outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ]; outputBin = "dev"; @@ -74,7 +74,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz"; - sha256 = "2FUI0hy7zWPVaKeGKvXs1juXjX1XmcvkBMkdI4nQ7F8="; + sha256 = "/yY69gmlDrdgVmU1ktkpRZrvSBmkRMQ29tUsb2PB+uw="; }; nativeBuildInputs = [ @@ -202,13 +202,6 @@ stdenv.mkDerivation rec { for f in $dev/bin/gtk4-encode-symbolic-svg; do wrapProgram $f --prefix XDG_DATA_DIRS : "${shared-mime-info}/share" done - - '' + lib.optionalString x11Support '' - # So that DevHelp can find this. - # TODO: Remove this with DevHelp 41. - mkdir -p "$devdoc/share/devhelp/books" - mv "$out/share/doc/"* "$devdoc/share/devhelp/books" - rmdir -p --ignore-fail-on-non-empty "$out/share/doc" ''; # Wrap demos @@ -219,6 +212,9 @@ stdenv.mkDerivation rec { wrapProgram $dev/bin/$program \ --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share/gsettings-schemas/${pname}-${version}" done + '' + lib.optionalString x11Support '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/gtkmm/4.x.nix b/pkgs/development/libraries/gtkmm/4.x.nix index 1960a04e95f43..c91e7b54ff2e7 100644 --- a/pkgs/development/libraries/gtkmm/4.x.nix +++ b/pkgs/development/libraries/gtkmm/4.x.nix @@ -17,13 +17,13 @@ stdenv.mkDerivation rec { pname = "gtkmm"; - version = "4.6.0"; + version = "4.6.1"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "E1OgkJPLVx71rAXZPSALrxMq1gS19JQHd2VuFQWBTB8="; + sha256 = "DV7+yp7GT91TC7gibGMQrJlUmz3ZYE1uNnY5eRrz0eA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/gtksourceview/4.x.nix b/pkgs/development/libraries/gtksourceview/4.x.nix index 0095b6ca9e08c..74acd6f743d61 100644 --- a/pkgs/development/libraries/gtksourceview/4.x.nix +++ b/pkgs/development/libraries/gtksourceview/4.x.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gtksourceview"; - version = "4.8.2"; + version = "4.8.3"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1k1pava84ywgq62xl5bz8y3zm7z2kz6kkgp423c0y02jrgjyfbc4"; + sha256 = "wwAZUGMgyiR02DTM7R4iF+pTPgDrKj9Ot4eQB5QOxoI="; }; patches = [ diff --git a/pkgs/development/libraries/gtksourceview/5.x.nix b/pkgs/development/libraries/gtksourceview/5.x.nix index e6ad0f1ae36b9..81c0abd61b6d3 100644 --- a/pkgs/development/libraries/gtksourceview/5.x.nix +++ b/pkgs/development/libraries/gtksourceview/5.x.nix @@ -10,6 +10,7 @@ , pango , fribidi , vala +, gi-docgen , libxml2 , perl , gettext @@ -22,13 +23,13 @@ stdenv.mkDerivation rec { pname = "gtksourceview"; - version = "5.2.0"; + version = "5.4.0"; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "ybNPoCZU9WziL6CIJ9idtLqBYxsubX0x6mXRPHKUMOk="; + sha256 = "ADvCF+ZwqOyKo67OmUtw5wt9a4B0k4rdohcYVV2E5jc="; }; patches = [ @@ -46,6 +47,7 @@ stdenv.mkDerivation rec { perl gobject-introspection vala + gi-docgen ]; buildInputs = [ @@ -68,6 +70,10 @@ stdenv.mkDerivation rec { dbus ]; + mesonFlags = [ + "-Dgtk_doc=true" + ]; + doCheck = stdenv.isLinux; checkPhase = '' @@ -81,6 +87,11 @@ stdenv.mkDerivation rec { runHook postCheck ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = "gtksourceview"; diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix index c79f849d22f17..e02a0be4d28d5 100644 --- a/pkgs/development/libraries/gvfs/default.nix +++ b/pkgs/development/libraries/gvfs/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , meson , ninja @@ -17,6 +18,7 @@ , fuse3 , libcdio , libxml2 +, libsoup_3 , libxslt , docbook_xsl , docbook_xml_dtd_42 @@ -41,11 +43,11 @@ stdenv.mkDerivation rec { pname = "gvfs"; - version = "1.48.1"; + version = "1.50.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1hlxl6368h6nyqp1888szxs9hnpcw98k3h23dgqi29xd38klzsmj"; + sha256 = "y8L1ZNLp8Ax2BnP0LWgDvOPggat/+0RW3v//upM5tN0="; }; postPatch = '' @@ -89,9 +91,8 @@ stdenv.mkDerivation rec { libnfs openssh gsettings-desktop-schemas - # TODO: a ligther version of libsoup to have FTP/HTTP support? + libsoup_3 ] ++ lib.optionals gnomeSupport [ - gnome.libsoup gcr glib-networking # TLS support gnome-online-accounts @@ -106,7 +107,6 @@ stdenv.mkDerivation rec { "-Dgcr=false" "-Dgoa=false" "-Dkeyring=false" - "-Dhttp=false" "-Dgoogle=false" ] ++ lib.optionals (avahi == null) [ "-Ddnssd=false" diff --git a/pkgs/development/libraries/jsonrpc-glib/default.nix b/pkgs/development/libraries/jsonrpc-glib/default.nix index 7618110e86c4d..fb828e5b57146 100644 --- a/pkgs/development/libraries/jsonrpc-glib/default.nix +++ b/pkgs/development/libraries/jsonrpc-glib/default.nix @@ -1,18 +1,42 @@ -{ lib, stdenv, fetchurl, meson, ninja, glib, json-glib, pkg-config, gobject-introspection, vala, gtk-doc, docbook_xsl, docbook_xml_dtd_43, gnome }: +{ stdenv +, lib +, fetchurl +, meson +, ninja +, glib +, json-glib +, pkg-config +, gobject-introspection +, vala +, gi-docgen +, gnome +}: + stdenv.mkDerivation rec { pname = "jsonrpc-glib"; - version = "3.40.0"; + version = "3.42.0"; outputs = [ "out" "dev" "devdoc" ]; - nativeBuildInputs = [ meson ninja pkg-config gobject-introspection vala gtk-doc docbook_xsl docbook_xml_dtd_43 ]; - buildInputs = [ glib json-glib ]; - src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "wuPRYlfHJmzTkBiE4iN1V1v2Go4fZ1lsiODYeucNDvQ="; + sha256 = "IhmJpXyoKhJGfcQngizXZRsMrQOBQMkxAnvxB0IIJ2s="; }; + nativeBuildInputs = [ + meson + ninja + pkg-config + gobject-introspection + vala + gi-docgen + ]; + + buildInputs = [ + glib + json-glib + ]; + mesonFlags = [ "-Denable_gtk_doc=true" ]; @@ -21,6 +45,11 @@ stdenv.mkDerivation rec { # https://gitlab.gnome.org/GNOME/jsonrpc-glib/issues/2 doCheck = false; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix index 856ec30bccb29..447ad06e9b87d 100644 --- a/pkgs/development/libraries/libadwaita/default.nix +++ b/pkgs/development/libraries/libadwaita/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { pname = "libadwaita"; - version = "1.0.2"; + version = "1.1.0"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "devdoc"; # demo app @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { owner = "GNOME"; repo = "libadwaita"; rev = version; - hash = "sha256-D7Qq8yAWkr/G5I4k8G1+viJkEJSrCBAg31Q+g3U9FcQ="; + hash = "sha256-+bgCD2jy3M0gEAtbB+nOptQGEXXkvk1idoggJz4UMy0="; }; nativeBuildInputs = [ @@ -91,6 +91,12 @@ stdenv.mkDerivation rec { mv $out/share/{doc,gtk-doc} ''; + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + }; + }; + meta = with lib; { description = "Library to help with developing UI for mobile devices using GTK/GNOME"; homepage = "https://gitlab.gnome.org/GNOME/libadwaita"; diff --git a/pkgs/development/libraries/libdazzle/default.nix b/pkgs/development/libraries/libdazzle/default.nix index 426ffadf4c6eb..7f4c53071d0ca 100644 --- a/pkgs/development/libraries/libdazzle/default.nix +++ b/pkgs/development/libraries/libdazzle/default.nix @@ -1,20 +1,53 @@ -{ lib, stdenv, fetchurl, ninja, meson, pkg-config, vala, gobject-introspection, libxml2 -, gtk-doc, docbook_xsl, docbook_xml_dtd_43, dbus, xvfb-run, glib, gtk3, gnome }: +{ lib +, stdenv +, fetchurl +, ninja +, meson +, pkg-config +, vala +, gobject-introspection +, libxml2 +, gtk-doc +, docbook_xsl +, docbook_xml_dtd_43 +, dbus +, xvfb-run +, glib +, gtk3 +, gnome +}: stdenv.mkDerivation rec { pname = "libdazzle"; - version = "3.42.0"; + version = "3.44.0"; outputs = [ "out" "dev" "devdoc" ]; outputBin = "dev"; src = fetchurl { url = "mirror://gnome/sources/libdazzle/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "09b9l56yiwad7xqr7g7ragmm4gmqxjnvc2pcx6741klw7lxpmrpa"; + sha256 = "PNPkXrbiaAywXVLh6A3Y+dWdR2UhLw4o945sF4PRjq4="; }; - nativeBuildInputs = [ ninja meson pkg-config vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 dbus xvfb-run glib ]; - buildInputs = [ glib gtk3 ]; + nativeBuildInputs = [ + ninja + meson + pkg-config + vala + gobject-introspection + libxml2 + gtk-doc + docbook_xsl + docbook_xml_dtd_43 + dbus + xvfb-run + glib + ]; + + buildInputs = [ + glib + gtk3 + ]; mesonFlags = [ "-Denable_gtk_doc=true" diff --git a/pkgs/development/libraries/libgnome-games-support/2.0.nix b/pkgs/development/libraries/libgnome-games-support/2.0.nix new file mode 100644 index 0000000000000..a5f1c2576b9f4 --- /dev/null +++ b/pkgs/development/libraries/libgnome-games-support/2.0.nix @@ -0,0 +1,59 @@ +{ stdenv +, lib +, fetchurl +, pkg-config +, glib +, gtk4 +, libgee +, gettext +, vala +, gnome +, libintl +, meson +, ninja +}: + +stdenv.mkDerivation rec { + pname = "libgnome-games-support"; + version = "2.0.0"; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "U4Ifb+Mu3cue7zMk9kaqrIPMbT3gk339XyZkcNRT0qQ="; + }; + + nativeBuildInputs = [ + gettext + meson + ninja + pkg-config + vala + ]; + + buildInputs = [ + libintl + ]; + + propagatedBuildInputs = [ + # Required by libgnome-games-support-2.pc + glib + gtk4 + libgee + ]; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "${pname}_2_0"; + versionPolicy = "odd-unstable"; + }; + }; + + meta = with lib; { + description = "Small library intended for internal use by GNOME Games, but it may be used by others"; + homepage = "https://wiki.gnome.org/Apps/Games"; + license = licenses.lgpl3Plus; + maintainers = teams.gnome.members; + platforms = platforms.unix; + }; +} diff --git a/pkgs/development/libraries/libgnome-games-support/default.nix b/pkgs/development/libraries/libgnome-games-support/default.nix index 80c76ea980f9c..e63d7f8fe656f 100644 --- a/pkgs/development/libraries/libgnome-games-support/default.nix +++ b/pkgs/development/libraries/libgnome-games-support/default.nix @@ -44,6 +44,7 @@ stdenv.mkDerivation rec { updateScript = gnome.updateScript { packageName = pname; versionPolicy = "odd-unstable"; + freeze = true; }; }; diff --git a/pkgs/development/libraries/libgsf/default.nix b/pkgs/development/libraries/libgsf/default.nix index 1850da7e64686..8bc2dc76160fb 100644 --- a/pkgs/development/libraries/libgsf/default.nix +++ b/pkgs/development/libraries/libgsf/default.nix @@ -1,26 +1,59 @@ -{ fetchurl, lib, stdenv, pkg-config, intltool, gettext, glib, libxml2, zlib, bzip2 -, perl, gdk-pixbuf, libiconv, libintl, gnome }: +{ fetchurl +, lib +, stdenv +, pkg-config +, intltool +, gettext +, glib +, libxml2 +, zlib +, bzip2 +, perl +, gdk-pixbuf +, libiconv +, libintl +, gnome +}: stdenv.mkDerivation rec { pname = "libgsf"; - version = "1.14.48"; + version = "1.14.49"; + + outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/4bX8dRt0Ovvt72DCnSkHbZDYrmHv4hT//arTBEyuDc="; + sha256 = "6evjZojwEMnm5AyJA/NzKUjeuKygMleNB9B1G9gs+Fc="; }; - nativeBuildInputs = [ pkg-config intltool libintl ]; + nativeBuildInputs = [ + pkg-config + intltool + libintl + ]; - buildInputs = [ gettext bzip2 zlib ]; - checkInputs = [ perl ]; + buildInputs = [ + gettext + bzip2 + zlib + ]; - propagatedBuildInputs = [ libxml2 glib gdk-pixbuf libiconv ]; + checkInputs = [ + perl + ]; - outputs = [ "out" "dev" ]; + propagatedBuildInputs = [ + libxml2 + glib + gdk-pixbuf + libiconv + ]; doCheck = true; - preCheck = "patchShebangs ./tests/"; + + preCheck = '' + patchShebangs ./tests/ + ''; passthru = { updateScript = gnome.updateScript { @@ -31,10 +64,10 @@ stdenv.mkDerivation rec { meta = with lib; { description = "GNOME's Structured File Library"; - homepage = "https://www.gnome.org/projects/libgsf"; - license = licenses.lgpl2Plus; + homepage = "https://www.gnome.org/projects/libgsf"; + license = licenses.lgpl2Plus; maintainers = with maintainers; [ lovek323 ]; - platforms = lib.platforms.unix; + platforms = lib.platforms.unix; longDescription = '' Libgsf aims to provide an efficient extensible I/O abstraction for diff --git a/pkgs/development/libraries/libgweather/default.nix b/pkgs/development/libraries/libgweather/default.nix index fbab67e086520..e4a527ba48578 100644 --- a/pkgs/development/libraries/libgweather/default.nix +++ b/pkgs/development/libraries/libgweather/default.nix @@ -6,12 +6,9 @@ , pkg-config , libxml2 , glib -, gtk3 , gettext , libsoup -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_43 +, gi-docgen , gobject-introspection , python3 , tzdata @@ -22,24 +19,29 @@ stdenv.mkDerivation rec { pname = "libgweather"; - version = "40.0"; + version = "4.0.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "1rkf4yv43qcahyx7bismdv6z2vh5azdnm1fqfmnzrada9cm8ykna"; + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "RA1EgBtvcrSMZ25eN/kQnP7hOU/XTMknJeGxuk+ug0w="; }; + patches = [ + # Headers depend on glib but it is only listed in Requires.private, + # which does not influence Cflags on non-static builds in nixpkgs’s + # pkg-config. Let’s add it to Requires to ensure Cflags are set correctly. + ./fix-pkgconfig.patch + ]; + nativeBuildInputs = [ meson ninja pkg-config gettext vala - gtk-doc - docbook-xsl-nons - docbook_xml_dtd_43 + gi-docgen gobject-introspection python3 python3.pkgs.pygobject3 @@ -47,7 +49,6 @@ stdenv.mkDerivation rec { buildInputs = [ glib - gtk3 libsoup libxml2 geocode-glib @@ -60,9 +61,13 @@ stdenv.mkDerivation rec { ]; postPatch = '' - chmod +x meson/meson_post_install.py - patchShebangs meson/meson_post_install.py - patchShebangs data/gen_locations_variant.py + patchShebangs build-aux/meson/meson_post_install.py + patchShebangs build-aux/meson/gen_locations_variant.py + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/libgweather/fix-pkgconfig.patch b/pkgs/development/libraries/libgweather/fix-pkgconfig.patch new file mode 100644 index 0000000000000..b118a3bc9dd84 --- /dev/null +++ b/pkgs/development/libraries/libgweather/fix-pkgconfig.patch @@ -0,0 +1,14 @@ +diff --git a/libgweather/meson.build b/libgweather/meson.build +index b5d0b4d4..10010d70 100644 +--- a/libgweather/meson.build ++++ b/libgweather/meson.build +@@ -269,6 +269,9 @@ pkgconfig.generate( + description: 'Gather weather information from online services', + version: meson.project_version(), + subdirs: libgweather_full_version, ++ requires: [ ++ 'glib-2.0', ++ ], + variables: [ + 'soupapiversion=' + libsoup_api_version, + ] diff --git a/pkgs/development/libraries/libhandy/0.x.nix b/pkgs/development/libraries/libhandy/0.x.nix index 7597aee697a8b..2c2b09b44923f 100644 --- a/pkgs/development/libraries/libhandy/0.x.nix +++ b/pkgs/development/libraries/libhandy/0.x.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchFromGitLab, meson, ninja, pkg-config, gobject-introspection, vala , gtk-doc, docbook_xsl, docbook_xml_dtd_43 -, gtk3, gnome +, gtk3, gnome-desktop , dbus, xvfb-run, libxml2 , hicolor-icon-theme }: @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { meson ninja pkg-config gobject-introspection vala libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 ]; - buildInputs = [ gnome.gnome-desktop gtk3 libxml2 ]; + buildInputs = [ gnome-desktop gtk3 libxml2 ]; checkInputs = [ dbus xvfb-run hicolor-icon-theme ]; mesonFlags = [ diff --git a/pkgs/development/libraries/libhandy/default.nix b/pkgs/development/libraries/libhandy/default.nix index 63c494999a93c..c1d81f8043c80 100644 --- a/pkgs/development/libraries/libhandy/default.nix +++ b/pkgs/development/libraries/libhandy/default.nix @@ -6,16 +6,13 @@ , pkg-config , gobject-introspection , vala -, gtk-doc -, docbook-xsl-nons -, docbook_xml_dtd_43 +, gi-docgen , glib , gsettings-desktop-schemas , gtk3 , enableGlade ? false , glade , xvfb-run -, libxml2 , gdk-pixbuf , librsvg , hicolor-icon-theme @@ -28,7 +25,7 @@ stdenv.mkDerivation rec { pname = "libhandy"; - version = "1.5.0"; + version = "1.6.1"; outputs = [ "out" @@ -41,15 +38,12 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-RmueAmwfnrO2WWb1MNl3A6ghLar5EXSMFF6cuEPb1v4="; + sha256 = "sha256-bqsDhEBNVr0bH6BZ2aCBF3d49q4ID/whIPKGVsp0YqQ="; }; nativeBuildInputs = [ - docbook_xml_dtd_43 - docbook-xsl-nons gobject-introspection - gtk-doc - libxml2 + gi-docgen meson ninja pkg-config @@ -59,7 +53,6 @@ stdenv.mkDerivation rec { buildInputs = [ gdk-pixbuf gtk3 - libxml2 ] ++ lib.optionals enableGlade [ glade ]; @@ -106,6 +99,11 @@ stdenv.mkDerivation rec { runHook postCheck ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix index f4a1959a512c7..77c595c9184a8 100644 --- a/pkgs/development/libraries/libical/default.nix +++ b/pkgs/development/libraries/libical/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { pname = "libical"; - version = "3.0.11"; + version = "3.0.14"; outputs = [ "out" "dev" ]; # "devdoc" ]; @@ -28,7 +28,7 @@ stdenv.mkDerivation rec { owner = "libical"; repo = "libical"; rev = "v${version}"; - sha256 = "sha256-9kMYqWITZ2LlBDebJUZFWyVclAjfIZtc3Dm7lii9ZMc="; + sha256 = "sha256-gZ6IBjG5pNKJ+hWcTzXMP7yxL4he4LTklZGoC9vXra8="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/libpeas/default.nix b/pkgs/development/libraries/libpeas/default.nix index 55c884d215fdc..712592431abe0 100644 --- a/pkgs/development/libraries/libpeas/default.nix +++ b/pkgs/development/libraries/libpeas/default.nix @@ -1,25 +1,61 @@ -{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gettext, gnome -, glib, gtk3, gobject-introspection, python3, ncurses +{ stdenv +, lib +, fetchurl +, meson +, ninja +, pkg-config +, gettext +, gi-docgen +, gnome +, glib +, gtk3 +, gobject-introspection +, python3 +, ncurses }: stdenv.mkDerivation rec { pname = "libpeas"; - version = "1.30.0"; + version = "1.32.0"; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "18xrk1c1ixlhkmykcfiafrl2am470ws687xqvjlq40zwkcp5dx8b"; + sha256 = "1iVSD6AuiXcCmyRq5Dm8IYloll8egtYSIItxPx3MPQ4="; }; - nativeBuildInputs = [ pkg-config meson ninja gettext gobject-introspection ]; - buildInputs = [ glib gtk3 ncurses python3 python3.pkgs.pygobject3 ]; + nativeBuildInputs = [ + pkg-config + meson + ninja + gettext + gi-docgen + gobject-introspection + ]; + + buildInputs = [ + glib + gtk3 + ncurses + python3 + python3.pkgs.pygobject3 + ]; + propagatedBuildInputs = [ # Required by libpeas-1.0.pc gobject-introspection ]; + mesonFlags = [ + "-Dgtk_doc=true" + ]; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/librest/1.0.nix b/pkgs/development/libraries/librest/1.0.nix new file mode 100644 index 0000000000000..d51f9e31b178f --- /dev/null +++ b/pkgs/development/libraries/librest/1.0.nix @@ -0,0 +1,74 @@ +{ lib +, stdenv +, fetchurl +, meson +, ninja +, pkg-config +, gi-docgen +, glib +, json-glib +, libsoup +, gobject-introspection +, gnome +}: + +stdenv.mkDerivation rec { + pname = "rest"; + version = "0.9.0"; + + outputs = [ "out" "dev" "devdoc" ]; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "hbK8k0ESgTlTm1PuU/BTMxC8ljkv1kWGOgQEELgevmY="; + }; + + nativeBuildInputs = [ + meson + ninja + pkg-config + gi-docgen + gobject-introspection + ]; + + buildInputs = [ + glib + json-glib + libsoup + ]; + + mesonFlags = [ + "-Dexamples=false" + + # Remove when https://gitlab.gnome.org/GNOME/librest/merge_requests/2 is merged. + "-Dca_certificates=true" + "-Dca_certificates_path=/etc/ssl/certs/ca-certificates.crt" + ]; + + postPatch = '' + # https://gitlab.gnome.org/GNOME/librest/-/merge_requests/19 + substituteInPlace meson.build \ + --replace "con." "conf." + ''; + + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "librest_1_0"; + versionPolicy = "odd-unstable"; + }; + }; + + meta = with lib; { + description = "Helper library for RESTful services"; + homepage = "https://wiki.gnome.org/Projects/Librest"; + license = licenses.lgpl21Only; + platforms = platforms.unix; + maintainers = teams.gnome.members; + }; +} diff --git a/pkgs/development/libraries/librest/default.nix b/pkgs/development/libraries/librest/default.nix index ce2df9cc9a8a7..abe53ff3692fa 100644 --- a/pkgs/development/libraries/librest/default.nix +++ b/pkgs/development/libraries/librest/default.nix @@ -48,6 +48,7 @@ stdenv.mkDerivation rec { packageName = pname; attrPath = "librest"; versionPolicy = "odd-unstable"; + freeze = true; }; }; diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix index 81cad37351a59..b093544138417 100644 --- a/pkgs/development/libraries/librsvg/default.nix +++ b/pkgs/development/libraries/librsvg/default.nix @@ -16,6 +16,8 @@ , rustc , rust , cargo +, gi-docgen +, python3 , gnome , vala , withIntrospection ? stdenv.hostPlatform == stdenv.buildPlatform @@ -25,13 +27,15 @@ stdenv.mkDerivation rec { pname = "librsvg"; - version = "2.52.6"; + version = "2.54.0"; - outputs = [ "out" "dev" "installedTests" ]; + outputs = [ "out" "dev" "installedTests" ] ++ lib.optionals withIntrospection [ + "devdoc" + ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "o/k5oeajpgQIJEYy0DI/jDsg60t7AAU24uW9k7jv+q0="; + sha256 = "uvjrwUfxRrQmG7PQzQ+slEv427Sx8jR9IzQfl03MMIU="; }; cargoVendorDir = "vendor"; @@ -45,10 +49,12 @@ stdenv.mkDerivation rec { pkg-config rustc cargo + python3.pkgs.docutils vala rustPlatform.cargoSetupHook ] ++ lib.optionals withIntrospection [ gobject-introspection + gi-docgen ]; buildInputs = [ @@ -119,6 +125,11 @@ stdenv.mkDerivation rec { mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libsecret/default.nix b/pkgs/development/libraries/libsecret/default.nix index 18f00a0933c35..9e8be02aa63a3 100644 --- a/pkgs/development/libraries/libsecret/default.nix +++ b/pkgs/development/libraries/libsecret/default.nix @@ -1,42 +1,76 @@ -{ lib, stdenv, fetchurl, fetchpatch, glib, pkg-config, gettext, libxslt, python3 -, docbook_xsl, docbook_xml_dtd_42 , libgcrypt, gobject-introspection, vala -, gtk-doc, gnome, gjs, libintl, dbus, xvfb-run }: +{ stdenv +, lib +, fetchurl +, glib +, meson +, ninja +, pkg-config +, gettext +, libxslt +, python3 +, docbook-xsl-nons +, docbook_xml_dtd_42 +, libgcrypt +, gobject-introspection +, vala +, gi-docgen +, gnome +, gjs +, libintl +, dbus +, xvfb-run +}: stdenv.mkDerivation rec { pname = "libsecret"; - version = "0.20.4"; + version = "0.20.5"; + + outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0a4xnfmraxchd9cq5ai66j12jv2vrgjmaaxz25kl031jvda4qnij"; + sha256 = "P7PONA/NfbVNh8iT5pv8Kx9uTUsnkGX/5m2snw/RK00="; }; - postPatch = '' - patchShebangs . - ''; - - outputs = [ "out" "dev" "devdoc" ]; - - propagatedBuildInputs = [ glib ]; nativeBuildInputs = [ - pkg-config gettext libxslt docbook_xsl docbook_xml_dtd_42 libintl - gobject-introspection vala gtk-doc glib + meson + ninja + pkg-config + gettext + libxslt # for xsltproc for building man pages + docbook-xsl-nons + docbook_xml_dtd_42 + libintl + gobject-introspection + vala + gi-docgen + glib ]; - buildInputs = [ libgcrypt ]; - # optional: build docs with gtk-doc? (probably needs a flag as well) - configureFlags = [ - "--with-libgcrypt-prefix=${libgcrypt.dev}" + buildInputs = [ + libgcrypt ]; - enableParallelBuilding = true; + propagatedBuildInputs = [ + glib + ]; installCheckInputs = [ - python3 python3.pkgs.dbus-python python3.pkgs.pygobject3 xvfb-run dbus gjs + python3 + python3.pkgs.dbus-python + python3.pkgs.pygobject3 + xvfb-run + dbus + gjs ]; # needs to run after install because typelibs point to absolute paths doInstallCheck = false; # Failed to load shared library '/force/shared/libmock_service.so.0' referenced by the typelib + + postPatch = '' + patchShebangs . + ''; + installCheckPhase = '' export NO_AT_BRIDGE=1 xvfb-run -s '-screen 0 800x600x24' dbus-run-session \ @@ -44,6 +78,11 @@ stdenv.mkDerivation rec { make check ''; + postFixup = '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" + ''; + passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/development/libraries/libsoup/3.x.nix b/pkgs/development/libraries/libsoup/3.x.nix index 454a1cdf40a23..4791e49ae3fa8 100644 --- a/pkgs/development/libraries/libsoup/3.x.nix +++ b/pkgs/development/libraries/libsoup/3.x.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation rec { pname = "libsoup"; - version = "3.0.4"; + version = "3.0.5"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-W9OLXgkfcH/X+j7Xw3qsyj+OFsZXh/HMF9w40dzeVns="; + sha256 = "sha256-9dFD22gws4Je3CocREnWOSc7C/oBeklwhxli2byiIUU="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix index 3033b7df4e3d4..ee79d53705945 100644 --- a/pkgs/development/libraries/pango/default.nix +++ b/pkgs/development/libraries/pango/default.nix @@ -24,14 +24,14 @@ stdenv.mkDerivation rec { pname = "pango"; - version = "1.50.4"; + version = "1.50.6"; outputs = [ "bin" "out" "dev" ] ++ lib.optionals withDocs [ "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "9K1j6H3CsUUwBUKk+wBNB6n5GzQVL64N2+UOzdhRwWI="; + sha256 = "qZi882iBw6wgSV1AvOswT06qkXW9KWfIVlZDTL2v6Go="; }; strictDeps = !withIntrospection; @@ -84,12 +84,9 @@ stdenv.mkDerivation rec { doCheck = false; # test-font: FAIL - postInstall = lib.optionalString withDocs '' - # So that devhelp can find this. - # https://gitlab.gnome.org/GNOME/pango/merge_requests/293/diffs#note_1058448 - mkdir -p "$devdoc/share/devhelp" - mv "$out/share/doc/pango/reference" "$devdoc/share/devhelp/books" - rmdir -p --ignore-fail-on-non-empty "$out/share/doc/pango" + postFixup = lib.optionalString withDocs '' + # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. + moveToOutput "share/doc" "$devdoc" ''; passthru = { diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix index 6fa07bcaf8060..5547e492a65be 100644 --- a/pkgs/development/libraries/poppler/default.nix +++ b/pkgs/development/libraries/poppler/default.nix @@ -18,6 +18,7 @@ , ninja , openjpeg , pkg-config +, python3 , scribusUnstable , texlive , zlib @@ -34,19 +35,20 @@ let in stdenv.mkDerivation rec { pname = "poppler-${suffix}"; - version = "22.01.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! + version = "22.03.0"; # beware: updates often break cups-filters build, check texlive and scribusUnstable too! outputs = [ "out" "dev" ]; src = fetchurl { url = "https://poppler.freedesktop.org/poppler-${version}.tar.xz"; - sha256 = "sha256-fTSTBWtbhkE+XGk8LK4CxcBs2OYY0UwsMeLIS2eyMT4="; + sha256 = "sha256-cox4upTXWlX2tjVdT72qb0mTTZYWvljl5nmpz9CYDh4="; }; nativeBuildInputs = [ cmake ninja pkg-config + python3 ]; buildInputs = [ diff --git a/pkgs/development/libraries/template-glib/default.nix b/pkgs/development/libraries/template-glib/default.nix index c0ee2c1d3506d..375a7c3237a58 100644 --- a/pkgs/development/libraries/template-glib/default.nix +++ b/pkgs/development/libraries/template-glib/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, meson, ninja, pkg-config, glib, gobject-introspection, flex, bison, vala, gettext, gnome, gtk-doc, docbook_xsl, docbook_xml_dtd_43 }: let - version = "3.34.0"; + version = "3.34.1"; pname = "template-glib"; in stdenv.mkDerivation { @@ -10,7 +10,7 @@ stdenv.mkDerivation { src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1z9xkin5fyfh071ma9y045jcw83hgx33dfbjraw6cxk0qdmfysr1"; + sha256 = "nsm3HgTU9csU91XveQYxzQtFwGA+Ecg2/Hz9niaM0Ho="; }; buildInputs = [ meson ninja pkg-config gettext flex bison vala glib gtk-doc docbook_xsl docbook_xml_dtd_43 ]; diff --git a/pkgs/development/libraries/tracker-miners/default.nix b/pkgs/development/libraries/tracker-miners/default.nix index 4df448d08f464..7c3e495d54a34 100644 --- a/pkgs/development/libraries/tracker-miners/default.nix +++ b/pkgs/development/libraries/tracker-miners/default.nix @@ -1,6 +1,6 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl -, substituteAll , asciidoc , docbook-xsl-nons , docbook_xml_dtd_45 @@ -47,11 +47,11 @@ stdenv.mkDerivation rec { pname = "tracker-miners"; - version = "3.2.2"; + version = "3.3.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "/YTHHmIbwrgcrLX5CJMkNiRtG4pPw6Y1PiuNuuvAI2w="; + sha256 = "izh967d0BhwGrfsmeg4ODz0heZNxvwHQVklaubjdlBc="; }; nativeBuildInputs = [ @@ -113,13 +113,6 @@ stdenv.mkDerivation rec { "-Dminer_rss=false" ]; - patches = [ - (substituteAll { - src = ./fix-paths.patch; - inherit asciidoc; - }) - ]; - postInstall = '' glib-compile-schemas "$out/share/glib-2.0/schemas" ''; diff --git a/pkgs/development/libraries/tracker-miners/fix-paths.patch b/pkgs/development/libraries/tracker-miners/fix-paths.patch deleted file mode 100644 index 8661648eacdf8..0000000000000 --- a/pkgs/development/libraries/tracker-miners/fix-paths.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build -index 0b8a64863..a09db59f0 100644 ---- a/docs/manpages/meson.build -+++ b/docs/manpages/meson.build -@@ -43,7 +43,7 @@ foreach m : daemon_manpages + cli_manpages - command: [xsltproc, - '--output', '@OUTPUT@', - '--stringparam', 'man.authors.section.enabled', '0', -- '/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], -+ '@asciidoc@/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], - input: xml, - output: manpage, - install: true, diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix index 68a29919f0aad..5cb3dc73daa8d 100644 --- a/pkgs/development/libraries/tracker/default.nix +++ b/pkgs/development/libraries/tracker/default.nix @@ -1,7 +1,6 @@ { stdenv , lib , fetchurl -, fetchpatch , gettext , meson , ninja @@ -26,34 +25,19 @@ , json-glib , systemd , dbus -, substituteAll }: stdenv.mkDerivation rec { pname = "tracker"; - version = "3.2.1"; + version = "3.3.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "GEfgiznm5h2EhzWqH5f32WwDggFlP6DXy56Bs365wDo="; + sha256 = "Bwb5b+f5XfQqzsgSwd57RZOg1kgyHKg1BqnXHiJBe9o="; }; - patches = [ - (substituteAll { - src = ./fix-paths.patch; - inherit asciidoc; - }) - - # Filter out hidden (wrapped) subcommands - # https://gitlab.gnome.org/GNOME/tracker/-/merge_requests/481 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/tracker/-/commit/8c28c24e447f13da8cf804cd7a00f9b909c5d3f9.patch"; - sha256 = "EYo1nOtEr4semaPC5wk6A7bliRXu8qsBHaltd0DEI6Y="; - }) - ]; - nativeBuildInputs = [ meson ninja @@ -119,7 +103,9 @@ stdenv.mkDerivation rec { dbus-run-session \ --config-file=${dbus.daemon}/share/dbus-1/session.conf \ - meson test --print-errorlogs + meson test \ + --timeout-multiplier 2 \ + --print-errorlogs runHook postCheck ''; diff --git a/pkgs/development/libraries/tracker/fix-paths.patch b/pkgs/development/libraries/tracker/fix-paths.patch deleted file mode 100644 index 5e4d8657f7bce..0000000000000 --- a/pkgs/development/libraries/tracker/fix-paths.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/docs/manpages/meson.build b/docs/manpages/meson.build -index f90c757cf..40d9c939d 100644 ---- a/docs/manpages/meson.build -+++ b/docs/manpages/meson.build -@@ -32,7 +32,7 @@ foreach m : manpages - command: [xsltproc, - '--output', '@OUTPUT@', - '--stringparam', 'man.authors.section.enabled', '0', -- '/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], -+ '@asciidoc@/etc/asciidoc/docbook-xsl/manpage.xsl', '@INPUT@'], - input: xml, - output: manpage, - install: true, diff --git a/pkgs/development/libraries/vte/default.nix b/pkgs/development/libraries/vte/default.nix index aae30390ee418..9e94420829017 100644 --- a/pkgs/development/libraries/vte/default.nix +++ b/pkgs/development/libraries/vte/default.nix @@ -27,13 +27,13 @@ stdenv.mkDerivation rec { pname = "vte"; - version = "0.64.2"; + version = "0.67.90"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-KzyCC2WmZ8HYhZuiBHi+Ym0VGcwxWdrCX3AzMMbQfhg="; + sha256 = "sha256-RkCe1x/DqkfX3DkCSaU+i4E6xsCYvawVFuEL23wg2zg="; }; patches = [ diff --git a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix index ad68f13fe0f18..6764df634bbce 100644 --- a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix @@ -10,6 +10,7 @@ , gsettings-desktop-schemas , gtk4 , libadwaita +, gnome-desktop , xdg-desktop-portal , wayland , gnome @@ -17,11 +18,11 @@ stdenv.mkDerivation rec { pname = "xdg-desktop-portal-gnome"; - version = "41.1"; + version = "42.0.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "u6FEGZ5+1LlJCyScGvZFqGnWKZMmXerDjyGb8EL//fI="; + sha256 = "3+i1JFDzKDj5+eiY6Vqo36JwXOEtQ4MFVXwSi5zg4uY="; }; nativeBuildInputs = [ @@ -37,6 +38,7 @@ stdenv.mkDerivation rec { gsettings-desktop-schemas # settings exposed by settings portal gtk4 libadwaita + gnome-desktop xdg-desktop-portal wayland # required by GTK 4 ]; diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix index c54cdeca6c35f..13a16f111ea88 100644 --- a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix @@ -7,6 +7,7 @@ , xdg-desktop-portal , gtk3 , gnome +, gnome-desktop , glib , wrapGAppsHook , gsettings-desktop-schemas @@ -36,7 +37,7 @@ stdenv.mkDerivation rec { glib gsettings-desktop-schemas # settings exposed by settings portal gtk3 - gnome.gnome-desktop + gnome-desktop gnome.gnome-settings-daemon # schemas needed for settings api (mostly useless now that fonts were moved to g-d-s) ]; diff --git a/pkgs/development/misc/yelp-tools/default.nix b/pkgs/development/misc/yelp-tools/default.nix index d6864b80f9ed0..a58891bc333bb 100644 --- a/pkgs/development/misc/yelp-tools/default.nix +++ b/pkgs/development/misc/yelp-tools/default.nix @@ -13,13 +13,13 @@ python3.pkgs.buildPythonApplication rec { pname = "yelp-tools"; - version = "41.0"; + version = "42.0"; format = "other"; src = fetchurl { url = "mirror://gnome/sources/yelp-tools/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "N/GswCvL5ooxuG4HwSmoOb0yduZW3Inrf8CpJ0bv8nI="; + sha256 = "LNQwY/+nJi3xXdjTeao+o5mdQmYfB1Y/SALaoRSfffQ="; }; nativeBuildInputs = [ diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix index aeddf457f48d4..8744407fb96d8 100644 --- a/pkgs/development/tools/build-managers/meson/default.nix +++ b/pkgs/development/tools/build-managers/meson/default.nix @@ -5,6 +5,7 @@ , pkg-config , python3 , substituteAll +, withDarwinFrameworksGtkDocPatch ? false }: python3.pkgs.buildPythonApplication rec { @@ -61,6 +62,10 @@ python3.pkgs.buildPythonApplication rec { # Meson tries to update ld.so.cache which breaks when the target architecture # differs from the build host's. ./do-not-update-ldconfig-cache.patch + ] ++ lib.optionals withDarwinFrameworksGtkDocPatch [ + # Fix building gtkdoc for GLib + # https://github.com/mesonbuild/meson/pull/10186 + ./fix-gtkdoc-when-using-multiple-apple-frameworks.patch ]; setupHook = ./setup-hook.sh; diff --git a/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch b/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch new file mode 100644 index 0000000000000..eb6d9718bcb21 --- /dev/null +++ b/pkgs/development/tools/build-managers/meson/fix-gtkdoc-when-using-multiple-apple-frameworks.patch @@ -0,0 +1,176 @@ +From 0a008a6c7ecee19f35c8b7ab17b1470d0d1a8a15 Mon Sep 17 00:00:00 2001 +From: Jan Tojnar <jtojnar@gmail.com> +Date: Sat, 26 Mar 2022 02:26:27 +0100 +Subject: [PATCH] gnome: Fix gtkdoc when using multiple Apple frameworks + +The `-framework Foundation -framework CoreFoundation` ended up +de-duplicated by OrderedSet into `-framework Foundation CoreFoundation`. + +Picked from https://github.com/mesonbuild/meson/pull/10186 + +Also pick https://github.com/mesonbuild/meson/commit/68e684d51f1e469e0d9f4b499ffda15146cad98a when resolving conflict. + +diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py +index 7113f28d2..d3269b53f 100644 +--- a/mesonbuild/modules/gnome.py ++++ b/mesonbuild/modules/gnome.py +@@ -384,13 +384,14 @@ class GnomeModule(ExtensionModule): + def _get_link_args(self, state, lib, depends, include_rpath=False, + use_gir_args=False): + link_command = [] ++ new_depends = list(depends) + # Construct link args + if isinstance(lib, build.SharedLibrary): + libdir = os.path.join(state.environment.get_build_dir(), state.backend.get_target_dir(lib)) + link_command.append('-L' + libdir) + if include_rpath: + link_command.append('-Wl,-rpath,' + libdir) +- depends.append(lib) ++ new_depends.append(lib) + # Needed for the following binutils bug: + # https://github.com/mesonbuild/meson/issues/1911 + # However, g-ir-scanner does not understand -Wl,-rpath +@@ -404,18 +405,24 @@ class GnomeModule(ExtensionModule): + link_command.append('--extra-library=' + lib.name) + else: + link_command.append('-l' + lib.name) +- return link_command +- +- def _get_dependencies_flags(self, deps, state, depends, include_rpath=False, +- use_gir_args=False, separate_nodedup=False): +- cflags = OrderedSet() +- internal_ldflags = OrderedSet() +- external_ldflags = OrderedSet() ++ return link_command, new_depends ++ ++ def _get_dependencies_flags_raw( ++ self, deps, ++ state, ++ depends, ++ include_rpath: bool = False, ++ use_gir_args: bool = False, ++ ) -> T.Tuple[OrderedSet[str], OrderedSet[T.Union[str, T.Tuple[str, str]]], OrderedSet[T.Union[str, T.Tuple[str, str]]], OrderedSet[str], ++ T.List]: ++ cflags: OrderedSet[str] = OrderedSet() + # External linker flags that can't be de-duped reliably because they +- # require two args in order, such as -framework AVFoundation +- external_ldflags_nodedup = [] +- gi_includes = OrderedSet() ++ # require two args in order, such as -framework AVFoundation will be stored as a tuple. ++ internal_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() ++ external_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() ++ gi_includes: OrderedSet[str] = OrderedSet() + deps = mesonlib.listify(deps) ++ depends = list(depends) + + for dep in deps: + if isinstance(dep, Dependency): +@@ -427,21 +434,20 @@ class GnomeModule(ExtensionModule): + cflags.update(state.get_include_args(dep.include_directories)) + for lib in dep.libraries: + if isinstance(lib, build.SharedLibrary): +- internal_ldflags.update(self._get_link_args(state, lib, depends, include_rpath)) +- libdepflags = self._get_dependencies_flags(lib.get_external_deps(), state, depends, include_rpath, +- use_gir_args, True) ++ _ld, depends = self._get_link_args(state, lib, depends, include_rpath) ++ internal_ldflags.update(_ld) ++ libdepflags = self._get_dependencies_flags_raw(lib.get_external_deps(), state, depends, include_rpath, ++ use_gir_args) + cflags.update(libdepflags[0]) + internal_ldflags.update(libdepflags[1]) + external_ldflags.update(libdepflags[2]) +- external_ldflags_nodedup += libdepflags[3] +- gi_includes.update(libdepflags[4]) +- extdepflags = self._get_dependencies_flags(dep.ext_deps, state, depends, include_rpath, +- use_gir_args, True) ++ gi_includes.update(libdepflags[3]) ++ extdepflags = self._get_dependencies_flags_raw(dep.ext_deps, state, depends, include_rpath, ++ use_gir_args) + cflags.update(extdepflags[0]) + internal_ldflags.update(extdepflags[1]) + external_ldflags.update(extdepflags[2]) +- external_ldflags_nodedup += extdepflags[3] +- gi_includes.update(extdepflags[4]) ++ gi_includes.update(extdepflags[3]) + for source in dep.sources: + if isinstance(source, GirTarget): + gi_includes.update([os.path.join(state.environment.get_build_dir(), +@@ -469,7 +475,7 @@ class GnomeModule(ExtensionModule): + # If it's a framework arg, slurp the framework name too + # to preserve the order of arguments + if lib == '-framework': +- external_ldflags_nodedup += [lib, next(ldflags)] ++ external_ldflags.update([(lib, next(ldflags))]) + else: + external_ldflags.update([lib]) + elif isinstance(dep, (build.StaticLibrary, build.SharedLibrary)): +@@ -480,21 +486,43 @@ class GnomeModule(ExtensionModule): + continue + + if use_gir_args and self._gir_has_option('--extra-library'): +- def fix_ldflags(ldflags): +- fixed_ldflags = OrderedSet() ++ def fix_ldflags(ldflags: T.Iterable[T.Union[str, T.Tuple[str, str]]]) -> OrderedSet[T.Union[str, T.Tuple[str, str]]]: ++ fixed_ldflags: OrderedSet[T.Union[str, T.Tuple[str, str]]] = OrderedSet() + for ldflag in ldflags: +- if ldflag.startswith("-l"): ++ if isinstance(ldflag, str) and ldflag.startswith("-l"): + ldflag = ldflag.replace('-l', '--extra-library=', 1) + fixed_ldflags.add(ldflag) + return fixed_ldflags + internal_ldflags = fix_ldflags(internal_ldflags) + external_ldflags = fix_ldflags(external_ldflags) +- if not separate_nodedup: +- external_ldflags.update(external_ldflags_nodedup) +- return cflags, internal_ldflags, external_ldflags, gi_includes +- else: +- return cflags, internal_ldflags, external_ldflags, external_ldflags_nodedup, gi_includes ++ return cflags, internal_ldflags, external_ldflags, gi_includes, depends ++ ++ def _get_dependencies_flags( ++ self, deps, ++ state, ++ depends, ++ include_rpath: bool = False, ++ use_gir_args: bool = False, ++ ) -> T.Tuple[OrderedSet[str], T.List[str], T.List[str], OrderedSet[str], ++ T.List]: ++ ++ cflags, internal_ldflags_raw, external_ldflags_raw, gi_includes, depends = self._get_dependencies_flags_raw(deps, state, depends, include_rpath, use_gir_args) ++ internal_ldflags: T.List[str] = [] ++ external_ldflags: T.List[str] = [] ++ ++ # Extract non-deduplicable argument groups out of the tuples. ++ for ldflag in internal_ldflags_raw: ++ if isinstance(ldflag, str): ++ internal_ldflags.append(ldflag) ++ else: ++ internal_ldflags.extend(ldflag) ++ for ldflag in external_ldflags_raw: ++ if isinstance(ldflag, str): ++ external_ldflags.append(ldflag) ++ else: ++ external_ldflags.extend(ldflag) + ++ return cflags, internal_ldflags, external_ldflags, gi_includes, depends + def _unwrap_gir_target(self, girtarget, state): + if not isinstance(girtarget, (build.Executable, build.SharedLibrary, + build.StaticLibrary)): +@@ -875,7 +903,7 @@ class GnomeModule(ExtensionModule): + # ldflags will be misinterpreted by gir scanner (showing + # spurious dependencies) but building GStreamer fails if they + # are not used here. +- dep_cflags, dep_internal_ldflags, dep_external_ldflags, gi_includes = \ ++ dep_cflags, dep_internal_ldflags, dep_external_ldflags, gi_includes, depends = \ + self._get_dependencies_flags(deps, state, depends, use_gir_args=True) + scan_cflags = [] + scan_cflags += list(self._get_scanner_cflags(cflags)) +@@ -1170,7 +1198,7 @@ class GnomeModule(ExtensionModule): + deps = extract_as_list(kwargs, 'dependencies') + cflags = [] + cflags.extend(mesonlib.stringlistify(kwargs.pop('c_args', []))) +- deps_cflags, internal_ldflags, external_ldflags, gi_includes = \ ++ deps_cflags, internal_ldflags, external_ldflags, gi_includes, depends = \ + self._get_dependencies_flags(deps, state, depends, include_rpath=True) + inc_dirs = mesonlib.extract_as_list(kwargs, 'include_directories') + for incd in inc_dirs: diff --git a/pkgs/development/tools/documentation/gi-docgen/default.nix b/pkgs/development/tools/documentation/gi-docgen/default.nix index 05b7aac82c17a..85836f435cba5 100644 --- a/pkgs/development/tools/documentation/gi-docgen/default.nix +++ b/pkgs/development/tools/documentation/gi-docgen/default.nix @@ -1,6 +1,5 @@ { lib , fetchFromGitLab -, fetchpatch , meson , ninja , python3 @@ -8,7 +7,7 @@ python3.pkgs.buildPythonApplication rec { pname = "gi-docgen"; - version = "2021.8"; + version = "2022.1"; format = "other"; @@ -17,18 +16,9 @@ python3.pkgs.buildPythonApplication rec { owner = "GNOME"; repo = pname; rev = version; - sha256 = "Y1IdCH6bytxbKIj48IAw/3XUQhoqwPshvdj/d1hRS3o="; + sha256 = "35pL/2TQRVgPfAcfOGCLlSP1LIh4r95mFC+UoXQEEHo="; }; - patches = [ - # Fix building docs of some packages (e.g. gnome-builder) - # https://gitlab.gnome.org/GNOME/gi-docgen/-/issues/111 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gi-docgen/-/commit/72f3c5dbe27aabb5f7a376afda23f3dfc3c2e212.patch"; - sha256 = "iVXc3idmcjmFVZQdE2QX2V53YZ79lqxZid9nWdxAZ/Q="; - }) - ]; - depsBuildBuild = [ python3 ]; diff --git a/pkgs/development/tools/profiling/sysprof/capture.nix b/pkgs/development/tools/profiling/sysprof/capture.nix index 2d33dedbdd25a..e6690fc0c68b6 100644 --- a/pkgs/development/tools/profiling/sysprof/capture.nix +++ b/pkgs/development/tools/profiling/sysprof/capture.nix @@ -17,6 +17,7 @@ stdenv.mkDerivation rec { mesonFlags = [ "-Dwith_sysprofd=none" "-Dlibsysprof=false" + "-Dlibunwind=false" "-Dhelp=false" "-Denable_tools=false" "-Denable_tests=false" diff --git a/pkgs/development/tools/profiling/sysprof/default.nix b/pkgs/development/tools/profiling/sysprof/default.nix index 319212da77050..e21e71907869b 100644 --- a/pkgs/development/tools/profiling/sysprof/default.nix +++ b/pkgs/development/tools/profiling/sysprof/default.nix @@ -8,8 +8,10 @@ , json-glib , itstool , libdazzle +, libunwind , libxml2 -, meson, ninja +, meson +, ninja , pango , pkg-config , polkit @@ -21,13 +23,13 @@ stdenv.mkDerivation rec { pname = "sysprof"; - version = "3.42.1"; + version = "3.44.0"; outputs = [ "out" "lib" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "F5a4FATudf0eus9URkrXr/6/YvKFHu9STZ+OrAxKIAE="; + sha256 = "q12fW3GXOzCI1Yob/fHcI8OaAvX85OXpxz4DSxeLAFs="; }; nativeBuildInputs = [ @@ -51,6 +53,7 @@ stdenv.mkDerivation rec { polkit systemd libdazzle + libunwind ]; mesonFlags = [ diff --git a/pkgs/tools/bluetooth/blueberry/default.nix b/pkgs/tools/bluetooth/blueberry/default.nix index 5616560108cfd..bbc3babbd1321 100644 --- a/pkgs/tools/bluetooth/blueberry/default.nix +++ b/pkgs/tools/bluetooth/blueberry/default.nix @@ -3,15 +3,18 @@ , fetchFromGitHub , bluez-tools , cinnamon -, gnome , gobject-introspection , intltool , pavucontrol , python3Packages , util-linux , wrapGAppsHook +, callPackage }: +let + gnome-bluetooth = callPackage ./gnome-bluetooth.nix {}; +in stdenv.mkDerivation rec { pname = "blueberry"; version = "1.4.7"; @@ -32,7 +35,7 @@ stdenv.mkDerivation rec { buildInputs = [ bluez-tools cinnamon.xapps - gnome.gnome-bluetooth + gnome-bluetooth python3Packages.python util-linux ]; diff --git a/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix b/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix new file mode 100644 index 0000000000000..cf0028cf833d6 --- /dev/null +++ b/pkgs/tools/bluetooth/blueberry/gnome-bluetooth.nix @@ -0,0 +1,96 @@ +{ lib +, stdenv +, fetchurl +, fetchpatch +, gnome +, meson +, ninja +, pkg-config +, gtk3 +, gettext +, glib +, udev +, itstool +, libxml2 +, wrapGAppsHook +, libnotify +, libcanberra-gtk3 +, gobject-introspection +, gtk-doc +, docbook-xsl-nons +, docbook_xml_dtd_43 +, python3 +, gsettings-desktop-schemas +}: + +stdenv.mkDerivation rec { + pname = "gnome-bluetooth"; + version = "3.34.5"; + + # TODO: split out "lib" + outputs = [ "out" "dev" "devdoc" "man" ]; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1a9ynlwwkb3wpg293ym517vmrkk63y809mmcv9a21k5yr199x53c"; + }; + + patches = [ + # Fix build with meson 0.61. + # sendto/meson.build:24:5: ERROR: Function does not take positional arguments. + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gnome-bluetooth/-/commit/755fd758f866d3a3f7ca482942beee749f13a91e.patch"; + sha256 = "sha256-N0MJ0pYO411o2CTNZHWmEoG2m5TGUjR6YW6HSXHTR/A="; + }) + ]; + + nativeBuildInputs = [ + meson + ninja + gettext + itstool + pkg-config + libxml2 + wrapGAppsHook + gobject-introspection + gtk-doc + docbook-xsl-nons + docbook_xml_dtd_43 + python3 + ]; + + buildInputs = [ + glib + gtk3 + udev + libnotify + libcanberra-gtk3 + gnome.adwaita-icon-theme + gsettings-desktop-schemas + ]; + + mesonFlags = [ + "-Dicon_update=false" + "-Dgtk_doc=true" + ]; + + postPatch = '' + chmod +x meson_post_install.py # patchShebangs requires executable file + patchShebangs meson_post_install.py + ''; + + passthru = { + updateScript = gnome.updateScript { + packageName = pname; + attrPath = "gnome.${pname}"; + }; + }; + + meta = with lib; { + homepage = "https://help.gnome.org/users/gnome-bluetooth/stable/index.html.en"; + description = "Application that let you manage Bluetooth in the GNOME destkop"; + maintainers = teams.gnome.members; + license = licenses.gpl2Plus; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/networking/networkmanager/applet/default.nix b/pkgs/tools/networking/networkmanager/applet/default.nix index fbb56f4c5c903..cca96577ad4c9 100644 --- a/pkgs/tools/networking/networkmanager/applet/default.nix +++ b/pkgs/tools/networking/networkmanager/applet/default.nix @@ -25,11 +25,11 @@ stdenv.mkDerivation rec { pname = "network-manager-applet"; - version = "1.24.0"; + version = "1.26.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-ufS8pdA1Jxjge3OF+xlam7yP1oa3lZt0E3hU1SqrnFg="; + sha256 = "sha256-aWEbKQZK29Vzlf4+Uanr3h6nlGFfd2kARTorvj2M3f0="; }; mesonFlags = [ diff --git a/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix b/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix index f97bac13cf7f1..e9608741816fc 100644 --- a/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix +++ b/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , substituteAll , openfortivpn @@ -7,23 +8,24 @@ , file , glib , gtk3 +, gtk4 , networkmanager , ppp , libsecret , withGnome ? true , gnome -, fetchpatch , libnma +, libnma-gtk4 }: stdenv.mkDerivation rec { pname = "NetworkManager-fortisslvpn"; - version = "1.2.10"; + version = "1.4.0"; name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1sw66cxgs4in4cjp1cm95c5ijsk8xbbmq4ykg2jwqwgz6cf2lr3s"; + sha256 = "sFXiY0m1FrI1hXmKs+9XtDawFIAOkqiscyz8jnbF2vo="; }; patches = [ @@ -31,12 +33,6 @@ stdenv.mkDerivation rec { 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"; - }) ]; nativeBuildInputs = [ @@ -52,12 +48,15 @@ stdenv.mkDerivation rec { glib ] ++ lib.optionals withGnome [ gtk3 + gtk4 libsecret libnma + libnma-gtk4 ]; configureFlags = [ "--with-gnome=${if withGnome then "yes" else "no"}" + "--with-gtk4=${if withGnome then "yes" else "no"}" "--localstatedir=/var" "--enable-absolute-paths" ]; diff --git a/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch b/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch index a1241b6738c23..9176a3bf042bb 100644 --- a/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch +++ b/pkgs/tools/networking/networkmanager/fortisslvpn/fix-paths.patch @@ -1,11 +1,12 @@ +diff --git a/src/nm-fortisslvpn-service.c b/src/nm-fortisslvpn-service.c +index 6c340d0..995c981 100644 --- a/src/nm-fortisslvpn-service.c +++ b/src/nm-fortisslvpn-service.c -@@ -387,7 +387,7 @@ +@@ -182,6 +182,7 @@ nm_find_openfortivpn (void) { static const char *openfortivpn_binary_paths[] = { -- "/bin/openfortivpn", + "@openfortivpn@/bin/openfortivpn", - "/usr/bin/openfortivpn", "/usr/local/bin/openfortivpn", + "/usr/bin/openfortivpn", NULL diff --git a/pkgs/tools/networking/networkmanager/libnma/default.nix b/pkgs/tools/networking/networkmanager/libnma/default.nix index c039b47d169ce..63642cf60e758 100644 --- a/pkgs/tools/networking/networkmanager/libnma/default.nix +++ b/pkgs/tools/networking/networkmanager/libnma/default.nix @@ -26,13 +26,13 @@ stdenv.mkDerivation rec { pname = "libnma"; - version = "1.8.34"; + version = "1.8.36"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "9eLnOOD8p/KlSQeSkLLYAXUR1IWoMiDDbfOAo7R1MwQ="; + sha256 = "2ZQV9M3/ZCIwAZ7FzdKx+/HsVQqK6GUhn3VIKmQre3o="; }; patches = [ diff --git a/pkgs/tools/networking/networkmanager/openconnect/default.nix b/pkgs/tools/networking/networkmanager/openconnect/default.nix index c03a698514a8f..e0199784b2bc6 100644 --- a/pkgs/tools/networking/networkmanager/openconnect/default.nix +++ b/pkgs/tools/networking/networkmanager/openconnect/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl , substituteAll , glib @@ -12,21 +13,21 @@ , libsecret , file , gtk3 +, libnma +, libnma-gtk4 +, gtk4 , withGnome ? true , gnome , kmod -, fetchpatch }: -let +stdenv.mkDerivation rec { pname = "NetworkManager-openconnect"; - version = "1.2.6"; -in stdenv.mkDerivation { - name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; + version = "1.2.8"; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0nlp290nkawc4wqm978n4vhzg3xdqi8kpjjx19l855vab41rh44m"; + url = "mirror://gnome/sources/NetworkManager-openconnect/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "Xe2qeF2C2OI53dCCv6xSUMaR6WRGS+GAe2gnJjYzzcw="; }; patches = [ @@ -34,12 +35,6 @@ 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 = [ @@ -49,6 +44,9 @@ in stdenv.mkDerivation { networkmanager ] ++ lib.optionals withGnome [ gtk3 + libnma + libnma-gtk4 + gtk4 gcr libsecret ]; @@ -61,8 +59,8 @@ in stdenv.mkDerivation { configureFlags = [ "--with-gnome=${if withGnome then "yes" else "no"}" + "--with-gtk4=${if withGnome then "yes" else "no"}" "--enable-absolute-paths" - "--without-libnm-glib" ]; passthru = { diff --git a/pkgs/tools/networking/networkmanager/openvpn/default.nix b/pkgs/tools/networking/networkmanager/openvpn/default.nix index 20a90fffed257..92391e0374b4f 100644 --- a/pkgs/tools/networking/networkmanager/openvpn/default.nix +++ b/pkgs/tools/networking/networkmanager/openvpn/default.nix @@ -1,15 +1,31 @@ -{ lib, stdenv, fetchurl, substituteAll, openvpn, intltool, libxml2, pkg-config, file, networkmanager, libsecret -, glib, gtk3, withGnome ? true, gnome, kmod, libnma }: +{ stdenv +, lib +, fetchurl +, substituteAll +, openvpn +, intltool +, libxml2 +, pkg-config +, file +, networkmanager +, libsecret +, glib +, gtk3 +, gtk4 +, withGnome ? true +, gnome +, kmod +, libnma +, libnma-gtk4 +}: -let +stdenv.mkDerivation rec { pname = "NetworkManager-openvpn"; - version = "1.8.16"; -in stdenv.mkDerivation { - name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; + version = "1.8.18"; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "iSDeCceuXx9SDIP4REVduPrsMUJzUCaP4t2VuGD5H7U="; + url = "mirror://gnome/sources/NetworkManager-openvpn/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "U9+wrPZEeK3HKAdPFi9i5gv/YqYFvYl+uIsmfnBXkno="; }; patches = [ @@ -19,13 +35,28 @@ in stdenv.mkDerivation { }) ]; - buildInputs = [ openvpn networkmanager glib ] - ++ lib.optionals withGnome [ gtk3 libsecret libnma ]; + nativeBuildInputs = [ + intltool + pkg-config + file + libxml2 + ]; - nativeBuildInputs = [ intltool pkg-config file libxml2 ]; + buildInputs = [ + openvpn + networkmanager + glib + ] ++ lib.optionals withGnome [ + gtk3 + gtk4 + libsecret + libnma + libnma-gtk4 + ]; configureFlags = [ "--with-gnome=${if withGnome then "yes" else "no"}" + "--with-gtk4=${if withGnome then "yes" else "no"}" "--localstatedir=/" # needed for the management socket under /run/NetworkManager "--enable-absolute-paths" ]; diff --git a/pkgs/tools/networking/networkmanager/vpnc/default.nix b/pkgs/tools/networking/networkmanager/vpnc/default.nix index 70e7104696ee3..d81dbf0881652 100644 --- a/pkgs/tools/networking/networkmanager/vpnc/default.nix +++ b/pkgs/tools/networking/networkmanager/vpnc/default.nix @@ -1,14 +1,30 @@ -{ lib, stdenv, fetchurl, substituteAll, vpnc, intltool, pkg-config, networkmanager, libsecret -, gtk3, withGnome ? true, gnome, glib, kmod, file, fetchpatch, libnma }: -let +{ stdenv +, lib +, fetchurl +, substituteAll +, vpnc +, intltool +, pkg-config +, networkmanager +, libsecret +, gtk3 +, gtk4 +, withGnome ? true +, gnome +, glib +, kmod +, file +, libnma +, libnma-gtk4 +}: + +stdenv.mkDerivation rec { pname = "NetworkManager-vpnc"; - version = "1.2.6"; -in stdenv.mkDerivation { - name = "${pname}${if withGnome then "-gnome" else ""}-${version}"; + version = "1.2.8"; src = fetchurl { - url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1js5lwcsqws4klgypfxl4ikmakv7v7xgddij1fj6b0y0qicx0kyy"; + url = "mirror://gnome/sources/NetworkManager-vpnc/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "1l4xqlPI/cP95++EpNqpeaYFwj/THO/2R79+qqma+8w="; }; patches = [ @@ -16,21 +32,29 @@ 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 glib ] - ++ lib.optionals withGnome [ gtk3 libsecret libnma ]; + nativeBuildInputs = [ + intltool + pkg-config + file + ]; - nativeBuildInputs = [ intltool pkg-config file ]; + buildInputs = [ + vpnc + networkmanager + glib + ] ++ lib.optionals withGnome [ + gtk3 + gtk4 + libsecret + libnma + libnma-gtk4 + ]; configureFlags = [ - "--without-libnm-glib" "--with-gnome=${if withGnome then "yes" else "no"}" + "--with-gtk4=${if withGnome then "yes" else "no"}" "--enable-absolute-paths" ]; diff --git a/pkgs/tools/text/gtranslator/default.nix b/pkgs/tools/text/gtranslator/default.nix index 5bc99724e3faf..d5e7922831ea2 100644 --- a/pkgs/tools/text/gtranslator/default.nix +++ b/pkgs/tools/text/gtranslator/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ stdenv +, lib , fetchurl +, fetchpatch , meson , ninja , pkg-config @@ -8,7 +10,7 @@ , python3 , wrapGAppsHook , libxml2 -, libgda +, libgda6 , libhandy , libsoup , json-glib @@ -23,13 +25,22 @@ stdenv.mkDerivation rec { pname = "gtranslator"; - version = "40.0"; + version = "41.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "0d48nc11z0m91scy21ah56ysxns82zvswx8lglvlkig1vqvblgpc"; + sha256 = "E28R/gOhlJkMQ6/jOL0eoK0U5+H26Gjlv3xbUsTF5eE="; }; + patches = [ + # Fix build with meson 0.61 + # data/meson.build:15:5: ERROR: Function does not take positional arguments. + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/gtranslator/-/commit/7ac572cc8c8c37ca3826ecf0d395edd3c38e8e22.patch"; + sha256 = "aRg6dYweftV8F7FXykO7m0G+p4SLTFnhTcZx72UCMDE="; + }) + ]; + nativeBuildInputs = [ meson ninja @@ -46,7 +57,7 @@ stdenv.mkDerivation rec { gtk3 libdazzle gtksourceview4 - libgda + libgda6 libhandy libsoup json-glib diff --git a/pkgs/tools/typesetting/pdf2djvu/default.nix b/pkgs/tools/typesetting/pdf2djvu/default.nix index 33f8481bc1a0b..6921c64d85fa5 100644 --- a/pkgs/tools/typesetting/pdf2djvu/default.nix +++ b/pkgs/tools/typesetting/pdf2djvu/default.nix @@ -16,22 +16,37 @@ }: stdenv.mkDerivation rec { - version = "0.9.17.1"; + version = "0.9.18.2"; pname = "pdf2djvu"; src = fetchFromGitHub { owner = "jwilk"; repo = "pdf2djvu"; rev = version; - sha256 = "1igabfy3fd7qndihmkfk9incc15pjxpxh2cn5pfw5fxfwrpjrarn"; + sha256 = "s6n7nDO15DZSJ1EOPoNvjdFv/QtOoGiUa2b/k3kzWe8="; }; patches = [ - # Not included in 0.9.17.1, but will be in the next version. + # Fix build with Poppler 22.03. (fetchpatch { - name = "no-poppler-splash.patch"; - url = "https://github.com/jwilk/pdf2djvu/commit/2ec7eee57a47bbfd296badaa03dc20bf71b50201.patch"; - sha256 = "03kap7k2j29r16qgl781cxpswzg3r2yn513cqycgl0vax2xj3gly"; + url = "https://github.com/jwilk/pdf2djvu/commit/e170ad557d5f13daeeac047dfaa79347bbe5062f.patch"; + sha256 = "OPK2UWVs+E2uOEaxPtLWmVL28yCxaeJKscY9ziAbS7E="; + }) + (fetchpatch { + url = "https://github.com/jwilk/pdf2djvu/commit/956fedc7e0831126b9006efedad5519c14201c52.patch"; + sha256 = "JF1xvvL2WyMu6GjdrPLlRC6eC6vGLbVurQcNy3AOOXA="; + }) + (fetchpatch { + url = "https://github.com/jwilk/pdf2djvu/commit/dca43e8182174bc04e107eaefcafcfdfdf9bcd61.patch"; + sha256 = "0JcfDaVZpuv6VfUJ2HuxRqgntZ/t8AzU0RG/E83BWGY="; + }) + (fetchpatch { + url = "https://github.com/jwilk/pdf2djvu/commit/81b635e014ebd0240a8719cc39b6a1b759cc6a98.patch"; + sha256 = "LBmT4eflLd23X7gg7IbqGe3PfTGldEGFLEKImV4nbB0="; + postFetch = '' + # The file was renamed after the release. + sed -i "s/main.cc/pdf2djvu.cc/g" "$out" + ''; }) ]; @@ -62,6 +77,10 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + # Required by Poppler + # https://github.com/jwilk/pdf2djvu/commit/373e065faf2f0d868a3700788d20a96e9528bb12 + CXXFLAGS = "-std=c++17"; + meta = with lib; { description = "Creates djvu files from PDF files"; homepage = "https://jwilk.net/software/pdf2djvu"; diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 7e5c164eef0f4..174d2c721993a 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -554,6 +554,7 @@ mapAliases ({ keybase-go = throw "'keybase-go' has been renamed to/replaced by 'keybase'"; # Converted to throw 2022-02-22 keymon = throw "keymon has been removed from nixpkgs, as it's abandoned and archived"; # Added 2019-12-10 keysmith = libsForQt5.plasmaMobileGear.keysmith; # Added 2021-07-14 + kgx = gnome-console; # Added 2022-02-19 kibana7-oss = throw "kibana7-oss has been removed, as the distribution is no longer provided by upstream. https://github.com/NixOS/nixpkgs/pull/114456"; # Added 2021-06-09 kicad-with-packages3d = kicad; # Added 2019-11-25 kindlegen = throw "kindlegen has been removed from nixpkgs, as it's abandoned and no longer available for download"; # Added 2021-03-09 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 75b6c9ed0ffa3..0622e112202a8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6102,6 +6102,8 @@ with pkgs; gnome-builder = callPackage ../applications/editors/gnome-builder { }; + gnome-desktop = callPackage ../development/libraries/gnome-desktop { }; + gnome-feeds = callPackage ../applications/networking/feedreaders/gnome-feeds {}; gnome-keysign = callPackage ../tools/security/gnome-keysign { }; @@ -7732,6 +7734,8 @@ with pkgs; librest = callPackage ../development/libraries/librest { }; + librest_1_0 = callPackage ../development/libraries/librest/1.0.nix { }; + inherit (callPackages ../development/libraries/libwebsockets { }) libwebsockets_3_1 libwebsockets_3_2 @@ -13613,6 +13617,7 @@ with pkgs; inherit (callPackage ../development/compilers/vala { }) vala_0_48 vala_0_54 + vala_0_56 vala; vyper = with python3Packages; toPythonApplication vyper; @@ -18149,6 +18154,7 @@ with pkgs; libgnome-keyring3 = gnome.libgnome-keyring; libgnome-games-support = callPackage ../development/libraries/libgnome-games-support { }; + libgnome-games-support_2_0 = callPackage ../development/libraries/libgnome-games-support/2.0.nix { }; libgnomekbd = callPackage ../development/libraries/libgnomekbd { }; @@ -20625,7 +20631,10 @@ with pkgs; vsqlite = callPackage ../development/libraries/vsqlite { }; - vte = callPackage ../development/libraries/vte { }; + vte = callPackage ../development/libraries/vte { + # Needs GCC ≥10 but aarch64 defaults to GCC 9. + stdenv = clangStdenv; + }; vte_290 = callPackage ../development/libraries/vte/2.90.nix { }; @@ -27418,7 +27427,6 @@ with pkgs; luppp = callPackage ../applications/audio/luppp { }; lutris-unwrapped = python3.pkgs.callPackage ../applications/misc/lutris { - inherit (gnome) gnome-desktop; wine = wineWowPackages.staging; }; lutris = callPackage ../applications/misc/lutris/fhsenv.nix { @@ -33513,7 +33521,7 @@ with pkgs; keynav = callPackage ../tools/X11/keynav { }; - kgx = callPackage ../applications/terminal-emulators/kgx { }; + gnome-console = callPackage ../applications/terminal-emulators/gnome-console { }; kmon = callPackage ../tools/system/kmon { }; |