diff options
author | Matthew S. Turnbull <sparky@bluefang-logic.com> | 2021-12-29 15:09:39 -0500 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2022-01-21 17:15:13 +0000 |
commit | a815d023e5f45b7ca060cfa9ba10366c026fe2d8 (patch) | |
tree | 7f71580cf71c65fb63bd7877d06b375a0e31658b /gnome-extra | |
parent | gnome-extra/nemo-fileroller: 5.2.0 version bump (diff) | |
download | gentoo-a815d023e5f45b7ca060cfa9ba10366c026fe2d8.tar.gz gentoo-a815d023e5f45b7ca060cfa9ba10366c026fe2d8.tar.bz2 gentoo-a815d023e5f45b7ca060cfa9ba10366c026fe2d8.zip |
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@bluefang-logic.com>
Closes: https://github.com/gentoo/gentoo/pull/23576
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'gnome-extra')
-rw-r--r-- | gnome-extra/cinnamon/Manifest | 1 | ||||
-rw-r--r-- | gnome-extra/cinnamon/cinnamon-5.2.7.ebuild | 182 | ||||
-rw-r--r-- | gnome-extra/cinnamon/files/cinnamon-5.2.7-optional-eds.patch | 85 |
3 files changed, 268 insertions, 0 deletions
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, |