Gentoo Archives: gentoo-commits

From: Matt Turner <mattst88@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/
Date: Sun, 19 Mar 2023 23:38:30
Message-Id: 1679269098.ea2c4f24403b5a46ed10539c66b716294c1a646a.mattst88@gentoo
1 commit: ea2c4f24403b5a46ed10539c66b716294c1a646a
2 Author: Guillermo Joandet <gjoandet <AT> gmail <DOT> com>
3 AuthorDate: Sun Mar 19 18:20:58 2023 +0000
4 Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
5 CommitDate: Sun Mar 19 23:38:18 2023 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea2c4f24
7
8 gnome-base/gnome-shell: Version bump to 44.0
9
10 Signed-off-by: Guillermo Joandet <gjoandet <AT> gmail.com>
11 Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
12
13 gnome-base/gnome-shell/Manifest | 1 +
14 gnome-base/gnome-shell/gnome-shell-44.0.ebuild | 182 +++++++++++++++++++++++++
15 2 files changed, 183 insertions(+)
16
17 diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
18 index 4b9d82994026..8514999bda5d 100644
19 --- a/gnome-base/gnome-shell/Manifest
20 +++ b/gnome-base/gnome-shell/Manifest
21 @@ -1,3 +1,4 @@
22 DIST gnome-shell-43.2.tar.xz 1946776 BLAKE2B 0b581ed84bb3b8804cb4b5be07ae6be479f1092abf4c018d140edc81dcf0f88dc6c3321f591bc55c16e2141b4dd59e353c1f244749de13e4571a5b5aba6ad57d SHA512 f25754b60696723db3db4141eb14fda88f5d913cc8a9d7270a34b9a1493f9bd4caadf45b142fd0bd82f594d9fb47980c3b0242bb58ee184a61968f0d1f09bfc4
23 DIST gnome-shell-43.3.tar.xz 1953404 BLAKE2B a3ba8bfa5dcd65b50228b447a20d8f50d6fea1b18c36383214fb055491ea5baf43caa227ecac7c7d59a2f3d56bb25fbf04209cdeff32370e01af0b7f5aa8b97a SHA512 6d2a36b21b1e3d1bd8667c72ff2c2cf4e57a3b0abbcb9b4e115803ec727b892f5884ba7aa48412396c855294c58e862dd2d972e1d6bed0de657e208f4c4aaab9
24 +DIST gnome-shell-44.0.tar.xz 1992764 BLAKE2B 2d8ccb04c143e174c992bfecc9e5c8f78025db9af741ed120713c8fcb934def98e182cf6f993c1fafb5088b70759c1742329134fa87cf0288fbec018d174fff2 SHA512 5e19e3e3b06be6b06699f49501dee85fd21e5f4f394902732c505c24baa16a719848e31034d98718deb06cb004d3e8daf886a086412c2b67614eafecd1676bde
25 DIST gnome-shell-44.rc.tar.xz 1997120 BLAKE2B c82ca81d6470176e15dbbec3de9766890e0bddde77e68b071ee405762d5b98292fe68258be14699e5b9939208489d99c1e092b4c4ffe76c545b4fd01159ca450 SHA512 b7426564ae5face421f7e61574044851bacc828566629bb4f9efe354e5d3bc3c26e558b20ff07af0e904f1f490d5e734ed66f65c3274152259fa661e1856dcbd
26
27 diff --git a/gnome-base/gnome-shell/gnome-shell-44.0.ebuild b/gnome-base/gnome-shell/gnome-shell-44.0.ebuild
28 new file mode 100644
29 index 000000000000..638f1c5e3c69
30 --- /dev/null
31 +++ b/gnome-base/gnome-shell/gnome-shell-44.0.ebuild
32 @@ -0,0 +1,182 @@
33 +# Copyright 1999-2023 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=8
37 +PYTHON_COMPAT=( python3_{9..11} )
38 +
39 +inherit gnome.org gnome2-utils meson optfeature python-single-r1 virtualx xdg
40 +
41 +DESCRIPTION="Provides core UI functions for the GNOME desktop"
42 +HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell https://gitlab.gnome.org/GNOME/gnome-shell"
43 +
44 +LICENSE="GPL-2+ LGPL-2+"
45 +SLOT="0"
46 +IUSE="elogind gtk-doc +ibus +networkmanager systemd test"
47 +REQUIRED_USE="${PYTHON_REQUIRED_USE}
48 + ?? ( elogind systemd )"
49 +RESTRICT="!test? ( test )"
50 +
51 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
52 +
53 +# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
54 +DEPEND="
55 + >=gnome-extra/evolution-data-server-3.46.0:=
56 + >=app-crypt/gcr-3.90.0:4=[introspection]
57 + >=dev-libs/glib-2.68:2
58 + >=dev-libs/gobject-introspection-1.49.1:=
59 + >=dev-libs/gjs-1.73.1[cairo]
60 + >=x11-libs/gtk+-3.15.0:3[introspection]
61 + >=x11-wm/mutter-44.0:0/12[introspection,test?]
62 + >=sys-auth/polkit-0.120_p20220509[introspection]
63 + >=gnome-base/gsettings-desktop-schemas-42_beta[introspection]
64 + >=x11-libs/startup-notification-0.11
65 + >=app-i18n/ibus-1.5.19
66 + >=gnome-base/gnome-desktop-40.0:4
67 + networkmanager? (
68 + >=net-misc/networkmanager-1.10.4[introspection]
69 + net-libs/libnma[introspection]
70 + >=app-crypt/libsecret-0.18
71 + dev-libs/dbus-glib
72 + )
73 + systemd? (
74 + >=sys-apps/systemd-242:=
75 + >=gnome-base/gnome-desktop-3.34.2:3=[systemd]
76 + )
77 + elogind? ( >=sys-auth/elogind-237 )
78 +
79 + app-arch/gnome-autoar
80 + dev-libs/json-glib
81 +
82 + >=app-accessibility/at-spi2-core-2.46:2[introspection]
83 + x11-libs/gdk-pixbuf:2[introspection]
84 + dev-libs/libxml2:2
85 + x11-libs/libX11
86 +
87 + >=media-libs/libpulse-2[glib]
88 + dev-libs/libical:=
89 + >=x11-libs/libXfixes-5.0
90 +
91 + gui-libs/gtk:4[introspection]
92 +
93 + ${PYTHON_DEPS}
94 + $(python_gen_cond_dep '
95 + dev-python/pygobject:3[${PYTHON_USEDEP}]
96 + ')
97 + media-libs/libglvnd[X]
98 +"
99 +# Runtime-only deps are probably incomplete and approximate.
100 +# Introspection deps generated from inspection of the output of:
101 +# for i in `rg -INUo 'const(?s).*imports.gi' |cut -d= -f1 |cut -c7- |sort -u`; do echo $i ;done |cut -d, -f1 |sort -u
102 +# or
103 +# rg -INUo 'const(?s).*imports.gi' |cut -d= -f1 |cut -c7- | sed -e 's:[{}]::g' | awk '{$1=$1; print}' | awk -F',' '{$1=$1;print}' | tr ' ' '\n' | sort -u | sed -e 's/://g'
104 +# These will give a lot of unnecessary things due to greedy matching (TODO), and `(?s).*?` doesn't seem to work as desired.
105 +# Compare with `grep -rhI 'imports.gi.versions' |sort -u` for any SLOT requirements
106 +# Each block:
107 +# 1. Introspection stuff needed via imports.gi (those that build time check may be listed above already)
108 +# 2. gnome-session needed for shutdown/reboot/inhibitors/etc
109 +# 3. Control shell settings
110 +# 4. xdg-utils needed for xdg-open, used by extension tool
111 +# 5. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
112 +# 6. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c # TODO: Review
113 +# 7. IBus is needed for nls integration
114 +# 8. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too)
115 +# 9. xdg-desktop-portal-gtk for various integration, e.g. #764632
116 +# 10. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
117 +RDEPEND="${DEPEND}
118 + >=sys-apps/accountsservice-0.6.14[introspection]
119 + app-accessibility/at-spi2-core:2[introspection]
120 + app-misc/geoclue[introspection]
121 + media-libs/graphene[introspection]
122 + x11-libs/pango[introspection]
123 + net-libs/libsoup:3.0[introspection]
124 + >=sys-power/upower-0.99:=[introspection]
125 + gnome-base/librsvg:2[introspection]
126 +
127 + >=gnome-base/gnome-session-2.91.91
128 + >=gnome-base/gnome-settings-daemon-3.8.3
129 +
130 + x11-misc/xdg-utils
131 +
132 + >=x11-themes/adwaita-icon-theme-3.26
133 +
134 + networkmanager? (
135 + net-misc/mobile-broadband-provider-info
136 + sys-libs/timezone-data
137 + )
138 + ibus? ( >=app-i18n/ibus-1.5.26[gtk3,gtk4,introspection] )
139 + media-fonts/cantarell
140 +
141 + sys-apps/xdg-desktop-portal-gnome
142 +"
143 +# avoid circular dependency, see bug #546134
144 +PDEPEND="
145 + >=gnome-base/gdm-3.5[introspection(+)]
146 + >=gnome-base/gnome-control-center-3.26[networkmanager(+)?]
147 +"
148 +BDEPEND="
149 + dev-libs/libxslt
150 + >=dev-util/gdbus-codegen-2.45.3
151 + dev-util/glib-utils
152 + gtk-doc? ( >=dev-util/gtk-doc-1.17
153 + app-text/docbook-xml-dtd:4.5 )
154 + >=sys-devel/gettext-0.19.8
155 + virtual/pkgconfig
156 + test? ( x11-wm/mutter[test] )
157 +"
158 +# These are not needed from tarballs, unless stylesheets or manpage get patched with patchset:
159 +# dev-lang/sassc
160 +# app-text/asciidoc
161 +
162 +PATCHES=(
163 + # Change favorites defaults, bug #479918
164 + "${FILESDIR}"/40.0-defaults.patch
165 +)
166 +
167 +src_prepare() {
168 + default
169 + xdg_environment_reset
170 + # Hack in correct python shebang
171 + sed -e "s:python\.full_path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
172 +}
173 +
174 +src_configure() {
175 + local emesonargs=(
176 + -Dextensions_tool=true
177 + -Dextensions_app=true
178 + $(meson_use gtk-doc gtk_doc)
179 + -Dman=true
180 + $(meson_use test tests)
181 + $(meson_use networkmanager)
182 + $(meson_use systemd) # this controls journald integration and desktop file user services related property only as of 3.34.4
183 + # (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
184 + # suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
185 + -Dsoup2=false
186 + )
187 + meson_src_configure
188 +}
189 +
190 +src_test() {
191 + gnome2_environment_reset # Avoid dconf that looks at XDG_DATA_DIRS, which can sandbox fail if flatpak is installed
192 + virtx meson_src_test
193 +}
194 +
195 +pkg_postinst() {
196 + xdg_pkg_postinst
197 + gnome2_schemas_update
198 +
199 + if ! has_version "media-libs/mesa[llvm]"; then
200 + elog "llvmpipe is used as fallback when no 3D acceleration"
201 + elog "is available. You will need to enable llvm USE for"
202 + elog "media-libs/mesa if you do not have hardware 3D setup."
203 + fi
204 +
205 + optfeature "Bluetooth integration" gnome-base/gnome-control-center[bluetooth] net-wireless/gnome-bluetooth:3[introspection]
206 + optfeature "Browser extension integration" gnome-extra/gnome-browser-connector
207 + optfeature "Screencast/capture support" media-video/pipewire media-libs/gstreamer[introspection] media-libs/gst-plugins-base[introspection] media-libs/gst-plugins-good media-plugins/gst-plugins-vpx
208 + optfeature "Weather support" dev-libs/libgweather:4[introspection]
209 +}
210 +
211 +pkg_postrm() {
212 + xdg_pkg_postrm
213 + gnome2_schemas_update
214 +}