Compare commits

...

35 Commits
f34 ... rawhide

Author SHA1 Message Date
Karel Zak c87ed81c2c 2.39-0.5: upgrade to 2.39-rc3 2023-04-19 11:39:42 +02:00
Karel Zak 09904cbd56 2.39-0.4: fix libmount 2023-04-05 21:59:20 +02:00
Karel Zak 5fa93ec5e0 fix spec file for -rc2 2023-04-04 19:34:43 +02:00
Karel Zak 3bf1f5a44f 2.39-0.2: upgrade to -rc2 2023-04-04 14:59:49 +02:00
Karel Zak 4ffd39d553 commit missing files 2023-03-21 19:34:04 +01:00
Karel Zak a228e53a4b 2.39-0.1: upgrade to -rc1 2023-03-20 13:55:14 +01:00
Fedora Release Engineering a04c11370c Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-21 06:01:31 +00:00
Florian Weimer d65ce0b32c Backport upstream patch to fix C99 issue in kill
It is again necessary to run autotools during the build.

Related to:

  <https://fedoraproject.org/wiki/Changes/PortingToModernC>
  <https://fedoraproject.org/wiki/Toolchain/PortingToModernC>
2022-12-17 21:40:37 +01:00
Karel Zak 260ccc24c5 2.38.1-2: improve tmpfiles.d use 2022-08-22 12:00:27 +02:00
Karel Zak c96992b25e 2.38.1-1: upgrade 2022-08-04 16:04:00 +02:00
Fedora Release Engineering dd1f0e5a82 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-23 11:35:51 +00:00
Python Maint f64c455630 Rebuilt for Python 3.11 2022-06-13 15:08:44 +02:00
Karel Zak 1f18765a68 2.38-3: fix changelog 2022-04-13 20:47:23 +02:00
Zbigniew Jędrzejewski-Szmek 6c5649c0b6 Simplify creation of /etc/mtab symlink
It was created unconditionally in %post, so the original contents (if
any) were overwritten. Listing is as %config was just misleading.
Let's simply list the symlink as normal contents in the rpm, so that
rpm can install the symlink for us.

(The scriplet was missing a dependency on coreutils for ln, but let's
not add that if we can drop the whole thing.)

[kzak@redhat.com: - add %changelog entry]
2022-03-30 13:33:13 +02:00
Karel Zak 6578411a87 2.38-1: upgrade, spec file cleanup 2022-03-30 13:15:41 +02:00
Zbigniew Jędrzejewski-Szmek 3b965f951d Modernize style
Guidelines say %global should be used instead of %define.
Also drop periods from Summary, add them to %description.
%__sed and friends are deprecated.
2022-03-30 13:05:58 +02:00
Zbigniew Jędrzejewski-Szmek c409cb5073 Drop very old upgrade scriptlet for libblkid
It was there in the initial commit in 2011, but it looks like it is
older than that.
2022-03-30 12:58:54 +02:00
Karel Zak f3b1a65177 2.38-rc3: upgrade 2022-03-16 09:54:43 +01:00
Karel Zak 5abc3df64a 2.38-0.3: add /usr/lib/tmpfiles.d/uuidd.conf 2022-02-02 12:23:05 +01:00
Zbigniew Jędrzejewski-Szmek f9a78e1def 2.38-0.2: Release ownership of /var/log/lastlog
/var/log directory is provided by filesystem package, no need to create
it. And systemd >= 235 will create /var/log/lastlog owned by utmp. So
release ownership of the file, and let systemd manage it.

Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1798685.
Similar change in setup: https://pagure.io/setup/pull-request/30.
2022-02-02 11:23:26 +01:00
Karel Zak f55af7b31a add v2.38-rc1 sources 2022-01-31 16:32:09 +01:00
Karel Zak 93b5e7b623 2.38-0.1: upgrade to v2.38-rc1 2022-01-31 16:22:25 +01:00
Fedora Release Engineering b3ca809df8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-22 03:42:53 +00:00
Karel Zak 2abaf6eb96 2.37.2-1: upgrade 2021-08-17 10:43:34 +02:00
Fedora Release Engineering f9f53d46a2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 20:13:49 +00:00
Karel Zak 31097faf0c 2.37-5: remove util-linux-60-raw.rules 2021-07-14 18:20:13 +02:00
Karel Zak e7be6ae5f5 2.37-4: fix #1981729 (close_range(), remove raw(8) and PCRE2 use) 2021-07-14 18:08:26 +02:00
Richard W.M. Jones cca6bc092d Rebuild for updated pcre2
The package fails to install in Rawhide at the moment with:

DEBUG util.py:444:  Error:
DEBUG util.py:444:   Problem: package util-linux-2.37-2.fc35.x86_64 requires util-linux-core = 2.37-2.fc35, but none of the providers can be installed
DEBUG util.py:444:    - conflicting requests
DEBUG util.py:444:    - nothing provides libpcre2-posix.so.2()(64bit) needed by util-linux-core-2.37-2.fc35.x86_64

This is my attempt to see if I can fix this with a simple rebuild.  If
not I will file a bug.
2021-06-16 11:55:58 +01:00
Python Maint e86e462be5 Rebuilt for Python 3.10 2021-06-04 21:19:06 +02:00
Karel Zak b50e3f3a07 2.37-1: upgrade, add util-linux-core 2021-06-01 12:23:41 +02:00
Karel Zak f00635cf14 2.37-0.1: upgrade to upstream v2.37-rc2 2021-05-14 10:42:53 +02:00
Zbigniew Jędrzejewski-Szmek 985b3cb330 Make changelog chronological again 2021-04-21 17:04:24 +02:00
Zbigniew Jędrzejewski-Szmek 05489e2334 Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
2021-03-02 16:12:05 +01:00
Robert Scheck 2002e7d438 2.36.2-2: Spec file cleanup
[kzak@redhat.com: - add changelog entry to spec file]
2021-03-02 13:00:11 +01:00
Karel Zak 8abfa74392 2.36.2-1: upgrade 2021-02-12 16:14:51 +01:00
7 changed files with 298 additions and 656 deletions

11
.gitignore vendored
View File

@ -79,3 +79,14 @@
/util-linux-2.35.2.tar.xz
/util-linux-2.36.tar.xz
/util-linux-2.36.1.tar.xz
/util-linux-2.36.2.tar.xz
/util-linux-2.37-rc2.tar.xz
/util-linux-2.37.tar.xz
/util-linux-2.37.2.tar.xz
/util-linux-2.38-rc1.tar.xz
/util-linux-2.38-rc3.tar.xz
/util-linux-2.38.tar.xz
/util-linux-2.38.1.tar.xz
/util-linux-2.39-rc1.tar.xz
/util-linux-2.39-rc2.tar.xz
/util-linux-2.39-rc3.tar.xz

View File

