%global blueprint_compiler_version 0.19 %global gcr_version 4.1.0 %global gnome_online_accounts_version 3.51.0 %global glib2_version 2.76.6 %global gnome_desktop_version 44.0-7 %global gsd_version 48~rc %global gsettings_desktop_schemas_version 50~alpha %global upower_version 1.90.6 %global gtk4_version 4.23.0 %global gnome_bluetooth_version 42~alpha %global libadwaita_version 1.8~alpha %global nm_version 1.52.0 # Disable parental control for RHEL builds %bcond malcontent %[!0%{?rhel}] Name: gnome-control-center Version: 51~beta Release: 100.pronk1%{?dist} Summary: Utilities to configure the GNOME desktop License: GPL-2.0-or-later AND CC0-1.0 URL: https://gitlab.gnome.org/GNOME/gnome-control-center/ %global pronk_base 0e0b484e2999519886a9885dc2f8514a8280a84e Source0: https://gitlab.gnome.org/GNOME/%{name}/-/archive/%{pronk_base}/%{name}-%{pronk_base}.tar.bz2 Patch0100: 0001-casting-Add-casting-service-D-Bus-contract.patch Patch0101: 0002-casting-Define-Pronk-protocol-values.patch Patch0102: 0003-casting-Validate-Pronk-protocol-payloads.patch Patch0103: 0004-casting-Represent-casting-device-state.patch Patch0104: 0005-casting-Reconcile-casting-device-inventory.patch Patch0105: 0006-casting-Track-Pronk-setup-operations.patch Patch0106: 0007-casting-Track-Pronk-display-sessions.patch Patch0107: 0008-casting-Add-Pronk-service-client.patch Patch0108: 0009-casting-Add-casting-device-row.patch Patch0109: 0010-casting-Add-Casting-panel-interface.patch Patch0110: 0011-build-Integrate-Casting-panel.patch Patch0111: 0012-shell-Register-Casting-panel.patch Patch0112: 0013-shell-Place-Casting-with-connectivity-panels.patch Patch0113: 0014-i18n-Extract-Casting-panel-messages.patch Patch0114: 0015-tests-Validate-Pronk-protocol-payloads.patch Patch0115: 0016-tests-Exercise-casting-device-model.patch Patch0116: 0017-tests-Exercise-Pronk-service-client.patch %gnome_check_version BuildRequires: blueprint-compiler >= %{blueprint_compiler_version} BuildRequires: desktop-file-utils BuildRequires: docbook-style-xsl libxslt BuildRequires: gcc BuildRequires: gettext BuildRequires: git-core BuildRequires: meson BuildRequires: pkgconfig(accountsservice) BuildRequires: pkgconfig(colord) BuildRequires: pkgconfig(colord-gtk4) BuildRequires: pkgconfig(cups) BuildRequires: pkgconfig(gcr-4) >= %{gcr_version} BuildRequires: pkgconfig(gdk-pixbuf-2.0) BuildRequires: pkgconfig(gdk-wayland-3.0) BuildRequires: pkgconfig(gio-2.0) >= %{glib2_version} BuildRequires: pkgconfig(gnome-desktop-4) >= %{gnome_desktop_version} BuildRequires: pkgconfig(gnome-settings-daemon) >= %{gsd_version} BuildRequires: pkgconfig(goa-1.0) >= %{gnome_online_accounts_version} BuildRequires: pkgconfig(goa-backend-1.0) BuildRequires: pkgconfig(gsettings-desktop-schemas) >= %{gsettings_desktop_schemas_version} BuildRequires: pkgconfig(gsound) BuildRequires: pkgconfig(gtk4) >= %{gtk4_version} BuildRequires: pkgconfig(gudev-1.0) BuildRequires: pkgconfig(ibus-1.0) BuildRequires: pkgconfig(libadwaita-1) >= %{libadwaita_version} BuildRequires: pkgconfig(libgtop-2.0) BuildRequires: pkgconfig(libnm) >= %{nm_version} BuildRequires: pkgconfig(libnma-gtk4) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(libpulse-mainloop-glib) BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(libsoup-3.0) BuildRequires: pkgconfig(libxml-2.0) %if %{with malcontent} BuildRequires: pkgconfig(malcontent-0) %endif BuildRequires: pkgconfig(mm-glib) BuildRequires: pkgconfig(polkit-gobject-1) BuildRequires: pkgconfig(pwquality) BuildRequires: pkgconfig(smbclient) BuildRequires: pkgconfig(tecla) BuildRequires: pkgconfig(udisks2) BuildRequires: pkgconfig(upower-glib) >= %{upower_version} BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xi) %ifnarch s390 s390x BuildRequires: pkgconfig(gnome-bluetooth-3.0) >= %{gnome_bluetooth_version} BuildRequires: pkgconfig(libwacom) %endif # Versioned library deps Requires: libadwaita%{?_isa} >= %{libadwaita_version} Requires: glib2%{?_isa} >= %{glib2_version} Requires: gnome-desktop4%{?_isa} >= %{gnome_desktop_version} Requires: gnome-online-accounts%{?_isa} >= %{gnome_online_accounts_version} Requires: gnome-settings-daemon%{?_isa} >= %{gsd_version} Requires: gsettings-desktop-schemas%{?_isa} >= %{gsettings_desktop_schemas_version} Requires: gtk4%{?_isa} >= %{gtk4_version} Requires: upower%{?_isa} >= %{upower_version} %ifnarch s390 s390x Recommends: gnome-bluetooth%{?_isa} >= 1:%{gnome_bluetooth_version} %endif Requires: %{name}-filesystem = %{version}-%{release} # For user accounts Requires: accountsservice Requires: alsa-lib # For the thunderbolt panel Recommends: bolt # For the color panel Requires: colord # For the printers panel Requires: cups-pk-helper Requires: dbus # For the user languages Requires: iso-codes %if %{with malcontent} # For parental controls support Requires: malcontent Recommends: malcontent-control %endif Recommends: NetworkManager-wifi # For Show Details in the color panel Recommends: gnome-color-manager # For the sharing panel Recommends: gnome-remote-desktop %if 0%{?fedora} Recommends: rygel %endif # For the info/details panel Recommends: switcheroo-control # For the keyboard panel Requires: /usr/bin/tecla %if 0%{?fedora} >= 35 || 0%{?rhel} >= 9 # For the power panel Recommends: ppd-service %if 0%{?fedora} && 0%{?fedora} < 41 Suggests: power-profiles-daemon %else Suggests: tuned-ppd %endif %endif # Renamed in F28 Provides: control-center = 1:%{version}-%{release} Provides: control-center%{?_isa} = 1:%{version}-%{release} Obsoletes: control-center < 1:%{version}-%{release} %description This package contains configuration utilities for the GNOME desktop, which allow to configure accessibility options, desktop fonts, keyboard and mouse properties, sound setup, desktop theme and background, user interface properties, screen resolution, and other settings. %package filesystem Summary: GNOME Control Center directories # NOTE: this is an "inverse dep" subpackage. It gets pulled in # NOTE: by the main package and MUST not depend on the main package BuildArch: noarch # Renamed in F28 Provides: control-center-filesystem = 1:%{version}-%{release} Obsoletes: control-center-filesystem < 1:%{version}-%{release} %description filesystem The GNOME control-center provides a number of extension points for applications. This package contains directories where applications can install configuration files that are picked up by the control-center utilities. %prep %autosetup -S git -n %{name}-%{pronk_base} %build %meson \ -Ddocumentation=true \ -Dlocation-services=enabled \ %if 0%{?fedora} -Ddistributor_logo=%{_datadir}/pixmaps/fedora_logo_med.png \ -Ddark_mode_distributor_logo=%{_datadir}/pixmaps/fedora_whitelogo_med.png \ %endif %if 0%{?rhel} -Ddistributor_logo=%{_datadir}/pixmaps/fedora-logo.png \ -Ddark_mode_distributor_logo=%{_datadir}/pixmaps/system-logo-white.png \ %endif %if %{with malcontent} -Dmalcontent=true \ %else -Dmalcontent=false \ %endif %{nil} %meson_build %install %meson_install # We do want this mkdir -p $RPM_BUILD_ROOT%{_datadir}/gnome/wm-properties # We don't want these rm -rf $RPM_BUILD_ROOT%{_datadir}/gnome/autostart rm -rf $RPM_BUILD_ROOT%{_datadir}/gnome/cursor-fonts %find_lang %{name} --all-name --with-gnome %files -f %{name}.lang %license COPYING %doc NEWS README.md %{_bindir}/gnome-control-center %{_datadir}/applications/*.desktop %{_datadir}/bash-completion/completions/gnome-control-center %{_datadir}/dbus-1/services/org.gnome.Settings.SearchProvider.service %{_datadir}/dbus-1/services/org.gnome.Settings.service %{_datadir}/dbus-1/services/org.gnome.Settings.GlobalShortcutsProvider.service %{_datadir}/dbus-1/interfaces/org.gnome.GlobalShortcutsRebind.xml %{_datadir}/gettext/ %{_datadir}/glib-2.0/schemas/org.gnome.Settings.gschema.xml %{_datadir}/gnome-control-center/keybindings/*.xml %{_datadir}/gnome-control-center/pixmaps %{_datadir}/gnome-shell/search-providers/org.gnome.Settings.search-provider.ini %{_datadir}/icons/gnome-logo-text*.svg %{_datadir}/icons/hicolor/*/*/* %{_mandir}/man1/gnome-control-center.1* %{_metainfodir}/org.gnome.Settings.metainfo.xml %{_datadir}/pixmaps/faces %{_datadir}/pkgconfig/gnome-keybindings.pc %{_datadir}/polkit-1/actions/org.gnome.controlcenter.*.policy %{_datadir}/polkit-1/rules.d/gnome-control-center.rules %{_datadir}/sounds/gnome/default/*/*.ogg %{_libexecdir}/gnome-control-center-search-provider %{_libexecdir}/gnome-control-center-print-renderer %{_libexecdir}/gnome-control-center-global-shortcuts-provider %files filesystem %dir %{_datadir}/gnome-control-center %dir %{_datadir}/gnome-control-center/keybindings %dir %{_datadir}/gnome/wm-properties %changelog %autochangelog