Name: systemd Url: http://www.freedesktop.org/wiki/Software/systemd BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Version: 20 Release: 1%{?dist} License: GPLv2+ Group: System Environment/Base Summary: A System and Service Manager BuildRequires: libudev-devel >= 160 BuildRequires: libcap-devel BuildRequires: tcp_wrappers-devel BuildRequires: pam-devel BuildRequires: libselinux-devel BuildRequires: audit-libs-devel BuildRequires: cryptsetup-luks-devel BuildRequires: libxslt BuildRequires: docbook-style-xsl BuildRequires: vala >= 0.11 BuildRequires: pkgconfig BuildRequires: gtk2-devel BuildRequires: libnotify-devel >= 0.7 BuildRequires: automake BuildRequires: autoconf BuildRequires: libtool BuildRequires: make Requires(post): authconfig Requires: systemd-units = %{version}-%{release} Requires: dbus >= 1.3.2 Requires: udev >= 160 Requires: libudev >= 160 Requires: initscripts >= 9.22 Conflicts: selinux-policy < 3.8.7 Requires: kernel >= 2.6.35.2-9.fc14 Source0: http://www.freedesktop.org/software/systemd/%{name}-%{version}.tar.bz2 # Adds support for the %%{_unitdir} macro Source1: macros.systemd # For sysvinit tools Obsoletes: SysVinit < 2.86-24, sysvinit < 2.86-24 Provides: SysVinit = 2.86-24, sysvinit = 2.86-24 Provides: sysvinit-userspace Provides: systemd-sysvinit Obsoletes: systemd-sysvinit Obsoletes: upstart < 0.6.5-11 Obsoletes: upstart-sysvinit < 0.6.5-11 Conflicts: upstart-sysvinit Obsoletes: readahead < 1:1.5.7-3 Provides: readahead = 1:1.5.7-3 %description systemd is a system and service manager for Linux, compatible with SysV and LSB init scripts. 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 units Group: System Environment/Base Summary: Configuration files, directories and installation tool for systemd Requires: pkgconfig Requires(post): coreutils Requires(post): gawk %description units Basic configuration files, directories and installation tool for the systemd system and service manager. %package gtk Group: System Environment/Base Summary: Graphical frontend for systemd Requires: %{name} = %{version}-%{release} Requires: polkit %description gtk Graphical front-end for systemd. %prep %setup -q %build %configure --with-rootdir= --with-distro=fedora make %{?_smp_mflags} %install rm -rf %{buildroot} make DESTDIR=%{buildroot} install find %{buildroot} \( -name '*.a' -o -name '*.la' \) -exec rm {} \; # Create SysV compatibility symlinks. systemctl/systemd are smart # enough to detect in which way they are called. mkdir -p %{buildroot}/sbin ln -s ../bin/systemd %{buildroot}/sbin/init ln -s ../bin/systemctl %{buildroot}/sbin/reboot ln -s ../bin/systemctl %{buildroot}/sbin/halt ln -s ../bin/systemctl %{buildroot}/sbin/poweroff ln -s ../bin/systemctl %{buildroot}/sbin/shutdown ln -s ../bin/systemctl %{buildroot}/sbin/telinit ln -s ../bin/systemctl %{buildroot}/sbin/runlevel # We create all wants links manually at installation time to make sure # they are not owned and hence overriden by rpm after the used deleted # them. rm -r %{buildroot}/etc/systemd/system/*.target.wants # Make sure the ghost-ing below works touch %{buildroot}%{_sysconfdir}/systemd/system/runlevel2.target touch %{buildroot}%{_sysconfdir}/systemd/system/runlevel3.target touch %{buildroot}%{_sysconfdir}/systemd/system/runlevel4.target touch %{buildroot}%{_sysconfdir}/systemd/system/runlevel5.target touch %{buildroot}%{_sysconfdir}/machine-id # Make sure these directories are properly owned mkdir -p %{buildroot}/lib/systemd/system/basic.target.wants mkdir -p %{buildroot}/lib/systemd/system/default.target.wants mkdir -p %{buildroot}/lib/systemd/system/dbus.target.wants mkdir -p %{buildroot}/lib/systemd/system/syslog.target.wants # Install RPM macros file for systemd mkdir -p %{buildroot}%{_sysconfdir}/rpm/ install -m 0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/ # Mask legacy stuff ln -s rescue.service %{buildroot}/lib/systemd/system/single.service %clean rm -rf $RPM_BUILD_ROOT %post /bin/systemd-machine-id-setup > /dev/null 2>&1 || : /bin/systemctl daemon-reexec > /dev/null 2>&1 || : # Make sure pam_systemd is enabled if ! /bin/grep -q pam_systemd /etc/pam.d/system-auth-ac ; then /usr/sbin/authconfig --update >/dev/null 2>&1 || : # Try harder /bin/grep -q pam_systemd /etc/pam.d/system-auth-ac || /usr/sbin/authconfig --updateall >/dev/null 2>&1 || : fi %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) if [ -z "$runlevel" ] ; then target="/lib/systemd/system/graphical.target" else target="/lib/systemd/system/runlevel$runlevel.target" fi # And symlink what we found to the new-style default.target /bin/ln -sf "$target" /etc/systemd/system/default.target > /dev/null 2>&1 || : # Enable the services we install by default. /bin/systemctl enable \ getty@.service \ getty.target \ remote-fs.target \ quotaon.service \ quotacheck.service \ systemd-readahead-replay.service \ systemd-readahead-collect.service \ hwclock-load.service > /dev/null 2>&1 || : fi %preun units if [ $1 -eq 0 ] ; then /bin/systemctl disable \ getty@.service \ getty.target \ remote-fs.target \ quotaon.service \ quotacheck.service \ systemd-readahead-replay.service \ systemd-readahead-collect.service \ hwclock-load.service > /dev/null 2>&1 || : /bin/rm -f /etc/systemd/system/default.target > /dev/null 2>&1 || : fi %postun units if [ $1 -ge 1 ] ; then /bin/systemctl daemon-reload > /dev/null 2>&1 || : fi %files %defattr(-,root,root,-) %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.systemd1.conf %config(noreplace) %{_sysconfdir}/systemd/system.conf %dir %{_sysconfdir}/systemd/user %{_sysconfdir}/xdg/systemd %{_sysconfdir}/tmpfiles.d/systemd.conf %{_sysconfdir}/tmpfiles.d/x11.conf %ghost %config(noreplace) %{_sysconfdir}/machine-id /bin/systemd /bin/systemd-notify /bin/systemd-ask-password /bin/systemd-tty-ask-password-agent /bin/systemd-machine-id-setup /lib/systemd/systemd-* /lib/udev/rules.d/*.rules %dir /lib/systemd/system-generators /lib/systemd/system-generators/systemd-cryptsetup-generator /%{_lib}/security/pam_systemd.so /sbin/init /sbin/reboot /sbin/halt /sbin/poweroff /sbin/shutdown /sbin/telinit /sbin/runlevel %{_bindir}/systemd-cgls %{_mandir}/man1/* %exclude %{_mandir}/man1/systemctl.* %{_mandir}/man3/* %{_mandir}/man5/* %{_mandir}/man7/* %{_mandir}/man8/* %{_datadir}/systemd %{_datadir}/dbus-1/services/org.freedesktop.systemd1.service %{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service %{_datadir}/dbus-1/interfaces/org.freedesktop.systemd1.*.xml %{_docdir}/systemd %files units %defattr(-,root,root,-) %dir %{_sysconfdir}/systemd %dir %{_sysconfdir}/systemd/system %dir %{_sysconfdir}/tmpfiles.d %dir %{_sysconfdir}/bash_completion.d %dir /lib/systemd /lib/systemd/system /bin/systemctl /bin/systemd-tmpfiles %{_sysconfdir}/bash_completion.d/systemctl-bash-completion.sh %{_sysconfdir}/rpm/macros.systemd %{_mandir}/man1/systemctl.* %{_datadir}/pkgconfig/systemd.pc %{_docdir}/systemd/LICENSE # Make sure we don't remove runlevel targets from F14 alpha installs, # but make sure we don't create then anew. %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 %files gtk %defattr(-,root,root,-) %{_bindir}/systemadm %{_bindir}/systemd-gnome-ask-password-agent %{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy %{_mandir}/man1/systemadm.* %changelog * Tue Mar 8 2011 Lennart Poettering - 20-1 - New upstream release * Tue Mar 1 2011 Lennart Poettering - 19-1 - New upstream release * Wed Feb 16 2011 Lennart Poettering - 18-1 - New upstream release * Mon Feb 14 2011 Bill Nottingham - 17-6 - bump upstart obsoletes (#676815) * Wed Feb 9 2011 Tom Callaway - 17-5 - add macros.systemd file for %%{_unitdir} * Wed Feb 09 2011 Fedora Release Engineering - 17-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Feb 9 2011 Lennart Poettering - 17-3 - Fix popen() of systemctl, #674916 * Mon Feb 7 2011 Bill Nottingham - 17-2 - add epoch to readahead obsolete * Sat Jan 22 2011 Lennart Poettering - 17-1 - New upstream release * Tue Jan 18 2011 Lennart Poettering - 16-2 - Drop console.conf again, since it is not shipped in pamtmp.conf * Sat Jan 8 2011 Lennart Poettering - 16-1 - New upstream release * Thu Nov 25 2010 Lennart Poettering - 15-1 - New upstream release * Thu Nov 25 2010 Lennart Poettering - 14-1 - Upstream update - Enable hwclock-load by default - Obsolete readahead - Enable /var/run and /var/lock on tmpfs * Fri Nov 19 2010 Lennart Poettering - 13-1 - new upstream release * Wed Nov 17 2010 Bill Nottingham 12-3 - Fix clash * Wed Nov 17 2010 Lennart Poettering - 12-2 - Don't clash with initscripts for now, so that we don't break the builders * Wed Nov 17 2010 Lennart Poettering - 12-1 - New upstream release * Fri Nov 12 2010 Matthias Clasen - 11-2 - Rebuild with newer vala, libnotify * Thu Oct 7 2010 Lennart Poettering - 11-1 - New upstream release * Wed Sep 29 2010 Jesse Keating - 10-6 - Rebuilt for gcc bug 634757 * Thu Sep 23 2010 Bill Nottingham - 10-5 - merge -sysvinit into main package * Mon Sep 20 2010 Bill Nottingham - 10-4 - obsolete upstart-sysvinit too * Fri Sep 17 2010 Bill Nottingham - 10-3 - Drop upstart requires * Tue Sep 14 2010 Lennart Poettering - 10-2 - Enable audit - https://bugzilla.redhat.com/show_bug.cgi?id=633771 * Tue Sep 14 2010 Lennart Poettering - 10-1 - New upstream release - https://bugzilla.redhat.com/show_bug.cgi?id=630401 - https://bugzilla.redhat.com/show_bug.cgi?id=630225 - https://bugzilla.redhat.com/show_bug.cgi?id=626966 - https://bugzilla.redhat.com/show_bug.cgi?id=623456 * Fri Sep 3 2010 Bill Nottingham - 9-3 - move fedora-specific units to initscripts; require newer version thereof * Fri Sep 3 2010 Lennart Poettering - 9-2 - Add missing tarball * Fri Sep 3 2010 Lennart Poettering - 9-1 - New upstream version - Closes 501720, 614619, 621290, 626443, 626477, 627014, 627785, 628913 * Fri Aug 27 2010 Lennart Poettering - 8-3 - Reexecute after installation, take ownership of /var/run/user - https://bugzilla.redhat.com/show_bug.cgi?id=627457 - https://bugzilla.redhat.com/show_bug.cgi?id=627634 * Thu Aug 26 2010 Lennart Poettering - 8-2 - Properly create default.target link * Wed Aug 25 2010 Lennart Poettering - 8-1 - New upstream release * Thu Aug 12 2010 Lennart Poettering - 7-3 - Fix https://bugzilla.redhat.com/show_bug.cgi?id=623561 * Thu Aug 12 2010 Lennart Poettering - 7-2 - Fix https://bugzilla.redhat.com/show_bug.cgi?id=623430 * Tue Aug 10 2010 Lennart Poettering - 7-1 - New upstream release * Fri Aug 6 2010 Lennart Poettering - 6-2 - properly hide output on package installation - pull in coreutils during package installtion * Fri Aug 6 2010 Lennart Poettering - 6-1 - New upstream release - Fixes #621200 * Wed Aug 4 2010 Lennart Poettering - 5-2 - Add tarball * Wed Aug 4 2010 Lennart Poettering - 5-1 - Prepare release 5 * Tue Jul 27 2010 Bill Nottingham - 4-4 - Add 'sysvinit-userspace' provide to -sysvinit package to fix upgrade/install (#618537) * Sat Jul 24 2010 Lennart Poettering - 4-3 - Add libselinux to build dependencies * Sat Jul 24 2010 Lennart Poettering - 4-2 - Use the right tarball * Sat Jul 24 2010 Lennart Poettering - 4-1 - New upstream release, and make default * Tue Jul 13 2010 Lennart Poettering - 3-3 - Used wrong tarball * Tue Jul 13 2010 Lennart Poettering - 3-2 - Own /cgroup jointly with libcgroup, since we don't dpend on it anymore * Tue Jul 13 2010 Lennart Poettering - 3-1 - New upstream release * Fri Jul 9 2010 Lennart Poettering - 2-0 - New upstream release * Wed Jul 7 2010 Lennart Poettering - 1-0 - First upstream release * Tue Jun 29 2010 Lennart Poettering - 0-0.7.20100629git4176e5 - New snapshot - Split off -units package where other packages can depend on without pulling in the whole of systemd * Tue Jun 22 2010 Lennart Poettering - 0-0.6.20100622gita3723b - Add missing libtool dependency. * Tue Jun 22 2010 Lennart Poettering - 0-0.5.20100622gita3723b - Update snapshot * Mon Jun 14 2010 Rahul Sundaram - 0-0.4.20100614git393024 - Pull the latest snapshot that fixes a segfault. Resolves rhbz#603231 * Thu Jun 11 2010 Rahul Sundaram - 0-0.3.20100610git2f198e - More minor fixes as per review * Thu Jun 10 2010 Rahul Sundaram - 0-0.2.20100610git2f198e - Spec improvements from David Hollis * Wed Jun 09 2010 Rahul Sundaram - 0-0.1.20090609git2f198e - Address review comments * Tue Jun 01 2010 Rahul Sundaram - 0-0.0.git2010-06-02 - Initial spec (adopted from Kay Sievers)