diff --git a/etc.raw b/etc.raw index 6d98cdd..8eff0a0 100644 --- a/etc.raw +++ b/etc.raw @@ -4,12 +4,12 @@ # to block devices # # The format of this file is: -# raw: +# raw: # # example: # --------- -# raw1:hdb1 +# raw1:sdb1 # -# this means: bind /dev/raw/raw1 to /dev/hdb1 +# this means: bind /dev/raw/raw1 to /dev/sdb1 # # ... diff --git a/python-libmount.changes b/python-libmount.changes index ea48eb4..86c3c6a 100644 --- a/python-libmount.changes +++ b/python-libmount.changes @@ -1,3 +1,47 @@ +------------------------------------------------------------------- +Fri Feb 10 10:40:23 UTC 2017 - fbui@suse.com + +- presets are managed by the branding presets package (bsc#1012850) + + The default activation state is defined by the branding preset + package. + + This also get rid of the only use of the rpm preset macros so we can + kill them. + +------------------------------------------------------------------- +Wed Feb 8 18:16:22 CET 2017 - sbrabec@suse.com + +- Merge SLE12 SP3 changes to make the package compatible with + Tumbleweed, SLE12 SP3 and Leap 42.3. +- Drop patch tests-script-race-on-force-only.patch from SLE12 SP3 + and Leap 42.3. Upstream has a different workaround. + https://github.com/karelzak/util-linux/issues/296 +- INCOMPATIBLE CHANGE for SLE12 SP3 and Leap 42.3: + losetup -L changes its meaning from SLE12 SP1&SP2 specific + --logical-blocksize to the upstream --nooverlap). + --logical-blocksize can be used only with long option. +- Include SLE12 + Leap 42 exclusive feature, implemented by + hare@suse.de: + * losetup: Add support for setting logical blocksizes + (bsc#931634, FATE#319010) + + util-linux-losetup-Add-support-for-setting-logical-blocksize.patch + +------------------------------------------------------------------- +Tue Feb 7 20:07:55 CET 2017 - sbrabec@suse.com + +- Update to version 2.29.1: + * lscpu: add aarch64 specific names + * lubmount: Disable disable ro/rw mtab checks (bsc#1012632) + * More details at: + https://www.kernel.org/pub/linux/utils/util-linux/v2.29/v2.29.1-ReleaseNotes + +------------------------------------------------------------------- +Tue Feb 7 18:31:04 CET 2017 - sbrabec@suse.com + +- Replace raw initscript by a systemd service doing the same thing. + Based on previous work of fcrozat@suse.com (FATE#321122). + ------------------------------------------------------------------- Thu Jan 5 12:34:33 UTC 2017 - sweet_f_a@gmx.de diff --git a/python-libmount.spec b/python-libmount.spec index e21be5f..82bc4f7 100644 --- a/python-libmount.spec +++ b/python-libmount.spec @@ -16,7 +16,11 @@ # +%if 0%{?suse_version} >= 1330 %bcond_without enable_last +%else +%bcond_with enable_last +%endif Name: python-libmount %define _name util-linux @@ -112,7 +116,7 @@ BuildRequires: libmount-devel %endif %endif #END SECOND STAGE DEPENDENCIES -Version: 2.29 +Version: 2.29.1 Release: 0 # util-linux is a base package and uuidd pre-requiring pwdutils pulls # that into the core build cycle. pwdutils also pulls in the whole @@ -123,7 +127,7 @@ Release: 0 Url: https://www.kernel.org/pub/linux/utils/util-linux/ Source: ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.29/%{_name}-%{version}.tar.xz Source1: util-linux-rpmlintrc -Source4: raw.init +Source4: raw.service Source5: etc.raw Source6: etc_filesystems Source7: baselibs.conf @@ -150,7 +154,9 @@ Source51: blkid.conf ## util-linux patches ## # PATCH-EXTEND-UPSTREAM: Let `su' handle /sbin and /usr/sbin in path -Patch4: make-sure-sbin-resp-usr-sbin-are-in-PATH.diff +Patch0: make-sure-sbin-resp-usr-sbin-are-in-PATH.diff +# PATCH-FEATURE-SLE util-linux-losetup-Add-support-for-setting-logical-blocksize.patch bsc931634 FATE319010 hare@suse.de -- Add support for setting logical blocksizes. +Patch1: util-linux-losetup-Add-support-for-setting-logical-blocksize.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build # %if %build_util_linux @@ -159,7 +165,6 @@ Provides: fsck-with-dev-lock = %{version} # bnc#651598: Provides: util-linux(fake+no-canonicalize) PreReq: %install_info_prereq permissions -PreReq: %insserv_prereq %fillup_prereq /bin/sed Recommends: %{name}-lang = %{version} Provides: eject = 2.1.0-166.8 Provides: login = 4.0-33.7 @@ -174,6 +179,8 @@ Conflicts: coreutils < 8.21 Conflicts: sysvinit-tools < 2.88+-87 # File conflicts of completion files with <= Leap 42.1 and <= SLE12 SP1 (fixed by SLE12 Update, boo#977259#c3). Conflicts: bash-completion <= 2.1-13.1 +# The preset is provided by the presets branding package since 0.4 (bsc#1012850) +Conflicts: systemd-presets-branding < 0.4 # bnc#805684: %ifarch s390x Obsoletes: s390-32 @@ -189,6 +196,13 @@ Obsoletes: uuid-runtime < %{version}-%{release} Recommends: adjtimex Recommends: time Recommends: which +# +%if 0%{?suse_version} < 1330 +# Using Conflicts as util-linux-losetup-Add-support-for-setting-logical-blocksize +# now uses bit 5 of lo_flags with meaning LO_FLAGS_BLOCKSIZE bsc#966891 +# +Conflicts: kernel < 4.4 +%endif %else %if %build_python_libmount %else @@ -383,7 +397,11 @@ library. %endif %prep %setup -q -n %{_name}-%{version} -b 40 -%patch4 -p1 +%patch0 -p1 +%if 0%{?suse_version} < 1330 +# logical block size support in loop does not exist in Tumbleweed and upstream kernel yet +%patch1 -p1 +%endif # # setctsid cp -p %{S:22} %{S:23} . @@ -599,7 +617,7 @@ exit "$result" %install %if %build_util_linux -mkdir -p %{buildroot}{%{_sysconfdir}/{init.d,pam.d,default},%{_mandir}/man{1,8},/bin,/sbin,%{_bindir},%{_sbindir},%{_infodir}} +mkdir -p %{buildroot}{%{_sysconfdir}/{pam.d,default},%{_mandir}/man{1,8},/bin,/sbin,%{_bindir},%{_sbindir},%{_infodir}} install -m 644 %{SOURCE51} %{buildroot}%{_sysconfdir}/blkid.conf install -m 644 %{SOURCE8} %{buildroot}%{_sysconfdir}/pam.d/login install -m 644 %{SOURCE9} %{buildroot}%{_sysconfdir}/pam.d/remote @@ -608,7 +626,6 @@ install -m 644 %{SOURCE14} %{buildroot}%{_sysconfdir}/pam.d/runuser-l install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su-l install -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/default/su -mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates pushd ../klogconsole # klogconsole install make install DEST=%{buildroot} @@ -672,8 +689,8 @@ echo -e "#! /bin/bash\n/sbin/blockdev --flushbufs \$1" > %{buildroot}%{_sbindir} chmod 755 %{buildroot}%{_sbindir}/flushb # Install scripts to configure raw devices at boot time install -m 644 $RPM_SOURCE_DIR%{_sysconfdir}.raw %{buildroot}%{_sysconfdir}/raw -install -m 755 $RPM_SOURCE_DIR/raw.init %{buildroot}%{_initddir}/raw -ln -sf ../..%{_sysconfdir}/init.d/raw %{buildroot}%{_sbindir}/rcraw +install -m 644 $RPM_SOURCE_DIR/raw.service %{buildroot}%{_unitdir} +ln -sf service %{buildroot}%{_sbindir}/rcraw # upstream moved getopt examples from datadir to docdir but we keep # the old location because we would need to fix the manpage first mv %{buildroot}%{_docdir}/%{_name}/getopt %{buildroot}%{_datadir}/ @@ -732,14 +749,11 @@ mkdir -p %{buildroot}/bin mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_localstatedir}/lib/libuuid mkdir -p %{buildroot}/run/uuidd -mkdir -p %{buildroot}/usr/lib/systemd/system-preset ln -s %{_bindir}/logger %{buildroot}/bin # clock.txt from uuidd is a ghost file touch %{buildroot}%{_localstatedir}/lib/libuuid/clock.txt ln -sf /sbin/service %{buildroot}/usr/sbin/rcuuidd ln -sf /sbin/service %{buildroot}/usr/sbin/rcfstrim -# Use socket activated uuidd by default. -echo -e 'enable uuidd.socket\nenable uuidd.service' >%{buildroot}/usr/lib/systemd/system-preset/50-uuidd.preset %if !%build_util_linux %make_install %endif @@ -748,8 +762,11 @@ echo -e 'enable uuidd.socket\nenable uuidd.service' >%{buildroot}/usr/lib/system %fdupes -s %{buildroot}%{_prefix} %if %build_util_linux +%pre +%{service_add_pre raw.service} + %post -%{fillup_and_insserv raw} +%{service_add_post raw.service} %set_permissions %{_bindir}/wall %{_bindir}/write %{_bindir}/mount %{_bindir}/umount %set_permissions %{_bindir}/su # Safely migrate PAM files from coreutils to util-linux @@ -775,8 +792,11 @@ if [ -f etc/fstab ]; then sed -i 's:code=:codepage=:' etc/fstab fi +%preun +%{service_del_preun raw.service} + %postun -%{insserv_cleanup} +%{service_del_postun raw.service} %verifyscript %verify_permissions -e %{_bindir}/wall -e %{_bindir}/write -e %{_bindir}/mount -e %{_bindir}/umount @@ -825,7 +845,6 @@ fi /usr/sbin/useradd -r -g uuidd -c "User for uuidd" \ -d /var/run/uuidd uuidd 2>/dev/null || : %{service_add_pre uuidd.socket uuidd.service} -%{?systemd_preset_pre} %post -n uuidd %{service_add_post uuidd.socket uuidd.service} @@ -836,8 +855,6 @@ fi %postun -n uuidd %{service_del_postun uuidd.socket uuidd.service} -%posttrans -p /bin/bash -n uuidd -%{?systemd_preset_posttrans} %endif %if %build_util_linux @@ -860,7 +877,7 @@ fi %doc Documentation/modems-with-agetty.txt %doc Documentation/mount.txt %doc Documentation/pg.txt -%config %attr(744,root,root) %{_sysconfdir}/init.d/raw +%{_unitdir}/raw.service %config(noreplace) %attr(644,root,root) %{_sysconfdir}/raw %config(noreplace) %{_sysconfdir}/filesystems %config(noreplace) %{_sysconfdir}/blkid.conf @@ -1115,6 +1132,8 @@ fi %dir %{_datadir}/getopt %attr (755,root,root) %{_datadir}/getopt/getopt-parse.bash %attr (755,root,root) %{_datadir}/getopt/getopt-parse.tcsh +# These directories should be owned by bash-completion. But we don't want to +# install them on build, so own these two directories: %dir %{_datadir}/bash-completion %dir %{_datadir}/bash-completion/completions %{_datadir}/bash-completion/completions/* @@ -1251,6 +1270,15 @@ fi /bin/logger %{_bindir}/logger %{_bindir}/lslogins +#BEGIN bootstrap_hack +%if 0%{?suse_version} < 1330 +# Build images of some products use util-linux that does not come from this +# spec and does not own bash-completion dir. So we have to own own these two +# directories in util-linux-systemd as well: +%dir %{_datadir}/bash-completion +%dir %{_datadir}/bash-completion/completions +%endif +#END bootstrap_hack %{_datadir}/bash-completion/completions/logger %{_datadir}/bash-completion/completions/lslogins %{_mandir}/man1/logger.1.gz @@ -1270,7 +1298,6 @@ fi %{_sbindir}/rcuuidd %{_unitdir}/uuidd.service %{_unitdir}/uuidd.socket -/usr/lib/systemd/system-preset/50-uuidd.preset %endif %if %build_python_libmount diff --git a/raw.init b/raw.init deleted file mode 100644 index 3b5d849..0000000 --- a/raw.init +++ /dev/null @@ -1,62 +0,0 @@ -#! /bin/sh -# Copyright (c) 1995-2001 SuSE GmbH Nuernberg, Germany. -# -# Author: Dirk Lerner -# -# /etc/init.d/raw -# -# and symbolic its link -# -# /usr/sbin/rcraw -# -### BEGIN INIT INFO -# Provides: raw -# Required-Start: $local_fs $remote_fs -# Required-Stop: $local_fs $remote_fs -# Default-Start: 2 3 5 -# Default-Stop: 0 1 6 -# Short-Description: raw devices -# Description: raw-devices -### END INIT INFO - -. /etc/rc.status - -CONFIG=/etc/raw -RAW_BIN=/sbin/raw -RAW_MODULE=raw -test -x $RAW_BIN || exit 5 - -if [ ! -f $CONFIG ];then - echo "file: $CONFIG not found" - exit 6 -fi - -rc_reset -case "$1" in - start) - /sbin/modprobe $RAW_MODULE && sleep 2 - line=`grep -v ^# < $CONFIG` - - for i in $line;do - rawdev=`echo $i | cut -f1 -d:` - rawbind=`echo $i | cut -f2- -d:` - echo -n "bind /dev/raw/$rawdev to /dev/$rawbind..." - $RAW_BIN /dev/raw/$rawdev /dev/$rawbind > /dev/null 2>&1 - rc_status -v - done - ;; - stop) - echo -n "to unbind the rawdevice please perform a system shutdown" - rc_failed 3 - rc_status -v - ;; - status) - $RAW_BIN -qa 2> /dev/null - rc_status -v - ;; - *) - echo "Usage: $0 {start|stop|status}" - exit 1 - ;; -esac -rc_exit diff --git a/raw.service b/raw.service new file mode 100644 index 0000000..37d53b3 --- /dev/null +++ b/raw.service @@ -0,0 +1,17 @@ +[Unit] +Description=raw devices +After=local-fs.target remote-fs.target + +[Service] +Type=oneshot +ExecStart=/bin/sh -c "\ + /sbin/modprobe raw;\ + /sbin/udevadm settle;\ + for i in `grep -v ^# /etc/raw`; do\ + rawdev=`echo $i | cut -f1 -d:`;\ + rawbind=`echo $i | cut -f2- -d:`;\ + /usr/sbin/raw /dev/raw/$rawdev /dev/$rawbind;\ + done" + +[Install] +WantedBy=multi-user.target diff --git a/util-linux-2.29.1.tar.sign b/util-linux-2.29.1.tar.sign new file mode 100644 index 0000000..ee6ab49 --- /dev/null +++ b/util-linux-2.29.1.tar.sign @@ -0,0 +1,17 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iQIcBAABCAAGBQJYghWjAAoJEOS3HV7sOcKEsRsP/Rhl+vlB9TQmxHF4EhglTJMv +i8x65Eq4WznF+qf9ZMZ4qSrsfS/FqvIccw9MWEywj3lAHBx05jhW5Bx6vEzFijiS +CuzRcx+5UuO6DQHxySIRqxromCRaCNzUnNhZfFVlJo1EAD1TVzuF62otCRHxE6F+ +NMjw9+PAPrYT00L6I3AzIHc7t+EgZX6Cyr2Yb22VQnTIJc8E7XfiA7iXgjdhqsn9 +kKUl4kUDGZULX9cIjRkbaVIR7Z8+DH0LcA7QyvA+Xw3fu4UGVCRHR5EquUWEplQD +1rycHxEjRvOjheZCHdAUlhzHguNm2xVSTtcLjvMieMOM60pNxijLibhKkMmqkjJX +e/CLWFHPLnxpJ+WPRUAA5qVrpRjkUm3Wh5O/TBytICQUPTRw7wG4WPgOtgpq3aSr +aet8iClLZkAw7wNS3O+VTRZuzB+mfbguRR7S2o0UemmEBJ9Y4nkaZN/SyT/aX4t0 +vhvM3tbIgw3sGozEsYMjzO/iQTDRIi284DVnfPS7Y1A2RY5lDkSzKowiL9X1vh61 +5tapPthH4Fmss+sd/mC6W3XiBRvLR32l6gTq1M4kMPVKZ3XPlo2uvNbTiL93nI1q +DDWSzORi+bSsjMGUYU3VDlzqnsrhwxzdCNl6eA+/Y65tRwQNmOPpBVkSOfp+Fqy9 +R6VzZW/Y6fWxPojd34A2 +=OXAT +-----END PGP SIGNATURE----- diff --git a/util-linux-2.29.1.tar.xz b/util-linux-2.29.1.tar.xz new file mode 100644 index 0000000..09ad2cd --- /dev/null +++ b/util-linux-2.29.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ce40600b934ec2fecfa6bfc4efe6982d051ba96c2832b05201347aec582f54f +size 4278756 diff --git a/util-linux-2.29.tar.sign b/util-linux-2.29.tar.sign deleted file mode 100644 index b17a572..0000000 --- a/util-linux-2.29.tar.sign +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2 - -iQIcBAABCAAGBQJYIa+yAAoJEOS3HV7sOcKEkPEQAJ6qcx836hUP93e+q8lH7Anf -6odYlxYWC5Pgb8Qopn1KDMh5c3GAbPrnbSoVRKS3jvc24uZuhlCCwYnJbcmEt/+L -am+/zQyIF9T5ZwTadnGD2bkYXI5N9eS4R5O0N/OdBTgsVr9rjZ318zHg+8YCUZN0 -hCh4e1UlUC8uL7C/WgeLW/+kN+D+/1KJISDerkw+u5FFPZGWcPcYPh7ofi4ZyV/h -OPgvaEHt3/IxsZnuUNtIEVhFBpabjdwLkXm1LQ26XLnkdipBuuadVB8jaSLUz29J -rkNVI0iiH9vq5abE0wDIzQ2Lt4Lv65fQM7dmw/Ek188tZn9MyX8vT+C5Vyu+EFtU -K+1BwMVNqfW5hZHPM2z7izO/ml77wnydEFGy9GZZpLqQAzUGgsQDC3JbiczC7Qfq -bTFGhz32sHp/2gyOqciwhLPzWxD6jOLVG84vC9Obvtm+xQEfvLa71FnHdcLU3uZA -uZHt50WSuusZJtCWDhhLgfV6NV7c+YB1tELfrStlXAHyZT3Ws0pNPv+5Sue81dGt -uYVOOlXd+5qVpcgJRs5ai86yzv65kCeqmDsSAiHMIwPfFYBOeYessiRmWpqJXTt2 -S38j00fHFbNh5qqgDyso6myan4ZNLVIpihZLT2JLJqxEnf4ILZVV7krNW9p09teq -afEkNizqGL/NF2I7ltpe -=5e/s ------END PGP SIGNATURE----- diff --git a/util-linux-2.29.tar.xz b/util-linux-2.29.tar.xz deleted file mode 100644 index 1107cb6..0000000 --- a/util-linux-2.29.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2c59ea67cc7b564104f60532f6e0a95fe17a91acb870ba8fd7e986f273abf9e7 -size 4249020 diff --git a/util-linux-losetup-Add-support-for-setting-logical-blocksize.patch b/util-linux-losetup-Add-support-for-setting-logical-blocksize.patch new file mode 100644 index 0000000..723355d --- /dev/null +++ b/util-linux-losetup-Add-support-for-setting-logical-blocksize.patch @@ -0,0 +1,140 @@ +Index: util-linux-2.29/include/loopdev.h +=================================================================== +--- util-linux-2.29.orig/include/loopdev.h ++++ util-linux-2.29/include/loopdev.h +@@ -41,6 +41,7 @@ enum { + LO_FLAGS_AUTOCLEAR = 4, /* kernel >= 2.6.25 */ + LO_FLAGS_PARTSCAN = 8, /* kernel >= 3.2 */ + LO_FLAGS_DIRECT_IO = 16, /* kernel >= 4.2 */ ++ LO_FLAGS_BLOCKSIZE = 32, /* Tentative */ + }; + + #define LO_NAME_SIZE 64 +@@ -120,7 +121,8 @@ enum { + LOOPDEV_FL_NOIOCTL = (1 << 6), + LOOPDEV_FL_DEVSUBDIR = (1 << 7), + LOOPDEV_FL_CONTROL = (1 << 8), /* system with /dev/loop-control */ +- LOOPDEV_FL_SIZELIMIT = (1 << 9) ++ LOOPDEV_FL_SIZELIMIT = (1 << 9), ++ LOOPDEV_FL_BLOCKSIZE = (1 << 10) + }; + + /* +@@ -173,6 +175,7 @@ int loopcxt_set_offset(struct loopdev_cx + int loopcxt_set_sizelimit(struct loopdev_cxt *lc, uint64_t sizelimit); + int loopcxt_set_flags(struct loopdev_cxt *lc, uint32_t flags); + int loopcxt_set_backing_file(struct loopdev_cxt *lc, const char *filename); ++int loopcxt_set_blocksize(struct loopdev_cxt *lc, uint64_t blocksize); + + extern char *loopcxt_get_backing_file(struct loopdev_cxt *lc); + extern int loopcxt_get_backing_devno(struct loopdev_cxt *lc, dev_t *devno); +Index: util-linux-2.29/lib/loopdev.c +=================================================================== +--- util-linux-2.29.orig/lib/loopdev.c ++++ util-linux-2.29/lib/loopdev.c +@@ -1115,6 +1115,26 @@ int loopcxt_set_backing_file(struct loop + } + + /* ++ * @lc: context ++ * @blocksize: logical blocksize for the device ++ * ++ * The setting is removed by loopcxt_set_device() loopcxt_next()! ++ * ++ * Returns: 0 on success, <0 on error. ++ */ ++int loopcxt_set_blocksize(struct loopdev_cxt *lc, uint64_t blocksize) ++{ ++ if (!lc) ++ return -EINVAL; ++ ++ lc->info.lo_init[0] = blocksize; ++ lc->info.lo_flags |= LO_FLAGS_BLOCKSIZE; ++ ++ DBG(CXT, ul_debugobj(lc, "set blocksize=%llu", (long long unsigned int)lc->info.lo_init[0])); ++ return 0; ++} ++ ++/* + * In kernels prior to v3.9, if the offset or sizelimit options + * are used, the block device's size won't be synced automatically. + * blockdev --getsize64 and filesystems will use the backing +Index: util-linux-2.29/sys-utils/losetup.c +=================================================================== +--- util-linux-2.29.orig/sys-utils/losetup.c ++++ util-linux-2.29/sys-utils/losetup.c +@@ -398,6 +398,7 @@ static void usage(FILE *out) + + fputs(_(" -o, --offset start at offset into file\n"), out); + fputs(_(" --sizelimit device is limited to bytes of the file\n"), out); ++ fputs(_(" -L, --logical-blocksize set the logical block size to \n"), out); + fputs(_(" -P, --partscan create a partitioned loop device\n"), out); + fputs(_(" -r, --read-only set up a read-only loop device\n"), out); + fputs(_(" --direct-io[=] open backing file with O_DIRECT\n"), out); +@@ -447,7 +448,8 @@ static void warn_size(const char *filena + + static int create_loop(struct loopdev_cxt *lc, + int nooverlap, int lo_flags, int flags, +- const char *file, uint64_t offset, uint64_t sizelimit) ++ const char *file, uint64_t offset, uint64_t sizelimit, ++ uint64_t blocksize) + { + int hasdev = loopcxt_has_device(lc); + int rc = 0; +@@ -533,6 +535,8 @@ static int create_loop(struct loopdev_cx + loopcxt_set_offset(lc, offset); + if (flags & LOOPDEV_FL_SIZELIMIT) + loopcxt_set_sizelimit(lc, sizelimit); ++ if (flags & LOOPDEV_FL_BLOCKSIZE) ++ loopcxt_set_blocksize(lc, blocksize); + if (lo_flags) + loopcxt_set_flags(lc, lo_flags); + if ((rc = loopcxt_set_backing_file(lc, file))) { +@@ -561,7 +565,7 @@ int main(int argc, char **argv) + struct loopdev_cxt lc; + int act = 0, flags = 0, no_overlap = 0, c; + char *file = NULL; +- uint64_t offset = 0, sizelimit = 0; ++ uint64_t offset = 0, sizelimit = 0, blocksize = 0; + int res = 0, showdev = 0, lo_flags = 0; + char *outarg = NULL; + int list = 0; +@@ -571,7 +575,8 @@ int main(int argc, char **argv) + OPT_SIZELIMIT = CHAR_MAX + 1, + OPT_SHOW, + OPT_RAW, +- OPT_DIO ++ OPT_DIO, ++ OPT_BLOCKSIZE + }; + static const struct option longopts[] = { + { "all", 0, 0, 'a' }, +@@ -584,6 +589,7 @@ int main(int argc, char **argv) + { "associated", 1, 0, 'j' }, + { "json", 0, 0, 'J' }, + { "list", 0, 0, 'l' }, ++ { "logical-blocksize", 1, 0, 'L' }, + { "noheadings", 0, 0, 'n' }, + { "offset", 1, 0, 'o' }, + { "output", 1, 0, 'O' }, +@@ -657,6 +663,10 @@ int main(int argc, char **argv) + act = A_SHOW; + file = optarg; + break; ++ case OPT_BLOCKSIZE: ++ blocksize = strtosize_or_err(optarg, _("failed to parse logical block size")); ++ flags |= LOOPDEV_FL_BLOCKSIZE; ++ break; + case 'l': + list = 1; + break; +@@ -789,7 +799,8 @@ int main(int argc, char **argv) + + switch (act) { + case A_CREATE: +- res = create_loop(&lc, no_overlap, lo_flags, flags, file, offset, sizelimit); ++ res = create_loop(&lc, no_overlap, lo_flags, flags, file, offset, ++ sizelimit, blocksize); + if (res == 0) { + if (showdev) + printf("%s\n", loopcxt_get_device(&lc)); diff --git a/util-linux-systemd.changes b/util-linux-systemd.changes index ea48eb4..86c3c6a 100644 --- a/util-linux-systemd.changes +++ b/util-linux-systemd.changes @@ -1,3 +1,47 @@ +------------------------------------------------------------------- +Fri Feb 10 10:40:23 UTC 2017 - fbui@suse.com + +- presets are managed by the branding presets package (bsc#1012850) + + The default activation state is defined by the branding preset + package. + + This also get rid of the only use of the rpm preset macros so we can + kill them. + +------------------------------------------------------------------- +Wed Feb 8 18:16:22 CET 2017 - sbrabec@suse.com + +- Merge SLE12 SP3 changes to make the package compatible with + Tumbleweed, SLE12 SP3 and Leap 42.3. +- Drop patch tests-script-race-on-force-only.patch from SLE12 SP3 + and Leap 42.3. Upstream has a different workaround. + https://github.com/karelzak/util-linux/issues/296 +- INCOMPATIBLE CHANGE for SLE12 SP3 and Leap 42.3: + losetup -L changes its meaning from SLE12 SP1&SP2 specific + --logical-blocksize to the upstream --nooverlap). + --logical-blocksize can be used only with long option. +- Include SLE12 + Leap 42 exclusive feature, implemented by + hare@suse.de: + * losetup: Add support for setting logical blocksizes + (bsc#931634, FATE#319010) + + util-linux-losetup-Add-support-for-setting-logical-blocksize.patch + +------------------------------------------------------------------- +Tue Feb 7 20:07:55 CET 2017 - sbrabec@suse.com + +- Update to version 2.29.1: + * lscpu: add aarch64 specific names + * lubmount: Disable disable ro/rw mtab checks (bsc#1012632) + * More details at: + https://www.kernel.org/pub/linux/utils/util-linux/v2.29/v2.29.1-ReleaseNotes + +------------------------------------------------------------------- +Tue Feb 7 18:31:04 CET 2017 - sbrabec@suse.com + +- Replace raw initscript by a systemd service doing the same thing. + Based on previous work of fcrozat@suse.com (FATE#321122). + ------------------------------------------------------------------- Thu Jan 5 12:34:33 UTC 2017 - sweet_f_a@gmx.de diff --git a/util-linux-systemd.spec b/util-linux-systemd.spec index baa5501..583e8a8 100644 --- a/util-linux-systemd.spec +++ b/util-linux-systemd.spec @@ -16,7 +16,11 @@ # +%if 0%{?suse_version} >= 1330 %bcond_without enable_last +%else +%bcond_with enable_last +%endif Name: util-linux-systemd %define _name util-linux @@ -112,7 +116,7 @@ BuildRequires: libmount-devel %endif %endif #END SECOND STAGE DEPENDENCIES -Version: 2.29 +Version: 2.29.1 Release: 0 # util-linux is a base package and uuidd pre-requiring pwdutils pulls # that into the core build cycle. pwdutils also pulls in the whole @@ -123,7 +127,7 @@ Release: 0 Url: https://www.kernel.org/pub/linux/utils/util-linux/ Source: ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.29/%{_name}-%{version}.tar.xz Source1: util-linux-rpmlintrc -Source4: raw.init +Source4: raw.service Source5: etc.raw Source6: etc_filesystems Source7: baselibs.conf @@ -150,7 +154,9 @@ Source51: blkid.conf ## util-linux patches ## # PATCH-EXTEND-UPSTREAM: Let `su' handle /sbin and /usr/sbin in path -Patch4: make-sure-sbin-resp-usr-sbin-are-in-PATH.diff +Patch0: make-sure-sbin-resp-usr-sbin-are-in-PATH.diff +# PATCH-FEATURE-SLE util-linux-losetup-Add-support-for-setting-logical-blocksize.patch bsc931634 FATE319010 hare@suse.de -- Add support for setting logical blocksizes. +Patch1: util-linux-losetup-Add-support-for-setting-logical-blocksize.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build # %if %build_util_linux @@ -159,7 +165,6 @@ Provides: fsck-with-dev-lock = %{version} # bnc#651598: Provides: util-linux(fake+no-canonicalize) PreReq: %install_info_prereq permissions -PreReq: %insserv_prereq %fillup_prereq /bin/sed Recommends: %{name}-lang = %{version} Provides: eject = 2.1.0-166.8 Provides: login = 4.0-33.7 @@ -174,6 +179,8 @@ Conflicts: coreutils < 8.21 Conflicts: sysvinit-tools < 2.88+-87 # File conflicts of completion files with <= Leap 42.1 and <= SLE12 SP1 (fixed by SLE12 Update, boo#977259#c3). Conflicts: bash-completion <= 2.1-13.1 +# The preset is provided by the presets branding package since 0.4 (bsc#1012850) +Conflicts: systemd-presets-branding < 0.4 # bnc#805684: %ifarch s390x Obsoletes: s390-32 @@ -189,6 +196,13 @@ Obsoletes: uuid-runtime < %{version}-%{release} Recommends: adjtimex Recommends: time Recommends: which +# +%if 0%{?suse_version} < 1330 +# Using Conflicts as util-linux-losetup-Add-support-for-setting-logical-blocksize +# now uses bit 5 of lo_flags with meaning LO_FLAGS_BLOCKSIZE bsc#966891 +# +Conflicts: kernel < 4.4 +%endif %else %if %build_python_libmount %else @@ -383,7 +397,11 @@ library. %endif %prep %setup -q -n %{_name}-%{version} -b 40 -%patch4 -p1 +%patch0 -p1 +%if 0%{?suse_version} < 1330 +# logical block size support in loop does not exist in Tumbleweed and upstream kernel yet +%patch1 -p1 +%endif # # setctsid cp -p %{S:22} %{S:23} . @@ -599,7 +617,7 @@ exit "$result" %install %if %build_util_linux -mkdir -p %{buildroot}{%{_sysconfdir}/{init.d,pam.d,default},%{_mandir}/man{1,8},/bin,/sbin,%{_bindir},%{_sbindir},%{_infodir}} +mkdir -p %{buildroot}{%{_sysconfdir}/{pam.d,default},%{_mandir}/man{1,8},/bin,/sbin,%{_bindir},%{_sbindir},%{_infodir}} install -m 644 %{SOURCE51} %{buildroot}%{_sysconfdir}/blkid.conf install -m 644 %{SOURCE8} %{buildroot}%{_sysconfdir}/pam.d/login install -m 644 %{SOURCE9} %{buildroot}%{_sysconfdir}/pam.d/remote @@ -608,7 +626,6 @@ install -m 644 %{SOURCE14} %{buildroot}%{_sysconfdir}/pam.d/runuser-l install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su-l install -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/default/su -mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates pushd ../klogconsole # klogconsole install make install DEST=%{buildroot} @@ -672,8 +689,8 @@ echo -e "#! /bin/bash\n/sbin/blockdev --flushbufs \$1" > %{buildroot}%{_sbindir} chmod 755 %{buildroot}%{_sbindir}/flushb # Install scripts to configure raw devices at boot time install -m 644 $RPM_SOURCE_DIR%{_sysconfdir}.raw %{buildroot}%{_sysconfdir}/raw -install -m 755 $RPM_SOURCE_DIR/raw.init %{buildroot}%{_initddir}/raw -ln -sf ../..%{_sysconfdir}/init.d/raw %{buildroot}%{_sbindir}/rcraw +install -m 644 $RPM_SOURCE_DIR/raw.service %{buildroot}%{_unitdir} +ln -sf service %{buildroot}%{_sbindir}/rcraw # upstream moved getopt examples from datadir to docdir but we keep # the old location because we would need to fix the manpage first mv %{buildroot}%{_docdir}/%{_name}/getopt %{buildroot}%{_datadir}/ @@ -732,14 +749,11 @@ mkdir -p %{buildroot}/bin mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_localstatedir}/lib/libuuid mkdir -p %{buildroot}/run/uuidd -mkdir -p %{buildroot}/usr/lib/systemd/system-preset ln -s %{_bindir}/logger %{buildroot}/bin # clock.txt from uuidd is a ghost file touch %{buildroot}%{_localstatedir}/lib/libuuid/clock.txt ln -sf /sbin/service %{buildroot}/usr/sbin/rcuuidd ln -sf /sbin/service %{buildroot}/usr/sbin/rcfstrim -# Use socket activated uuidd by default. -echo -e 'enable uuidd.socket\nenable uuidd.service' >%{buildroot}/usr/lib/systemd/system-preset/50-uuidd.preset %if !%build_util_linux %make_install %endif @@ -748,8 +762,11 @@ echo -e 'enable uuidd.socket\nenable uuidd.service' >%{buildroot}/usr/lib/system %fdupes -s %{buildroot}%{_prefix} %if %build_util_linux +%pre +%{service_add_pre raw.service} + %post -%{fillup_and_insserv raw} +%{service_add_post raw.service} %set_permissions %{_bindir}/wall %{_bindir}/write %{_bindir}/mount %{_bindir}/umount %set_permissions %{_bindir}/su # Safely migrate PAM files from coreutils to util-linux @@ -775,8 +792,11 @@ if [ -f etc/fstab ]; then sed -i 's:code=:codepage=:' etc/fstab fi +%preun +%{service_del_preun raw.service} + %postun -%{insserv_cleanup} +%{service_del_postun raw.service} %verifyscript %verify_permissions -e %{_bindir}/wall -e %{_bindir}/write -e %{_bindir}/mount -e %{_bindir}/umount @@ -825,7 +845,6 @@ fi /usr/sbin/useradd -r -g uuidd -c "User for uuidd" \ -d /var/run/uuidd uuidd 2>/dev/null || : %{service_add_pre uuidd.socket uuidd.service} -%{?systemd_preset_pre} %post -n uuidd %{service_add_post uuidd.socket uuidd.service} @@ -836,8 +855,6 @@ fi %postun -n uuidd %{service_del_postun uuidd.socket uuidd.service} -%posttrans -p /bin/bash -n uuidd -%{?systemd_preset_posttrans} %endif %if %build_util_linux @@ -860,7 +877,7 @@ fi %doc Documentation/modems-with-agetty.txt %doc Documentation/mount.txt %doc Documentation/pg.txt -%config %attr(744,root,root) %{_sysconfdir}/init.d/raw +%{_unitdir}/raw.service %config(noreplace) %attr(644,root,root) %{_sysconfdir}/raw %config(noreplace) %{_sysconfdir}/filesystems %config(noreplace) %{_sysconfdir}/blkid.conf @@ -1115,6 +1132,8 @@ fi %dir %{_datadir}/getopt %attr (755,root,root) %{_datadir}/getopt/getopt-parse.bash %attr (755,root,root) %{_datadir}/getopt/getopt-parse.tcsh +# These directories should be owned by bash-completion. But we don't want to +# install them on build, so own these two directories: %dir %{_datadir}/bash-completion %dir %{_datadir}/bash-completion/completions %{_datadir}/bash-completion/completions/* @@ -1251,6 +1270,15 @@ fi /bin/logger %{_bindir}/logger %{_bindir}/lslogins +#BEGIN bootstrap_hack +%if 0%{?suse_version} < 1330 +# Build images of some products use util-linux that does not come from this +# spec and does not own bash-completion dir. So we have to own own these two +# directories in util-linux-systemd as well: +%dir %{_datadir}/bash-completion +%dir %{_datadir}/bash-completion/completions +%endif +#END bootstrap_hack %{_datadir}/bash-completion/completions/logger %{_datadir}/bash-completion/completions/lslogins %{_mandir}/man1/logger.1.gz @@ -1270,7 +1298,6 @@ fi %{_sbindir}/rcuuidd %{_unitdir}/uuidd.service %{_unitdir}/uuidd.socket -/usr/lib/systemd/system-preset/50-uuidd.preset %endif %if %build_python_libmount diff --git a/util-linux.changes b/util-linux.changes index ea48eb4..86c3c6a 100644 --- a/util-linux.changes +++ b/util-linux.changes @@ -1,3 +1,47 @@ +------------------------------------------------------------------- +Fri Feb 10 10:40:23 UTC 2017 - fbui@suse.com + +- presets are managed by the branding presets package (bsc#1012850) + + The default activation state is defined by the branding preset + package. + + This also get rid of the only use of the rpm preset macros so we can + kill them. + +------------------------------------------------------------------- +Wed Feb 8 18:16:22 CET 2017 - sbrabec@suse.com + +- Merge SLE12 SP3 changes to make the package compatible with + Tumbleweed, SLE12 SP3 and Leap 42.3. +- Drop patch tests-script-race-on-force-only.patch from SLE12 SP3 + and Leap 42.3. Upstream has a different workaround. + https://github.com/karelzak/util-linux/issues/296 +- INCOMPATIBLE CHANGE for SLE12 SP3 and Leap 42.3: + losetup -L changes its meaning from SLE12 SP1&SP2 specific + --logical-blocksize to the upstream --nooverlap). + --logical-blocksize can be used only with long option. +- Include SLE12 + Leap 42 exclusive feature, implemented by + hare@suse.de: + * losetup: Add support for setting logical blocksizes + (bsc#931634, FATE#319010) + + util-linux-losetup-Add-support-for-setting-logical-blocksize.patch + +------------------------------------------------------------------- +Tue Feb 7 20:07:55 CET 2017 - sbrabec@suse.com + +- Update to version 2.29.1: + * lscpu: add aarch64 specific names + * lubmount: Disable disable ro/rw mtab checks (bsc#1012632) + * More details at: + https://www.kernel.org/pub/linux/utils/util-linux/v2.29/v2.29.1-ReleaseNotes + +------------------------------------------------------------------- +Tue Feb 7 18:31:04 CET 2017 - sbrabec@suse.com + +- Replace raw initscript by a systemd service doing the same thing. + Based on previous work of fcrozat@suse.com (FATE#321122). + ------------------------------------------------------------------- Thu Jan 5 12:34:33 UTC 2017 - sweet_f_a@gmx.de diff --git a/util-linux.spec b/util-linux.spec index 97b4276..2ab2c8f 100644 --- a/util-linux.spec +++ b/util-linux.spec @@ -16,7 +16,11 @@ # +%if 0%{?suse_version} >= 1330 %bcond_without enable_last +%else +%bcond_with enable_last +%endif Name: util-linux %define _name util-linux @@ -112,7 +116,7 @@ BuildRequires: libmount-devel %endif %endif #END SECOND STAGE DEPENDENCIES -Version: 2.29 +Version: 2.29.1 Release: 0 # util-linux is a base package and uuidd pre-requiring pwdutils pulls # that into the core build cycle. pwdutils also pulls in the whole @@ -123,7 +127,7 @@ Release: 0 Url: https://www.kernel.org/pub/linux/utils/util-linux/ Source: ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.29/%{_name}-%{version}.tar.xz Source1: util-linux-rpmlintrc -Source4: raw.init +Source4: raw.service Source5: etc.raw Source6: etc_filesystems Source7: baselibs.conf @@ -150,7 +154,9 @@ Source51: blkid.conf ## util-linux patches ## # PATCH-EXTEND-UPSTREAM: Let `su' handle /sbin and /usr/sbin in path -Patch4: make-sure-sbin-resp-usr-sbin-are-in-PATH.diff +Patch0: make-sure-sbin-resp-usr-sbin-are-in-PATH.diff +# PATCH-FEATURE-SLE util-linux-losetup-Add-support-for-setting-logical-blocksize.patch bsc931634 FATE319010 hare@suse.de -- Add support for setting logical blocksizes. +Patch1: util-linux-losetup-Add-support-for-setting-logical-blocksize.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build # %if %build_util_linux @@ -159,7 +165,6 @@ Provides: fsck-with-dev-lock = %{version} # bnc#651598: Provides: util-linux(fake+no-canonicalize) PreReq: %install_info_prereq permissions -PreReq: %insserv_prereq %fillup_prereq /bin/sed Recommends: %{name}-lang = %{version} Provides: eject = 2.1.0-166.8 Provides: login = 4.0-33.7 @@ -174,6 +179,8 @@ Conflicts: coreutils < 8.21 Conflicts: sysvinit-tools < 2.88+-87 # File conflicts of completion files with <= Leap 42.1 and <= SLE12 SP1 (fixed by SLE12 Update, boo#977259#c3). Conflicts: bash-completion <= 2.1-13.1 +# The preset is provided by the presets branding package since 0.4 (bsc#1012850) +Conflicts: systemd-presets-branding < 0.4 # bnc#805684: %ifarch s390x Obsoletes: s390-32 @@ -189,6 +196,13 @@ Obsoletes: uuid-runtime < %{version}-%{release} Recommends: adjtimex Recommends: time Recommends: which +# +%if 0%{?suse_version} < 1330 +# Using Conflicts as util-linux-losetup-Add-support-for-setting-logical-blocksize +# now uses bit 5 of lo_flags with meaning LO_FLAGS_BLOCKSIZE bsc#966891 +# +Conflicts: kernel < 4.4 +%endif %else %if %build_python_libmount %else @@ -383,7 +397,11 @@ library. %endif %prep %setup -q -n %{_name}-%{version} -b 40 -%patch4 -p1 +%patch0 -p1 +%if 0%{?suse_version} < 1330 +# logical block size support in loop does not exist in Tumbleweed and upstream kernel yet +%patch1 -p1 +%endif # # setctsid cp -p %{S:22} %{S:23} . @@ -599,7 +617,7 @@ exit "$result" %install %if %build_util_linux -mkdir -p %{buildroot}{%{_sysconfdir}/{init.d,pam.d,default},%{_mandir}/man{1,8},/bin,/sbin,%{_bindir},%{_sbindir},%{_infodir}} +mkdir -p %{buildroot}{%{_sysconfdir}/{pam.d,default},%{_mandir}/man{1,8},/bin,/sbin,%{_bindir},%{_sbindir},%{_infodir}} install -m 644 %{SOURCE51} %{buildroot}%{_sysconfdir}/blkid.conf install -m 644 %{SOURCE8} %{buildroot}%{_sysconfdir}/pam.d/login install -m 644 %{SOURCE9} %{buildroot}%{_sysconfdir}/pam.d/remote @@ -608,7 +626,6 @@ install -m 644 %{SOURCE14} %{buildroot}%{_sysconfdir}/pam.d/runuser-l install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su-l install -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/default/su -mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates pushd ../klogconsole # klogconsole install make install DEST=%{buildroot} @@ -672,8 +689,8 @@ echo -e "#! /bin/bash\n/sbin/blockdev --flushbufs \$1" > %{buildroot}%{_sbindir} chmod 755 %{buildroot}%{_sbindir}/flushb # Install scripts to configure raw devices at boot time install -m 644 $RPM_SOURCE_DIR%{_sysconfdir}.raw %{buildroot}%{_sysconfdir}/raw -install -m 755 $RPM_SOURCE_DIR/raw.init %{buildroot}%{_initddir}/raw -ln -sf ../..%{_sysconfdir}/init.d/raw %{buildroot}%{_sbindir}/rcraw +install -m 644 $RPM_SOURCE_DIR/raw.service %{buildroot}%{_unitdir} +ln -sf service %{buildroot}%{_sbindir}/rcraw # upstream moved getopt examples from datadir to docdir but we keep # the old location because we would need to fix the manpage first mv %{buildroot}%{_docdir}/%{_name}/getopt %{buildroot}%{_datadir}/ @@ -732,14 +749,11 @@ mkdir -p %{buildroot}/bin mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_localstatedir}/lib/libuuid mkdir -p %{buildroot}/run/uuidd -mkdir -p %{buildroot}/usr/lib/systemd/system-preset ln -s %{_bindir}/logger %{buildroot}/bin # clock.txt from uuidd is a ghost file touch %{buildroot}%{_localstatedir}/lib/libuuid/clock.txt ln -sf /sbin/service %{buildroot}/usr/sbin/rcuuidd ln -sf /sbin/service %{buildroot}/usr/sbin/rcfstrim -# Use socket activated uuidd by default. -echo -e 'enable uuidd.socket\nenable uuidd.service' >%{buildroot}/usr/lib/systemd/system-preset/50-uuidd.preset %if !%build_util_linux %make_install %endif @@ -748,8 +762,11 @@ echo -e 'enable uuidd.socket\nenable uuidd.service' >%{buildroot}/usr/lib/system %fdupes -s %{buildroot}%{_prefix} %if %build_util_linux +%pre +%{service_add_pre raw.service} + %post -%{fillup_and_insserv raw} +%{service_add_post raw.service} %set_permissions %{_bindir}/wall %{_bindir}/write %{_bindir}/mount %{_bindir}/umount %set_permissions %{_bindir}/su # Safely migrate PAM files from coreutils to util-linux @@ -775,8 +792,11 @@ if [ -f etc/fstab ]; then sed -i 's:code=:codepage=:' etc/fstab fi +%preun +%{service_del_preun raw.service} + %postun -%{insserv_cleanup} +%{service_del_postun raw.service} %verifyscript %verify_permissions -e %{_bindir}/wall -e %{_bindir}/write -e %{_bindir}/mount -e %{_bindir}/umount @@ -825,7 +845,6 @@ fi /usr/sbin/useradd -r -g uuidd -c "User for uuidd" \ -d /var/run/uuidd uuidd 2>/dev/null || : %{service_add_pre uuidd.socket uuidd.service} -%{?systemd_preset_pre} %post -n uuidd %{service_add_post uuidd.socket uuidd.service} @@ -836,8 +855,6 @@ fi %postun -n uuidd %{service_del_postun uuidd.socket uuidd.service} -%posttrans -p /bin/bash -n uuidd -%{?systemd_preset_posttrans} %endif %if %build_util_linux @@ -860,7 +877,7 @@ fi %doc Documentation/modems-with-agetty.txt %doc Documentation/mount.txt %doc Documentation/pg.txt -%config %attr(744,root,root) %{_sysconfdir}/init.d/raw +%{_unitdir}/raw.service %config(noreplace) %attr(644,root,root) %{_sysconfdir}/raw %config(noreplace) %{_sysconfdir}/filesystems %config(noreplace) %{_sysconfdir}/blkid.conf @@ -1115,6 +1132,8 @@ fi %dir %{_datadir}/getopt %attr (755,root,root) %{_datadir}/getopt/getopt-parse.bash %attr (755,root,root) %{_datadir}/getopt/getopt-parse.tcsh +# These directories should be owned by bash-completion. But we don't want to +# install them on build, so own these two directories: %dir %{_datadir}/bash-completion %dir %{_datadir}/bash-completion/completions %{_datadir}/bash-completion/completions/* @@ -1251,6 +1270,15 @@ fi /bin/logger %{_bindir}/logger %{_bindir}/lslogins +#BEGIN bootstrap_hack +%if 0%{?suse_version} < 1330 +# Build images of some products use util-linux that does not come from this +# spec and does not own bash-completion dir. So we have to own own these two +# directories in util-linux-systemd as well: +%dir %{_datadir}/bash-completion +%dir %{_datadir}/bash-completion/completions +%endif +#END bootstrap_hack %{_datadir}/bash-completion/completions/logger %{_datadir}/bash-completion/completions/lslogins %{_mandir}/man1/logger.1.gz @@ -1270,7 +1298,6 @@ fi %{_sbindir}/rcuuidd %{_unitdir}/uuidd.service %{_unitdir}/uuidd.socket -/usr/lib/systemd/system-preset/50-uuidd.preset %endif %if %build_python_libmount