]> git.pld-linux.org Git - packages/systemd.git/blobdiff - systemd.spec
devel requires -units due .pc file
[packages/systemd.git] / systemd.spec
index f26609ab7735cdcd58dcda4a35a54654f5aff3bb..4f0c8be2442d59c690680d5729cb06aa8369d250 100644 (file)
@@ -8,22 +8,27 @@
 #   - /dev/urandom remains missing, not created with start_udev anymore
 #
 # Conditional build:
-%bcond_without audit           # without audit support
-%bcond_without cryptsetup      # without cryptsetup support
+%bcond_without audit           # audit support
+%bcond_without consoled        # systemd-consoled (embedded terminal)
+%bcond_without cryptsetup      # cryptsetup support
 %bcond_without microhttpd      # use microhttpd for network journal access
 %bcond_without pam             # PAM authentication support
 %bcond_without qrencode        # QRencode support
-%bcond_without selinux         # without SELinux support
-%bcond_with    efi             # EFI boot support [missing files in 220]
+%bcond_without selinux         # SELinux support
+%bcond_without efi             # EFI boot support
 %bcond_without python3         # Python 3.x support
 %bcond_with    tests           # "make check" (requires systemd already installed)
 
+%ifnarch %{ix86} %{x8664} aarch64
+# x32 disabled - maybe it's possible to build x64 EFI, but it requires some hacking (add -m64 to EFI gcc command line?)
+%undefine      with_efi
+%endif
 Summary:       A System and Service Manager
 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:       221
-Release:       0.2
+Release:       5
 Epoch:         1
 License:       GPL v2+ (udev), LGPL v2.1+ (the rest)
 Group:         Base
@@ -63,10 +68,11 @@ Patch5:             udevadm-in-sbin.patch
 Patch6:                net-rename-revert.patch
 Patch7:                nss-in-rootlib.patch
 Patch8:                proc-hidepid.patch
-Patch9:                systemd-configfs.patch
+Patch9:                %{name}-configfs.patch
 Patch10:       pld-boot_efi_mount.patch
 Patch11:       optional-tmp-on-tmpfs.patch
 Patch12:       uids_gids.patch
+Patch13:       sysctl.patch
 URL:           http://www.freedesktop.org/wiki/Software/systemd
 BuildRequires: acl-devel
 BuildRequires: attr-devel
@@ -80,7 +86,6 @@ BuildRequires:        docbook-dtd45-xml
 BuildRequires: docbook-style-xsl
 BuildRequires: elfutils-devel
 BuildRequires: gettext-tools
-BuildRequires: glib2-devel >= 1:2.22.0
 BuildRequires: glibc-misc
 %{?with_efi:BuildRequires:     gnu-efi}
 BuildRequires: gnutls-devel >= 3.1.4
@@ -91,6 +96,8 @@ BuildRequires:        kmod-devel >= 14
 BuildRequires: libapparmor-devel
 BuildRequires: libblkid-devel >= 2.20
 BuildRequires: libcap-devel
+%{?with_consoled:BuildRequires:        libdrm-devel >= 2.4}
+%{?with_consoled:BuildRequires:        libevdev-devel >= 1.2}
 BuildRequires: libgcrypt-devel >= 1.4.5
 %{?with_microhttpd:BuildRequires:      libmicrohttpd-devel >= 0.9.33}
 BuildRequires: libmount-devel
@@ -115,7 +122,9 @@ BuildRequires:      rpm-pythonprov
 BuildRequires: rpmbuild(macros) >= 1.628
 BuildRequires: sed >= 4.0
 %{?with_tests:BuildRequires:   systemd}
+%{?with_consoled:BuildRequires:        unifont-source}
 BuildRequires: usbutils >= 0.82
+%{?with_consoled:BuildRequires:        xorg-lib-libxkbcommon-devel >= 0.5}
 BuildRequires: xz-devel
 BuildRequires: zlib-devel
 Requires:      %{name}-libs = %{epoch}:%{version}-%{release}
