f25c8d7
%define gcr_version 4.1.0
f25c8d7
%define gnome_online_accounts_version 3.49.1
12b303f
%define glib2_version 2.76.6
a15f247
%define gnome_desktop_version 44.0-7
383c30c
%define gsd_version 41.0
568e562
%define gsettings_desktop_schemas_version 46~beta
17a7776
%define upower_version 0.99.8
943c10a
%define gtk4_version 4.11.2
383c30c
%define gnome_bluetooth_version 42~alpha
943c10a
%define libadwaita_version 1.4~alpha
943c10a
%define nm_version 1.24.0
257f539
beabe92
%global tarball_version %%(echo %{version} | tr '~' '.')
beabe92
1e5a87b
# Disable parental control for RHEL builds
1e5a87b
%bcond malcontent %[!0%{?rhel}]
1e5a87b
257f539
Name:           gnome-control-center
7f316e6
Version:        46.1
3f91c93
Release:        %autorelease
257f539
Summary:        Utilities to configure the GNOME desktop
257f539
ad5177c
License:        GPL-2.0-or-later AND CC0-1.0
1943e4d
URL:            https://gitlab.gnome.org/GNOME/gnome-control-center/
12b303f
Source0:        https://download.gnome.org/sources/%{name}/46/%{name}-%{tarball_version}.tar.xz
a15f247
257f539
BuildRequires:  desktop-file-utils
257f539
BuildRequires:  docbook-style-xsl libxslt
a5a4f99
BuildRequires:  gcc
257f539
BuildRequires:  gettext
257f539
BuildRequires:  meson
Felipe Borges fdc80d1
BuildRequires:  setxkbmap
257f539
BuildRequires:  pkgconfig(accountsservice)
257f539
BuildRequires:  pkgconfig(colord)
383c30c
BuildRequires:  pkgconfig(colord-gtk4)
1943e4d
BuildRequires:  pkgconfig(cups)
f25c8d7
BuildRequires:  pkgconfig(gcr-4) >= %{gcr_version}
257f539
BuildRequires:  pkgconfig(gdk-pixbuf-2.0)
257f539
BuildRequires:  pkgconfig(gdk-wayland-3.0)
257f539
BuildRequires:  pkgconfig(gio-2.0) >= %{glib2_version}
383c30c
BuildRequires:  pkgconfig(gnome-desktop-4) >= %{gnome_desktop_version}
257f539
BuildRequires:  pkgconfig(gnome-settings-daemon) >= %{gsd_version}
257f539
BuildRequires:  pkgconfig(goa-1.0) >= %{gnome_online_accounts_version}
257f539
BuildRequires:  pkgconfig(goa-backend-1.0)
257f539
BuildRequires:  pkgconfig(gsettings-desktop-schemas) >= %{gsettings_desktop_schemas_version}
931570a
BuildRequires:  pkgconfig(gsound)
383c30c
BuildRequires:  pkgconfig(gtk4) >= %{gtk4_version}
257f539
BuildRequires:  pkgconfig(gudev-1.0)
257f539
BuildRequires:  pkgconfig(ibus-1.0)
383c30c
BuildRequires:  pkgconfig(libadwaita-1) >= %{libadwaita_version}
257f539
BuildRequires:  pkgconfig(libgtop-2.0)
Yaroslav Fedevych 356390f
BuildRequires:  pkgconfig(libnm) >= %{nm_version}
383c30c
BuildRequires:  pkgconfig(libnma-gtk4)
257f539
BuildRequires:  pkgconfig(libpulse)
257f539
BuildRequires:  pkgconfig(libpulse-mainloop-glib)
9f0d268
BuildRequires:  pkgconfig(libsecret-1)
12b303f
BuildRequires:  pkgconfig(libsoup-3.0)
257f539
BuildRequires:  pkgconfig(libxml-2.0)
1e5a87b
%if %{with malcontent}
Felipe Borges 98f54f6
BuildRequires:  pkgconfig(malcontent-0)
1e5a87b
%endif
257f539
BuildRequires:  pkgconfig(mm-glib)
257f539
BuildRequires:  pkgconfig(polkit-gobject-1)
257f539
BuildRequires:  pkgconfig(pwquality)
257f539
BuildRequires:  pkgconfig(smbclient)
c221168
BuildRequires:  pkgconfig(tecla)
1943e4d
BuildRequires:  pkgconfig(udisks2)
1b8b980
BuildRequires:  pkgconfig(upower-glib) >= %{upower_version}
257f539
BuildRequires:  pkgconfig(x11)
257f539
BuildRequires:  pkgconfig(xi)
257f539
%ifnarch s390 s390x
383c30c
BuildRequires:  pkgconfig(gnome-bluetooth-3.0) >= %{gnome_bluetooth_version}
257f539
BuildRequires:  pkgconfig(libwacom)
257f539
%endif
257f539
257f539
# Versioned library deps
383c30c
Requires: libadwaita%{?_isa} >= %{libadwaita_version}
257f539
Requires: glib2%{?_isa} >= %{glib2_version}
383c30c
Requires: gnome-desktop4%{?_isa} >= %{gnome_desktop_version}
257f539
Requires: gnome-online-accounts%{?_isa} >= %{gnome_online_accounts_version}
257f539
Requires: gnome-settings-daemon%{?_isa} >= %{gsd_version}
257f539
Requires: gsettings-desktop-schemas%{?_isa} >= %{gsettings_desktop_schemas_version}
383c30c
Requires: gtk4%{?_isa} >= %{gtk4_version}
1b8b980
Requires: upower%{?_isa} >= %{upower_version}
257f539
%ifnarch s390 s390x
877cc8b
Recommends: gnome-bluetooth%{?_isa} >= 1:%{gnome_bluetooth_version}
257f539
%endif
257f539
257f539
Requires: %{name}-filesystem = %{version}-%{release}
257f539
# For user accounts
257f539
Requires: accountsservice
257f539
Requires: alsa-lib
914091a
# For the thunderbolt panel
8334526
Recommends: bolt
257f539
# For the color panel
257f539
Requires: colord
257f539
# For the printers panel
257f539
Requires: cups-pk-helper
David Herrmann 97db40c
Requires: dbus
257f539
# For the user languages
257f539
Requires: iso-codes
1e5a87b
%if %{with malcontent}
d1d1709
# For parental controls support
d1d1709
Requires: malcontent
Felipe Borges aeb8139
Recommends: malcontent-control
1e5a87b
%endif
7789318
# For the network panel
e112c26
Recommends: NetworkManager-wifi
7789318
Recommends: nm-connection-editor
Michael Catanzaro 2a91d0f
# For Show Details in the color panel
Michael Catanzaro 2a91d0f
Recommends: gnome-color-manager
257f539
# For the sharing panel
f1431db
Recommends: gnome-remote-desktop
f1431db
%if 0%{?fedora}
5adeafd
Recommends: rygel
257f539
%endif
257f539
# For the info/details panel
885e001
Recommends: switcheroo-control
257f539
# For the keyboard panel
c7e67c3
Requires: /usr/bin/tecla
21b7232
%if 0%{?fedora} >= 35 || 0%{?rhel} >= 9
21b7232
# For the power panel
21b7232
Recommends: power-profiles-daemon
21b7232
%endif
257f539
257f539
# Renamed in F28
257f539
Provides: control-center = 1:%{version}-%{release}
257f539
Provides: control-center%{?_isa} = 1:%{version}-%{release}
257f539
Obsoletes: control-center < 1:%{version}-%{release}
257f539
257f539
%description
257f539
This package contains configuration utilities for the GNOME desktop, which
257f539
allow to configure accessibility options, desktop fonts, keyboard and mouse
257f539
properties, sound setup, desktop theme and background, user interface
257f539
properties, screen resolution, and other settings.
257f539
257f539
%package filesystem
257f539
Summary: GNOME Control Center directories
257f539
# NOTE: this is an "inverse dep" subpackage. It gets pulled in
257f539
# NOTE: by the main package and MUST not depend on the main package
257f539
BuildArch: noarch
257f539
# Renamed in F28
257f539
Provides: control-center-filesystem = 1:%{version}-%{release}
257f539
Obsoletes: control-center-filesystem < 1:%{version}-%{release}
257f539
257f539
%description filesystem
257f539
The GNOME control-center provides a number of extension points
257f539
for applications. This package contains directories where applications
257f539
can install configuration files that are picked up by the control-center
257f539
utilities.
257f539
257f539
%prep
6e4a90b
%autosetup -p1 -n %{name}-%{tarball_version}
257f539
257f539
%build
Michael Catanzaro 6646c56
%meson \
Michael Catanzaro 6646c56
  -Ddocumentation=true \
