public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2015-09-06 21:56 Alexandre Rostovtsev
  0 siblings, 0 replies; 10+ messages in thread
From: Alexandre Rostovtsev @ 2015-09-06 21:56 UTC (permalink / raw
  To: gentoo-commits

commit:     c676e623a8b7c3e3f3e3b133c92bcb92316faf18
Author:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
AuthorDate: Sun Sep  6 21:54:59 2015 +0000
Commit:     Alexandre Rostovtsev <tetromino <AT> gentoo <DOT> org>
CommitDate: Sun Sep  6 21:54:59 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c676e623

gnome-extra/cinnamon: fix build with clutter[-gtk]

Gentoo-Bug: 559794
Reported-by: Lara Maia
Upstream-Bug-url: https://github.com/linuxmint/Cinnamon/pull/4600

Package-Manager: portage-2.2.20.1

 gnome-extra/cinnamon/cinnamon-2.6.13.ebuild        |  4 +++
 .../cinnamon-2.6.13-test-recorder-includes.patch   | 36 ++++++++++++++++++++++
 2 files changed, 40 insertions(+)

diff --git a/gnome-extra/cinnamon/cinnamon-2.6.13.ebuild b/gnome-extra/cinnamon/cinnamon-2.6.13.ebuild
index 76f706b..5f1d536 100644
--- a/gnome-extra/cinnamon/cinnamon-2.6.13.ebuild
+++ b/gnome-extra/cinnamon/cinnamon-2.6.13.ebuild
@@ -160,6 +160,10 @@ src_prepare() {
 	# https://github.com/linuxmint/Cinnamon/issues/3577
 	epatch "${FILESDIR}"/${PN}-2.4.5-gnome-3.14.patch
 
+	# Fix build with clutter[-gtk]
+	# https://github.com/linuxmint/Cinnamon/pull/4600
+	epatch "${FILESDIR}"/${PN}-2.6.13-test-recorder-includes.patch
+
 	# Use pkexec instead of gksu (from Arch)
 	# https://github.com/linuxmint/Cinnamon/issues/3565
 	sed -i 's/gksu/pkexec/' files/usr/bin/cinnamon-settings-users || die

diff --git a/gnome-extra/cinnamon/files/cinnamon-2.6.13-test-recorder-includes.patch b/gnome-extra/cinnamon/files/cinnamon-2.6.13-test-recorder-includes.patch
new file mode 100644
index 0000000..3ed2c3a
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-2.6.13-test-recorder-includes.patch
@@ -0,0 +1,36 @@
+From cf960f096e426521fc898733580d47c725e52953 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Sun, 6 Sep 2015 14:53:48 -0400
+Subject: [PATCH] build: append ST_CFLAGS when building test-recorder
+
+test-recorder #includes st.h, which pulls in lots of headers, some of which
+might not be in TEST_CINNAMON_RECORDER_CFLAGS, depending on how clutter and
+gstreamer were configured.
+
+Fixes build failure reported at https://bugs.gentoo.org/559794 :
+
+In file included from ./st/st-bin.h:27:0,
+                 from st.h:4,
+                 from cinnamon-recorder.c:19:
+./st/st-types.h:26:21: fatal error: gtk/gtk.h: No such file or directory
+---
+ src/Makefile.am | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 3d8fdd3..e6e54a9 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -199,7 +199,8 @@ libcinnamon_la_SOURCES += $(cinnamon_recorder_sources) $(cinnamon_recorder_non_g
+ 
+ noinst_PROGRAMS += test-recorder
+ 
+-test_recorder_CPPFLAGS = $(TEST_CINNAMON_RECORDER_CFLAGS)
++test_recorder_CPPFLAGS = $(TEST_CINNAMON_RECORDER_CFLAGS) \
++                       $(ST_CFLAGS)
+ test_recorder_LDADD = $(TEST_CINNAMON_RECORDER_LIBS) \
+                        libst-1.0.la
+ 
+-- 
+2.5.1
+


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2017-11-27 22:15 Kristian Fiskerstrand
  0 siblings, 0 replies; 10+ messages in thread
From: Kristian Fiskerstrand @ 2017-11-27 22:15 UTC (permalink / raw
  To: gentoo-commits

commit:     7e53e87235caa74039ec782888d2f0c665214d13
Author:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 27 22:07:23 2017 +0000
Commit:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
CommitDate: Mon Nov 27 22:15:03 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e53e872

gnome-extra/cinnamon: Bump min dep versions and reapply wheel patch

Package-Manager: Portage-2.3.13, Repoman-2.3.3

 ...cinnamon-3.6.6.ebuild => cinnamon-3.6.6-r1.ebuild} |  6 ++++--
 gnome-extra/cinnamon/cinnamon-3.6.6.ebuild            | 14 +++++++-------
 .../cinnamon/files/cinnamon-3.6.6-wheel-sudo.patch    | 19 +++++++++++++++++++
 3 files changed, 30 insertions(+), 9 deletions(-)

diff --git a/gnome-extra/cinnamon/cinnamon-3.6.6.ebuild b/gnome-extra/cinnamon/cinnamon-3.6.6-r1.ebuild
similarity index 97%
copy from gnome-extra/cinnamon/cinnamon-3.6.6.ebuild
copy to gnome-extra/cinnamon/cinnamon-3.6.6-r1.ebuild
index 16d2c5e028c..8ecd59c4bce 100644
--- a/gnome-extra/cinnamon/cinnamon-3.6.6.ebuild
+++ b/gnome-extra/cinnamon/cinnamon-3.6.6-r1.ebuild
@@ -87,8 +87,6 @@ RDEPEND="${COMMON_DEPEND}
 	>=gnome-extra/cinnamon-session-2.4
 	>=gnome-extra/cinnamon-settings-daemon-2.4
 
-	>=sys-apps/accountsservice-0.6.14[introspection]
-
 	>=app-accessibility/caribou-0.3
 
 	x11-misc/xdg-utils
@@ -147,6 +145,10 @@ src_prepare() {
 	# Fix automagic gnome-bluetooth dep, bug #398145
 	eapply "${FILESDIR}"/${PN}-2.2.6-automagic-gnome-bluetooth.patch
 
+	# Use wheel group instead of sudo (from Fedora/Arch)
+	# https://github.com/linuxmint/Cinnamon/issues/3576
+	eapply "${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch
+
 	# Use pkexec instead of gksu (from Arch)
 	# https://github.com/linuxmint/Cinnamon/issues/3565
 	sed -i 's/gksu/pkexec/' files/usr/bin/cinnamon-settings-users || die

diff --git a/gnome-extra/cinnamon/cinnamon-3.6.6.ebuild b/gnome-extra/cinnamon/cinnamon-3.6.6.ebuild
index 16d2c5e028c..23734530bbd 100644
--- a/gnome-extra/cinnamon/cinnamon-3.6.6.ebuild
+++ b/gnome-extra/cinnamon/cinnamon-3.6.6.ebuild
@@ -41,9 +41,9 @@ COMMON_DEPEND="${PYTHON_DEPS}
 	dev-libs/libxml2:2
 	gnome-base/gconf:2[introspection]
 	gnome-base/librsvg
-	>=gnome-extra/cinnamon-desktop-2.4:0=[introspection]
-	>=gnome-extra/cinnamon-menus-3.0[introspection]
-	>=gnome-extra/cjs-3.2.0
+	>=gnome-extra/cinnamon-desktop-3.6:0=[introspection]
+	>=gnome-extra/cinnamon-menus-3.6[introspection]
+	>=gnome-extra/cjs-3.6.0
 	>=media-libs/clutter-1.10:1.0[introspection]
 	media-libs/cogl:1.0=[introspection]
 	>=gnome-base/gsettings-desktop-schemas-2.91.91
@@ -57,7 +57,7 @@ COMMON_DEPEND="${PYTHON_DEPS}
 	>=x11-libs/startup-notification-0.11
 	x11-libs/libX11
 	>=x11-libs/libXfixes-5.0
-	>=x11-wm/muffin-3.2.0[introspection]
+	>=x11-wm/muffin-3.6.0[introspection]
 	networkmanager? (
 		gnome-base/libgnome-keyring
 		>=net-misc/networkmanager-0.8.999:=[introspection] )
@@ -107,9 +107,9 @@ RDEPEND="${COMMON_DEPEND}
 	x11-themes/gnome-themes-standard
 	x11-themes/adwaita-icon-theme
 
-	>=gnome-extra/nemo-2.4
-	>=gnome-extra/cinnamon-control-center-2.4
-	>=gnome-extra/cinnamon-screensaver-2.4
+	>=gnome-extra/nemo-3.6
+	>=gnome-extra/cinnamon-control-center-3.6
+	>=gnome-extra/cinnamon-screensaver-3.6
 
 	gnome-extra/polkit-gnome
 

diff --git a/gnome-extra/cinnamon/files/cinnamon-3.6.6-wheel-sudo.patch b/gnome-extra/cinnamon/files/cinnamon-3.6.6-wheel-sudo.patch
new file mode 100644
index 00000000000..50512c3ab37
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-3.6.6-wheel-sudo.patch
@@ -0,0 +1,19 @@
+diff --git a/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py b/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py
+index 8028727..85497c8 100755
+--- a/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py
++++ b/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py
+@@ -839,11 +839,11 @@ class Module:
+             pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size("/usr/share/cinnamon/faces/user-generic.png", 48, 48)
+             description = "<b>%s</b>\n%s" % (fullname, username)
+             piter = self.users.append(None, [new_user, pixbuf, description])
+-            # Add the user to his/her own group and sudo if Administrator was selected
++            # Add the user to his/her own group and wheel if Administrator was selected
+             if dialog.account_type_combo.get_active() == 1:
+-                subprocess.call(["usermod", username, "-G", "%s,sudo,nopasswdlogin" % username])
++                subprocess.call(["usermod", username, "-G", "%s,wheel,nopasswdlogin" % username])
+             else:
+-                subprocess.call(["usermod", username, "-G", "%s,nopasswdlogin" % username])
++                subprocess.call(["usermod", username, "-G", "%s" % username])
+             self.load_groups()
+         dialog.destroy()
+ 


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2018-07-31  8:38 Kristian Fiskerstrand
  0 siblings, 0 replies; 10+ messages in thread
From: Kristian Fiskerstrand @ 2018-07-31  8:38 UTC (permalink / raw
  To: gentoo-commits

commit:     38cdad5df60731d57bfd02d4413fa8e9071e5e9c
Author:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  4 10:30:04 2018 +0000
Commit:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
CommitDate: Tue Jul 31 08:34:29 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=38cdad5d

gnome-extra/cinnamon: New upstream version 3.8.8

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 gnome-extra/cinnamon/Manifest                      |   1 +
 gnome-extra/cinnamon/cinnamon-3.8.8.ebuild         | 207 +++++++++++++++++++++
 ...amon-3.8.0-gnome-background-compatibility.patch |  25 +++
 3 files changed, 233 insertions(+)

diff --git a/gnome-extra/cinnamon/Manifest b/gnome-extra/cinnamon/Manifest
index d5fec8d0789..d50a6456091 100644
--- a/gnome-extra/cinnamon/Manifest
+++ b/gnome-extra/cinnamon/Manifest
@@ -1 +1,2 @@
 DIST cinnamon-3.6.6.tar.gz 2211080 BLAKE2B a5be448413532b6cc84c77d17e56739a8c2f3c26f21fac3fcdcaeda127a00e1a8f7d623964c4040f77624da06795eb607491aef55bf31fcb291b074ee75930f9 SHA512 9bd153508458bae2f99a451620fe5e80e45cae0e10cf113b07ca2c0a76cd16e84c4a6d743c659ef41ab91066df025f78a0ea2005a3d34ddd065fe88f358b6642
+DIST cinnamon-3.8.8.tar.gz 2234388 BLAKE2B edc27a670d788673602536f960e2859f6cc15a52ebd12cd741821c4455664ca6bfc6f2b2e3282a0797b15bf93a33208f4f4458df7b2cbe17e50d90412811265c SHA512 5f8acf181fde8d9156ef8767f97b24e207f6c44975e5ef97e812fcdd3b2d5ce4c921297b679ad1ade6fa8e4f9c544b74143f4d925d022cc95d6c71561ab40b53

diff --git a/gnome-extra/cinnamon/cinnamon-3.8.8.ebuild b/gnome-extra/cinnamon/cinnamon-3.8.8.ebuild
new file mode 100644
index 00000000000..26e4c59984c
--- /dev/null
+++ b/gnome-extra/cinnamon/cinnamon-3.8.8.ebuild
@@ -0,0 +1,207 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+PYTHON_REQ_USE="xml"
+
+inherit autotools eutils flag-o-matic gnome2 multilib pax-utils python-r1
+
+DESCRIPTION="A fork of GNOME Shell with layout similar to GNOME 2"
+HOMEPAGE="http://developer.linuxmint.com/"
+
+MY_PV="${PV/_p/-UP}"
+MY_P="${PN}-${MY_PV}"
+
+SRC_URI="https://github.com/linuxmint/Cinnamon/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+
+IUSE="+nls"
+
+# We need *both* python 2.x and 3.x
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	|| ( $(python_gen_useflags 'python2*') )
+	|| ( $(python_gen_useflags 'python3*') )
+"
+
+KEYWORDS="~amd64 ~x86"
+
+COMMON_DEPEND="${PYTHON_DEPS}
+	app-accessibility/at-spi2-atk:2
+	app-misc/ca-certificates
+	dev-libs/dbus-glib
+	>=dev-libs/glib-2.35.0:2[dbus]
+	>=dev-libs/gobject-introspection-0.10.1:=
+	>=dev-libs/json-glib-0.13.2
+	>=dev-libs/libcroco-0.6.2:0.6
+	dev-libs/libxml2:2
+	gnome-base/gconf:2[introspection]
+	gnome-base/librsvg
+	>=gnome-extra/cinnamon-desktop-3.6:0=[introspection]
+	>=gnome-extra/cinnamon-menus-3.6[introspection]
+	>=gnome-extra/cjs-3.8.0
+	>=media-libs/clutter-1.10:1.0[introspection]
+	media-libs/cogl:1.0=[introspection]
+	>=gnome-base/gsettings-desktop-schemas-2.91.91
+	media-libs/gstreamer:1.0
+	media-libs/gst-plugins-base:1.0
+	net-libs/libsoup:2.4[introspection]
+	>=sys-auth/polkit-0.100[introspection]
+	x11-libs/gdk-pixbuf:2[introspection]
+	>=x11-libs/gtk+-3.12.0:3[introspection]
+	x11-libs/pango[introspection]
+	>=x11-libs/startup-notification-0.11
+	x11-libs/libX11
+	>=x11-libs/libXfixes-5.0
+	>=x11-wm/muffin-3.8.0[introspection]
+"
+# Runtime-only deps are probably incomplete and approximate.
+# Each block:
+# 2. Introspection stuff + dconf needed via imports.gi.*
+# 3. gnome-session is needed for gnome-session-quit
+# 4. Control shell settings
+# 5. accountsservice is needed for GdmUserManager (0.6.14 needed for fast
+#    user switching with gdm-3.1.x)
+# 6. caribou needed for on-screen keyboard
+# 7. xdg-utils needed for xdg-open, used by extension tool
+# 8. gconf-python, imaging, lxml needed for cinnamon-settings
+# 9. gnome-icon-theme-symbolic needed for various icons
+# 10. pygobject needed for menu editor
+# 11. nemo - default file manager, tightly integrated with cinnamon
+# 12. polkit-gnome - explicitly autostarted by us
+# TODO(lxnay): fix error: libgnome-desktop/gnome-rr-labeler.h: No such file or directory
+RDEPEND="${COMMON_DEPEND}
+	>=gnome-base/dconf-0.4.1
+	>=gnome-base/libgnomekbd-2.91.4[introspection]
+	|| ( sys-power/upower[introspection] sys-power/upower-pm-utils[introspection] )
+
+	>=gnome-extra/cinnamon-session-3.8
+	>=gnome-extra/cinnamon-settings-daemon-3.8
+
+	>=app-accessibility/caribou-0.3
+
+	x11-misc/xdg-utils
+	x11-libs/xapps[introspection]
+
+	dev-python/dbus-python[${PYTHON_USEDEP}]
+	dev-python/pygobject:3[${PYTHON_USEDEP}]
+	$(python_gen_cond_dep 'dev-python/gconf-python:2[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/lxml[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pexpect[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pycairo[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pyinotify[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pypam[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pillow[${PYTHON_USEDEP}]' 'python2*')
+
+	x11-themes/gnome-themes-standard
+	x11-themes/adwaita-icon-theme
+
+	>=gnome-extra/nemo-3.8
+	>=gnome-extra/cinnamon-control-center-3.8
+	>=gnome-extra/cinnamon-screensaver-3.8
+
+	gnome-extra/polkit-gnome
+
+	nls? ( >=gnome-extra/cinnamon-translations-3.8 )
+"
+DEPEND="${COMMON_DEPEND}
+	$(python_gen_cond_dep 'dev-python/polib[${PYTHON_USEDEP}]' 'python2*')
+	dev-util/gtk-doc
+	>=dev-util/intltool-0.4
+	>=sys-devel/gettext-0.17
+	virtual/pkgconfig
+	gnome-base/gnome-common
+	!!=dev-lang/spidermonkey-1.8.2*
+"
+# libmozjs.so is picked up from /usr/lib while compiling, so block at build-time
+# https://bugs.gentoo.org/show_bug.cgi?id=360413
+
+S="${WORKDIR}/Cinnamon-${PV}"
+
+pkg_setup() {
+	python_setup
+}
+
+src_prepare() {
+	# Fix backgrounds path as cinnamon doesn't provide them
+	# https://github.com/linuxmint/Cinnamon/issues/3575
+	eapply "${FILESDIR}"/${PN}-3.8.0-gnome-background-compatibility.patch
+
+	# Use wheel group instead of sudo (from Fedora/Arch)
+	# https://github.com/linuxmint/Cinnamon/issues/3576
+	eapply "${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch
+
+	# Use pkexec instead of gksu (from Arch)
+	# https://github.com/linuxmint/Cinnamon/issues/3565
+	sed -i 's/gksu/pkexec/' files/usr/bin/cinnamon-settings-users || die
+
+	# Add polkit agent to required components (from Fedora/Arch), bug #523958
+	# https://github.com/linuxmint/Cinnamon/issues/3579
+	sed -i 's/RequiredComponents=\(.*\)$/RequiredComponents=\1polkit-gnome-authentication-agent-1;/' \
+		files/usr/share/cinnamon-session/sessions/cinnamon*.session || die
+
+	# python 2-and-3 shebang fixing craziness
+	local p
+	python_setup 'python3*'
+	for p in $(grep -rl '#!.*python3'); do
+		python_fix_shebang "${p}"
+	done
+
+	python_setup 'python2*'
+	for p in $(grep -rl '#!.*python[^3]'); do
+		python_fix_shebang "${p}"
+	done
+
+	eautoreconf
+	gnome2_src_prepare
+}
+
+src_configure() {
+	gnome2_src_configure \
+		--libdir="${EPREFIX}/usr/$(get_libdir)" \
+		--with-ca-certificates="${EPREFIX}/etc/ssl/certs/ca-certificates.crt" \
+		BROWSER_PLUGIN_DIR="${EPREFIX}/usr/$(get_libdir)/nsbrowser/plugins"
+}
+
+src_install() {
+	gnome2_src_install
+	python_optimize "${ED}"usr/$(get_libdir)/cinnamon-*
+
+	# Required for gnome-shell on hardened/PaX, bug #398941
+	pax-mark mr "${ED}usr/bin/cinnamon"
+
+	# Doesn't exist on Gentoo, causing this to be a dead symlink
+	rm -f "${ED}etc/xdg/menus/cinnamon-applications-merged" || die
+
+	# Ensure authentication-agent is started, bug #523958
+	# https://github.com/linuxmint/Cinnamon/issues/3579
+	insinto /etc/xdg/autostart/
+	doins "${FILESDIR}"/polkit-cinnamon-authentication-agent-1.desktop
+}
+
+pkg_postinst() {
+	gnome2_pkg_postinst
+
+	if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+	   ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+		ewarn "To make use of Cinnamon's built-in screen recording utility,"
+		ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+		ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+		ewarn "org.cinnamon.recorder/pipeline to what you want to use."
+	fi
+
+	if ! has_version ">=x11-base/xorg-server-1.11"; then
+		ewarn "If you use multiple screens, it is highly recommended that you"
+		ewarn "upgrade to >=x11-base/xorg-server-1.11 to be able to make use of"
+		ewarn "pointer barriers which will make it easier to use hot corners."
+	fi
+
+	if has_version "<x11-drivers/ati-drivers-12"; then
+		ewarn "Cinnamon has been reported to show graphical corruption under"
+		ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to"
+		ewarn "open-source drivers."
+	fi
+}

diff --git a/gnome-extra/cinnamon/files/cinnamon-3.8.0-gnome-background-compatibility.patch b/gnome-extra/cinnamon/files/cinnamon-3.8.0-gnome-background-compatibility.patch
new file mode 100644
index 00000000000..6f802fee658
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-3.8.0-gnome-background-compatibility.patch
@@ -0,0 +1,25 @@
+From 21710409c0ed8acfbad98131d1664006d32181bf Mon Sep 17 00:00:00 2001
+From: Kristian Fiskerstrand <kf@sumptuouscapital.com>
+Date: Sat, 30 Jun 2018 20:24:55 +0200
+Subject: [PATCH] gnome-background-compatibility
+
+---
+ files/usr/share/cinnamon/cinnamon-settings/modules/cs_backgrounds.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/files/usr/share/cinnamon/cinnamon-settings/modules/cs_backgrounds.py b/files/usr/share/cinnamon/cinnamon-settings/modules/cs_backgrounds.py
+index 6e279ed..ec47983 100755
+--- a/files/usr/share/cinnamon/cinnamon-settings/modules/cs_backgrounds.py
++++ b/files/usr/share/cinnamon/cinnamon-settings/modules/cs_backgrounds.py
+@@ -268,7 +268,7 @@ class Module:
+     def get_system_backgrounds(self):
+         picture_list = []
+         folder_list = []
+-        properties_dir = "/usr/share/cinnamon-background-properties"
++        properties_dir = "/usr/share/gnome-background-properties"
+         backgrounds = []
+         if os.path.exists(properties_dir):
+             for i in os.listdir(properties_dir):
+-- 
+2.16.4
+


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2019-05-27 13:15 Kristian Fiskerstrand
  0 siblings, 0 replies; 10+ messages in thread
From: Kristian Fiskerstrand @ 2019-05-27 13:15 UTC (permalink / raw
  To: gentoo-commits

commit:     0d906a3b88ab0f31370c7595f8093765b9f0791d
Author:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
AuthorDate: Mon May 27 13:13:10 2019 +0000
Commit:     Kristian Fiskerstrand <k_f <AT> gentoo <DOT> org>
CommitDate: Mon May 27 13:13:47 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0d906a3b

gnome-extra/cinnamon: Add fix for pillow >= 6.0.0

Closes: https://bugs.gentoo.org/684158
Signed-off-by: Kristian Fiskerstrand <k_f <AT> gentoo.org>
Package-Manager: Portage-2.3.66, Repoman-2.3.11

 gnome-extra/cinnamon/cinnamon-4.0.3-r2.ebuild      | 209 +++++++++++++++++++++
 .../files/cinnamon-4.0-fix-pillow-settings.patch   |  43 +++++
 2 files changed, 252 insertions(+)

diff --git a/gnome-extra/cinnamon/cinnamon-4.0.3-r2.ebuild b/gnome-extra/cinnamon/cinnamon-4.0.3-r2.ebuild
new file mode 100644
index 00000000000..312c789f23f
--- /dev/null
+++ b/gnome-extra/cinnamon/cinnamon-4.0.3-r2.ebuild
@@ -0,0 +1,209 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+PYTHON_COMPAT=( python{2_7,3_5,3_6} )
+PYTHON_REQ_USE="xml"
+
+inherit autotools eutils flag-o-matic gnome2 multilib pax-utils python-r1
+
+DESCRIPTION="A fork of GNOME Shell with layout similar to GNOME 2"
+HOMEPAGE="http://developer.linuxmint.com/"
+
+MY_PV="${PV/_p/-UP}"
+MY_P="${PN}-${MY_PV}"
+
+SRC_URI="https://github.com/linuxmint/Cinnamon/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+
+IUSE="+nls"
+
+# We need *both* python 2.x and 3.x
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	|| ( $(python_gen_useflags 'python2*') )
+	|| ( $(python_gen_useflags 'python3*') )
+"
+
+KEYWORDS="~amd64 ~x86"
+
+COMMON_DEPEND="${PYTHON_DEPS}
+	app-accessibility/at-spi2-atk:2
+	app-misc/ca-certificates
+	dev-libs/dbus-glib
+	>=dev-libs/glib-2.35.0:2[dbus]
+	>=dev-libs/gobject-introspection-0.10.1:=
+	>=dev-libs/json-glib-0.13.2
+	>=dev-libs/libcroco-0.6.2:0.6
+	dev-libs/libxml2:2
+	gnome-base/librsvg
+	>=gnome-extra/cinnamon-desktop-4.0:0=[introspection]
+	>=gnome-extra/cinnamon-menus-4.0[introspection]
+	>=gnome-extra/cjs-4.0.0[cairo]
+	>=media-libs/clutter-1.10:1.0[introspection]
+	media-libs/cogl:1.0=[introspection]
+	>=gnome-base/gsettings-desktop-schemas-2.91.91
+	media-libs/gstreamer:1.0
+	media-libs/gst-plugins-base:1.0
+	net-libs/libsoup:2.4[introspection]
+	>=sys-auth/polkit-0.100[introspection]
+	x11-libs/gdk-pixbuf:2[introspection]
+	>=x11-libs/gtk+-3.12.0:3[introspection]
+	x11-libs/pango[introspection]
+	>=x11-libs/startup-notification-0.11
+	x11-libs/libX11
+	>=x11-libs/libXfixes-5.0
+	>=x11-wm/muffin-4.0.0[introspection]
+	dev-libs/keybinder:3[introspection]
+	>=x11-libs/libnotify-0.7.3:0=[introspection]
+"
+# Runtime-only deps are probably incomplete and approximate.
+# Each block:
+# 2. Introspection stuff + dconf needed via imports.gi.*
+# 3. gnome-session is needed for gnome-session-quit
+# 4. Control shell settings
+# 5. accountsservice is needed for GdmUserManager (0.6.14 needed for fast
+#    user switching with gdm-3.1.x)
+# 6. caribou needed for on-screen keyboard
+# 7. xdg-utils needed for xdg-open, used by extension tool
+# 8. imaging, lxml needed for cinnamon-settings
+# 9. gnome-icon-theme-symbolic needed for various icons
+# 10. pygobject needed for menu editor
+# 11. nemo - default file manager, tightly integrated with cinnamon
+# 12. polkit-gnome - explicitly autostarted by us
+# TODO(lxnay): fix error: libgnome-desktop/gnome-rr-labeler.h: No such file or directory
+RDEPEND="${COMMON_DEPEND}
+	>=gnome-base/dconf-0.4.1
+	>=gnome-base/libgnomekbd-2.91.4[introspection]
+	sys-power/upower[introspection]
+
+	>=gnome-extra/cinnamon-session-4.0
+	>=gnome-extra/cinnamon-settings-daemon-4.0
+
+	>=app-accessibility/caribou-0.3
+
+	x11-misc/xdg-utils
+	x11-libs/xapps[introspection]
+
+	dev-python/dbus-python[${PYTHON_USEDEP}]
+	dev-python/pygobject:3[${PYTHON_USEDEP}]
+	$(python_gen_cond_dep 'dev-python/lxml[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pexpect[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pycairo[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pyinotify[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pypam[${PYTHON_USEDEP}]' 'python2*')
+	$(python_gen_cond_dep 'dev-python/pillow[${PYTHON_USEDEP}]' 'python2*')
+
+	x11-themes/gnome-themes-standard
+	x11-themes/adwaita-icon-theme
+
+	>=gnome-extra/nemo-4.0
+	>=gnome-extra/cinnamon-control-center-4.0
+	>=gnome-extra/cinnamon-screensaver-4.0
+
+	gnome-extra/polkit-gnome
+
+	nls? ( >=gnome-extra/cinnamon-translations-4.0 )
+"
+DEPEND="${COMMON_DEPEND}
+	$(python_gen_cond_dep 'dev-python/polib[${PYTHON_USEDEP}]' 'python2*')
+	dev-util/gtk-doc
+	>=dev-util/intltool-0.4
+	>=sys-devel/gettext-0.17
+	virtual/pkgconfig
+	gnome-base/gnome-common
+	!!=dev-lang/spidermonkey-1.8.2*
+"
+# libmozjs.so is picked up from /usr/lib while compiling, so block at build-time
+# https://bugs.gentoo.org/show_bug.cgi?id=360413
+
+S="${WORKDIR}/Cinnamon-${PV}"
+
+pkg_setup() {
+	python_setup
+}
+
+src_prepare() {
+	# Fix backgrounds path as cinnamon doesn't provide them
+	# https://github.com/linuxmint/Cinnamon/issues/3575
+	eapply "${FILESDIR}"/${PN}-3.8.0-gnome-background-compatibility.patch
+
+	# Use wheel group instead of sudo (from Fedora/Arch)
+	# https://github.com/linuxmint/Cinnamon/issues/3576
+	eapply "${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch
+
+	eapply -p0 "${FILESDIR}"/${PN}-4.0-fix-pillow-settings.patch
+
+	# Use pkexec instead of gksu (from Arch)
+	# https://github.com/linuxmint/Cinnamon/issues/3565
+	sed -i 's/gksu/pkexec/' files/usr/bin/cinnamon-settings-users || die
+
+	# Add polkit agent to required components (from Fedora/Arch), bug #523958
+	# https://github.com/linuxmint/Cinnamon/issues/3579
+	sed -i 's/RequiredComponents=\(.*\)$/RequiredComponents=\1polkit-gnome-authentication-agent-1;/' \
+		files/usr/share/cinnamon-session/sessions/cinnamon*.session || die
+
+	# python 2-and-3 shebang fixing craziness
+	local p
+	python_setup 'python3*'
+	for p in $(grep -rl '#!.*python3'); do
+		python_fix_shebang "${p}"
+	done
+
+	python_setup 'python2*'
+	for p in $(grep -rl '#!.*python[^3]'); do
+		python_fix_shebang "${p}"
+	done
+
+	eautoreconf
+	gnome2_src_prepare
+}
+
+src_configure() {
+	gnome2_src_configure \
+		--libdir="${EPREFIX}/usr/$(get_libdir)" \
+		--with-ca-certificates="${EPREFIX}/etc/ssl/certs/ca-certificates.crt" \
+		BROWSER_PLUGIN_DIR="${EPREFIX}/usr/$(get_libdir)/nsbrowser/plugins"
+}
+
+src_install() {
+	gnome2_src_install
+	python_optimize "${ED}"usr/$(get_libdir)/cinnamon-*
+
+	# Required for gnome-shell on hardened/PaX, bug #398941
+	pax-mark mr "${ED}usr/bin/cinnamon"
+
+	# Doesn't exist on Gentoo, causing this to be a dead symlink
+	rm -f "${ED}etc/xdg/menus/cinnamon-applications-merged" || die
+
+	# Ensure authentication-agent is started, bug #523958
+	# https://github.com/linuxmint/Cinnamon/issues/3579
+	insinto /etc/xdg/autostart/
+	doins "${FILESDIR}"/polkit-cinnamon-authentication-agent-1.desktop
+}
+
+pkg_postinst() {
+	gnome2_pkg_postinst
+
+	if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+	   ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+		ewarn "To make use of Cinnamon's built-in screen recording utility,"
+		ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+		ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+		ewarn "org.cinnamon.recorder/pipeline to what you want to use."
+	fi
+
+	if ! has_version ">=x11-base/xorg-server-1.11"; then
+		ewarn "If you use multiple screens, it is highly recommended that you"
+		ewarn "upgrade to >=x11-base/xorg-server-1.11 to be able to make use of"
+		ewarn "pointer barriers which will make it easier to use hot corners."
+	fi
+
+	if has_version "<x11-drivers/ati-drivers-12"; then
+		ewarn "Cinnamon has been reported to show graphical corruption under"
+		ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to"
+		ewarn "open-source drivers."
+	fi
+}

diff --git a/gnome-extra/cinnamon/files/cinnamon-4.0-fix-pillow-settings.patch b/gnome-extra/cinnamon/files/cinnamon-4.0-fix-pillow-settings.patch
new file mode 100644
index 00000000000..e06c86b8f3d
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-4.0-fix-pillow-settings.patch
@@ -0,0 +1,43 @@
+--- files/usr/share/cinnamon/cinnamon-settings/bin/imtools.py.orig	2019-03-21 16:46:14 UTC
++++ files/usr/share/cinnamon/cinnamon-settings/bin/imtools.py
+@@ -620,31 +620,6 @@ def has_transparency(image):
+         has_alpha(image)
+ 
+ 
+-if Image.VERSION == '1.1.7':
+-
+-    def split(image):
+-        """Work around for bug in Pil 1.1.7
+-
+-        :param image: input image
+-        :type image: PIL image object
+-        :returns: the different color bands of the image (eg R, G, B)
+-        :rtype: tuple
+-        """
+-        image.load()
+-        return image.split()
+-else:
+-
+-    def split(image):
+-        """Work around for bug in Pil 1.1.7
+-
+-        :param image: input image
+-        :type image: PIL image object
+-        :returns: the different color bands of the image (eg R, G, B)
+-        :rtype: tuple
+-        """
+-        return image.split()
+-
+-
+ def get_alpha(image):
+     """Gets the image alpha band. Can handles P mode images with transpareny.
+     Returns a band with all values set to 255 if no alpha band exists.
+@@ -655,7 +630,7 @@ def get_alpha(image):
+     :rtype: single band image object
+     """
+     if has_alpha(image):
+-        return split(image)[-1]
++        return image.split()[-1]
+     if image.mode == 'P' and 'transparency' in image.info:
+         return image.convert('RGBA').split()[-1]
+     # No alpha layer, create one.


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2020-05-31 19:05 Matt Turner
  0 siblings, 0 replies; 10+ messages in thread
From: Matt Turner @ 2020-05-31 19:05 UTC (permalink / raw
  To: gentoo-commits

commit:     397183c7b99af3ee77204fa58d22a70d7b7e8ff6
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun May 31 18:45:11 2020 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sun May 31 19:04:29 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=397183c7

gnome-extra/cinnamon: Drop old versions

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 gnome-extra/cinnamon/Manifest                      |   1 -
 gnome-extra/cinnamon/cinnamon-4.0.3-r2.ebuild      | 209 ---------------------
 .../files/cinnamon-4.0-fix-pillow-settings.patch   |  43 -----
 3 files changed, 253 deletions(-)

diff --git a/gnome-extra/cinnamon/Manifest b/gnome-extra/cinnamon/Manifest
index 396de5e690f..62012379d1a 100644
--- a/gnome-extra/cinnamon/Manifest
+++ b/gnome-extra/cinnamon/Manifest
@@ -1,2 +1 @@
-DIST cinnamon-4.0.3.tar.gz 2325905 BLAKE2B 8ff07f8f76ae0c0e973a9113e258a31948afc68066e27ccd7e9576d6beb5328aa8cf2c5d97e6c564f3eee9a5bf66a23241270de3a82a1fb56fcf79680b219294 SHA512 d29295dc08971ff6dbd71066d700037718fdb1399bbc4f483903be7a10bfa509a904db9de064a263acb6956b4a1623c1e37a0a9f28819074eb3a93d3a5866db1
 DIST cinnamon-4.4.8.tar.gz 2285252 BLAKE2B 8049093582c57d3e60f570561265b4edbc117e749e228b2d9638ec3afb2a33c1675604e4e8283c683a0fb54608f742552e89da8fc57fafd01bb6ba1567dc1fe3 SHA512 aedf9f470c04bd0a36cdc34546ed92d5709325e3ef2c0f40e8b026a76964231fc950c4a46bb6a87d46a2fa0f1cac50e7dcbe914008e18550b5fc1e27c7135978

diff --git a/gnome-extra/cinnamon/cinnamon-4.0.3-r2.ebuild b/gnome-extra/cinnamon/cinnamon-4.0.3-r2.ebuild
deleted file mode 100644
index 5362f3afea6..00000000000
--- a/gnome-extra/cinnamon/cinnamon-4.0.3-r2.ebuild
+++ /dev/null
@@ -1,209 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-GNOME2_LA_PUNT="yes"
-PYTHON_COMPAT=( python{2_7,3_6} )
-PYTHON_REQ_USE="xml"
-
-inherit autotools eutils flag-o-matic gnome2 multilib pax-utils python-r1
-
-DESCRIPTION="A fork of GNOME Shell with layout similar to GNOME 2"
-HOMEPAGE="http://developer.linuxmint.com/projects/cinnamon-projects.html"
-
-MY_PV="${PV/_p/-UP}"
-MY_P="${PN}-${MY_PV}"
-
-SRC_URI="https://github.com/linuxmint/Cinnamon/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-
-IUSE="+nls"
-
-# We need *both* python 2.x and 3.x
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
-	|| ( $(python_gen_useflags 'python2*') )
-	|| ( $(python_gen_useflags 'python3*') )
-"
-
-KEYWORDS="amd64 x86"
-
-COMMON_DEPEND="${PYTHON_DEPS}
-	app-accessibility/at-spi2-atk:2
-	app-misc/ca-certificates
-	dev-libs/dbus-glib
-	>=dev-libs/glib-2.35.0:2[dbus]
-	>=dev-libs/gobject-introspection-0.10.1:=
-	>=dev-libs/json-glib-0.13.2
-	>=dev-libs/libcroco-0.6.2:0.6
-	dev-libs/libxml2:2
-	gnome-base/librsvg
-	>=gnome-extra/cinnamon-desktop-4.0:0=[introspection]
-	>=gnome-extra/cinnamon-menus-4.0[introspection]
-	>=gnome-extra/cjs-4.0.0[cairo]
-	>=media-libs/clutter-1.10:1.0[introspection]
-	media-libs/cogl:1.0=[introspection]
-	>=gnome-base/gsettings-desktop-schemas-2.91.91
-	media-libs/gstreamer:1.0
-	media-libs/gst-plugins-base:1.0
-	net-libs/libsoup:2.4[introspection]
-	>=sys-auth/polkit-0.100[introspection]
-	x11-libs/gdk-pixbuf:2[introspection]
-	>=x11-libs/gtk+-3.12.0:3[introspection]
-	x11-libs/pango[introspection]
-	>=x11-libs/startup-notification-0.11
-	x11-libs/libX11
-	>=x11-libs/libXfixes-5.0
-	>=x11-wm/muffin-4.0.0[introspection]
-	dev-libs/keybinder:3[introspection]
-	>=x11-libs/libnotify-0.7.3:0=[introspection]
-"
-# Runtime-only deps are probably incomplete and approximate.
-# Each block:
-# 2. Introspection stuff + dconf needed via imports.gi.*
-# 3. gnome-session is needed for gnome-session-quit
-# 4. Control shell settings
-# 5. accountsservice is needed for GdmUserManager (0.6.14 needed for fast
-#    user switching with gdm-3.1.x)
-# 6. caribou needed for on-screen keyboard
-# 7. xdg-utils needed for xdg-open, used by extension tool
-# 8. imaging, lxml needed for cinnamon-settings
-# 9. gnome-icon-theme-symbolic needed for various icons
-# 10. pygobject needed for menu editor
-# 11. nemo - default file manager, tightly integrated with cinnamon
-# 12. polkit-gnome - explicitly autostarted by us
-# TODO(lxnay): fix error: libgnome-desktop/gnome-rr-labeler.h: No such file or directory
-RDEPEND="${COMMON_DEPEND}
-	>=gnome-base/dconf-0.4.1
-	>=gnome-base/libgnomekbd-2.91.4[introspection]
-	sys-power/upower[introspection]
-
-	>=gnome-extra/cinnamon-session-4.0
-	>=gnome-extra/cinnamon-settings-daemon-4.0
-
-	>=app-accessibility/caribou-0.3
-
-	x11-misc/xdg-utils
-	x11-libs/xapps[introspection]
-
-	dev-python/dbus-python[${PYTHON_USEDEP}]
-	dev-python/pygobject:3[${PYTHON_USEDEP}]
-	$(python_gen_cond_dep 'dev-python/lxml[${PYTHON_USEDEP}]' 'python2*')
-	$(python_gen_cond_dep 'dev-python/pexpect[${PYTHON_USEDEP}]' 'python2*')
-	$(python_gen_cond_dep 'dev-python/pycairo[${PYTHON_USEDEP}]' 'python2*')
-	$(python_gen_cond_dep 'dev-python/pyinotify[${PYTHON_USEDEP}]' 'python2*')
-	$(python_gen_cond_dep 'dev-python/pypam[${PYTHON_USEDEP}]' 'python2*')
-	$(python_gen_cond_dep 'dev-python/pillow[${PYTHON_USEDEP}]' 'python2*')
-
-	x11-themes/gnome-themes-standard
-	x11-themes/adwaita-icon-theme
-
-	>=gnome-extra/nemo-4.0
-	>=gnome-extra/cinnamon-control-center-4.0
-	>=gnome-extra/cinnamon-screensaver-4.0
-
-	gnome-extra/polkit-gnome
-
-	nls? ( >=gnome-extra/cinnamon-translations-4.0 )
-"
-DEPEND="${COMMON_DEPEND}
-	$(python_gen_cond_dep 'dev-python/polib[${PYTHON_USEDEP}]' 'python2*')
-	dev-util/gtk-doc
-	>=dev-util/intltool-0.4
-	>=sys-devel/gettext-0.17
-	virtual/pkgconfig
-	gnome-base/gnome-common
-	!!=dev-lang/spidermonkey-1.8.2*
-"
-# libmozjs.so is picked up from /usr/lib while compiling, so block at build-time
-# https://bugs.gentoo.org/show_bug.cgi?id=360413
-
-S="${WORKDIR}/Cinnamon-${PV}"
-
-pkg_setup() {
-	python_setup
-}
-
-src_prepare() {
-	# Fix backgrounds path as cinnamon doesn't provide them
-	# https://github.com/linuxmint/Cinnamon/issues/3575
-	eapply "${FILESDIR}"/${PN}-3.8.0-gnome-background-compatibility.patch
-
-	# Use wheel group instead of sudo (from Fedora/Arch)
-	# https://github.com/linuxmint/Cinnamon/issues/3576
-	eapply "${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch
-
-	eapply -p0 "${FILESDIR}"/${PN}-4.0-fix-pillow-settings.patch
-
-	# Use pkexec instead of gksu (from Arch)
-	# https://github.com/linuxmint/Cinnamon/issues/3565
-	sed -i 's/gksu/pkexec/' files/usr/bin/cinnamon-settings-users || die
-
-	# Add polkit agent to required components (from Fedora/Arch), bug #523958
-	# https://github.com/linuxmint/Cinnamon/issues/3579
-	sed -i 's/RequiredComponents=\(.*\)$/RequiredComponents=\1polkit-gnome-authentication-agent-1;/' \
-		files/usr/share/cinnamon-session/sessions/cinnamon*.session || die
-
-	# python 2-and-3 shebang fixing craziness
-	local p
-	python_setup 'python3*'
-	for p in $(grep -rl '#!.*python3'); do
-		python_fix_shebang "${p}"
-	done
-
-	python_setup 'python2*'
-	for p in $(grep -rl '#!.*python[^3]'); do
-		python_fix_shebang "${p}"
-	done
-
-	eautoreconf
-	gnome2_src_prepare
-}
-
-src_configure() {
-	gnome2_src_configure \
-		--libdir="${EPREFIX}/usr/$(get_libdir)" \
-		--with-ca-certificates="${EPREFIX}/etc/ssl/certs/ca-certificates.crt" \
-		BROWSER_PLUGIN_DIR="${EPREFIX}/usr/$(get_libdir)/nsbrowser/plugins"
-}
-
-src_install() {
-	gnome2_src_install
-	python_optimize "${ED}"usr/$(get_libdir)/cinnamon-*
-
-	# Required for gnome-shell on hardened/PaX, bug #398941
-	pax-mark mr "${ED}usr/bin/cinnamon"
-
-	# Doesn't exist on Gentoo, causing this to be a dead symlink
-	rm -f "${ED}etc/xdg/menus/cinnamon-applications-merged" || die
-
-	# Ensure authentication-agent is started, bug #523958
-	# https://github.com/linuxmint/Cinnamon/issues/3579
-	insinto /etc/xdg/autostart/
-	doins "${FILESDIR}"/polkit-cinnamon-authentication-agent-1.desktop
-}
-
-pkg_postinst() {
-	gnome2_pkg_postinst
-
-	if ! has_version 'media-libs/gst-plugins-good:1.0' || \
-	   ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
-		ewarn "To make use of Cinnamon's built-in screen recording utility,"
-		ewarn "you need to either install media-libs/gst-plugins-good:1.0"
-		ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
-		ewarn "org.cinnamon.recorder/pipeline to what you want to use."
-	fi
-
-	if ! has_version ">=x11-base/xorg-server-1.11"; then
-		ewarn "If you use multiple screens, it is highly recommended that you"
-		ewarn "upgrade to >=x11-base/xorg-server-1.11 to be able to make use of"
-		ewarn "pointer barriers which will make it easier to use hot corners."
-	fi
-
-	if has_version "<x11-drivers/ati-drivers-12"; then
-		ewarn "Cinnamon has been reported to show graphical corruption under"
-		ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to"
-		ewarn "open-source drivers."
-	fi
-}

diff --git a/gnome-extra/cinnamon/files/cinnamon-4.0-fix-pillow-settings.patch b/gnome-extra/cinnamon/files/cinnamon-4.0-fix-pillow-settings.patch
deleted file mode 100644
index e06c86b8f3d..00000000000
--- a/gnome-extra/cinnamon/files/cinnamon-4.0-fix-pillow-settings.patch
+++ /dev/null
@@ -1,43 +0,0 @@
---- files/usr/share/cinnamon/cinnamon-settings/bin/imtools.py.orig	2019-03-21 16:46:14 UTC
-+++ files/usr/share/cinnamon/cinnamon-settings/bin/imtools.py
-@@ -620,31 +620,6 @@ def has_transparency(image):
-         has_alpha(image)
- 
- 
--if Image.VERSION == '1.1.7':
--
--    def split(image):
--        """Work around for bug in Pil 1.1.7
--
--        :param image: input image
--        :type image: PIL image object
--        :returns: the different color bands of the image (eg R, G, B)
--        :rtype: tuple
--        """
--        image.load()
--        return image.split()
--else:
--
--    def split(image):
--        """Work around for bug in Pil 1.1.7
--
--        :param image: input image
--        :type image: PIL image object
--        :returns: the different color bands of the image (eg R, G, B)
--        :rtype: tuple
--        """
--        return image.split()
--
--
- def get_alpha(image):
-     """Gets the image alpha band. Can handles P mode images with transpareny.
-     Returns a band with all values set to 255 if no alpha band exists.
-@@ -655,7 +630,7 @@ def get_alpha(image):
-     :rtype: single band image object
-     """
-     if has_alpha(image):
--        return split(image)[-1]
-+        return image.split()[-1]
-     if image.mode == 'P' and 'transparency' in image.info:
-         return image.convert('RGBA').split()[-1]
-     # No alpha layer, create one.


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2022-01-21 17:15 Sam James
  0 siblings, 0 replies; 10+ messages in thread
From: Sam James @ 2022-01-21 17:15 UTC (permalink / raw
  To: gentoo-commits

commit:     9895f1b67fa7694383ec4a3137198b63d57cd173
Author:     Matthew S. Turnbull <sparky <AT> bluefang-logic <DOT> com>
AuthorDate: Tue Dec 28 04:26:09 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 21 17:13:51 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9895f1b6

gnome-extra/cinnamon: Remove old

Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Matthew S. Turnbull <sparky <AT> bluefang-logic.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 gnome-extra/cinnamon/Manifest                      |   1 -
 gnome-extra/cinnamon/cinnamon-4.8.6.ebuild         | 176 ---------------------
 .../files/cinnamon-4.8.6-build-fixes.patch         |  28 ----
 3 files changed, 205 deletions(-)

diff --git a/gnome-extra/cinnamon/Manifest b/gnome-extra/cinnamon/Manifest
index 452bd8bfd499..fae7a4561542 100644
--- a/gnome-extra/cinnamon/Manifest
+++ b/gnome-extra/cinnamon/Manifest
@@ -1,2 +1 @@
-DIST cinnamon-4.8.6.tar.gz 2378117 BLAKE2B ae98bf81aa3b2f26d33aa1b5a8109b50d969cb3568322159808c23d13fea6a11790d877a446b3ee4a54f5811fddfb5fca220f46bc213ffc2aa4560e344563f9d SHA512 827d93fa72213e00977d6318da25d9b03279666485ed4c4fd45ece9914c7481f39fa98c64940529a7459cc239783caa9427a2a702f77ffb77fb2c38073e42bbd
 DIST cinnamon-5.0.6.tar.gz 2397950 BLAKE2B e54f8ed02fc36c121d15d30aaed4633f7db30bcf3e0179fb5fa0b9f12b42f0a29b341f531eed7ba19f849c0400ee9887ee59b5218f4558586a360d173798aeea SHA512 3ed835b1c41a34dfd1e2eac7746bfa01fe48359c6c3e8085877a4c18b895ea065efc343a855cbdee3fcbfb63aa40166bbe40fa19154ae1544be675411d49a962

diff --git a/gnome-extra/cinnamon/cinnamon-4.8.6.ebuild b/gnome-extra/cinnamon/cinnamon-4.8.6.ebuild
deleted file mode 100644
index 768aacbecf1d..000000000000
--- a/gnome-extra/cinnamon/cinnamon-4.8.6.ebuild
+++ /dev/null
@@ -1,176 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-PYTHON_REQ_USE="xml"
-
-inherit meson gnome2-utils pax-utils python-single-r1 xdg
-
-DESCRIPTION="A fork of GNOME Shell with layout similar to GNOME 2"
-HOMEPAGE="https://projects.linuxmint.com/cinnamon/ https://github.com/linuxmint/cinnamon"
-SRC_URI="https://github.com/linuxmint/cinnamon/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-IUSE="+gstreamer gtk-doc +nls +networkmanager"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-KEYWORDS="amd64 ~arm64 x86"
-
-DEPEND="
-	${PYTHON_DEPS}
-	app-accessibility/at-spi2-atk:2
-	>=dev-libs/glib-2.52.0:2[dbus]
-	>=dev-libs/gobject-introspection-1.29.15:=
-	dev-libs/libxml2:2
-	>=gnome-extra/cinnamon-desktop-4.8:0=
-	>=gnome-extra/cinnamon-menus-4.8
-	>=gnome-extra/cjs-4.8[cairo]
-	net-libs/libsoup:2.4[introspection]
-	sys-apps/dbus
-	>=sys-auth/polkit-0.100[introspection]
-	virtual/opengl
-	x11-libs/gdk-pixbuf:2[introspection]
-	>=x11-libs/gtk+-3.12.0:3[introspection]
-	>=x11-libs/libnotify-0.7.3:0=[introspection]
-	x11-libs/libX11
-	>=x11-libs/libXfixes-5.0
-	x11-libs/pango[introspection]
-	>=x11-libs/startup-notification-0.11
-	>=x11-wm/muffin-4.8.0[introspection]
-
-	gstreamer? (
-		media-libs/gst-plugins-base:1.0
-		media-libs/gstreamer:1.0
-	)
-	networkmanager? (
-		net-misc/networkmanager[introspection]
-	)
-"
-# caribou used by onscreen keyboard
-# libtimezonemap used by datetime settings
-# iso-flag-png (unpackaged) used by keyboard layout settings
-RDEPEND="
-	${DEPEND}
-	>=app-accessibility/caribou-0.3
-	dev-libs/keybinder:3[introspection]
-	dev-libs/libtimezonemap
-	$(python_gen_cond_dep '
-		dev-python/dbus-python[${PYTHON_USEDEP}]
-		dev-python/distro[${PYTHON_USEDEP}]
-		dev-python/pexpect[${PYTHON_USEDEP}]
-		dev-python/pillow[${PYTHON_USEDEP}]
-		dev-python/pycairo[${PYTHON_USEDEP}]
-		dev-python/pygobject:3[${PYTHON_USEDEP}]
-		dev-python/pyinotify[${PYTHON_USEDEP}]
-		dev-python/pypam[${PYTHON_USEDEP}]
-		dev-python/pytz[${PYTHON_USEDEP}]
-		dev-python/setproctitle[${PYTHON_USEDEP}]
-		dev-python/tinycss2[${PYTHON_USEDEP}]
-		dev-python/xapp[${PYTHON_USEDEP}]
-	')
-	>=gnome-base/dconf-0.4.1
-	>=gnome-base/gsettings-desktop-schemas-2.91.91
-	>=gnome-base/libgnomekbd-2.91.4
-	>=gnome-extra/cinnamon-control-center-4.8[networkmanager=]
-	>=gnome-extra/cinnamon-screensaver-4.8
-	>=gnome-extra/cinnamon-session-4.8
-	>=gnome-extra/cinnamon-settings-daemon-4.8
-	>=gnome-extra/nemo-4.8
-	gnome-extra/polkit-gnome
-	net-misc/wget
-	sys-apps/accountsservice[introspection]
-	sys-power/upower[introspection]
-	>=x11-libs/xapps-2.0.5[introspection]
-	x11-misc/xdg-utils
-	x11-themes/adwaita-icon-theme
-	x11-themes/gnome-themes-standard
-
-	nls? (
-		>=gnome-extra/cinnamon-translations-4.8
-	)
-"
-BDEPEND="
-	>=dev-util/intltool-0.40
-	>=sys-devel/gettext-0.17
-	virtual/pkgconfig
-
-	gtk-doc? ( dev-util/gtk-doc )
-"
-
-PATCHES=(
-	# Fix backgrounds path as cinnamon doesn't provide them
-	# https://github.com/linuxmint/Cinnamon/issues/3575
-	"${FILESDIR}"/${PN}-3.8.0-gnome-background-compatibility.patch
-
-	# Use wheel group instead of sudo (from Fedora/Arch)
-	# https://github.com/linuxmint/Cinnamon/issues/3576
-	"${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch
-
-	# GStreamer only needed for recorder
-	# https://github.com/linuxmint/cinnamon/pull/9809
-	"${FILESDIR}"/${PN}-4.8.6-build-fixes.patch
-)
-
-src_prepare() {
-	xdg_src_prepare
-
-	# Add polkit agent to required components
-	# https://github.com/linuxmint/Cinnamon/issues/3579
-	sed -i "s/'REQUIRED', '/&polkit-cinnamon-authentication-agent-1;/" meson.build || die
-
-	# shebang fixing craziness
-	local p
-	for p in $(grep -rl '#!.*python3' || die); do
-		python_fix_shebang "${p}"
-	done
-}
-
-src_configure() {
-	local emesonargs=(
-		$(meson_use gstreamer build_recorder)
-		$(meson_use gtk-doc docs)
-		-Ddisable_networkmanager=$(usex networkmanager false true)
-	)
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	python_optimize "${ED}"/usr/share/cinnamon/
-
-	# Required for gnome-shell on hardened/PaX, bug #398941
-	pax-mark mr "${ED}"/usr/bin/cinnamon
-
-	# Doesn't exist on Gentoo, causing this to be a dead symlink
-	rm "${ED}/etc/xdg/menus/cinnamon-applications-merged" || die
-
-	# Ensure authentication-agent is started, bug #523958
-	# https://github.com/linuxmint/Cinnamon/issues/3579
-	insinto /etc/xdg/autostart/
-	doins "${FILESDIR}"/polkit-cinnamon-authentication-agent-1.desktop
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-	gnome2_schemas_update
-
-	if use gstreamer; then
-		if ! has_version 'media-libs/gst-plugins-good:1.0' || \
-		   ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
-			ewarn "To make use of Cinnamon's built-in screen recording utility,"
-			ewarn "you need to either install media-libs/gst-plugins-good:1.0"
-			ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
-			ewarn "org.cinnamon.recorder/pipeline to what you want to use."
-		fi
-	else
-		ewarn "Cinnamon's built-in screen recording utility is disabled."
-	fi
-}
-
-pkg_postrm() {
-	xdg_pkg_postinst
-	gnome2_schemas_update
-}

diff --git a/gnome-extra/cinnamon/files/cinnamon-4.8.6-build-fixes.patch b/gnome-extra/cinnamon/files/cinnamon-4.8.6-build-fixes.patch
deleted file mode 100644
index bc4476a5892e..000000000000
--- a/gnome-extra/cinnamon/files/cinnamon-4.8.6-build-fixes.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff --git a/meson.build b/meson.build
-index a4d49a16..eff937ac 100644
---- a/meson.build
-+++ b/meson.build
-@@ -36,8 +36,6 @@ gio_unix = dependency('gio-unix-2.0')
- gl = dependency('gl')
- glib_version = '2.52.0'
- glib = dependency('glib-2.0', version: '>= ' + glib_version)
--gstreamer = dependency('gstreamer-1.0')
--gstreamer_base = dependency('gstreamer-base-1.0')
- gtk = dependency('gtk+-3.0', version: '>= 3.12.0')
- muffin = dependency('libmuffin', version: '>= 4.0.3')
- muffinlibdir = muffin.get_pkgconfig_variable('typelibdir')
-@@ -53,6 +51,14 @@ if has_nm
-     dependency('libnm')
- endif
- 
-+if get_option('build_recorder')
-+	gstreamer = dependency('gstreamer-1.0')
-+	gstreamer_base = dependency('gstreamer-base-1.0')
-+else
-+	gstreamer = dependency('', required: false)
-+	gstreamer_base = dependency('', required: false)
-+endif
-+
- # on some systems we need to find the math lib to make sure it builds
- cc = meson.get_compiler('c')
- math = cc.find_library('m', required: false)


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2022-01-21 17:15 Sam James
  0 siblings, 0 replies; 10+ messages in thread
From: Sam James @ 2022-01-21 17:15 UTC (permalink / raw
  To: gentoo-commits

commit:     a815d023e5f45b7ca060cfa9ba10366c026fe2d8
Author:     Matthew S. Turnbull <sparky <AT> bluefang-logic <DOT> com>
AuthorDate: Wed Dec 29 20:09:39 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 21 17:15:13 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a815d023

gnome-extra/cinnamon: 5.2.7 version bump

Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Matthew S. Turnbull <sparky <AT> bluefang-logic.com>
Closes: https://github.com/gentoo/gentoo/pull/23576
Signed-off-by: Sam James <sam <AT> gentoo.org>

 gnome-extra/cinnamon/Manifest                      |   1 +
 gnome-extra/cinnamon/cinnamon-5.2.7.ebuild         | 182 +++++++++++++++++++++
 .../files/cinnamon-5.2.7-optional-eds.patch        |  85 ++++++++++
 3 files changed, 268 insertions(+)

diff --git a/gnome-extra/cinnamon/Manifest b/gnome-extra/cinnamon/Manifest
index fae7a4561542..b167c58a3b6c 100644
--- a/gnome-extra/cinnamon/Manifest
+++ b/gnome-extra/cinnamon/Manifest
@@ -1 +1,2 @@
 DIST cinnamon-5.0.6.tar.gz 2397950 BLAKE2B e54f8ed02fc36c121d15d30aaed4633f7db30bcf3e0179fb5fa0b9f12b42f0a29b341f531eed7ba19f849c0400ee9887ee59b5218f4558586a360d173798aeea SHA512 3ed835b1c41a34dfd1e2eac7746bfa01fe48359c6c3e8085877a4c18b895ea065efc343a855cbdee3fcbfb63aa40166bbe40fa19154ae1544be675411d49a962
+DIST cinnamon-5.2.7.tar.gz 2423949 BLAKE2B f4ce9ec4c79eab3daadff958c0a334d49757548203078ab657ebe2450f3f179c942df9d0f9089efe313c268c929628d724db43371e12338606d284a2738ed62c SHA512 62cbbe2f719574b3f70a4895c231be9ad65a41220d2755cc1557bc06bb2b31ced93621c356f2973376d127d5a1e59f9295498bbc4812d428e8605e8f4882c733

diff --git a/gnome-extra/cinnamon/cinnamon-5.2.7.ebuild b/gnome-extra/cinnamon/cinnamon-5.2.7.ebuild
new file mode 100644
index 000000000000..976736f285f6
--- /dev/null
+++ b/gnome-extra/cinnamon/cinnamon-5.2.7.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+PYTHON_REQ_USE="xml"
+
+inherit meson gnome2-utils pax-utils python-single-r1 xdg
+
+DESCRIPTION="A fork of GNOME Shell with layout similar to GNOME 2"
+HOMEPAGE="https://projects.linuxmint.com/cinnamon/ https://github.com/linuxmint/cinnamon"
+SRC_URI="https://github.com/linuxmint/cinnamon/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+eds +gstreamer gtk-doc +nls +networkmanager"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+DEPEND="
+	${PYTHON_DEPS}
+	app-accessibility/at-spi2-atk:2
+	>=dev-libs/glib-2.52.0:2[dbus]
+	>=dev-libs/gobject-introspection-1.29.15:=
+	dev-libs/libxml2:2
+	>=gnome-extra/cinnamon-desktop-5.2:0=
+	>=gnome-extra/cinnamon-menus-5.2
+	>=gnome-extra/cjs-5.2[cairo]
+	net-libs/libsoup:2.4[introspection]
+	sys-apps/dbus
+	>=sys-auth/polkit-0.100[introspection]
+	virtual/opengl
+	x11-libs/gdk-pixbuf:2[introspection]
+	>=x11-libs/gtk+-3.12.0:3[introspection]
+	>=x11-libs/libnotify-0.7.3:0=[introspection]
+	x11-libs/libX11
+	>=x11-libs/libXfixes-5.0
+	x11-libs/pango[introspection]
+	>=x11-libs/startup-notification-0.11
+	>=x11-wm/muffin-5.2[introspection]
+
+	eds? (
+		gnome-extra/evolution-data-server
+	)
+	gstreamer? (
+		media-libs/gst-plugins-base:1.0
+		media-libs/gstreamer:1.0
+	)
+	networkmanager? (
+		net-misc/networkmanager[introspection]
+	)
+"
+# caribou used by onscreen keyboard
+# libtimezonemap used by datetime settings
+# iso-flag-png (unpackaged) used by keyboard layout settings
+RDEPEND="
+	${DEPEND}
+	>=app-accessibility/caribou-0.3
+	dev-libs/keybinder:3[introspection]
+	dev-libs/libtimezonemap
+	$(python_gen_cond_dep '
+		dev-python/dbus-python[${PYTHON_USEDEP}]
+		dev-python/distro[${PYTHON_USEDEP}]
+		dev-python/pexpect[${PYTHON_USEDEP}]
+		dev-python/pillow[${PYTHON_USEDEP}]
+		dev-python/pycairo[${PYTHON_USEDEP}]
+		dev-python/pygobject:3[${PYTHON_USEDEP}]
+		dev-python/pyinotify[${PYTHON_USEDEP}]
+		dev-python/pypam[${PYTHON_USEDEP}]
+		dev-python/pytz[${PYTHON_USEDEP}]
+		dev-python/setproctitle[${PYTHON_USEDEP}]
+		dev-python/tinycss2[${PYTHON_USEDEP}]
+		>=dev-python/python3-xapp-2.2.1-r1[${PYTHON_USEDEP}]
+	')
+	>=gnome-base/dconf-0.4.1
+	>=gnome-base/gsettings-desktop-schemas-2.91.91
+	>=gnome-base/libgnomekbd-2.91.4
+	>=gnome-extra/cinnamon-control-center-5.2[networkmanager=]
+	>=gnome-extra/cinnamon-screensaver-5.2
+	>=gnome-extra/cinnamon-session-5.2
+	>=gnome-extra/cinnamon-settings-daemon-5.2
+	>=gnome-extra/nemo-5.2
+	gnome-extra/polkit-gnome
+	net-misc/wget
+	sys-apps/accountsservice[introspection]
+	sys-power/upower[introspection]
+	>=x11-libs/xapp-2.2.8[introspection]
+	x11-misc/xdg-utils
+	x11-themes/adwaita-icon-theme
+	x11-themes/gnome-themes-standard
+
+	nls? (
+		>=gnome-extra/cinnamon-translations-5.2
+	)
+"
+BDEPEND="
+	>=dev-util/intltool-0.40
+	>=sys-devel/gettext-0.17
+	virtual/pkgconfig
+
+	gtk-doc? ( dev-util/gtk-doc )
+"
+
+PATCHES=(
+	# Fix backgrounds path as cinnamon doesn't provide them
+	# https://github.com/linuxmint/Cinnamon/issues/3575
+	"${FILESDIR}"/${PN}-3.8.0-gnome-background-compatibility.patch
+
+	# Use wheel group instead of sudo (from Fedora/Arch)
+	# https://github.com/linuxmint/Cinnamon/issues/3576
+	"${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch
+
+	# Make evolution-data-server integration optional
+	"${FILESDIR}"/${PN}-5.2.7-optional-eds.patch
+)
+
+src_prepare() {
+	xdg_src_prepare
+
+	# Add polkit agent to required components
+	# https://github.com/linuxmint/Cinnamon/issues/3579
+	sed -i "s/'REQUIRED', '/&polkit-cinnamon-authentication-agent-1;/" meson.build || die
+
+	# shebang fixing craziness
+	local p
+	for p in $(grep -rl '#!.*python3' || die); do
+		python_fix_shebang "${p}"
+	done
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use eds build_calendar_server)
+		$(meson_use gstreamer build_recorder)
+		$(meson_use gtk-doc docs)
+		-Ddisable_networkmanager=$(usex networkmanager false true)
+		-Dpy3modules_dir="$(python_get_sitedir)"
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	python_optimize "${D}$(python_get_sitedir)"
+	python_optimize "${ED}"/usr/share/cinnamon/
+
+	# Required for gnome-shell on hardened/PaX, bug #398941
+	pax-mark mr "${ED}"/usr/bin/cinnamon
+
+	# Doesn't exist on Gentoo, causing this to be a dead symlink
+	rm "${ED}/etc/xdg/menus/cinnamon-applications-merged" || die
+
+	# Ensure authentication-agent is started, bug #523958
+	# https://github.com/linuxmint/Cinnamon/issues/3579
+	insinto /etc/xdg/autostart/
+	doins "${FILESDIR}"/polkit-cinnamon-authentication-agent-1.desktop
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	if use gstreamer; then
+		if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+		   ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+			ewarn "To make use of Cinnamon's built-in screen recording utility,"
+			ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+			ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+			ewarn "org.cinnamon.recorder/pipeline to what you want to use."
+		fi
+	else
+		ewarn "Cinnamon's built-in screen recording utility is not installed"
+		ewarn "because gstreamer support is disabled."
+	fi
+}
+
+pkg_postrm() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+}

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
new file mode 100644
index 000000000000..c0646359552b
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-5.2.7-optional-eds.patch
@@ -0,0 +1,85 @@
+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,


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2022-02-18  2:44 Sam James
  0 siblings, 0 replies; 10+ messages in thread
From: Sam James @ 2022-02-18  2:44 UTC (permalink / raw
  To: gentoo-commits

commit:     0063b97357619e166fe4be06257b257c60d07e2d
Author:     Matthew S. Turnbull <sparky <AT> bluefang-logic <DOT> com>
AuthorDate: Tue Feb  1 04:39:55 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Feb 18 02:42:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0063b973

gnome-extra/cinnamon: Replace optional eds patch with upstream commit

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Matthew S. Turnbull <sparky <AT> bluefang-logic.com>
Closes: https://github.com/gentoo/gentoo/pull/24060
Signed-off-by: Sam James <sam <AT> gentoo.org>

 gnome-extra/cinnamon/cinnamon-5.2.7-r1.ebuild      |   4 +-
 .../files/cinnamon-5.2.7-eds-detection.patch       | 114 +++++++++++++++++++++
 .../files/cinnamon-5.2.7-optional-eds.patch        |  85 ---------------
 3 files changed, 115 insertions(+), 88 deletions(-)

diff --git a/gnome-extra/cinnamon/cinnamon-5.2.7-r1.ebuild b/gnome-extra/cinnamon/cinnamon-5.2.7-r1.ebuild
index cf265bb33cc7..6ce4247d38e4 100644
--- a/gnome-extra/cinnamon/cinnamon-5.2.7-r1.ebuild
+++ b/gnome-extra/cinnamon/cinnamon-5.2.7-r1.ebuild
@@ -113,8 +113,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch
 
 	# Make evolution-data-server integration optional
-	# https://github.com/linuxmint/cinnamon/pull/10567
-	"${FILESDIR}"/${PN}-5.2.7-optional-eds.patch
+	"${FILESDIR}"/${PN}-5.2.7-eds-detection.patch
 )
 
 src_prepare() {
@@ -133,7 +132,6 @@ src_prepare() {
 
 src_configure() {
 	local emesonargs=(
-		$(meson_use eds build_calendar_server)
 		$(meson_use gstreamer build_recorder)
 		$(meson_use gtk-doc docs)
 		-Ddisable_networkmanager=$(usex networkmanager false true)

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-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,


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2022-02-27 23:50 Sam James
  0 siblings, 0 replies; 10+ messages in thread
From: Sam James @ 2022-02-27 23:50 UTC (permalink / raw
  To: gentoo-commits

commit:     0850b6be2e2af915701fc80b2d2c6e1892c074e8
Author:     Matthew S. Turnbull <sparky <AT> bluefang-logic <DOT> com>
AuthorDate: Sun Feb 27 20:02:24 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Feb 27 23:49:55 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0850b6be

gnome-extra/cinnamon: Meson fixes

Closes: https://bugs.gentoo.org/833861
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Matthew S. Turnbull <sparky <AT> bluefang-logic.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 gnome-extra/cinnamon/cinnamon-5.2.7-r2.ebuild      | 186 +++++++++++++++++++++
 .../files/cinnamon-5.2.7-meson-0.61-fix.patch      |  41 +++++
 .../cinnamon-5.2.7-revert-meson-0.60-fix.patch     |  55 ++++++
 3 files changed, 282 insertions(+)

diff --git a/gnome-extra/cinnamon/cinnamon-5.2.7-r2.ebuild b/gnome-extra/cinnamon/cinnamon-5.2.7-r2.ebuild
new file mode 100644
index 000000000000..5237a3b90b2a
--- /dev/null
+++ b/gnome-extra/cinnamon/cinnamon-5.2.7-r2.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+PYTHON_REQ_USE="xml"
+
+inherit meson gnome2-utils pax-utils python-single-r1 xdg
+
+DESCRIPTION="A fork of GNOME Shell with layout similar to GNOME 2"
+HOMEPAGE="https://projects.linuxmint.com/cinnamon/ https://github.com/linuxmint/cinnamon"
+SRC_URI="https://github.com/linuxmint/cinnamon/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+eds +gstreamer gtk-doc +nls +networkmanager"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+DEPEND="
+	${PYTHON_DEPS}
+	app-accessibility/at-spi2-atk:2
+	>=dev-libs/glib-2.52.0:2[dbus]
+	>=dev-libs/gobject-introspection-1.29.15:=
+	dev-libs/libxml2:2
+	>=gnome-extra/cinnamon-desktop-5.2:0=
+	>=gnome-extra/cinnamon-menus-5.2
+	>=gnome-extra/cjs-5.2[cairo]
+	net-libs/libsoup:2.4[introspection]
+	sys-apps/dbus
+	>=sys-auth/polkit-0.100[introspection]
+	virtual/opengl
+	x11-libs/gdk-pixbuf:2[introspection]
+	>=x11-libs/gtk+-3.12.0:3[introspection]
+	>=x11-libs/libnotify-0.7.3:0=[introspection]
+	x11-libs/libX11
+	>=x11-libs/libXfixes-5.0
+	x11-libs/pango[introspection]
+	>=x11-libs/startup-notification-0.11
+	>=x11-wm/muffin-5.2[introspection]
+
+	eds? (
+		gnome-extra/evolution-data-server
+	)
+	gstreamer? (
+		media-libs/gst-plugins-base:1.0
+		media-libs/gstreamer:1.0
+	)
+	networkmanager? (
+		net-misc/networkmanager[introspection]
+	)
+"
+# caribou used by onscreen keyboard
+# libtimezonemap used by datetime settings
+# iso-flag-png (unpackaged) used by keyboard layout settings
+RDEPEND="
+	${DEPEND}
+	>=app-accessibility/caribou-0.3
+	dev-libs/keybinder:3[introspection]
+	dev-libs/libtimezonemap
+	$(python_gen_cond_dep '
+		dev-python/dbus-python[${PYTHON_USEDEP}]
+		dev-python/distro[${PYTHON_USEDEP}]
+		dev-python/pexpect[${PYTHON_USEDEP}]
+		dev-python/pillow[${PYTHON_USEDEP}]
+		dev-python/pycairo[${PYTHON_USEDEP}]
+		dev-python/pygobject:3[${PYTHON_USEDEP}]
+		dev-python/pyinotify[${PYTHON_USEDEP}]
+		dev-python/pypam[${PYTHON_USEDEP}]
+		dev-python/pytz[${PYTHON_USEDEP}]
+		dev-python/requests[${PYTHON_USEDEP}]
+		dev-python/setproctitle[${PYTHON_USEDEP}]
+		dev-python/tinycss2[${PYTHON_USEDEP}]
+		>=dev-python/python3-xapp-2.2.1-r1[${PYTHON_USEDEP}]
+	')
+	>=gnome-base/dconf-0.4.1
+	>=gnome-base/gsettings-desktop-schemas-2.91.91
+	>=gnome-base/libgnomekbd-2.91.4
+	>=gnome-extra/cinnamon-control-center-5.2[networkmanager=]
+	>=gnome-extra/cinnamon-screensaver-5.2
+	>=gnome-extra/cinnamon-session-5.2
+	>=gnome-extra/cinnamon-settings-daemon-5.2
+	>=gnome-extra/nemo-5.2
+	gnome-extra/polkit-gnome
+	net-misc/wget
+	sys-apps/accountsservice[introspection]
+	sys-power/upower[introspection]
+	>=x11-libs/xapp-2.2.8[introspection]
+	x11-misc/xdg-utils
+	x11-themes/adwaita-icon-theme
+	x11-themes/gnome-themes-standard
+
+	nls? (
+		>=gnome-extra/cinnamon-translations-5.2
+	)
+"
+BDEPEND="
+	>=dev-util/intltool-0.40
+	>=sys-devel/gettext-0.17
+	virtual/pkgconfig
+
+	gtk-doc? ( dev-util/gtk-doc )
+"
+
+PATCHES=(
+	# Fix backgrounds path as cinnamon doesn't provide them
+	# https://github.com/linuxmint/Cinnamon/issues/3575
+	"${FILESDIR}"/${PN}-3.8.0-gnome-background-compatibility.patch
+
+	# Use wheel group instead of sudo (from Fedora/Arch)
+	# https://github.com/linuxmint/Cinnamon/issues/3576
+	"${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch
+
+	# Make evolution-data-server integration optional
+	"${FILESDIR}"/${PN}-5.2.7-eds-detection.patch
+
+	# Meson fixes
+	"${FILESDIR}"/${PN}-5.2.7-revert-meson-0.60-fix.patch
+	"${FILESDIR}"/${PN}-5.2.7-meson-0.61-fix.patch
+)
+
+src_prepare() {
+	xdg_src_prepare
+
+	# Add polkit agent to required components
+	# https://github.com/linuxmint/Cinnamon/issues/3579
+	sed -i "s/'REQUIRED', '/&polkit-cinnamon-authentication-agent-1;/" meson.build || die
+
+	# shebang fixing craziness
+	local p
+	for p in $(grep -rl '#!.*python3' || die); do
+		python_fix_shebang "${p}"
+	done
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use gstreamer build_recorder)
+		$(meson_use gtk-doc docs)
+		-Ddisable_networkmanager=$(usex networkmanager false true)
+		-Dpy3modules_dir="$(python_get_sitedir)"
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	python_optimize "${D}$(python_get_sitedir)"
+	python_optimize "${ED}"/usr/share/cinnamon/
+
+	# Required for gnome-shell on hardened/PaX, bug #398941
+	pax-mark mr "${ED}"/usr/bin/cinnamon
+
+	# Doesn't exist on Gentoo, causing this to be a dead symlink
+	rm "${ED}/etc/xdg/menus/cinnamon-applications-merged" || die
+
+	# Ensure authentication-agent is started, bug #523958
+	# https://github.com/linuxmint/Cinnamon/issues/3579
+	insinto /etc/xdg/autostart/
+	doins "${FILESDIR}"/polkit-cinnamon-authentication-agent-1.desktop
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	if use gstreamer; then
+		if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+		   ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+			ewarn "To make use of Cinnamon's built-in screen recording utility,"
+			ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+			ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+			ewarn "org.cinnamon.recorder/pipeline to what you want to use."
+		fi
+	else
+		ewarn "Cinnamon's built-in screen recording utility is not installed"
+		ewarn "because gstreamer support is disabled."
+	fi
+}
+
+pkg_postrm() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+}

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-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',


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/
@ 2024-08-05  3:36 Eli Schwartz
  0 siblings, 0 replies; 10+ messages in thread
From: Eli Schwartz @ 2024-08-05  3:36 UTC (permalink / raw
  To: gentoo-commits

commit:     ea8b759bbfa31dbe09da71b565fa5bf0d91eb4bb
Author:     Matthew S. Turnbull <sparky <AT> bluefang-logic <DOT> com>
AuthorDate: Mon Jun 24 06:09:54 2024 +0000
Commit:     Eli Schwartz <eschwartz <AT> gentoo <DOT> org>
CommitDate: Mon Aug  5 03:35:48 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea8b759b

gnome-extra/cinnamon: add 6.2.7

Remove the GOA dependency as it's no longer suported, and the
alternate is not currently packaged.

Make xdg-desktop-portal-xapp unconditional, as dark mode
breaks without it.

Closes: https://bugs.gentoo.org/934783
Signed-off-by: Matthew S. Turnbull <sparky <AT> bluefang-logic.com>
Signed-off-by: Eli Schwartz <eschwartz <AT> gentoo.org>

 gnome-extra/cinnamon/Manifest                      |   1 +
 gnome-extra/cinnamon/cinnamon-6.2.7.ebuild         | 206 +++++++++++++++++++++
 ...namon-6.2.0-fix-arm64-settings-panel-path.patch |  38 ++++
 .../files/cinnamon-6.2.0-optional-wayland.patch    |  79 ++++++++
 .../files/cinnamon-6.2.0-polkit-agent-on-x11.patch |  75 ++++++++
 gnome-extra/cinnamon/metadata.xml                  |   1 +
 6 files changed, 400 insertions(+)

diff --git a/gnome-extra/cinnamon/Manifest b/gnome-extra/cinnamon/Manifest
index 7591256ae65b..b93a2052223f 100644
--- a/gnome-extra/cinnamon/Manifest
+++ b/gnome-extra/cinnamon/Manifest
@@ -1,2 +1,3 @@
 DIST cinnamon-5.8.4.tar.gz 2517117 BLAKE2B 4c3f452480b9e3ce7713221f1b76c475204b8dc1bb34d42a8faf492b0ca86416bb2fbd3849a7f048fef672ecf4613f06c645ec548159b6c3662b7602142e75e6 SHA512 2eaa253cdd01f00cca05ed123db59fde27f84cc24d7b8a3ec751a5f8252642870cbece941d1101f31fe0db43c15d9779bbdcacbf7037757569a4d17205cb10ad
 DIST cinnamon-6.0.4.tar.gz 2538844 BLAKE2B de67c2e465d04dd4ed269172b4b58cfe0391446466e32e15410b5a847248566c075823d0a2fb87d7a693033b3e4e1fc21a18c7b9f45dca89ce8968a0be71eaba SHA512 357dd44f40b195a4a3ca3e88c5c9e55f1c06d36b4cec812a001c54ffb784b0d67bb9f41c1ae74fec590184b3480c9cd21ae54f7ee01e31f80eab0297b0d18a9c
+DIST cinnamon-6.2.7.tar.gz 2547822 BLAKE2B 67f15fdd39c7168bcaa03f637fa6a4b9e9076657a92ba92472c69960c0c26fcad7aa0b4e1f6926e57d76364bf4a42f28381b67a03cba75de87a4fc31ef9e7377 SHA512 d8617cf73dd754b91915826527e674a8084ad141831112def661eac6b39b1c39e61e06fdf79bd7f0a7045b2abc29e223f8616796f5e51d1354486f0d0e4faf5a

diff --git a/gnome-extra/cinnamon/cinnamon-6.2.7.ebuild b/gnome-extra/cinnamon/cinnamon-6.2.7.ebuild
new file mode 100644
index 000000000000..faad5075ad15
--- /dev/null
+++ b/gnome-extra/cinnamon/cinnamon-6.2.7.ebuild
@@ -0,0 +1,206 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit meson gnome2-utils pax-utils python-single-r1 xdg
+
+DESCRIPTION="A fork of GNOME Shell with layout similar to GNOME 2"
+HOMEPAGE="https://projects.linuxmint.com/cinnamon/ https://github.com/linuxmint/cinnamon"
+SRC_URI="https://github.com/linuxmint/cinnamon/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD GPL-2+ GPL-3+ GPL-3-with-openssl-exception LGPL-2+ LGPL-2.1 LGPL-2.1+ MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+IUSE="+eds +gstreamer gtk-doc internal-polkit +nls +networkmanager wayland"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+	${PYTHON_DEPS}
+	>=app-accessibility/at-spi2-core-2.46.0:2
+	>=dev-libs/glib-2.52.0:2[dbus]
+	>=dev-libs/gobject-introspection-1.29.15:=
+	dev-libs/libxml2:2
+	>=gnome-extra/cinnamon-desktop-6.2:0=
+	>=gnome-extra/cinnamon-menus-6.2
+	>=gnome-extra/cjs-6.2[cairo]
+	sys-apps/dbus
+	>=sys-auth/polkit-0.100[introspection]
+	virtual/opengl
+	x11-libs/cairo
+	x11-libs/gdk-pixbuf:2[introspection]
+	>=x11-libs/gtk+-3.12.0:3[introspection,wayland?]
+	>=x11-libs/libnotify-0.7.3:0=[introspection]
+	x11-libs/libX11
+	>=x11-libs/libXfixes-5.0
+	x11-libs/pango[introspection]
+	>=x11-libs/xapp-2.8.4[introspection]
+	>=x11-wm/muffin-6.2[introspection,wayland?]
+
+	eds? (
+		gnome-extra/evolution-data-server
+	)
+	gstreamer? (
+		media-libs/gst-plugins-base:1.0
+		media-libs/gstreamer:1.0
+	)
+	networkmanager? (
+		net-misc/networkmanager[introspection]
+	)
+"
+# caribou used by onscreen keyboard
+# libtimezonemap used by datetime settings
+# iso-flag-png (unpackaged) used by keyboard layout settings
+RDEPEND="
+	${DEPEND}
+	>=app-accessibility/caribou-0.3
+	dev-libs/keybinder:3[introspection]
+	dev-libs/libtimezonemap
+	$(python_gen_cond_dep '
+		dev-python/dbus-python[${PYTHON_USEDEP}]
+		dev-python/distro[${PYTHON_USEDEP}]
+		dev-python/pexpect[${PYTHON_USEDEP}]
+		dev-python/pillow[${PYTHON_USEDEP}]
+		dev-python/pycairo[${PYTHON_USEDEP}]
+		dev-python/pygobject:3[${PYTHON_USEDEP}]
+		dev-python/pyinotify[${PYTHON_USEDEP}]
+		dev-python/python-pam[${PYTHON_USEDEP}]
+		dev-python/pytz[${PYTHON_USEDEP}]
+		dev-python/requests[${PYTHON_USEDEP}]
+		dev-python/setproctitle[${PYTHON_USEDEP}]
+		dev-python/tinycss2[${PYTHON_USEDEP}]
+		>=dev-python/python3-xapp-2.4.2[${PYTHON_USEDEP}]
+	')
+	>=gnome-base/dconf-0.4.1
+	>=gnome-base/gsettings-desktop-schemas-2.91.91
+	>=gnome-base/libgnomekbd-2.91.4
+	>=gnome-extra/cinnamon-control-center-6.2[networkmanager=,wayland?]
+	>=gnome-extra/cinnamon-screensaver-6.2
+	>=gnome-extra/cinnamon-session-6.2
+	>=gnome-extra/cinnamon-settings-daemon-6.2[wayland?]
+	>=gnome-extra/nemo-6.2[wayland?]
+	media-libs/gsound
+	net-libs/libsoup:3.0[introspection]
+	net-misc/wget
+	sys-apps/accountsservice[introspection]
+	sys-apps/coreutils
+	sys-apps/pciutils
+	sys-apps/util-linux
+	sys-apps/xdg-desktop-portal-gtk
+	sys-apps/xdg-desktop-portal-xapp
+	sys-power/upower[introspection]
+	x11-misc/xdg-utils
+	x11-themes/adwaita-icon-theme
+	x11-themes/gnome-themes-standard
+
+	!internal-polkit? (
+		gnome-extra/polkit-gnome
+	)
+	nls? (
+		>=gnome-extra/cinnamon-translations-6.2
+	)
+"
+BDEPEND="
+	>=dev-util/intltool-0.40
+	>=sys-devel/gettext-0.17
+	virtual/pkgconfig
+
+	gtk-doc? ( dev-util/gtk-doc )
+"
+
+PATCHES=(
+	# Fix backgrounds path as cinnamon doesn't provide them
+	# https://github.com/linuxmint/Cinnamon/issues/3575
+	"${FILESDIR}/${PN}-3.8.0-gnome-background-compatibility.patch"
+
+	# Use wheel group instead of sudo (from Fedora/Arch)
+	# https://github.com/linuxmint/Cinnamon/issues/3576
+	"${FILESDIR}/${PN}-3.6.6-wheel-sudo.patch"
+
+	# Make wayland optional
+	# https://github.com/linuxmint/cinnamon/pull/12273
+	"${FILESDIR}/${PN}-6.2.0-optional-wayland.patch"
+
+	# Fix path for settings panels on arm64
+	# https://github.com/linuxmint/cinnamon/pull/12278
+	"${FILESDIR}/${PN}-6.2.0-fix-arm64-settings-panel-path.patch"
+)
+
+src_prepare() {
+	if use internal-polkit; then
+		PATCHES+=(
+			# Use internal polkit agent on X11
+			# https://github.com/linuxmint/cinnamon/pull/12272
+			"${FILESDIR}/${PN}-6.2.0-polkit-agent-on-x11.patch"
+		)
+	else
+		# Add polkit agent to required components
+		# https://github.com/linuxmint/Cinnamon/issues/3579
+		sed -i "s/'REQUIRED', '/&polkit-cinnamon-authentication-agent-1;/" meson.build || die
+	fi
+
+	default
+
+	# shebang fixing craziness
+	local p
+	for p in $(grep -rl '#!.*python3' || die); do
+		python_fix_shebang "${p}"
+	done
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use gstreamer build_recorder)
+		$(meson_use gtk-doc docs)
+		$(meson_use wayland)
+		-Ddisable_networkmanager=$(usex networkmanager false true)
+		-Dpy3modules_dir="$(python_get_sitedir)"
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	python_optimize "${D}$(python_get_sitedir)"
+	python_optimize "${ED}"/usr/share/cinnamon/
+
+	# Required for gnome-shell on hardened/PaX, bug #398941
+	pax-mark mr "${ED}"/usr/bin/cinnamon
+
+	# Doesn't exist by default
+	keepdir /etc/xdg/menus/applications-merged
+
+	if ! use internal-polkit; then
+		# Ensure authentication-agent is started, bug #523958
+		# https://github.com/linuxmint/Cinnamon/issues/3579
+		insinto /etc/xdg/autostart/
+		doins "${FILESDIR}"/polkit-cinnamon-authentication-agent-1.desktop
+	fi
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	if use gstreamer; then
+		if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+		   ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+			ewarn "To make use of Cinnamon's built-in screen recording utility,"
+			ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+			ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+			ewarn "org.cinnamon.recorder/pipeline to what you want to use."
+		fi
+	else
+		ewarn "Cinnamon's built-in screen recording utility is not installed"
+		ewarn "because gstreamer support is disabled."
+	fi
+}
+
+pkg_postrm() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+}

diff --git a/gnome-extra/cinnamon/files/cinnamon-6.2.0-fix-arm64-settings-panel-path.patch b/gnome-extra/cinnamon/files/cinnamon-6.2.0-fix-arm64-settings-panel-path.patch
new file mode 100644
index 000000000000..c81de09a6c43
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-6.2.0-fix-arm64-settings-panel-path.patch
@@ -0,0 +1,38 @@
+From eadca68df52f0fd7db2035c7dad3bb87240ecf34 Mon Sep 17 00:00:00 2001
+From: Sparky Bluefang <sparky@bluefang-logic.com>
+Date: Sat, 6 Jul 2024 04:43:53 -0400
+Subject: [PATCH] Simplify 64bit path handling. More than x86_64 uses
+ /usr/lib64 (i.e. arm64/aarch64). One additional path check is probably not
+ worth enumerating all of the applicable machine names.
+
+---
+ files/usr/share/cinnamon/cinnamon-settings/bin/capi.py | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/files/usr/share/cinnamon/cinnamon-settings/bin/capi.py b/files/usr/share/cinnamon/cinnamon-settings/bin/capi.py
+index 05d88dea20..77621a98a8 100644
+--- a/files/usr/share/cinnamon/cinnamon-settings/bin/capi.py
++++ b/files/usr/share/cinnamon/cinnamon-settings/bin/capi.py
+@@ -27,20 +27,18 @@ def __init__(self):
+         self.extension_point = Gio.io_extension_point_register ("cinnamon-control-center-1")
+         self.modules = []
+ 
+-        architecture = platform.machine()
+         # get the arch-specific triplet, e.g. 'x86_64-linux-gnu' or 'arm-linux-gnueabihf'
+         # see also: https://wiki.debian.org/Python/MultiArch
+         triplet = sysconfig.get_config_var('MULTIARCH')
+-        paths = ["/usr/lib", f"/usr/lib/{triplet}"]
++        paths = ["/usr/lib", "/usr/lib64", f"/usr/lib/{triplet}"]
+ 
+         # On x86 archs, iterate through multiple paths
+         # For instance, on a Mint i686 box, the path is actually /usr/lib/i386-linux-gnu
++        architecture = platform.machine()
+         x86archs = ["i386", "i486", "i586", "i686"]
+         if architecture in x86archs:
+             for arch in x86archs:
+                 paths += ["/usr/lib/%s" % arch]
+-        elif architecture == "x86_64":
+-            paths += ["/usr/lib/x86_64", "/usr/lib64"]
+         else:
+             paths += ["/usr/lib/%s" % architecture]
+ 

diff --git a/gnome-extra/cinnamon/files/cinnamon-6.2.0-optional-wayland.patch b/gnome-extra/cinnamon/files/cinnamon-6.2.0-optional-wayland.patch
new file mode 100644
index 000000000000..ca22e32f9fb7
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-6.2.0-optional-wayland.patch
@@ -0,0 +1,79 @@
+From 92bcc5aabd92001b4f05ce13875422066bf82732 Mon Sep 17 00:00:00 2001
+From: Sparky Bluefang <sparky@bluefang-logic.com>
+Date: Wed, 3 Jul 2024 02:13:13 -0400
+Subject: [PATCH] Optionally install wayland session files
+
+---
+ data/meson.build  | 13 +++++++------
+ meson.build       | 11 ++++++++---
+ meson_options.txt |  5 +++++
+ 3 files changed, 20 insertions(+), 9 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index f46bf967fb..807ea218a8 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -16,11 +16,10 @@ desktop_conf.set('bindir', join_paths(prefix, bindir))
+ desktop_conf.set('libexecdir', join_paths(prefix, libexecdir))
+ desktop_conf.set('VERSION', meson.project_version())
+ 
+-desktop_files = [
+-  'cinnamon.desktop',
+-  'cinnamon-wayland.desktop',
+-  'cinnamon2d.desktop',
+-]
++desktop_files = ['cinnamon.desktop', 'cinnamon2d.desktop']
++if get_option('wayland')
++    desktop_files += ['cinnamon-wayland.desktop']
++endif
+ 
+ foreach desktop_file : desktop_files
+     desktop = configure_file(
+@@ -40,7 +39,9 @@ foreach desktop_file : desktop_files
+ endforeach
+ 
+ subdir('xdg-portal')
+-subdir('wayland_sessions')
++if get_option('wayland')
++    subdir('wayland_sessions')
++endif
+ subdir('xsessions')
+ subdir('services')
+ 
+diff --git a/meson.build b/meson.build
+index d7705c0919..7b4c74c528 100644
+--- a/meson.build
++++ b/meson.build
+@@ -165,10 +165,15 @@ else
+     session_conf.set('REQUIRED', '')
+ endif
+ 
+-foreach file : ['cinnamon.session', 'cinnamon2d.session', 'cinnamon-wayland.session']
++session_files = ['cinnamon.session', 'cinnamon2d.session']
++if get_option('wayland')
++    session_files += ['cinnamon-wayland.session']
++endif
++
++foreach session_file : session_files
+     configure_file(
+-        input: file + '.in',
+-        output: file,
++        input: session_file + '.in',
++        output: session_file,
+         configuration: session_conf,
+         install_dir: join_paths(prefix, datadir, 'cinnamon-session', 'sessions'),
+     )
+diff --git a/meson_options.txt b/meson_options.txt
+index 82422246b0..321192d8c6 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -23,4 +23,9 @@ option('py3modules_dir',
+     value : '',
+     description: 'Where to install python3 modules'
+ )
++option('wayland',
++    type : 'boolean',
++    value : true,
++    description: 'Enable wayland support'
++)
+ 

diff --git a/gnome-extra/cinnamon/files/cinnamon-6.2.0-polkit-agent-on-x11.patch b/gnome-extra/cinnamon/files/cinnamon-6.2.0-polkit-agent-on-x11.patch
new file mode 100644
index 000000000000..7b8057fda647
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-6.2.0-polkit-agent-on-x11.patch
@@ -0,0 +1,75 @@
+From c6402be3b5eb84f53367ebd57b1a38664a240d44 Mon Sep 17 00:00:00 2001
+From: Sparky Bluefang <sparky@bluefang-logic.com>
+Date: Wed, 3 Jul 2024 02:10:18 -0400
+Subject: [PATCH] Use Polkit agent for X11 sessions. Don't crash if polkit
+ doesn't start properly.
+
+---
+ debian/control                     |  1 -
+ js/ui/main.js                      |  4 +---
+ js/ui/polkitAuthenticationAgent.js | 20 +++++++++++++++++++-
+ 3 files changed, 20 insertions(+), 5 deletions(-)
+
+diff --git a/debian/control b/debian/control
+index b9812a1276..d886fac1ec 100644
+--- a/debian/control
++++ b/debian/control
+@@ -85,7 +85,6 @@ Depends:
+  metacity,
+  nemo,
+  network-manager-gnome [linux-any],
+- policykit-1-gnome,
+  python3,
+  python3-dbus,
+  python3-distro,
+diff --git a/js/ui/main.js b/js/ui/main.js
+index 12bcfc0cfc..55703b96b3 100644
+--- a/js/ui/main.js
++++ b/js/ui/main.js
+@@ -430,9 +430,7 @@ function start() {
+     _initUserSession();
+     screenRecorder = new ScreenRecorder.ScreenRecorder();
+ 
+-    if (Meta.is_wayland_compositor()) {
+-        PolkitAuthenticationAgent.init();
+-    }
++    PolkitAuthenticationAgent.init();
+ 
+     _startDate = new Date();
+ 
+diff --git a/js/ui/polkitAuthenticationAgent.js b/js/ui/polkitAuthenticationAgent.js
+index 5f0b55c387..e9ac7b8853 100644
+--- a/js/ui/polkitAuthenticationAgent.js
++++ b/js/ui/polkitAuthenticationAgent.js
+@@ -35,6 +35,7 @@ const PolkitAgent = imports.gi.PolkitAgent;
+ const ModalDialog = imports.ui.modalDialog;
+ const CinnamonEntry = imports.ui.cinnamonEntry;
+ const UserWidget = imports.ui.userWidget;
++const Main = imports.ui.main;
+ 
+ const DIALOG_ICON_SIZE = 64;
+ 
+@@ -389,5 +390,22 @@ AuthenticationAgent.prototype = {
+ }
+ 
+ function init() {
+-    let agent = new AuthenticationAgent();
++    try {
++        let agent = new AuthenticationAgent();
++    } catch(err) {
++        if(!(err instanceof Error)) {
++            err = new Error(err);
++        }
++
++        log('polkitAuthenticationAgent: init error ' + err);
++
++        let icon = new St.Icon({ icon_name: 'dialog-warning',
++                                 icon_type: St.IconType.FULLCOLOR,
++                                 icon_size: 36 });
++
++        Main.warningNotify(_('Unable to start Cinnamon PolicyKit Agent'), err.message +
++                           "\n\n" +
++                           _("If you have another PolicyKit Agent configured to autostart, it should be disabled."),
++                           icon);
++    }
+ }

diff --git a/gnome-extra/cinnamon/metadata.xml b/gnome-extra/cinnamon/metadata.xml
index 24e82c1c597d..3eaadcd0d9a0 100644
--- a/gnome-extra/cinnamon/metadata.xml
+++ b/gnome-extra/cinnamon/metadata.xml
@@ -14,5 +14,6 @@
 	</upstream>
 	<use>
 		<flag name="desktop-portal">Enable <pkg>sys-apps/xdg-desktop-portal</pkg> backend implementation for Cinnamon</flag>
+		<flag name="internal-polkit">Use Cinnamon's internal polkit agent instead of <pkg>gnome-extra/polkit-gnome</pkg>. This does not currently support multi-user fast switching.</flag>
 	</use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2024-08-05  3:36 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-06 21:56 [gentoo-commits] repo/gentoo:master commit in: gnome-extra/cinnamon/, gnome-extra/cinnamon/files/ Alexandre Rostovtsev
  -- strict thread matches above, loose matches on Subject: below --
2017-11-27 22:15 Kristian Fiskerstrand
2018-07-31  8:38 Kristian Fiskerstrand
2019-05-27 13:15 Kristian Fiskerstrand
2020-05-31 19:05 Matt Turner
2022-01-21 17:15 Sam James
2022-01-21 17:15 Sam James
2022-02-18  2:44 Sam James
2022-02-27 23:50 Sam James
2024-08-05  3:36 Eli Schwartz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox