summaryrefslogtreecommitdiff
path: root/gnome-extra/cinnamon/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-03-20 00:40:44 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-03-20 00:40:44 +0000
commit4cbcc855382a06088e2f016f62cafdbcb7e40665 (patch)
tree356496503d52354aa6d9f2d36126302fed5f3a73 /gnome-extra/cinnamon/files
parentfcc5224904648a8e6eb528d7603154160a20022f (diff)
gentoo resync : 20.03.2022
Diffstat (limited to 'gnome-extra/cinnamon/files')
-rw-r--r--gnome-extra/cinnamon/files/cinnamon-5.2.7-eds-detection.patch114
-rw-r--r--gnome-extra/cinnamon/files/cinnamon-5.2.7-meson-0.61-fix.patch41
-rw-r--r--gnome-extra/cinnamon/files/cinnamon-5.2.7-optional-eds.patch85
-rw-r--r--gnome-extra/cinnamon/files/cinnamon-5.2.7-revert-meson-0.60-fix.patch55
4 files changed, 210 insertions, 85 deletions
diff --git a/gnome-extra/cinnamon/files/cinnamon-5.2.7-eds-detection.patch b/gnome-extra/cinnamon/files/cinnamon-5.2.7-eds-detection.patch
new file mode 100644
index 000000000000..bda0feedceb7
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-5.2.7-eds-detection.patch
@@ -0,0 +1,114 @@
+https://github.com/linuxmint/cinnamon/commit/ef463cc0aaedd714f2956daab227aeda1d87897e
+
+From ef463cc0aaedd714f2956daab227aeda1d87897e Mon Sep 17 00:00:00 2001
+From: Michael Webster <miketwebster@gmail.com>
+Date: Wed, 12 Jan 2022 14:50:47 -0500
+Subject: [PATCH] calendar events: Check if evolution-data-server is running
+ before enabling events.
+
+None of the e-d-s libraries actually depend on evolution-data-server
+(which is what provides the backend to these libraries). Also, not
+everyone may want this sort of thing in the first place.
+
+So, check if the e-d-s service we require is active before trying
+to enable event support.
+
+ref: #10597, #10567
+---
+ .../applets/calendar@cinnamon.org/calendar.js | 2 +-
+ .../calendar@cinnamon.org/eventView.js | 43 +++++++++++++++----
+ js/misc/interfaces.js | 4 ++
+ 3 files changed, 39 insertions(+), 10 deletions(-)
+
+diff --git a/files/usr/share/cinnamon/applets/calendar@cinnamon.org/calendar.js b/files/usr/share/cinnamon/applets/calendar@cinnamon.org/calendar.js
+index 460883c063..5078a201ed 100644
+--- a/files/usr/share/cinnamon/applets/calendar@cinnamon.org/calendar.js
++++ b/files/usr/share/cinnamon/applets/calendar@cinnamon.org/calendar.js
+@@ -159,7 +159,7 @@ class Calendar {
+ this.desktop_settings = new Gio.Settings({ schema_id: DESKTOP_SCHEMA });
+ this.desktop_settings.connect("changed::" + FIRST_WEEKDAY_KEY, Lang.bind(this, this._onSettingsChange));
+
+- this.events_enabled = true;
++ this.events_enabled = false;
+ this.events_manager.connect("events-updated", this._events_updated.bind(this));
+ this.events_manager.connect("events-manager-ready", this._update_events_enabled.bind(this));
+ this.events_manager.connect("has-calendars-changed", this._update_events_enabled.bind(this));
+diff --git a/files/usr/share/cinnamon/applets/calendar@cinnamon.org/eventView.js b/files/usr/share/cinnamon/applets/calendar@cinnamon.org/eventView.js
+index 1d1035c605..2e73363fb7 100644
+--- a/files/usr/share/cinnamon/applets/calendar@cinnamon.org/eventView.js
++++ b/files/usr/share/cinnamon/applets/calendar@cinnamon.org/eventView.js
+@@ -17,6 +17,7 @@ const Main = imports.ui.main;
+ const Util = imports.misc.util;
+ const Mainloop = imports.mainloop;
+ const Tweener = imports.ui.tweener;
++const Interfaces = imports.misc.interfaces;
+
+ const STATUS_UNKNOWN = 0;
+ const STATUS_NO_CALENDARS = 1;
+@@ -302,18 +303,42 @@ class EventsManager {
+
+ start_events() {
+ if (this._calendar_server == null) {
+- Cinnamon.CalendarServerProxy.new_for_bus(
+- Gio.BusType.SESSION,
+- // Gio.DBusProxyFlags.NONE,
+- Gio.DBusProxyFlags.DO_NOT_AUTO_START_AT_CONSTRUCTION,
+- "org.cinnamon.CalendarServer",
+- "/org/cinnamon/CalendarServer",
+- null,
+- this._calendar_server_ready.bind(this)
+- );
++ Interfaces.getDBusAsync((proxy, error) => {
++ if (error) {
++ this.log_dbus_error(error);
++ return;
++ }
++
++ proxy.NameHasOwnerRemote("org.gnome.evolution.dataserver.Calendar8", (has_owner, error) => {
++ if (error) {
++ this.log_dbus_error(error);
++ return;
++ }
++
++ if (has_owner[0]) {
++ log("calendar@cinnamon.org: Calendar events supported.")
++
++ Cinnamon.CalendarServerProxy.new_for_bus(
++ Gio.BusType.SESSION,
++ Gio.DBusProxyFlags.DO_NOT_AUTO_START_AT_CONSTRUCTION,
++ "org.cinnamon.CalendarServer",
++ "/org/cinnamon/CalendarServer",
++ null,
++ this._calendar_server_ready.bind(this)
++ );
++ } else {
++ log("calendar@cinnamon.org: No calendar event support (needs evolution-data-server)")
++
++ }
++ });
++ })
+ }
+ }
+
++ log_dbus_error(e) {
++ global.logError(`calendar@cinnamon.org: Could not check for calendar event support: ${e.toString()}`);
++ }
++
+ _calendar_server_ready(obj, res) {
+ try {
+ this._calendar_server = Cinnamon.CalendarServerProxy.new_for_bus_finish(res);
+diff --git a/js/misc/interfaces.js b/js/misc/interfaces.js
+index 8bc6e717d4..6bdb7b78c2 100644
+--- a/js/misc/interfaces.js
++++ b/js/misc/interfaces.js
+@@ -13,6 +13,10 @@ const DBusIface = '\
+ <arg type="s" direction="in" /> \
+ <arg type="s" direction="out" /> \
+ </method> \
++ <method name="NameHasOwner"> \
++ <arg type="s" direction="in" /> \
++ <arg type="b" direction="out" /> \
++ </method> \
+ <method name="ListNames"> \
+ <arg type="as" direction="out" /> \
+ </method> \
diff --git a/gnome-extra/cinnamon/files/cinnamon-5.2.7-meson-0.61-fix.patch b/gnome-extra/cinnamon/files/cinnamon-5.2.7-meson-0.61-fix.patch
new file mode 100644
index 000000000000..3645221cc7a3
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-5.2.7-meson-0.61-fix.patch
@@ -0,0 +1,41 @@
+https://github.com/linuxmint/cinnamon/commit/9ccce54c29f7c78404e8819d7be7a051efff4df1
+
+From 9ccce54c29f7c78404e8819d7be7a051efff4df1 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz@archlinux.org>
+Date: Thu, 3 Feb 2022 09:09:24 -0500
+Subject: [PATCH] gtkdoc: remove dependencies on custom target files (#10606)
+
+Sadly, the `dependencies` kwarg does not actually do what it seems to be
+trying to be used for, here. It is for listing dependency or library
+objects whose compiler flags should be added to gtkdoc-scangobj.
+
+It will not actually add ninja target dependencies. The similar kwarg in
+other meson functions (e.g. genmarshal and compile_schemas) that *do*
+allow adding target dependencies, is `depend_files`.
+
+Older versions of meson simply did nothing in an if/elif/elif block
+where these custom_targets never matched anything, and were thus
+silently ignored.
+
+Meson 0.61 type-validates the arguments and rejects CustomTarget as
+invalid:
+
+```
+docs/reference/cinnamon-js/meson.build:11:6: ERROR: gnome.gtkdoc keyword argument 'dependencies' was of type array[CustomTarget] but should have been array[Dependency | SharedLibrary | StaticLibrary]
+```
+---
+ docs/reference/cinnamon-js/meson.build | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/docs/reference/cinnamon-js/meson.build b/docs/reference/cinnamon-js/meson.build
+index 7c96c875a0..66a5e156eb 100644
+--- a/docs/reference/cinnamon-js/meson.build
++++ b/docs/reference/cinnamon-js/meson.build
+@@ -12,7 +12,6 @@ gnome.gtkdoc(
+ 'cinnamon-js',
+ mode: 'xml',
+ main_xml: 'cinnamon-js-docs.sgml',
+- dependencies: parts_files,
+ src_dir: meson.current_build_dir(),
+ install: true,
+ )
diff --git a/gnome-extra/cinnamon/files/cinnamon-5.2.7-optional-eds.patch b/gnome-extra/cinnamon/files/cinnamon-5.2.7-optional-eds.patch
deleted file mode 100644
index c0646359552b..000000000000
--- a/gnome-extra/cinnamon/files/cinnamon-5.2.7-optional-eds.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-diff --git a/files/usr/share/cinnamon/applets/calendar@cinnamon.org/eventView.js b/files/usr/share/cinnamon/applets/calendar@cinnamon.org/eventView.js
-index 1d1035c60..ebfd5a3a4 100644
---- a/files/usr/share/cinnamon/applets/calendar@cinnamon.org/eventView.js
-+++ b/files/usr/share/cinnamon/applets/calendar@cinnamon.org/eventView.js
-@@ -301,7 +301,7 @@ class EventsManager {
- }
-
- start_events() {
-- if (this._calendar_server == null) {
-+ if (this._calendar_server == null && Cinnamon.CalendarServerProxy) {
- Cinnamon.CalendarServerProxy.new_for_bus(
- Gio.BusType.SESSION,
- // Gio.DBusProxyFlags.NONE,
-diff --git a/meson.build b/meson.build
-index 2c1baf47d..aba5d5a30 100644
---- a/meson.build
-+++ b/meson.build
-@@ -179,6 +179,9 @@ install_subdir(
- strip_directory: true,
- )
-
--subdir('calendar-server')
-+
-+if get_option('build_calendar_server')
-+ subdir('calendar-server')
-+endif
- subdir('python3')
- subdir('install-scripts')
-diff --git a/meson_options.txt b/meson_options.txt
-index 82422246b..752f7904e 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -13,6 +13,11 @@ option('build_recorder',
- value: true,
- description: 'Build the cinnamon recorder into source'
- )
-+option('build_calendar_server',
-+ type: 'boolean',
-+ value: true,
-+ description: 'Build the cinnamon EDS calendar server'
-+)
- option('disable_networkmanager',
- type: 'boolean',
- value: false,
-diff --git a/src/meson.build b/src/meson.build
-index 7999c0a67..1b22aa279 100644
---- a/src/meson.build
-+++ b/src/meson.build
-@@ -3,12 +3,6 @@ subdir('hotplug-sniffer')
-
- include_src = include_directories('.')
-
--calendar_generated = gnome.gdbus_codegen('cinnamon-calendar',
-- sources: 'org.cinnamon.CalendarServer.xml',
-- interface_prefix: 'org.cinnamon.',
-- namespace: 'Cinnamon'
--)
--
- cinnamon_headers = [
- 'cinnamon-app.h',
- 'cinnamon-app-system.h',
-@@ -59,10 +53,21 @@ cinnamon_sources = [
- 'cinnamon-window-tracker.c',
- 'cinnamon-wm.c',
- 'cinnamon-xfixes-cursor.c',
-- cinnamon_headers,
-- calendar_generated
-+ cinnamon_headers
- ]
-
-+if get_option('build_calendar_server')
-+ calendar_generated = gnome.gdbus_codegen('cinnamon-calendar',
-+ sources: 'org.cinnamon.CalendarServer.xml',
-+ interface_prefix: 'org.cinnamon.',
-+ namespace: 'Cinnamon'
-+ )
-+
-+ cinnamon_sources += [
-+ calendar_generated
-+ ]
-+endif
-+
- cinnamon_enum_types = gnome.mkenums_simple(
- 'cinnamon-enum-types',
- sources: cinnamon_headers,
diff --git a/gnome-extra/cinnamon/files/cinnamon-5.2.7-revert-meson-0.60-fix.patch b/gnome-extra/cinnamon/files/cinnamon-5.2.7-revert-meson-0.60-fix.patch
new file mode 100644
index 000000000000..aa5503517ec7
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-5.2.7-revert-meson-0.60-fix.patch
@@ -0,0 +1,55 @@
+https://github.com/linuxmint/cinnamon/commit/aac7baf119dc48b685aefb3438e5ba3e61c8cb09
+
+From aac7baf119dc48b685aefb3438e5ba3e61c8cb09 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz@archlinux.org>
+Date: Thu, 3 Feb 2022 09:11:39 -0500
+Subject: [PATCH] Revert "build: disable gir install via list to pacify meson
+ >= 0.60.2 (#10489)" (#10596)
+
+This reverts commit 8fc2df08b40aa3e1958ed2fde853c50676d8cf48.
+
+This commit was wrong, because it tried to work around a bug in a single
+version of meson by using something that isn't, wasn't, and won't be a
+valid value.
+
+The fixed version of meson 0.60.x has been out for a while now, which
+once again accepts `false`, and 0.61.0 also accepts `false` but was
+known at the time of this workaround to not work in meson-git master
+(now meson 0.61.0).
+
+Using `false` is acceptable and the failure to accept it has been
+qualified as a meson regression. Using `[false]` is just... trying to
+fuzz meson with random objects until you get something that slips its
+way through the argument checker and produces desired effects on the
+python implementation level.
+---
+ src/meson.build | 2 +-
+ src/st/meson.build | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/meson.build b/src/meson.build
+index 7999c0a67b..34b130d50f 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -196,7 +196,7 @@ cinnamon_gir = gnome.generate_gir(
+ includes: cinnamon_gir_includes,
+ install: true,
+ install_dir_typelib: pkglibdir,
+- install_dir_gir: [false],
++ install_dir_gir: false,
+ extra_args: [
+ '-DST_COMPILATION',
+ '--quiet',
+diff --git a/src/st/meson.build b/src/st/meson.build
+index d299727d06..ec7d7b30a1 100644
+--- a/src/st/meson.build
++++ b/src/st/meson.build
+@@ -213,7 +213,7 @@ st_gir = gnome.generate_gir(
+ includes: st_gir_includes,
+ install: true,
+ install_dir_typelib: pkglibdir,
+- install_dir_gir: [false],
++ install_dir_gir: false,
+ extra_args: [
+ '-DST_COMPILATION',
+ '--quiet',