Michael Catanzaro 6646c56
%if 0%{?fedora}
dcef09d
  -Ddistributor_logo=%{_datadir}/pixmaps/fedora_logo_med.png \
dcef09d
  -Ddark_mode_distributor_logo=%{_datadir}/pixmaps/fedora_whitelogo_med.png \
Michael Catanzaro 73d3dce
%endif
Michael Catanzaro 73d3dce
%if 0%{?rhel}
Michael Catanzaro 6646c56
  -Ddistributor_logo=%{_datadir}/pixmaps/fedora-logo.png \
Michael Catanzaro 6646c56
  -Ddark_mode_distributor_logo=%{_datadir}/pixmaps/system-logo-white.png \
Michael Catanzaro 6646c56
%endif
1e5a87b
%if %{with malcontent}
1e5a87b
  -Dmalcontent=true \
1e5a87b
%else
1e5a87b
  -Dmalcontent=false \
1e5a87b
%endif
Michael Catanzaro 6646c56
  %{nil}
257f539
%meson_build
257f539
257f539
%install
257f539
%meson_install
257f539
257f539
# We do want this
257f539
mkdir -p $RPM_BUILD_ROOT%{_datadir}/gnome/wm-properties
257f539
257f539
# We don't want these
257f539
rm -rf $RPM_BUILD_ROOT%{_datadir}/gnome/autostart
257f539
rm -rf $RPM_BUILD_ROOT%{_datadir}/gnome/cursor-fonts
257f539
257f539
%find_lang %{name} --all-name --with-gnome
257f539
257f539
%files -f %{name}.lang
257f539
%license COPYING
79b5f0d
%doc NEWS README.md
257f539
%{_bindir}/gnome-control-center
257f539
%{_datadir}/applications/*.desktop
257f539
%{_datadir}/bash-completion/completions/gnome-control-center
dd0d228
%{_datadir}/dbus-1/services/org.gnome.Settings.SearchProvider.service
dd0d228
%{_datadir}/dbus-1/services/org.gnome.Settings.service
257f539
%{_datadir}/gettext/
dd0d228
%{_datadir}/glib-2.0/schemas/org.gnome.Settings.gschema.xml
257f539
%{_datadir}/gnome-control-center/keybindings/*.xml
257f539
%{_datadir}/gnome-control-center/pixmaps
dd0d228
%{_datadir}/gnome-shell/search-providers/org.gnome.Settings.search-provider.ini
dd0d228
%{_datadir}/icons/gnome-logo-text*.svg
257f539
%{_datadir}/icons/hicolor/*/*/*
9a195d9
%{_mandir}/man1/gnome-control-center.1*
dd0d228
%{_metainfodir}/org.gnome.Settings.appdata.xml
257f539
%{_datadir}/pixmaps/faces
257f539
%{_datadir}/pkgconfig/gnome-keybindings.pc
257f539
%{_datadir}/polkit-1/actions/org.gnome.controlcenter.*.policy
257f539
%{_datadir}/polkit-1/rules.d/gnome-control-center.rules
257f539
%{_datadir}/sounds/gnome/default/*/*.ogg
257f539
%{_libexecdir}/gnome-control-center-search-provider
Bastien Nocera ff8e0e6
%{_libexecdir}/gnome-control-center-print-renderer
257f539
257f539
%files filesystem
257f539
%dir %{_datadir}/gnome-control-center
257f539
%dir %{_datadir}/gnome-control-center/keybindings
257f539
%dir %{_datadir}/gnome/wm-properties
257f539
257f539
%changelog
3f14997
%autochangelog