Hello community, here is the log from the commit of package systemd for openSUSE:Factory checked in at 2017-06-20 09:33:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/systemd (Old) and /work/SRC/openSUSE:Factory/.systemd.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd" Tue Jun 20 09:33:30 2017 rev:255 rq:504040 version:233 Changes: -------- --- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes 2017-05-17 10:45:40.356104287 +0200 +++ /work/SRC/openSUSE:Factory/.systemd.new/systemd-mini.changes 2017-06-20 09:33:37.457349207 +0200 @@ -1,0 +2,65 @@ +Fri Jun 16 09:14:43 UTC 2017 - [email protected] + +- Make sure "lock" group is created + + On SUSE distros, /run/lock must be owned by "lock" group (see + boo#733523). + + This group was previously created by another package but since a + recent changes it doesn't seem to be true anymore or at least this + package isn't pulled in anymore when building the rescue system. + + For now make systemd creates the group by adding + "Requires: group(post)". + + I'm currently not sure why we don't use sysusers.d stuff for that + purpose and if the "lock" group on /run/lock is still + mandatory. This should be revisited later. + +------------------------------------------------------------------- +Wed Jun 7 08:17:54 UTC 2017 - [email protected] + +- Make sure dracut (if installed) will embed the new compat rule (bsc#982303) + + The new compat rule must be embedded in the initramfs so make sure + that the installed dracut supports it. + +------------------------------------------------------------------- +Wed May 24 11:23:10 UTC 2017 - [email protected] + +- Upgrade to v233 (commit 330b55d5e28d17f361062dba66426e46fb7d7857) + + - package new systemd-umount binary + - package new environment generator stuff + - drop /dev/root symlink support + - /etc/pam.d/systemd-user is not patched anymore but we ship a + dedicated file for SUSE now. + - manage compat symlink generation in a dedicated branch (bsc#1040153) + +------------------------------------------------------------------- +Wed May 17 15:57:19 UTC 2017 - [email protected] + +- Fix systemd-sysv-convert when a package starts shipping service units (bsc#982303) + + The database might be missing when upgrading a package which was + shipping no sysv init scripts nor unit files (at the time --save was + called) but the new version start shipping unit files. + +------------------------------------------------------------------- +Wed May 17 13:14:40 UTC 2017 - [email protected] + +- Fix indentation in systemd-sysv-convert + + While at it, strip trailing whitespaces. + + No functional changes. + +------------------------------------------------------------------- +Thu May 11 08:47:48 UTC 2017 - [email protected] + +- Disable group shadow support (bsc#1029516) + + The new configure option will be imported during the next tarball + update. + +------------------------------------------------------------------- systemd.changes: same change Old: ---- systemd-232.tar.xz New: ---- systemd-233.tar.xz systemd-user ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ systemd-mini.spec ++++++ --- /var/tmp/diff_new_pack.3iUAO7/_old 2017-06-20 09:33:42.016705990 +0200 +++ /var/tmp/diff_new_pack.3iUAO7/_new 2017-06-20 09:33:42.020705425 +0200 @@ -49,7 +49,7 @@ Name: systemd-mini Url: http://www.freedesktop.org/wiki/Software/systemd -Version: 232 +Version: 233 Release: 0 Summary: A System and Session Manager License: LGPL-2.1+ @@ -121,6 +121,7 @@ Requires: sysvinit-tools Requires: udev = %{version}-%{release} Requires: util-linux >= 2.27.1 +Requires: group(lock) Recommends: %{name}-bash-completion Requires(post): coreutils Requires(post): findutils @@ -142,6 +143,7 @@ Obsoletes: suspend <= 1.0 Source0: systemd-%{version}.tar.xz Source1: %{name}-rpmlintrc +Source2: systemd-user Source3: systemd-sysv-convert Source6: baselibs.conf Source7: libgcrypt.m4 @@ -237,6 +239,7 @@ Conflicts: aaa_base < 11.5 Conflicts: filesystem < 11.5 Conflicts: mkinitrd < 2.7.0 +Conflicts: dracut < 044.1 Conflicts: util-linux < 2.16 Conflicts: ConsoleKit < 0.4.1 Requires: filesystem @@ -433,6 +436,7 @@ --disable-lto \ --disable-tests \ --without-kill-user-processes \ + --with-default-hierarchy=hybrid \ --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 \ @@ -441,6 +445,7 @@ --disable-adm-group \ --disable-wheel-group \ --disable-ldconfig \ + --disable-gshadow \ %if %{without networkd} --disable-networkd \ %endif @@ -497,6 +502,10 @@ rm -rf %{buildroot}/etc/systemd/system/*.target.wants rm -f %{buildroot}/etc/systemd/system/default.target +# Overwrite /etc/pam.d/systemd-user shipped by upstream with one +# customized for openSUSE distros. +install -m0644 %{S:2} %{buildroot}%{_sysconfdir}/pam.d/ + # 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. @@ -756,6 +765,14 @@ ln -s /usr/lib/udev /lib/udev fi +# New installations uses the last compat symlink generation number +# (currently at 2), which basically disables all compat symlinks. On +# old systems, the file doesn't exist. This is equivalent to +# generation #1, which enables the creation of all compat symlinks. +if [ $1 -eq 1 ]; then + echo "COMPAT_SYMLINK_GENERATION=2">/usr/lib/udev/compat-symlink-generation +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 ? @@ -869,6 +886,7 @@ %{_bindir}/systemd-path %{_bindir}/systemd-sysusers %{_bindir}/systemd-mount +%{_bindir}/systemd-umount %{_bindir}/systemd-notify %{_bindir}/systemd-run %{_bindir}/journalctl @@ -921,7 +939,7 @@ %{_prefix}/lib/systemd/user/*.service %{_prefix}/lib/systemd/systemd-* %{_prefix}/lib/systemd/systemd -%{_prefix}/lib/systemd/libsystemd-shared-%{version}.so +%{_prefix}/lib/systemd/libsystemd-shared-*.so %{_prefix}/lib/systemd/resolv.conf %{_prefix}/lib/systemd/fix-machines-subvol-for-rollbacks.sh %dir %{_prefix}/lib/systemd/catalog @@ -931,6 +949,7 @@ %{_prefix}/lib/systemd/user-preset %{_prefix}/lib/systemd/system-generators %{_prefix}/lib/systemd/user-generators +%{_prefix}/lib/systemd/user-environment-generators %dir %{_prefix}/lib/systemd/ntp-units.d/ %dir %{_prefix}/lib/systemd/system-shutdown/ %dir %{_prefix}/lib/systemd/system-sleep/ @@ -961,6 +980,8 @@ %{_libexecdir}/tmpfiles.d/ %exclude %{_libexecdir}/tmpfiles.d/systemd-remote.conf +%{_libexecdir}/environment.d/ + %dir %{_libexecdir}/binfmt.d %dir %{_sysconfdir}/binfmt.d @@ -1076,6 +1097,9 @@ %if %{with importd} %{_datadir}/polkit-1/actions/org.freedesktop.import1.policy %endif +%if %{with networkd} +%{_datadir}/polkit-1/rules.d/systemd-networkd.rules +%endif %if ! 0%{?bootstrap} %{_mandir}/man1/[a-rt-z]*ctl.1* @@ -1090,6 +1114,7 @@ %{_mandir}/man8/systemd-h[aioy]* %{_mandir}/man8/systemd-journald* %{_mandir}/man8/systemd-u[ps]* +%{_mandir}/man8/30-systemd-environment-d-generator.* %endif %{_docdir}/systemd @@ -1157,7 +1182,7 @@ %{_prefix}/lib/udev/scsi_id %{_prefix}/lib/udev/v4l_id %{_prefix}/lib/udev/remount-tmpfs -%{_prefix}/lib/udev/rootsymlink-generator +%ghost %{_prefix}/lib/udev/compat-symlink-generation %dir %{_prefix}/lib/udev/rules.d/ %exclude %{_prefix}/lib/udev/rules.d/70-uaccess.rules %exclude %{_prefix}/lib/udev/rules.d/71-seat.rules ++++++ systemd.spec ++++++ --- /var/tmp/diff_new_pack.3iUAO7/_old 2017-06-20 09:33:42.072698090 +0200 +++ /var/tmp/diff_new_pack.3iUAO7/_new 2017-06-20 09:33:42.072698090 +0200 @@ -47,7 +47,7 @@ Name: systemd Url: http://www.freedesktop.org/wiki/Software/systemd -Version: 232 +Version: 233 Release: 0 Summary: A System and Session Manager License: LGPL-2.1+ @@ -119,6 +119,7 @@ Requires: sysvinit-tools Requires: udev = %{version}-%{release} Requires: util-linux >= 2.27.1 +Requires: group(lock) Recommends: %{name}-bash-completion Requires(post): coreutils Requires(post): findutils @@ -140,6 +141,7 @@ Obsoletes: suspend <= 1.0 Source0: systemd-%{version}.tar.xz Source1: %{name}-rpmlintrc +Source2: systemd-user Source3: systemd-sysv-convert Source6: baselibs.conf Source7: libgcrypt.m4 @@ -235,6 +237,7 @@ Conflicts: aaa_base < 11.5 Conflicts: filesystem < 11.5 Conflicts: mkinitrd < 2.7.0 +Conflicts: dracut < 044.1 Conflicts: util-linux < 2.16 Conflicts: ConsoleKit < 0.4.1 Requires: filesystem @@ -431,6 +434,7 @@ --disable-lto \ --disable-tests \ --without-kill-user-processes \ + --with-default-hierarchy=hybrid \ --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 \ @@ -439,6 +443,7 @@ --disable-adm-group \ --disable-wheel-group \ --disable-ldconfig \ + --disable-gshadow \ %if %{without networkd} --disable-networkd \ %endif @@ -495,6 +500,10 @@ rm -rf %{buildroot}/etc/systemd/system/*.target.wants rm -f %{buildroot}/etc/systemd/system/default.target +# Overwrite /etc/pam.d/systemd-user shipped by upstream with one +# customized for openSUSE distros. +install -m0644 %{S:2} %{buildroot}%{_sysconfdir}/pam.d/ + # 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. @@ -754,6 +763,14 @@ ln -s /usr/lib/udev /lib/udev fi +# New installations uses the last compat symlink generation number +# (currently at 2), which basically disables all compat symlinks. On +# old systems, the file doesn't exist. This is equivalent to +# generation #1, which enables the creation of all compat symlinks. +if [ $1 -eq 1 ]; then + echo "COMPAT_SYMLINK_GENERATION=2">/usr/lib/udev/compat-symlink-generation +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 ? @@ -867,6 +884,7 @@ %{_bindir}/systemd-path %{_bindir}/systemd-sysusers %{_bindir}/systemd-mount +%{_bindir}/systemd-umount %{_bindir}/systemd-notify %{_bindir}/systemd-run %{_bindir}/journalctl @@ -919,7 +937,7 @@ %{_prefix}/lib/systemd/user/*.service %{_prefix}/lib/systemd/systemd-* %{_prefix}/lib/systemd/systemd -%{_prefix}/lib/systemd/libsystemd-shared-%{version}.so +%{_prefix}/lib/systemd/libsystemd-shared-*.so %{_prefix}/lib/systemd/resolv.conf %{_prefix}/lib/systemd/fix-machines-subvol-for-rollbacks.sh %dir %{_prefix}/lib/systemd/catalog @@ -929,6 +947,7 @@ %{_prefix}/lib/systemd/user-preset %{_prefix}/lib/systemd/system-generators %{_prefix}/lib/systemd/user-generators +%{_prefix}/lib/systemd/user-environment-generators %dir %{_prefix}/lib/systemd/ntp-units.d/ %dir %{_prefix}/lib/systemd/system-shutdown/ %dir %{_prefix}/lib/systemd/system-sleep/ @@ -959,6 +978,8 @@ %{_libexecdir}/tmpfiles.d/ %exclude %{_libexecdir}/tmpfiles.d/systemd-remote.conf +%{_libexecdir}/environment.d/ + %dir %{_libexecdir}/binfmt.d %dir %{_sysconfdir}/binfmt.d @@ -1074,6 +1095,9 @@ %if %{with importd} %{_datadir}/polkit-1/actions/org.freedesktop.import1.policy %endif +%if %{with networkd} +%{_datadir}/polkit-1/rules.d/systemd-networkd.rules +%endif %if ! 0%{?bootstrap} %{_mandir}/man1/[a-rt-z]*ctl.1* @@ -1088,6 +1112,7 @@ %{_mandir}/man8/systemd-h[aioy]* %{_mandir}/man8/systemd-journald* %{_mandir}/man8/systemd-u[ps]* +%{_mandir}/man8/30-systemd-environment-d-generator.* %endif %{_docdir}/systemd @@ -1155,7 +1180,7 @@ %{_prefix}/lib/udev/scsi_id %{_prefix}/lib/udev/v4l_id %{_prefix}/lib/udev/remount-tmpfs -%{_prefix}/lib/udev/rootsymlink-generator +%ghost %{_prefix}/lib/udev/compat-symlink-generation %dir %{_prefix}/lib/udev/rules.d/ %exclude %{_prefix}/lib/udev/rules.d/70-uaccess.rules %exclude %{_prefix}/lib/udev/rules.d/71-seat.rules ++++++ systemd-232.tar.xz -> systemd-233.tar.xz ++++++ ++++ 107394 lines of diff (skipped) ++++++ systemd-sysv-convert ++++++ --- /var/tmp/diff_new_pack.3iUAO7/_old 2017-06-20 09:33:46.136124836 +0200 +++ /var/tmp/diff_new_pack.3iUAO7/_new 2017-06-20 09:33:46.136124836 +0200 @@ -9,15 +9,15 @@ declare -A results_priority usage() { -cat << EOF + cat << EOF usage: systemd-sysv-convert [-h] [--save] [--show] [--apply] SERVICE [SERVICE ...] EOF } help() { -usage -cat << EOF + usage + cat << EOF Save and Restore SysV Service Runlevel Information positional arguments: @@ -33,45 +33,48 @@ } find_service() { -local service -local runlevel -declare -i priority -service=$1 -runlevel=$2 -priority=-1 -for l in $(ls /etc/rc.d/rc$runlevel.d/) ; do - initscript=$(basename $l) - if [ ${initscript:0:1} != "S" -o ${initscript:3} != "$service" ]; then - continue - fi - if [ ${initscript:1:2} -ge 0 -a ${initscript:1:2} -le 99 -a ${initscript:1:2} -ge $priority ]; then - if [ ${initscript:1:1} == 0 ]; then - priority=${initscript:2:1} - else - priority=${initscript:1:2} + local service + local runlevel + declare -i priority + + service=$1 + runlevel=$2 + priority=-1 + + for l in $(ls /etc/rc.d/rc$runlevel.d/) ; do + initscript=$(basename $l) + if [ ${initscript:0:1} != "S" -o ${initscript:3} != "$service" ]; then + continue + fi + if [ ${initscript:1:2} -ge 0 -a ${initscript:1:2} -le 99 -a ${initscript:1:2} -ge $priority ]; then + if [ ${initscript:1:1} == 0 ]; then + priority=${initscript:2:1} + else + priority=${initscript:1:2} + fi fi + done + if [ $priority -ge 0 ]; then + return $priority fi -done -if [ $priority -ge 0 ]; then - return $priority -else return 255 -fi } lookup_database() { -local services -local service -local service_file -local runlevel -local priority -local -i k -declare -a parsed -services=$@ -k=0 -results_runlevel=() -results_priority=() -while read line ; do + local services + local service + local service_file + local runlevel + local priority + local -i k + declare -a parsed + + services=$@ + k=0 + results_runlevel=() + results_priority=() + + while read line ; do k+=1 parsed=($line) service=${parsed[0]} @@ -85,7 +88,7 @@ echo "Priority out of bounds in database line $k. Ignoring" >/dev/stderr continue fi - + declare -i found found=0 for s in $services ; do @@ -99,12 +102,12 @@ fi results_runlevel[$service]+=" $runlevel" results_priority[$service]+=" $priority" -done < /var/lib/systemd/sysv-convert/database + done < /var/lib/systemd/sysv-convert/database } declare -i fail=0 -case "$1" in - -h|--help) +case "$1" in + -h|--help) help exit 0 ;; @@ -112,17 +115,16 @@ shift for service in $@ ; do if [ ! -r "/etc/init.d/$service" ]; then - echo "SysV service $service does not exist" >/dev/stderr - let fail++ + echo "SysV service $service does not exist, skipping" continue fi for runlevel in 2 3 4 5; do find_service $service $runlevel priority=$? if [ $priority -lt 255 ]; then - echo "$service $runlevel $priority" + echo "$service $runlevel $priority" >>/var/lib/systemd/sysv-convert/database fi - done >>/var/lib/systemd/sysv-convert/database + done done ;; --show) @@ -153,23 +155,37 @@ exit 1 fi done - lookup_database $services - for service in $services; do - [ -f "/lib/systemd/system/$service.service" ] && service_file="/lib/systemd/system/$service.service" - [ -f "/usr/lib/systemd/system/$service.service" ] && service_file="/usr/lib/systemd/system/$service.service" - # If $service is not present in the database, - # then it simply means that the sysv init - # service was not enabled at all. - for runlevel in ${results_runlevel[$service]}; do - echo ln -sf $service_file /etc/systemd/system/runlevel$runlevel.target.wants/$service.service >/dev/stderr - mkdir -p "/etc/systemd/system/runlevel$runlevel.target.wants" - /bin/ln -sf $service_file /etc/systemd/system/runlevel$runlevel.target.wants/$service.service + # + # The database might no have been created by a previous --save + # call. This can happen when: + # + # - we're upgrading a package which initially didn't + # have any unit file nor sysv init script and now + # start shipping one or more unit files (bsc#982303). + # + # - the sysv init service wasn't enabled at all before + # being migrated to a native unit file (bsc#982211). + # + if [ -e /var/lib/systemd/sysv-convert/database ]; then + lookup_database $services + for service in $services; do + [ -f "/lib/systemd/system/$service.service" ] && service_file="/lib/systemd/system/$service.service" + [ -f "/usr/lib/systemd/system/$service.service" ] && service_file="/usr/lib/systemd/system/$service.service" + + # If $service is not present in the database, + # then it simply means that the sysv init + # service was not enabled at all. + for runlevel in ${results_runlevel[$service]}; do + echo ln -sf $service_file /etc/systemd/system/runlevel$runlevel.target.wants/$service.service >/dev/stderr + mkdir -p "/etc/systemd/system/runlevel$runlevel.target.wants" + /bin/ln -sf $service_file /etc/systemd/system/runlevel$runlevel.target.wants/$service.service + done done - - done + fi ;; - *) usage + *) + usage let fail=2 ;; esac ++++++ systemd-user ++++++ # This file is part of systemd. # # Used by systemd --user instances. account include common-account session required pam_selinux.so close session required pam_selinux.so nottys open session include common-session
