gnome-initial-setup/gnome-initial-setup.spec
2023-09-09 18:44:37 -04:00

130 lines
4.8 KiB
RPMSpec

%global nm_version 1.2
%global nma_version 1.0
%global glib_required_version 2.63.1
%global gtk_required_version 4.6
%global geoclue_version 2.3.1
%global gnome_desktop_version 44.0-7
%global tarball_version %%(echo %{version} | tr '~' '.')
Name: gnome-initial-setup
Version: 45~beta
Release: %autorelease
Summary: Bootstrapping your OS
License: GPL-2.0-or-later
URL: https://wiki.gnome.org/Design/OS/InitialSetup
Source0: https://download.gnome.org/sources/%{name}/45/%{name}-%{tarball_version}.tar.xz
Source1: vendor.conf
Patch: 0001-keyboard-stop-setting-current-input-source.patch
Patch: 0002-keyboard-write-to-mru-sources-setting-if-it-has-neve.patch
Patch: 0003-language-Don-t-proceed-until-localed-has-set-locale.patch
Patch: 0004-gnome-initial-setup-Bump-GLib-required-version-to-2..patch
Patch: 0005-driver-Specify-mode-via-flags-instead-of-boolean.patch
Patch: 0006-keyboard-Don-t-require-localed-for-non-system-modes.patch
Patch: 0007-keyboard-Get-default-input-sources-from-gnome-deskto.patch
Patch: 0008-gnome-initial-setup-Add-live-user-mode.patch
Patch: 0009-initial-setup-Don-t-show-duplicated-pages-between-mo.patch
Patch: 0010-gnome-initial-setup-Add-OEM-mode.patch
Patch: 0011-polkit-Add-fedora-specfic-rules.patch
Patch: 0012-gnome-initial-setup-Read-etc-sysconfig-anaconda.patch
BuildRequires: desktop-file-utils
BuildRequires: gcc
BuildRequires: meson
BuildRequires: pkgconfig(accountsservice)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(gdm)
BuildRequires: pkgconfig(geocode-glib-2.0)
BuildRequires: pkgconfig(gio-2.0) >= %{glib_required_version}
BuildRequires: pkgconfig(gio-unix-2.0) >= %{glib_required_version}
BuildRequires: pkgconfig(glib-2.0) >= %{glib_required_version}
BuildRequires: pkgconfig(gnome-desktop-4)
BuildRequires: pkgconfig(goa-1.0)
BuildRequires: pkgconfig(goa-backend-1.0)
BuildRequires: pkgconfig(gsettings-desktop-schemas)
BuildRequires: pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(gtk4) >= %{gtk_required_version}
BuildRequires: pkgconfig(gweather4)
BuildRequires: pkgconfig(ibus-1.0)
BuildRequires: pkgconfig(iso-codes)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(krb5)
BuildRequires: pkgconfig(libadwaita-1)
BuildRequires: pkgconfig(libgeoclue-2.0) >= %{geoclue_version}
BuildRequires: pkgconfig(libnma-gtk4) >= %{nma_version}
BuildRequires: pkgconfig(libnm) >= %{nm_version}
BuildRequires: pkgconfig(libsecret-1)
BuildRequires: pkgconfig(packagekit-glib2)
BuildRequires: pkgconfig(pango)
BuildRequires: pkgconfig(polkit-gobject-1)
BuildRequires: pkgconfig(pwquality)
BuildRequires: pkgconfig(rest-1.0)
BuildRequires: pkgconfig(webkitgtk-6.0)
BuildRequires: gnome-desktop4 >= %{gnome_desktop_version}
# gnome-initial-setup is being run by gdm
Requires: gdm
Requires: geoclue2-libs%{?_isa} >= %{geoclue_version}
Requires: glib2%{?_isa} >= %{glib_required_version}
Requires: gnome-desktop4%{?_isa} >= %{gnome_desktop_version}
# we install a rules file
Requires: polkit-js-engine
Requires: /usr/bin/tecla
Requires(pre): shadow-utils
Provides: user(%name)
%description
GNOME Initial Setup is an alternative to firstboot, providing
a good setup experience to welcome you to your system, and walks
you through configuring it. It is integrated with gdm.
%prep
%autosetup -p1 -n %{name}-%{tarball_version}
%build
%meson -Dparental_controls=disabled
%meson_build
%install
%meson_install
desktop-file-validate %{buildroot}%{_sysconfdir}/xdg/autostart/gnome-initial-setup-copy-worker.desktop
desktop-file-validate %{buildroot}%{_datadir}/applications/gnome-initial-setup.desktop
mkdir -p %{buildroot}%{_datadir}/gnome-initial-setup
cp %{SOURCE1} %{buildroot}%{_datadir}/gnome-initial-setup/
%find_lang %{name}
%pre
useradd -rM -d /run/gnome-initial-setup/ -s /sbin/nologin %{name} &>/dev/null || :
%files -f %{name}.lang
%license COPYING
%doc NEWS README.md
%attr(-, gnome-initial-setup, gnome-initial-setup) %dir %{_localstatedir}/lib/gnome-initial-setup
%ghost %{_localstatedir}/gnome-initial-setup/state
%{_libexecdir}/gnome-initial-setup
%{_libexecdir}/gnome-initial-setup-copy-worker
%{_libexecdir}/gnome-initial-setup-goa-helper
%{_sysconfdir}/xdg/autostart/gnome-initial-setup-copy-worker.desktop
%{_sysconfdir}/xdg/autostart/gnome-initial-setup-first-login.desktop
%{_datadir}/applications/gnome-initial-setup.desktop
%{_datadir}/dconf/profile/gnome-initial-setup
%dir %{_datadir}/gnome-initial-setup
%{_datadir}/gnome-initial-setup/initial-setup-dconf-defaults
%{_datadir}/gnome-initial-setup/vendor.conf
%{_datadir}/gnome-session/sessions/gnome-initial-setup.session
%{_datadir}/gnome-shell/modes/initial-setup.json
%{_datadir}/polkit-1/rules.d/20-gnome-initial-setup.rules
%{_sysusersdir}/gnome-initial-setup.conf
%{_userunitdir}/*
%changelog
%autochangelog