@ -1,40 +0,0 @@
From 76bb9b30cfcf54b59591a57a3d2a747e514469b2 Mon Sep 17 00:00:00 2001
From: Karel Zak <kzak@redhat.com>
Date: Thu, 19 Nov 2020 09:49:16 +0100
Subject: [PATCH] libmount: don't use "symfollow" for helpers on user mounts
Addresses: https://github.com/karelzak/util-linux/issues/1193
Signed-off-by: Karel Zak <kzak@redhat.com>
---
libmount/src/context_mount.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libmount/src/context_mount.c b/libmount/src/context_mount.c
index 8c394c1ff..dd1786176 100644
--- a/libmount/src/context_mount.c
+++ b/libmount/src/context_mount.c
@@ -415,6 +415,9 @@ static int generate_helper_optstr(struct libmnt_context *cxt, char **optstr)
* string, because there is nothing like MS_EXEC (we only have
* MS_NOEXEC in mount flags and we don't care about the original
* mount string in libmount for VFS options).
+ *
+ * This use-case makes sense for MS_SECURE flags only (see
+ * mnt_optstr_get_flags() and mnt_context_merge_mflags()).
*/
if (!(cxt->mountflags & MS_NOEXEC))
mnt_optstr_append_option(optstr, "exec", NULL);
@@ -422,11 +425,8 @@ static int generate_helper_optstr(struct libmnt_context *cxt, char **optstr)
mnt_optstr_append_option(optstr, "suid", NULL);
if (!(cxt->mountflags & MS_NODEV))
mnt_optstr_append_option(optstr, "dev", NULL);
- if (!(cxt->mountflags & MS_NOSYMFOLLOW))
- mnt_optstr_append_option(optstr, "symfollow", NULL);
}
-
if (cxt->flags & MNT_FL_SAVED_USER)
rc = mnt_optstr_set_option(optstr, "user", cxt->orig_user);
if (rc)
--
2.25.4

View File

