Summary(pl.UTF-8): systemd - zarządca systemu i usług dla Linuksa
Name: systemd
# Verify ChangeLog and NEWS when updating (since there are incompatible/breaking changes very often)
-Version: 206
-Release: 5
+Version: 208
+Release: 13
Epoch: 1
License: GPL v2+ (udev), LGPL v2.1+ (the rest)
Group: Base
Source0: http://www.freedesktop.org/software/systemd/%{name}-%{version}.tar.xz
-# Source0-md5: 89e36f2d3ba963020b72738549954cbc
+# Source0-md5: df64550d92afbffb4f67a434193ee165
Source1: %{name}-sysv-convert
Source2: %{name}_booted.c
Source3: network.service
Patch10: net-rename-revert.patch
Patch11: nss-in-rootlib.patch
Patch12: proc-hidepid.patch
-Patch13: hwdb-dell-keyboard.patch
+Patch14: dont-hash-null-keys.patch
+Patch15: hibernate-to-file.patch
+Patch16: systemd-configfs.patch
+Patch17: pld-boot_efi_mount.patch
+Patch18: optional-tmp-on-tmpfs.patch
URL: http://www.freedesktop.org/wiki/Software/systemd
BuildRequires: acl-devel
BuildRequires: attr-devel
Requires: %{name}-units = %{epoch}:%{version}-%{release}
Requires(postun): /usr/sbin/groupdel
Requires(postun): /usr/sbin/userdel
+Requires(post): /bin/setfacl
Requires(pre): /bin/id
Requires(pre): /usr/bin/getgid
Requires(pre): /usr/sbin/groupadd
Provides: udev-acl = %{epoch}:%{version}-%{release}
Obsoletes: systemd-no-compat-tmpfiles
Obsoletes: udev-systemd
-# systemd takes care of that and causes problems
-Conflicts: binfmt-detector
# sytemd wants pam with pam_systemd.so in system-auth...
Conflicts: pam < 1:1.1.5-5
# ...and sudo hates it
Obsoletes: virtual(init-daemon)
Conflicts: rc-scripts < 0.4.5.5-2
Conflicts: upstart
+# systemd takes care of that and causes problems
+Conflicts: binfmt-detector
%description init
Install this package when you are ready to final switch to systemd.
%package journal-gateway
Summary: Gateway for serving journal events over the network using HTTP
-License: LGPL v2+
+Summary(pl.UTF-8): Bramka do serwowania zdarzeń dziennika po sieci poprzez HTTP
+License: LGPL v2.1+
Group: Base
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires(postun): /usr/sbin/groupdel
systemd-journal-gatewayd serves journal events over the network using
HTTP.
+%description journal-gateway -l pl.UTF-8
+systemd-journal-gatewayd serwuje zdarzenia dziennika po sieci poprzez
+HTTP.
+
%package inetd
Summary: Native inet service support for systemd via socket activation
Summary(pl.UTF-8): Natywna obsługa usług inet dla systemd
%description devel -l pl.UTF-8
Pliki nagłówkowe bibliotek systemd.
+%package -n python-systemd
+Summary: Systemd Python bindings
+Summary(pl.UTF-8): Wiązania do Systemd dla Pythona
+Group: Development/Languages/Python
+Requires: %{name}-libs = %{epoch}:%{version}-%{release}
+Requires: python
+
+%description -n python-systemd
+Systemd Python bindings.
+
+%description -n python-systemd -l pl.UTF-8
+Wiązania do Systemd dla Pythona.
+
%package -n bash-completion-systemd
Summary: bash-completion for systemd
Summary(pl.UTF-8): Bashowe dopełnianie składni dla systemd
Group: Applications/Shells
-Requires: %{name} = %{epoch}:%{version}
+Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: bash-completion >= 2.0
%description -n bash-completion-systemd
%description -n bash-completion-systemd -l pl.UTF-8
Bashowe dopełnianie składni dla systemd.
+%package -n zsh-completion-systemd
+Summary: zsh completion for systemd commands
+Summary(pl.UTF-8): Uzupełnianie parametrów w zsh dla poleceń systemd
+Group: Applications/Shells
+Requires: %{name} = %{epoch}:%{version}-%{release}
+
+%description -n zsh-completion-systemd
+zsh completion for systemd commands.
+
+%description -n zsh-completion-systemd -l pl.UTF-8
+Uzupełnianie parametrów w zsh dla poleceń systemd.
+
%package -n udev
Summary: Device manager for the Linux 2.6 kernel series
Summary(pl.UTF-8): Zarządca urządzeń dla Linuksa 2.6
Summary(pl.UTF-8): Bashowe dopełnianie składni dla udev
Group: Applications/Shells
Requires: bash-completion >= 2.0
-Requires: udev = %{epoch}:%{version}
+Requires: udev = %{epoch}:%{version}-%{release}
%description -n bash-completion-udev
bash-completion for udev.
%description -n bash-completion-udev -l pl.UTF-8
Bashowe dopełnianie składni dla udev.
+%package -n zsh-completion-udev
+Summary: zsh completion for udev commands
+Summary(pl.UTF-8): Uzupełnianie parametrów w zsh dla poleceń udev
+Group: Applications/Shells
+Requires: %{name} = %{epoch}:%{version}-%{release}
-%package -n python-systemd
-Summary: Systemd Python bindings
-Summary(pl.UTF-8): Wiązania do Systemd dla Pythona
-Group: Development/Languages/Python
-Requires: %{name}-libs = %{epoch}:%{version}-%{release}
-Requires: python
-
-%description -n python-systemd
-Systemd Python bindings.
+%description -n zsh-completion-udev
+zsh completion for udev commands.
-%description -n python-systemd -l pl.UTF-8
-Wiązania do Systemd dla Pythona.
+%description -n zsh-completion-udev -l pl.UTF-8
+Uzupełnianie parametrów w zsh dla poleceń udev.
%prep
%setup -q
%patch10 -p1
%patch11 -p1
%patch12 -p1
-%patch13 -p1
+# possible cause of infinite loop inside systemd-login
+#patch14 -p1
+%patch15 -p1
+%patch16 -p1
+%patch17 -p1
+%patch18 -p1
cp -p %{SOURCE2} src/systemd_booted.c
%build
--with-kbd-setfont=/bin/setfont \
--with-sysvinit-path=/etc/rc.d/init.d \
--with-sysvrcnd-path=/etc/rc.d \
+ --with-firmware-path=/lib/firmware \
--with-rc-local-script-path-start=/etc/rc.d/rc.local \
--with-rc-local-script-path-stop=/sbin/halt.local \
--with-rootprefix="" \
cp -a %{SOURCE120} $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/udev_blacklist.conf
cp -a %{SOURCE121} $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/fbdev-blacklist.conf
+:>$RPM_BUILD_ROOT%{_sysconfdir}/udev/hwdb.bin
+
mv $RPM_BUILD_ROOT%{_mandir}/man8/{systemd-,}udevd.8
echo ".so man8/udevd.8" >$RPM_BUILD_ROOT%{_mandir}/man8/systemd-udevd.8
ln -s ../var-lock.mount $RPM_BUILD_ROOT%{systemdunitdir}/local-fs.target.wants
ln -s ../var-run.mount $RPM_BUILD_ROOT%{systemdunitdir}/local-fs.target.wants
-# and remove tmp on tmpfs mount
-%{__rm} $RPM_BUILD_ROOT%{systemdunitdir}/tmp.mount
+# and remove mounting tmp on tmpfs by default
%{__rm} $RPM_BUILD_ROOT%{systemdunitdir}/local-fs.target.wants/tmp.mount
# Install and enable storage subsystems support services (RAID, LVM, etc.)
ln -s ../pld-storage-init.service $RPM_BUILD_ROOT%{systemdunitdir}/local-fs.target.wants
ln -s ../pld-clean-tmp.service $RPM_BUILD_ROOT%{systemdunitdir}/local-fs.target.wants
+# As of 207 the systemd-sysctl tool no longer natively reads the file /etc/sysctl.conf.
+# If desired, the file should be symlinked from /etc/sysctl.d/99-sysctl.conf.
+ln -s /etc/sysctl.conf $RPM_BUILD_ROOT/etc/sysctl.d/99-sysctl.conf
+
# Install rc-inetd replacement
cp -p %{SOURCE16} $RPM_BUILD_ROOT%{systemdunitdir}-generators/pld-rc-inetd-generator
cp -p %{SOURCE17} $RPM_BUILD_ROOT%{systemdunitdir}/rc-inetd.service
%groupadd -g 288 systemd-journal
%post
-# should we?
-#setfacl -nm g:logs:rx,d:g:logs:rx /var/log/journal
-/bin/systemd-machine-id-setup > /dev/null 2>&1 || :
-/bin/systemctl daemon-reexec > /dev/null 2>&1 || :
+/bin/systemd-machine-id-setup || :
+/lib/systemd/systemd-random-seed save || :
+/bin/systemctl --system daemon-reexec || :
+/bin/journalctl --update-catalog || :
+# Apply ACL to the journal directory
+/bin/setfacl -Rnm g:logs:rx,d:g:logs:rx /var/log/journal || :
%postun
if [ $1 -ge 1 ]; then
- /bin/systemctl try-restart systemd-logind.service >/dev/null 2>&1 || :
+ /bin/systemctl --system daemon-reload || :
+ /bin/systemctl try-restart systemd-logind.service || :
fi
if [ "$1" = "0" ]; then
%groupremove systemd-journal
fi
+%triggerpostun -- systemd < 208-1
+chgrp -R systemd-journal /var/log/journal
+chmod g+s /var/log/journal
+
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%post units
if [ $1 -eq 1 ]; then
# Try to read default runlevel from the old inittab if it exists
- runlevel=$(/bin/awk -F ':' '$3 == "initdefault" && $1 !~ "^#" { print $2 }' /etc/inittab 2> /dev/null)
+ runlevel=$(/bin/awk -F ':' '$3 == "initdefault" && $1 !~ "^#" { print $2 }' /etc/inittab 2>/dev/null)
if [ -z "$runlevel" ] ; then
target="%{systemdunitdir}/graphical.target"
else
fi
# And symlink what we found to the new-style default.target
- ln -s "$target" %{_sysconfdir}/systemd/system/default.target >/dev/null 2>&1 || :
+ ln -s "$target" %{_sysconfdir}/systemd/system/default.target || :
# Setup hostname
[ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
# Enable the services we install by default.
/bin/systemctl enable \
- getty@.service \
network.service \
remote-fs.target \
systemd-readahead-replay.service \
systemd-readahead-collect.service \
- systemd-udev-settle.service >/dev/null 2>&1 || :
+ systemd-udev-settle.service || :
fi
%preun units
if [ $1 -eq 0 ] ; then
/bin/systemctl disable \
- getty@.service \
network.service \
remote-fs.target \
systemd-readahead-replay.service \
systemd-readahead-collect.service \
- systemd-udev-settle.service >/dev/null 2>&1 || :
+ systemd-udev-settle.service || :
- %{__rm} -f %{_sysconfdir}/systemd/system/default.target >/dev/null 2>&1 || :
+ %{__rm} -f %{_sysconfdir}/systemd/system/default.target || :
fi
%postun units
if [ $1 -ge 1 ]; then
- /bin/systemctl daemon-reload > /dev/null 2>&1 || :
+ /bin/systemctl daemon-reload || :
fi
%triggerpostun units -- systemd-units < 43-7
# Remove design fialures
-%{__rm} -f %{_sysconfdir}/systemd/system/network.target.wants/ifcfg@*.service >/dev/null 2>&1 || :
-%{__rm} -f %{_sysconfdir}/systemd/system/network.target.wants/network-post.service >/dev/null 2>&1 || :
-%{__rm} -f %{_sysconfdir}/systemd/system/multi-user.target.wants/network-post.service >/dev/null 2>&1 || :
-/bin/systemctl reenable network.service >/dev/null 2>&1 || :
+%{__rm} -f %{_sysconfdir}/systemd/system/network.target.wants/ifcfg@*.service || :
+%{__rm} -f %{_sysconfdir}/systemd/system/network.target.wants/network-post.service || :
+%{__rm} -f %{_sysconfdir}/systemd/system/multi-user.target.wants/network-post.service || :
+/bin/systemctl reenable network.service || :
%triggerpostun units -- systemd-units < 1:183
-/bin/systemctl --quiet enable systemd-udev-settle.service >/dev/null 2>&1 || :
-%{__rm} -f /etc/systemd/system/basic.target.wants/udev-settle.service >/dev/null 2>&1 || :
+/bin/systemctl --quiet enable systemd-udev-settle.service || :
+%{__rm} -f /etc/systemd/system/basic.target.wants/udev-settle.service || :
# preserve renamed configs
if [ -f /etc/systemd/systemd-journald.conf.rpmsave ]; then
%{__mv} /etc/systemd/journald.conf{,.rpmnew}
fi
fi
+%triggerpostun units -- systemd-units < 1:208-9
+# remove buggy symlink
+if [ -L /etc/systemd/system/getty.target.wants/getty@.service ] ; then
+ rm -f /etc/systemd/system/getty.target.wants/getty@.service || :
+fi
+
%post inetd
%systemd_reload
# Do not change it to restart, we only want to start new services here
/sbin/udevadm info --convert-db
%post -n udev-core
+/sbin/udevadm hwdb --update || :
if [ $1 -gt 1 ]; then
if [ ! -x /bin/systemd_booted ] || ! /bin/systemd_booted; then
if grep -qs devtmpfs /proc/mounts && [ -n "$(pidof udevd)" ]; then
%dir %{_sysconfdir}/systemd/system/*.target.wants
%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/systemd/system/*.target.wants/*.service
%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/systemd/system/*.target.wants/*.target
+%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/systemd-user
/etc/xdg/systemd
%attr(755,root,root) /bin/journalctl
%attr(755,root,root) /bin/loginctl
%attr(755,root,root) /lib/systemd/pld-storage-init
%attr(755,root,root) /lib/systemd/systemd-ac-power
%attr(755,root,root) /lib/systemd/systemd-activate
+%attr(755,root,root) /lib/systemd/systemd-backlight
%attr(755,root,root) /lib/systemd/systemd-binfmt
%attr(755,root,root) /lib/systemd/systemd-bootchart
%attr(755,root,root) /lib/systemd/systemd-cgroups-agent
%attr(755,root,root) /lib/systemd/systemd-sleep
%attr(755,root,root) /lib/systemd/systemd-sysctl
%attr(755,root,root) /lib/systemd/systemd-timedated
-%attr(755,root,root) /lib/systemd/systemd-timestamp
%attr(755,root,root) /lib/systemd/systemd-udevd
%attr(755,root,root) /lib/systemd/systemd-update-utmp
%attr(755,root,root) /lib/systemd/systemd-user-sessions
/lib/udev/rules.d/71-seat.rules
/lib/udev/rules.d/73-seat-late.rules
/lib/udev/rules.d/99-systemd.rules
-%dir %{_libexecdir}/systemd
-%dir %{_libexecdir}/systemd/system-shutdown
-%dir %{_libexecdir}/systemd/system-sleep
%dir %{_libexecdir}/systemd/catalog
%{_libexecdir}/systemd/catalog/systemd.catalog
-%{_libexecdir}/systemd/user
-%dir %{_libexecdir}/systemd/user-generators
%{_libexecdir}/tmpfiles.d/legacy.conf
%{_libexecdir}/tmpfiles.d/systemd.conf
%{_libexecdir}/tmpfiles.d/tmp.conf
%{_libexecdir}/tmpfiles.d/x11.conf
+%{_libexecdir}/sysctl.d/50-coredump.conf
%{_datadir}/dbus-1/interfaces/org.freedesktop.hostname1.xml
%{_datadir}/dbus-1/interfaces/org.freedesktop.locale1.xml
%{_datadir}/dbus-1/interfaces/org.freedesktop.systemd1.*.xml
%{_mandir}/man1/timedatectl.1*
%{_mandir}/man5/binfmt.d.5*
%{_mandir}/man5/bootchart.conf.5*
-# cfl with rc-scripts
-#%{_mandir}/man5/crypttab.5*
%{_mandir}/man5/hostname.5*
%{_mandir}/man5/journald.conf.5*
%{_mandir}/man5/locale.conf.5*
%{_mandir}/man8/kernel-install.8*
%{_mandir}/man8/nss-myhostname.8*
%{_mandir}/man8/systemd-activate.8*
+%{_mandir}/man8/systemd-backlight.8*
%{_mandir}/man8/systemd-binfmt.8*
%{?with_cryptsetup:%{_mandir}/man8/systemd-cryptsetup-generator.8*}
%{_mandir}/man8/systemd-fsck.8*
+%{_mandir}/man8/systemd-efi-boot-generator.8*
+%{_mandir}/man8/systemd-gpt-auto-generator.8*
%{_mandir}/man8/systemd-fstab-generator.8*
%{_mandir}/man8/systemd-getty-generator.8*
%{_mandir}/man8/systemd-hostnamed.8*
%dir /var/lib/%{name}/coredump
%attr(640,root,root) %ghost /var/log/btmp
%attr(664,root,utmp) %ghost /var/log/wtmp
-%dir /var/log/journal
+%attr(2755,root,systemd-journal) %dir /var/log/journal
%if %{with pam}
%attr(755,root,root) /%{_lib}/security/pam_systemd.so
%attr(755,root,root) /sbin/shutdown
%attr(755,root,root) /sbin/telinit
%{_mandir}/man1/init.1*
-%{_mandir}/man5/crypttab.5*
+%{?with_cryptsetup:%{_mandir}/man5/crypttab.5*}
%{_mandir}/man8/halt.8*
%{_mandir}/man8/poweroff.8*
%{_mandir}/man8/reboot.8*
%dir %{_sysconfdir}/modules-load.d
%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/modules-load.d/modules.conf
%dir %{_sysconfdir}/sysctl.d
+%{_sysconfdir}/sysctl.d/99-sysctl.conf
%dir %{_sysconfdir}/systemd
%dir %{_sysconfdir}/systemd/system
%dir %{_sysconfdir}/systemd/system-preset
%dir %{_libexecdir}/binfmt.d
%dir %{_libexecdir}/modules-load.d
%dir %{_libexecdir}/sysctl.d
+%{_libexecdir}/sysctl.d/50-default.conf
+%dir %{_libexecdir}/systemd
+%dir %{_libexecdir}/systemd/system-shutdown
+%dir %{_libexecdir}/systemd/system-sleep
+%dir %{_libexecdir}/systemd/user
+%{_libexecdir}/systemd/user/*.target
+%{_libexecdir}/systemd/user/systemd-exit.service
+%dir %{_libexecdir}/systemd/user-generators
%dir /lib/systemd/pld-helpers.d
%dir /lib/systemd/system-generators
%dir /lib/systemd/system-sleep
%dir /lib/systemd/system-shutdown
-%{_libexecdir}/sysctl.d/50-coredump.conf
-%{_libexecdir}/sysctl.d/50-default.conf
%attr(755,root,root) /bin/systemctl
%attr(755,root,root) /bin/systemd-tmpfiles
%attr(755,root,root) /bin/systemd_booted
%{_mandir}/man8/systemd-ask-password-console.service.8*
%{_mandir}/man8/systemd-ask-password-wall.path.8*
%{_mandir}/man8/systemd-ask-password-wall.service.8*
+%{_mandir}/man8/systemd-backlight@.service.8*
%{_mandir}/man8/systemd-binfmt.service.8*
%{?with_cryptsetup:%{_mandir}/man8/systemd-cryptsetup.8*}
%{?with_cryptsetup:%{_mandir}/man8/systemd-cryptsetup@.service.8*}
%{_mandir}/man3/SD_*.3*
%{_mandir}/man3/sd*.3*
+%files -n python-systemd
+%defattr(644,root,root,755)
+%dir %{py_sitedir}/systemd
+%{py_sitedir}/systemd/*.py[co]
+%attr(755,root,root) %{py_sitedir}/systemd/_daemon.so
+%attr(755,root,root) %{py_sitedir}/systemd/_journal.so
+%attr(755,root,root) %{py_sitedir}/systemd/_reader.so
+%attr(755,root,root) %{py_sitedir}/systemd/id128.so
+%attr(755,root,root) %{py_sitedir}/systemd/login.so
+
%files -n bash-completion-systemd
%defattr(644,root,root,755)
%{_datadir}/bash-completion/completions/hostnamectl
%{_datadir}/bash-completion/completions/journalctl
+%{_datadir}/bash-completion/completions/kernel-install
%{_datadir}/bash-completion/completions/localectl
%{_datadir}/bash-completion/completions/loginctl
%{_datadir}/bash-completion/completions/systemctl
%{_datadir}/bash-completion/completions/systemd-analyze
%{_datadir}/bash-completion/completions/systemd-coredumpctl
+%{_datadir}/bash-completion/completions/systemd-run
%{_datadir}/bash-completion/completions/timedatectl
+%files -n zsh-completion-systemd
+%defattr(644,root,root,755)
+%{_datadir}/zsh/site-functions/_hostnamectl
+%{_datadir}/zsh/site-functions/_journalctl
+%{_datadir}/zsh/site-functions/_kernel-install
+%{_datadir}/zsh/site-functions/_localectl
+%{_datadir}/zsh/site-functions/_loginctl
+%{_datadir}/zsh/site-functions/_machinectl
+%{_datadir}/zsh/site-functions/_sd_hosts_or_user_at_host
+%{_datadir}/zsh/site-functions/_systemctl
+%{_datadir}/zsh/site-functions/_systemd
+%{_datadir}/zsh/site-functions/_systemd-analyze
+%{_datadir}/zsh/site-functions/_systemd-coredumpctl
+%{_datadir}/zsh/site-functions/_systemd-delta
+%{_datadir}/zsh/site-functions/_systemd-inhibit
+%{_datadir}/zsh/site-functions/_systemd-nspawn
+%{_datadir}/zsh/site-functions/_systemd-tmpfiles
+%{_datadir}/zsh/site-functions/_timedatectl
+
%files -n udev
%defattr(644,root,root,755)
%dev(c,1,3) %attr(666,root,root) /dev/null
%dir %{_sysconfdir}/udev
%dir %{_sysconfdir}/udev/rules.d
%dir %{_sysconfdir}/udev/hwdb.d
+%ghost %{_sysconfdir}/udev/hwdb.bin
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/modprobe.d/fbdev-blacklist.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/modprobe.d/udev_blacklist.conf
# rules below are NOT supposed to be changed by users
/lib/udev/rules.d/42-usb-hid-pm.rules
+/lib/udev/rules.d/50-firmware.rules
/lib/udev/rules.d/50-udev-default.rules
/lib/udev/rules.d/60-cdrom_id.rules
/lib/udev/rules.d/60-keyboard.rules
%defattr(644,root,root,755)
%{_datadir}/bash-completion/completions/udevadm
-%files -n python-systemd
+%files -n zsh-completion-udev
%defattr(644,root,root,755)
-%dir %{py_sitedir}/systemd
-%{py_sitedir}/systemd/*.py*
-%attr(755,root,root) %{py_sitedir}/systemd/*.so
+%{_datadir}/zsh/site-functions/_udevadm