1 |
commit: 3093cd59db9df1003d27fec7700a2cd758528221 |
2 |
Author: Sam James <sam <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon May 2 01:09:47 2022 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon May 2 01:10:51 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3093cd59 |
7 |
|
8 |
gnome-extra/cinnamon: switch to dev-python/python-pam |
9 |
|
10 |
dev-python/pypam is unmaintained upstream and has unexplained |
11 |
test failures. Upstream Cinnamon uses python-pam and only |
12 |
falls back to pypam anyway. |
13 |
|
14 |
Bug: https://bugs.gentoo.org/833297 |
15 |
Thanks-to: Douglas Freed <dwfreed <AT> mtu.edu> |
16 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
17 |
|
18 |
gnome-extra/cinnamon/cinnamon-5.2.7-r3.ebuild | 186 ++++++++++++++++++++++++++ |
19 |
1 file changed, 186 insertions(+) |
20 |
|
21 |
diff --git a/gnome-extra/cinnamon/cinnamon-5.2.7-r3.ebuild b/gnome-extra/cinnamon/cinnamon-5.2.7-r3.ebuild |
22 |
new file mode 100644 |
23 |
index 000000000000..b0665c090769 |
24 |
--- /dev/null |
25 |
+++ b/gnome-extra/cinnamon/cinnamon-5.2.7-r3.ebuild |
26 |
@@ -0,0 +1,186 @@ |
27 |
+# Copyright 1999-2022 Gentoo Authors |
28 |
+# Distributed under the terms of the GNU General Public License v2 |
29 |
+ |
30 |
+EAPI=7 |
31 |
+ |
32 |
+PYTHON_COMPAT=( python3_{8,9,10} ) |
33 |
+PYTHON_REQ_USE="xml" |
34 |
+ |
35 |
+inherit meson gnome2-utils pax-utils python-single-r1 xdg |
36 |
+ |
37 |
+DESCRIPTION="A fork of GNOME Shell with layout similar to GNOME 2" |
38 |
+HOMEPAGE="https://projects.linuxmint.com/cinnamon/ https://github.com/linuxmint/cinnamon" |
39 |
+SRC_URI="https://github.com/linuxmint/cinnamon/archive/${PV}.tar.gz -> ${P}.tar.gz" |
40 |
+ |
41 |
+LICENSE="GPL-2+" |
42 |
+SLOT="0" |
43 |
+IUSE="+eds +gstreamer gtk-doc +nls +networkmanager" |
44 |
+REQUIRED_USE="${PYTHON_REQUIRED_USE}" |
45 |
+KEYWORDS="~amd64 ~x86" |
46 |
+ |
47 |
+DEPEND=" |
48 |
+ ${PYTHON_DEPS} |
49 |
+ app-accessibility/at-spi2-atk:2 |
50 |
+ >=dev-libs/glib-2.52.0:2[dbus] |
51 |
+ >=dev-libs/gobject-introspection-1.29.15:= |
52 |
+ dev-libs/libxml2:2 |
53 |
+ >=gnome-extra/cinnamon-desktop-5.2:0= |
54 |
+ >=gnome-extra/cinnamon-menus-5.2 |
55 |
+ >=gnome-extra/cjs-5.2[cairo] |
56 |
+ net-libs/libsoup:2.4[introspection] |
57 |
+ sys-apps/dbus |
58 |
+ >=sys-auth/polkit-0.100[introspection] |
59 |
+ virtual/opengl |
60 |
+ x11-libs/gdk-pixbuf:2[introspection] |
61 |
+ >=x11-libs/gtk+-3.12.0:3[introspection] |
62 |
+ >=x11-libs/libnotify-0.7.3:0=[introspection] |
63 |
+ x11-libs/libX11 |
64 |
+ >=x11-libs/libXfixes-5.0 |
65 |
+ x11-libs/pango[introspection] |
66 |
+ >=x11-libs/startup-notification-0.11 |
67 |
+ >=x11-wm/muffin-5.2[introspection] |
68 |
+ |
69 |
+ eds? ( |
70 |
+ gnome-extra/evolution-data-server |
71 |
+ ) |
72 |
+ gstreamer? ( |
73 |
+ media-libs/gst-plugins-base:1.0 |
74 |
+ media-libs/gstreamer:1.0 |
75 |
+ ) |
76 |
+ networkmanager? ( |
77 |
+ net-misc/networkmanager[introspection] |
78 |
+ ) |
79 |
+" |
80 |
+# caribou used by onscreen keyboard |
81 |
+# libtimezonemap used by datetime settings |
82 |
+# iso-flag-png (unpackaged) used by keyboard layout settings |
83 |
+RDEPEND=" |
84 |
+ ${DEPEND} |
85 |
+ >=app-accessibility/caribou-0.3 |
86 |
+ dev-libs/keybinder:3[introspection] |
87 |
+ dev-libs/libtimezonemap |
88 |
+ $(python_gen_cond_dep ' |
89 |
+ dev-python/dbus-python[${PYTHON_USEDEP}] |
90 |
+ dev-python/distro[${PYTHON_USEDEP}] |
91 |
+ dev-python/pexpect[${PYTHON_USEDEP}] |
92 |
+ dev-python/pillow[${PYTHON_USEDEP}] |
93 |
+ dev-python/pycairo[${PYTHON_USEDEP}] |
94 |
+ dev-python/pygobject:3[${PYTHON_USEDEP}] |
95 |
+ dev-python/pyinotify[${PYTHON_USEDEP}] |
96 |
+ dev-python/python-pam[${PYTHON_USEDEP}] |
97 |
+ dev-python/pytz[${PYTHON_USEDEP}] |
98 |
+ dev-python/requests[${PYTHON_USEDEP}] |
99 |
+ dev-python/setproctitle[${PYTHON_USEDEP}] |
100 |
+ dev-python/tinycss2[${PYTHON_USEDEP}] |
101 |
+ >=dev-python/python3-xapp-2.2.1-r1[${PYTHON_USEDEP}] |
102 |
+ ') |
103 |
+ >=gnome-base/dconf-0.4.1 |
104 |
+ >=gnome-base/gsettings-desktop-schemas-2.91.91 |
105 |
+ >=gnome-base/libgnomekbd-2.91.4 |
106 |
+ >=gnome-extra/cinnamon-control-center-5.2[networkmanager=] |
107 |
+ >=gnome-extra/cinnamon-screensaver-5.2 |
108 |
+ >=gnome-extra/cinnamon-session-5.2 |
109 |
+ >=gnome-extra/cinnamon-settings-daemon-5.2 |
110 |
+ >=gnome-extra/nemo-5.2 |
111 |
+ gnome-extra/polkit-gnome |
112 |
+ net-misc/wget |
113 |
+ sys-apps/accountsservice[introspection] |
114 |
+ sys-power/upower[introspection] |
115 |
+ >=x11-libs/xapp-2.2.8[introspection] |
116 |
+ x11-misc/xdg-utils |
117 |
+ x11-themes/adwaita-icon-theme |
118 |
+ x11-themes/gnome-themes-standard |
119 |
+ |
120 |
+ nls? ( |
121 |
+ >=gnome-extra/cinnamon-translations-5.2 |
122 |
+ ) |
123 |
+" |
124 |
+BDEPEND=" |
125 |
+ >=dev-util/intltool-0.40 |
126 |
+ >=sys-devel/gettext-0.17 |
127 |
+ virtual/pkgconfig |
128 |
+ |
129 |
+ gtk-doc? ( dev-util/gtk-doc ) |
130 |
+" |
131 |
+ |
132 |
+PATCHES=( |
133 |
+ # Fix backgrounds path as cinnamon doesn't provide them |
134 |
+ # https://github.com/linuxmint/Cinnamon/issues/3575 |
135 |
+ "${FILESDIR}"/${PN}-3.8.0-gnome-background-compatibility.patch |
136 |
+ |
137 |
+ # Use wheel group instead of sudo (from Fedora/Arch) |
138 |
+ # https://github.com/linuxmint/Cinnamon/issues/3576 |
139 |
+ "${FILESDIR}"/${PN}-3.6.6-wheel-sudo.patch |
140 |
+ |
141 |
+ # Make evolution-data-server integration optional |
142 |
+ "${FILESDIR}"/${PN}-5.2.7-eds-detection.patch |
143 |
+ |
144 |
+ # Meson fixes |
145 |
+ "${FILESDIR}"/${PN}-5.2.7-revert-meson-0.60-fix.patch |
146 |
+ "${FILESDIR}"/${PN}-5.2.7-meson-0.61-fix.patch |
147 |
+) |
148 |
+ |
149 |
+src_prepare() { |
150 |
+ xdg_src_prepare |
151 |
+ |
152 |
+ # Add polkit agent to required components |
153 |
+ # https://github.com/linuxmint/Cinnamon/issues/3579 |
154 |
+ sed -i "s/'REQUIRED', '/&polkit-cinnamon-authentication-agent-1;/" meson.build || die |
155 |
+ |
156 |
+ # shebang fixing craziness |
157 |
+ local p |
158 |
+ for p in $(grep -rl '#!.*python3' || die); do |
159 |
+ python_fix_shebang "${p}" |
160 |
+ done |
161 |
+} |
162 |
+ |
163 |
+src_configure() { |
164 |
+ local emesonargs=( |
165 |
+ $(meson_use gstreamer build_recorder) |
166 |
+ $(meson_use gtk-doc docs) |
167 |
+ -Ddisable_networkmanager=$(usex networkmanager false true) |
168 |
+ -Dpy3modules_dir="$(python_get_sitedir)" |
169 |
+ ) |
170 |
+ meson_src_configure |
171 |
+} |
172 |
+ |
173 |
+src_install() { |
174 |
+ meson_src_install |
175 |
+ |
176 |
+ python_optimize "${D}$(python_get_sitedir)" |
177 |
+ python_optimize "${ED}"/usr/share/cinnamon/ |
178 |
+ |
179 |
+ # Required for gnome-shell on hardened/PaX, bug #398941 |
180 |
+ pax-mark mr "${ED}"/usr/bin/cinnamon |
181 |
+ |
182 |
+ # Doesn't exist on Gentoo, causing this to be a dead symlink |
183 |
+ rm "${ED}/etc/xdg/menus/cinnamon-applications-merged" || die |
184 |
+ |
185 |
+ # Ensure authentication-agent is started, bug #523958 |
186 |
+ # https://github.com/linuxmint/Cinnamon/issues/3579 |
187 |
+ insinto /etc/xdg/autostart/ |
188 |
+ doins "${FILESDIR}"/polkit-cinnamon-authentication-agent-1.desktop |
189 |
+} |
190 |
+ |
191 |
+pkg_postinst() { |
192 |
+ xdg_pkg_postinst |
193 |
+ gnome2_schemas_update |
194 |
+ |
195 |
+ if use gstreamer; then |
196 |
+ if ! has_version 'media-libs/gst-plugins-good:1.0' || \ |
197 |
+ ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then |
198 |
+ ewarn "To make use of Cinnamon's built-in screen recording utility," |
199 |
+ ewarn "you need to either install media-libs/gst-plugins-good:1.0" |
200 |
+ ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change" |
201 |
+ ewarn "org.cinnamon.recorder/pipeline to what you want to use." |
202 |
+ fi |
203 |
+ else |
204 |
+ ewarn "Cinnamon's built-in screen recording utility is not installed" |
205 |
+ ewarn "because gstreamer support is disabled." |
206 |
+ fi |
207 |
+} |
208 |
+ |
209 |
+pkg_postrm() { |
210 |
+ xdg_pkg_postinst |
211 |
+ gnome2_schemas_update |
212 |
+} |