12f7177ed6
- Own a couple of directories even if they don't belong to systemd otherwise the build system will complain. Some directories (owned by others packages) are simply used by systemd to ship some scripts or config files to customize others *optional* components. Since thos components are not build required by systemd those directories are not owned by any packages and the BS complains... - Import commit 15ea716 journal-remote: change owner of /var/log/journal/remote and create /var/lib/systemd/journal-upload (bsc#1006372) - %sysusers_create and %tmpfiles_create must be called in %post Calling %pre is broken since the respective conf files are not yet installed. - %{_libexecdir}/{tmpfiles.d,sysusers.d}/systemd-remote.conf are part of systemd-journal-remote package (only). - systemd-journal-{gatewayd,remote,upload} units are only part of "systemd-journal-remote" package. So exclude them from the main package. - Import commit a1c145e6ad6588555dca64402f9103fb1e02b1a0 7f34037 man: explain that *KeyIgnoreInhibited only apply to a subset of locks df5798b Revert "logind: really handle *KeyIgnoreInhibited options in logind.conf" (bsc#1001790 bsc#1005404) f79fee7 Revert "kbd-model-map: add more mappings offered by Yast" 3760c10 manager: tighten incoming notification message checks d6efd71 core: only warn on short reads on signal fd 6eebd91 manager: be stricter with incomining notifications, warn properly about too large ones OBS-URL: https://build.opensuse.org/request/show/437403 OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=959
1298 lines
44 KiB
RPMSpec
1298 lines
44 KiB
RPMSpec
#
|
|
# spec file for package systemd-mini
|
|
#
|
|
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
#
|
|
# 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 http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
#
|
|
# The git repository used to track all Suse specific changes can be
|
|
# found at: https://github.com/openSUSE/systemd.
|
|
#
|
|
|
|
##### WARNING: please do not edit this auto generated spec file. Use the systemd.spec! #####
|
|
%define bootstrap 1
|
|
##### WARNING: please do not edit this auto generated spec file. Use the systemd.spec! #####
|
|
%define mini -mini
|
|
%define min_kernel_version 4.5
|
|
|
|
%bcond_with gnuefi
|
|
%if 0%{?bootstrap}
|
|
%bcond_with sysvcompat
|
|
%bcond_with machined
|
|
%bcond_with importd
|
|
%bcond_with networkd
|
|
%bcond_with journal_remote
|
|
%else
|
|
%bcond_without sysvcompat
|
|
%bcond_without machined
|
|
%bcond_without importd
|
|
%bcond_without networkd
|
|
%bcond_without journal_remote
|
|
%ifarch %{ix86} x86_64
|
|
%bcond_without gnuefi
|
|
%endif
|
|
%endif
|
|
%bcond_without compatlibs
|
|
%bcond_with resolved
|
|
%bcond_with parentpathid
|
|
|
|
Name: systemd-mini
|
|
Url: http://www.freedesktop.org/wiki/Software/systemd
|
|
Version: 228
|
|
Release: 0
|
|
Summary: A System and Session Manager
|
|
License: LGPL-2.1+
|
|
Group: System/Base
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
%if ! 0%{?bootstrap}
|
|
BuildRequires: -post-build-checks
|
|
BuildRequires: docbook-xsl-stylesheets
|
|
BuildRequires: kbd
|
|
BuildRequires: libapparmor-devel
|
|
BuildRequires: libgcrypt-devel
|
|
BuildRequires: libxslt-tools
|
|
# python is only required for generating systemd.directives.xml
|
|
BuildRequires: python3
|
|
BuildRequires: python3-lxml
|
|
BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0
|
|
BuildRequires: pkgconfig(libqrencode)
|
|
%endif
|
|
BuildRequires: fdupes
|
|
BuildRequires: gperf
|
|
BuildRequires: intltool
|
|
BuildRequires: libacl-devel
|
|
BuildRequires: libcap-devel
|
|
BuildRequires: libmount-devel
|
|
BuildRequires: libsepol-devel
|
|
BuildRequires: libtool
|
|
BuildRequires: pam-config >= 0.79-5
|
|
BuildRequires: pam-devel
|
|
# regenerate_initrd_post macro is expanded during build, hence this
|
|
# BR. Also this macro was introduced since version 12.4.
|
|
BuildRequires: suse-module-tools >= 12.4
|
|
BuildRequires: systemd-rpm-macros
|
|
BuildRequires: xz
|
|
BuildRequires: pkgconfig(blkid) >= 2.26
|
|
BuildRequires: pkgconfig(libkmod) >= 15
|
|
BuildRequires: pkgconfig(liblzma)
|
|
BuildRequires: pkgconfig(libpci) >= 3
|
|
BuildRequires: pkgconfig(libpcre)
|
|
BuildRequires: pkgconfig(libselinux) >= 2.1.9
|
|
BuildRequires: pkgconfig(libsepol)
|
|
%if %{with importd}
|
|
BuildRequires: pkgconfig(bzip2)
|
|
BuildRequires: pkgconfig(libcurl)
|
|
BuildRequires: pkgconfig(zlib)
|
|
%endif
|
|
%if %{with journal_remote}
|
|
BuildRequires: pkgconfig(libcurl)
|
|
BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33
|
|
%endif
|
|
%ifarch aarch64 %ix86 x86_64 x32 %arm ppc64le s390x
|
|
BuildRequires: pkgconfig(libseccomp)
|
|
%endif
|
|
%if %{with gnuefi}
|
|
BuildRequires: gnu-efi
|
|
%endif
|
|
|
|
%if 0%{?bootstrap}
|
|
#!BuildIgnore: dbus-1
|
|
Requires: this-is-only-for-build-envs
|
|
Provides: systemd = %{version}-%{release}
|
|
%else
|
|
# the buildignore is important for bootstrapping
|
|
#!BuildIgnore: udev
|
|
Requires: dbus-1 >= 1.4.0
|
|
Requires: kbd
|
|
Requires: kmod >= 15
|
|
Requires: netcfg >= 11.5
|
|
Requires: pam-config >= 0.79-5
|
|
Requires: pwdutils
|
|
Requires: systemd-presets-branding
|
|
Requires: sysvinit-tools
|
|
Requires: udev = %{version}-%{release}
|
|
Requires: util-linux >= 2.27.1
|
|
Recommends: %{name}-bash-completion
|
|
Requires(post): coreutils
|
|
Requires(post): findutils
|
|
Requires(post): systemd-presets-branding
|
|
Requires(post): pam-config >= 0.79-5
|
|
%endif
|
|
Requires(post): /usr/bin/awk
|
|
|
|
%if 0%{?bootstrap}
|
|
Conflicts: systemd
|
|
Conflicts: kiwi
|
|
%endif
|
|
Conflicts: sysvinit
|
|
Conflicts: filesystem < 11.5
|
|
Conflicts: mkinitrd < 2.7.0
|
|
Obsoletes: systemd-analyze < 201
|
|
Provides: systemd-analyze = %{version}
|
|
Obsoletes: pm-utils <= 1.4.1
|
|
Obsoletes: suspend <= 1.0
|
|
Source0: systemd-%{version}.tar.xz
|
|
Source1: %{name}-rpmlintrc
|
|
Source3: systemd-sysv-convert
|
|
Source6: baselibs.conf
|
|
Source7: libgcrypt.m4
|
|
Source9: nss-myhostname-config
|
|
Source10: macros.systemd.upstream
|
|
Source11: after-local.service
|
|
Source12: systemd-sysv-install
|
|
Source13: fix-machines-subvol-for-rollbacks.sh
|
|
Source14: kbd-model-map.legacy
|
|
|
|
Source1065: udev-remount-tmpfs
|
|
|
|
%description
|
|
Systemd is a system and service manager, compatible with SysV and LSB
|
|
init scripts for Linux. systemd provides aggressive parallelization
|
|
capabilities, uses socket and D-Bus activation for starting services,
|
|
offers on-demand starting of daemons, keeps track of processes using
|
|
Linux cgroups, supports snapshotting and restoring of the system state,
|
|
maintains mount and automount points and implements an elaborate
|
|
transactional dependency-based service control logic. It can work as a
|
|
drop-in replacement for sysvinit.
|
|
|
|
%package devel
|
|
Summary: Development headers for systemd
|
|
License: LGPL-2.1+
|
|
Group: Development/Libraries/C and C++
|
|
Requires: libsystemd0%{?mini} = %{version}-%{release}
|
|
Requires: systemd-rpm-macros
|
|
%if 0%{?bootstrap}
|
|
Conflicts: systemd-devel
|
|
%endif
|
|
|
|
%description devel
|
|
Development headers and auxiliary files for developing applications for systemd.
|
|
|
|
%package sysvinit
|
|
Summary: System V init tools
|
|
License: LGPL-2.1+
|
|
Group: System/Base
|
|
Requires: %{name} = %{version}-%{release}
|
|
Provides: sbin_init
|
|
Conflicts: otherproviders(sbin_init)
|
|
Provides: sysvinit:/sbin/init
|
|
|
|
%description sysvinit
|
|
Drop-in replacement of System V init tools.
|
|
|
|
%package -n libsystemd0%{?mini}
|
|
Summary: Component library for systemd
|
|
License: LGPL-2.1+
|
|
Group: System/Libraries
|
|
%if 0%{?bootstrap}
|
|
Conflicts: libsystemd0
|
|
Requires: this-is-only-for-build-envs
|
|
%endif
|
|
|
|
%description -n libsystemd0%{?mini}
|
|
This library provides several of the systemd C APIs:
|
|
|
|
* sd-bus implements an alternative D-Bus client library that is
|
|
relatively easy to use, very efficient and supports both classic
|
|
D-Bus as well as kdbus as transport backend.
|
|
|
|
* sd-daemon(3): for system services (daemons) to report their status
|
|
to systemd and to make easy use of socket-based activation logic
|
|
|
|
* sd-event is a generic event loop abstraction that is built around
|
|
Linux epoll, but adds features such as event prioritization or
|
|
efficient timer handling.
|
|
|
|
* sd-id128(3): generation and processing of 128-bit IDs
|
|
|
|
* sd-journal(3): API to submit and query journal log entries
|
|
|
|
* sd-login(3): APIs to introspect and monitor seat, login session and
|
|
user status information on the local system.
|
|
|
|
%package -n udev%{?mini}
|
|
Summary: A rule-based device node and kernel event manager
|
|
License: GPL-2.0
|
|
Group: System/Kernel
|
|
Url: http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
|
|
Requires(pre): /usr/bin/stat
|
|
Requires(pre): /usr/sbin/groupadd
|
|
Requires(pre): /usr/bin/getent
|
|
Requires(post): sed
|
|
Requires(post): /usr/bin/systemctl
|
|
Requires(postun): %insserv_prereq
|
|
|
|
Requires(post): coreutils
|
|
Requires(postun): coreutils
|
|
Requires(posttrans): suse-module-tools >= 12.4
|
|
|
|
Conflicts: systemd < 39
|
|
Conflicts: aaa_base < 11.5
|
|
Conflicts: filesystem < 11.5
|
|
Conflicts: mkinitrd < 2.7.0
|
|
Conflicts: util-linux < 2.16
|
|
Conflicts: ConsoleKit < 0.4.1
|
|
Requires: filesystem
|
|
%if 0%{?bootstrap}
|
|
Provides: udev = %{version}
|
|
Conflicts: libudev1
|
|
Conflicts: udev
|
|
# avoid kiwi picking it for bootstrap
|
|
Requires: this-is-only-for-build-envs
|
|
%endif
|
|
|
|
%description -n udev%{?mini}
|
|
Udev creates and removes device nodes in /dev for devices discovered or
|
|
removed from the system. It receives events via kernel netlink messages
|
|
and dispatches them according to rules in /lib/udev/rules.d/. Matching
|
|
rules may name a device node, create additional symlinks to the node,
|
|
call tools to initialize a device, or load needed kernel modules.
|
|
|
|
%package -n libudev%{?mini}1
|
|
Summary: Dynamic library to access udev device information
|
|
License: LGPL-2.1+
|
|
Group: System/Libraries
|
|
%if 0%{?bootstrap}
|
|
Conflicts: libudev1
|
|
Conflicts: kiwi
|
|
# avoid kiwi picking it for bootstrap
|
|
Requires: this-is-only-for-build-envs
|
|
%endif
|
|
|
|
%description -n libudev%{?mini}1
|
|
This package contains the dynamic library libudev, which provides
|
|
access to udev device information
|
|
|
|
%package -n libudev%{?mini}-devel
|
|
Summary: Development files for libudev
|
|
License: LGPL-2.1+
|
|
Group: Development/Libraries/Other
|
|
Requires: libudev%{?mini}1 = %{version}-%{release}
|
|
%if 0%{?bootstrap}
|
|
Provides: libudev-devel = %{version}
|
|
Conflicts: libudev1 = %{version}
|
|
Conflicts: libudev-devel
|
|
%endif
|
|
|
|
%description -n libudev%{?mini}-devel
|
|
This package contains the development files for the library libudev, a
|
|
dynamic library, which provides access to udev device information.
|
|
|
|
%if ! 0%{?bootstrap}
|
|
%package logger
|
|
Summary: Journal only logging
|
|
License: LGPL-2.1+
|
|
Group: System/Base
|
|
Provides: syslog
|
|
Provides: sysvinit(syslog)
|
|
Requires(post): /usr/bin/systemctl
|
|
Conflicts: otherproviders(syslog)
|
|
|
|
%description logger
|
|
This package marks the installation to not use syslog but only the journal.
|
|
|
|
%package -n nss-resolve
|
|
Summary: Plugin for local hostname resolution via systemd-resolved
|
|
License: LGPL-2.1+
|
|
Group: System/Libraries
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
%description -n nss-resolve
|
|
nss-resolve is a plug-in module for the GNU Name Service Switch (NSS)
|
|
functionality of the GNU C Library (glibc) enabling it to resolve host
|
|
names via the systemd-resolved(8) service (provided by the systemd
|
|
package).
|
|
|
|
It replaces the nss-dns plug-in module that traditionally resolves
|
|
hostnames via DNS.
|
|
|
|
%package -n nss-myhostname
|
|
Summary: Plugin for local system host name resolution
|
|
License: LGPL-2.1+
|
|
Group: System/Libraries
|
|
|
|
%description -n nss-myhostname
|
|
nss-myhostname is a plugin for the GNU Name Service Switch (NSS)
|
|
functionality of the GNU C Library (glibc) providing host name
|
|
resolution for the locally configured system hostname as returned by
|
|
gethostname(2). Various software relies on an always resolvable local
|
|
host name. When using dynamic hostnames this is usually achieved by
|
|
patching /etc/hosts at the same time as changing the host name. This
|
|
however is not ideal since it requires a writable /etc file system and
|
|
is fragile because the file might be edited by the administrator at
|
|
the same time. nss-myhostname simply returns all locally
|
|
configured public IP addresses, or -- if none are configured --
|
|
the IPv4 address 127.0.0.2 (wich is on the local loopback) and the
|
|
IPv6 address ::1 (which is the local host) for whatever system
|
|
hostname is configured locally. Patching /etc/hosts is thus no
|
|
longer necessary.
|
|
|
|
Note that nss-myhostname only provides a workaround for broken
|
|
software. If nss-myhostname is trigged by an application a message
|
|
is logged to /var/log/messages. Please check whether that is worth
|
|
a bug report then.
|
|
This package marks the installation to not use syslog but only the journal.
|
|
%endif
|
|
|
|
%if %{with journal_remote}
|
|
%package journal-remote
|
|
Summary: Gateway for serving journal events over the network using HTTP
|
|
License: LGPL-2.1+
|
|
Group: System/Base
|
|
Requires: %{name} = %{version}-%{release}
|
|
Requires(post): systemd
|
|
Requires(preun): systemd
|
|
Requires(postun): systemd
|
|
|
|
%description journal-remote
|
|
This extends the journal functionality to keep a copy of logs on a
|
|
remote server by providing programs to forward journal entries over
|
|
the network, using encrypted HTTP, and to write journal files from
|
|
serialized journal contents.
|
|
|
|
This package contains systemd-journal-gatewayd,
|
|
systemd-journal-remote, and systemd-journal-upload.
|
|
%endif
|
|
|
|
%if %{with machined}
|
|
%package -n nss-mymachines
|
|
Summary: Plugin for local virtual host name resolution
|
|
License: LGPL-2.1+
|
|
Group: System/Libraries
|
|
|
|
%description -n nss-mymachines
|
|
nss-myhostname is a plugin for the GNU Name Service Switch (NSS)
|
|
functionality of the GNU C Library (glibc) providing host name
|
|
resolution for the locally configured containers and virtual machines
|
|
systemd-machined knows about.
|
|
%endif
|
|
|
|
%package bash-completion
|
|
Summary: Bash completion support for systemd
|
|
License: LGPL-2.1+
|
|
Group: System/Base
|
|
Requires: bash-completion
|
|
BuildArch: noarch
|
|
|
|
%description bash-completion
|
|
Some systemd commands offer bash completion, but it is an optional dependency.
|
|
|
|
%prep
|
|
%setup -q -n systemd-%{version}
|
|
echo "Checking whether upstream rpm macros changed..."
|
|
#skipped for now
|
|
#[ -z "`diff -Naru "%{S:10}" src/core/macros.systemd.in`" ] || exit 1
|
|
|
|
# only needed for bootstrap
|
|
%if 0%{?bootstrap}
|
|
cp %{SOURCE7} m4/
|
|
%endif
|
|
|
|
#
|
|
# In combination with Patch352 set-and-use-default-logconsole.patch
|
|
# Ensure that journald log on tty10
|
|
#
|
|
%ifarch %ix86 x86_64 x32
|
|
sed -ri 's:#TTYPath=/dev/console:#TTYPath=/dev/tty10:' src/journal/journald.conf
|
|
%endif
|
|
|
|
%build
|
|
#
|
|
# Be sure that fresh build libudev is found and used at linkage time
|
|
#
|
|
sed -ri '/^systemd_cryptsetup_CFLAGS/,/^systemd_cryptsetup_LDADD/{ /^$/a\
|
|
systemd_cryptsetup_LDFLAGS =\\\
|
|
$(AM_LDFLAGS)\\\
|
|
-Wl,-rpath-link=$(top_srcdir)/.libs\
|
|
|
|
}' Makefile.am
|
|
|
|
./autogen.sh
|
|
|
|
# keep split-usr until all packages have moved their systemd rules to /usr
|
|
%configure \
|
|
--docdir=%{_docdir}/systemd \
|
|
--with-pamlibdir=/%{_lib}/security \
|
|
--with-dbuspolicydir=%{_sysconfdir}/dbus-1/system.d \
|
|
--with-dbussessionservicedir=%{_datadir}/dbus-1/services \
|
|
--with-dbussystemservicedir=%{_datadir}/dbus-1/system-services \
|
|
--with-certificate-root=%{_sysconfdir}/pki/systemd \
|
|
%if 0%{?bootstrap}
|
|
--disable-myhostname \
|
|
--disable-manpages \
|
|
%endif
|
|
%if %{with compatlibs}
|
|
--enable-compat-libs \
|
|
%endif
|
|
--enable-selinux \
|
|
--enable-split-usr \
|
|
--disable-static \
|
|
--disable-tests \
|
|
--with-rc-local-script-path-start=/etc/init.d/boot.local \
|
|
--with-rc-local-script-path-stop=/etc/init.d/halt.local \
|
|
--with-debug-shell=/bin/bash \
|
|
--disable-smack \
|
|
--disable-ima \
|
|
--disable-adm-group \
|
|
--disable-wheel-group \
|
|
%if %{without networkd}
|
|
--disable-networkd \
|
|
%endif
|
|
%if %{without machined}
|
|
--disable-machined \
|
|
%endif
|
|
%if %{without sysvcompat}
|
|
--with-sysvinit-path= \
|
|
--with-sysvrcnd-path= \
|
|
%endif
|
|
%if %{without resolved}
|
|
--disable-resolved \
|
|
%endif
|
|
--disable-kdbus
|
|
|
|
make %{?_smp_mflags} V=e
|
|
|
|
%install
|
|
%make_install
|
|
|
|
# move to %{_lib}
|
|
%if ! 0%{?bootstrap}
|
|
mv %{buildroot}%{_libdir}/libnss_myhostname.so.2 %{buildroot}/%{_lib}
|
|
install -D -m 755 %{S:9} %{buildroot}%{_sbindir}/nss-myhostname-config
|
|
%endif
|
|
|
|
# FIXME: these symlinks should die.
|
|
mkdir -p %{buildroot}/{sbin,lib,bin}
|
|
ln -sf %{_bindir}/udevadm %{buildroot}/sbin/udevadm
|
|
ln -sf %{_bindir}/systemd-ask-password %{buildroot}/bin/systemd-ask-password
|
|
ln -sf %{_bindir}/systemctl %{buildroot}/bin/systemctl
|
|
ln -sf %{_prefix}/lib/systemd/systemd-udevd %{buildroot}/sbin/udevd
|
|
|
|
install -m755 -D %{S:1065} %{buildroot}/%{_prefix}/lib/udev/remount-tmpfs
|
|
rm -rf %{buildroot}%{_sysconfdir}/rpm
|
|
find %{buildroot} -type f -name '*.la' -delete
|
|
|
|
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/sysv-convert
|
|
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/migrated
|
|
|
|
install -m0755 -D %{S:3} %{buildroot}/%{_sbindir}/systemd-sysv-convert
|
|
install -m0755 -D %{S:12} %{buildroot}/%{_prefix}/lib/systemd/systemd-sysv-install
|
|
install -m0755 %{S:13} %{buildroot}/%{_prefix}/lib/systemd/
|
|
|
|
ln -s ../usr/lib/systemd/systemd %{buildroot}/bin/systemd
|
|
ln -s ../usr/lib/systemd/systemd %{buildroot}/sbin/init
|
|
ln -s ../usr/bin/systemctl %{buildroot}/sbin/reboot
|
|
ln -s ../usr/bin/systemctl %{buildroot}/sbin/halt
|
|
ln -s ../usr/bin/systemctl %{buildroot}/sbin/shutdown
|
|
ln -s ../usr/bin/systemctl %{buildroot}/sbin/poweroff
|
|
ln -s ../usr/bin/systemctl %{buildroot}/sbin/telinit
|
|
ln -s ../usr/bin/systemctl %{buildroot}/sbin/runlevel
|
|
rm -rf %{buildroot}/etc/systemd/system/*.target.wants
|
|
rm -f %{buildroot}/etc/systemd/system/default.target
|
|
|
|
# We keep a copy of tmp.mount because it may be removed if not used
|
|
# (see %post): we want to be sure tmpfs won't be used for /tmp by
|
|
# default on Suse distros.
|
|
rm %{buildroot}/%{_prefix}/lib/systemd/system/local-fs.target.wants/tmp.mount
|
|
cp %{buildroot}/%{_prefix}/lib/systemd/system/tmp.mount %{buildroot}/%{_datadir}/systemd/
|
|
|
|
# don't enable wall ask password service, it spams every console (bnc#747783)
|
|
rm %{buildroot}%{_prefix}/lib/systemd/system/multi-user.target.wants/systemd-ask-password-wall.path
|
|
|
|
# create %%{_libexecdir}/modules-load.d
|
|
mkdir -p %{buildroot}%{_libexecdir}/modules-load.d
|
|
cat << EOF > %{buildroot}%{_libexecdir}/modules-load.d/sg.conf
|
|
# load sg module at boot time
|
|
sg
|
|
EOF
|
|
|
|
# To avoid making life hard for Factory developers, don't package the
|
|
# kernel.core_pattern setting until systemd-coredump is a part of an actual
|
|
# systemd release and it's made clear how to get the core dumps out of the
|
|
# journal.
|
|
|
|
# do not ship sysctl defaults in systemd package, will be part of
|
|
# aaa_base (in procps for now)
|
|
rm -f %{buildroot}%{_prefix}/lib/sysctl.d/50-default.conf
|
|
|
|
# remove README file for now
|
|
rm -f %{buildroot}/etc/init.d/README
|
|
%if 0%{?bootstrap}
|
|
rm -f %{buildroot}%{_localstatedir}/log/README
|
|
%endif
|
|
|
|
# journal-upload is built if libcurl is installed which can happen
|
|
# when importd is enabled (whereas journal_remote is not).
|
|
%if ! %{with journal_remote}
|
|
rm -f %{buildroot}%{_sysconfdir}/systemd/journal-upload.conf
|
|
rm -f %{buildroot}%{_prefix}/lib/systemd/systemd-journal-upload
|
|
rm -f %{buildroot}%{_prefix}/lib/systemd/system/systemd-journal-upload.*
|
|
%endif
|
|
|
|
# legacy links
|
|
for f in loginctl journalctl ; do
|
|
ln -s $f %{buildroot}%{_bindir}/systemd-$f
|
|
%if ! 0%{?bootstrap}
|
|
ln -s $f.1 %{buildroot}%{_mandir}/man1/systemd-$f.1
|
|
%endif
|
|
done
|
|
ln -s /usr/lib/udev %{buildroot}/lib/udev
|
|
|
|
# Create the /var/log/journal directory to change the volatile journal
|
|
# to a persistent one
|
|
mkdir -p %{buildroot}%{_localstatedir}/log/journal/
|
|
|
|
# This dir must be owned (and thus created) by systemd otherwise the
|
|
# build system will complain. This is odd since we simply own a ghost
|
|
# file in it...
|
|
mkdir -p %{buildroot}%{_sysconfdir}/X11/xorg.conf.d
|
|
|
|
# Make sure directories in /var exist
|
|
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/coredump
|
|
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/catalog
|
|
# Create ghost databases
|
|
touch %{buildroot}%{_localstatedir}/lib/systemd/catalog/database
|
|
touch %{buildroot}%{_sysconfdir}/udev/hwdb.bin
|
|
|
|
# Make sure the NTP units dir exists
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/ntp-units.d/
|
|
|
|
# Make sure the shutdown/sleep drop-in dirs exist
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system-shutdown/
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system-sleep/
|
|
|
|
# Make sure these directories are properly owned
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/basic.target.wants
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/default.target.wants
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/dbus.target.wants
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/halt.target.wants
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/kexec.target.wants
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/poweroff.target.wants
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/reboot.target.wants
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/shutdown.target.wants
|
|
|
|
# Make sure the generator directories are created and properly owned.
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system-generators
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/user-generators
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system-preset
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/user-preset
|
|
|
|
# create drop-in to prevent tty1 to be cleared (bnc#804158)
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/getty@tty1.service.d/
|
|
cat << EOF > %{buildroot}%{_prefix}/lib/systemd/system/getty@tty1.service.d/noclear.conf
|
|
[Service]
|
|
# ensure tty1 isn't cleared (bnc#804158)
|
|
TTYVTDisallocate=no
|
|
EOF
|
|
|
|
# create drop-in to prevent delegate=yes for root user (bsc#954765,
|
|
# bnc#953241, fate#320421)
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/user@0.service.d/
|
|
cat >%{buildroot}%{_prefix}/lib/systemd/system/user@0.service.d/nodelagate.conf <<EOF
|
|
[Service]
|
|
Delegate=no
|
|
EOF
|
|
|
|
# ensure after.local wrapper is called
|
|
install -m 644 %{S:11} %{buildroot}/%{_prefix}/lib/systemd/system/
|
|
ln -s ../after-local.service %{buildroot}/%{_prefix}/lib/systemd/system/multi-user.target.wants/
|
|
|
|
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/backlight
|
|
mkdir -p %{buildroot}%{_localstatedir}/lib/systemd/random-seed
|
|
|
|
%fdupes -s %{buildroot}%{_mandir}
|
|
|
|
# packaged in systemd-rpm-macros
|
|
rm -f %{buildroot}/%{_prefix}/lib/rpm/macros.d/macros.systemd
|
|
|
|
# Make sure to disable all services by default. The Suse branding
|
|
# presets package takes care of defining the right policies.
|
|
rm -f %{buildroot}%{_prefix}/lib/systemd/system-preset/*.preset
|
|
echo 'disable *' >%{buildroot}%{_prefix}/lib/systemd/system-preset/99-default.preset
|
|
|
|
# Workaround for bug #882393
|
|
for runlevel in poweroff rescue multi-user graphical reboot
|
|
do
|
|
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/${runlevel}.target.wants
|
|
ln -sf ../systemd-update-utmp-runlevel.service %{buildroot}%{_prefix}/lib/systemd/system/${runlevel}.target.wants/
|
|
done
|
|
|
|
# Add entries for xkeyboard-config converted keymaps; mappings, which
|
|
# already exist in original systemd mapping table are being ignored
|
|
# though, i.e. not overwritten; needed as long as YaST uses console
|
|
# keymaps internally and calls localectl to convert from vconsole to
|
|
# X11 keymaps. Ideally YaST should switch to X11 layout names (the
|
|
# mapping table wouldn't be needed since each X11 keymap has a
|
|
# generated xkbd keymap) and let localectl initialize
|
|
# /etc/vconsole.conf and /etc/X11/xorg.conf.d/00-keyboard.conf
|
|
# (FATE#319454).
|
|
if [ -f /usr/share/systemd/kbd-model-map.xkb-generated ]; then
|
|
cat /usr/share/systemd/kbd-model-map.xkb-generated \
|
|
>>%{buildroot}%{_datarootdir}/systemd/kbd-model-map
|
|
fi
|
|
|
|
# kbd-model-map.legacy is used to provide mapping for legacy keymaps,
|
|
# which may still be used by yast.
|
|
cat %{S:13} >>%{buildroot}%{_datarootdir}/systemd/kbd-model-map
|
|
|
|
%find_lang systemd
|
|
|
|
%pre
|
|
# Build of installation images uses an hard coded list of some
|
|
# packages with a %pre that needs to be run during the
|
|
# build. Unfortunately, systemd in one of them. To make thing simpler
|
|
# we use a %pre section even if it is not needed.
|
|
exit 0
|
|
|
|
%post
|
|
%sysusers_create /usr/lib/sysusers.d/systemd.conf
|
|
%if ! 0%{?bootstrap}
|
|
pam-config -a --systemd || :
|
|
%endif
|
|
ldconfig
|
|
[ -e %{_localstatedir}/lib/random-seed ] && mv %{_localstatedir}/lib/random-seed %{_localstatedir}/lib/systemd/ || :
|
|
systemd-machine-id-setup || :
|
|
/usr/lib/systemd/systemd-random-seed save || :
|
|
systemctl daemon-reexec || :
|
|
%journal_catalog_update
|
|
%tmpfiles_create
|
|
|
|
# Try to read default runlevel from the old inittab if it exists
|
|
if [ ! -e /etc/systemd/system/default.target -a -e /etc/inittab ]; then
|
|
runlevel=$(awk -F ':' '$3 == "initdefault" && $1 !~ "^#" { print $2 }' /etc/inittab)
|
|
if [ -n "$runlevel" ] ; then
|
|
ln -sf /usr/lib/systemd/system/runlevel$runlevel.target /etc/systemd/system/default.target || :
|
|
fi
|
|
fi
|
|
|
|
# Create default config in /etc at first install.
|
|
# Later package updates should not overwrite these settings.
|
|
if [ $1 -eq 1 ]; then
|
|
# Enable systemd services according to the distro defaults.
|
|
# Note: systemctl might abort prematurely if it fails on one
|
|
# unit.
|
|
systemctl preset remote-fs.target || :
|
|
systemctl preset getty@.service || :
|
|
systemctl preset systemd-networkd.service || :
|
|
systemctl preset systemd-networkd-wait-online.service || :
|
|
systemctl preset systemd-timesyncd.service || :
|
|
systemctl preset systemd-resolved.service || :
|
|
fi >/dev/null
|
|
|
|
# since v207 /etc/sysctl.conf is no longer parsed, however
|
|
# backward compatibility is provided by /etc/sysctl.d/99-sysctl.conf
|
|
if [ ! -L /etc/sysctl.d/99-sysctl.conf -a -e /etc/sysctl.conf ]; then
|
|
ln -sf /etc/sysctl.conf /etc/sysctl.d/99-sysctl.conf || :
|
|
fi
|
|
|
|
# migrate any symlink which may refer to the old path
|
|
for f in $(find /etc/systemd/system -type l -xtype l); do
|
|
new_target="/usr$(readlink $f)"
|
|
[ -f "$new_target" ] && ln -s -f $new_target $f || :
|
|
done
|
|
|
|
# Keep tmp.mount if it's been enabled explicitly by the user otherwise
|
|
# make sure it wont be activated since it's the default for Suse
|
|
# distros. This unit can be pulled (implicitely) in various ways
|
|
# (private /tmp, etc..) and it's required by the basic.target
|
|
# explicitly since v220.
|
|
case $(systemctl is-enabled tmp.mount 2>/dev/null) in
|
|
enabled) ;;
|
|
*) rm -f %{_prefix}/lib/systemd/system/tmp.mount
|
|
esac
|
|
|
|
# Convert /var/lib/machines subvolume to make it suitable for
|
|
# rollbacks, if needed. See bsc#992573. The installer has been fixed
|
|
# to create it at installation time.
|
|
#
|
|
# The convertion might only be problematic for openSUSE distros
|
|
# (TW/Factory) where previous versions had already created the
|
|
# subvolume at the wrong place (via tmpfiles for example) and user
|
|
# started to populate and use it. In this case we'll let the user fix
|
|
# it manually.
|
|
#
|
|
# For SLE12 this subvolume was only introduced during the upgrade from
|
|
# v210 to v228 when we added this workaround. Note that the subvolume
|
|
# is still created at the wrong place due to the call to
|
|
# tmpfiles_create macro previously however it's empty so there
|
|
# shouldn't be any issues.
|
|
if [ $1 -gt 1 ]; then
|
|
%{_prefix}/lib/systemd/fix-machines-subvol-for-rollbacks.sh || :
|
|
fi
|
|
|
|
%postun
|
|
ldconfig
|
|
if [ $1 -ge 1 ]; then
|
|
systemctl daemon-reload || :
|
|
# Avoid restarting logind [bnc#934901] until fixed upstream
|
|
#systemctl try-restart systemd-logind.service >/dev/null 2>&1 || :
|
|
fi
|
|
%if ! 0%{?bootstrap}
|
|
if [ $1 -eq 0 ]; then
|
|
pam-config -d --systemd || :
|
|
fi
|
|
%endif
|
|
|
|
%preun
|
|
if [ $1 -eq 0 ]; then
|
|
systemctl disable remote-fs.target || :
|
|
systemctl disable getty@.service || :
|
|
systemctl disable systemd-networkd.service || :
|
|
systemctl disable systemd-networkd-wait-online.service || :
|
|
systemctl disable systemd-timesyncd.service || :
|
|
systemctl disable systemd-resolved.service || :
|
|
|
|
rm -f /etc/systemd/system/default.target
|
|
fi >/dev/null
|
|
|
|
%pretrans -n udev%{?mini} -p <lua>
|
|
if posix.stat("/lib/udev") and not posix.stat("/usr/lib/udev") then
|
|
posix.symlink("/lib/udev", "/usr/lib/udev")
|
|
end
|
|
|
|
%pre -n udev%{?mini}
|
|
%regenerate_initrd_post
|
|
if test -L /usr/lib/udev -a /lib/udev -ef /usr/lib/udev ; then
|
|
rm /usr/lib/udev
|
|
mv /lib/udev /usr/lib
|
|
ln -s /usr/lib/udev /lib/udev
|
|
elif [ ! -e /lib/udev ]; then
|
|
ln -s /usr/lib/udev /lib/udev
|
|
fi
|
|
|
|
# Create "tape"/"input" group which is referenced by some udev rules
|
|
# that we're shipping. FIXME: maybe we should consider using
|
|
# "sysusers_create basic.conf" instead ?
|
|
getent group tape >/dev/null || groupadd -r tape || :
|
|
getent group input >/dev/null || groupadd -r input || :
|
|
|
|
%post -n udev%{?mini}
|
|
%udev_hwdb_update
|
|
|
|
# add KERNEL name match to existing persistent net rules
|
|
sed -ri '/KERNEL/ ! { s/NAME="(eth|wlan|ath)([0-9]+)"/KERNEL=="\1*", NAME="\1\2"/}' \
|
|
/etc/udev/rules.d/70-persistent-net.rules 2>/dev/null || :
|
|
|
|
# cleanup old stuff
|
|
rm -f /etc/sysconfig/udev
|
|
rm -f /etc/udev/rules.d/{20,55,65}-cdrom.rules
|
|
|
|
%postun -n udev%{?mini}
|
|
%regenerate_initrd_post
|
|
%insserv_cleanup
|
|
systemctl daemon-reload || :
|
|
%systemd_postun_with_restart systemd-udevd-{control,kernel}.socket systemd-udevd.service
|
|
|
|
%posttrans -n udev%{?mini}
|
|
%regenerate_initrd_posttrans
|
|
|
|
%post -n libudev%{?mini}1 -p /sbin/ldconfig
|
|
%post -n libsystemd0%{?mini} -p /sbin/ldconfig
|
|
|
|
%postun -n libudev%{?mini}1 -p /sbin/ldconfig
|
|
%postun -n libsystemd0%{?mini} -p /sbin/ldconfig
|
|
|
|
%if ! 0%{?bootstrap}
|
|
%post logger
|
|
systemd-tmpfiles --create --prefix=%{_localstatedir}/log/journal/ || :
|
|
if [ "$1" -eq 1 ]; then
|
|
# tell journal to start logging on disk if directory didn't exist before
|
|
systemctl --no-block restart systemd-journal-flush.service >/dev/null || :
|
|
fi
|
|
%endif
|
|
|
|
%if ! 0%{?bootstrap}
|
|
%preun -n nss-myhostname
|
|
if [ "$1" -eq 0 -a -f /etc/nsswitch.conf ] ; then
|
|
%{_sbindir}/nss-myhostname-config --disable
|
|
fi
|
|
|
|
%post -n nss-myhostname -p /sbin/ldconfig
|
|
%postun -n nss-myhostname -p /sbin/ldconfig
|
|
%endif
|
|
|
|
%if %{with resolved}
|
|
%post -n nss-resolve -p /sbin/ldconfig
|
|
%postun -n nss-resolve -p /sbin/ldconfig
|
|
%endif
|
|
|
|
%if %{with machined}
|
|
%post -n nss-mymachines -p /sbin/ldconfig
|
|
%postun -n nss-mymachines -p /sbin/ldconfig
|
|
%endif
|
|
|
|
%if %{with journal_remote}
|
|
%pre journal-remote
|
|
%service_add_pre systemd-journal-gatewayd.socket systemd-journal-gatewayd.service
|
|
%service_add_pre systemd-journal-remote.socket systemd-journal-remote.service
|
|
%service_add_pre systemd-journal-upload.service
|
|
|
|
%post journal-remote
|
|
%sysusers_create %{_libexecdir}/sysusers.d/systemd-remote.conf
|
|
%tmpfiles_create %{_libexecdir}/tmpfiles.d/systemd-remote.conf
|
|
%service_add_post systemd-journal-gatewayd.socket systemd-journal-gatewayd.service
|
|
%service_add_post systemd-journal-remote.socket systemd-journal-remote.service
|
|
%service_add_post systemd-journal-upload.service
|
|
|
|
%preun journal-remote
|
|
%service_del_preun systemd-journal-gatewayd.socket systemd-journal-gatewayd.service
|
|
%service_del_preun systemd-journal-remote.socket systemd-journal-remote.service
|
|
%service_del_preun systemd-journal-upload.service
|
|
|
|
%postun journal-remote
|
|
%service_del_postun systemd-journal-gatewayd.socket systemd-journal-gatewayd.service
|
|
%service_del_postun systemd-journal-remote.socket systemd-journal-remote.service
|
|
%service_del_postun systemd-journal-upload.service
|
|
%endif
|
|
|
|
%clean
|
|
|
|
%files -f systemd.lang
|
|
%defattr(-,root,root)
|
|
/bin/systemd
|
|
/bin/systemd-ask-password
|
|
/bin/systemctl
|
|
%if %{with networkd}
|
|
%{_bindir}/networkctl
|
|
%endif
|
|
%{_bindir}/busctl
|
|
%{_bindir}/bootctl
|
|
%{_bindir}/kernel-install
|
|
%{_bindir}/hostnamectl
|
|
%{_bindir}/localectl
|
|
%if %{with machined}
|
|
%{_bindir}/machinectl
|
|
%endif
|
|
%{_bindir}/systemctl
|
|
%{_bindir}/systemd-analyze
|
|
%{_bindir}/coredumpctl
|
|
%{_bindir}/systemd-delta
|
|
%{_bindir}/systemd-escape
|
|
%{_bindir}/systemd-firstboot
|
|
%{_bindir}/systemd-path
|
|
%{_bindir}/systemd-sysusers
|
|
%{_bindir}/systemd-notify
|
|
%{_bindir}/systemd-run
|
|
%{_bindir}/systemd-journalctl
|
|
%{_bindir}/journalctl
|
|
%{_bindir}/systemd-ask-password
|
|
%{_bindir}/loginctl
|
|
%{_bindir}/systemd-loginctl
|
|
%{_bindir}/systemd-inhibit
|
|
%{_bindir}/systemd-tty-ask-password-agent
|
|
%{_bindir}/systemd-tmpfiles
|
|
%{_bindir}/systemd-machine-id-setup
|
|
%{_bindir}/systemd-nspawn
|
|
%{_bindir}/systemd-stdio-bridge
|
|
%{_bindir}/systemd-detect-virt
|
|
%{_bindir}/timedatectl
|
|
%{_sbindir}/systemd-sysv-convert
|
|
%{_bindir}/systemd-cgls
|
|
%{_bindir}/systemd-cgtop
|
|
%{_bindir}/systemd-cat
|
|
%dir %{_prefix}/lib/kernel
|
|
%dir %{_prefix}/lib/kernel/install.d
|
|
%{_prefix}/lib/kernel/install.d/50-depmod.install
|
|
%{_prefix}/lib/kernel/install.d/90-loaderentry.install
|
|
%dir %{_prefix}/lib/systemd
|
|
%dir %{_prefix}/lib/systemd/user
|
|
%dir %{_prefix}/lib/systemd/system
|
|
%exclude %{_prefix}/lib/systemd/systemd-journal-gatewayd
|
|
%exclude %{_prefix}/lib/systemd/systemd-journal-remote
|
|
%exclude %{_prefix}/lib/systemd/systemd-journal-upload
|
|
%exclude %{_prefix}/lib/systemd/systemd-sysv*
|
|
%exclude %{_prefix}/lib/systemd/systemd-udevd
|
|
%exclude %{_prefix}/lib/systemd/system/systemd-journal-gatewayd.*
|
|
%exclude %{_prefix}/lib/systemd/system/systemd-journal-remote.*
|
|
%exclude %{_prefix}/lib/systemd/system/systemd-journal-upload.*
|
|
%exclude %{_prefix}/lib/systemd/system/systemd-udev*.*
|
|
%exclude %{_prefix}/lib/systemd/system/*.target.wants/systemd-udev*.*
|
|
%exclude %{_prefix}/lib/systemd/system/initrd-udevadm-cleanup-db.service
|
|
%{_prefix}/lib/systemd/system/*.automount
|
|
%{_prefix}/lib/systemd/system/*.service
|
|
%{_prefix}/lib/systemd/system/*.slice
|
|
%{_prefix}/lib/systemd/system/*.target
|
|
%{_prefix}/lib/systemd/system/*.mount
|
|
%{_prefix}/lib/systemd/system/*.timer
|
|
%{_prefix}/lib/systemd/system/*.socket
|
|
%{_prefix}/lib/systemd/system/*.wants
|
|
%{_prefix}/lib/systemd/system/*.path
|
|
%{_prefix}/lib/systemd/user/*.target
|
|
%{_prefix}/lib/systemd/user/*.service
|
|
%{_prefix}/lib/systemd/user/*.socket
|
|
%{_prefix}/lib/systemd/systemd-*
|
|
%{_prefix}/lib/systemd/systemd
|
|
%{_prefix}/lib/systemd/fix-machines-subvol-for-rollbacks.sh
|
|
%dir %{_prefix}/lib/systemd/catalog
|
|
%{_prefix}/lib/systemd/catalog/systemd.catalog
|
|
%{_prefix}/lib/systemd/catalog/systemd.*.catalog
|
|
%{_prefix}/lib/systemd/system-preset
|
|
%{_prefix}/lib/systemd/user-preset
|
|
%{_prefix}/lib/systemd/system-generators
|
|
%{_prefix}/lib/systemd/user-generators
|
|
%dir %{_prefix}/lib/systemd/ntp-units.d/
|
|
%dir %{_prefix}/lib/systemd/system-shutdown/
|
|
%dir %{_prefix}/lib/systemd/system-sleep/
|
|
%dir %{_prefix}/lib/systemd/system/default.target.wants
|
|
%dir %{_prefix}/lib/systemd/system/dbus.target.wants
|
|
%dir %{_prefix}/lib/systemd/system/getty@tty1.service.d
|
|
%dir %{_prefix}/lib/systemd/system/user@0.service.d
|
|
%{_prefix}/lib/systemd/system/getty@tty1.service.d/noclear.conf
|
|
%{_prefix}/lib/systemd/system/user@0.service.d/nodelagate.conf
|
|
%if %{with importd}
|
|
%{_prefix}/lib/systemd/import-pubring.gpg
|
|
%endif
|
|
/%{_lib}/security/pam_systemd.so
|
|
|
|
%if %{with gnuefi}
|
|
%dir %{_prefix}/lib/systemd/boot
|
|
%dir %{_prefix}/lib/systemd/boot/efi
|
|
%{_prefix}/lib/systemd/boot/efi/*.efi
|
|
%{_prefix}/lib/systemd/boot/efi/*.stub
|
|
%endif
|
|
|
|
%dir %{_libexecdir}/modules-load.d
|
|
%dir %{_sysconfdir}/modules-load.d
|
|
%{_libexecdir}/modules-load.d/sg.conf
|
|
|
|
%{_libexecdir}/sysusers.d/
|
|
%exclude %{_libexecdir}/sysusers.d/systemd-remote.conf
|
|
|
|
%dir %{_sysconfdir}/tmpfiles.d
|
|
%{_libexecdir}/tmpfiles.d/
|
|
%exclude %{_libexecdir}/tmpfiles.d/systemd-remote.conf
|
|
|
|
%dir %{_libexecdir}/binfmt.d
|
|
%dir %{_sysconfdir}/binfmt.d
|
|
|
|
%dir %{_libexecdir}/sysctl.d
|
|
%dir %{_sysconfdir}/sysctl.d
|
|
%{_prefix}/lib/sysctl.d/50-coredump.conf
|
|
|
|
%dir %{_sysconfdir}/X11/xinit
|
|
%dir %{_sysconfdir}/X11/xinit/xinitrc.d
|
|
%dir %{_sysconfdir}/X11/xorg.conf.d
|
|
%dir %{_sysconfdir}/dbus-1
|
|
%dir %{_sysconfdir}/dbus-1/system.d
|
|
%dir %{_sysconfdir}/systemd
|
|
%dir %{_sysconfdir}/systemd/system
|
|
%dir %{_sysconfdir}/systemd/user
|
|
%dir %{_sysconfdir}/xdg/systemd
|
|
%{_sysconfdir}/xdg/systemd/user
|
|
%{_sysconfdir}/X11/xinit/xinitrc.d/50-systemd-user.sh
|
|
|
|
%config(noreplace) %{_sysconfdir}/pam.d/systemd-user
|
|
%config(noreplace) %{_sysconfdir}/systemd/bootchart.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/coredump.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/timesyncd.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/system.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/logind.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/journald.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/user.conf
|
|
%if %{with resolved}
|
|
%config(noreplace) %{_sysconfdir}/systemd/resolved.conf
|
|
%endif
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.locale1.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.login1.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.systemd1.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.hostname1.conf
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.timedate1.conf
|
|
%if %{with machined}
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf
|
|
%endif
|
|
%if %{with networkd}
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.network1.conf
|
|
%endif
|
|
%if %{with resolved}
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.resolve1.conf
|
|
%endif
|
|
%if %{with importd}
|
|
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.import1.conf
|
|
%endif
|
|
|
|
# Some files created by us.
|
|
%ghost %config(noreplace) %{_sysconfdir}/X11/xorg.conf.d/00-keyboard.conf
|
|
%ghost %config(noreplace) %{_sysconfdir}/vconsole.conf
|
|
%ghost %config(noreplace) %{_sysconfdir}/locale.conf
|
|
%ghost %config(noreplace) %{_sysconfdir}/machine-id
|
|
%ghost %config(noreplace) %{_sysconfdir}/machine-info
|
|
%ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel2.target
|
|
%ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel3.target
|
|
%ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel4.target
|
|
%ghost %config(noreplace) %{_sysconfdir}/systemd/system/runlevel5.target
|
|
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.systemd1.busname
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.locale1.busname
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.login1.busname
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.hostname1.busname
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.timedate1.busname
|
|
%if %{with networkd}
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.network1.busname
|
|
%endif
|
|
%if %{with resolved}
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.resolve1.busname
|
|
%endif
|
|
%if %{with machined}
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.machine1.busname
|
|
%endif
|
|
%if %{with importd}
|
|
%{_prefix}/lib/systemd/system/org.freedesktop.import1.busname
|
|
%endif
|
|
|
|
%{_datadir}/systemd
|
|
%{_datadir}/factory
|
|
%exclude %{_datadir}/systemd/gatewayd
|
|
|
|
%dir %{_datadir}/dbus-1
|
|
%dir %{_datadir}/dbus-1/services
|
|
%dir %{_datadir}/dbus-1/system-services
|
|
%{_datadir}/dbus-1/services/org.freedesktop.systemd1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.locale1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.login1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.hostname1.service
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service
|
|
%if %{with networkd}
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.network1.service
|
|
%endif
|
|
%if %{with resolved}
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.resolve1.service
|
|
%endif
|
|
%if %{with machined}
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.machine1.service
|
|
%endif
|
|
%if %{with importd}
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.import1.service
|
|
%endif
|
|
|
|
%dir %{_datadir}/polkit-1
|
|
%dir %{_datadir}/polkit-1/actions
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.hostname1.policy
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.locale1.policy
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.timedate1.policy
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.login1.policy
|
|
%if %{with machined}
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.machine1.policy
|
|
%endif
|
|
%if %{with importd}
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.import1.policy
|
|
%endif
|
|
|
|
%if ! 0%{?bootstrap}
|
|
%{_mandir}/man1/[a-rt-z]*ctl.1*
|
|
%{_mandir}/man1/systemc*.1*
|
|
%{_mandir}/man1/systemd*.1*
|
|
%{_mandir}/man5/[a-tv-z]*
|
|
%{_mandir}/man5/user*
|
|
%{_mandir}/man7/[bdfks]*
|
|
%{_mandir}/man8/kern*
|
|
%{_mandir}/man8/pam_*
|
|
%{_mandir}/man8/systemd-[a-gik-tv]*
|
|
%{_mandir}/man8/systemd-h[aioy]*
|
|
%{_mandir}/man8/systemd-journald*
|
|
%{_mandir}/man8/systemd-u[ps]*
|
|
%endif
|
|
%{_docdir}/systemd
|
|
%{_prefix}/lib/udev/rules.d/70-uaccess.rules
|
|
%{_prefix}/lib/udev/rules.d/71-seat.rules
|
|
%{_prefix}/lib/udev/rules.d/73-seat-late.rules
|
|
%{_prefix}/lib/udev/rules.d/99-systemd.rules
|
|
%dir %{_localstatedir}/lib/systemd
|
|
%dir %{_localstatedir}/lib/systemd/sysv-convert
|
|
%dir %{_localstatedir}/lib/systemd/migrated
|
|
%dir %{_localstatedir}/lib/systemd/coredump
|
|
%dir %{_localstatedir}/lib/systemd/catalog
|
|
%ghost %{_localstatedir}/lib/systemd/catalog/database
|
|
%ghost %{_localstatedir}/lib/systemd/backlight
|
|
%ghost %{_localstatedir}/lib/systemd/random-seed
|
|
%dir %{_datadir}/zsh
|
|
%dir %{_datadir}/zsh/site-functions
|
|
%{_datadir}/zsh/site-functions/*
|
|
%{_datadir}/pkgconfig/systemd.pc
|
|
|
|
%files devel
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libsystemd.so
|
|
%{_libdir}/pkgconfig/libsystemd.pc
|
|
%{_includedir}/systemd/
|
|
%if %{with compatlibs}
|
|
%{_libdir}/libsystemd-daemon.so
|
|
%{_libdir}/libsystemd-login.so
|
|
%{_libdir}/libsystemd-id128.so
|
|
%{_libdir}/libsystemd-journal.so
|
|
%{_libdir}/pkgconfig/libsystemd-daemon.pc
|
|
%{_libdir}/pkgconfig/libsystemd-login.pc
|
|
%{_libdir}/pkgconfig/libsystemd-id128.pc
|
|
%{_libdir}/pkgconfig/libsystemd-journal.pc
|
|
%endif
|
|
%if ! 0%{?bootstrap}
|
|
%{_mandir}/man3/SD*.3*
|
|
%{_mandir}/man3/sd*.3*
|
|
%endif
|
|
|
|
%files sysvinit
|
|
%defattr(-,root,root,-)
|
|
/sbin/init
|
|
/sbin/reboot
|
|
/sbin/halt
|
|
/sbin/shutdown
|
|
/sbin/poweroff
|
|
/sbin/telinit
|
|
/sbin/runlevel
|
|
%if ! 0%{?bootstrap}
|
|
%{_mandir}/man1/init.1*
|
|
%{_mandir}/man8/halt.8*
|
|
%{_mandir}/man8/reboot.8*
|
|
%{_mandir}/man8/shutdown.8*
|
|
%{_mandir}/man8/poweroff.8*
|
|
%{_mandir}/man8/telinit.8*
|
|
%{_mandir}/man8/runlevel.8*
|
|
%endif
|
|
%{_prefix}/lib/systemd/systemd-sysv-install
|
|
|
|
%files -n udev%{?mini}
|
|
%defattr(-,root,root)
|
|
/sbin/udevd
|
|
/sbin/udevadm
|
|
# keep for compatibility
|
|
%ghost /lib/udev
|
|
%{_bindir}/udevadm
|
|
%{_bindir}/systemd-hwdb
|
|
%dir %{_prefix}/lib/udev/
|
|
%{_prefix}/lib/udev/ata_id
|
|
%{_prefix}/lib/udev/path_id_compat
|
|
%{_prefix}/lib/udev/cdrom_id
|
|
%{_prefix}/lib/udev/collect
|
|
%{_prefix}/lib/udev/mtd_probe
|
|
%{_prefix}/lib/udev/scsi_id
|
|
%{_prefix}/lib/udev/v4l_id
|
|
%{_prefix}/lib/udev/remount-tmpfs
|
|
%{_prefix}/lib/udev/rootsymlink-generator
|
|
%dir %{_prefix}/lib/udev/rules.d/
|
|
%exclude %{_prefix}/lib/udev/rules.d/70-uaccess.rules
|
|
%exclude %{_prefix}/lib/udev/rules.d/71-seat.rules
|
|
%exclude %{_prefix}/lib/udev/rules.d/73-seat-late.rules
|
|
%exclude %{_prefix}/lib/udev/rules.d/99-systemd.rules
|
|
%{_prefix}/lib/udev/rules.d/*.rules
|
|
%{_prefix}/lib/udev/hwdb.d/
|
|
%dir %{_sysconfdir}/udev/
|
|
%dir %{_sysconfdir}/udev/rules.d/
|
|
%ghost %{_sysconfdir}/udev/hwdb.bin
|
|
%config(noreplace) %{_sysconfdir}/udev/udev.conf
|
|
%if ! 0%{?bootstrap}
|
|
%{_mandir}/man5/udev*
|
|
%{_mandir}/man7/hwdb*
|
|
%{_mandir}/man7/udev*
|
|
%{_mandir}/man8/systemd-hwdb*
|
|
%{_mandir}/man8/systemd-udev*
|
|
%{_mandir}/man8/udev*
|
|
%endif
|
|
%dir %{_prefix}/lib/systemd/system
|
|
%{_prefix}/lib/systemd/systemd-udevd
|
|
%{_prefix}/lib/systemd/system/systemd-udev*.service
|
|
%{_prefix}/lib/systemd/system/systemd-udevd*.socket
|
|
%{_prefix}/lib/systemd/system/initrd-udevadm-cleanup-db.service
|
|
%dir %{_prefix}/lib/systemd/system/sysinit.target.wants
|
|
%{_prefix}/lib/systemd/system/sysinit.target.wants/systemd-udev*.service
|
|
%dir %{_prefix}/lib/systemd/system/sockets.target.wants
|
|
%{_prefix}/lib/systemd/system/sockets.target.wants/systemd-udev*.socket
|
|
%dir %{_prefix}/lib/systemd/network
|
|
%{_prefix}/lib/systemd/network/*.link
|
|
%{_prefix}/lib/systemd/network/*.network
|
|
%{_datadir}/pkgconfig/udev.pc
|
|
|
|
%files -n libsystemd0%{?mini}
|
|
%defattr(-,root,root)
|
|
%{_libdir}/libsystemd.so.*
|
|
%if %{with compatlibs}
|
|
%{_libdir}/libsystemd-daemon.so.*
|
|
%{_libdir}/libsystemd-login.so.*
|
|
%{_libdir}/libsystemd-id128.so.*
|
|
%{_libdir}/libsystemd-journal.so.*
|
|
%endif
|
|
|
|
%files -n libudev%{?mini}1
|
|
%defattr(-,root,root)
|
|
%{_libdir}/libudev.so.*
|
|
|
|
%files -n libudev%{?mini}-devel
|
|
%defattr(-,root,root)
|
|
%{_includedir}/libudev.h
|
|
%{_libdir}/libudev.so
|
|
%{_libdir}/pkgconfig/libudev.pc
|
|
%if ! 0%{?bootstrap}
|
|
%{_mandir}/man3/*udev*.3*
|
|
%endif
|
|
|
|
%if ! 0%{?bootstrap}
|
|
%files logger
|
|
%defattr(-,root,root)
|
|
%dir %attr(2755,root,systemd-journal) %{_localstatedir}/log/journal/
|
|
%if %{with sysvcompat}
|
|
%{_localstatedir}/log/README
|
|
%endif
|
|
|
|
%files -n nss-myhostname
|
|
%defattr(-, root, root)
|
|
/%{_lib}/*nss_myhostname*
|
|
%{_sbindir}/nss-myhostname-config
|
|
%{_mandir}/man8/libnss_myhostname.*
|
|
%{_mandir}/man8/nss-myhostname.*
|
|
%endif
|
|
|
|
%if %{with resolved}
|
|
%files -n nss-resolve
|
|
%defattr(-, root, root)
|
|
%{_libdir}/libnss_resolve.so.2
|
|
%{_mandir}/man8/libnss_resolve.*
|
|
%{_mandir}/man8/nss-resolve.*
|
|
%endif
|
|
|
|
%if %{with machined}
|
|
%files -n nss-mymachines
|
|
%defattr(-,root,root)
|
|
%{_libdir}/libnss_mymachines.so*
|
|
%{_mandir}/man8/libnss_mymachines.*
|
|
%{_mandir}/man8/nss-mymachines.*
|
|
%endif
|
|
|
|
%if %{with journal_remote}
|
|
%files journal-remote
|
|
%defattr(-, root, root)
|
|
%config(noreplace) %{_sysconfdir}/systemd/journal-remote.conf
|
|
%config(noreplace) %{_sysconfdir}/systemd/journal-upload.conf
|
|
%{_prefix}/lib/systemd/system/systemd-journal-gatewayd.*
|
|
%{_prefix}/lib/systemd/system/systemd-journal-remote.*
|
|
%{_prefix}/lib/systemd/system/systemd-journal-upload.*
|
|
%{_prefix}/lib/systemd/systemd-journal-gatewayd
|
|
%{_prefix}/lib/systemd/systemd-journal-remote
|
|
%{_prefix}/lib/systemd/systemd-journal-upload
|
|
%{_libexecdir}/sysusers.d/systemd-remote.conf
|
|
%{_libexecdir}/tmpfiles.d/systemd-remote.conf
|
|
%{_mandir}/man8/systemd-journal-gatewayd.*
|
|
%{_mandir}/man8/systemd-journal-remote.*
|
|
%{_mandir}/man8/systemd-journal-upload.*
|
|
%{_datadir}/systemd/gatewayd
|
|
%endif
|
|
|
|
%files bash-completion
|
|
%defattr(-,root,root,-)
|
|
%dir %{_datadir}/bash-completion
|
|
%dir %{_datadir}/bash-completion/completions
|
|
%{_datadir}/bash-completion/completions/*
|
|
|
|
%changelog
|