commit: 3e103ff2f52969b7ae2d3a37158785fcb472b88a
Author: Matthew S. Turnbull <sparky <AT> bluefang-logic <DOT> com>
AuthorDate: Fri Dec 13 05:13:27 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar 10 02:24:03 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3e103ff2
gnome-extra/cinnamon: add 6.4.8
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-6.4.8.ebuild | 183 +++++++++++++++++++++
.../cinnamon/files/cinnamon-6.4.0-use-sassc.patch | 64 +++++++
3 files changed, 248 insertions(+)
diff --git a/gnome-extra/cinnamon/Manifest b/gnome-extra/cinnamon/Manifest
index 6712e17aa1d1..dcc450d74064 100644
--- a/gnome-extra/cinnamon/Manifest
+++ b/gnome-extra/cinnamon/Manifest
@@ -1 +1,2 @@
DIST cinnamon-6.2.9.tar.gz 2547804 BLAKE2B
13a03e5f521d79f6929c16802629fb99b86d7e7f09ea65df76505b8216aa54ca37471a59ed68437bc470df34ca6b5b79e1b66df33721736e2a2c802b8a7755d8
SHA512
8226dedfa26069fd86e6e52daa5bfd46b54de58865cd98e07715caf8843ec1981b28fa2c8195ab153e127156eee6d6b6cd7e94eb715a66c206c0a7e9452fed11
+DIST cinnamon-6.4.8.tar.gz 2592689 BLAKE2B
165f4e89844af4c58d85d8341542c86891c2f7f3bd56bc1a6f6b14bd2357bb8f3884452defdd99202e5f63efb817ca3b9737d884c40ee87912b0cd82898fb1db
SHA512
11e929ca17a80c9aeaf92138333a717f8702cc27669a03d4a95cb8b4154b65869ed102a91a303ce80901667a343e5ed5647a7eff216f630dcd6ff44a5101fa26
diff --git a/gnome-extra/cinnamon/cinnamon-6.4.8.ebuild
b/gnome-extra/cinnamon/cinnamon-6.4.8.ebuild
new file mode 100644
index 000000000000..1b00a5c918d1
--- /dev/null
+++ b/gnome-extra/cinnamon/cinnamon-6.4.8.ebuild
@@ -0,0 +1,183 @@
+# Copyright 1999-2025 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 +nls +networkmanager wayland"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+ ${PYTHON_DEPS}
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ >=app-crypt/gcr-3.7.5:0/1
+ >=dev-libs/glib-2.52.0:2[dbus]
+ >=dev-libs/gobject-introspection-1.29.15:=
+ dev-libs/libxml2:2
+ >=gnome-extra/cinnamon-desktop-6.4:0=
+ >=gnome-extra/cinnamon-menus-6.4
+ >=gnome-extra/cjs-6.4[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?,X]
+ >=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.8[introspection]
+ >=x11-wm/muffin-6.4[introspection,wayland?]
+
+ eds? (
+ gnome-extra/evolution-data-server
+ )
+ gstreamer? (
+ media-libs/gst-plugins-base:1.0
+ media-libs/gstreamer:1.0
+ )
+ networkmanager? (
+ >=app-crypt/libsecret-0.18
+ >=net-misc/networkmanager-1.10.4[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.4[networkmanager=,wayland?]
+ >=gnome-extra/cinnamon-screensaver-6.4
+ >=gnome-extra/cinnamon-session-6.4
+ >=gnome-extra/cinnamon-settings-daemon-6.4[wayland?]
+ >=gnome-extra/nemo-6.4[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
+
+ nls? (
+ >=gnome-extra/cinnamon-translations-6.4
+ )
+"
+BDEPEND="
+ dev-lang/sassc
+ >=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"
+
+ # Use sassc instead of pysassc
+ # https://github.com/linuxmint/cinnamon/pull/12588
+ "${FILESDIR}/${PN}-6.4.0-use-sassc.patch"
+)
+
+src_prepare() {
+ 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
+}
+
+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_postrm
+ gnome2_schemas_update
+}
diff --git a/gnome-extra/cinnamon/files/cinnamon-6.4.0-use-sassc.patch
b/gnome-extra/cinnamon/files/cinnamon-6.4.0-use-sassc.patch
new file mode 100644
index 000000000000..4405268948bf
--- /dev/null
+++ b/gnome-extra/cinnamon/files/cinnamon-6.4.0-use-sassc.patch
@@ -0,0 +1,64 @@
+From 9f4c3d8462479e63f17d755be020d48bb4df94b2 Mon Sep 17 00:00:00 2001
+From: Sparky Bluefang <[email protected]>
+Date: Tue, 24 Dec 2024 04:18:44 -0500
+Subject: [PATCH] Move sass compilation to its own custom target so it shows up
+ in the build log. Support both pysassc and sassc.
+
+---
+ data/meson.build | 3 +--
+ data/theme/cinnamon-sass/meson.build | 11 +++++++++++
+ data/theme/meson.build | 4 +---
+ data/theme/parse-sass.sh | 3 ---
+ 4 files changed, 13 insertions(+), 8 deletions(-)
+ create mode 100644 data/theme/cinnamon-sass/meson.build
+ delete mode 100755 data/theme/parse-sass.sh
+
+diff --git a/data/meson.build b/data/meson.build
+index dba549d57c..2235c389d3 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -11,8 +11,7 @@ install_subdir(
+ 'theme',
+ exclude_files: [
+ 'theme-changelog.txt',
+- 'meson.build',
+- 'parse-sass.sh'
++ 'meson.build'
+ ],
+ exclude_directories: ['cinnamon-sass'],
+ install_dir: pkgdatadir,
+diff --git a/data/theme/cinnamon-sass/meson.build
b/data/theme/cinnamon-sass/meson.build
+new file mode 100644
+index 0000000000..5e97fa97cc
+--- /dev/null
++++ b/data/theme/cinnamon-sass/meson.build
+@@ -0,0 +1,11 @@
++sassc = find_program('pysassc', 'sassc')
++
++custom_target(
++ 'cinnamon_css',
++ input: 'cinnamon.scss',
++ output: 'cinnamon.css',
++ command: [sassc, '@INPUT@', '@OUTPUT@'],
++ build_always_stale: true,
++ install: true,
++ install_dir: join_paths(pkgdatadir, 'theme')
++)
+diff --git a/data/theme/meson.build b/data/theme/meson.build
+index b02e5c18b0..4e34cc4806 100644
+--- a/data/theme/meson.build
++++ b/data/theme/meson.build
+@@ -1,3 +1 @@
+-sassc = find_program('pysassc')
+-
+-run_command('parse-sass.sh', check: true)
++subdir('cinnamon-sass')
+diff --git a/data/theme/parse-sass.sh b/data/theme/parse-sass.sh
+deleted file mode 100755
+index 3313971158..0000000000
+--- a/data/theme/parse-sass.sh
++++ /dev/null
+@@ -1,3 +0,0 @@
+-#! /bin/bash
+-
+-pysassc ./cinnamon-sass/cinnamon.scss cinnamon.css