forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
gnome-base/gnome-shell-3.38: patchset with upstream fixes and gjs-1.6…
…8 compat Package-Manager: Portage-3.0.12, Repoman-3.0.2 Signed-off-by: Mart Raudsepp <[email protected]>
- Loading branch information
Showing
2 changed files
with
190 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,5 @@ | ||
DIST gnome-shell-3.36.7-patchset.tar.xz 6364 BLAKE2B 80a2e2a03e4cc3b15db6af872a2330c0921a63bcd03db78a970190fee93c982296b381d08ac4bd1cb5dbe5b14d9732e447445f5dcc06d607826a9026395f10bb SHA512 6f9145fd00117e6b4170e7457c83a8c3bbbbfc6086ce3bcd07813b5a4f05e58f42e889cc90799d6988af05fce9791a792e4d8d60ffe58818563c852f9923930d | ||
DIST gnome-shell-3.36.7.tar.xz 1777236 BLAKE2B 4dd3b98e8a2ffa711bffe0b3b78708c85c1979122ee71e7e0d7c55626a608ba4598071bf8659338c960ba4b0349e5b621b97f294a4961cf021b9047753136af5 SHA512 7275d1e2d2629abd2fbfae910a77c25485464e39f8317ba1b0e8e1ae3368e69af4eb85c2611e82ea04270bfd8185e24f13002df9b13335adbdff144847790656 | ||
DIST gnome-shell-3.38.4-r1-patchset.tar.xz 12744 BLAKE2B ad620ca7916370f7085541461ecd825d7703c291a849da1adf17cccf54afb7a73a6d493f4fa4a18244811d4e8fa55c92e1c7465ba8bdc8b1d1fb2f6734c2ed50 SHA512 bad6bcc8ef1c41c5ae92b265b6824d76e39c2af3aa6974866fe95834589ca4b957181527ce9092b628f000d61c70fd356ddc3ef1eadbe19a299a2d44986fc27b | ||
DIST gnome-shell-3.38.4.tar.xz 1815880 BLAKE2B 888786ca1c7ac4a84c4b4b9ccc1035de80021efe0bf54521494eb90008ad11d5ef693158fd2c30a44532ef30911e6940b81c9c2eb426465aeae5ce3f1d9dbf5d SHA512 f59d7347587ecbde7790d466ee7c81d1e0ce0ff9f92bfe9cb3efc4049231bc164c0f61b761f42dfab1eb35619736d9a55fdae2b808e12f7671900d89e529fea8 | ||
DIST gnome-shell-40.0.tar.xz 1863432 BLAKE2B 698995328575e7e879eb0459e4f0087d0e11624952ac2786fec6c431da83eff25351d909b05a7d347f10b4eaf0d384c065e1f5255c1230433c839bed515ecf40 SHA512 fc4ca3fbd3dafd4a81f97a765e53b74fa4902018721e25a767c0d353d127b0cdc69c64171188272e3f5b48f11d6ad52064cc237e35210f5e09dfcd763ceb00c4 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,189 @@ | ||
# Copyright 1999-2021 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
PYTHON_COMPAT=( python3_{7,8,9} ) | ||
|
||
inherit gnome.org gnome2-utils meson python-single-r1 virtualx xdg | ||
|
||
DESCRIPTION="Provides core UI functions for the GNOME 3 desktop" | ||
HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell" | ||
SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${PF}-patchset.tar.xz" | ||
|
||
LICENSE="GPL-2+ LGPL-2+" | ||
SLOT="0" | ||
IUSE="+bluetooth +browser-extension elogind gtk-doc +ibus +networkmanager systemd telepathy" | ||
REQUIRED_USE="${PYTHON_REQUIRED_USE} | ||
?? ( elogind systemd )" | ||
|
||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" | ||
|
||
# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h> | ||
# FIXME: | ||
# * gstreamer/pipewire support is currently automagic | ||
DEPEND=" | ||
>=gnome-extra/evolution-data-server-3.33.1:= | ||
>=app-crypt/gcr-3.7.5[introspection] | ||
>=dev-libs/glib-2.57.2:2 | ||
>=dev-libs/gobject-introspection-1.49.1:= | ||
>=dev-libs/gjs-1.65.1 | ||
>=x11-libs/gtk+-3.15.0:3[introspection] | ||
>=x11-wm/mutter-3.38.0:0/7[introspection] | ||
>=sys-auth/polkit-0.100[introspection] | ||
>=gnome-base/gsettings-desktop-schemas-3.33.1 | ||
>=x11-libs/startup-notification-0.11 | ||
>=app-i18n/ibus-1.5.2 | ||
>=gnome-base/gnome-desktop-3.35.90:3=[introspection] | ||
bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] ) | ||
>=media-libs/gstreamer-0.11.92:1.0 | ||
media-libs/gst-plugins-base:1.0 | ||
>=media-video/pipewire-0.3.0:0/0.3 | ||
networkmanager? ( | ||
>=net-misc/networkmanager-1.10.4:=[introspection] | ||
net-libs/libnma[introspection] | ||
>=app-crypt/libsecret-0.18 | ||
dev-libs/dbus-glib ) | ||
systemd? ( >=sys-apps/systemd-242 | ||
>=gnome-base/gnome-desktop-3.34.2:3=[systemd] ) | ||
elogind? ( >=sys-auth/elogind-237 ) | ||
app-arch/gnome-autoar | ||
dev-libs/json-glib | ||
>=app-accessibility/at-spi2-atk-2.5.3 | ||
x11-libs/gdk-pixbuf:2[introspection] | ||
dev-libs/libxml2:2 | ||
x11-libs/libX11 | ||
>=media-sound/pulseaudio-2[glib] | ||
>=dev-libs/atk-2[introspection] | ||
dev-libs/libical:= | ||
>=x11-libs/libXfixes-5.0 | ||
${PYTHON_DEPS} | ||
$(python_gen_cond_dep ' | ||
dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}] | ||
') | ||
media-libs/mesa[X(+)] | ||
" | ||
# Runtime-only deps are probably incomplete and approximate. | ||
# Introspection deps generated using: | ||
# grep -roe "imports.gi.*" gnome-shell-* | cut -f2 -d: | sort | uniq | ||
# Each block: | ||
# 1. Introspection stuff needed via imports.gi.* | ||
# 2. gnome-session needed for shutdown/reboot/inhibitors/etc | ||
# 3. Control shell settings | ||
# 4. logind interface needed for suspending support | ||
# 5. xdg-utils needed for xdg-open, used by extension tool | ||
# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+) | ||
# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c # TODO: Review | ||
# 8. IBus is needed for nls integration | ||
# 9. Optional telepathy chat integration | ||
# 10. 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) | ||
# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper | ||
RDEPEND="${DEPEND} | ||
>=sys-apps/accountsservice-0.6.14[introspection] | ||
app-accessibility/at-spi2-core:2[introspection] | ||
app-misc/geoclue[introspection] | ||
>=dev-libs/libgweather-3.26:2[introspection] | ||
>=sys-power/upower-0.99:=[introspection] | ||
x11-libs/pango[introspection] | ||
gnome-base/librsvg:2[introspection] | ||
>=gnome-base/gnome-session-2.91.91 | ||
>=gnome-base/gnome-settings-daemon-3.8.3 | ||
x11-misc/xdg-utils | ||
>=x11-themes/adwaita-icon-theme-3.26 | ||
networkmanager? ( | ||
net-misc/mobile-broadband-provider-info | ||
sys-libs/timezone-data ) | ||
ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] ) | ||
telepathy? ( | ||
>=net-im/telepathy-logger-0.2.4[introspection] | ||
>=net-libs/telepathy-glib-0.19[introspection] ) | ||
media-fonts/cantarell | ||
" | ||
# avoid circular dependency, see bug #546134 | ||
PDEPEND=" | ||
>=gnome-base/gdm-3.5[introspection] | ||
>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?] | ||
browser-extension? ( gnome-extra/chrome-gnome-shell ) | ||
" | ||
BDEPEND=" | ||
dev-lang/sassc | ||
dev-libs/libxslt | ||
app-text/asciidoc | ||
>=dev-util/gdbus-codegen-2.45.3 | ||
dev-util/glib-utils | ||
gtk-doc? ( >=dev-util/gtk-doc-1.17 | ||
app-text/docbook-xml-dtd:4.3 ) | ||
>=sys-devel/gettext-0.19.8 | ||
virtual/pkgconfig | ||
" | ||
|
||
PATCHES=( | ||
# origin/gnome-3-38@cf9d73ed5d31 | ||
"${WORKDIR}"/patches | ||
# Fix automagic gnome-bluetooth dep, bug #398145 | ||
"${FILESDIR}"/3.34-optional-bluetooth.patch | ||
# Change favorites defaults, bug #479918 | ||
"${FILESDIR}"/3.36-defaults.patch | ||
) | ||
|
||
src_prepare() { | ||
xdg_src_prepare | ||
# Hack in correct python shebang | ||
sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die | ||
} | ||
|
||
src_configure() { | ||
local emesonargs=( | ||
$(meson_use bluetooth) | ||
-Dextensions_tool=true | ||
-Dextensions_app=true | ||
$(meson_use gtk-doc gtk_doc) | ||
-Dman=true | ||
$(meson_use networkmanager) | ||
$(meson_use systemd) # this controls journald integration and desktop file user services related property only as of 3.34.4 | ||
# (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session) | ||
# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary | ||
) | ||
meson_src_configure | ||
} | ||
|
||
src_test() { | ||
virtx meson_src_test | ||
} | ||
|
||
pkg_postinst() { | ||
xdg_pkg_postinst | ||
gnome2_schemas_update | ||
|
||
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 GNOME Shell'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 "apps.gnome-shell.recorder/pipeline to what you want to use." | ||
fi | ||
|
||
if ! has_version "media-libs/mesa[llvm]"; then | ||
elog "llvmpipe is used as fallback when no 3D acceleration" | ||
elog "is available. You will need to enable llvm USE for" | ||
elog "media-libs/mesa if you do not have hardware 3D setup." | ||
fi | ||
|
||
# https://bugs.gentoo.org/show_bug.cgi?id=563084 | ||
# TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)? | ||
if has_version "x11-drivers/nvidia-drivers[-kms]"; then | ||
ewarn "You will need to enable kms support in x11-drivers/nvidia-drivers," | ||
ewarn "otherwise Gnome will fail to start" | ||
fi | ||
} | ||
|
||
pkg_postrm() { | ||
xdg_pkg_postrm | ||
gnome2_schemas_update | ||
} |