@@ -142,24 +151,26 @@ Requires: setup >= 2.8.0-2
 Requires:      udev-core = %{epoch}:%{version}-%{release}
 Requires:      udev-libs = %{epoch}:%{version}-%{release}
 Requires:      uname(release) >= 3.7
-Suggests:      ConsoleKit
 Suggests:      fsck >= 2.25.0
 Suggests:      service(klogd)
 Suggests:      service(syslog)
 Provides:      group(systemd-bus-proxy)
-Provides:      group(systemd-network)
-Provides:      group(systemd-resolve)
-Provides:      group(systemd-timesync)
 Provides:      group(systemd-journal)
 Provides:      group(systemd-journal-remote)
 Provides:      group(systemd-journal-upload)
+Provides:      group(systemd-network)
+Provides:      group(systemd-resolve)
+Provides:      group(systemd-timesync)
+Provides:      udev-acl = %{epoch}:%{version}-%{release}
 Provides:      user(systemd-bus-proxy)
+Provides:      user(systemd-journal-remote)
+Provides:      user(systemd-journal-upload)
 Provides:      user(systemd-network)
 Provides:      user(systemd-resolve)
 Provides:      user(systemd-timesync)
-Provides:      user(systemd-journal-remote)
-Provides:      user(systemd-journal-upload)
-Provides:      udev-acl = %{epoch}:%{version}-%{release}
+# kde4 still can't live without ConsoleKit
+#Obsoletes:    ConsoleKit
+#Obsoletes:    ConsoleKit-x11
 Obsoletes:     systemd-no-compat-tmpfiles
 Obsoletes:     udev-systemd
 # sytemd wants pam with pam_systemd.so in system-auth...
@@ -293,6 +304,8 @@ Conflicts:  rc-scripts < 0.4.5.5-2
 Conflicts:     upstart
 # systemd takes care of that and causes problems
 Conflicts:     binfmt-detector
+# for /lib/systemd/systemd-sysv-install
+Conflicts:     chkconfig < 2:1.5-1
 
 %description init
 Install this package when you are ready to final switch to systemd.
@@ -321,6 +334,18 @@ zarządcy systemu i usług systemd.
 Ten pakiet zawiera ogólną konfigurację, ustawienia można nadpisać
 poprzez katalog %{_sysconfdir}/systemd/system.
 
+%package consoled
+Summary:       Terminal support for systemd
+Summary(pl.UTF-8):     Obsługa terminala dla systemd
+Group:         Base
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+
+%description consoled
+Terminal support for systemd.
+
+%description consoled -l pl.UTF-8
+Obsługa terminala dla systemd.
+
 %package journal-gateway
 Summary:       Gateway for serving journal events over the network using HTTP
 Summary(pl.UTF-8):     Bramka do serwowania zdarzeń dziennika po sieci poprzez HTTP
@@ -358,8 +383,8 @@ and configures network devices as they appear, as well as creating
 virtual network devices.
 
 %description networkd -l pl.UTF-8
-systemd-networkd to usługa systemowa zarządzająca siecią. Wykrywa
-konfiguruje interfejsy sieciowe gdy się pojawiają, a także tworzy
+systemd-networkd to usługa systemowa zarządzająca siecią. Wykrywa i
+konfiguruje interfejsy sieciowe gdy się pojawiają, a także tworzy
 wirtualne urządzenia sieciowe.
 
 %package resolved
@@ -447,6 +472,7 @@ Summary:    Header files for systemd libraries
 Summary(pl.UTF-8):     Pliki nagłówkowe bibliotek systemd
 Group:         Development/Libraries
 Requires:      %{name}-libs = %{epoch}:%{version}-%{release}
+Requires:      %{name}-units = %{epoch}:%{version}-%{release}
 Obsoletes:     systemd-static
 
 %description devel