@ -1,396 +0,0 @@
From 57898c3a7ee8fc5933cddd4526bb3980bef85a02 Mon Sep 17 00:00:00 2001
From: Karel Zak <kzak@redhat.com>
Date: Tue, 1 Sep 2020 10:15:14 +0200
Subject: [PATCH] libmount: remove read-mountinfo workaround
This workaround has been introduced by
http://github.com/karelzak/util-linux/commit/e4925f591c1bfb83719418b56b952830d15b77eb
And originally requested by https://github.com/systemd/systemd/issues/10872
It seems we do not need it anymore as the problem should be fixed in kernel since 5.8
(kernel commit 9f6c61f96f2d97cbb5f7fa85607bc398f843ff0f).
Note that the libmount solution is very expensive as it repeats read()
many times (until we get consistent result) if kernel is busy with
mount table modification. This behaviour makes events management in
systemd (or other places) pretty difficult as read mountinfo takes
time on busy systems.
Addresses: https://github.com/systemd/systemd/pull/16537
Signed-off-by: Karel Zak <kzak@redhat.com>
---
configure.ac | 1 -
libmount/src/mountP.h | 2 -
libmount/src/tab_parse.c | 87 ++++----------------
libmount/src/utils.c | 166 ---------------------------------------
4 files changed, 15 insertions(+), 241 deletions(-)
diff --git a/configure.ac b/configure.ac
index 2d178f3af..1e31ca3e2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -504,7 +504,6 @@ AC_CHECK_FUNCS([ \
err \
errx \
explicit_bzero \
- fmemopen \
fsync \
utimensat \
getdomainname \
diff --git a/libmount/src/mountP.h b/libmount/src/mountP.h
index d8ba0abad..ee97c6b4a 100644
--- a/libmount/src/mountP.h
+++ b/libmount/src/mountP.h
@@ -98,7 +98,6 @@ extern int mnt_valid_tagname(const char *tagname);
extern int append_string(char **a, const char *b);
extern const char *mnt_statfs_get_fstype(struct statfs *vfs);
-extern int is_procfs_fd(int fd);
extern int is_file_empty(const char *name);
extern int mnt_is_readonly(const char *path)
@@ -124,7 +123,6 @@ extern void mnt_free_filesystems(char **filesystems);
extern char *mnt_get_kernel_cmdline_option(const char *name);
extern int mnt_stat_mountpoint(const char *target, struct stat *st);
extern int mnt_lstat_mountpoint(const char *target, struct stat *st);
-extern FILE *mnt_get_procfs_memstream(int fd, char **membuf);
/* tab.c */
extern int is_mountinfo(struct libmnt_table *tb);
diff --git a/libmount/src/tab_parse.c b/libmount/src/tab_parse.c
index 329987bcb..ac12dce54 100644
--- a/libmount/src/tab_parse.c
+++ b/libmount/src/tab_parse.c
@@ -694,7 +694,15 @@ static int kernel_fs_postparse(struct libmnt_table *tb,
return rc;
}
-static int __table_parse_stream(struct libmnt_table *tb, FILE *f, const char *filename)
+/**
+ * mnt_table_parse_stream:
+ * @tb: tab pointer
+ * @f: file stream
+ * @filename: filename used for debug and error messages
+ *
+ * Returns: 0 on success, negative number in case of error.
+ */
+int mnt_table_parse_stream(struct libmnt_table *tb, FILE *f, const char *filename)
{
int rc = -1;
int flags = 0;
@@ -773,40 +781,6 @@ err:
return rc;
}
-/**
- * mnt_table_parse_stream:
- * @tb: tab pointer
- * @f: file stream
- * @filename: filename used for debug and error messages
- *
- * Returns: 0 on success, negative number in case of error.
- */
-int mnt_table_parse_stream(struct libmnt_table *tb, FILE *f, const char *filename)
-{
- int fd, rc;
- FILE *memf = NULL;
- char *membuf = NULL;
-
- /*
- * For /proc/#/{mountinfo,mount} we read all file to memory and use it
- * as memory stream. For more details see mnt_read_procfs_file().
- */
- if ((fd = fileno(f)) >= 0
- && (tb->fmt == MNT_FMT_GUESS ||
- tb->fmt == MNT_FMT_MOUNTINFO ||
- tb->fmt == MNT_FMT_MTAB)
- && is_procfs_fd(fd)
- && (memf = mnt_get_procfs_memstream(fd, &membuf))) {
-
- rc = __table_parse_stream(tb, memf, filename);
- fclose(memf);
- free(membuf);
- } else
- rc = __table_parse_stream(tb, f, filename);
-
- return rc;
-}
-
/**
* mnt_table_parse_file:
* @tb: tab pointer
@@ -822,49 +796,18 @@ int mnt_table_parse_stream(struct libmnt_table *tb, FILE *f, const char *filenam
int mnt_table_parse_file(struct libmnt_table *tb, const char *filename)
{
FILE *f;
- int rc, fd = -1;
+ int rc;
if (!filename || !tb)
return -EINVAL;
- /*
- * Try to use read()+poll() to realiably read all
- * /proc/#/{mount,mountinfo} file to memory
- */
- if (tb->fmt != MNT_FMT_SWAPS
- && strncmp(filename, "/proc/", 6) == 0) {
-
- FILE *memf;
- char *membuf = NULL;
-
- fd = open(filename, O_RDONLY|O_CLOEXEC);
- if (fd < 0) {
- rc = -errno;
- goto done;
- }
- memf = mnt_get_procfs_memstream(fd, &membuf);
- if (memf) {
- rc = __table_parse_stream(tb, memf, filename);
-
- fclose(memf);
- free(membuf);
- close(fd);
- goto done;
- }
- /* else fallback to fopen/fdopen() */
- }
-
- if (fd >= 0)
- f = fdopen(fd, "r" UL_CLOEXECSTR);
- else
- f = fopen(filename, "r" UL_CLOEXECSTR);
-
+ f = fopen(filename, "r" UL_CLOEXECSTR);
if (f) {
- rc = __table_parse_stream(tb, f, filename);
+ rc = mnt_table_parse_stream(tb, f, filename);
fclose(f);
} else
rc = -errno;
-done:
+
DBG(TAB, ul_debugobj(tb, "parsing done [filename=%s, rc=%d]", filename, rc));
return rc;
}
@@ -921,7 +864,7 @@ static int __mnt_table_parse_dir(struct libmnt_table *tb, const char *dirname)
f = fopen_at(dd, d->d_name, O_RDONLY|O_CLOEXEC, "r" UL_CLOEXECSTR);
if (f) {
- __table_parse_stream(tb, f, d->d_name);
+ mnt_table_parse_stream(tb, f, d->d_name);
fclose(f);
}
}
@@ -962,7 +905,7 @@ static int __mnt_table_parse_dir(struct libmnt_table *tb, const char *dirname)
f = fopen_at(dirfd(dir), d->d_name,
O_RDONLY|O_CLOEXEC, "r" UL_CLOEXECSTR);
if (f) {
- __table_parse_stream(tb, f, d->d_name);
+ mnt_table_parse_stream(tb, f, d->d_name);
fclose(f);
}
}
diff --git a/libmount/src/utils.c b/libmount/src/utils.c
index 92829ebb0..40b45f11d 100644
--- a/libmount/src/utils.c
+++ b/libmount/src/utils.c
@@ -19,7 +19,6 @@
#include <fcntl.h>
#include <pwd.h>
#include <grp.h>
-#include <poll.h>
#include <blkid.h>
#include "strutils.h"
@@ -448,13 +447,6 @@ const char *mnt_statfs_get_fstype(struct statfs *vfs)
return NULL;
}
-int is_procfs_fd(int fd)
-{
- struct statfs sfs;
-
- return fstatfs(fd, &sfs) == 0 && sfs.f_type == STATFS_PROC_MAGIC;
-}
-
/**
* mnt_match_fstype:
* @type: filesystem type
@@ -1174,164 +1166,7 @@ done:
return 1;
}
-#if defined(HAVE_FMEMOPEN) || defined(TEST_PROGRAM)
-
-/*
- * This function tries to minimize possible races when we read
- * /proc/#/{mountinfo,mount} files.
- *
- * The idea is to minimize number of read()s and check by poll() that during
- * the read the mount table has not been modified. If yes, than re-read it
- * (with some limitations to avoid never ending loop).
- *
- * Returns: <0 error, 0 success, 1 too many attempts
- */
-static int read_procfs_file(int fd, char **buf, size_t *bufsiz)
-{
- size_t bufmax = 0;
- int rc = 0, tries = 0, ninters = 0;
- char *bufptr = NULL;
-
- assert(buf);
- assert(bufsiz);
-
- *bufsiz = 0;
- *buf = NULL;
-
- do {
- ssize_t ret;
-
- if (!bufptr || bufmax == *bufsiz) {
- char *tmp;
-
- bufmax = bufmax ? bufmax * 2 : (16 * 1024);
- tmp = realloc(*buf, bufmax);
- if (!tmp)
- break;
- *buf = tmp;
- bufptr = tmp + *bufsiz;
- }
-
- errno = 0;
- ret = read(fd, bufptr, bufmax - *bufsiz);
-
- if (ret < 0) {
- /* error */
- if ((errno == EAGAIN || errno == EINTR) && (ninters++ < 5)) {
- xusleep(200000);
- continue;
- }
- break;
-
- } if (ret > 0) {
- /* success -- verify no event during read */
- struct pollfd fds[] = {
- { .fd = fd, .events = POLLPRI }
- };
-
- rc = poll(fds, 1, 0);
- if (rc < 0)
- break; /* poll() error */
- if (rc > 0) {
- /* event -- read all again */
- if (lseek(fd, 0, SEEK_SET) != 0)
- break;
- *bufsiz = 0;
- bufptr = *buf;
- tries++;
-
- if (tries > 10)
- /* busy system? -- wait */
- xusleep(10000);
- continue;
- }
-
- /* successful read() without active poll() */
- (*bufsiz) += (size_t) ret;
- bufptr += ret;
- tries = ninters = 0;
- } else {
- /* end-of-file */
- goto success;
- }
- } while (tries <= 100);
-
- rc = errno ? -errno : 1;
- free(*buf);
- return rc;
-
-success:
- return 0;
-}
-
-/*
- * Create FILE stream for data from read_procfs_file()
- */
-FILE *mnt_get_procfs_memstream(int fd, char **membuf)
-{
- size_t sz = 0;
- off_t cur;
-
- *membuf = NULL;
-
- /* in case of error, rewind to the original position */
- cur = lseek(fd, 0, SEEK_CUR);
-
- if (read_procfs_file(fd, membuf, &sz) == 0 && sz > 0) {
- FILE *memf = fmemopen(*membuf, sz, "r");
- if (memf)
- return memf; /* success */
-
- free(*membuf);
- *membuf = NULL;
- }
-
- /* error */
- if (cur != (off_t) -1)
- lseek(fd, cur, SEEK_SET);
- return NULL;
-}
-#else
-FILE *mnt_get_procfs_memstream(int fd __attribute((__unused__)),
- char **membuf __attribute((__unused__)))
-{
- return NULL;
-}
-#endif /* HAVE_FMEMOPEN */
-
-
#ifdef TEST_PROGRAM
-static int test_proc_read(struct libmnt_test *ts, int argc, char *argv[])
-{
- char *buf = NULL;
- char *filename = argv[1];
- size_t bufsiz = 0;
- int rc = 0, fd = open(filename, O_RDONLY);
-
- if (fd <= 0) {
- warn("%s: cannot open", filename);
- return -errno;
- }
-
- rc = read_procfs_file(fd, &buf, &bufsiz);
- close(fd);
-
- switch (rc) {
- case 0:
- fwrite(buf, 1, bufsiz, stdout);
- free(buf);
- break;
- case 1:
- warnx("too many attempts");
- break;
- default:
- warn("%s: cannot read", filename);
- break;
- }
-
- return rc;
-}
-
static int test_match_fstype(struct libmnt_test *ts, int argc, char *argv[])
{
char *type = argv[1];
@@ -1513,7 +1348,6 @@ int main(int argc, char *argv[])
{ "--guess-root", test_guess_root, "[<maj:min>]" },
{ "--mkdir", test_mkdir, "<path>" },
{ "--statfs-type", test_statfs_type, "<path>" },
- { "--read-procfs", test_proc_read, "<path>" },
{ NULL }
};
--
2.25.4

View File

@ -1 +1 @@
SHA512 (util-linux-2.36.1.tar.xz) = 9dfd01ae4c16fa35015dafd222d555988b72e4d1d2fbadd140791b9ef78f84fa8254d4d08dc67cabf41e873338867f19e786b989d708ccfe5161c4f7679bba7a
SHA512 (util-linux-2.39-rc3.tar.xz) = 8a93d32a5ceb38d50a4b2c8bfa48bcab7ec9b758c89b5a1a4f7fd74558dce37385bd7ea203345148d4389de4ea60ec42058f9d7889a8075d3e616773d085427e

View File

