summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnome-extra/cinnamon-control-center/cinnamon-control-center-5.2.1-r3.ebuild109
-rw-r--r--gnome-extra/cinnamon-control-center/files/cinnamon-control-center-5.2.1-fix-libgnomekbd.patch47
2 files changed, 156 insertions, 0 deletions
diff --git a/gnome-extra/cinnamon-control-center/cinnamon-control-center-5.2.1-r3.ebuild b/gnome-extra/cinnamon-control-center/cinnamon-control-center-5.2.1-r3.ebuild
new file mode 100644
index 000000000000..98fd094c3e28
--- /dev/null
+++ b/gnome-extra/cinnamon-control-center/cinnamon-control-center-5.2.1-r3.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+
+inherit meson gnome2-utils python-any-r1 xdg virtualx
+
+DESCRIPTION="Cinnamons's main interface to configure various aspects of the desktop"
+HOMEPAGE="https://projects.linuxmint.com/cinnamon/ https://github.com/linuxmint/cinnamon-control-center"
+SRC_URI="https://github.com/linuxmint/cinnamon-control-center/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="+colord input_devices_wacom +networkmanager +modemmanager gnome-online-accounts systemd test"
+REQUIRED_USE="modemmanager? ( networkmanager )"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+RESTRICT="test"
+
+COMMON_DEPEND="
+ >=dev-libs/glib-2.44.0:2
+ >=gnome-base/libgnomekbd-3.0.0:0=
+ >=gnome-extra/cinnamon-desktop-5.2:0=
+ >=gnome-extra/cinnamon-menus-5.2:0=
+ media-libs/fontconfig
+ >=sys-auth/polkit-0.103
+ >=x11-libs/gdk-pixbuf-2.23.0:2
+ >=x11-libs/gtk+-3.16.0:3
+ >=x11-libs/libnotify-0.7.3:0=
+ x11-libs/libX11
+ >=x11-libs/libxklavier-5.1
+
+ colord? ( >=x11-misc/colord-0.1.14:0= )
+ input_devices_wacom? (
+ >=dev-libs/libwacom-0.7:=
+ >=gnome-extra/cinnamon-settings-daemon-5.2:0=
+ >=x11-libs/libXi-1.2 )
+ networkmanager? (
+ >=gnome-extra/nm-applet-1.2.0
+ >=net-libs/libnma-1.8.34
+ >=net-misc/networkmanager-1.2.0:=[modemmanager?]
+
+ modemmanager? ( >=net-misc/modemmanager-0.7 )
+ )
+ gnome-online-accounts? (
+ >=net-libs/gnome-online-accounts-3.18.0
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ x11-themes/adwaita-icon-theme
+
+ colord? ( >=gnome-extra/gnome-color-manager-3 )
+ input_devices_wacom? ( gnome-extra/cinnamon-settings-daemon[input_devices_wacom] )
+ systemd? ( >=sys-apps/systemd-31 )
+ !systemd? ( app-admin/openrc-settingsd )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ app-text/iso-codes
+ x11-base/xorg-proto
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-util/glib-utils
+ >=sys-devel/gettext-0.17
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ # Fix >=libnma-1.8.34
+ # https://github.com/linuxmint/cinnamon-control-center/commit/0f4d212874c4fbee18b860963d0a5c7bd54dcfd1
+ "${FILESDIR}"/${PN}-5.2.1-fix-libnma.patch
+
+ # Fix >=libgnomekbd-3.28
+ # https://github.com/linuxmint/cinnamon-control-center/commit/8cb73375e66b93da18f7bde728d4a832c07aada4
+ "${FILESDIR}"/${PN}-5.2.1-fix-libgnomekbd.patch
+)
+
+src_prepare() {
+ default
+ python_fix_shebang meson_install_schemas.py
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use colord color)
+ $(meson_use modemmanager)
+ $(meson_use networkmanager)
+ $(meson_use gnome-online-accounts onlineaccounts)
+ $(meson_use input_devices_wacom wacom)
+ )
+ meson_src_configure
+}
+
+src_test() {
+ virtx meson_src_test
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+}
+
+pkg_postrm() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+}
diff --git a/gnome-extra/cinnamon-control-center/files/cinnamon-control-center-5.2.1-fix-libgnomekbd.patch b/gnome-extra/cinnamon-control-center/files/cinnamon-control-center-5.2.1-fix-libgnomekbd.patch
new file mode 100644
index 000000000000..389c97b6085c
--- /dev/null
+++ b/gnome-extra/cinnamon-control-center/files/cinnamon-control-center-5.2.1-fix-libgnomekbd.patch
@@ -0,0 +1,47 @@
+https://bugs.gentoo.org/870151
+https://github.com/linuxmint/cinnamon-control-center/pull/297
+
+From 8cb73375e66b93da18f7bde728d4a832c07aada4 Mon Sep 17 00:00:00 2001
+From: Eicke Herbertz <wolletd@posteo.de>
+Date: Tue, 23 Aug 2022 19:28:57 +0200
+Subject: [PATCH] region panel: add keys removed from libgnomekbd's API (#297)
+
+in version 3.28
+---
+ panels/region/cinnamon-region-panel-xkb.c | 6 ++++++
+ panels/region/cinnamon-region-panel-xkb.h | 5 +++++
+ 2 files changed, 11 insertions(+)
+
+diff --git a/panels/region/cinnamon-region-panel-xkb.c b/panels/region/cinnamon-region-panel-xkb.c
+index b7417e2e..3152471b 100644
+--- a/panels/region/cinnamon-region-panel-xkb.c
++++ b/panels/region/cinnamon-region-panel-xkb.c
+@@ -36,6 +36,12 @@
+
+ #define GKBD_CONFIG_KEY_LOAD_EXTRA_ITEMS "load-extra-items"
+
++// These were removed from the API of libgnomekbd in version 3.28
++const gchar GKBD_DESKTOP_CONFIG_KEY_DEFAULT_GROUP[] = "default-group";
++const gchar GKBD_DESKTOP_CONFIG_KEY_GROUP_PER_WINDOW[] = "group-per-window";
++const gchar GKBD_KEYBOARD_CONFIG_KEY_LAYOUTS[] = "layouts";
++const gchar GKBD_KEYBOARD_CONFIG_KEY_OPTIONS[] = "options";
++
+ XklEngine *engine;
+ XklConfigRegistry *config_registry;
+
+diff --git a/panels/region/cinnamon-region-panel-xkb.h b/panels/region/cinnamon-region-panel-xkb.h
+index bd7b47d3..cfa396de 100644
+--- a/panels/region/cinnamon-region-panel-xkb.h
++++ b/panels/region/cinnamon-region-panel-xkb.h
+@@ -36,6 +36,11 @@ extern GSettings *xkb_keyboard_settings;
+ extern GSettings *xkb_desktop_settings;
+ extern GkbdKeyboardConfig initial_config;
+
++extern const gchar GKBD_DESKTOP_CONFIG_KEY_DEFAULT_GROUP[];
++extern const gchar GKBD_DESKTOP_CONFIG_KEY_GROUP_PER_WINDOW[];
++extern const gchar GKBD_KEYBOARD_CONFIG_KEY_LAYOUTS[];
++extern const gchar GKBD_KEYBOARD_CONFIG_KEY_OPTIONS[];
++
+ extern void setup_xkb_tabs (GtkBuilder * dialog);
+
+ extern void xkb_layouts_fill_selected_tree (GtkBuilder * dialog);