@@ -636,6 +662,7 @@ Uzupełnianie parametrów w zsh dla poleceń udev.
 %patch10 -p1
 %patch11 -p1
 %patch12 -p1
+%patch13 -p1
 cp -p %{SOURCE2} src/systemd_booted.c
 
 %build
@@ -645,7 +672,7 @@ cp -p %{SOURCE2} src/systemd_booted.c
 %{__autoheader}
 %{__automake}
 
-for PYTHON in "%{__python}" %{?with_python3:"%{__python3}"} ; do
+for PYTHON in %{__python} %{?with_python3:%{__python3}}; do
 
 %configure \
        QUOTAON=/sbin/quotaon \
@@ -656,6 +683,9 @@ for PYTHON in "%{__python}" %{?with_python3:"%{__python3}"} ; do
        KEXEC=/sbin/kexec \
        PYTHON="$PYTHON" \
        PYTHON_BINARY="$PYTHON" \
+%if "%{?configure_cache}" == "1"
+       --cache-file=%{?configure_cache_file}%{!?configure_cache_file:configure}-$(basename $PYTHON).cache \
+%endif
        %{?debug:--enable-debug} \
        %{__enable_disable audit} \
        %{__enable_disable cryptsetup libcryptsetup} \
@@ -666,16 +696,17 @@ for PYTHON in "%{__python}" %{?with_python3:"%{__python3}"} ; do
        %{__enable_disable qrencode} \
        --disable-silent-rules \
        --enable-compat-libs \
-       --enable-split-usr \
        --enable-lz4 \
+       --enable-split-usr \
+       %{?with_consoled:--enable-terminal} \
        --with-kbd-loadkeys=/usr/bin/loadkeys \
        --with-kbd-setfont=/bin/setfont \
-       --with-sysvinit-path=/etc/rc.d/init.d \
-       --with-sysvrcnd-path=/etc/rc.d \
        --with-rc-local-script-path-start=/etc/rc.d/rc.local \
        --with-rc-local-script-path-stop=/sbin/halt.local \
        --with-rootprefix="" \
-       --with-rootlibdir=/%{_lib}
+       --with-rootlibdir=/%{_lib} \
+       --with-sysvinit-path=/etc/rc.d/init.d \
+       --with-sysvrcnd-path=/etc/rc.d
 
 %{__make} clean-python
 
@@ -692,12 +723,14 @@ done
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/var/lib/{%{name}/coredump,machines} \
+install -d $RPM_BUILD_ROOT/var/lib/{%{name}/{catalog,coredump},machines} \
        $RPM_BUILD_ROOT{%{_sysconfdir}/{modprobe.d,systemd/system-preset},%{_sbindir}}
 
 %{__make} -j1 install \
        DESTDIR=$RPM_BUILD_ROOT
 
+touch $RPM_BUILD_ROOT/var/lib/%{name}/random-seed
+
 ./libtool --mode=install install -p -m755 systemd_booted $RPM_BUILD_ROOT/bin/systemd_booted
 
 # compatibility symlinks to udevd binary
@@ -708,7 +741,7 @@ ln -s /lib/udev/udevd $RPM_BUILD_ROOT%{_sbindir}/udevd
 # compat symlinks for "/ merged into /usr" programs
 mv $RPM_BUILD_ROOT/{,s}bin/udevadm
 ln -s %{_sbindir}/udevadm $RPM_BUILD_ROOT/bin
-ln -s /lib/udev $RPM_BUILD_ROOT/usr/lib/
+ln -s /lib/udev $RPM_BUILD_ROOT%{_prefix}/lib
 
 # install custom udev rules from pld package
 cp -a %{SOURCE101} $RPM_BUILD_ROOT%{_sysconfdir}/udev/rules.d/40-alsa-restore.rules
