diff --git a/util-linux-2.38.1-harlink-test.patch b/util-linux-2.38.1-harlink-test.patch new file mode 100644 index 0000000000000000000000000000000000000000..29b252399a76e56df05b5748022fac1823538651 --- /dev/null +++ b/util-linux-2.38.1-harlink-test.patch @@ -0,0 +1,80 @@ +From 1b5fc3fe13947baab133bd426f3377e2eb5ccc90 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Wed, 8 Jun 2022 11:50:04 +0200 +Subject: [PATCH] tests: (hardlink) remove runtime depend output + +The Method: field depends on kernel crypto support, otherwise hardlink +falls back to memcpy(). + +Fixes: https://github.com/util-linux/util-linux/issues/1710 +Signed-off-by: Karel Zak +--- + .../expected/hardlink/options-maximum-size-8191 | 2 +- + .../expected/hardlink/options-maximum-size-8192 | 2 +- + tests/ts/hardlink/options | 16 ++++++++++++---- + 3 files changed, 14 insertions(+), 6 deletions(-) + +diff --git a/tests/expected/hardlink/options-maximum-size-8191 b/tests/expected/hardlink/options-maximum-size-8191 +index 30fe1acad4..d57c92ae94 100644 +--- a/tests/expected/hardlink/options-maximum-size-8191 ++++ b/tests/expected/hardlink/options-maximum-size-8191 +@@ -1,6 +1,6 @@ + Number of test files: 26 + Mode: real +-Method: sha256 ++Method: [Redacted] + Files: 26 + Linked: 0 files + Compared: 0 xattrs +diff --git a/tests/expected/hardlink/options-maximum-size-8192 b/tests/expected/hardlink/options-maximum-size-8192 +index 723811e9ee..c571adf52d 100644 +--- a/tests/expected/hardlink/options-maximum-size-8192 ++++ b/tests/expected/hardlink/options-maximum-size-8192 +@@ -1,6 +1,6 @@ + Number of test files: 26 + Mode: real +-Method: sha256 ++Method: [Redacted] + Files: 26 + Linked: 18 files + Compared: 0 xattrs +diff --git a/tests/ts/hardlink/options b/tests/ts/hardlink/options +index fc1a0d6525..2a1c919a28 100755 +--- a/tests/ts/hardlink/options ++++ b/tests/ts/hardlink/options +@@ -40,6 +40,14 @@ show_srcdir() + find "$SRCDIR" -type f -printf "%P\t%n\t%s\t%Ts\t%m\n" | sort + } + ++summary_clean() ++{ ++ sed -i \ ++ -e 's/^Duration:.*/Duration: [Redacted]/' \ ++ -e 's/^Method:.*/Method: [Redacted]/' \ ++ $TS_OUTPUT ++} ++ + create_srcdir + + ts_init_subtest "orig" # just list original dir +@@ -80,16 +88,16 @@ ts_finalize_subtest + ts_init_subtest "maximum-size-8191" + create_srcdir + echo "Number of test files: $(find "$SRCDIR" -type f | wc -l)" >> $TS_OUTPUT +-$TS_CMD_HARDLINK --maximum-size 8191 "$SRCDIR" | \ +- sed 's/^Duration:.*/Duration: [Redacted]/' >> $TS_OUTPUT 2>> $TS_ERRLOG ++$TS_CMD_HARDLINK --maximum-size 8191 "$SRCDIR" >> $TS_OUTPUT 2>> $TS_ERRLOG ++summary_clean + show_srcdir >> $TS_OUTPUT 2>> $TS_ERRLOG + ts_finalize_subtest + + ts_init_subtest "maximum-size-8192" + create_srcdir + echo "Number of test files: $(find "$SRCDIR" -type f | wc -l)" >> $TS_OUTPUT +-$TS_CMD_HARDLINK --maximum-size 8192 "$SRCDIR" | \ +- sed 's/^Duration:.*/Duration: [Redacted]/' >> $TS_OUTPUT 2>> $TS_ERRLOG ++$TS_CMD_HARDLINK --maximum-size 8192 "$SRCDIR" >> $TS_OUTPUT 2>> $TS_ERRLOG ++summary_clean + show_srcdir >> $TS_OUTPUT 2>> $TS_ERRLOG + ts_finalize_subtest + diff --git a/util-linux-2.38-rc4.tar.xz b/util-linux-2.38.1.tar.xz similarity index 48% rename from util-linux-2.38-rc4.tar.xz rename to util-linux-2.38.1.tar.xz index 6cd2f079c7249465d2f95144c1aeccb1ee97c0df..e99a8156eebf5538d69205a3ce720e730ce144dd 100644 Binary files a/util-linux-2.38-rc4.tar.xz and b/util-linux-2.38.1.tar.xz differ diff --git a/util-linux-pamd-chsh b/util-linux-chsh-chfn.pamd similarity index 100% rename from util-linux-pamd-chsh rename to util-linux-chsh-chfn.pamd diff --git a/util-linux-pamd-login b/util-linux-login.pamd similarity index 100% rename from util-linux-pamd-login rename to util-linux-login.pamd diff --git a/util-linux-pamd-remote b/util-linux-remote.pamd similarity index 100% rename from util-linux-pamd-remote rename to util-linux-remote.pamd diff --git a/util-linux-pamd-runuser-l b/util-linux-runuser-l.pamd similarity index 100% rename from util-linux-pamd-runuser-l rename to util-linux-runuser-l.pamd diff --git a/util-linux-pamd-runuser b/util-linux-runuser.pamd similarity index 100% rename from util-linux-pamd-runuser rename to util-linux-runuser.pamd diff --git a/util-linux-pamd-su-l b/util-linux-su-l.pamd similarity index 100% rename from util-linux-pamd-su-l rename to util-linux-su-l.pamd diff --git a/util-linux-pamd-su b/util-linux-su.pamd similarity index 100% rename from util-linux-pamd-su rename to util-linux-su.pamd diff --git a/util-linux.spec b/util-linux.spec index 893cf4f416b2691405f3fa1d1043792100a98549..d0341f4f770350d78f911a99f1dd120b67428ea4 100644 --- a/util-linux.spec +++ b/util-linux.spec @@ -1,24 +1,27 @@ -%define anolis_release 2 -%global upstream_version 2.38-rc4 +%define anolis_release 1 +%global upstream_version 2.38.1 %global major_version v2.38 %global compldir %{_datadir}/bash-completion/completions/ Name: util-linux -Version: 2.38~rc4 +Version: 2.38.1 Release: %{anolis_release}%{?dist} Summary: Collection of basic system utilities License: GPLv2 and GPLv2+ and LGPLv2+ and BSD with advertising and Public Domain URL: https://en.wikipedia.org/wiki/Util-linux Source0: https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/%{major_version}/util-linux-%{upstream_version}.tar.xz -Source1: util-linux-pamd-chsh -Source2: util-linux-pamd-login -Source3: util-linux-pamd-remote -Source4: util-linux-pamd-runuser -Source5: util-linux-pamd-runuser-l -Source6: util-linux-pamd-su -Source7: util-linux-pamd-su-l -Source8: adjtime +Source1: util-linux-login.pamd +Source2: util-linux-remote.pamd +Source3: util-linux-chsh-chfn.pamd +Source4: uuidd-tmpfiles.conf +Source5: adjtime +Source12: util-linux-su.pamd +Source13: util-linux-su-l.pamd +Source14: util-linux-runuser.pamd +Source15: util-linux-runuser-l.pamd +# https://github.com/util-linux/util-linux/commit/1b5fc3fe13947baab133bd426f3377e2eb5ccc90.patch +Patch0: util-linux-2.38.1-harlink-test.patch BuildRequires: make BuildRequires: audit-libs-devel @@ -100,8 +103,8 @@ This is library for fdisk-like programs, part of util-linux. %package -n libfdisk-devel Summary: Partitioning library for fdisk-like programs. License: LGPLv2+ -Requires: libfdisk%{?_isa} = %{version}-%{release} -Requires: pkgconfig +Requires: libfdisk = %{version}-%{release} + %description -n libfdisk-devel This is development library and headers for fdisk-like programs, @@ -119,8 +122,8 @@ This is library for ls-like terminal programs, part of util-linux. %package -n libsmartcols-devel Summary: Formatting library for ls-like programs. License: LGPLv2+ -Requires: libsmartcols%{?_isa} = %{version}-%{release} -Requires: pkgconfig +Requires: libsmartcols = %{version}-%{release} + %description -n libsmartcols-devel This is development library and headers for ls-like terminal programs, @@ -130,8 +133,8 @@ part of util-linux. %package -n libmount Summary: Device mounting library License: LGPLv2+ -Requires: libblkid%{?_isa} = %{version}-%{release} -Requires: libuuid%{?_isa} = %{version}-%{release} +Requires: libblkid = %{version}-%{release} +Requires: libuuid = %{version}-%{release} Conflicts: filesystem < 3 %description -n libmount @@ -140,8 +143,8 @@ This is the device mounting library, part of util-linux. %package -n libmount-devel Summary: Device mounting library License: LGPLv2+ -Requires: libmount%{?_isa} = %{version}-%{release} -Requires: pkgconfig +Requires: libmount = %{version}-%{release} + %description -n libmount-devel This is the device mounting development library and headers, @@ -151,7 +154,7 @@ part of util-linux. %package -n libblkid Summary: Block device ID library License: LGPLv2+ -Requires: libuuid%{?_isa} = %{version}-%{release} +Requires: libuuid = %{version}-%{release} Conflicts: filesystem < 3 Requires(post): coreutils @@ -162,8 +165,8 @@ This is block device identification library, part of util-linux. %package -n libblkid-devel Summary: Block device ID library License: LGPLv2+ -Requires: libblkid%{?_isa} = %{version}-%{release} -Requires: pkgconfig +Requires: libblkid = %{version}-%{release} + %description -n libblkid-devel This is the block device identification development library and headers, @@ -189,8 +192,8 @@ See also the "uuid" package, which is a separate implementation. %package -n libuuid-devel Summary: Universally unique ID library License: BSD -Requires: libuuid%{?_isa} = %{version}-%{release} -Requires: pkgconfig +Requires: libuuid = %{version}-%{release} + %description -n libuuid-devel This is the universally unique ID development library and headers, @@ -222,7 +225,7 @@ SMP systems. %package -n python3-libmount Summary: Python bindings for the libmount library -Requires: libmount%{?_isa} = %{version}-%{release} +Requires: libmount = %{version}-%{release} License: LGPLv2+ %description -n python3-libmount @@ -241,7 +244,7 @@ License: GPLv2 chfn and chsh utilities with dependence on libuser %prep -%autosetup -n %{name}-%{upstream_version} +%autosetup -n %{name}-%{upstream_version} -p1 %build ./autogen.sh @@ -279,34 +282,39 @@ make check %install -rm -rf $RPM_BUILD_ROOT -%make_install - mkdir -p ${RPM_BUILD_ROOT}%{_bindir} mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man{1,6,8,5} mkdir -p ${RPM_BUILD_ROOT}%{_sbindir} mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/{pam.d,security/console.apps} +mkdir -p ${RPM_BUILD_ROOT}%{_tmpfilesdir}/tmpfiles.d + +%make_install # And a dirs uuidd needs that the makefiles don't create +install -m 644 %{SOURCE4} ${RPM_BUILD_ROOT}%{_tmpfilesdir}/uuidd.conf install -d ${RPM_BUILD_ROOT}/run/uuidd install -d ${RPM_BUILD_ROOT}/var/lib/libuuid # /etc/adjtime -install -m 644 %{SOURCE8} ${RPM_BUILD_ROOT}%{_sysconfdir}/adjtime - -install -m644 %{SOURCE1} %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} %{SOURCE7} ${RPM_BUILD_ROOT}%{_sysconfdir}/pam.d -rename util-linux-pamd- "" ${RPM_BUILD_ROOT}%{_sysconfdir}/pam.d/util-linux-pamd-* -pushd ${RPM_BUILD_ROOT}%{_sysconfdir}/pam.d/ -ln -s chsh chfn -popd +install -m 644 %{SOURCE5} ${RPM_BUILD_ROOT}%{_sysconfdir}/adjtime + +# PAM settings +{ + pushd ${RPM_BUILD_ROOT}%{_sysconfdir}/pam.d + install -m 644 %{SOURCE1} ./login + install -m 644 %{SOURCE2} ./remote + install -m 644 %{SOURCE3} ./chsh + install -m 644 %{SOURCE3} ./chfn + install -m 644 %{SOURCE12} ./su + install -m 644 %{SOURCE13} ./su-l + install -m 644 %{SOURCE14} ./runuser + install -m 644 %{SOURCE15} ./runuser-l + popd +} ln -sf hwclock ${RPM_BUILD_ROOT}%{_sbindir}/clock echo ".so man8/hwclock.8" > ${RPM_BUILD_ROOT}%{_mandir}/man8/clock.8 -rm -rf ${RPM_BUILD_ROOT}%{_libdir}/*.la -rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.la -rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.a - ln -sf ../proc/self/mounts %{buildroot}/etc/mtab rm -f $RPM_BUILD_ROOT%{_libdir}/lib{uuid,blkid,mount,smartcols,fdisk}.a rm -f $RPM_BUILD_ROOT%{compldir}/{mount,umount} @@ -323,22 +331,6 @@ find $RPM_BUILD_ROOT%{_mandir}/man8 -regextype posix-egrep \ -regex ".*(linux32|linux64|i386|x86_64|uname26)\.8.*" \ -printf "%{_mandir}/man8/%f*\n" >> %{name}.files -%post -n util-linux-core -if [ ! -L /etc/mtab ]; then - ln -sf ../proc/self/mounts /etc/mtab || : -fi - -%post -n libblkid -### Move blkid cache to /run -[ -d /run/blkid ] || mkdir -p /run/blkid -for I in /etc/blkid.tab /etc/blkid.tab.old \ - /etc/blkid/blkid.tab /etc/blkid/blkid.tab.old; do - - if [ -f "$I" ]; then - mv "$I" /run/blkid/ || : - fi -done - %pre -n uuidd getent group uuidd >/dev/null || groupadd -r uuidd getent passwd uuidd >/dev/null || \ @@ -470,7 +462,7 @@ fi %{_mandir}/man1/su.1* %{_mandir}/man1/uclampset.1.* %{_mandir}/man1/ul.1* -%{_mandir}/man1/utmpdump.1.gz +%{_mandir}/man1/utmpdump.1.* %{_mandir}/man1/uuidgen.1* %{_mandir}/man1/uuidparse.1* %{_mandir}/man1/wall.1* @@ -506,9 +498,9 @@ fi %{_mandir}/man8/rfkill.8* %{_mandir}/man8/rtcwake.8* %{_mandir}/man8/setarch.8* -%{_mandir}/man8/sulogin.8.gz +%{_mandir}/man8/sulogin.8* %{_mandir}/man8/swaplabel.8* -%{_mandir}/man8/wdctl.8.gz +%{_mandir}/man8/wdctl.8* %{_mandir}/man8/wipefs.8* %{_mandir}/man8/zramctl.8* %{_sbindir}/addpart @@ -736,6 +728,7 @@ fi %dir %attr(2775, uuidd, uuidd) /var/lib/libuuid %dir %attr(2775, uuidd, uuidd) /run/uuidd %{compldir}/uuidd +%{_tmpfilesdir}/uuidd.conf %files -n libfdisk @@ -803,9 +796,12 @@ fi %files -n python3-libmount %license Documentation/licenses/COPYING.LGPL-2.1-or-later libmount/COPYING -%{_libdir}/python*/site-packages/libmount/ +%{python3_sitearch}/libmount %changelog +* Thu Dec 1 2022 Funda Wang - 2.38.1-1 +- New version 2.38.1 + * Thu Mar 24 2022 Chunmei Xu - 2.38~rc4-2 - add missing Provides diff --git a/uuidd-tmpfiles.conf b/uuidd-tmpfiles.conf new file mode 100644 index 0000000000000000000000000000000000000000..4158c7da430feee5c36c4bb87c56c00160ea37dd --- /dev/null +++ b/uuidd-tmpfiles.conf @@ -0,0 +1 @@ +d /run/uuidd 2775 uuidd uuidd