dbus-broker/dbus-broker.spec
2022-12-02 16:26:10 +08:00

102 lines
2.9 KiB
RPMSpec

Name: dbus-broker
Version: 31
Release: 2
Summary: Linux D-Bus Message Broker
License: Apache-2.0
URL: https://github.com/bus1/dbus-broker
Source0: https://github.com/bus1/dbus-broker/releases/download/v%{version}/%{name}-%{version}.tar.xz
BuildRequires: cmake gcc glibc-devel meson python-docutils dbus
BuildRequires: pkgconfig(expat) pkgconfig(libsystemd) pkgconfig(libselinux)
BuildRequires: pkgconfig(systemd) pkgconfig(audit) pkgconfig(libcap-ng)
%description
dbus-broker is an implementation of a message bus as defined by the D-Bus specification.
Its aim is to provide high performance and reliability, while keeping compatibility to
the D-Bus reference implementation. It is exclusively written for Linux systems, and
makes use of many modern features provided by recent linux kernel releases.
%prep
%autosetup -n %{name}-%{version} -p1
%build
CONFIGURE_OPTS=(
-Daudit=true
-Dselinux=true
-Ddocs=true
-Dsystem-console-users=gdm
-Dlinux-4-17=true
)
%meson "${CONFIGURE_OPTS[@]}"
%meson_build
%install
%meson_install
%check
%meson_test
%pre
# Add the "dbus" user and group
getent group dbus > /dev/null || groupadd -f -g 81 -r dbus
if ! getent passwd dbus > /dev/null ; then
if ! getent passwd 81 > /dev/null ; then
useradd -r -u 81 -c 'D-Bus' -g dbus -s /sbin/nologin -d %{_localstatedir}/run/dbus dbus
else
useradd -r -g dbus -c 'D-Bus' -s /sbin/nologin -d %{_localstatedir}/run/dbus dbus
fi
fi
%preun
%systemd_user_preun dbus-broker.service
# Disable and stop dbus-broker.service after pre uninstalling
if [ $1 == 0 ] && [ -x /usr/bin/systemctl ]; then
systemctl disable dbus-broker.service &>/dev/null || :
systemctl reset-failed dbus-broker.service &>/dev/null || :
systemctl stop dbus-broker.service &>/dev/null || :
fi
%post
%systemd_user_post dbus-broker.service
# Enable after installing
if [ $1 == 1 ] && [ -x /usr/bin/systemctl ]; then
systemctl --no-reload enable dbus-broker.service &>/dev/null || :
fi
%postun
%systemd_user_postun dbus-broker.service
%files
%license AUTHORS
%license LICENSE
%{_bindir}/dbus-broker*
%{_journalcatalogdir}/dbus-broker*.catalog
%{_mandir}/man1/dbus-broker*.1*
%{_unitdir}/dbus-broker.service
%{_userunitdir}/dbus-broker.service
%changelog
* Fri Dec 02 2022 licunlong<licunlong1@huawei.com> - 31-2
- Optimize installing and removing dbus-broker
* Wed Jun 15 2022 dillon chen <dillon.chen@gmail.com> - 31-1
- update to 31
* Fri May 20 2022 liukuo <liukuo@kylinos.cn> - 29-3
- License compliance rectification
* Tue Feb 22 2022 licunlong<licunlong1@huawei.com> - 29-2
- Type:bugfix
- CVE:NA
- SUG:NA
- DESC:don't enable/disable dbus.socket when install/uninstall dbus-broker.
* Thu Dec 16 2021 licunlong<licunlong1@huawei.com> - 29-1
- Type:enhance
- CVE:NA
- SUG:NA
- DESC:update dbus-broker to v29
* Thu Aug 05 2021 openEuler BuildTeam <buildteam@openeuler.org> - 28-1
- Package Init.