diff options
Diffstat (limited to 'gnome-base/gnome-control-center')
-rw-r--r-- | gnome-base/gnome-control-center/Manifest | 1 | ||||
-rw-r--r-- | gnome-base/gnome-control-center/gnome-control-center-45_rc.ebuild | 203 |
2 files changed, 204 insertions, 0 deletions
diff --git a/gnome-base/gnome-control-center/Manifest b/gnome-base/gnome-control-center/Manifest index 793b8d2bd7e7..6b55882b9192 100644 --- a/gnome-base/gnome-control-center/Manifest +++ b/gnome-base/gnome-control-center/Manifest @@ -3,5 +3,6 @@ DIST gnome-control-center-44.2.tar.xz 7634312 BLAKE2B 17eccb9cb59a2963dd29eea748 DIST gnome-control-center-44.3.tar.xz 7634240 BLAKE2B edd9cdd0f2cccd628670020f58f4c56f90fe7264593f8546a4d98c46cd12a1d3618f92532b1afdbd405e1ac8921d69f4f02a91e68507e8c3cd6aa29637ec0f41 SHA512 4eb4b2bd0109acc4626d64eaf948dc2b0442602a8219a9be880472710c124d2b4dabbcc74aaab1192d6bef74ad2757e719efd81b5d09850f348bc925d6f60355 DIST gnome-control-center-45.0-patchset.tar.xz 5888 BLAKE2B 7b7d818392e8758ca4d9247f55b84e4e8a37419859040e35d8fb3cef16f09423ad74a88a821a5f5947b3f36543ccc328f9a61cb71f92155b6a14669732569910 SHA512 e58adc6bb61d04f8c5ecf36335fedd190e063e42eed8e1023dcac95665a270d57c7cbd377fd0f5239f2c144040a9699b428536ffdbac798655b2c9aef25e71ae DIST gnome-control-center-45.beta.tar.xz 7696676 BLAKE2B 4f930ac42bab699485289561f16c315076fd3dbf4bdda15c6eb1551a4b040eba9cf7f0d6b9082424f53004bc902301368a4fe69fa4214052f12a84314134323f SHA512 cd669e6c0c6bfbbcda564be60cd6d3e8fb8924e1817dfb8c251e99e4041bb10f1a7ed47d173d3f52bf47635a9ed1a367cc74ddac16c9c5170785a05f03f377c8 +DIST gnome-control-center-45.rc.tar.xz 7710832 BLAKE2B c564becf825b21caa1bc0de26b481d28cb892a2053bd06c87fa6e5d09d645ab9d118b73a09b8e36608bc413dcc8f22eee98fb89d67028d464dd6103d60207945 SHA512 6b00ba0df7c6b4acd15ed381f83941ec0af88e2cbc9ce40eb0dd2c7d02926d21256f45cee28941e8adb9c0f05c0bba0aca05b54f7fefcaadcb9615fce44ba7a6 DIST gnome-control-center-gentoo-logo-dark.svg 14293 BLAKE2B 570e9326b8abe45849c31fd5cdb3fcfb1b2f18eac522f958928df5c3b747b0699f50a882f31cf7c0ae1f2138194f18596f738f42c942b57d340c53d46d82c551 SHA512 91227dafcf2091bb1568b0f9eec68b5e371ec64c9a6bc3605821f60d6bf2bd94dec0564f6a16a4a70d1db4d4df49fc25b6c910367bae3b85205cc609a9f2701b DIST gnome-control-center-gentoo-logo.svg 14288 BLAKE2B 371fc68b1015c8672db3e3858ae9077b1e3a9937e6add8690c39db36302ec031391c4d35e0c0b87094ca474a00c4187849e2d7111df34f43bc5bd7be52678527 SHA512 cf88933546de54ca15e2e830ac1086a78c4150f0ff59b8091e7e1cade5961c4e4cb83120a818a960b77841353ce3584ddc8f36b6edbde05543600283a143ad7b diff --git a/gnome-base/gnome-control-center/gnome-control-center-45_rc.ebuild b/gnome-base/gnome-control-center/gnome-control-center-45_rc.ebuild new file mode 100644 index 000000000000..bb59eaffd551 --- /dev/null +++ b/gnome-base/gnome-control-center/gnome-control-center-45_rc.ebuild @@ -0,0 +1,203 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit gnome.org gnome2-utils meson python-any-r1 virtualx xdg + +DESCRIPTION="GNOME's main interface to configure various aspects of the desktop" +HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-control-center" +SRC_URI+=" https://dev.gentoo.org/~mattst88/distfiles/${PN}-45.0-patchset.tar.xz" +SRC_URI+=" https://dev.gentoo.org/~mattst88/distfiles/${PN}-gentoo-logo.svg" +SRC_URI+=" https://dev.gentoo.org/~mattst88/distfiles/${PN}-gentoo-logo-dark.svg" +# Logo is CC-BY-SA-2.5 +LICENSE="GPL-2+ CC-BY-SA-2.5" +SLOT="2" +IUSE="+bluetooth +cups debug elogind +gnome-online-accounts +ibus input_devices_wacom kerberos networkmanager systemd test wayland" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + ^^ ( elogind systemd ) +" # Theoretically "?? ( elogind systemd )" is fine too, lacking some functionality at runtime, but needs testing if handled gracefully enough +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + +# meson.build depends on python unconditionally +BDEPEND="${PYTHON_DEPS}" + +# kerberos unfortunately means mit-krb5; build fails with heimdal +# display panel requires colord and gnome-settings-daemon[colord] +# wacom panel requires gsd-enums.h from gsd at build time, probably also runtime support +# printer panel requires cups and smbclient (the latter is not patched yet to be separately optional) +# First block is toplevel meson.build deps in order of occurrence (plus deeper deps if in same conditional). Second block is dependency() from subdir meson.builds, sorted by directory name occurrence order +DEPEND=" + gnome-online-accounts? ( + x11-libs/gtk+:3 + >=net-libs/gnome-online-accounts-3.25.3:= + ) + >=media-libs/libpulse-2.0[glib] + >=gui-libs/gtk-4.11.2:4[X,wayland=] + >=gui-libs/libadwaita-1.4_alpha:1 + >=sys-apps/accountsservice-0.6.39 + >=x11-misc/colord-0.1.34:0= + >=x11-libs/gdk-pixbuf-2.23.0:2 + >=dev-libs/glib-2.75.0:2 + gnome-base/gnome-desktop:4= + >=gnome-base/gnome-settings-daemon-41.0[colord,input_devices_wacom?] + >=gnome-base/gsettings-desktop-schemas-42_alpha + dev-libs/libxml2:2 + >=sys-power/upower-0.99.8:= + >=dev-libs/libgudev-232 + >=x11-libs/libX11-1.8 + >=x11-libs/libXi-1.2 + media-libs/libepoxy + app-crypt/gcr:0= + >=dev-libs/libpwquality-1.2.2 + >=sys-auth/polkit-0.114 + cups? ( + >=net-print/cups-1.7[dbus] + >=net-fs/samba-4.0.0[client] + ) + ibus? ( >=app-i18n/ibus-1.5.2 ) + networkmanager? ( + >=net-libs/libnma-1.10.2 + >=net-misc/networkmanager-1.24.0[modemmanager] + >=net-misc/modemmanager-0.7.990:= + ) + bluetooth? ( net-wireless/gnome-bluetooth:3= ) + input_devices_wacom? ( >=dev-libs/libwacom-0.27:= ) + kerberos? ( app-crypt/mit-krb5 ) + + x11-libs/cairo[glib] + >=x11-libs/colord-gtk-0.3.0:= + media-libs/fontconfig + gnome-base/libgtop:2= + >=sys-fs/udisks-2.1.8:2 + app-crypt/libsecret + net-libs/gnutls:= + media-libs/gsound + + x11-libs/pango +" +# media-libs/libcanberra[pulseaudio,sound] needed for Speaker tests in +# Settings/Sound/Output/Output Device, bug #814110 +# systemd/elogind USE flagged because package manager will potentially try to satisfy a +# "|| ( systemd ( elogind openrc-settingsd)" via systemd if openrc-settingsd isn't already installed. +# gnome-color-manager needed for gcm-calibrate and gcm-viewer calls from color panel +# <gnome-color-manager-3.1.2 has file collisions with g-c-c-3.1.x +# +# mouse panel needs a concrete set of X11 drivers at runtime, bug #580474 +# Also we need newer driver versions to allow wacom and libinput drivers to +# not collide +# +# system-config-printer provides org.fedoraproject.Config.Printing service and interface +# cups-pk-helper provides org.opensuse.cupspkhelper.mechanism.all-edit policykit helper policy +RDEPEND="${DEPEND} + media-libs/libcanberra[pulseaudio,sound] + systemd? ( >=sys-apps/systemd-31 ) + elogind? ( + app-admin/openrc-settingsd + sys-auth/elogind + ) + x11-themes/adwaita-icon-theme + >=gnome-extra/gnome-color-manager-3.1.2 + cups? ( + app-admin/system-config-printer + net-print/cups-pk-helper + ) + gnome-extra/tecla + wayland? ( dev-libs/libinput ) + !wayland? ( + >=x11-drivers/xf86-input-libinput-0.19.0 + input_devices_wacom? ( >=x11-drivers/xf86-input-wacom-0.33.0 ) + ) +" +# PDEPEND to avoid circular dependency; gnome-session-check-accelerated called by info panel +# gnome-session-2.91.6-r1 also needed so that 10-user-dirs-update is run at login +PDEPEND=">=gnome-base/gnome-session-2.91.6-r1 + networkmanager? ( gnome-extra/nm-applet )" # networking panel can call into nm-connection-editor + +BDEPEND=" + dev-libs/libxslt + app-text/docbook-xsl-stylesheets + app-text/docbook-xml-dtd:4.2 + x11-base/xorg-proto + dev-libs/libxml2:2 + dev-util/gdbus-codegen + dev-util/glib-utils + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + test? ( + $(python_gen_any_dep ' + dev-python/python-dbusmock[${PYTHON_USEDEP}] + ') + x11-apps/setxkbmap + ) +" + +PATCHES=( + # Patches from gnome-43 branch + # Makes some panels and dependencies optional + # https://bugzilla.gnome.org/686840, 697478, 700145 + # Fix some absolute paths to be appropriate for Gentoo + "${WORKDIR}"/patches/ +) + +python_check_deps() { + use test || return 0 + python_has_version "dev-python/python-dbusmock[${PYTHON_USEDEP}]" +} + +pkg_setup() { + python-any-r1_pkg_setup +} + +src_prepare() { + default + xdg_environment_reset + # Mark python tests with shebang executable, so that meson will launch them directly, instead + # of via its own python-single-r1 version, which might not match what we get from python_check_deps + chmod a+x tests/network/test-network-panel.py tests/datetime/test-datetime.py || die +} + +src_configure() { + local emesonargs=( + $(meson_use bluetooth) + -Dcups=$(usex cups enabled disabled) + -Ddocumentation=true # manpage + -Dgoa=$(usex gnome-online-accounts enabled disabled) + $(meson_use ibus) + -Dkerberos=$(usex kerberos enabled disabled) + $(meson_use networkmanager network_manager) + -Dprivileged_group=wheel + -Dsnap=false + $(meson_use test tests) + $(meson_use input_devices_wacom wacom) + #$(meson_use wayland) # doesn't do anything in 3.34 and 3.36 due to unified gudev handling code + # bashcompletions installed to $datadir/bash-completion/completions by v3.28.2, which is the same as $(get_bashcompdir) + -Dmalcontent=false # unpackaged + -Ddistributor_logo=/usr/share/pixmaps/gnome-control-center-gentoo-logo.svg + -Ddark_mode_distributor_logo=/usr/share/pixmaps/gnome-control-center-gentoo-logo-dark.svg + ) + meson_src_configure +} + +src_test() { + virtx meson_src_test +} + +src_install() { + meson_src_install + insinto /usr/share/pixmaps + doins "${DISTDIR}"/gnome-control-center-gentoo-logo.svg + doins "${DISTDIR}"/gnome-control-center-gentoo-logo-dark.svg +} + +pkg_postinst() { + xdg_pkg_postinst + gnome2_schemas_update +} + +pkg_postrm() { + xdg_pkg_postrm + gnome2_schemas_update +} |