@@ -810,7 +843,7 @@ install -d $RPM_BUILD_ROOT%{systemdunitdir}/{basic,dbus,halt,initrd,kexec,powero
 install -d $RPM_BUILD_ROOT%{_libexecdir}/systemd/system-{shutdown,sleep}
 
 # Create new-style configuration files so that we can ghost-own them
-touch $RPM_BUILD_ROOT%{_sysconfdir}/{hostname,locale.conf,machine-id,machine-info,timezone,vconsole.conf}
+touch $RPM_BUILD_ROOT%{_sysconfdir}/{hostname,locale.conf,machine-id,machine-info,vconsole.conf}
 
 # Install SysV conversion tool for systemd
 install -p %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}
@@ -819,18 +852,18 @@ install -p %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}
 install -d $RPM_BUILD_ROOT/lib/systemd/pld-helpers.d
 
 # to be enabled only when the packages are installed
-%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/*.target.wants/systemd-networkd.service
-%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/*.target.wants/systemd-networkd.socket
-%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/*.target.wants/systemd-resolved.service
+%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/*.target.wants/systemd-networkd.service \
+       $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/*.target.wants/systemd-networkd.socket \
+       $RPM_BUILD_ROOT%{_sysconfdir}/systemd/system/*.target.wants/systemd-resolved.service
 
 install -d $RPM_BUILD_ROOT/var/log
 :> $RPM_BUILD_ROOT/var/log/btmp
 :> $RPM_BUILD_ROOT/var/log/wtmp
 
 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
-%{__rm} $RPM_BUILD_ROOT/%{_lib}/security/pam_systemd.la
-%{__rm} $RPM_BUILD_ROOT/%{_lib}/libnss_myhostname.la
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
+%{__rm} $RPM_BUILD_ROOT/%{_lib}/security/pam_systemd.la \
+       $RPM_BUILD_ROOT/%{_lib}/libnss_myhostname.la \
+       $RPM_BUILD_ROOT%{_libdir}/*.la
 
 %if %{with python3}
 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/systemd/*.la
@@ -838,7 +871,7 @@ install -d $RPM_BUILD_ROOT/var/log
 # install Python2 files, binaries built and saved earlier
 install -d $RPM_BUILD_ROOT%{py_sitedir}/systemd
 cp -a $RPM_BUILD_ROOT%{py3_sitedir}/systemd/*.py $RPM_BUILD_ROOT%{py_sitedir}/systemd
-install .libs/python/*.so $RPM_BUILD_ROOT%{py_sitedir}/systemd
+install -p .libs/python/*.so $RPM_BUILD_ROOT%{py_sitedir}/systemd
 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
 %else
@@ -1071,12 +1104,11 @@ fi
 /etc/dbus-1/system.d/org.freedesktop.machine1.conf
 /etc/dbus-1/system.d/org.freedesktop.systemd1.conf
 /etc/dbus-1/system.d/org.freedesktop.timedate1.conf
-%{_sysconfdir}/X11/xinit/xinitrc.d/50-systemd-user.sh
-%ghost %config(noreplace) %{_sysconfdir}/machine-id
+%attr(755,root,root) %{_sysconfdir}/X11/xinit/xinitrc.d/50-systemd-user.sh
+%attr(444,root,root) %ghost %config(noreplace) %{_sysconfdir}/machine-id
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/hostname
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/locale.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/machine-info
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/timezone
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vconsole.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/systemd/bootchart.conf
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/systemd/coredump.conf
@@ -1095,8 +1127,8 @@ fi
 %dir %{_sysconfdir}/systemd/system/sockets.target.wants
 %dir %{_sysconfdir}/systemd/system/sysinit.target.wants
 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/systemd/system/getty.target.wants/getty@tty1.service
-%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/systemd/system/sysinit.target.wants/systemd-timesyncd.service
 %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/systemd/system/multi-user.target.wants/remote-fs.target
+%config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/systemd/system/sysinit.target.wants/systemd-timesyncd.service
 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/systemd-user
 /etc/xdg/systemd
 %attr(755,root,root) /bin/journalctl
@@ -1196,6 +1228,22 @@ fi
 %dir %{_libexecdir}/kernel/install.d
 %{_libexecdir}/kernel/install.d/50-depmod.install
 %{_libexecdir}/kernel/install.d/90-loaderentry.install
+%if %{with efi}
+%dir %{_libexecdir}/systemd/boot
+%dir %{_libexecdir}/systemd/boot/efi
+%ifarch %{ix86}
+%{_libexecdir}/systemd/boot/efi/linuxia32.efi.stub
+%{_libexecdir}/systemd/boot/efi/systemd-bootia32.efi
+%endif
+%ifarch %{x8664} x32
+%{_libexecdir}/systemd/boot/efi/linuxx64.efi.stub
+%{_libexecdir}/systemd/boot/efi/systemd-bootx64.efi
+%endif
+%ifarch aarch64
+%{_libexecdir}/systemd/boot/efi/linuxaa64.efi.stub
+%{_libexecdir}/systemd/boot/efi/systemd-bootaa64.efi
+%endif
+%endif
 %dir %{_libexecdir}/systemd/catalog
 %{_libexecdir}/systemd/catalog/systemd.catalog
 %lang(be) %{_libexecdir}/systemd/catalog/systemd.be.catalog
@@ -1371,10 +1419,12 @@ fi
 %{_mandir}/man8/systemd-update-utmp.8*
 %{_mandir}/man8/systemd-user-sessions.8*
 %{_mandir}/man8/systemd-vconsole-setup.8*
-%dir /var/lib/machines
+%attr(700,root,root) %dir /var/lib/machines
 %dir /var/lib/%{name}
 %dir /var/lib/%{name}/coredump
-%attr(640,root,root) %ghost /var/log/btmp
+%dir /var/lib/%{name}/catalog
+%attr(640,root,root) %ghost /var/lib/%{name}/random-seed
+%attr(600,root,utmp) %ghost /var/log/btmp
 %attr(664,root,utmp) %ghost /var/log/wtmp
 %attr(2755,root,systemd-journal) %dir /var/log/journal
 
@@ -1722,9 +1772,9 @@ fi
 %{_mandir}/man8/systemd-ask-password-wall.service.8*
 %{_mandir}/man8/systemd-backlight@.service.8*
 %{_mandir}/man8/systemd-binfmt.service.8*
-%{_mandir}/man8/systemd-bus-proxyd.8.gz
+%{_mandir}/man8/systemd-bus-proxyd.8*
 %{_mandir}/man8/systemd-bus-proxyd.socket.8
-%{_mandir}/man8/systemd-bus-proxyd@.service.8.gz
+%{_mandir}/man8/systemd-bus-proxyd@.service.8*
 %{?with_cryptsetup:%{_mandir}/man8/systemd-cryptsetup.8*}
 %{?with_cryptsetup:%{_mandir}/man8/systemd-cryptsetup@.service.8*}
 %{_mandir}/man8/systemd-fsck-root.service.8*
@@ -1762,6 +1812,16 @@ fi
 %{_mandir}/man8/systemd-user-sessions.service.8*
 %{_mandir}/man8/systemd-vconsole-setup.service.8*
 
+%if %{with consoled}
+%files consoled
+%defattr(644,root,root,755)
+%attr(755,root,root) /lib/systemd/systemd-consoled
+%{_libexecdir}/systemd/user/systemd-consoled.service
+%dir %{_libexecdir}/systemd/user/default.target.wants
+%{_libexecdir}/systemd/user/default.target.wants/systemd-consoled.service
+%{_datadir}/systemd/unifont-glyph-array.bin
+%endif
+
 %if %{with microhttpd}
 %files journal-gateway
 %defattr(644,root,root,755)
@@ -1928,7 +1988,7 @@ fi
 %files -n udev-core
 %defattr(644,root,root,755)
 
-/usr/lib/udev
+%{_prefix}/lib/udev
 
 %attr(755,root,root) /lib/udev/collect
 
This page took 0.038702 seconds and 4 git commands to generate.