]> git.pld-linux.org Git - packages/systemd.git/blame - systemd.spec
- added patch for ploop rules
[packages/systemd.git] / systemd.spec
CommitLineData
d374e721
JR
1# TODO:
2# - remove compat-pld-var-run.tmpfiles and maybe tmpfiles-not-fatal.patch
3# after enough packages provide their own tmpfiles.d configs for
4# /var/run directories
b63d2415
ER
5# - pldize vconsole setup:
6# - http://cgit.freedesktop.org/systemd/systemd/tree/src/vconsole/vconsole-setup.c
1c1cf62f
ER
7# - for systemd-45+
8# - restore var-{run,lock}: http://cgit.freedesktop.org/systemd/systemd/commit/?id=55d029addf7d97b15faacea597a4ff65542aaf0e
9# - WARNING: http://cgit.freedesktop.org/systemd/systemd/commit/?id=623ac9d2fce3170125ead9be20f56bfe68ea125e
d374e721 10#
c3037397 11# Conditional build:
6c89bbd4
ER
12%bcond_without audit # without audit support
13%bcond_without cryptsetup # without cryptsetup support
23107006 14%bcond_without pam # PAM authentication support
dadb67fe 15%bcond_without plymouth # do not install plymouth units
23107006
TP
16%bcond_without selinux # without SELinux support
17%bcond_without tcpd # libwrap (tcp_wrappers) support
9c0b975d 18
c3037397 19Summary: A System and Service Manager
ede8d3e5 20Summary(pl.UTF-8): systemd - zarządca systemu i usług dla Linuksa
21Name: systemd
2be4e142 22Version: 44
aaa3b521 23Release: 14
ede8d3e5 24License: GPL v2+
25Group: Base
440d1d13 26Source0: http://www.freedesktop.org/software/systemd/%{name}-%{version}.tar.xz
2be4e142 27# Source0-md5: 11f44ff74c87850064e4351518bcff17
4f25b6ac 28Source1: %{name}-sysv-convert
b0980573 29Source2: %{name}_booted.c
a3a953ae 30Source3: network.service
a3a953ae 31Source5: compat-pld-var-run.tmpfiles
44410185
JR
32Source10: pld-storage-init-late.service
33Source11: pld-storage-init.service
34Source12: pld-wait-storage.service
35Source13: pld-storage-init.sh
50b8f452
ER
36Source14: pld-clean-tmp.service
37Source15: pld-clean-tmp.sh
7619c097 38Patch0: target-pld.patch
252e1bad 39Patch1: config-pld.patch
8e088cd5 40Patch2: shut-sysv-up.patch
2e1f31c8 41Patch3: pld-sysv-network.patch
d374e721 42Patch4: tmpfiles-not-fatal.patch
2be4e142 43Patch5: CVE-2012-1174.patch
371abfe3 44Patch6: ReleaseSession.patch
86d92a68 45Patch7: control-subcgroup.patch
3be4738a 46Patch8: kmsg-to-syslog.patch
ede8d3e5 47URL: http://www.freedesktop.org/wiki/Software/systemd
5b9bde26 48BuildRequires: acl-devel
6c89bbd4 49%{?with_audit:BuildRequires: audit-libs-devel}
6e34428f
MB
50BuildRequires: autoconf >= 2.63
51BuildRequires: automake >= 1:1.11
e4c66821 52BuildRequires: binutils >= 3:2.22.52.0.1-2
6e34428f 53%{?with_cryptsetup:BuildRequires: cryptsetup-luks-devel}
23107006 54BuildRequires: dbus-devel >= 1.3.2
c3037397 55BuildRequires: docbook-style-xsl
3fc7a1cc 56BuildRequires: gperf
5b9bde26 57BuildRequires: intltool >= 0.40.0
4389e6f9 58BuildRequires: kmod-devel >= 5
b82d0bf2 59BuildRequires: libcap-devel
def6d132 60%{?with_selinux:BuildRequires: libselinux-devel >= 2.1.0}
6c89bbd4
ER
61BuildRequires: libtool >= 2:2.2
62%{?with_tcpd:BuildRequires: libwrap-devel}
6e34428f 63BuildRequires: libxslt-progs
961baf80 64BuildRequires: m4
6c89bbd4 65%{?with_pam:BuildRequires: pam-devel}
23107006 66BuildRequires: pkgconfig >= 0.9.0
4cc1cb1d 67BuildRequires: rpmbuild(macros) >= 1.627
58fd72e9 68BuildRequires: udev-devel >= 1:172
58fd72e9 69BuildRequires: xz-devel
011bccb6 70Requires: %{name}-libs = %{version}-%{release}
c3037397 71Requires: %{name}-units = %{version}-%{release}
58d6217a 72Requires: /etc/os-release
2ff27c26 73Requires: SysVinit-tools
37b8df82 74Requires: agetty
b0980573 75Requires: dbus >= 1.4.16-6
7cb5cfc8 76Requires: filesystem >= 4.0-2
ed5c41d4 77Requires: libutempter
a2018b66 78Requires: rc-scripts >= 0.4.5.3-7
56701781 79Requires: setup >= 2.8.0-2
b0980573 80Requires: udev-core >= 1:175-5
fe6ae5ab 81Requires: udev-libs >= 1:172
e3134fe0 82Requires: virtual(module-tools)
4e5e9c32 83Suggests: %{name}-no-compat-tmpfiles
b0980573 84Suggests: ConsoleKit
2a61be78 85Suggests: fsck >= 2.20
e3134fe0 86Suggests: kmod >= 5
4b15486a 87Suggests: nss_myhostname
c35aa49c 88Suggests: service(klogd)
1cdd35cf 89Suggests: service(syslog)
fda563d5 90Provides: udev-acl
3baeefca
PG
91# systemd takes care of that and causes problems
92Conflicts: binfmt-detector
a6203073 93# sytemd wants pam with pam_systemd.so in system-auth...
3b292a99 94Conflicts: pam < 1:1.1.5-5
a6203073
JR
95# ...and sudo hates it
96Conflicts: sudo < 1:1.7.8p2-4
06d34666
JR
97# for prefdm script
98Conflicts: xinitrc-ng < 1.0
0fedd233
JR
99# systemd scripts use options not present in older versions
100Conflicts: kpartx < 0.4.9-7
101Conflicts: multipath-tools < 0.4.9-7
ede8d3e5 102BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
103
85879912
ER
104%define _libexecdir %{_prefix}/lib
105
ede8d3e5 106%description
1c239f8b 107systemd is a system and service manager for Linux, compatible with
ede8d3e5 108SysV and LSB init scripts. systemd provides aggressive parallelization
109capabilities, uses socket and D-Bus activation for starting services,
110offers on-demand starting of daemons, keeps track of processes using
111Linux cgroups, supports snapshotting and restoring of the system
112state, maintains mount and automount points and implements an
113elaborate transactional dependency-based service control logic. It can
1c239f8b 114work as a drop-in replacement for sysvinit.
ede8d3e5 115
116%description -l pl.UTF-8
117systemd jest zarządcą systemu i usług dla Linuksa, kompatybilny ze
118skryptami SysV i LSB. systemd udostępnia rozbudowane zdolności
119paralelizacji, do uruchamiania usług używa socketów oraz D-Busa,
120oferuje uruchamianie usług na życzenie, monitoruje procesy używając
121linuksowych cgroups, wspomaga zapisywanie (snapshot) i odczytywanie
122(restore) stanu systemu, zarządza (auto)mount pointami oraz
123implementuje starannie opracowaną transakcjonalną, bazującą na
d45dfc3a 124zależnościach logikę kontroli usług. Może pracować jako zastępca dla
ede8d3e5 125sysvinit.
126
c97dacdd
TP
127%package init
128Summary: systemd /sbin/init and LSB/SysV compatibility symlinks
5b9bde26 129Summary(pl.UTF-8): /sbin/init z systemd i dowiązania dla kompatybilności z LSB/SysV
c97dacdd 130Group: Base
d6829efa 131Requires: systemd
c97dacdd
TP
132Provides: readahead = 1:1.5.7-3
133Provides: virtual(init-daemon)
134Obsoletes: SysVinit
135Obsoletes: readahead < 1:1.5.7-3
136Obsoletes: virtual(init-daemon)
4e1559fc 137Conflicts: upstart
c97dacdd
TP
138
139%description init
140Install this package when you are ready to final switch to systemd.
141
5b9bde26
JB
142%description init -l pl.UTF-8
143Ten pakiet należy zainstalować po przygotowaniu się do ostatecznego
144przejścia na systemd.
145
c3037397
ER
146%package units
147Summary: Configuration files, directories and installation tool for systemd
5b9bde26 148Summary(pl.UTF-8): Pliki konfiguracyjne, katalogi i narzędzie instalacyjne dla systemd
c3037397 149Group: Base
c3037397 150Requires(post): coreutils
a8d86f01 151Requires(post): /bin/awk
c3037397
ER
152
153%description units
154Basic configuration files, directories and installation tool for the
155systemd system and service manager.
156
f341cd9b 157This is common config, use %{_sysconfdir}/systemd/system to override.
10ffdcd2 158
5b9bde26
JB
159%description units -l pl.UTF-8
160Podstawowe pliki konfiguracyjne, katalogi i narzędzie instalacyjne dla
161zarządcy systemu i usług systemd.
162
163Ten pakiet zawiera ogólną konfigurację, ustawienia można nadpisać
164poprzez katalog %{_sysconfdir}/systemd/system.
165
e4c66821
JB
166%package plymouth
167Summary: Plymouth support units for systemd
168Summary(pl.UTF-8): Jednostki wspierające Plymouth dla systemd
169Group: Base
170Requires: %{name}-units = %{version}-%{release}
216f25d7 171Requires: plymouth
e4c66821
JB
172
173%description plymouth
174Plymouth (graphical boot) support units for systemd.
175
176%description plymouth -l pl.UTF-8
177Jednostki wspierające Plymouth (graficzny start systemu) dla systemd.
178
4e5e9c32
ER
179%package analyze
180Summary: Tool for processing systemd profiling information
181Group: Base
182Requires: %{name} = %{version}-%{release}
183Requires: python-dbus
184Requires: python-modules
185Requires: python-pycairo
186Conflicts: %{name} < 44-3
187
188%description analyze
189'systemd-analyze blame' lists which systemd unit needed how much time
190to finish initialization at boot. 'systemd-analyze plot' renders an
191SVG visualizing the parallel start of units at boot.
192
011bccb6 193%package libs
5b9bde26
JB
194Summary: Shared systemd libraries
195Summary(pl.UTF-8): Biblioteki współdzielone systemd
011bccb6
BZ
196Group: Libraries
197
198%description libs
5b9bde26
JB
199Shared systemd libraries.
200
201%description libs -l pl.UTF-8
202Biblioteki współdzielone systemd.
011bccb6 203
961baf80
AF
204%package devel
205Summary: Header files for systemd libraries
206Summary(pl.UTF-8): Pliki nagłówkowe bibliotek systemd
207Group: Development/Libraries
011bccb6 208Requires: %{name}-libs = %{version}-%{release}
961baf80
AF
209
210%description devel
211Header files for systemd libraries.
212
213%description devel -l pl.UTF-8
214Pliki nagłówkowe bibliotek systemd.
215
5b9bde26
JB
216%package -n bash-completion-systemd
217Summary: bash-completion for systemd
218Summary(pl.UTF-8): Bashowe dopełnianie składni dla systemd
219Group: Applications/Shells
bbd3dce1 220Requires: %{name} = %{version}
5b9bde26
JB
221Requires: bash-completion
222
223%description -n bash-completion-systemd
224bash-completion for systemd.
225
226%description -n bash-completion-systemd -l pl.UTF-8
227Bashowe dopełnianie składni dla systemd
228
ae4d0acb
JR
229%package no-compat-tmpfiles
230Summary: Force update of packages that provide tmpfiles.d configuration
231Group: Base
bbd3dce1 232Requires: %{name} = %{version}-%{release}
ae4d0acb
JR
233Requires(post): sed > 4.0
234Conflicts: ConsoleKit-dirs < 0.4.5-7
235Conflicts: NetworkManager < 2:0.9.2.0-3
236Conflicts: Zope < 2.11.8-2
237Conflicts: amavisd-new < 1:2.7.0-1
ae4d0acb
JR
238Conflicts: apache-base < 2.2.21-4
239Conflicts: apache-mod_bw < 0.92-3
240Conflicts: apache-mod_fastcgi < 2.4.6-6
b0980573
ŁK
241Conflicts: apache1-base < 1.3.42-5
242Conflicts: apache1-mod_fastcgi < 2.4.6-2
ae4d0acb
JR
243Conflicts: asterisk < 10.0.1-2
244Conflicts: autossh-init < 1.4b-3
245Conflicts: balance < 3.54-2
246Conflicts: bind < 7:9.8.1.P1-4
247Conflicts: bopm < 3.1.3-4
248Conflicts: callweaver < 1.2.1-9
249Conflicts: cassandra-bin < 0.8.9-2
250Conflicts: clamav < 0.97.3-3
251Conflicts: cups < 1:1.5.0-10
252Conflicts: dbus < 1.4.16-4
253Conflicts: dovecot < 1:2.0.16-3
254Conflicts: dspam < 3.9.0-6
255Conflicts: fail2ban < 0.8.4-4
256Conflicts: filesystem < 4.0-3
257Conflicts: gammu-smsd < 1:1.31.0-3
a6203073
JR
258# Break gdm2.20 installs
259#Conflicts: gdm < 2:3.2.1.1-9
ae4d0acb
JR
260Conflicts: greylistd < 0.8.8-2
261Conflicts: inn < 2.4.6-7
262Conflicts: ipsec-tools < 0.8.0-3
263Conflicts: jabber-common < 0-9
264Conflicts: laptop-mode-tools < 1.58-2
265Conflicts: libgpod < 0.8.0-6
266Conflicts: libvirt-utils < 0.9.9-4
267Conflicts: lighttpd < 1.4.30-5
268Conflicts: lirc < 0.9.0-20
269Conflicts: mailman < 5:2.1.14-4
270Conflicts: memcached < 1.4.11-2
271Conflicts: mpd < 0.16.5-4
272Conflicts: mrtg < 2.17.0-3
273Conflicts: munin-common < 1.4.5-5
274Conflicts: nagios-nrpe < 2.13-2
275Conflicts: ndisc6-rdnssd < 1.0.1-3
276Conflicts: nscd < 6:2.14.1-5
277Conflicts: nss_ldapd-nslcd < 0.8.4-2
278Conflicts: openct < 0.6.20-3
279Conflicts: openl2tp < 1.8-3
280Conflicts: openldap-overlay-nssov < 2.4.28-4
281Conflicts: openldap-servers < 2.4.28-4
282Conflicts: openvpn < 2.2.2-2
ae4d0acb
JR
283Conflicts: pam-pam_mount < 2.12-3
284Conflicts: pam-pam_ssh < 1.97-2
285Conflicts: pcsc-lite < 1.8.1-2
286Conflicts: php-dirs < 1.2-3
287Conflicts: policyd < 2.0.10-3
288Conflicts: pound < 2.6-2
289Conflicts: pptp < 1.7.2-3
290Conflicts: proftpd-common < 2:1.3.4a-2
291Conflicts: pulseaudio-server < 1.1-2
292Conflicts: quagga < 0.99.20-3
293Conflicts: radvd < 1.8.5-2
294Conflicts: rc-scripts < 0.4.5.2-3
295Conflicts: red5 < 0.9.0-2
296Conflicts: redis-server < 2.4.2-4
297Conflicts: smokeping < 2.4.2-10
298Conflicts: smtp-gated < 1.4.17-2
299Conflicts: socat < 1.7.2.0-2
300Conflicts: speech-dispatcher < 0.7.1-2
301Conflicts: sphinx < 2.0.3-4
302Conflicts: splashutils < 1.5.4.3-3
303Conflicts: stunnel < 4.50-2
ae4d0acb
JR
304Conflicts: tenshi < 0.12-2
305Conflicts: tor < 0.2.2.35-2
306Conflicts: ucarp < 1.5.2-3
307Conflicts: udisks < 1.0.4-3
308Conflicts: util-vserver < 0.30.216-1.pre3002.3
309Conflicts: vpnc < 0.5.3-2
310Conflicts: web2ldap < 1.1.0rc1-2
311Conflicts: wesnoth-server < 1:1.10-2
312Conflicts: wpa_supplicant < 0.7.3-10
313Conflicts: xl2tpd < 1.3.0-2
314
315%description no-compat-tmpfiles
316Force update of packages that provide tmpfiles.d configuration
317
ede8d3e5 318%prep
319%setup -q
4c5b5ab6 320%patch0 -p1
252e1bad 321%patch1 -p1
a6203073 322%patch2 -p1
942c9075 323%patch3 -p1
d374e721 324%patch4 -p1
2be4e142 325%patch5 -p1
5e027d7a 326%patch6 -p1
86d92a68 327%patch7 -p1
3be4738a 328%patch8 -p1
b77423ae 329cp -p %{SOURCE2} src/systemd_booted.c
ede8d3e5 330
331%build
4c5b5ab6 332%{__aclocal} -I m4
ede8d3e5 333%{__autoconf}
6e34428f 334%{__autoheader}
ede8d3e5 335%{__automake}
9c0b975d 336%configure \
6c89bbd4
ER
337 %{__enable_disable audit} \
338 %{__enable_disable cryptsetup libcryptsetup} \
6f8c4458 339 --disable-gtk \
6c89bbd4 340 %{__enable_disable pam} \
4389e6f9 341 %{__enable_disable plymouth} \
6c89bbd4
ER
342 %{__enable_disable selinux} \
343 %{__enable_disable tcpd tcpwrap} \
344 --disable-silent-rules \
961baf80 345 --disable-static \
5b9bde26 346 --with-distro=pld \
391eea76 347 --with-rootprefix= \
4389e6f9
JR
348 --with-rootlibdir=/%{_lib} \
349 --enable-split-usr
e1d9cc15 350
ede8d3e5 351%{__make}
b77423ae 352./libtool --mode=link --tag=CC %{__cc} %{rpmcppflags} %{rpmcflags} -o systemd_booted %{rpmldflags} src/systemd_booted.c -L. -lsystemd-daemon
ede8d3e5 353
354%install
355rm -rf $RPM_BUILD_ROOT
24f95219 356install -d $RPM_BUILD_ROOT/var/lib/%{name}/coredump
23107006 357
ede8d3e5 358%{__make} install \
359 DESTDIR=$RPM_BUILD_ROOT
360
216f25d7 361./libtool --mode=install install -p -m755 systemd_booted $RPM_BUILD_ROOT/bin/systemd_booted
b77423ae 362
4389e6f9
JR
363# Main binary has been moved, but we don't want to break existing installs
364ln -s ../lib/systemd/systemd $RPM_BUILD_ROOT/bin/systemd
365
1dcb74bb 366# Create SysV compatibility symlinks. systemctl/systemd are smart
2a61be78 367# enough to detect the way they were called
c28b0c1c 368install -d $RPM_BUILD_ROOT/sbin
4389e6f9 369ln -s ../lib/systemd/systemd $RPM_BUILD_ROOT/sbin/init
1dcb74bb 370ln -s ../bin/systemctl $RPM_BUILD_ROOT/sbin/halt
371ln -s ../bin/systemctl $RPM_BUILD_ROOT/sbin/poweroff
23107006
TP
372ln -s ../bin/systemctl $RPM_BUILD_ROOT/sbin/reboot
373ln -s ../bin/systemctl $RPM_BUILD_ROOT/sbin/runlevel
1dcb74bb 374ln -s ../bin/systemctl $RPM_BUILD_ROOT/sbin/shutdown
375ln -s ../bin/systemctl $RPM_BUILD_ROOT/sbin/telinit
1dcb74bb 376
5d32f234 377ln -s ../modules $RPM_BUILD_ROOT%{_sysconfdir}/modules-load.d/modules.conf
44410185
JR
378
379# disable redundant SYSV services
380ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/allowlogin.service
4cc1cb1d 381ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/console.service
44410185
JR
382ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/cpusets.service
383ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/killall.service
384ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/netfs.service
385ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/random.service
5d32f234 386
f1586299 387# add static (non-NetworkManager) networking
216f25d7 388cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/network.service
f1586299 389
5c8fe698 390# install compatibility tmpfiles configs
216f25d7 391cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/tmpfiles.d/compat-pld-var-run.conf
5c8fe698 392
44410185 393# Install and enable storage subsystems support services (RAID, LVM, etc.)
216f25d7
ER
394cp -p %{SOURCE10} $RPM_BUILD_ROOT%{systemdunitdir}/pld-storage-init-late.service
395cp -p %{SOURCE11} $RPM_BUILD_ROOT%{systemdunitdir}/pld-storage-init.service
396cp -p %{SOURCE12} $RPM_BUILD_ROOT%{systemdunitdir}/pld-wait-storage.service
50b8f452 397cp -p %{SOURCE14} $RPM_BUILD_ROOT%{systemdunitdir}/pld-clean-tmp.service
216f25d7 398install -p %{SOURCE13} $RPM_BUILD_ROOT/lib/systemd/pld-storage-init
50b8f452 399install -p %{SOURCE15} $RPM_BUILD_ROOT/lib/systemd/pld-clean-tmp
44410185 400
50b8f452
ER
401ln -s ../pld-storage-init-late.service $RPM_BUILD_ROOT%{systemdunitdir}/local-fs.target.wants
402ln -s ../pld-storage-init.service $RPM_BUILD_ROOT%{systemdunitdir}/local-fs.target.wants
403ln -s ../pld-clean-tmp.service $RPM_BUILD_ROOT%{systemdunitdir}/local-fs.target.wants
c3037397 404
216f25d7
ER
405# handled by rc-local sysv service, no need for generator
406%{__rm} $RPM_BUILD_ROOT/lib/systemd/system-generators/systemd-rc-local-generator
216f25d7 407
2a61be78
TP
408# Make sure these directories are properly owned:
409# - halt,kexec,poweroff,reboot: generic ones used by ConsoleKit-systemd,
410# - syslog _might_ be used by some syslog implementation (none for now),
411# - isn't dbus populated by dbus-systemd only (so to be moved there)?
4cc1cb1d 412install -d $RPM_BUILD_ROOT%{systemdunitdir}/{dbus,halt,kexec,poweroff,reboot,syslog}.target.wants
961baf80
AF
413
414# Create new-style configuration files so that we can ghost-own them
70047b34 415touch $RPM_BUILD_ROOT%{_sysconfdir}/{hostname,locale.conf,machine-id,machine-info,timezone,vconsole.conf}
4bbef33c 416
9d8b5dfe 417# Install SysV conversion tool for systemd
4f25b6ac 418install -p %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}
9d8b5dfe
BZ
419
420install -d $RPM_BUILD_ROOT/var/log
5a65c84e
TP
421:> $RPM_BUILD_ROOT/var/log/btmp
422:> $RPM_BUILD_ROOT/var/log/wtmp
a761f93e 423
5d32f234 424%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/systemadm.1*
5d32f234
TP
425
426%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
a86320a6 427%{__rm} $RPM_BUILD_ROOT/%{_lib}/security/pam_systemd.la
5d32f234
TP
428%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
429
ede8d3e5 430%clean
431rm -rf $RPM_BUILD_ROOT
432
9638c72f 433%post
4bbef33c 434/bin/systemd-machine-id-setup > /dev/null 2>&1 || :
9638c72f 435/bin/systemctl daemon-reexec > /dev/null 2>&1 || :
c3037397 436
961baf80 437%postun
85879912 438if [ $1 -ge 1 ]; then
961baf80 439 /bin/systemctl try-restart systemd-logind.service >/dev/null 2>&1 || :
9638c72f 440fi
441
3edd52a6
TP
442%post libs -p /sbin/ldconfig
443%postun libs -p /sbin/ldconfig
011bccb6 444
961baf80 445%post units
85879912 446if [ $1 -eq 1 ]; then
961baf80
AF
447 # Try to read default runlevel from the old inittab if it exists
448 runlevel=$(/bin/awk -F ':' '$3 == "initdefault" && $1 !~ "^#" { print $2 }' /etc/inittab 2> /dev/null)
449 if [ -z "$runlevel" ] ; then
4cc1cb1d 450 target="%{systemdunitdir}/graphical.target"
961baf80 451 else
4cc1cb1d 452 target="%{systemdunitdir}/runlevel$runlevel.target"
961baf80
AF
453 fi
454
455 # And symlink what we found to the new-style default.target
f341cd9b 456 ln -s "$target" %{_sysconfdir}/systemd/system/default.target >/dev/null 2>&1 || :
cf819365
JR
457
458 # Setup hostname
459 [ -f /etc/sysconfig/network ] && . /etc/sysconfig/network
460 if [ -n "$HOSTNAME" -a "$HOSTNAME" != "pldmachine" ]; then
461 [ -f /etc/hostname ] && mv -f /etc/hostname /etc/hostname.rpmsave
462 echo $HOSTNAME > /etc/hostname
463 chmod 644 /etc/hostname
464 fi
44410185
JR
465
466 # Enable the services we install by default.
467 /bin/systemctl enable \
468 getty@.service \
469 network.service \
470 remote-fs.target \
471 systemd-readahead-replay.service \
472 systemd-readahead-collect.service >/dev/null 2>&1 || :
9638c72f 473fi
c3037397
ER
474
475%preun units
961baf80
AF
476if [ $1 -eq 0 ] ; then
477 /bin/systemctl disable \
478 getty@.service \
f1586299 479 network.service \
961baf80
AF
480 remote-fs.target \
481 systemd-readahead-replay.service \
482 systemd-readahead-collect.service >/dev/null 2>&1 || :
483
f341cd9b 484 %{__rm} -f %{_sysconfdir}/systemd/system/default.target >/dev/null 2>&1 || :
c3037397 485fi
9638c72f 486
961baf80 487%postun units
85879912 488if [ $1 -ge 1 ]; then
9638c72f 489 /bin/systemctl daemon-reload > /dev/null 2>&1 || :
490fi
491
f2a385f3 492%triggerpostun units -- %{name}-units < 43-7
44410185 493# Remove design fialures
44410185
JR
494rm -f %{_sysconfdir}/systemd/system/network.target.wants/ifcfg@*.service >/dev/null 2>&1 || :
495rm -f %{_sysconfdir}/systemd/system/network.target.wants/network-post.service >/dev/null 2>&1 || :
f3877668
JR
496rm -f %{_sysconfdir}/systemd/system/multi-user.target.wants/network-post.service >/dev/null 2>&1 || :
497/bin/systemctl reenable network.service >/dev/null 2>&1 || :
44410185 498
ae4d0acb 499%post no-compat-tmpfiles
a6203073 500%{__sed} -i -e '/^#/!s/^/# /g' %{_sysconfdir}/tmpfiles.d/compat-pld-var-run.conf
ae4d0acb 501
619d874f
ER
502%post plymouth
503%systemd_reload
504
505%postun plymouth
506%systemd_reload
507
ede8d3e5 508%files
509%defattr(644,root,root,755)
1c239f8b 510%doc DISTRO_PORTING README TODO
6e34428f 511/etc/dbus-1/system.d/org.freedesktop.hostname1.conf
961baf80
AF
512/etc/dbus-1/system.d/org.freedesktop.locale1.conf
513/etc/dbus-1/system.d/org.freedesktop.login1.conf
c3037397 514/etc/dbus-1/system.d/org.freedesktop.systemd1.conf
961baf80 515/etc/dbus-1/system.d/org.freedesktop.timedate1.conf
3edd52a6 516%ghost %config(noreplace) %{_sysconfdir}/machine-id
b77423ae
AF
517%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/hostname
518%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/locale.conf
519%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/machine-info
b77423ae
AF
520%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/timezone
521%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vconsole.conf
5d32f234 522%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/systemd/*.conf
2a61be78 523%dir %{_sysconfdir}/systemd/user
44410185
JR
524%dir %{_sysconfdir}/systemd/system/*.target.wants
525%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/systemd/system/*.target.wants/*.service
526%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/systemd/system/*.target.wants/*.target
abd479ee 527/etc/xdg/systemd
1dcb74bb 528%attr(755,root,root) /bin/systemd
529%attr(755,root,root) /bin/systemd-ask-password
c76a8951 530%attr(755,root,root) /bin/systemd-journalctl
961baf80 531%attr(755,root,root) /bin/systemd-loginctl
7a76bc86 532%attr(755,root,root) /bin/systemd-machine-id-setup
1dcb74bb 533%attr(755,root,root) /bin/systemd-notify
534%attr(755,root,root) /bin/systemd-tty-ask-password-agent
d374e721
JR
535%attr(755,root,root) %{_bindir}/systemd-cat
536%attr(755,root,root) %{_bindir}/systemd-cgtop
23107006 537%attr(755,root,root) %{_bindir}/systemd-cgls
57cd0d13
ZU
538%attr(755,root,root) %{_bindir}/systemd-nspawn
539%attr(755,root,root) %{_bindir}/systemd-stdio-bridge
2a61be78 540%attr(755,root,root) %{_bindir}/systemd-sysv-convert
8a78a3e8 541%attr(755,root,root) /lib/systemd/pld-clean-tmp
44410185 542%attr(755,root,root) /lib/systemd/pld-storage-init
abd479ee 543%attr(755,root,root) /lib/systemd/systemd-*
c3037397 544%dir /lib/systemd/system-generators
4389e6f9 545%attr(755,root,root) /lib/systemd/systemd
5d32f234 546%attr(755,root,root) /lib/systemd/system-generators/systemd-*-generator
abd479ee 547%dir /lib/systemd/system-shutdown
1c239f8b 548/lib/udev/rules.d/99-systemd.rules
961baf80
AF
549/lib/udev/rules.d/70-uaccess.rules
550/lib/udev/rules.d/71-seat.rules
551/lib/udev/rules.d/73-seat-late.rules
3edd52a6
TP
552%dir %{_libexecdir}/systemd
553%{_libexecdir}/systemd/user
2a61be78 554%dir %{_libexecdir}/systemd/user-generators
89d58574 555%config(noreplace,missingok) %{_libexecdir}/tmpfiles.d/*.conf
961baf80
AF
556%{_datadir}/dbus-1/interfaces/org.freedesktop.hostname1.xml
557%{_datadir}/dbus-1/interfaces/org.freedesktop.locale1.xml
c3037397 558%{_datadir}/dbus-1/interfaces/org.freedesktop.systemd1.*.xml
961baf80 559%{_datadir}/dbus-1/interfaces/org.freedesktop.timedate1.xml
1c239f8b 560%{_datadir}/dbus-1/services/org.freedesktop.systemd1.service
6e34428f 561%{_datadir}/dbus-1/system-services/org.freedesktop.hostname1.service
961baf80
AF
562%{_datadir}/dbus-1/system-services/org.freedesktop.locale1.service
563%{_datadir}/dbus-1/system-services/org.freedesktop.login1.service
1c239f8b 564%{_datadir}/dbus-1/system-services/org.freedesktop.systemd1.service
961baf80 565%{_datadir}/dbus-1/system-services/org.freedesktop.timedate1.service
6e34428f 566%{_datadir}/polkit-1/actions/org.freedesktop.hostname1.policy
961baf80
AF
567%{_datadir}/polkit-1/actions/org.freedesktop.locale1.policy
568%{_datadir}/polkit-1/actions/org.freedesktop.login1.policy
569%{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy
570%{_datadir}/polkit-1/actions/org.freedesktop.timedate1.policy
571%dir %{_datadir}/systemd
572%{_datadir}/systemd/kbd-model-map
7a76bc86 573%{_mandir}/man1/systemd.1*
2a61be78 574%{_mandir}/man1/systemd-*.1*
6e34428f 575%{_mandir}/man5/binfmt.d.5*
1c239f8b 576%{_mandir}/man5/hostname.5*
577%{_mandir}/man5/locale.conf.5*
7a76bc86 578%{_mandir}/man5/machine-id.5*
6e34428f 579%{_mandir}/man5/machine-info.5*
1c239f8b 580%{_mandir}/man5/modules-load.d.5*
581%{_mandir}/man5/os-release.5*
6e34428f 582%{_mandir}/man5/sysctl.d.5*
89d58574 583%{_mandir}/man5/systemd.*.5*
2be4e142 584%{_mandir}/man5/systemd-journald.conf.5*
961baf80
AF
585%{_mandir}/man5/systemd-logind.conf.5*
586%{_mandir}/man5/timezone.5*
23107006 587%{_mandir}/man5/vconsole.conf.5*
1c239f8b 588%{_mandir}/man7/daemon.7*
589%{_mandir}/man7/sd-daemon.7*
c76a8951 590%{_mandir}/man7/sd-login.7*
1c239f8b 591%{_mandir}/man7/sd-readahead.7*
592%{_mandir}/man7/systemd.special.7*
24f95219
ER
593%dir /var/lib/%{name}
594%dir /var/lib/%{name}/coredump
a761f93e
TP
595%attr(640,root,root) %ghost /var/log/btmp
596%attr(664,root,utmp) %ghost /var/log/wtmp
c3037397 597
6c89bbd4 598%if %{with pam}
a86320a6 599%attr(755,root,root) /%{_lib}/security/pam_systemd.so
6c89bbd4
ER
600%{_mandir}/man8/pam_systemd.8*
601%endif
602
c97dacdd 603%files init
5b9bde26 604%defattr(644,root,root,755)
c97dacdd
TP
605%attr(755,root,root) /sbin/halt
606%attr(755,root,root) /sbin/init
607%attr(755,root,root) /sbin/poweroff
608%attr(755,root,root) /sbin/reboot
609%attr(755,root,root) /sbin/runlevel
610%attr(755,root,root) /sbin/shutdown
611%attr(755,root,root) /sbin/telinit
612%{_mandir}/man1/init.1
613%{_mandir}/man8/halt.8*
614%{_mandir}/man8/poweroff.8
615%{_mandir}/man8/reboot.8
616%{_mandir}/man8/runlevel.8*
617%{_mandir}/man8/shutdown.8*
618%{_mandir}/man8/telinit.8*
619
c3037397
ER
620%files units
621%defattr(644,root,root,755)
abd479ee
MB
622%dir %{_sysconfdir}/binfmt.d
623%dir %{_sysconfdir}/modules-load.d
5d32f234 624%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/modules-load.d/modules.conf
abd479ee 625%dir %{_sysconfdir}/sysctl.d
c3037397
ER
626%dir %{_sysconfdir}/systemd
627%dir %{_sysconfdir}/systemd/system
628%dir %{_sysconfdir}/tmpfiles.d
7cb5cfc8 629%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/tmpfiles.d/*.conf
85879912
ER
630%dir %{_libexecdir}/binfmt.d
631%dir %{_libexecdir}/modules-load.d
632%dir %{_libexecdir}/sysctl.d
3be4738a
JR
633# Don't package the kernel.core_pattern setting until systemd-coredump
634# is a part of an actual systemd release and it's made clear how to
635# get the core dumps out of the journal.
636#%{_libexecdir}/sysctl.d/coredump.conf
c3037397
ER
637%attr(755,root,root) /bin/systemctl
638%attr(755,root,root) /bin/systemd-tmpfiles
b77423ae 639%attr(755,root,root) /bin/systemd_booted
c3037397 640%{_mandir}/man1/systemctl.1*
89d58574 641%{_mandir}/man5/tmpfiles.d.5*
c3037397 642%{_mandir}/man8/systemd-tmpfiles.8*
961baf80 643%{_npkgconfigdir}/systemd.pc
c3037397 644
4cc1cb1d
ER
645%{systemdunitdir}/*.automount
646%{systemdunitdir}/*.mount
647%{systemdunitdir}/*.path
648%{systemdunitdir}/*.service
649%{systemdunitdir}/*.socket
650%{systemdunitdir}/*.target
651%{systemdunitdir}/*.timer
e4c66821
JB
652%if %{with plymouth}
653%exclude %{systemdunitdir}/plymouth*.service
654%exclude %{systemdunitdir}/systemd-ask-password-plymouth.*
655%endif
656%dir %{systemdunitdir}/basic.target.wants
657%dir %{systemdunitdir}/dbus.target.wants
658%dir %{systemdunitdir}/final.target.wants
659%dir %{systemdunitdir}/graphical.target.wants
660%dir %{systemdunitdir}/halt.target.wants
661%dir %{systemdunitdir}/kexec.target.wants
662%dir %{systemdunitdir}/local-fs.target.wants
663%dir %{systemdunitdir}/multi-user.target.wants
664%dir %{systemdunitdir}/poweroff.target.wants
665%dir %{systemdunitdir}/reboot.target.wants
666%dir %{systemdunitdir}/runlevel[12345].target.wants
667%dir %{systemdunitdir}/shutdown.target.wants
668%dir %{systemdunitdir}/sockets.target.wants
669%dir %{systemdunitdir}/sysinit.target.wants
670%dir %{systemdunitdir}/syslog.target.wants
671%config(noreplace,missingok) %{systemdunitdir}/basic.target.wants/*
672%config(noreplace,missingok) %{systemdunitdir}/final.target.wants/*
673%config(noreplace,missingok) %{systemdunitdir}/graphical.target.wants/*
674%config(noreplace,missingok) %{systemdunitdir}/local-fs.target.wants/*
675%config(noreplace,missingok) %{systemdunitdir}/multi-user.target.wants/getty.target
a2018b66 676%config(noreplace,missingok) %{systemdunitdir}/multi-user.target.wants/rc-local.service
e4c66821
JB
677%config(noreplace,missingok) %{systemdunitdir}/multi-user.target.wants/systemd-ask-password-wall.path
678%config(noreplace,missingok) %{systemdunitdir}/multi-user.target.wants/systemd-logind.service
679%config(noreplace,missingok) %{systemdunitdir}/multi-user.target.wants/systemd-user-sessions.service
680%config(noreplace,missingok) %{systemdunitdir}/runlevel[12345].target.wants/*
681%config(noreplace,missingok) %{systemdunitdir}/shutdown.target.wants/*
682%config(noreplace,missingok) %{systemdunitdir}/sockets.target.wants/*
8450fd95 683%{?with_cryptsetup:%config(noreplace,missingok) %{systemdunitdir}/sysinit.target.wants/cryptsetup.target}
e4c66821
JB
684%config(noreplace,missingok) %{systemdunitdir}/sysinit.target.wants/dev-hugepages.mount
685%config(noreplace,missingok) %{systemdunitdir}/sysinit.target.wants/dev-mqueue.mount
686%config(noreplace,missingok) %{systemdunitdir}/sysinit.target.wants/proc-sys-fs-binfmt_misc.automount
687%config(noreplace,missingok) %{systemdunitdir}/sysinit.target.wants/sys-*.mount
688%config(noreplace,missingok) %{systemdunitdir}/sysinit.target.wants/systemd-*
689
690%if %{with plymouth}
691%files plymouth
692%defattr(644,root,root,755)
693%{systemdunitdir}/plymouth-halt.service
694%{systemdunitdir}/plymouth-kexec.service
695%{systemdunitdir}/plymouth-poweroff.service
696%{systemdunitdir}/plymouth-quit-wait.service
697%{systemdunitdir}/plymouth-quit.service
698%{systemdunitdir}/plymouth-read-write.service
699%{systemdunitdir}/plymouth-reboot.service
700%{systemdunitdir}/plymouth-start.service
701%{systemdunitdir}/systemd-ask-password-plymouth.path
702%{systemdunitdir}/systemd-ask-password-plymouth.service
703%config(noreplace,missingok) %{systemdunitdir}/halt.target.wants/plymouth-halt.service
704%config(noreplace,missingok) %{systemdunitdir}/kexec.target.wants/plymouth-kexec.service
705%config(noreplace,missingok) %{systemdunitdir}/multi-user.target.wants/plymouth-quit.service
706%config(noreplace,missingok) %{systemdunitdir}/multi-user.target.wants/plymouth-quit-wait.service
707%config(noreplace,missingok) %{systemdunitdir}/poweroff.target.wants/plymouth-poweroff.service
708%config(noreplace,missingok) %{systemdunitdir}/reboot.target.wants/plymouth-reboot.service
709%config(noreplace,missingok) %{systemdunitdir}/sysinit.target.wants/plymouth-read-write.service
710%config(noreplace,missingok) %{systemdunitdir}/sysinit.target.wants/plymouth-start.service
711%endif
10ffdcd2 712
4e5e9c32
ER
713%files analyze
714%defattr(644,root,root,755)
715%attr(755,root,root) %{_bindir}/systemd-analyze
716
5b9bde26 717%files libs
6c89bbd4 718%defattr(644,root,root,755)
6ba1f779
MB
719%attr(755,root,root) /%{_lib}/libsystemd-daemon.so.*.*.*
720%attr(755,root,root) %ghost /%{_lib}/libsystemd-daemon.so.0
721%attr(755,root,root) /%{_lib}/libsystemd-id128.so.*.*.*
722%attr(755,root,root) %ghost /%{_lib}/libsystemd-id128.so.0
723%attr(755,root,root) /%{_lib}/libsystemd-journal.so.*.*.*
724%attr(755,root,root) %ghost /%{_lib}/libsystemd-journal.so.0
725%attr(755,root,root) /%{_lib}/libsystemd-login.so.*.*.*
726%attr(755,root,root) %ghost /%{_lib}/libsystemd-login.so.0
961baf80
AF
727
728%files devel
729%defattr(644,root,root,755)
89d58574 730%attr(755,root,root) %{_libdir}/libsystemd-daemon.so
c76a8951
BZ
731%attr(755,root,root) %{_libdir}/libsystemd-id128.so
732%attr(755,root,root) %{_libdir}/libsystemd-journal.so
89d58574 733%attr(755,root,root) %{_libdir}/libsystemd-login.so
5b9bde26 734%{_includedir}/%{name}
961baf80 735%{_pkgconfigdir}/libsystemd-daemon.pc
c76a8951
BZ
736%{_pkgconfigdir}/libsystemd-id128.pc
737%{_pkgconfigdir}/libsystemd-journal.pc
961baf80 738%{_pkgconfigdir}/libsystemd-login.pc
2be4e142 739%{_mandir}/man3/sd_booted.3*
c76a8951
BZ
740%{_mandir}/man3/sd_get_seats.3*
741%{_mandir}/man3/sd_get_sessions.3*
742%{_mandir}/man3/sd_get_uids.3*
2be4e142 743%{_mandir}/man3/sd_is_fifo.3*
c76a8951 744%{_mandir}/man3/sd_is_mq.3*
2be4e142
JR
745%{_mandir}/man3/sd_is_socket.3
746%{_mandir}/man3/sd_is_socket_inet.3
747%{_mandir}/man3/sd_is_socket_unix.3
748%{_mandir}/man3/sd_listen_fds.3*
c76a8951
BZ
749%{_mandir}/man3/sd_login_monitor_flush.3*
750%{_mandir}/man3/sd_login_monitor_get_fd.3*
751%{_mandir}/man3/sd_login_monitor_new.3*
752%{_mandir}/man3/sd_login_monitor_unref.3*
2be4e142
JR
753%{_mandir}/man3/sd_notify.3*
754%{_mandir}/man3/sd_notifyf.3
c76a8951
BZ
755%{_mandir}/man3/sd_pid_get_owner_uid.3*
756%{_mandir}/man3/sd_pid_get_session.3*
757%{_mandir}/man3/sd_pid_get_unit.3*
2be4e142 758%{_mandir}/man3/sd_readahead.3*
c76a8951
BZ
759%{_mandir}/man3/sd_seat_can_multi_session.3*
760%{_mandir}/man3/sd_seat_get_active.3*
761%{_mandir}/man3/sd_seat_get_sessions.3*
2be4e142
JR
762%{_mandir}/man3/sd_session_get_class.3*
763%{_mandir}/man3/sd_session_get_display.3*
c76a8951 764%{_mandir}/man3/sd_session_get_seat.3*
2be4e142
JR
765%{_mandir}/man3/sd_session_get_service.3*
766%{_mandir}/man3/sd_session_get_type.3*
c76a8951
BZ
767%{_mandir}/man3/sd_session_get_uid.3*
768%{_mandir}/man3/sd_session_is_active.3*
769%{_mandir}/man3/sd_uid_get_seats.3*
770%{_mandir}/man3/sd_uid_get_sessions.3*
771%{_mandir}/man3/sd_uid_get_state.3*
772%{_mandir}/man3/sd_uid_is_on_seat.3*
5b9bde26
JB
773
774%files -n bash-completion-systemd
775%defattr(644,root,root,755)
391eea76 776/etc/bash_completion.d/systemd-bash-completion.sh
ae4d0acb
JR
777
778%files no-compat-tmpfiles
779%defattr(644,root,root,755)
780# empty package
This page took 0.160676 seconds and 4 git commands to generate.