196 lines
6.5 KiB
RPMSpec
196 lines
6.5 KiB
RPMSpec
#
|
|
# spec file for package accountsservice
|
|
#
|
|
# Copyright (c) 2024 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
# allow to not build vala binding
|
|
%bcond_without vala
|
|
|
|
Name: accountsservice
|
|
Version: 23.13.9
|
|
Release: 0
|
|
Summary: D-Bus Service to Manipulate User Account Information
|
|
License: GPL-3.0-or-later
|
|
Group: System/Daemons
|
|
URL: https://www.freedesktop.org/wiki/Software/AccountsService/
|
|
Source0: https://www.freedesktop.org/software/accountsservice/%{name}-%{version}.tar.xz
|
|
# Patched mocklibc source to fix build with GCC 14
|
|
Source1: mocklibc-1.0.tar.gz
|
|
# PATCH-FIX-UPSTREAM accountsservice-mocklib-gcc14.patch -- Fix meson checksum to accept patched tarball
|
|
Patch0: accountsservice-mocklib-gcc14.patch
|
|
|
|
# WARNING: do not remove/significantly change patch1 without updating the relevant patch in gdm too
|
|
# PATCH-FIX-OPENSUSE accountsservice-sysconfig.patch bnc#688071 vuntz@opensuse.org -- Read/write autologin configuration from sysconfig, like gdm (see gdm-sysconfig-settings.patch) WAS PATCH-FIX-OPENSUSE
|
|
Patch1: accountsservice-sysconfig.patch
|
|
# PATCH-FIX-OPENSUSE accountsservice-filter-suse-accounts.patch vuntz@opensuse.org -- Filter out some system users that are specific to openSUSE
|
|
Patch2: accountsservice-filter-suse-accounts.patch
|
|
# PATCH-FIX-OPENSUSE harden_accounts-daemon.service.patch jsegitz@suse.com -- For details please see https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
|
|
Patch3: harden_accounts-daemon.service.patch
|
|
|
|
BuildRequires: gtk-doc
|
|
BuildRequires: meson
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: pkgconfig(dbus-1)
|
|
BuildRequires: pkgconfig(gio-2.0) >= 2.63.5
|
|
BuildRequires: pkgconfig(gio-unix-2.0)
|
|
BuildRequires: pkgconfig(glib-2.0) >= 2.63.5
|
|
BuildRequires: pkgconfig(gobject-introspection-1.0)
|
|
BuildRequires: pkgconfig(libsystemd) >= 186
|
|
BuildRequires: pkgconfig(polkit-gobject-1)
|
|
BuildRequires: pkgconfig(systemd)
|
|
%{?systemd_ordering}
|
|
|
|
%description
|
|
The accountsservice server provides a set of D-Bus interfaces for
|
|
querying and manipulating user account information.
|
|
|
|
The implementation is based on the useradd, usermod and userdel
|
|
commands.
|
|
|
|
%package -n libaccountsservice0
|
|
Summary: Client library for the user account information manipulation D-Bus service
|
|
# Clients do need the server to do something useful
|
|
Group: System/Libraries
|
|
Requires: %{name}
|
|
|
|
%description -n libaccountsservice0
|
|
The accountsservice server provides a set of D-Bus interfaces for
|
|
querying and manipulating user account information.
|
|
|
|
This package provides a client library for the service.
|
|
|
|
%package -n typelib-1_0-AccountsService-1_0
|
|
Summary: Introspection bindings for the user account information manipulation service
|
|
Group: System/Libraries
|
|
|
|
%description -n typelib-1_0-AccountsService-1_0
|
|
The accountsservice server provides a set of D-Bus interfaces for
|
|
querying and manipulating user account information.
|
|
|
|
This package provides the GObject Introspection bindings for the
|
|
client library.
|
|
|
|
%package devel
|
|
Summary: Header files for the user account information manipulation service
|
|
Group: Development/Libraries/C and C++
|
|
Requires: libaccountsservice0 = %{version}
|
|
Requires: typelib-1_0-AccountsService-1_0 = %{version}
|
|
|
|
%description devel
|
|
The accountsservice server provides a set of D-Bus interfaces for
|
|
querying and manipulating user account information.
|
|
|
|
%if %{with vala}
|
|
%package vala
|
|
Summary: Vala bindings for accountsservice
|
|
Group: Development/Libraries/C and C++
|
|
BuildRequires: vala
|
|
Requires: libaccountsservice0 = %{version}
|
|
Requires: typelib-1_0-AccountsService-1_0 = %{version}
|
|
|
|
%description vala
|
|
The accountsservice server provides a set of D-Bus interfaces for
|
|
querying and manipulating user account information.
|
|
|
|
This package contains the Vala bindings for accountservice.
|
|
%endif
|
|
|
|
%lang_package
|
|
|
|
%prep
|
|
%setup -q
|
|
# inject patched mocklibc tarball into package cache
|
|
cp %{SOURCE1} subprojects/packagecache/
|
|
%autopatch -p1
|
|
|
|
%build
|
|
%meson \
|
|
-Dintrospection=true \
|
|
-Dgtk_doc=true \
|
|
%if %{with vala}
|
|
-Dvapi=true \
|
|
%else
|
|
-Dvapi=false \
|
|
%endif
|
|
%{nil}
|
|
%meson_build
|
|
|
|
%install
|
|
%meson_install
|
|
%find_lang accounts-service
|
|
|
|
%pre
|
|
%service_add_pre accounts-daemon.service
|
|
|
|
%post
|
|
%service_add_post accounts-daemon.service
|
|
|
|
%preun
|
|
%service_del_preun accounts-daemon.service
|
|
|
|
%postun
|
|
%service_del_postun accounts-daemon.service
|
|
|
|
%post -n libaccountsservice0 -p /sbin/ldconfig
|
|
%postun -n libaccountsservice0 -p /sbin/ldconfig
|
|
|
|
%files
|
|
%license COPYING
|
|
%doc README.md
|
|
%{_unitdir}/accounts-daemon.service
|
|
%{_libexecdir}/accounts-daemon
|
|
%{_datadir}/dbus-1/system.d/org.freedesktop.Accounts.conf
|
|
%{_datadir}/dbus-1/interfaces/org.freedesktop.Accounts.xml
|
|
%{_datadir}/dbus-1/interfaces/org.freedesktop.Accounts.User.xml
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.Accounts.service
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.accounts.policy
|
|
# User templates
|
|
%dir %{_datadir}/accountsservice
|
|
%{_datadir}/accountsservice/user-templates
|
|
# Directories where the server stores user data
|
|
%dir %{_localstatedir}/lib/AccountsService
|
|
%dir %{_localstatedir}/lib/AccountsService/users
|
|
%dir %{_localstatedir}/lib/AccountsService/icons
|
|
%{_datadir}/locale/en/LC_MESSAGES/accounts-service.mo
|
|
%{_datadir}/locale/en_GB/LC_MESSAGES/accounts-service.mo
|
|
|
|
%files -n libaccountsservice0
|
|
%{_libdir}/*.so.0*
|
|
|
|
%files -n typelib-1_0-AccountsService-1_0
|
|
%{_libdir}/girepository-1.0/AccountsService-1.0.typelib
|
|
|
|
%files devel
|
|
%doc AUTHORS TODO
|
|
%doc %{_datadir}/gtk-doc/html/lib%{name}/
|
|
%{_libdir}/*.so
|
|
%{_libdir}/pkgconfig/accountsservice.pc
|
|
%{_includedir}/accountsservice-1.0/
|
|
%{_datadir}/gir-1.0/AccountsService-1.0.gir
|
|
|
|
%if %{with vala}
|
|
%files vala
|
|
%dir %{_datadir}/vala/vapi
|
|
%{_datadir}/vala/vapi/accountsservice.deps
|
|
%{_datadir}/vala/vapi/accountsservice.vapi
|
|
%endif
|
|
|
|
%files lang -f accounts-service.lang
|
|
%exclude %{_datadir}/locale/en/LC_MESSAGES/accounts-service.mo
|
|
%exclude %{_datadir}/locale/en_GB/LC_MESSAGES/accounts-service.mo
|
|
|
|
%changelog
|