@ -1,8 +0,0 @@
#
# Enter raw device bindings here.
#
# An example would be:
# ACTION=="add", KERNEL=="sda", RUN+="/usr/bin/raw /dev/raw/raw1 %N"
# to bind /dev/raw/raw1 to /dev/sda, or
# ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/usr/bin/raw /dev/raw/raw2 %M %m"
# to bind /dev/raw/raw2 to the device with major 8, minor 1.

View File

@ -1,19 +1,19 @@
### Header
Summary: A collection of basic system utilities
Summary: Collection of basic system utilities
Name: util-linux
Version: 2.36.1
Release: 4%{?dist}
Version: 2.39
Release: 0.5%{?dist}
License: GPLv2 and GPLv2+ and LGPLv2+ and BSD with advertising and Public Domain
URL: http://en.wikipedia.org/wiki/Util-linux
URL: https://en.wikipedia.org/wiki/Util-linux
### Macros
%define upstream_version %{version}
%define upstream_major %(eval echo %{version} | %{__sed} -e 's/\([[:digit:]]*\)\.\([[:digit:]]*\)\.[[:digit:]]*$/\1.\2/')
%global upstream_version %{version}-rc3
%global upstream_major %(eval echo %{version} | sed -e 's/\([[:digit:]]*\)\.\([[:digit:]]*\)\.[[:digit:]]*$/\1.\2/')
%define compldir %{_datadir}/bash-completion/completions/
%global compldir %{_datadir}/bash-completion/completions/
%define pypkg python3
%define pyver 3
%global pypkg python3
%global pyver 3
### Dependencies
BuildRequires: make
@ -26,32 +26,29 @@ BuildRequires: pam-devel
BuildRequires: zlib-devel
BuildRequires: popt-devel
BuildRequires: libutempter-devel
Buildrequires: systemd-devel
BuildRequires: systemd-devel
BuildRequires: systemd
Buildrequires: libuser-devel
BuildRequires: libuser-devel
BuildRequires: libcap-ng-devel
BuildRequires: %{pypkg}-devel
BuildRequires: pcre2-devel
BuildRequires: gcc
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libtool
BuildRequires: rubygem-asciidoctor
%ifarch ppc64le
BuildRequires: librtas-devel
%endif
# enable if make changes to build-system
#BuildRequires: autoconf
#BuildRequires: automake
#BuildRequires: libtool
#BuildRequires: bison
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libtool
BuildRequires: bison
### Sources
Source0: ftp://ftp.kernel.org/pub/linux/utils/util-linux/v%{upstream_major}/util-linux-%{upstream_version}.tar.xz
Source0: https://www.kernel.org/pub/linux/utils/util-linux/v%{upstream_major}/util-linux-%{upstream_version}.tar.xz
Source1: util-linux-login.pamd
Source2: util-linux-remote.pamd
Source3: util-linux-chsh-chfn.pamd
Source4: util-linux-60-raw.rules
Source4: uuidd-tmpfiles.conf
Source5: adjtime
Source12: util-linux-su.pamd
Source13: util-linux-su-l.pamd
@ -69,28 +66,15 @@ Provides: eject = 2.1.6
# rfkill has been merged into util-linux v2.31
Obsoletes: rfkill <= 0.5
Provides: rfkill = 0.5
# hardlink has been merged into util-linux v2.34
Obsoletes: hardlink <= 1:1.3-9
Provides: hardlink = 1:1.3-9
# sulogin, utmpdump merged into util-linux v2.22;
# last, lastb merged into util-linux v2.24
Conflicts: sysvinit-tools < 2.88-14
# old versions of e2fsprogs contain fsck, uuidgen
Conflicts: e2fsprogs < 1.41.8-5
# rename from util-linux-ng back to util-linux
Obsoletes: util-linux-ng < 2.19
Provides: util-linux-ng = %{version}-%{release}
Conflicts: filesystem < 3
Provides: /bin/dmesg
Provides: /bin/kill
Provides: /bin/more
Provides: /bin/mount
Provides: /bin/umount
Provides: /sbin/blkid
Provides: /sbin/blockdev
Provides: /sbin/findfs
Provides: /sbin/fsck
Provides: /sbin/nologin
Provides: /sbin/findfs
Requires(post): coreutils
Requires: pam >= 1.1.3-7, /etc/pam.d/system-auth
@ -100,29 +84,51 @@ Requires: libblkid = %{version}-%{release}
Requires: libmount = %{version}-%{release}
Requires: libsmartcols = %{version}-%{release}
Requires: libfdisk = %{version}-%{release}
Requires: util-linux-core = %{version}-%{release}
### Ready for upstream?
###
# 151635 - makeing /var/log/lastlog
Patch0: login-lastlog-create.patch
# https://github.com/karelzak/util-linux/commit/57898c3a7ee8fc5933cddd4526bb3980bef85a02
# The workaround is unnecessary on Fedora with kernel >= 5.8.
Patch1: libmount-remove-read-mountinfo-workaround.patch
# usptream patch, https://github.com/karelzak/util-linux/issues/1193
Patch2: libmount-don-t-use-symfollow-for-helpers-on-user-mou.patch
# Add `/run/motd.d` to the hardcoded MOTD_FILE
# https://github.com/coreos/console-login-helper-messages/issues/60
Patch3: login-default-motd-file.patch
Patch1: login-default-motd-file.patch
%description
The util-linux package contains a large variety of low-level system
utilities that are necessary for a Linux system to function. Among
others, Util-linux contains the fdisk configuration tool and the login
others, util-linux contains the fdisk configuration tool and the login
program.
%package -n util-linux-core
Summary: The most essential utilities from the util-linux suite
License: GPLv2 and GPLv2+ and LGPLv2+ and BSD with advertising and Public Domain
Provides: /bin/dmesg
Provides: /bin/kill
Provides: /bin/more
Provides: /bin/mount
Provides: /bin/umount
Provides: /sbin/blkid
Provides: /sbin/blockdev
Provides: /sbin/fsck
# hardlink has been merged into util-linux v2.34
Obsoletes: hardlink <= 1:1.3-9
Provides: hardlink = 1:1.3-9
Requires: libuuid = %{version}-%{release}
Requires: libblkid = %{version}-%{release}
Requires: libmount = %{version}-%{release}
Requires: libsmartcols = %{version}-%{release}
# old versions of e2fsprogs contain fsck, uuidgen
Conflicts: e2fsprogs < 1.41.8-5
%description -n util-linux-core
This is a very basic set of Linux utilities that is necessary on
minimal installations.
%package -n libfdisk
Summary: Partitioning library for fdisk-like programs.
Summary: Partitioning library for fdisk-like programs
License: LGPLv2+
%description -n libfdisk
@ -130,9 +136,9 @@ This is library for fdisk-like programs, part of util-linux.
%package -n libfdisk-devel
Summary: Partitioning library for fdisk-like programs.
Summary: Partitioning library for fdisk-like programs
License: LGPLv2+
Requires: libfdisk = %{version}-%{release}
Requires: libfdisk%{?_isa} = %{version}-%{release}
Requires: pkgconfig
%description -n libfdisk-devel
@ -141,7 +147,7 @@ part of util-linux.
%package -n libsmartcols
Summary: Formatting library for ls-like programs.
Summary: Formatting library for ls-like programs
License: LGPLv2+
%description -n libsmartcols
@ -149,9 +155,9 @@ This is library for ls-like terminal programs, part of util-linux.
%package -n libsmartcols-devel
Summary: Formatting library for ls-like programs.
Summary: Formatting library for ls-like programs
License: LGPLv2+
Requires: libsmartcols = %{version}-%{release}
Requires: libsmartcols%{?_isa} = %{version}-%{release}
Requires: pkgconfig
%description -n libsmartcols-devel
@ -162,8 +168,8 @@ part of util-linux.
%package -n libmount
Summary: Device mounting library
License: LGPLv2+
Requires: libblkid = %{version}-%{release}
Requires: libuuid = %{version}-%{release}
Requires: libblkid%{?_isa} = %{version}-%{release}
Requires: libuuid%{?_isa} = %{version}-%{release}
Conflicts: filesystem < 3
%description -n libmount
@ -173,7 +179,7 @@ This is the device mounting library, part of util-linux.
%package -n libmount-devel
Summary: Device mounting library
License: LGPLv2+
Requires: libmount = %{version}-%{release}
Requires: libmount%{?_isa} = %{version}-%{release}
Requires: pkgconfig
%description -n libmount-devel
@ -184,9 +190,8 @@ part of util-linux.
%package -n libblkid
Summary: Block device ID library
License: LGPLv2+
Requires: libuuid = %{version}-%{release}
Requires: libuuid%{?_isa} = %{version}-%{release}
Conflicts: filesystem < 3
Requires(post): coreutils
%description -n libblkid
This is block device identification library, part of util-linux.
@ -195,7 +200,7 @@ This is block device identification library, part of util-linux.
%package -n libblkid-devel
Summary: Block device ID library
License: LGPLv2+
Requires: libblkid = %{version}-%{release}
Requires: libblkid%{?_isa} = %{version}-%{release}
Requires: pkgconfig
%description -n libblkid-devel
@ -223,7 +228,7 @@ See also the "uuid" package, which is a separate implementation.
%package -n libuuid-devel
Summary: Universally unique ID library
License: BSD
Requires: libuuid = %{version}-%{release}
Requires: libuuid%{?_isa} = %{version}-%{release}
Requires: pkgconfig
%description -n libuuid-devel
@ -257,7 +262,7 @@ SMP systems.
%package -n %{pypkg}-libmount
Summary: Python bindings for the libmount library
Requires: libmount = %{version}-%{release}
Requires: libmount%{?_isa} = %{version}-%{release}
License: LGPLv2+
%description -n %{pypkg}-libmount
@ -268,12 +273,12 @@ mountinfo, etc) and mount filesystems.
%package -n util-linux-user
Summary: libuser based util-linux utilities
Summary: util-linux utilities based on libuser
Requires: util-linux = %{version}-%{release}
License: GPLv2
%description -n util-linux-user
chfn and chsh utilities with dependence on libuser
chfn and chsh utilities with dependence on libuser.
%prep
@ -282,6 +287,10 @@ chfn and chsh utilities with dependence on libuser
%build
unset LINGUAS || :
# enable only when make a change to the build-system
#./autogen.sh
export CFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 $RPM_OPT_FLAGS"
export SUID_CFLAGS="-fpie"
export SUID_LDFLAGS="-pie -Wl,-z,relro -Wl,-z,now"
@ -295,8 +304,10 @@ export DAEMON_LDFLAGS="$SUID_LDFLAGS"
--enable-chfn-chsh \
--enable-usrdir-path \
--enable-write \
--enable-raw \
--disable-raw \
--enable-hardlink \
--enable-fdformat \
--enable-asciidoc \
--with-python=%{pyver} \
--with-systemd \
--with-udev \
@ -320,32 +331,17 @@ make check
%install
rm -rf ${RPM_BUILD_ROOT}
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}/var/log
touch ${RPM_BUILD_ROOT}/var/log/lastlog
chmod 0644 ${RPM_BUILD_ROOT}/var/log/lastlog
mkdir -p ${RPM_BUILD_ROOT}%{_tmpfilesdir}/tmpfiles.d
# install util-linux
%make_install
# raw
echo '.so man8/raw.8' > $RPM_BUILD_ROOT%{_mandir}/man8/rawdevices.8
{
# see RH bugzilla #216664
mkdir -p ${RPM_BUILD_ROOT}%{_prefix}/lib/udev/rules.d
pushd ${RPM_BUILD_ROOT}%{_prefix}/lib/udev/rules.d
install -m 644 %{SOURCE4} ./60-raw.rules
popd
}
# sbin -> bin
mv ${RPM_BUILD_ROOT}%{_sbindir}/raw ${RPM_BUILD_ROOT}%{_bindir}/raw
# 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
@ -405,9 +401,9 @@ done
%endif
# we install getopt-*.{bash,tcsh} by doc directive
chmod 644 misc-utils/getopt-*.{bash,tcsh}
rm -f ${RPM_BUILD_ROOT}%{_datadir}/doc/util-linux/getopt/*
rmdir ${RPM_BUILD_ROOT}%{_datadir}/doc/util-linux/getopt
#chmod 644 misc-utils/getopt-*.{bash,tcsh}
#rm -f ${RPM_BUILD_ROOT}%{_datadir}/doc/util-linux/getopt/*
#rmdir ${RPM_BUILD_ROOT}%{_datadir}/doc/util-linux/getopt
ln -sf ../proc/self/mounts %{buildroot}/etc/mtab
@ -432,37 +428,6 @@ find $RPM_BUILD_ROOT%{_mandir}/man8 -regextype posix-egrep \
-regex ".*(linux32|linux64|s390|s390x|i386|ppc|ppc64|ppc32|sparc|sparc64|sparc32|sparc32bash|mips|mips64|mips32|ia64|x86_64|uname26)\.8.*" \
-printf "%{_mandir}/man8/%f*\n" >> %{name}.files
%post
# only for minimal buildroots without /var/log
[ -d /var/log ] || mkdir -p /var/log
touch /var/log/lastlog
chown root:root /var/log/lastlog
chmod 0644 /var/log/lastlog
# Fix the file context, do not use restorecon
if [ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled; then
SECXT=$( /usr/sbin/matchpathcon -n /var/log/lastlog 2> /dev/null )
if [ -n "$SECXT" ]; then
# Selinux enabled, but without policy? It's true for buildroots
# without selinux stuff on host machine with enabled selinux.
# We don't want to use any RPM dependence on selinux policy for
# matchpathcon(2). SELinux policy should be optional.
/usr/bin/chcon "$SECXT" /var/log/lastlog >/dev/null 2>&1 || :
fi
fi
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
@ -497,7 +462,6 @@ fi
%files -f %{name}.files
%doc README NEWS AUTHORS
%doc Documentation/deprecated.txt
%{!?_licensedir:%global license %%doc}
%license Documentation/licenses/*
%doc misc-utils/getopt-*.{bash,tcsh}
@ -507,51 +471,36 @@ fi
%config(noreplace) %{_sysconfdir}/pam.d/su-l
%config(noreplace) %{_sysconfdir}/pam.d/runuser
%config(noreplace) %{_sysconfdir}/pam.d/runuser-l
%config(noreplace) %{_prefix}/lib/udev/rules.d/60-raw.rules
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/adjtime
%attr(4755,root,root) %{_bindir}/mount
%attr(4755,root,root) %{_bindir}/umount
%attr(4755,root,root) %{_bindir}/su
%attr(755,root,root) %{_bindir}/login
%attr(2755,root,tty) %{_bindir}/write
%ghost %attr(0644,root,root) %verify(not md5 size mtime) /var/log/lastlog
%ghost %verify(not md5 size mtime) %config(noreplace,missingok) /etc/mtab
%{_unitdir}/fstrim.*
%{_bindir}/cal
%{_bindir}/chmem
%{_bindir}/choom
%{_bindir}/chrt
%{_bindir}/col
%{_bindir}/colcrt
%{_bindir}/colrm
%{_bindir}/column
%{_bindir}/dmesg
%{_bindir}/eject
%{_bindir}/fallocate
%{_bindir}/fincore
%{_bindir}/findmnt
%{_bindir}/flock
%{_bindir}/fadvise
%{_bindir}/getopt
%{_bindir}/hardlink
%{_bindir}/hexdump
%{_bindir}/ionice
%{_bindir}/ipcmk
%{_bindir}/ipcrm
%{_bindir}/ipcs
%{_bindir}/irqtop
%{_bindir}/isosize
%{_bindir}/kill
%{_bindir}/last
%{_bindir}/lastb
%{_bindir}/logger
%{_bindir}/look
%{_bindir}/lsblk
%{_bindir}/lscpu
%{_bindir}/lsfd
%{_bindir}/lsipc
%{_bindir}/lsirq
%{_bindir}/lslocks
@ -560,125 +509,98 @@ fi
%{_bindir}/lsns
%{_bindir}/mcookie
%{_bindir}/mesg
%{_bindir}/more
%{_bindir}/mountpoint
%{_bindir}/namei
%{_bindir}/nsenter
%{_bindir}/pipesz
%{_bindir}/prlimit
%{_bindir}/raw
%{_bindir}/rename
%{_bindir}/renice
%{_bindir}/rev
%{_bindir}/script
%{_bindir}/scriptlive
%{_bindir}/scriptreplay
%{_bindir}/setarch
%{_bindir}/setpriv
%{_bindir}/setsid
%{_bindir}/setterm
%{_bindir}/taskset
%{_bindir}/uclampset
%{_bindir}/ul
%{_bindir}/unshare
%{_bindir}/utmpdump
%{_bindir}/uuidgen
%{_bindir}/uuidparse
%{_bindir}/waitpid
%{_bindir}/wall
%{_bindir}/wdctl
%{_bindir}/whereis
%{_mandir}/man1/cal.1*
%{_mandir}/man1/choom.1*
%{_mandir}/man1/chrt.1*
%{_mandir}/man1/col.1*
%{_mandir}/man1/colcrt.1*
%{_mandir}/man1/colrm.1*
%{_mandir}/man1/column.1*
%{_mandir}/man1/dmesg.1*
%{_mandir}/man1/eject.1*
%{_mandir}/man1/fadvise.1.*
%{_mandir}/man1/fallocate.1*
%{_mandir}/man1/fincore.1*
%{_mandir}/man1/flock.1*
%{_mandir}/man1/getopt.1*
%{_mandir}/man1/hardlink.1*
%{_mandir}/man1/hexdump.1*
%{_mandir}/man1/ionice.1*
%{_mandir}/man1/ipcmk.1*
%{_mandir}/man1/ipcrm.1*
%{_mandir}/man1/ipcs.1*
%{_mandir}/man1/irqtop.1*
%{_mandir}/man1/kill.1*
%{_mandir}/man1/last.1*
%{_mandir}/man1/lastb.1*
%{_mandir}/man1/logger.1*
%{_mandir}/man1/login.1*
%{_mandir}/man1/look.1*
%{_mandir}/man1/lscpu.1*
%{_mandir}/man1/lsfd.1*
%{_mandir}/man1/lsipc.1*
%{_mandir}/man1/lsirq.1*
%{_mandir}/man1/lslogins.1*
%{_mandir}/man1/lsmem.1*
%{_mandir}/man1/mcookie.1*
%{_mandir}/man1/mesg.1*
%{_mandir}/man1/more.1*
%{_mandir}/man1/mountpoint.1*
%{_mandir}/man1/namei.1*
%{_mandir}/man1/nsenter.1*
%{_mandir}/man1/pipesz.1.*
%{_mandir}/man1/prlimit.1*
%{_mandir}/man1/rename.1*
%{_mandir}/man1/renice.1*
%{_mandir}/man1/rev.1*
%{_mandir}/man1/runuser.1*
%{_mandir}/man1/script.1*
%{_mandir}/man1/scriptlive.1*
%{_mandir}/man1/scriptreplay.1*
%{_mandir}/man1/setpriv.1*
%{_mandir}/man1/setsid.1*
%{_mandir}/man1/setterm.1*
%{_mandir}/man1/su.1*
%{_mandir}/man1/taskset.1*
%{_mandir}/man1/uclampset.1.*
%{_mandir}/man1/ul.1*
%{_mandir}/man1/unshare.1*
%{_mandir}/man1/utmpdump.1.gz
%{_mandir}/man1/uuidgen.1*
%{_mandir}/man1/uuidparse.1*
%{_mandir}/man1/waitpid.1.*
%{_mandir}/man1/wall.1*
%{_mandir}/man1/whereis.1*
%{_mandir}/man1/write.1*
%{_mandir}/man5/fstab.5*
%{_mandir}/man5/terminal-colors.d.5*
%{_mandir}/man8/addpart.8*
%{_mandir}/man8/agetty.8*
%{_mandir}/man8/blkdiscard.8*
%{_mandir}/man8/blkid.8*
%{_mandir}/man8/blkpr.8.*
%{_mandir}/man8/blkzone.8*
%{_mandir}/man8/blockdev.8*
%{_mandir}/man8/chcpu.8*
%{_mandir}/man8/chmem.8*
%{_mandir}/man8/ctrlaltdel.8*
%{_mandir}/man8/delpart.8*
%{_mandir}/man8/fdisk.8*
%{_mandir}/man8/findfs.8*
%{_mandir}/man8/findmnt.8*
%{_mandir}/man8/fsck.8*
%{_mandir}/man8/fsck.cramfs.8*
%{_mandir}/man8/fsck.minix.8*
%{_mandir}/man8/fsfreeze.8*
%{_mandir}/man8/fstrim.8*
%{_mandir}/man8/isosize.8*
%{_mandir}/man8/ldattach.8*
%{_mandir}/man8/losetup.8*
%{_mandir}/man8/lsblk.8*
%{_mandir}/man8/lslocks.8*
%{_mandir}/man8/lsns.8*
%{_mandir}/man8/mkfs.8*
%{_mandir}/man8/mkfs.cramfs.8*
%{_mandir}/man8/mkfs.minix.8*
%{_mandir}/man8/mkswap.8*
%{_mandir}/man8/mount.8*
%{_mandir}/man8/nologin.8*
%{_mandir}/man8/partx.8*
%{_mandir}/man8/pivot_root.8*
%{_mandir}/man8/raw.8*
%{_mandir}/man8/rawdevices.8*
%{_mandir}/man8/readprofile.8*
%{_mandir}/man8/resizepart.8*
%{_mandir}/man8/rfkill.8*
@ -686,37 +608,27 @@ fi
%{_mandir}/man8/setarch.8*
%{_mandir}/man8/sulogin.8.gz
%{_mandir}/man8/swaplabel.8*
%{_mandir}/man8/swapoff.8*
%{_mandir}/man8/swapon.8*
%{_mandir}/man8/switch_root.8*
%{_mandir}/man8/umount.8*
%{_mandir}/man8/wdctl.8.gz
%{_mandir}/man8/wipefs.8*
%{_mandir}/man8/zramctl.8*
%{_sbindir}/addpart
%{_sbindir}/agetty
%{_sbindir}/blkdiscard
%{_sbindir}/blkid
%{_sbindir}/blkpr
%{_sbindir}/blkzone
%{_sbindir}/blockdev
%{_sbindir}/chcpu
%{_sbindir}/ctrlaltdel
%{_sbindir}/delpart
%{_sbindir}/fdisk
%{_sbindir}/findfs
%{_sbindir}/fsck
%{_sbindir}/fsck.cramfs
%{_sbindir}/fsck.minix
%{_sbindir}/fsfreeze
%{_sbindir}/fstrim
%{_sbindir}/ldattach
%{_sbindir}/losetup
%{_sbindir}/mkfs
%{_sbindir}/mkfs.cramfs
%{_sbindir}/mkfs.minix
%{_sbindir}/mkswap
%{_sbindir}/nologin
%{_sbindir}/partx
%{_sbindir}/pivot_root
%{_sbindir}/readprofile
%{_sbindir}/resizepart
@ -725,53 +637,38 @@ fi
%{_sbindir}/runuser
%{_sbindir}/sulogin
%{_sbindir}/swaplabel
%{_sbindir}/swapoff
%{_sbindir}/swapon
%{_sbindir}/switch_root
%{_sbindir}/wipefs
%{_sbindir}/zramctl
%{compldir}/addpart
%{compldir}/blkdiscard
%{compldir}/blkid
%{compldir}/blkzone
%{compldir}/blockdev
%{compldir}/cal
%{compldir}/chcpu
%{compldir}/chmem
%{compldir}/chrt
%{compldir}/col
%{compldir}/colcrt
%{compldir}/colrm
%{compldir}/column
%{compldir}/ctrlaltdel
%{compldir}/delpart
%{compldir}/dmesg
%{compldir}/eject
%{compldir}/fallocate
%{compldir}/fdisk
%{compldir}/fincore
%{compldir}/findfs
%{compldir}/findmnt
%{compldir}/flock
%{compldir}/fsck
%{compldir}/fsck.cramfs
%{compldir}/fsck.minix
%{compldir}/fsfreeze
%{compldir}/fstrim
%{compldir}/getopt
%{compldir}/hexdump
%{compldir}/ionice
%{compldir}/ipcmk
%{compldir}/ipcrm
%{compldir}/ipcs
%{compldir}/irqtop
%{compldir}/isosize
%{compldir}/last
%{compldir}/lastb
%{compldir}/ldattach
%{compldir}/logger
%{compldir}/look
%{compldir}/losetup
%{compldir}/lsblk
%{compldir}/lscpu
%{compldir}/lsipc
@ -785,18 +682,12 @@ fi
%{compldir}/mkfs
%{compldir}/mkfs.cramfs
%{compldir}/mkfs.minix
%{compldir}/mkswap
%{compldir}/more
%{compldir}/mountpoint
%{compldir}/namei
%{compldir}/nsenter
%{compldir}/partx
%{compldir}/pipesz
%{compldir}/pivot_root
%{compldir}/prlimit
%{compldir}/raw
%{compldir}/readprofile
%{compldir}/rename
%{compldir}/renice
%{compldir}/resizepart
%{compldir}/rev
%{compldir}/rfkill
@ -807,15 +698,11 @@ fi
%{compldir}/scriptreplay
%{compldir}/setarch
%{compldir}/setpriv
%{compldir}/setsid
%{compldir}/setterm
%{compldir}/su
%{compldir}/swaplabel
%{compldir}/swapoff
%{compldir}/swapon
%{compldir}/taskset
%{compldir}/uclampset
%{compldir}/ul
%{compldir}/unshare
%{compldir}/utmpdump
%{compldir}/uuidgen
%{compldir}/uuidparse
@ -826,7 +713,6 @@ fi
%{compldir}/write
%{compldir}/zramctl
%ifnarch s390 s390x
%{_sbindir}/clock
%{_sbindir}/fdformat
@ -853,6 +739,95 @@ fi
%endif
%files -n util-linux-core
%attr(4755,root,root) %{_bindir}/mount
%attr(4755,root,root) %{_bindir}/umount
%{_bindir}/chrt
%{_bindir}/dmesg
%{_bindir}/findmnt
%{_bindir}/flock
%{_bindir}/hardlink
%{_bindir}/ionice
%{_bindir}/ipcmk
%{_bindir}/ipcrm
%{_bindir}/ipcs
%{_bindir}/kill
%{_bindir}/logger
%{_bindir}/more
%{_bindir}/mountpoint
%{_bindir}/nsenter
%{_bindir}/renice
%{_bindir}/setsid
%{_bindir}/taskset
%{_bindir}/unshare
%{compldir}/blkid
%{compldir}/blockdev
%{compldir}/chrt
%{compldir}/dmesg
%{compldir}/findmnt
%{compldir}/flock
%{compldir}/hardlink
%{compldir}/fsck
%{compldir}/ionice
%{compldir}/ipcmk
%{compldir}/ipcrm
%{compldir}/ipcs
%{compldir}/logger
%{compldir}/losetup
%{compldir}/mkswap
%{compldir}/more
%{compldir}/mountpoint
%{compldir}/nsenter
%{compldir}/partx
%{compldir}/renice
%{compldir}/setsid
%{compldir}/swapoff
%{compldir}/swapon
%{compldir}/taskset
%{compldir}/unshare
%{_mandir}/man1/chrt.1*
%{_mandir}/man1/dmesg.1*
%{_mandir}/man1/flock.1*
%{_mandir}/man1/hardlink.1*
%{_mandir}/man1/ionice.1*
%{_mandir}/man1/ipcmk.1*
%{_mandir}/man1/ipcrm.1*
%{_mandir}/man1/ipcs.1*
%{_mandir}/man1/kill.1*
%{_mandir}/man1/logger.1*
%{_mandir}/man1/more.1*
%{_mandir}/man1/mountpoint.1*
%{_mandir}/man1/nsenter.1*
%{_mandir}/man1/renice.1*
%{_mandir}/man1/setsid.1*
%{_mandir}/man1/taskset.1*
%{_mandir}/man1/unshare.1*
%{_mandir}/man8/agetty.8*
%{_mandir}/man8/blkid.8*
%{_mandir}/man8/blockdev.8*
%{_mandir}/man8/findmnt.8*
%{_mandir}/man8/fsck.8*
%{_mandir}/man8/losetup.8*
%{_mandir}/man8/mkswap.8*
%{_mandir}/man8/mount.8*
%{_mandir}/man8/partx.8*
%{_mandir}/man8/swapoff.8*
%{_mandir}/man8/swapon.8*
%{_mandir}/man8/switch_root.8*
%{_mandir}/man8/umount.8*
%{_sbindir}/agetty
%{_sbindir}/blkid
%{_sbindir}/blockdev
%{_sbindir}/fsck
%{_sbindir}/losetup
%{_sbindir}/mkswap
%{_sbindir}/partx
%{_sbindir}/swapoff
%{_sbindir}/swapon
%{_sbindir}/switch_root
/etc/mtab
%files -n util-linux-user
%config(noreplace) %{_sysconfdir}/pam.d/chfn
%config(noreplace) %{_sysconfdir}/pam.d/chsh
@ -865,7 +840,6 @@ fi
%files -n uuidd
%{!?_licensedir:%global license %%doc}
%license Documentation/licenses/COPYING.GPL-2.0-or-later
%{_mandir}/man8/uuidd.8*
%{_sbindir}/uuidd
@ -873,10 +847,10 @@ fi
%dir %attr(2775, uuidd, uuidd) /var/lib/libuuid
%dir %attr(2775, uuidd, uuidd) /run/uuidd
%{compldir}/uuidd
%{_tmpfilesdir}/uuidd.conf
%files -n libfdisk
%{!?_licensedir:%global license %%doc}
%license Documentation/licenses/COPYING.LGPL-2.1-or-later libfdisk/COPYING
%{_libdir}/libfdisk.so.*
@ -887,7 +861,6 @@ fi
%files -n libsmartcols
%{!?_licensedir:%global license %%doc}
%license Documentation/licenses/COPYING.LGPL-2.1-or-later libsmartcols/COPYING
%{_libdir}/libsmartcols.so.*
@ -898,7 +871,6 @@ fi
%files -n libmount
%{!?_licensedir:%global license %%doc}
%license Documentation/licenses/COPYING.LGPL-2.1-or-later libmount/COPYING
%{_libdir}/libmount.so.*
@ -921,7 +893,6 @@ fi
%files -n libuuid
%{!?_licensedir:%global license %%doc}
%license Documentation/licenses/COPYING.BSD-3-Clause libuuid/COPYING
%{_libdir}/libuuid.so.*
@ -943,11 +914,114 @@ fi
%{_libdir}/pkgconfig/uuid.pc
%files -n %{pypkg}-libmount
%{!?_licensedir:%global license %%doc}
%license Documentation/licenses/COPYING.LGPL-2.1-or-later libmount/COPYING
%{_libdir}/python*/site-packages/libmount/
%changelog
* Wed Apr 19 2023 Karel Zak <kzak@redhat.com> - 2.39-0.5
- upgrade to v2.39-rc3 (fixes XFS and rw/ro issues)
* Wed Apr 5 2023 Karel Zak <kzak@redhat.com> - 2.39-0.4
- fix #2180593 (superblock reconfiguration libmount issue)
* Tue Apr 4 2023 Karel Zak <kzak@redhat.com> - 2.39-0.3
- fix spec file
* Tue Apr 4 2023 Karel Zak <kzak@redhat.com> - 2.39-0.2
- upgrade to v2.39-rc2
* Mon Mar 20 2023 Karel Zak <kzak@redhat.com> - 2.39-0.1
- upgrade to v2.39-rc1
https://kernel.org/pub/linux/utils/util-linux/v2.39/v2.39-ReleaseNotes
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.38.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Dec 17 2022 Florian Weimer <fweimer@redhat.com> - 2.38.1-3
- Backport upstream patch to fix C99 issue in kill
* Mon Aug 22 2022 Karel Zak <kzak@redhat.com> - 2.38.1-2
- improve tmpfiles.d use in spec file
* Thu Aug 4 2022 Karel Zak <kzak@redhat.com> - 2.38.1-1
- upgrade to v2.38.1
https://kernel.org/pub/linux/utils/util-linux/v2.38/v2.38.1-ReleaseNotes
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.38-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 2.38-4
- Rebuilt for Python 3.11
* Wed Apr 13 2022 Karel Zak <kzak@redhat.com> - 2.38-3
- fix spec file changelog order
* Wed Mar 30 2022 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.38-2
- simplify creation of /etc/mtab symlink
* Wed Mar 30 2022 Karel Zak <kzak@redhat.com> - 2.38-1
- upgrade to v2.38
- don't (re)generate build-system
- modernize spec file style (thanks to Zbigniew)
* Thu Mar 17 2022 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.38-0.5
- Drop very old upgrade scriptlet for libblkid
* Wed Mar 16 2022 Karel Zak <kzak@redhat.com> - 2.38-0.4
- upgrade to v2.38-rc3
https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.38/v2.38-ReleaseNotes
* Wed Feb 2 2022 Karel Zak <kzak@redhat.com> - 2.38-0.3
- add /usr/lib/tmpfiles.d/uuidd.conf (based on #2047952)
* Wed Feb 2 2022 Karel Zak <kzak@redhat.com> - 2.38-0.2
- release ownership of /var/log/lastlog
* Mon Jan 31 2022 Karel Zak <kzak@redhat.com> - 2.38-0.1
- upgrade to v2.38-rc1
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.37.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Aug 17 2021 Karel Zak <kzak@redhat.com> - 2.37.2-1
* upgrade to v2.37.2
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.37-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Jul 14 2021 Karel Zak <kzak@redhat.com> - 2.37-5
- remove unused util-linux-60-raw.rules
* Wed Jul 14 2021 Karel Zak <kzak@redhat.com> - 2.37-4
- disable raw(8) - no more supported since Linux v5.14 (commit 03e4922f1c81fc2ed3a87b4f91a8d3aafc7e093)
- remove dependence on deprecated pcre2posix.h
- fix #1981729 - close_range() 3rd argument
* Wed Jun 16 2021 Richard W.M. Jones <rjones@redhat.com> - 2.37-3
- Rebuild for updated pcre2
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 2.37-2
- Rebuilt for Python 3.10
* Tue Jun 1 2021 Karel Zak <kzak@redhat.com> - 2.37-1
- upgrade to v2.37
- introduce util-linux-core subpackage
* Fri May 14 2021 Karel Zak <kzak@redhat.com> - 2.37-0.1
- upgrade to v2.37-rc2
https://kernel.org/pub/linux/utils/util-linux/v2.37/v2.37-ReleaseNotes
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.36.2-3
- Rebuilt for updated systemd-rpm-macros
See https://pagure.io/fesco/issue/2583.
* Tue Mar 2 2021 Karel Zak <kzak@redhat.com> - 2.36.2-2
- spec file cleanup https://src.fedoraproject.org/rpms/util-linux/pull-request/9
* Fri Feb 12 2021 Karel Zak <kzak@redhat.com> - 2.36.2-1
- upgrade to stable upstream 2.36.2
https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.36/v2.36.2-ReleaseNotes
* Wed Jan 27 2021 Kelvin Fan <kfan@redhat.com> - 2.36.1-4
- Add patch to add /run/motd.d to default MOTD_FILE in login(1)
@ -962,7 +1036,7 @@ fi
* Mon Nov 16 2020 Karel Zak <kzak@redhat.com> - 2.36.1-1
- upgrade to stable upstream 2.36.1
* Tue Jul 14 2020 Tom Stellard <tstellar@redhat.com> - 2.36-4
* Thu Nov 12 2020 Tom Stellard <tstellar@redhat.com> - 2.36-4
- Use make macros
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro

1
uuidd-tmpfiles.conf Normal file
View File

@ -0,0 +1 @@
d /run/uuidd 2775 uuidd uuidd