|
David Herrmann |
078e198 |
%global dbus_user_id 81
|
|
David Herrmann |
078e198 |
|
|
|
7c504ca |
Name: dbus-broker
|
|
|
c28f64f |
Version: 21
|
|
|
0c55532 |
Release: 3%{?dist}
|
|
|
7c504ca |
Summary: Linux D-Bus Message Broker
|
|
|
7c504ca |
License: ASL 2.0
|
|
|
7c504ca |
URL: https://github.com/bus1/dbus-broker
|
|
|
7c504ca |
Source0: https://github.com/bus1/dbus-broker/releases/download/v%{version}/dbus-broker-%{version}.tar.xz
|
|
|
d6b6951 |
Patch0: 0001-units-system-add-messagebus-alias.patch
|
|
|
24a45c8 |
Patch1: 0001-launch-improve-error-handling-for-opendir.patch
|
|
|
0c55532 |
Patch2: 0001-metrics-change-the-constant-used-for-invalid-timesta.patch
|
|
|
0c55532 |
Patch3: 0001-dbus-socket-treat-MSG_CTRUNC-gracefully.patch
|
|
|
7c504ca |
Provides: bundled(c-dvar) = 1
|
|
|
5829572 |
Provides: bundled(c-ini) = 1
|
|
|
7c504ca |
Provides: bundled(c-list) = 3
|
|
|
7c504ca |
Provides: bundled(c-rbtree) = 3
|
|
|
5829572 |
Provides: bundled(c-shquote) = 1
|
|
|
253b959 |
%{?systemd_requires}
|
|
|
7c504ca |
BuildRequires: pkgconfig(audit)
|
|
|
7c504ca |
BuildRequires: pkgconfig(expat)
|
|
|
7c504ca |
BuildRequires: pkgconfig(dbus-1)
|
|
|
7c504ca |
BuildRequires: pkgconfig(libcap-ng)
|
|
|
7c504ca |
BuildRequires: pkgconfig(libselinux)
|
|
|
7c504ca |
BuildRequires: pkgconfig(libsystemd)
|
|
|
7c504ca |
BuildRequires: pkgconfig(systemd)
|
|
|
7c504ca |
BuildRequires: gcc
|
|
|
7c504ca |
BuildRequires: glibc-devel
|
|
|
7c504ca |
BuildRequires: meson
|
|
|
7c504ca |
BuildRequires: python3-docutils
|
|
|
7c504ca |
Requires: dbus-common
|
|
|
7c504ca |
Requires(pre): shadow-utils
|
|
|
7c504ca |
Requires(post): /usr/bin/systemctl
|
|
|
7c504ca |
# for triggerpostun
|
|
|
7c504ca |
Requires: /usr/bin/systemctl
|
|
|
253b959 |
|
|
|
253b959 |
%description
|
|
|
253b959 |
dbus-broker is an implementation of a message bus as defined by the D-Bus
|
|
|
253b959 |
specification. Its aim is to provide high performance and reliability, while
|
|
|
253b959 |
keeping compatibility to the D-Bus reference implementation. It is exclusively
|
|
|
253b959 |
written for Linux systems, and makes use of many modern features provided by
|
|
|
253b959 |
recent Linux kernel releases.
|
|
|
253b959 |
|
|
|
253b959 |
%prep
|
|
|
0c7b7fe |
%autosetup -p1
|
|
|
253b959 |
|
|
|
253b959 |
%build
|
|
|
e853b1e |
%meson -Dselinux=true -Daudit=true -Ddocs=true -Dsystem-console-users=gdm
|
|
|
253b959 |
%meson_build
|
|
|
253b959 |
|
|
|
253b959 |
%install
|
|
|
253b959 |
%meson_install
|
|
|
253b959 |
|
|
|
253b959 |
%check
|
|
|
253b959 |
%meson_test
|
|
|
253b959 |
|
|
David Herrmann |
078e198 |
%pre
|
|
David Herrmann |
078e198 |
# create dbus user and group
|
|
David Herrmann |
078e198 |
getent group %{dbus_user_id} >/dev/null || \
|
|
David Herrmann |
078e198 |
/usr/sbin/groupadd \
|
|
David Herrmann |
078e198 |
-g %{dbus_user_id} \
|
|
David Herrmann |
078e198 |
-r dbus
|
|
David Herrmann |
078e198 |
getent passwd %{dbus_user_id} >/dev/null || \
|
|
David Herrmann |
078e198 |
/usr/sbin/useradd \
|
|
David Herrmann |
078e198 |
-c 'System message bus' \
|
|
David Herrmann |
078e198 |
-u %{dbus_user_id} \
|
|
David Herrmann |
078e198 |
-g %{dbus_user_id} \
|
|
David Herrmann |
078e198 |
-s /sbin/nologin \
|
|
David Herrmann |
078e198 |
-d '/' \
|
|
David Herrmann |
078e198 |
-r dbus
|
|
David Herrmann |
078e198 |
|
|
|
253b959 |
%post
|
|
David Herrmann |
3638e65 |
# Since F30 dbus-broker is the default bus implementation. However, changing
|
|
David Herrmann |
3638e65 |
# the systemd presets does not automatically switch over. Instead, we have to
|
|
|
74250ef |
# explicitly disable dbus-daemon and enable dbus-broker. We do this on the first
|
|
|
74250ef |
# install of this package.
|
|
|
74250ef |
#
|
|
David Herrmann |
3638e65 |
# Note that there is a virtual circular dependency between this package and the
|
|
David Herrmann |
3638e65 |
# fedora presets (in 'fedora-release'). To break this, we explicitly enable
|
|
David Herrmann |
3638e65 |
# dbus-broker here. Once the presets are in, we will be able to drop the
|
|
David Herrmann |
3638e65 |
# explicit 'enable' calls and rely on the presets below.
|
|
|
b79dc68 |
#systemd_post dbus-broker.service
|
|
|
b79dc68 |
#systemd_user_post dbus-broker.service
|
|
|
74250ef |
#
|
|
|
74250ef |
# systemd has special checks if dbus.socket and dbus.service are active and
|
|
|
74250ef |
# will close the dbus connection if they are not. When the symlinks are changed
|
|
|
74250ef |
# from dbus-daemon to dbus-broker, systemd would think that dbus is gone,
|
|
|
74250ef |
# because dbus.service (which now is an alias for dbus-broker.service) is not
|
|
|
74250ef |
# active. Let's add a temporary override that will keep pid1 happy.
|
|
|
b79dc68 |
|
|
David Herrmann |
3638e65 |
if [ $1 -eq 1 ] ; then
|
|
|
74250ef |
if systemctl is-enabled -q dbus-daemon.service; then
|
|
|
74250ef |
# Install a temporary generator that'll keep providing the
|
|
|
74250ef |
# alias as it was.
|
|
|
74250ef |
mkdir -p /run/systemd/system-generators/
|
|
|
74250ef |
cat >>/run/systemd/system-generators/dbus-symlink-generator <
|
|
|
74250ef |
#!/bin/sh
|
|
|
74250ef |
ln -s /usr/lib/systemd/system/dbus-daemon.service \$2/dbus.service
|
|
|
74250ef |
EOF
|
|
|
74250ef |
chmod +x /run/systemd/system-generators/dbus-symlink-generator
|
|
|
74250ef |
chcon system_u:object_r:init_exec_t:s0 /run/systemd/system-generators/dbus-symlink-generator || :
|
|
|
74250ef |
fi
|
|
|
74250ef |
|
|
|
74250ef |
if systemctl is-enabled -q --global dbus-daemon.service; then
|
|
|
74250ef |
mkdir -p /run/systemd/user-generators/
|
|
|
74250ef |
cat >>/run/systemd/user-generators/dbus-symlink-generator <
|
|
|
74250ef |
#!/bin/sh
|
|
|
74250ef |
ln -s /usr/lib/systemd/user/dbus-daemon.service \$2/dbus.service
|
|
|
74250ef |
EOF
|
|
|
74250ef |
chmod +x /run/systemd/user-generators/dbus-symlink-generator
|
|
|
74250ef |
fi
|
|
|
74250ef |
|
|
|
74250ef |
systemctl --no-reload -q disable dbus-daemon.service || :
|
|
|
74250ef |
systemctl --no-reload -q --global disable dbus-daemon.service || :
|
|
|
74250ef |
systemctl --no-reload -q enable dbus-broker.service || :
|
|
|
74250ef |
systemctl --no-reload -q --global enable dbus-broker.service || :
|
|
David Herrmann |
3638e65 |
fi
|
|
|
253b959 |
|
|
|
2d52ac6 |
%journal_catalog_update
|
|
|
2d52ac6 |
|
|
|
253b959 |
%preun
|
|
|
253b959 |
%systemd_preun dbus-broker.service
|
|
|
180ae15 |
%systemd_user_preun dbus-broker.service
|
|
|
253b959 |
|
|
|
253b959 |
%postun
|
|
|
253b959 |
%systemd_postun dbus-broker.service
|
|
|
180ae15 |
%systemd_user_postun dbus-broker.service
|
|
|
253b959 |
|
|
|
db0a711 |
%triggerpostun -- dbus-daemon
|
|
|
4c195db |
if [ $2 -eq 0 ] ; then
|
|
|
a9ff9ff |
# See above comment about presets.
|
|
|
74250ef |
#systemctl --no-reload preset dbus-broker.service || :
|
|
|
74250ef |
#systemctl --no-reload --global preset dbus-broker.service || :
|
|
|
74250ef |
systemctl --no-reload enable dbus-broker.service || :
|
|
|
74250ef |
systemctl --no-reload --global enable dbus-broker.service || :
|
|
|
4c195db |
fi
|
|
|
db0a711 |
|
|
|
253b959 |
%files
|
|
|
913764f |
%license AUTHORS
|
|
|
253b959 |
%license LICENSE
|
|
|
253b959 |
%{_bindir}/dbus-broker
|
|
|
253b959 |
%{_bindir}/dbus-broker-launch
|
|
|
294ed20 |
%{_journalcatalogdir}/dbus-broker.catalog
|
|
|
294ed20 |
%{_journalcatalogdir}/dbus-broker-launch.catalog
|
|
|
253b959 |
%{_mandir}/man1/dbus-broker.1*
|
|
|
253b959 |
%{_mandir}/man1/dbus-broker-launch.1*
|
|
|
253b959 |
%{_unitdir}/dbus-broker.service
|
|
|
253b959 |
%{_userunitdir}/dbus-broker.service
|
|
|
253b959 |
|
|
|
253b959 |
%changelog
|
|
|
0c55532 |
*Thu May 9 2019 Tom Gundersen <teg@jklm.no> - 21-2
|
|
|
0c55532 |
- Gracefully handle missing FDs in received messages, #1706883
|
|
|
0c55532 |
- Minor bugfixes
|
|
|
0c55532 |
|
|
|
24a45c8 |
* Fri May 3 2019 Tom Gundersen <teg@jklm.no> - 21-1
|
|
|
24a45c8 |
- Don't fail on EACCESS when reading config, fixes #1704920
|
|
|
24a45c8 |
|
|
|
c28f64f |
* Thu May 2 2019 Tom Gundersen <teg@jklm.no> - 21-1
|
|
|
c28f64f |
- Minor bugfixes related to config reload for #1704488
|
|
|
c28f64f |
|
|
|
af823ac |
* Wed Apr 17 2019 Tom Gundersen <teg@jklm.no> - 20-4
|
|
|
af823ac |
- Fix assert due to failing reload #1700514
|
|
|
af823ac |
|
|
|
9fd8ca2 |
* Tue Apr 16 2019 Adam Williamson <awilliam@redhat.com> - 20-3
|
|
|
9fd8ca2 |
- Rebuild with Meson fix for #1699099
|
|
|
9fd8ca2 |
|
|
|
294ed20 |
* Thu Apr 11 2019 Tom Gundersen <teg@jklm.no> - 20-2
|
|
|
294ed20 |
- Fix the c_assert macro
|
|
|
294ed20 |
|
|
|
35d6d95 |
* Wed Apr 10 2019 Tom Gundersen <teg@jklm.no> - 20-1
|
|
|
35d6d95 |
- Improve handling of broken or deprecated configuration
|
|
|
294ed20 |
- Avoid at_console workaround if possible
|
|
|
35d6d95 |
|
|
|
74250ef |
* Tue Apr 9 2019 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 19-2
|
|
|
74250ef |
- Add a temporary generator to fix switching from dbus-daemon to
|
|
|
74250ef |
dbus-broker (#1674045)
|
|
|
74250ef |
|
|
|
80f864a |
* Thu Mar 28 2019 Tom Gundersen <teg@jklm.no> - 19-1
|
|
|
80f864a |
- Minor bug fixes
|
|
|
80f864a |
|
|
|
461f1df |
* Thu Feb 21 2019 Tom Gundersen <teg@jklm.no> - 18-1
|
|
|
461f1df |
- Minor bug fixes
|
|
|
461f1df |
|
|
|
53a3b60 |
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 17-4
|
|
|
53a3b60 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
53a3b60 |
|
|
|
2db1a76 |
* Mon Jan 14 2019 Tom Gundersen <teg@jklm.no> - 17-3
|
|
|
2db1a76 |
- run in the root network namespace
|
|
|
2db1a76 |
|
|
|
1a13c47 |
* Sat Jan 12 2019 Tom Gundersen <teg@jklm.no> - 17-2
|
|
|
1a13c47 |
- ignore config files that cannot be opened (fix rhbz #1665450)
|
|
|
1a13c47 |
|
|
|
5829572 |
* Wed Jan 2 2019 Tom Gundersen <teg@jklm.no> - 17-1
|
|
|
5829572 |
- apply more sandboxing through systemd
|
|
|
5829572 |
- improve logging on disconnect
|
|
|
5829572 |
- don't send FDs to clients who don't declare support
|
|
|
5829572 |
|
|
|
a4826c4 |
* Wed Nov 28 2018 Tom Gundersen <teg@jklm.no> - 16-8
|
|
|
a4826c4 |
- don't apply presets on updates to dbus-daemon
|
|
|
a4826c4 |
|
|
|
18b7d70 |
* Mon Nov 26 2018 Tom Gundersen <teg@jklm.no> - 16-7
|
|
|
18b7d70 |
- enable service file correctly at install
|
|
|
18b7d70 |
|
|
|
8fc980f |
* Mon Nov 26 2018 Tom Gundersen <teg@jklm.no> - 16-5
|
|
|
8fc980f |
- use full paths when calling binaries from rpm scripts
|
|
|
8fc980f |
|
|
|
e33e08e |
* Sun Nov 25 2018 Tom Gundersen <teg@jklm.no> - 16-4
|
|
|
e33e08e |
- fix SELinux bug
|
|
|
e33e08e |
|
|
|
7c504ca |
* Tue Oct 30 2018 Tom Gundersen <teg@jklm.no> - 16-3
|
|
|
7c504ca |
- add explicit systemctl dependency
|
|
|
7c504ca |
|
|
David Herrmann |
078e198 |
* Tue Oct 23 2018 David Herrmann <dh.herrmann@gmail.com> - 16-2
|
|
David Herrmann |
078e198 |
- create dbus user and group if non-existant
|
|
|
294ed20 |
- add explicit %%postlets to switch over to the broker as default
|
|
David Herrmann |
078e198 |
|
|
|
db0a711 |
* Fri Oct 12 2018 Tom Gundersen <teg@jklm.no> - 16-1
|
|
|
db0a711 |
- make resource limits configurable
|
|
|
db0a711 |
- rerun presets in case dbus-daemon is disabled
|
|
|
db0a711 |
|
|
|
f37d282 |
* Thu Aug 30 2018 Tom Gundersen <teg@jklm.no> - 15-4
|
|
|
f37d282 |
- depend on dbus-common rather than dbus
|
|
|
f37d282 |
|
|
|
180ae15 |
* Wed Aug 29 2018 Tom Gundersen <teg@jklm.no> - 15-3
|
|
|
f37d282 |
- run %%systemd_user rpm macros
|
|
|
180ae15 |
|
|
|
9489ba6 |
* Mon Aug 27 2018 Tom Gundersen <teg@jklm.no> - 15-2
|
|
|
9489ba6 |
- add back --verbose switch for backwards compatibility
|
|
|
9489ba6 |
|
|
|
bb8a850 |
* Wed Aug 08 2018 Tom Gundersen <teg@jklm.no> - 15-1
|
|
|
bb8a850 |
- fix audit support
|
|
|
bb8a850 |
- make logging about invalid config less verbose
|
|
|
bb8a850 |
|
|
|
73fb87a |
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 14-2
|
|
|
73fb87a |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
73fb87a |
|
|
|
e77ea58 |
* Tue Jul 03 2018 Tom Gundersen <teg@jklm.no> - 14-1
|
|
|
e77ea58 |
- use inotify to reload config automatically
|
|
|
e77ea58 |
- run as the right user
|
|
|
e77ea58 |
- new compatibility features, bugfixes and performance enhancements
|
|
|
e77ea58 |
|
|
|
92f2b2b |
* Mon Apr 23 2018 Tom Gundersen <teg@jklm.no> - 13-1
|
|
|
92f2b2b |
- Namespace transient systemd units per launcher instance
|
|
|
92f2b2b |
- Reduce reliance on NSS
|
|
|
92f2b2b |
- Fix deadlock with nss-systemd
|
|
|
92f2b2b |
|
|
|
913764f |
* Wed Feb 21 2018 Tom Gundersen <teg@jklm.no> - 11-1
|
|
|
913764f |
- The 'gdm' user is now considered at_console=true
|
|
|
913764f |
- Bugfixes and performance enhancements
|
|
|
913764f |
|
|
|
17cac16 |
* Wed Feb 07 2018 Tom Gundersen <teg@jklm.no> - 10-1
|
|
|
17cac16 |
- Bugfixes and performance enhancements
|
|
|
17cac16 |
|
|
|
27727e5 |
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 9-2
|
|
|
27727e5 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
27727e5 |
|
|
|
6b97ceb |
* Thu Nov 30 2017 Tom Gundersen <teg@jklm.no> - 9-1
|
|
|
6b97ceb |
- Avoid nss deadlock at start-up
|
|
|
6b97ceb |
- Support ExecReload
|
|
|
6b97ceb |
- Respect User= in service files
|
|
|
6b97ceb |
|
|
|
764581a |
* Tue Oct 17 2017 Tom Gundersen <teg@jklm.no> - 8-1
|
|
|
b42ed5b |
- Dont clean-up children of activated services by default
|
|
|
b42ed5b |
- Dont use audit from the user instance
|
|
|
764581a |
- Support the ReloadConfig() API
|
|
|
764581a |
|
|
|
0c7b7fe |
* Tue Oct 17 2017 Tom Gundersen <teg@jklm.no> - 7-1
|
|
|
0c7b7fe |
- Upstream bugfix release
|
|
|
0c7b7fe |
|
|
|
871566c |
* Mon Oct 16 2017 Tom Gundersen <teg@jklm.no> - 6-1
|
|
|
871566c |
- Upstream bugfix release
|
|
|
871566c |
|
|
|
3897c09 |
* Tue Oct 10 2017 Tom Gundersen <teg@jklm.no> - 5-1
|
|
|
3897c09 |
- Drop downstream SELinux module
|
|
|
3897c09 |
- Support (in a limited way) at_console= policies
|
|
|
3897c09 |
- Order dbus-broker before basic.target
|
|
|
3897c09 |
|
|
|
253b959 |
* Fri Sep 08 2017 Tom Gundersen <teg@jklm.no> - 4-1
|
|
|
253b959 |
- Use audit for SELinux logging
|
|
|
253b959 |
- Support full search-paths for service files
|
|
|
253b959 |
- Log policy failures
|
|
|
253b959 |
|
|
|
253b959 |
* Fri Aug 18 2017 Tom Gundersen <teg@jklm.no> - 3-1
|
|
|
253b959 |
- Add manpages
|
|
|
253b959 |
|
|
|
253b959 |
* Wed Aug 16 2017 Tom Gundersen <teg@jklm.no> - 2-2
|
|
|
253b959 |
- Add license to package
|
|
|
253b959 |
|
|
|
253b959 |
* Wed Aug 16 2017 Tom Gundersen <teg@jklm.no> - 2-1
|
|
|
253b959 |
- Add SELinux support
|
|
|
253b959 |
|
|
|
253b959 |
* Sun Aug 13 2017 Tom Gundersen <teg@jklm.no> - 1-1
|
|
|
253b959 |
- Initial RPM release
|
|
|
253b959 |
|