diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/.gitignore b/.gitignore index 9be7f90..15c7c05 100644 --- a/.gitignore +++ b/.gitignore @@ -99,3 +99,10 @@ /util-linux-2.40.1.tar.xz /util-linux-2.40.2.tar.xz /util-linux-2.40.4.tar.xz +/util-linux-2.41.tar.xz +/util-linux-2.41.1.tar.xz +/util-linux-2.41.2.tar.xz +/util-linux-2.41.3.tar.xz +/util-linux-2.42.tar.xz +/util-linux-2.42.1.tar.xz +/util-linux-2.42.2.tar.xz diff --git a/0000-login-use-O_CREAT-on-lastlog.patch b/0000-login-use-O_CREAT-on-lastlog.patch new file mode 100644 index 0000000..39751c2 --- /dev/null +++ b/0000-login-use-O_CREAT-on-lastlog.patch @@ -0,0 +1,27 @@ +From a2357184ff3dc3beb001fcb12e1e4c0dcf8d0dbd Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Tue, 2 Dec 2025 16:15:44 +0100 +Subject: login: use O_CREAT on lastlog + +Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=151635 +Signed-off-by: Karel Zak +--- + login-utils/login.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/login-utils/login.c b/login-utils/login.c +index 321f9d6ce..edc69fd9a 100644 +--- a/login-utils/login.c ++++ b/login-utils/login.c +@@ -682,7 +682,7 @@ static void log_lastlog(struct login_context *cxt) + sa.sa_handler = SIG_IGN; + sigaction(SIGXFSZ, &sa, &oldsa_xfsz); + +- fd = open(_PATH_LASTLOG, O_RDWR, 0); ++ fd = open(_PATH_LASTLOG, O_RDWR | O_CREAT, 0); + if (fd < 0) + goto done; + offset = cxt->pwd->pw_uid * sizeof(ll); +-- +2.51.1 + diff --git a/0001-login-add-run-motd.d-to-the-hardcoded-MOTD_FILE.patch b/0001-login-add-run-motd.d-to-the-hardcoded-MOTD_FILE.patch new file mode 100644 index 0000000..91d7f5c --- /dev/null +++ b/0001-login-add-run-motd.d-to-the-hardcoded-MOTD_FILE.patch @@ -0,0 +1,27 @@ +From 617a887a6ec7e433f6a9f4c60592ed38b12b9f18 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Tue, 2 Dec 2025 16:17:55 +0100 +Subject: login: add /run/motd.d` to the hardcoded MOTD_FILE + +Addresses: https://github.com/coreos/console-login-helper-messages/issues/60 +Signed-off-by: Karel Zak +--- + include/pathnames.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/pathnames.h b/include/pathnames.h +index 34ba11ca3..c91a077e1 100644 +--- a/include/pathnames.h ++++ b/include/pathnames.h +@@ -41,7 +41,7 @@ + #ifndef _PATH_MAILDIR + # define _PATH_MAILDIR "/var/spool/mail" + #endif +-#define _PATH_MOTDFILE "/usr/share/misc/motd:/run/motd:/etc/motd" ++#define _PATH_MOTDFILE "/usr/share/misc/motd:/run/motd:/run/motd.d:/etc/motd:/etc/motd.d" + #ifndef _PATH_NOLOGIN + # define _PATH_NOLOGIN "/etc/nologin" + #endif +-- +2.51.1 + diff --git a/libmount-Fix-regression-when-mounting-with-atime.patch b/libmount-Fix-regression-when-mounting-with-atime.patch deleted file mode 100644 index 1c98653..0000000 --- a/libmount-Fix-regression-when-mounting-with-atime.patch +++ /dev/null @@ -1,133 +0,0 @@ -From 2b99ee2526ae61be761b0e31c50e106dbec5e9e4 Mon Sep 17 00:00:00 2001 -From: Filipe Manana -Date: Thu, 17 Aug 2023 10:20:13 +0100 -Subject: [PATCH] libmount: Fix regression when mounting with atime - -A regression was introduced in v2.39 that causes mounting with the atime -option to fail: - - $ mkfs.ext4 -F /dev/sdi - $ mount -o atime /dev/sdi /mnt/sdi - mount: /mnt/sdi: not mount point or bad option. - dmesg(1) may have more information after failed mount system call. - -The failure comes from the mount_setattr(2) call returning -EINVAL. This -is because we pass an invalid value for the attr_clr argument. From a -strace capture we have: - - mount_setattr(4, "", AT_EMPTY_PATH, {attr_set=0, attr_clr=MOUNT_ATTR_NOATIME, propagation=0 /* MS_??? */, userns_fd=0}, 32) = -1 EINVAL (Invalid argument) - -We can't pass MOUNT_ATTR_NOATIME to mount_setattr(2) through the attr_clr -argument because all atime options are exclusive, so in order to set atime -one has to pass MOUNT_ATTR__ATIME to attr_clr and leave attr_set as -MOUNT_ATTR_RELATIME (which is defined as a value of 0). - -This can be read from the man page for mount_setattr(2) and also from the -kernel source: - - $ cat fs/namespace.c - static int build_mount_kattr(const struct mount_attr *attr, size_t usize, - struct mount_kattr *kattr, unsigned int flags) - { - (...) - /* - * Since the MOUNT_ATTR_ values are an enum, not a bitmap, - * users wanting to transition to a different atime setting cannot - * simply specify the atime setting in @attr_set, but must also - * specify MOUNT_ATTR__ATIME in the @attr_clr field. - * So ensure that MOUNT_ATTR__ATIME can't be partially set in - * @attr_clr and that @attr_set can't have any atime bits set if - * MOUNT_ATTR__ATIME isn't set in @attr_clr. - */ - if (attr->attr_clr & MOUNT_ATTR__ATIME) { - if ((attr->attr_clr & MOUNT_ATTR__ATIME) != MOUNT_ATTR__ATIME) - return -EINVAL; - - /* - * Clear all previous time settings as they are mutually - * exclusive. - */ - kattr->attr_clr |= MNT_RELATIME | MNT_NOATIME; - switch (attr->attr_set & MOUNT_ATTR__ATIME) { - case MOUNT_ATTR_RELATIME: - kattr->attr_set |= MNT_RELATIME; - break; - case MOUNT_ATTR_NOATIME: - kattr->attr_set |= MNT_NOATIME; - break; - case MOUNT_ATTR_STRICTATIME: - break; - default: - return -EINVAL; - } - (...) - -So fix this by setting attr_clr MOUNT_ATTR__ATIME if we want to clear any -atime related option. - -Signed-off-by: Filipe Manana ---- - libmount/src/optlist.c | 13 ++++++++++++- - tests/expected/libmount/context-mount-flags | 3 +++ - tests/ts/libmount/context | 9 ++++++++- - 3 files changed, 23 insertions(+), 2 deletions(-) - -diff --git a/libmount/src/optlist.c b/libmount/src/optlist.c -index e93810b47..d0afc94f7 100644 ---- a/libmount/src/optlist.c -+++ b/libmount/src/optlist.c -@@ -875,7 +875,18 @@ int mnt_optlist_get_attrs(struct libmnt_optlist *ls, uint64_t *set, uint64_t *cl - - if (opt->ent->mask & MNT_INVERT) { - DBG(OPTLIST, ul_debugobj(ls, " clr: %s", opt->ent->name)); -- *clr |= x; -+ /* -+ * All atime settings are mutually exclusive so *clr must -+ * have MOUNT_ATTR__ATIME set. -+ * -+ * See the function fs/namespace.c:build_mount_kattr() -+ * in the linux kernel source. -+ */ -+ if (x == MOUNT_ATTR_RELATIME || x == MOUNT_ATTR_NOATIME || -+ x == MOUNT_ATTR_STRICTATIME) -+ *clr |= MOUNT_ATTR__ATIME; -+ else -+ *clr |= x; - } else { - DBG(OPTLIST, ul_debugobj(ls, " set: %s", opt->ent->name)); - *set |= x; -diff --git a/tests/expected/libmount/context-mount-flags b/tests/expected/libmount/context-mount-flags -index 960641863..eb71323dd 100644 ---- a/tests/expected/libmount/context-mount-flags -+++ b/tests/expected/libmount/context-mount-flags -@@ -3,3 +3,6 @@ ro,nosuid,noexec - successfully mounted - rw,nosuid,noexec - successfully umounted -+successfully mounted -+rw,relatime -+successfully umounted -diff --git a/tests/ts/libmount/context b/tests/ts/libmount/context -index f5b47185e..a5d2e81a3 100755 ---- a/tests/ts/libmount/context -+++ b/tests/ts/libmount/context -@@ -116,8 +116,15 @@ $TS_CMD_FINDMNT --kernel --mountpoint $MOUNTPOINT -o VFS-OPTIONS -n >> $TS_OUTPU - - ts_run $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>> $TS_ERRLOG - is_mounted $DEVICE && echo "$DEVICE still mounted" >> $TS_OUTPUT 2>> $TS_ERRLOG --ts_finalize_subtest - -+# Test that the atime option works after the migration to use the new kernel mount APIs. -+ts_run $TESTPROG --mount -o atime $DEVICE $MOUNTPOINT >> $TS_OUTPUT 2>> $TS_ERRLOG -+$TS_CMD_FINDMNT --kernel --mountpoint $MOUNTPOINT -o VFS-OPTIONS -n >> $TS_OUTPUT 2>> $TS_ERRLOG -+is_mounted $DEVICE || echo "$DEVICE not mounted" >> $TS_OUTPUT 2>> $TS_ERRLOG -+ts_run $TESTPROG --umount $MOUNTPOINT >> $TS_OUTPUT 2>> $TS_ERRLOG -+is_mounted $DEVICE && echo "$DEVICE still mounted" >> $TS_OUTPUT 2>> $TS_ERRLOG -+ -+ts_finalize_subtest - - ts_init_subtest "mount-loopdev" - mkdir -p $MOUNTPOINT &> /dev/null --- -2.40.1 - diff --git a/login-default-motd-file.patch b/login-default-motd-file.patch deleted file mode 100644 index 3670848..0000000 --- a/login-default-motd-file.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/include/pathnames.h b/include/pathnames.h -index 3845d4c33..fac3a0783 100644 ---- a/include/pathnames.h -+++ b/include/pathnames.h -@@ -41,7 +41,7 @@ - #ifndef _PATH_MAILDIR - # define _PATH_MAILDIR "/var/spool/mail" - #endif --#define _PATH_MOTDFILE "/usr/share/misc/motd:/run/motd:/etc/motd" -+#define _PATH_MOTDFILE "/usr/share/misc/motd:/run/motd:/run/motd.d:/etc/motd:/etc/motd.d" - #ifndef _PATH_NOLOGIN - # define _PATH_NOLOGIN "/etc/nologin" - #endif diff --git a/login-lastlog-create.patch b/login-lastlog-create.patch deleted file mode 100644 index e2523d3..0000000 --- a/login-lastlog-create.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up util-linux-2.36/login-utils/login.c.kzak util-linux-2.36/login-utils/login.c ---- util-linux-2.36/login-utils/login.c.kzak 2020-07-23 14:13:26.777030764 +0200 -+++ util-linux-2.36/login-utils/login.c 2020-07-23 14:11:22.793686983 +0200 -@@ -585,7 +585,7 @@ static void log_lastlog(struct login_con - sa.sa_handler = SIG_IGN; - sigaction(SIGXFSZ, &sa, &oldsa_xfsz); - -- fd = open(_PATH_LASTLOG, O_RDWR, 0); -+ fd = open(_PATH_LASTLOG, O_RDWR | O_CREAT, 0); - if (fd < 0) - goto done; - offset = cxt->pwd->pw_uid * sizeof(ll); diff --git a/plans/ci.fmf b/plans/ci.fmf new file mode 100644 index 0000000..c1627f9 --- /dev/null +++ b/plans/ci.fmf @@ -0,0 +1,5 @@ +summary: Basic smoke test +discover: + how: fmf +execute: + how: tmt diff --git a/sources b/sources index ed7ccad..8420d1b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (util-linux-2.40.4.tar.xz) = 0024955056ba7b4c54040a917f9919f49692e57ba6d42d17a6c29c1eefe88bf48b1214a545072b71c468829a63a8f15237f49733e9127c134e11126d1e435124 +SHA512 (util-linux-2.42.2.tar.xz) = 7415add0be2930654e322830808dde03ff6d511bd357f0679e6b6287a13ca79fe58ce4ac05edef86b76fb381b3a36ca2da9d3c31b5dc0a1d889c203156a57277 diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100644 index 1cd94fc..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,13 +0,0 @@ -# Test which run in classic and docker environemnt -- hosts: localhost - tags: - - classic - - container - - atomic - roles: - - role: standard-test-beakerlib - tests: - - various - required_packages: - - util-linux - - util-linux-user diff --git a/tests/various/main.fmf b/tests/various/main.fmf new file mode 100644 index 0000000..c71537e --- /dev/null +++ b/tests/various/main.fmf @@ -0,0 +1,13 @@ +summary: This test groups small sanity and regression tests for util-linux +description: '' +contact: Miroslav Vadkerti +component: + - util-linux +test: ./runtest.sh +framework: beakerlib +recommend: + - util-linux + - util-linux-user +duration: 10m +extra-summary: /CoreOS/util-linux/Sanity/various +extra-task: /CoreOS/util-linux/Sanity/various diff --git a/tests/various/runtest.sh b/tests/various/runtest.sh index 32871f4..4394d41 100755 --- a/tests/various/runtest.sh +++ b/tests/various/runtest.sh @@ -27,7 +27,6 @@ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Include Beaker environment -#. /usr/bin/rhts-environment.sh || exit 1 . /usr/share/beakerlib/beakerlib.sh || exit 1 PACKAGE="util-linux" diff --git a/util-linux-su.pamd b/util-linux-su.pamd index 030657f..5733201 100644 --- a/util-linux-su.pamd +++ b/util-linux-su.pamd @@ -1,4 +1,5 @@ #%PAM-1.0 +auth required pam_env.so auth sufficient pam_rootok.so # Uncomment the following line to implicitly trust users in the "wheel" group. #auth sufficient pam_wheel.so trust use_uid diff --git a/util-linux.spec b/util-linux.spec index 1f273df..d92cb07 100644 --- a/util-linux.spec +++ b/util-linux.spec @@ -1,7 +1,7 @@ ### Header Summary: Collection of basic system utilities Name: util-linux -Version: 2.40.4 +Version: 2.42.2 # -p -e rc1 Release: %autorelease License: GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND LGPL-2.1-or-later AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause-UC AND LicenseRef-Fedora-Public-Domain @@ -21,6 +21,7 @@ BuildRequires: make BuildRequires: audit-libs-devel >= 1.0.6 BuildRequires: gettext-devel BuildRequires: libselinux-devel +BuildRequires: libxcrypt-devel BuildRequires: ncurses-devel BuildRequires: readline-devel BuildRequires: pam-devel @@ -34,6 +35,7 @@ BuildRequires: %{pypkg}-devel BuildRequires: gcc BuildRequires: rubygem-asciidoctor BuildRequires: po4a +BuildRequires: sqlite-devel %ifarch ppc64le BuildRequires: librtas-devel %endif @@ -42,7 +44,8 @@ BuildRequires: librtas-devel #BuildRequires: autoconf #BuildRequires: automake #BuildRequires: libtool -#BuildRequires: bison +BuildRequires: bison +BuildRequires: flex ### Sources Source0: https://www.kernel.org/pub/linux/utils/util-linux/v%{upstream_major}/util-linux-%{upstream_version}.tar.xz @@ -81,13 +84,15 @@ Obsoletes: util-linux-user < 2.39-1 Provides: util-linux-user = %{version}-%{release} Requires(post): coreutils -Requires: pam >= 1.1.3-7, /etc/pam.d/system-auth +Requires: (pam >= 1.1.3-7 if systemd) +Requires: (/etc/pam.d/system-auth if systemd) Requires: audit-libs >= 1.0.6 Requires: libuuid = %{version}-%{release} Requires: libblkid = %{version}-%{release} Requires: libmount = %{version}-%{release} Requires: libsmartcols = %{version}-%{release} Requires: libfdisk = %{version}-%{release} +Requires: liblastlog2 = %{version}-%{release} Requires: util-linux-core = %{version}-%{release} %if "%{_sbindir}" == "%{_bindir}" @@ -98,13 +103,9 @@ Provides: /usr/sbin/runuser Provides: /usr/sbin/sfdisk %endif -### Ready for upstream? -### -# 151635 - makeing /var/log/lastlog -Patch0: login-lastlog-create.patch -# Add `/run/motd.d` to the hardcoded MOTD_FILE -# https://github.com/coreos/console-login-helper-messages/issues/60 -Patch1: login-default-motd-file.patch +### Fedora specific patches +Patch0: 0000-login-use-O_CREAT-on-lastlog.patch +Patch1: 0001-login-add-run-motd.d-to-the-hardcoded-MOTD_FILE.patch %description The util-linux package contains a large variety of low-level system @@ -207,6 +208,25 @@ This is the device mounting development library and headers, part of util-linux. +%package -n liblastlog2 +Summary: lastlog database library and PAM module +License: BSD-2-Clause + +%description -n liblastlog2 +This is the lastlog database library and PAM module, part of util-linux. + + +%package -n liblastlog2-devel +Summary: lastlog database library +License: BSD-2-Clause +Requires: liblastlog2%{?_isa} = %{version}-%{release} +Requires: pkgconfig + +%description -n liblastlog2-devel +This is the lastlog database development library and headers, +part of util-linux. + + %package -n libblkid Summary: Block device ID library License: LGPL-2.1-or-later @@ -299,6 +319,12 @@ License: GPL-2.0-or-later Internationalization pack with translated messages and manual pages for util-linux commands. +%package -n util-linux-script +Summary: Utilities for creating and replaying typescripts of terminal session +Requires: util-linux = %{version}-%{release} + +%description -n util-linux-script +The utilities scripts, scriptreplay, and scriptlive are used to create and replay terminal sessions. %prep %autosetup -p1 -n %{name}-%{upstream_version} @@ -321,7 +347,6 @@ export DAEMON_LDFLAGS="$SUID_LDFLAGS" --disable-silent-rules \ --disable-bfs \ --disable-pg \ - --disable-liblastlog2 \ --enable-chfn-chsh \ --enable-usrdir-path \ --enable-write \ @@ -360,9 +385,10 @@ mkdir -p %{buildroot}%{_sysconfdir}/{pam.d,security/console.apps} # install util-linux %make_install -# And a dirs uuidd needs that the makefiles don't create -install -d %{buildroot}/run/uuidd -install -d %{buildroot}/var/lib/libuuid +# And a dirs that the makefiles don't create +install -d %{buildroot}%{_rundir}/uuidd +install -d %{buildroot}%{_sharedstatedir}/libuuid +install -d %{buildroot}%{_sharedstatedir}/lastlog # /etc/adjtime install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/adjtime @@ -424,7 +450,7 @@ rm -f %{buildroot}/sbin/sfdisk \ ln -sf ../proc/self/mounts %{buildroot}/etc/mtab # remove static libs -rm -f %{buildroot}%{_libdir}/lib{uuid,blkid,mount,smartcols,fdisk}.a +rm -f %{buildroot}%{_libdir}/lib{uuid,blkid,mount,smartcols,fdisk,lastlog2}.a # temporary remove to avoid conflicts with bash-completion pkg rm -f %{buildroot}%{compldir}/{mount,umount} @@ -454,22 +480,25 @@ find %{buildroot}%{_mandir}/man8 -regextype posix-egrep \ mv -v %{buildroot}/usr/sbin/* %{buildroot}/usr/bin/ %endif + %post %systemd_post fstrim.{service,timer} +%post -n liblastlog2 +%systemd_post lastlog2-import.service + + %preun %systemd_preun fstrim.{service,timer} + %postun %systemd_postun_with_restart fstrim.timer %systemd_postun fstrim.service -%pre -n uuidd -getent group uuidd >/dev/null || groupadd -r uuidd -getent passwd uuidd >/dev/null || \ -useradd -r -g uuidd -d /var/lib/libuuid -s /sbin/nologin \ - -c "UUID generator helper daemon" uuidd -exit 0 +%postun -n liblastlog2 +%systemd_postun lastlog2-import.service + # Please, keep uuidd running after installation! Note that systemd_post is # "systemctl preset" and it enable/disable service only. @@ -494,7 +523,7 @@ fi %files -f %{name}.files %doc README NEWS AUTHORS -%doc Documentation/deprecated.txt +%doc Documentation/deprecated.txt %license Documentation/licenses/* %doc misc-utils/getopt-*.{bash,tcsh} @@ -511,12 +540,12 @@ fi %attr(4755,root,root) %{_bindir}/su %attr(755,root,root) %{_bindir}/login -%attr(2755,root,tty) %{_bindir}/write %attr(4711,root,root) %{_bindir}/chfn %attr(4711,root,root) %{_bindir}/chsh %{_unitdir}/fstrim.* +%{_bindir}/bits %{_bindir}/cal %{_bindir}/chmem %{_bindir}/choom @@ -524,18 +553,22 @@ fi %{_bindir}/colcrt %{_bindir}/colrm %{_bindir}/column +%{_bindir}/copyfilerange +%{_bindir}/coresched %{_bindir}/eject %{_bindir}/enosys %{_bindir}/exch %{_bindir}/fallocate %{_bindir}/fincore %{_bindir}/fadvise +%{_bindir}/getino %{_bindir}/getopt %{_bindir}/hexdump %{_bindir}/irqtop %{_bindir}/isosize %{_bindir}/last %{_bindir}/lastb +%{_bindir}/lastlog2 %{_bindir}/look %{_bindir}/lsblk %{_bindir}/lscpu @@ -554,9 +587,6 @@ fi %{_bindir}/prlimit %{_bindir}/rename %{_bindir}/rev -%{_bindir}/script -%{_bindir}/scriptlive -%{_bindir}/scriptreplay %{_bindir}/setarch %{_bindir}/setpgid %{_bindir}/setpriv @@ -570,6 +600,9 @@ fi %{_bindir}/wall %{_bindir}/wdctl %{_bindir}/whereis +%{_bindir}/write + +%{_mandir}/man1/bits.1* %{_mandir}/man1/cal.1* %{_mandir}/man1/chfn.1* %{_mandir}/man1/choom.1* @@ -578,12 +611,15 @@ fi %{_mandir}/man1/colcrt.1* %{_mandir}/man1/colrm.1* %{_mandir}/man1/column.1* +%{_mandir}/man1/copyfilerange.1* +%{_mandir}/man1/coresched.1.* %{_mandir}/man1/eject.1* %{_mandir}/man1/enosys.1* %{_mandir}/man1/exch.1* %{_mandir}/man1/fadvise.1* %{_mandir}/man1/fallocate.1* %{_mandir}/man1/fincore.1* +%{_mandir}/man1/getino.1* %{_mandir}/man1/getopt.1* %{_mandir}/man1/hexdump.1* %{_mandir}/man1/irqtop.1* @@ -606,9 +642,6 @@ fi %{_mandir}/man1/rename.1* %{_mandir}/man1/rev.1* %{_mandir}/man1/runuser.1* -%{_mandir}/man1/script.1* -%{_mandir}/man1/scriptlive.1* -%{_mandir}/man1/scriptreplay.1* %{_mandir}/man1/setpgid.1* %{_mandir}/man1/setpriv.1* %{_mandir}/man1/setterm.1* @@ -640,6 +673,7 @@ fi %{_mandir}/man8/fsfreeze.8* %{_mandir}/man8/fstrim.8* %{_mandir}/man8/isosize.8* +%{_mandir}/man8/lastlog2.8* %{_mandir}/man8/ldattach.8* %{_mandir}/man8/lsblk.8* %{_mandir}/man8/lslocks.8* @@ -687,17 +721,22 @@ fi %{_sbindir}/zramctl %{compldir}/addpart +%{compldir}/bits %{compldir}/blkdiscard +%{compldir}/blkpr %{compldir}/blkzone %{compldir}/cal %{compldir}/chcpu %{compldir}/chfn %{compldir}/chmem +%{compldir}/choom %{compldir}/chsh %{compldir}/col %{compldir}/colcrt %{compldir}/colrm %{compldir}/column +%{compldir}/copyfilerange +%{compldir}/coresched %{compldir}/ctrlaltdel %{compldir}/delpart %{compldir}/eject @@ -712,17 +751,20 @@ fi %{compldir}/fsck.minix %{compldir}/fsfreeze %{compldir}/fstrim +%{compldir}/getino %{compldir}/getopt %{compldir}/hexdump %{compldir}/irqtop %{compldir}/isosize %{compldir}/last %{compldir}/lastb +%{compldir}/lastlog2 %{compldir}/ldattach %{compldir}/look %{compldir}/lsblk %{compldir}/lscpu %{compldir}/lsclocks +%{compldir}/lsfd %{compldir}/lsipc %{compldir}/lsirq %{compldir}/lslocks @@ -745,9 +787,6 @@ fi %{compldir}/rfkill %{compldir}/rtcwake %{compldir}/runuser -%{compldir}/script -%{compldir}/scriptlive -%{compldir}/scriptreplay %{compldir}/setarch %{compldir}/setpriv %{compldir}/setpgid @@ -890,10 +929,11 @@ fi %{_mandir}/man8/uuidd.8* %{_sbindir}/uuidd %{_unitdir}/uuidd.* -%dir %attr(2775, uuidd, uuidd) /var/lib/libuuid -%dir %attr(2775, uuidd, uuidd) /run/uuidd +%dir %attr(2775, uuidd, uuidd) %{_sharedstatedir}/libuuid +%dir %attr(2775, uuidd, uuidd) %{_rundir}/uuidd %{compldir}/uuidd %{_tmpfilesdir}/uuidd-tmpfiles.conf +%{_sysusersdir}/uuidd-sysusers.conf %files -n libfdisk @@ -929,6 +969,32 @@ fi %{_libdir}/pkgconfig/mount.pc +%files -n liblastlog2 +%license Documentation/licenses/COPYING.BSD-2-Clause +%dir %{_sharedstatedir}/lastlog +%{_libdir}/liblastlog2.so.* +%{_pam_moduledir}/pam_lastlog2.so +%{_tmpfilesdir}/lastlog2-tmpfiles.conf +%{_unitdir}/lastlog2* +%{_mandir}/man8/pam_lastlog2.8* + +%files -n liblastlog2-devel +%license Documentation/licenses/COPYING.BSD-2-Clause +%{_libdir}/liblastlog2.so +%{_includedir}/liblastlog2 +%{_libdir}/pkgconfig/lastlog2.pc +%{_mandir}/man3/lastlog2.3.* +%{_mandir}/man3/ll2_import_lastlog.3* +%{_mandir}/man3/ll2_new_context.3* +%{_mandir}/man3/ll2_read_all.3* +%{_mandir}/man3/ll2_read_entry.3* +%{_mandir}/man3/ll2_remove_entry.3* +%{_mandir}/man3/ll2_rename_user.3* +%{_mandir}/man3/ll2_unref_context.3* +%{_mandir}/man3/ll2_update_login_time.3* +%{_mandir}/man3/ll2_write_entry.3* + + %files -n libblkid %license Documentation/licenses/COPYING.LGPL-2.1-or-later %{_libdir}/libblkid.so.* @@ -970,6 +1036,16 @@ fi %files -n util-linux-i18n -f %{name}.lang %license Documentation/licenses/COPYING.GPL-2.0-or-later +%files -n util-linux-script +%{_bindir}/script +%{_bindir}/scriptlive +%{_bindir}/scriptreplay +%{_mandir}/man1/script.1* +%{_mandir}/man1/scriptlive.1* +%{_mandir}/man1/scriptreplay.1* +%{compldir}/script +%{compldir}/scriptlive +%{compldir}/scriptreplay + %changelog %autochangelog -