commit:     c61a3e9874559dd0193824abf3657bd58a3b662f
Author:     Matthew S. Turnbull <sparky <AT> bluefang-logic <DOT> com>
AuthorDate: Sat Sep 17 21:30:40 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 19 03:42:05 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c61a3e98

gnome-extra/cinnamon-control-center: Fix libgnomekbd 3.28 compat

Bug: https://bugs.gentoo.org/870151
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/27334
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../cinnamon-control-center-5.2.1-r3.ebuild        | 109 +++++++++++++++++++++
 ...amon-control-center-5.2.1-fix-libgnomekbd.patch |  47 +++++++++
 2 files changed, 156 insertions(+)

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 <woll...@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);

Reply via email to