diff options
Diffstat (limited to 'nixpkgs/pkgs/desktops/gnome/core')
41 files changed, 393 insertions, 205 deletions
diff --git a/nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix b/nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix index addf2f1f92ba..5d287f4e6fd9 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix @@ -1,8 +1,9 @@ { lib , stdenv , fetchurl +, meson +, ninja , pkg-config -, autoreconfHook , gnome , gtk3 , gdk-pixbuf @@ -12,16 +13,17 @@ stdenv.mkDerivation rec { pname = "adwaita-icon-theme"; - version = "44.0"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/adwaita-icon-theme/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "SInFYBu/7NJdgLo0IgnQqTbc9pHuVr1uykzeNh8aZkw="; + sha256 = "JEK/sG9ObMlb9uJoL9/5j6Xt3GiHUbnWIVxiPLTkL/E="; }; nativeBuildInputs = [ + meson + ninja pkg-config - autoreconfHook gtk3 ]; diff --git a/nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix b/nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix index d27c4947c33b..e813f5f591ab 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/baobab/default.nix @@ -18,11 +18,11 @@ stdenv.mkDerivation rec { pname = "baobab"; - version = "44.0"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "hFtju5Ej10VoyBJsVxu8dCc0g/+SAXmizx7du++hv8A="; + sha256 = "p9LPMIpsg57gsL8HT49f1g1iri8GSpSzxhDWVgt1joY="; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/dconf-editor/default.nix b/nixpkgs/pkgs/desktops/gnome/core/dconf-editor/default.nix index d6da42ab5508..4da661748c95 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/dconf-editor/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/dconf-editor/default.nix @@ -2,6 +2,7 @@ , stdenv , fetchurl , fetchpatch +, desktop-file-utils , meson , ninja , vala @@ -11,7 +12,6 @@ , gtk3 , libhandy , gnome -, python3 , dconf , libxml2 , gettext @@ -22,20 +22,27 @@ stdenv.mkDerivation rec { pname = "dconf-editor"; - version = "43.0"; + version = "45.0.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-k1o8Lddswqk81a7ppU05R/sRHrOW9LY9xfC6j40JkTY="; + sha256 = "sha256-EYApdnju2uYhfMUUomOMGH0vHR7ycgy5B5t0DEKZQd0="; }; patches = [ + # Fix crash with GSETTINGS_SCHEMA_DIR env var. + (fetchpatch { + url = "https://gitlab.gnome.org/GNOME/dconf-editor/-/commit/baf183737d459dcde065c9f8f6fe5be7ed874de6.patch"; + hash = "sha256-Vp0qjJChDr6IarUD+tZPLJhdI8v8r6EzWNfqFSnGvqQ="; + }) + # Look for compiled schemas in NIX_GSETTINGS_OVERRIDES_DIR # environment variable, to match what we patched GLib to do. ./schema-override-variable.patch ]; nativeBuildInputs = [ + desktop-file-utils meson ninja vala @@ -46,7 +53,6 @@ stdenv.mkDerivation rec { docbook-xsl-nons libxml2 gobject-introspection - python3 ]; buildInputs = [ @@ -56,11 +62,6 @@ stdenv.mkDerivation rec { dconf ]; - postPatch = '' - chmod +x meson_post_install.py - patchShebangs meson_post_install.py - ''; - passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/nixpkgs/pkgs/desktops/gnome/core/dconf-editor/schema-override-variable.patch b/nixpkgs/pkgs/desktops/gnome/core/dconf-editor/schema-override-variable.patch index feaa604e5b67..06896d1aa4ee 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/dconf-editor/schema-override-variable.patch +++ b/nixpkgs/pkgs/desktops/gnome/core/dconf-editor/schema-override-variable.patch @@ -10,5 +10,5 @@ index 27b2b17a..87f7ba86 100644 + if (nix_var_schema_dir != null) + source = try_prepend_dir (source, (!) nix_var_schema_dir); string? var_schema_dir = GLib.Environment.get_variable ("GSETTINGS_SCHEMA_DIR"); - if (var_schema_dir != null) - source = try_prepend_dir (source, (!) var_schema_dir); + if (var_schema_dir != null) { + string[] extra_schema_dirs = ((!) var_schema_dir).split (Path.SEARCHPATH_SEPARATOR_S); diff --git a/nixpkgs/pkgs/desktops/gnome/core/eog/default.nix b/nixpkgs/pkgs/desktops/gnome/core/eog/default.nix index d52dd04a4a19..1641fa5bbf60 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/eog/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/eog/default.nix @@ -31,13 +31,13 @@ stdenv.mkDerivation rec { pname = "eog"; - version = "44.3"; + version = "45.1"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-1rLXD0tDL/jPSUyPkCmyYh0I54F5ODF9ZAY65sTanYw="; + sha256 = "sha256-wX+GcExyKzbAGhaPHlFDm+C7J58sZkb0i2bp0POiTNI="; }; patches = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix b/nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix index 8e396cc3f95d..900b02bc3df6 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/epiphany/default.nix @@ -36,11 +36,11 @@ stdenv.mkDerivation rec { pname = "epiphany"; - version = "44.6"; + version = "45.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "UzXdVzWB22HhJthU3BauUZZXpbh5B4mkfSXkPhfNOkM="; + sha256 = "fJlO807NYOkV3jMe4SPAiTj5YjzvrabVC5njycWtgTU="; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix b/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix index 8312a4ca1726..a2959626c837 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/evince/default.nix @@ -28,7 +28,6 @@ , gobject-introspection , yelp-tools , gspell -, adwaita-icon-theme , gsettings-desktop-schemas , gnome-desktop , dbus @@ -43,13 +42,13 @@ stdenv.mkDerivation rec { pname = "evince"; - version = "44.3"; + version = "45.0"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/evince/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "O4uhWBpHpun1f2tqoI8PtnVJxgEhqiTjEUDpOUe4NiI="; + sha256 = "0YZH1Cdcvd8NMoF7HQTjBzQqhb6RTsTa0tgIKq+KpKg="; }; depsBuildBuild = [ @@ -71,7 +70,6 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - adwaita-icon-theme atk dbus # only needed to find the service directory djvulibre diff --git a/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix b/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix index a604efb9cc59..f372f688eabc 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/default.nix @@ -23,6 +23,7 @@ , gperf , wrapGAppsHook , glib-networking +, gsettings-desktop-schemas , pcre , vala , cmake @@ -50,13 +51,13 @@ stdenv.mkDerivation rec { pname = "evolution-data-server"; - version = "3.48.4"; + version = "3.50.1"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "mX4/k7F++wr/zAF77oeAul+iwAnjZVG7yRoIrlUtbWA="; + sha256 = "kfT/w4objS/ok5g0RJrFQcC/9KObRE7cKpUpNEoo6Yo="; }; patches = [ @@ -64,11 +65,16 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; inherit tzdata; }) + + # Avoid using wrapper function, which the hardcode gsettings + # patch generator cannot handle. + ./drop-tentative-settings-constructor.patch ]; prePatch = '' substitute ${./hardcode-gsettings.patch} hardcode-gsettings.patch \ - --subst-var-by EDS ${glib.makeSchemaPath "$out" "${pname}-${version}"} + --subst-var-by EDS ${glib.makeSchemaPath "$out" "${pname}-${version}"} \ + --subst-var-by GDS ${glib.getSchemaPath gsettings-desktop-schemas} patches="$patches $PWD/hardcode-gsettings.patch" ''; @@ -86,6 +92,7 @@ stdenv.mkDerivation rec { buildInputs = [ glib + libsecret libsoup_3 gnome-online-accounts p11-kit @@ -116,7 +123,6 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ db - libsecret nss nspr libical @@ -158,9 +164,9 @@ stdenv.mkDerivation rec { "org.gnome.evolution-data-server.addressbook" = "EDS"; "org.gnome.evolution-data-server.calendar" = "EDS"; "org.gnome.evolution-data-server" = "EDS"; - + "org.gnome.desktop.interface" = "GDS"; }; - inherit src; + inherit src patches; }; updateScript = let diff --git a/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/drop-tentative-settings-constructor.patch b/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/drop-tentative-settings-constructor.patch new file mode 100644 index 000000000000..a86d1966eb6b --- /dev/null +++ b/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/drop-tentative-settings-constructor.patch @@ -0,0 +1,40 @@ +diff --git a/src/calendar/libecal/e-reminder-watcher.c b/src/calendar/libecal/e-reminder-watcher.c +index f1614f2..c01e8b2 100644 +--- a/src/calendar/libecal/e-reminder-watcher.c ++++ b/src/calendar/libecal/e-reminder-watcher.c +@@ -2609,26 +2609,6 @@ e_reminder_watcher_load_clock_format (EReminderWatcher *watcher) + g_free (clock_format); + } + +-static GSettings* +-e_reminder_watcher_load_settings_tentative (const gchar *schema_id) +-{ +- GSettings *settings; +- GSettingsSchemaSource *schema_source; +- GSettingsSchema *schema; +- +- schema_source = g_settings_schema_source_get_default (); +- schema = g_settings_schema_source_lookup (schema_source, schema_id, TRUE); +- +- if (schema == NULL) { +- return NULL; +- } +- +- settings = g_settings_new (schema_id); +- /* only unref after g_settings_new() to avoid needless realloc */ +- g_settings_schema_unref (schema); +- return settings; +-} +- + static void + e_reminder_watcher_init (EReminderWatcher *watcher) + { +@@ -2647,7 +2627,7 @@ e_reminder_watcher_init (EReminderWatcher *watcher) + watcher->priv = e_reminder_watcher_get_instance_private (watcher); + watcher->priv->cancellable = g_cancellable_new (); + watcher->priv->settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); +- watcher->priv->desktop_settings = e_reminder_watcher_load_settings_tentative ("org.gnome.desktop.interface"); ++ watcher->priv->desktop_settings = g_settings_new ("org.gnome.desktop.interface"); + if (watcher->priv->desktop_settings) { + g_signal_connect_object ( + watcher->priv->desktop_settings, diff --git a/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch b/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch index 15a42fe4e2a6..4857efc4c230 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch +++ b/nixpkgs/pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch @@ -128,10 +128,10 @@ index e85a56b..59d3fe2 100644 g_object_unref (settings); diff --git a/src/addressbook/libedata-book/e-book-meta-backend.c b/src/addressbook/libedata-book/e-book-meta-backend.c -index 4aaabee..dd6ce6d 100644 +index 63e1016..0492756 100644 --- a/src/addressbook/libedata-book/e-book-meta-backend.c +++ b/src/addressbook/libedata-book/e-book-meta-backend.c -@@ -143,7 +143,18 @@ ebmb_is_power_saver_enabled (void) +@@ -144,7 +144,18 @@ ebmb_is_power_saver_enabled (void) GSettings *settings; gboolean enabled = FALSE; @@ -175,15 +175,42 @@ index 42f3457..b4926af 100644 cbc->priv->notifyid = 0; cbc->priv->update_alarms_id = 0; cbc->priv->alarm_enabled = FALSE; +diff --git a/src/calendar/backends/file/e-cal-backend-file.c b/src/calendar/backends/file/e-cal-backend-file.c +index 2525856..7ecc1a8 100644 +--- a/src/calendar/backends/file/e-cal-backend-file.c ++++ b/src/calendar/backends/file/e-cal-backend-file.c +@@ -3682,7 +3682,20 @@ e_cal_backend_file_receive_objects (ECalBackendSync *backend, + if (is_declined) { + GSettings *settings; + +- settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); ++ { ++ g_autoptr(GSettingsSchemaSource) schema_source; ++ g_autoptr(GSettingsSchema) schema; ++ schema_source = g_settings_schema_source_new_from_directory("@EDS@", ++ g_settings_schema_source_get_default(), ++ TRUE, ++ NULL); ++ schema = g_settings_schema_source_lookup(schema_source, ++ "org.gnome.evolution-data-server.calendar", ++ FALSE); ++ settings = g_settings_new_full(schema, ++ NULL, ++ NULL); ++ } + can_delete = g_settings_get_boolean (settings, "delete-meeting-on-decline"); + g_clear_object (&settings); + } diff --git a/src/calendar/libecal/e-reminder-watcher.c b/src/calendar/libecal/e-reminder-watcher.c -index 5087de1..5c24b87 100644 +index c01e8b2..59fb4c4 100644 --- a/src/calendar/libecal/e-reminder-watcher.c +++ b/src/calendar/libecal/e-reminder-watcher.c -@@ -2578,7 +2578,19 @@ e_reminder_watcher_init (EReminderWatcher *watcher) +@@ -2626,8 +2626,33 @@ e_reminder_watcher_init (EReminderWatcher *watcher) watcher->priv = e_reminder_watcher_get_instance_private (watcher); watcher->priv->cancellable = g_cancellable_new (); - watcher->priv->settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); +- watcher->priv->desktop_settings = g_settings_new ("org.gnome.desktop.interface"); + { + g_autoptr(GSettingsSchemaSource) schema_source; + g_autoptr(GSettingsSchema) schema; @@ -197,11 +224,25 @@ index 5087de1..5c24b87 100644 + watcher->priv->settings = g_settings_new_full(schema, NULL, + NULL); + } - watcher->priv->scheduled = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, e_reminder_watcher_free_rd_slist); - watcher->priv->default_zone = e_cal_util_copy_timezone (zone); - watcher->priv->timers_enabled = TRUE; ++ { ++ g_autoptr(GSettingsSchemaSource) schema_source; ++ g_autoptr(GSettingsSchema) schema; ++ schema_source = g_settings_schema_source_new_from_directory("@GDS@", ++ g_settings_schema_source_get_default(), ++ TRUE, ++ NULL); ++ schema = g_settings_schema_source_lookup(schema_source, ++ "org.gnome.desktop.interface", ++ FALSE); ++ watcher->priv->desktop_settings = g_settings_new_full(schema, ++ NULL, ++ NULL); ++ } + if (watcher->priv->desktop_settings) { + g_signal_connect_object ( + watcher->priv->desktop_settings, diff --git a/src/calendar/libedata-cal/e-cal-meta-backend.c b/src/calendar/libedata-cal/e-cal-meta-backend.c -index cd91f07..79ede04 100644 +index 27fa153..3679d72 100644 --- a/src/calendar/libedata-cal/e-cal-meta-backend.c +++ b/src/calendar/libedata-cal/e-cal-meta-backend.c @@ -156,7 +156,18 @@ ecmb_is_power_saver_enabled (void) @@ -224,11 +265,33 @@ index cd91f07..79ede04 100644 if (g_settings_get_boolean (settings, "limit-operations-in-power-saver-mode")) { GPowerProfileMonitor *power_monitor; +@@ -2633,7 +2644,20 @@ ecmb_receive_object_sync (ECalMetaBackend *meta_backend, + if (is_declined) { + GSettings *settings; + +- settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); ++ { ++ g_autoptr(GSettingsSchemaSource) schema_source; ++ g_autoptr(GSettingsSchema) schema; ++ schema_source = g_settings_schema_source_new_from_directory("@EDS@", ++ g_settings_schema_source_get_default(), ++ TRUE, ++ NULL); ++ schema = g_settings_schema_source_lookup(schema_source, ++ "org.gnome.evolution-data-server.calendar", ++ FALSE); ++ settings = g_settings_new_full(schema, ++ NULL, ++ NULL); ++ } + is_declined = g_settings_get_boolean (settings, "delete-meeting-on-decline"); + g_clear_object (&settings); + } diff --git a/src/camel/camel-cipher-context.c b/src/camel/camel-cipher-context.c -index 8013ba7..1bba6d1 100644 +index bef9188..ce92f6c 100644 --- a/src/camel/camel-cipher-context.c +++ b/src/camel/camel-cipher-context.c -@@ -1625,7 +1625,18 @@ camel_cipher_can_load_photos (void) +@@ -1631,7 +1631,18 @@ camel_cipher_can_load_photos (void) GSettings *settings; gboolean load_photos; @@ -249,10 +312,10 @@ index 8013ba7..1bba6d1 100644 g_clear_object (&settings); diff --git a/src/camel/camel-gpg-context.c b/src/camel/camel-gpg-context.c -index 205372e..f75a88e 100644 +index db5fc2e..162e00f 100644 --- a/src/camel/camel-gpg-context.c +++ b/src/camel/camel-gpg-context.c -@@ -582,7 +582,18 @@ gpg_ctx_get_executable_name (void) +@@ -747,7 +747,18 @@ gpg_ctx_get_executable_name (void) GSettings *settings; gchar *path; @@ -298,11 +361,11 @@ index e61160c..b6553a4 100644 G_CALLBACK (mi_user_headers_settings_changed_cb), NULL); G_UNLOCK (mi_user_headers); diff --git a/src/camel/providers/imapx/camel-imapx-server.c b/src/camel/providers/imapx/camel-imapx-server.c -index 78abb89..9f2a891 100644 +index ef34665..59f294b 100644 --- a/src/camel/providers/imapx/camel-imapx-server.c +++ b/src/camel/providers/imapx/camel-imapx-server.c -@@ -5591,7 +5591,18 @@ camel_imapx_server_skip_old_flags_update (CamelStore *store) - if (!skip_old_flags_update) { +@@ -5627,7 +5627,18 @@ camel_imapx_server_do_old_flags_update (CamelFolder *folder) + if (do_old_flags_update) { GSettings *eds_settings; - eds_settings = g_settings_new ("org.gnome.evolution-data-server"); @@ -322,10 +385,10 @@ index 78abb89..9f2a891 100644 if (g_settings_get_boolean (eds_settings, "limit-operations-in-power-saver-mode")) { GPowerProfileMonitor *power_monitor; diff --git a/src/camel/providers/smtp/camel-smtp-transport.c b/src/camel/providers/smtp/camel-smtp-transport.c -index effaf06..1b2a003 100644 +index 6556f1e..90f0a5e 100644 --- a/src/camel/providers/smtp/camel-smtp-transport.c +++ b/src/camel/providers/smtp/camel-smtp-transport.c -@@ -1462,7 +1462,18 @@ smtp_helo (CamelSmtpTransport *transport, +@@ -1471,7 +1471,18 @@ smtp_helo (CamelSmtpTransport *transport, transport->authtypes = NULL; } @@ -442,7 +505,7 @@ index 3bb1071..199e822 100644 g_object_unref (settings); diff --git a/src/libedataserver/e-oauth2-service.c b/src/libedataserver/e-oauth2-service.c -index 7eca355..795d822 100644 +index 2364f3e..e8f59f2 100644 --- a/src/libedataserver/e-oauth2-service.c +++ b/src/libedataserver/e-oauth2-service.c @@ -94,7 +94,18 @@ eos_default_guess_can_process (EOAuth2Service *service, diff --git a/nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix index cfdde43ae776..f44278f896c3 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gdm/default.nix @@ -43,13 +43,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "gdm"; - version = "44.1"; + version = "45.0.1"; outputs = [ "out" "dev" ]; src = fetchurl { url = "mirror://gnome/sources/gdm/${lib.versions.major finalAttrs.version}/${finalAttrs.pname}-${finalAttrs.version}.tar.xz"; - sha256 = "aCZrOr59KPxGnQBnqsnF2rsMp5UswffCOKBJUfPcWw0="; + sha256 = "ZXJXjAXjxladbtJp994qrzoDVldlRYbYJDkHu3pv+oU="; }; mesonFlags = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix index 3710866a41a8..808ff7c0c293 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation rec { pname = "gnome-backgrounds"; - version = "44.0"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-backgrounds/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "SoOTs4cTXypqQkoaDDrJTgdCtiuCNaCSPJKfUeBL4E4="; + sha256 = "zuDmiPuuXvenXzNa2i0Qd54I68qURfFYbeMsWptt7i0="; }; patches = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix index 0e88bb20914e..7c80f475e564 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix @@ -27,14 +27,14 @@ stdenv.mkDerivation rec { pname = "gnome-bluetooth"; - version = "42.6"; + version = "42.7"; # TODO: split out "lib" outputs = [ "out" "dev" "devdoc" "man" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "WGT+bx5xhxXbJrYiAbdaWQIM9CR/7DdkWzVZzS26WdA="; + sha256 = "lN8XKdvsO7EF5Yjq9TEru6oFxJ6nMyAqENw/dTK9+Gk="; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix index 6d3d4b394f5e..73863ccfaf33 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-calculator/default.nix @@ -25,11 +25,11 @@ stdenv.mkDerivation rec { pname = "gnome-calculator"; - version = "44.0"; + version = "45.0.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-calculator/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "FOdjMp+IMJp+FSeA1XNhtUMQDjI5BrNOBlX9wxW3EEM="; + sha256 = "fcvzI4SJcXHL5Ug+xmTZlOXnVekSrh35EWJPA8kIZ8I="; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix index a8e99ecec45e..5f938a1fb79b 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-contacts/default.nix @@ -27,11 +27,11 @@ stdenv.mkDerivation rec { pname = "gnome-contacts"; - version = "44.0"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-contacts/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "fdEWO8HwavY4La5AFcQ0Q+4sEpKBKPyZ/USSktDee+0="; + sha256 = "vR/fKm9kzdnyq7/tB+ZPKmmuNTb3T0gZjMN7rZ/NlD4="; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix index f266c4809139..d59b5a139065 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/default.nix @@ -20,13 +20,13 @@ , gnome-desktop , gnome-online-accounts , gnome-settings-daemon +, gnome-tecla , gnome , gsettings-desktop-schemas , gsound , gst_all_1 , gtk4 , ibus -, libgnomekbd , libgtop , libgudev , libadwaita @@ -50,6 +50,7 @@ , polkit , python3 , samba +, setxkbmap , shadow , shared-mime-info , sound-theme-freedesktop @@ -62,22 +63,23 @@ , gnome-user-share , gnome-remote-desktop , wrapGAppsHook +, xvfb-run }: stdenv.mkDerivation rec { pname = "gnome-control-center"; - version = "44.3"; + version = "45.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-BmplBS/D7ProYAJehfeX5qsrh6WMT4q5xm7CBxioDHo="; + sha256 = "sha256-0obHYnFQ4RKqy7S3uRcX+tjokHYGFHnfxhCy3XRLV3o="; }; patches = [ (substituteAll { src = ./paths.patch; gcm = gnome-color-manager; - inherit glibc libgnomekbd tzdata shadow; + inherit glibc tzdata shadow; inherit cups networkmanagerapplet; }) ]; @@ -110,6 +112,7 @@ stdenv.mkDerivation rec { gnome-online-accounts gnome-remote-desktop # optional, sharing panel gnome-settings-daemon + gnome-tecla gnome-user-share # optional, sharing panel gsettings-desktop-schemas gsound @@ -141,11 +144,34 @@ stdenv.mkDerivation rec { gst-plugins-good ]); + nativeCheckInputs = [ + python3.pkgs.python-dbusmock + setxkbmap + xvfb-run + ]; + + doCheck = true; + preConfigure = '' # For ITS rules addToSearchPath "XDG_DATA_DIRS" "${polkit.out}/share" ''; + checkPhase = '' + runHook preCheck + + testEnvironment=( + # Basically same as https://github.com/NixOS/nixpkgs/pull/141299 + "ADW_DISABLE_PORTAL=1" + "XDG_DATA_DIRS=${glib.getSchemaDataDirPath gsettings-desktop-schemas}" + ) + + env "''${testEnvironment[@]}" xvfb-run \ + meson test --print-errorlogs + + runHook postCheck + ''; + postInstall = '' # Pull in WebP support for gnome-backgrounds. # In postInstall to run before gappsWrapperArgsHook. diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/paths.patch b/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/paths.patch index a1852811d400..165497f11e2a 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/paths.patch +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-control-center/paths.patch @@ -1,17 +1,17 @@ diff --git a/panels/color/cc-color-panel.c b/panels/color/cc-color-panel.c -index 603178efc..c363a6a5c 100644 +index f6c84e3d2..cd897f8f5 100644 --- a/panels/color/cc-color-panel.c +++ b/panels/color/cc-color-panel.c -@@ -591,7 +591,7 @@ gcm_prefs_calibrate_cb (CcColorPanel *prefs) +@@ -614,7 +614,7 @@ gcm_prefs_calibrate_cb (CcColorPanel *self) /* run with modal set */ argv = g_ptr_array_new_with_free_func (g_free); - g_ptr_array_add (argv, g_strdup ("gcm-calibrate")); + g_ptr_array_add (argv, g_build_filename ("@gcm@", "bin", "gcm-calibrate", NULL)); g_ptr_array_add (argv, g_strdup ("--device")); - g_ptr_array_add (argv, g_strdup (cd_device_get_id (prefs->current_device))); + g_ptr_array_add (argv, g_strdup (cd_device_get_id (self->current_device))); g_ptr_array_add (argv, g_strdup ("--parent-window")); -@@ -1029,7 +1029,7 @@ gcm_prefs_profile_view (CcColorPanel *prefs, CdProfile *profile) +@@ -989,7 +989,7 @@ gcm_prefs_profile_view (CcColorPanel *self, CdProfile *profile) /* open up gcm-viewer as a info pane */ argv = g_ptr_array_new_with_free_func (g_free); @@ -20,9 +20,9 @@ index 603178efc..c363a6a5c 100644 g_ptr_array_add (argv, g_strdup ("--profile")); g_ptr_array_add (argv, g_strdup (cd_profile_get_id (profile))); g_ptr_array_add (argv, g_strdup ("--parent-window")); -@@ -1275,15 +1275,12 @@ gcm_prefs_device_clicked (CcColorPanel *prefs, CdDevice *device) +@@ -1221,15 +1221,12 @@ gcm_prefs_device_clicked (CcColorPanel *self, CdDevice *device) static void - gcm_prefs_profile_clicked (CcColorPanel *prefs, CdProfile *profile, CdDevice *device) + gcm_prefs_profile_clicked (CcColorPanel *self, CdProfile *profile, CdDevice *device) { - g_autofree gchar *s = NULL; - @@ -34,9 +34,9 @@ index 603178efc..c363a6a5c 100644 - if (cd_profile_get_filename (profile) != NULL && - (s = g_find_program_in_path ("gcm-viewer")) != NULL) + if (cd_profile_get_filename (profile) != NULL) - gtk_widget_set_sensitive (prefs->toolbutton_profile_view, TRUE); + gtk_widget_set_sensitive (self->toolbutton_profile_view, TRUE); else - gtk_widget_set_sensitive (prefs->toolbutton_profile_view, FALSE); + gtk_widget_set_sensitive (self->toolbutton_profile_view, FALSE); diff --git a/panels/datetime/tz.h b/panels/datetime/tz.h index a2376f8a4..98769e08f 100644 --- a/panels/datetime/tz.h @@ -54,23 +54,6 @@ index a2376f8a4..98769e08f 100644 typedef struct _TzDB TzDB; typedef struct _TzLocation TzLocation; -diff --git a/panels/keyboard/cc-input-list-box.c b/panels/keyboard/cc-input-list-box.c -index 6c2cb5614..8f57159cc 100644 ---- a/panels/keyboard/cc-input-list-box.c -+++ b/panels/keyboard/cc-input-list-box.c -@@ -223,10 +223,10 @@ row_layout_cb (CcInputListBox *self, - layout_variant = cc_input_source_get_layout_variant (source); - - if (layout_variant && layout_variant[0]) -- commandline = g_strdup_printf ("gkbd-keyboard-display -l \"%s\t%s\"", -+ commandline = g_strdup_printf ("@libgnomekbd@/bin/gkbd-keyboard-display -l \"%s\t%s\"", - layout, layout_variant); - else -- commandline = g_strdup_printf ("gkbd-keyboard-display -l %s", -+ commandline = g_strdup_printf ("@libgnomekbd@/bin/gkbd-keyboard-display -l %s", - layout); - - g_spawn_command_line_async (commandline, NULL); diff --git a/panels/network/connection-editor/net-connection-editor.c b/panels/network/connection-editor/net-connection-editor.c index 505b8ee25..62e94009f 100644 --- a/panels/network/connection-editor/net-connection-editor.c diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix index 5613207b3e10..b0189cc1321d 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix @@ -27,11 +27,11 @@ stdenv.mkDerivation rec { pname = "gnome-disk-utility"; - version = "44.0"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-disk-utility/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-AgMQl4ls2zfYcXpYI/k+NyPU385/3EACyd/LFrfno+8="; + sha256 = "sha256-PYYl+qmQR7xK79KZIa1yirTXAM/4bg8uxn6Nuod9DdM="; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix index 30fafeee2ae8..9e5003ae2f35 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix @@ -18,11 +18,11 @@ stdenv.mkDerivation rec { pname = "gnome-font-viewer"; - version = "44.0"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-font-viewer/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "oVEd8wsijMLvEXXdnSuTQ46pEuJZE0BLJjzz1Fe7n5c="; + sha256 = "l8traN2mDeCrMDg4NYbx5LwdpaSPRAJb1rvnTqBcKwg="; }; doCheck = true; diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/0001-fix-paths.patch b/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/0001-fix-paths.patch index 232375952253..f3cd9f6f0427 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/0001-fix-paths.patch +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/0001-fix-paths.patch @@ -17,11 +17,11 @@ index 196abf6..613d0e5 100644 return TRUE; if (variant[0]) -- commandline = g_strdup_printf ("gkbd-keyboard-display -l \"%s\t%s\"", layout, variant); -+ commandline = g_strdup_printf ("@libgnomekbd@/bin/gkbd-keyboard-display -l \"%s\t%s\"", layout, variant); +- commandline = g_strdup_printf ("tecla \"%s+%s\"", layout, variant); ++ commandline = g_strdup_printf ("@tecla@/bin/tecla \"%s+%s\"", layout, variant); else -- commandline = g_strdup_printf ("gkbd-keyboard-display -l %s", layout); -+ commandline = g_strdup_printf ("@libgnomekbd@/bin/gkbd-keyboard-display -l %s", layout); +- commandline = g_strdup_printf ("tecla %s", layout); ++ commandline = g_strdup_printf ("@tecla@/bin/tecla %s", layout); g_spawn_command_line_async (commandline, NULL); g_free (commandline); @@ -38,15 +38,6 @@ diff --git a/gnome-initial-setup/pages/timezone/tz.h b/gnome-initial-setup/pages index a2376f8..5cb7bc9 100644 --- a/gnome-initial-setup/pages/timezone/tz.h +++ b/gnome-initial-setup/pages/timezone/tz.h -@@ -4,7 +4,7 @@ - * Copyright (C) 2000-2001 Ximian, Inc. - * - * Authors: Hans Petter Jansson <hpj@ximian.com> -- * -+ * - * Largely based on Michael Fulbright's work on Anaconda. - * - * This program is free software; you can redistribute it and/or modify @@ -28,7 +28,7 @@ G_BEGIN_DECLS diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix index 31950375369c..969d5012cc55 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix @@ -2,6 +2,7 @@ , lib , fetchurl , substituteAll +, dconf , gettext , meson , ninja @@ -32,27 +33,29 @@ , libadwaita , libnma-gtk4 , tzdata -, libgnomekbd +, gnome-tecla , gsettings-desktop-schemas }: stdenv.mkDerivation rec { pname = "gnome-initial-setup"; - version = "44.0"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "WTz8bcj4KphnG5TANbl9vojvVucIeAsq0dIyTk0Eu/8="; + sha256 = "sa/nZHmPiUi+25XHqzG9eFKaxctIHEH3p3d/Jk3lS9g="; }; patches = [ (substituteAll { src = ./0001-fix-paths.patch; - inherit tzdata libgnomekbd; + inherit tzdata; + tecla = gnome-tecla; }) ]; nativeBuildInputs = [ + dconf gettext meson ninja diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix index 2b7bda34744f..9b2f0876d7f5 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix @@ -8,6 +8,7 @@ , asciidoc , wrapGAppsHook , glib +, libei , libepoxy , libdrm , nv-codec-headers-11 @@ -21,20 +22,16 @@ , fdk_aac , tpm2-tss , fuse3 -, mesa -, libgudev -, xvfb-run -, dbus , gnome }: stdenv.mkDerivation rec { pname = "gnome-remote-desktop"; - version = "44.2"; + version = "45.1"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - hash = "sha256-ep/9NBtfy2NtJmden2JpZQlSFj//UpUydhjMLVzIe44="; + hash = "sha256-3NnBisIwZpVjH88AqIZFw443DroFxp3zn1QCBNTq/Y0="; }; nativeBuildInputs = [ @@ -54,6 +51,7 @@ stdenv.mkDerivation rec { fuse3 gdk-pixbuf # For libnotify glib + libei libepoxy libdrm nv-codec-headers-11 @@ -62,33 +60,13 @@ stdenv.mkDerivation rec { libxkbcommon pipewire systemd - ] ++ nativeCheckInputs; - - nativeCheckInputs = [ - 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" + "-Dtests=false" # Too deep of a rabbit hole. ]; - # Too deep of a rabbit hole. - doCheck = false; - - postPatch = '' - patchShebangs \ - tests/vnc-test-runner.sh \ - tests/run-vnc-tests.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/nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix index 3b33d289ddb0..dc0cade8d410 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-session/default.nix @@ -1,5 +1,4 @@ { fetchurl -, fetchpatch , lib , stdenv , substituteAll @@ -32,13 +31,13 @@ stdenv.mkDerivation rec { pname = "gnome-session"; # Also bump ./ctl.nix when bumping major version. - version = "44.0"; + version = "45.0"; outputs = [ "out" "sessions" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-session/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "zPgpqWUmE16en5F1JlFdNqUJK9+jFvNzfdjFpSTb8sY="; + sha256 = "cG0v/KysOFU6PAGFeT9aK0qslAu154nZU8mAgWO+8vE="; }; patches = [ @@ -48,12 +47,6 @@ stdenv.mkDerivation rec { dbusLaunch = "${dbus.lib}/bin/dbus-launch"; bash = "${bash}/bin/bash"; }) - # See #226355. Can be removed on update to v45. - (fetchpatch { - name = "fix-gnome-boxes-crash.patch"; - url = "https://gitlab.gnome.org/GNOME/gnome-session/commit/fab1a3b91677035d541de2c141f8073c4057342c.patch"; - hash = "sha256-2xeoNgV8UDexkufXDqimAplX0GC99tUWUqjw3kfN+5Q="; - }) ]; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/add-gnome-session-ctl-option.patch b/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/add-gnome-session-ctl-option.patch new file mode 100644 index 000000000000..8bdf39ce37b6 --- /dev/null +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/add-gnome-session-ctl-option.patch @@ -0,0 +1,58 @@ +From aae1e774dd9de22fe3520cf9eb2bfbf7216f5eb0 Mon Sep 17 00:00:00 2001 +From: WORLDofPEACE <worldofpeace@protonmail.ch> +Date: Sun, 20 Sep 2020 16:09:36 -0400 +Subject: [PATCH] build: add a gnome_session_ctl_path option + +In gsd.service.in the ExecStopPost expects g-s-d libexecdir to +be from the same prefix as gnome-session's, and this is not necessarily +true as there are linux distro's that install their packages into their +own individual prefixes (like NixOS or Guix). +--- + meson_options.txt | 1 + + plugins/gsd.service.in | 2 +- + plugins/meson.build | 6 ++++++ + 3 files changed, 8 insertions(+), 1 deletion(-) + +diff --git a/meson_options.txt b/meson_options.txt +index 3e04cf64f..21e003c61 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -1,4 +1,5 @@ + option('udev_dir', type: 'string', value: '', description: 'Absolute path of the udev base directory') ++option('gnome_session_ctl_path', type: 'string', value: '', description: 'Absolute path to the gnome-session-ctl binary') + option('systemd', type: 'boolean', value: true, description: 'Enable systemd integration') + + option('alsa', type: 'boolean', value: true, description: 'build with ALSA support (not optional on Linux platforms)') +diff --git a/plugins/gsd.service.in b/plugins/gsd.service.in +index 79b5f5536..bfbde6d05 100644 +--- a/plugins/gsd.service.in ++++ b/plugins/gsd.service.in +@@ -23,4 +23,4 @@ BusName=@plugin_dbus_name@ + TimeoutStopSec=5 + # We cannot use OnFailure as e.g. dependency failures are normal + # https://github.com/systemd/systemd/issues/12352 +-ExecStopPost=@libexecdir@/gnome-session-ctl --exec-stop-check ++ExecStopPost=@gnome_session_ctl@ --exec-stop-check +diff --git a/plugins/meson.build b/plugins/meson.build +index 83e018854..266a0f093 100644 +--- a/plugins/meson.build ++++ b/plugins/meson.build +@@ -20,6 +20,11 @@ all_plugins = [ + + disabled_plugins = [] + ++gnome_session_ctl = get_option('gnome_session_ctl_path') ++if gnome_session_ctl == '' ++ gnome_session_ctl = join_paths(gsd_libexecdir, 'gnome-session-ctl') ++endif ++ + if not enable_smartcard + disabled_plugins += ['smartcard'] + endif +@@ -125,6 +130,7 @@ foreach plugin: all_plugins + unit_conf.set('plugin_name', plugin_name) + unit_conf.set('description', plugin_description) + unit_conf.set('libexecdir', gsd_libexecdir) ++ unit_conf.set('gnome_session_ctl', gnome_session_ctl) + unit_conf.set('plugin_dbus_name', plugin_dbus_name) + unit_conf.set('plugin_restart', plugin_restart_rule.get(plugin_name, 'on-failure')) diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix index a06a04b908fc..699f9961c11f 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix @@ -1,5 +1,5 @@ -{ lib, stdenv -, fetchpatch +{ stdenv +, lib , substituteAll , fetchurl , meson @@ -34,26 +34,22 @@ , wrapGAppsHook , python3 , tzdata -, nss , gcr_4 , gnome-session-ctl }: stdenv.mkDerivation rec { pname = "gnome-settings-daemon"; - version = "44.1"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "EmU7ctgfFRMApH1wCslBCsG8zjjoPxvdGc3tKTKUOYk="; + sha256 = "u03EaVDiqQ848jIlhIhW0qextxjInQKFzhl7cBa7Hcg="; }; patches = [ # https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/202 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gnome-settings-daemon/commit/aae1e774dd9de22fe3520cf9eb2bfbf7216f5eb0.patch"; - sha256 = "O4m0rOW8Zrgu3Q0p0OA8b951VC0FjYbOUk9MLzB9icI="; - }) + ./add-gnome-session-ctl-option.patch (substituteAll { src = ./fix-paths.patch; @@ -89,7 +85,6 @@ stdenv.mkDerivation rec { upower colord libgweather - nss polkit geocode-glib_2 geoclue2 diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix index 56f0e6102298..493e0342333f 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation rec { pname = "gnome-shell-extensions"; - version = "44.0"; + version = "45.1"; src = fetchurl { url = "mirror://gnome/sources/gnome-shell-extensions/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "jDRecvMaHjf1UGPgsVmXMBsBGU7WmHcv2HrrUMuxAas="; + sha256 = "JC4VoMBuggw/2N1q6sGo74Zc5YiC5Zda8dZZNLtNQmE="; }; patches = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/fix_gmenu.patch b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/fix_gmenu.patch index 555664e8ae25..1254f532d611 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/fix_gmenu.patch +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell-extensions/fix_gmenu.patch @@ -1,11 +1,22 @@ +diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js +index 6eb58f1..28e1195 100644 --- a/extensions/apps-menu/extension.js +++ b/extensions/apps-menu/extension.js -@@ -1,6 +1,8 @@ - /* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */ - /* exported init enable disable */ +@@ -10,7 +10,7 @@ import Atk from 'gi://Atk'; + import Clutter from 'gi://Clutter'; + import Gio from 'gi://Gio'; + import GLib from 'gi://GLib'; +-import GMenu from 'gi://GMenu'; ++import GIRepository from 'gi://GIRepository'; + import GObject from 'gi://GObject'; + import Gtk from 'gi://Gtk'; + import Meta from 'gi://Meta'; +@@ -25,6 +25,8 @@ import * as Main from 'resource:///org/gnome/shell/ui/main.js'; + import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js'; + import * as PopupMenu from 'resource:///org/gnome/shell/ui/popupMenu.js'; -+imports.gi.GIRepository.Repository.prepend_search_path('@gmenu_path@'); -+ - const { - Atk, Clutter, Gio, GLib, GMenu, GObject, Gtk, Meta, Shell, St - } = imports.gi; ++GIRepository.Repository.prepend_search_path('@gmenu_path@'); ++const {default: GMenu} = await import('gi://GMenu'); + const appSys = Shell.AppSystem.get_default(); + + const APPLICATION_ICON_SIZE = 32; diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix index 176cb4271b8d..2471061ae4f0 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/default.nix @@ -28,7 +28,7 @@ , libpulseaudio , libical , gobject-introspection -, wrapGAppsHook +, wrapGAppsHook4 , libxslt , gcr_4 , accountsservice @@ -37,7 +37,6 @@ , upower , ibus , libnma-gtk4 -, libgnomekbd , gnome-desktop , gsettings-desktop-schemas , gnome-keyring @@ -57,6 +56,7 @@ , gnome-clocks , gnome-settings-daemon , gnome-autoar +, gnome-tecla , asciidoc , bash-completion , mesa @@ -67,22 +67,22 @@ let in stdenv.mkDerivation rec { pname = "gnome-shell"; - version = "44.5"; + version = "45.1"; outputs = [ "out" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-shell/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "wWr84Dgd1ZNCfXCER6nR+sdInrApRe+zfpBMp0qSSjU="; + sha256 = "FfykvWEpqLP5kBl/vR7ljXS2QVEK+q8Igqf6NmNPxfI="; }; patches = [ # Hardcode paths to various dependencies so that they can be found at runtime. (substituteAll { src = ./fix-paths.patch; - gkbd_keyboard_display = "${lib.getBin libgnomekbd}/bin/gkbd-keyboard-display"; glib_compile_schemas = "${glib.dev}/bin/glib-compile-schemas"; gsettings = "${glib.bin}/bin/gsettings"; + tecla = "${lib.getBin gnome-tecla}/bin/tecla"; unzip = "${lib.getBin unzip}/bin/unzip"; }) @@ -95,11 +95,8 @@ stdenv.mkDerivation rec { # Fix greeter logo being too big. # https://gitlab.gnome.org/GNOME/gnome-shell/issues/2591 - (fetchpatch { - url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/ffb8bd5fa7704ce70ce7d053e03549dd15dce5ae.patch"; - revert = true; - sha256 = "14h7ahlxgly0n3sskzq9dhxzbyb04fn80pv74vz1526396676dzl"; - }) + # Reverts https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1101 + ./greeter-logo-size.patch # Work around failing fingerprint auth (fetchpatch { @@ -117,7 +114,7 @@ stdenv.mkDerivation rec { docbook_xml_dtd_45 gtk-doc perl - wrapGAppsHook + wrapGAppsHook4 sassc desktop-file-utils libxslt.bin @@ -187,7 +184,7 @@ stdenv.mkDerivation rec { # We can generate it ourselves. rm -f man/gnome-shell.1 - rm data/theme/gnome-shell.css + rm data/theme/gnome-shell-{light,dark}.css ''; postInstall = '' diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch index e70c4851e9d5..e27847378bb2 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch @@ -39,8 +39,8 @@ index fff4e73c2..92859b099 100644 if (xkbVariant.length > 0) description = `${description}\t${xkbVariant}`; -- Util.spawn(['gkbd-keyboard-display', '-l', description]); -+ Util.spawn(['@gkbd_keyboard_display@', '-l', description]); +- Util.spawn(['tecla', description]); ++ Util.spawn(['@tecla@', description]); } }); diff --git a/subprojects/extensions-tool/src/command-install.c b/subprojects/extensions-tool/src/command-install.c diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/greeter-logo-size.patch b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/greeter-logo-size.patch new file mode 100644 index 000000000000..e58610ddc2b2 --- /dev/null +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/greeter-logo-size.patch @@ -0,0 +1,21 @@ +diff --git a/js/gdm/loginDialog.js b/js/gdm/loginDialog.js +index a3e4372b4..36f6c1f47 100644 +--- a/js/gdm/loginDialog.js ++++ b/js/gdm/loginDialog.js +@@ -43,6 +43,7 @@ import * as UserWidget from '../ui/userWidget.js'; + const _FADE_ANIMATION_TIME = 250; + const _SCROLL_ANIMATION_TIME = 500; + const _TIMED_LOGIN_IDLE_THRESHOLD = 5.0; ++const _LOGO_ICON_HEIGHT = 48; + + export const UserListItem = GObject.registerClass({ + Signals: {'activate': {}}, +@@ -839,7 +840,7 @@ export const LoginDialog = GObject.registerClass({ + const scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor; + const texture = this._textureCache.load_file_async( + this._logoFile, +- -1, -1, ++ -1, _LOGO_ICON_HEIGHT, + scaleFactor, resourceScale); + this._logoBin.add_child(texture); + } diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch index 5ce4a2fd46d7..eca485c32124 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch @@ -1,19 +1,19 @@ diff --git a/js/dbusServices/dbus-service.in b/js/dbusServices/dbus-service.in old mode 100644 new mode 100755 -index 524166102..6d0722a1c +index 5c698f58a..1ed61a7e3 --- a/js/dbusServices/dbus-service.in +++ b/js/dbusServices/dbus-service.in @@ -1,3 +1,9 @@ -+#!@gjs@ ++#!@gjs@ -m + +// gjs determines the package name from argv[0], which is .*-wrapped +// so we need to override it to the original one. +imports.package._findEffectiveEntryPointName = () => '@service@' + - imports.package.start({ - name: '@PACKAGE_NAME@', - prefix: '@prefix@', + import {programInvocationName, programArgs} from 'system'; + + imports.package.init({ diff --git a/js/dbusServices/dbus-service.service.in b/js/dbusServices/dbus-service.service.in index 3b0d09abe..4fd4bb66d 100644 --- a/js/dbusServices/dbus-service.service.in @@ -21,7 +21,7 @@ index 3b0d09abe..4fd4bb66d 100644 @@ -1,3 +1,3 @@ [D-BUS Service] Name=@service@ --Exec=@gjs@ @pkgdatadir@/@service@ +-Exec=@gjs@ -m @pkgdatadir@/@service@ +Exec=@pkgdatadir@/@service@ diff --git a/js/dbusServices/meson.build b/js/dbusServices/meson.build index eb941ed90..552051e5a 100644 diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix index 99ab7e4d5ca2..931a2d643dd2 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-software/default.nix @@ -45,11 +45,11 @@ in stdenv.mkDerivation rec { pname = "gnome-software"; - version = "44.4"; + version = "45.1"; src = fetchurl { url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "i1N2fvbMVKLbWI7xxZJoOLDWe42bIRc95ROc0PvSgJU="; + sha256 = "1ySF96bgkX9k7b7daP17VyRsbr8QxaRRCLY5RmNXeKI="; }; patches = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix index f3e2677d6e0d..60de20502b37 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "gnome-system-monitor"; - version = "44.0"; + version = "45.0.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-system-monitor/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "wrq37dupKCfEyN5EKT5+PITJ5QdvMZhYh/+Jac7EXm4="; + sha256 = "xeJy2Qv5mGo/hhPXbg0n+kLfrO5cAZLnOSG7lLGGii4="; }; patches = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix index 0fa7a713ce0c..bc524bc800db 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-terminal/default.nix @@ -12,6 +12,7 @@ , glib , gtk4 , gtk3 +, libhandy , gsettings-desktop-schemas , vte , gettext @@ -29,14 +30,14 @@ stdenv.mkDerivation rec { pname = "gnome-terminal"; - version = "3.48.2"; + version = "3.50.1"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "GNOME"; repo = "gnome-terminal"; rev = version; - sha256 = "sha256-WvFKFh5BK6AS+Lqyh27xIfH1rxs1+YTkywX4w9UashQ="; + sha256 = "sha256-lJAzmz8tvEbr371VtYjlV4+z3cSy4QrmP0vmD5WiJD4="; }; nativeBuildInputs = [ @@ -61,6 +62,7 @@ stdenv.mkDerivation rec { glib gtk4 gtk3 + libhandy gsettings-desktop-schemas vte libuuid diff --git a/nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix index bb658fcd4489..9ded6a332654 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gnome-tour/default.nix @@ -22,11 +22,11 @@ stdenv.mkDerivation rec { pname = "gnome-tour"; - version = "44.0"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - hash = "sha256-Bt52d90cWQ0OozoDLJzPTDfGK8ViFbgjyHnkLuYwwrY="; + hash = "sha256-W+S470uPTV7KzMMQSNtuCFqPe/+tqghDuOiniP8dre4="; }; cargoVendorDir = "vendor"; diff --git a/nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix b/nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix index 0b2484c7cb40..91bea357d251 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/gucharmap/default.nix @@ -45,7 +45,7 @@ let }; in stdenv.mkDerivation rec { pname = "gucharmap"; - version = "15.0.4"; + version = "15.1.2"; outputs = [ "out" "lib" "dev" "devdoc" ]; @@ -54,7 +54,7 @@ in stdenv.mkDerivation rec { owner = "GNOME"; repo = "gucharmap"; rev = version; - sha256 = "sha256-lfWIaAr5FGWvDkNLOPe19hVQiFarbYVXwM78jZc5FFk="; + sha256 = "sha256-tvFw2k5xCl+QE6cHvLj5KKdYFSghN7PVgHPmd27wh7k="; }; strictDeps = true; diff --git a/nixpkgs/pkgs/desktops/gnome/core/mutter/43/default.nix b/nixpkgs/pkgs/desktops/gnome/core/mutter/43/default.nix index 1d07bf167c80..e565603ae576 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/mutter/43/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/mutter/43/default.nix @@ -67,6 +67,18 @@ stdenv.mkDerivation (finalAttrs: { url = "https://gitlab.gnome.org/GNOME/mutter/-/commit/285a5a4d54ca83b136b787ce5ebf1d774f9499d5.patch"; sha256 = "/npUE3idMSTVlFptsDpZmGWjZ/d2gqruVlJKq4eF4xU="; }) + + # Remove support for window shading. + # The corresponding key was removed in gsettings-desktop-schemas 45.alpha. + # https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2884 + # + # Fetch the patch from magpie as they share same code base and this feature + # is never supported on wayland (note that magpie 0.9.x won't support wayland). + # https://github.com/BuddiesOfBudgie/magpie/issues/9 + (fetchpatch { + url = "https://github.com/BuddiesOfBudgie/magpie/commit/4177c466375462ca8ed8fdb60913df4422f19144.patch"; + sha256 = "NVx40WDnlUL050D529KVohvNBdVrheXxmJ73U3+KSeQ="; + }) ]; mesonFlags = [ @@ -136,6 +148,10 @@ stdenv.mkDerivation (finalAttrs: { postPatch = '' patchShebangs src/backends/native/gen-default-modes.py + + # https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3187 + substituteInPlace meson.build \ + --replace "dependency('sysprof-4')" "dependency('sysprof-6')" ''; postInstall = '' diff --git a/nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix b/nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix index d9aa514bb0e6..03414346f643 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/mutter/default.nix @@ -35,6 +35,7 @@ , libXau , libinput , libdrm +, libei , gsettings-desktop-schemas , glib , atk @@ -66,13 +67,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "mutter"; - version = "44.5"; + version = "45.1"; outputs = [ "out" "dev" "man" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/mutter/${lib.versions.major finalAttrs.version}/mutter-${finalAttrs.version}.tar.xz"; - sha256 = "8kfg7WXrYvKwd1RtUoPtbUf0Ar2mpDFkE1AdjK7Slnk="; + sha256 = "LNPF77Itt2x5MRyxiJoaqy/rNbSk3QPzgiqreZnaISw="; }; mesonFlags = [ @@ -123,6 +124,7 @@ stdenv.mkDerivation (finalAttrs: { harfbuzz libcanberra libdrm + libei libgudev libinput libstartup_notification @@ -170,7 +172,7 @@ stdenv.mkDerivation (finalAttrs: { postFixup = '' # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back. # TODO: Move this into a directory devhelp can find. - moveToOutput "share/mutter-12/doc" "$devdoc" + moveToOutput "share/mutter-13/doc" "$devdoc" ''; # Install udev files into our own tree. @@ -179,7 +181,7 @@ stdenv.mkDerivation (finalAttrs: { separateDebugInfo = true; passthru = { - libdir = "${finalAttrs.finalPackage}/lib/mutter-12"; + libdir = "${finalAttrs.finalPackage}/lib/mutter-13"; tests = { libdirExists = runCommand "mutter-libdir-exists" {} '' diff --git a/nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix b/nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix index 1364fe421161..395b4f41c76b 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/nautilus/default.nix @@ -38,13 +38,13 @@ stdenv.mkDerivation rec { pname = "nautilus"; - version = "44.2.1"; + version = "45.1"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "2cYvAkcn96dvxqXaeIorAkffAaccKmARQ8YqrA/0Hkw="; + sha256 = "I72qmoVGbFk3qJ2t3QgO0DvMK0notkr2ByBjU73oL+M="; }; patches = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/sushi/default.nix b/nixpkgs/pkgs/desktops/gnome/core/sushi/default.nix index b9a7685435e6..5c54f03d7d53 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/sushi/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/sushi/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "sushi"; - version = "44.2"; + version = "45.0"; src = fetchurl { url = "mirror://gnome/sources/sushi/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "bAAv4K6hkCe6RIta7JTVzXU8l1L5lu4DMVJChzjqQ+k="; + sha256 = "al8UsFo0cf5DhTzCsOGuVITX+fhvfqN2F5gpub9Kwd0="; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/desktops/gnome/core/zenity/default.nix b/nixpkgs/pkgs/desktops/gnome/core/zenity/default.nix index 6ff36b1c1960..e8be274a1f60 100644 --- a/nixpkgs/pkgs/desktops/gnome/core/zenity/default.nix +++ b/nixpkgs/pkgs/desktops/gnome/core/zenity/default.nix @@ -1,6 +1,7 @@ { stdenv , lib , fetchurl +, help2man , meson , ninja , pkg-config @@ -15,14 +16,15 @@ stdenv.mkDerivation rec { pname = "zenity"; - version = "3.99.0"; + version = "3.99.2"; src = fetchurl { url = "mirror://gnome/sources/zenity/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "kOdDSnKLoD8fAkJIY8w5NV0kBxWNf5ZAPVHPVs8m7s8="; + sha256 = "oZR4kGuYi082fl6mOlkh5PmMuCVbugXrXK2LWhikFo8="; }; nativeBuildInputs = [ + help2man meson ninja pkg-config |