+# TODO
+# - remote chfn/chsh (BR: libuser)? - but PLD uses pwdutils/shadow implementation currently
+# - verify initrd tools set:
+# - I've taken list from 2.21.3 package, but there was no explicit list, so
+# there are probably some unneeded tools
+# - chrt is not built now (because of --disable-schedutils), but it's probably not needed
+# - fsck is not built now (because of --disable-libmount)
+# - maybe we want some more now?
#
# Conditional build:
-%bcond_with uClibc # link initrd version with static glibc instead of uClibc
+%bcond_with uClibc # link initrd version with static glibc instead of uClibc
%bcond_without dietlibc # link initrd version with dietlibc instead of uClibc
-%bcond_without selinux # SELinux support
+%bcond_without selinux # SELinux support
+%bcond_without su # su/runuser programs
%if "%{pld_release}" == "ac"
-%bcond_with initrd # don't build initrd version
-%bcond_with fallocate # fallocate utility (needs glibc 2.11 to compile)
+%bcond_with initrd # don't build initrd version
+%bcond_with fallocate # fallocate utility (needs glibc 2.11 to compile)
%else
-%bcond_without initrd # don't build initrd version
+%bcond_with initrd # don't build initrd version
%bcond_without fallocate # fallocate utility (needs glibc 2.11 to compile)
%endif
%if "%{pld_release}" == "ac"
%define pam_ver 0.79.0
%else
-%define pam_ver 0.99.7.1
+%define pam_ver 1:1.1.8-5
%endif
Summary: Collection of basic system utilities for Linux
Summary(ru.UTF-8): Набор базовых системных утилит для Linux
Summary(tr.UTF-8): Temel sistem araçları
Summary(uk.UTF-8): Набір базових системних утиліт для Linux
-Name: util-linux-ng
-Version: 2.19
-Release: 0.1
-License: GPL
+Name: util-linux
+Version: 2.28
+Release: 2
+License: GPL v2+
Group: Applications/System
-Source0: http://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/util-linux-%{version}.tar.bz2
-# Source0-md5: 590ca71aad0b254e2631d84401f28255
-Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/util-linux-non-english-man-pages.tar.bz2
+Source0: https://www.kernel.org/pub/linux/utils/util-linux/v2.28/%{name}-%{version}.tar.xz
+# Source0-md5: e534e6ccc49107e5d31c329af798ef7d
+Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source1-md5: 3c940c7e7fe699eaa2ddb1bffb3de2fe
Source2: login.pamd
-Source3: util-linux-blockdev.init
-Source4: util-linux-blockdev.sysconfig
-Patch0: %{name}-ppc.patch
-Patch1: %{name}-union-mount.patch
-Patch2: util-linux-ctrlaltdel-man.patch
-Patch3: util-linux-fdformat-ide.patch
-Patch4: util-linux-fhs.patch
-Patch5: util-linux-hotkeys.patch
-Patch7: util-linux-login-lastlog.patch
-Patch8: util-linux-procpartitions.patch
-Patch9: util-linux-swaponsymlink.patch
-Patch10: util-linux-diet.patch
-URL: http://userweb.kernel.org/~kzak/util-linux/
+Source3: %{name}-blockdev.init
+Source4: %{name}-blockdev.sysconfig
+Source6: su.pamd
+Source7: su-l.pamd
+Source8: runuser.pamd
+Source9: runuser-l.pamd
+Source10: nologin.c
+Source11: nologin.8
+Source12: blockdev.service
+Source13: blockdev.sh
+Patch0: %{name}-fdformat-ide.patch
+Patch1: %{name}-fhs.patch
+Patch2: %{name}-login-lastlog.patch
+Patch3: %{name}-procpartitions.patch
+Patch4: su-paths.patch
+Patch5: %{name}-diet.patch
+URL: https://github.com/karelzak/util-linux
BuildRequires: audit-libs-devel >= 1.0.6
-BuildRequires: autoconf
+BuildRequires: autoconf >= 2.60
BuildRequires: automake >= 1:1.10
-BuildRequires: gettext-devel
+BuildRequires: gettext-tools >= 0.14.1
%{?with_fallocate:BuildRequires: glibc-devel >= 6:2.11}
-BuildRequires: gtk-doc-automake
-%{?with_selinux:BuildRequires: libselinux-devel}
+BuildRequires: gtk-doc >= 1.10
+BuildRequires: gtk-doc-automake >= 1.10
+BuildRequires: libcap-ng-devel
+%{?with_selinux:BuildRequires: libselinux-devel >= 2.0}
%{?with_selinux:BuildRequires: libsepol-devel}
-BuildRequires: libtool
+BuildRequires: libtool >= 2:2.2
BuildRequires: linux-libc-headers >= 7:2.6.27
BuildRequires: ncurses-devel >= 5.0
BuildRequires: pam-devel >= %{pam_ver}
BuildRequires: pkgconfig
+BuildRequires: python3-devel
+BuildRequires: readline-devel
BuildRequires: rpm >= 4.4.9-56
-BuildRequires: rpmbuild(macros) >= 1.470
+BuildRequires: rpmbuild(macros) >= 1.671
BuildRequires: sed >= 4.0
+BuildRequires: tar >= 1:1.22
+BuildRequires: udev-devel
+BuildRequires: xz
BuildRequires: zlib-devel
%if %{with initrd}
%if %{with uClibc}
BuildRequires: uClibc-static >= 2:0.9.29
%else
%if %{with dietlibc}
-BuildRequires: dietlibc-static >= 2:0.32-7
+BuildRequires: dietlibc-static >= 2:0.32-14
%else
BuildRequires: glibc-static
%endif
%endif
%endif
+Requires: libblkid = %{version}-%{release}
+Requires: libfdisk = %{version}-%{release}
+%{?with_selinux:Requires: libselinux >= 2.0}
+Requires: libsmartcols = %{version}-%{release}
Requires: pam >= %{pam_ver}
+Provides: eject = %{version}-%{release}
Provides: fdisk
Provides: linux32
Provides: sparc32
-Provides: util-linux = %{version}-%{release}
Obsoletes: cramfs
+Obsoletes: eject
Obsoletes: ionice
Obsoletes: linux32
Obsoletes: rawdevices
Obsoletes: schedutils
Obsoletes: setarch
Obsoletes: sparc32
-Obsoletes: util-linux
+Obsoletes: util-linux-chkdupexe
+Obsoletes: util-linux-ng < 2.20-1
Obsoletes: util-linux-suids
+Conflicts: SysVinit-tools < 2.88-15
Conflicts: e2fsprogs < 1.41.8-5
+Conflicts: rc-scripts < 0.4.9-2
Conflicts: shadow-extras < 1:4.0.3-6
+%if %{with su}
+Conflicts: coreutils < 8.19
+%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define debugcflags -O1 -g
Summary(pl.UTF-8): Obsługa blockdev
Group: Applications/System
Requires(post,preun): /sbin/chkconfig
+Requires(post,preun,postun): systemd-units >= 38
Requires: coreutils
-Requires: rc-scripts
+Requires: rc-scripts >= 0.4.3.0
+Requires: systemd-units >= 38
%description -n blockdev
The utility blockdev allows one to call block device ioctls from the
Summary(tr.UTF-8): Yerel-çevrim aygıtlarının kurulması ve ayarlanması için programlar
Summary(uk.UTF-8): Програми для конфігурації loopback-пристроїв
Group: Applications/System
+Requires: libsmartcols = %{version}-%{release}
%description -n losetup
Linux supports a special block device called the loopback device,
Summary(tr.UTF-8): Dosya sistemlerini bağlamak ve çözmek için programlar
Summary(uk.UTF-8): Програми для монтування та розмонтування файлових систем
Group: Applications/System
+Requires: libmount = %{version}-%{release}
+Requires: libsmartcols = %{version}-%{release}
+Conflicts: SysVinit < 2.86-26
+# C: nfs-utils-common is opposite to http://cvs.pld-linux.org/packages/nfs-utils/nfs-utils.spec?r1=1.165&r2=1.166
Conflicts: nfs-utils-common < 1.1.3-3
%description -n mount
дерева. Swapon та swapoff, відповідно, дозволяє та заборонює свопінг у
визначені файли або пристрої.
-%package chkdupexe
-Summary: chkdupexe - find duplicate executables
-Summary(pl.UTF-8): chkdupexe odszukuje powtarzające się pliki uruchamialne
-Group: Applications/System
-Provides: util-linux-chkdupexe = %{version}-%{release}
-Obsoletes: util-linux-chkdupexe
-
-%description chkdupexe
-chkdupexe will scan the union of $PATH and a hardcoded list of common
-locations for binaries. It will report dangling symlinks and
-duplicately-named binaries.
-
-%description chkdupexe -l pl.UTF-8
-chkdupexe przeszukuje katalogi z $PATH oraz inne powszechnie znane
-katalogi z plikami uruchamialnymi i informuje o powtarzających się
-plikach w różnych katalogach.
-
%package -n tunelp
Summary: Configures kernel parallel port driver
Summary(de.UTF-8): Konfiguriert den Kerneltreiber für den parallelen Port
License: LGPL v2.1+
Group: Libraries
Requires: libuuid = %{version}-%{release}
-Obsoletes: util-linux-ng-libs
+Obsoletes: util-linux-ng-libs < 2.20-1
%description -n libblkid
Library to handle device identification and token extraction.
Group: Development/Libraries
Requires: libblkid = %{version}-%{release}
Requires: libuuid-devel = %{version}-%{release}
-Obsoletes: util-linux-ng-devel
+Obsoletes: util-linux-ng-devel < 2.20-1
%description -n libblkid-devel
Header files for blkid library.
Group: Development/Libraries
Requires: libblkid-devel = %{version}-%{release}
Requires: libuuid-static = %{version}-%{release}
-Obsoletes: util-linux-ng-static
+Obsoletes: util-linux-ng-static < 2.20-1
%description -n libblkid-static
Static library to handle device identification and token extraction.
Requires(pre): /usr/sbin/groupmod
Requires(pre): /usr/sbin/useradd
Requires(pre): /usr/sbin/usermod
+Requires(post,preun,postun): systemd-units >= 38
Requires: libuuid = %{version}-%{release}
+Requires: systemd-units >= 38
Provides: group(uuidd)
Provides: user(uuidd)
Conflicts: libuuid < 1.40.5-0.1
(uuidd) gwarantującego unikalność generowania UUID-ów opartych na
czasie nawet przy bardzo dużej częstotliwości na systemach SMP.
+%package -n libfdisk
+Summary: fdisk library
+Summary(pl.UTF-8): Biblioteka fdisk
+License: LGPL v2.1+
+Group: Libraries
+Requires: libblkid = %{version}-%{release}
+Requires: libuuid = %{version}-%{release}
+
+%description -n libfdisk
+fdisk library.
+
+%description -n libfdisk -l pl.UTF-8
+Biblioteka fdisk.
+
+%package -n libfdisk-devel
+Summary: Header files for fdisk library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki fdisk
+License: LGPL v2.1+
+Group: Development/Libraries
+Requires: libblkid-devel = %{version}-%{release}
+Requires: libfdisk = %{version}-%{release}
+Requires: libuuid-devel = %{version}-%{release}
+
+%description -n libfdisk-devel
+Header files for fdisk library.
+
+%description -n libfdisk-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki fdisk.
+
+%package -n libfdisk-static
+Summary: Static version of fdisk library
+Summary(pl.UTF-8): Statyczna wersja biblioteki fdisk
+License: LGPL v2.1+
+Group: Development/Libraries
+Requires: libfdisk-devel = %{version}-%{release}
+
+%description -n libfdisk-static
+Static version of fdisk library.
+
+%description -n libfdisk-static -l pl.UTF-8
+Statyczna wersja biblioteki fdisk.
+
%package -n libmount
Summary: Library to handle mounting-related tasks
Summary(pl.UTF-8): Biblioteka obsługująca zadania związane z montowaniem
-License: LGPL
+License: LGPL v2.1+
Group: Libraries
Requires: libblkid = %{version}-%{release}
%package -n libmount-devel
Summary: Header files for mount library
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki mount
-License: LGPL
+License: LGPL v2.1+
Group: Development/Libraries
Requires: libblkid-devel = %{version}-%{release}
Requires: libmount = %{version}-%{release}
%package -n libmount-static
Summary: Static version of mount library
Summary(pl.UTF-8): Statyczna wersja biblioteki mount
-License: LGPL
+License: LGPL v2.1+
Group: Development/Libraries
Requires: libmount-devel = %{version}-%{release}
%description -n libmount-static -l pl.UTF-8
Statyczna wersja biblioteki mount.
-%package -n libmount-dietlibc
-Summary: Static dietlibc mount library
-Summary(pl.UTF-8): Statyczna biblioteka mount dla dietlibc
-License: LGPL v2.1+
-Group: Development/Libraries
-Requires: libblkid-devel = %{version}-%{release}
-Requires: libblkid-dietlibc = %{version}-%{release}
-Requires: libuuid-devel = %{version}-%{release}
-Requires: libuuid-dietlibc = %{version}-%{release}
+%package -n python3-libmount
+Summary: Python 3.x libmount bindings
+Summary(pl.UTF-8): Wiązania Pythona 3.x do biblioteki libmount
+License: LGPL v3+
+Group: Libraries/Python
+Requires: libmount = %{version}-%{release}
-%description -n libmount-dietlibc
-Static dietlibc version of mount library.
+%description -n python3-libmount
+Python 3.x libmount bindings.
-%description -n libmount-dietlibc -l pl.UTF-8
-Statyczna wersja biblioteki mount dla dietlibc.
+%description -n python3-libmount -l pl.UTF-8
+Wiązania Pythona 3.x do biblioteki libmount.
%package -n fsck
Summary: Check and repair a Linux file system
Summary(pl.UTF-8): Sprawdzanie i naprawa linuksowego systemu plików
Group: Applications/System
+Requires: libblkid = %{version}-%{release}
%description -n fsck
Check and repair a Linux file system.
%description -n fsck -l pl.UTF-8
Sprawdzanie i naprawa linuksowego systemu plików.
+%package -n libsmartcols
+Summary: Library to handle tables and trees
+Summary(pl.UTF-8): Biblioteka do obsługi tabelek i drzewek
+License: LGPL
+Group: Libraries
+
+%description -n libsmartcols
+Library to handle tables and trees.
+
+%description -n libsmartcols -l pl.UTF-8
+Biblioteka do obsługi tabelek i drzewek.
+
+%package -n libsmartcols-devel
+Summary: Header files for smartcols library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki smartcols
+License: LGPL
+Group: Development/Libraries
+Requires: libsmartcols = %{version}-%{release}
+
+%description -n libsmartcols-devel
+Header files for smartcols library.
+
+%description -n libsmartcols-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki smartcols.
+
+%package -n libsmartcols-static
+Summary: Static version of smartcols library
+Summary(pl.UTF-8): Statyczna wersja biblioteki smartcols
+License: LGPL
+Group: Development/Libraries
+Requires: libsmartcols-devel = %{version}-%{release}
+
+%description -n libsmartcols-static
+Static version of smartcols library.
+
+%description -n libsmartcols-static -l pl.UTF-8
+Statyczna wersja biblioteki smartcols.
+
%package initrd
Summary: blkid - initrd version
Summary(pl.UTF-8): blkid - wersja dla initrd
Group: Base
+Obsoletes: util-linux-ng-initrd < 2.20-1
Conflicts: geninitrd < 10000.10
%description initrd
Pakiet ten zawiera narzędzie blkid do rozpoznawania partycji przez
etykietę lub UUID - statycznie skonsolidowane na potrzeby initrd.
+%package -n bash-completion-util-linux
+Summary: bash completion for util-linux commands
+Summary(pl.UTF-8): Bashowe dopełnianie parametrów dla poleceń z pakietu util-linux
+Group: Applications/Shells
+Requires: %{name} = %{version}-%{release}
+Requires: bash-completion >= 2.0
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
+
+%description -n bash-completion-util-linux
+Bash completion for util-linux commands.
+
+%description -n bash-completion-util-linux -l pl.UTF-8
+Bashowe dopełnianie parametrów dla poleceń z pakietu util-linux.
+
%prep
-%setup -q -a1 -n util-linux-%{version}
+%setup -q -a1
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
-%patch7 -p1
-%patch8 -p1
-%patch9 -p1
-%patch10 -p1
+%{?with_initrd:%patch5 -p1}
+
+cp -p %{SOURCE10} nologin.c
-sed -i -e 's/-lncursesw/-lncursesw -ltinfow/' configure.ac
+%{__rm} po/stamp-po
%build
%{__gettextize}
export CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses -DHAVE_LSEEK64_PROTOTYPE -DHAVE_LLSEEK_PROTOTYPE"
%if %{with initrd}
%{?with_uClibc:xCC="%{_target_cpu}-uclibc-gcc"}
-%{?with_dietlibc:xCC="diet %{__cc}"; xCC=${xCC#*ccache }}
+%{?with_dietlibc:xCC="%{__cc}"; xCC="diet ${xCC#*ccache }"}
%configure \
%if %{with dietlibc}
- ac_cv_header_crypt_h="no" \
+ ac_cv_header_crypt_h=no \
+ ac_cv_header_stdio_ext_h=no \
%endif
CC="$xCC" \
+%if "%{?configure_cache}" == "1"
+ --cache-file=%{?configure_cache_file}%{!?configure_cache_file:configure}-initrd.cache \
+%endif
+ --exec-prefix= \
+ --bindir=/bin \
+ --sbindir=/sbin \
+ --libdir=/%{_lib} \
--disable-shared \
--enable-static \
- --disable-fsck \
- --disable-login-utils \
+ --disable-agetty \
+ --disable-chfn-chsh \
+ --disable-cramfs \
+ --disable-kill \
+ --disable-ldattach \
+ --disable-libmount \
+ --disable-login \
+ --disable-losetup \
+ --disable-minix \
+ --disable-newgrp \
+ --disable-partx \
+ --disable-raw \
+ --disable-runuser \
--disable-schedutils \
+ --disable-setarch \
--disable-silent-rules \
+ --disable-su \
+ --disable-sulogin \
+ --disable-tunelp \
--disable-use-tty-group \
+ --disable-utmpdump \
+ --disable-uuidd \
+ --disable-vipw \
--disable-wall \
--without-audit \
--without-ncurses \
- --without-pam \
- --without-selinux
+ --without-selinux \
+ --without-smack
# configure gets it unconditionally wrong
-sed -i -e 's/#define HAVE_WIDECHAR 1//' config.h
+%{__sed} -i -e 's/#define HAVE_WIDECHAR 1//' config.h
-sed -i -e 's/ cal\$(EXEEXT) / /; s/ lsblk\$(EXEEXT)//' misc-utils/Makefile
+%{__make} \
+%if %{with uClibc}
+ LDFLAGS="-Wl,-static"
+%endif
+%if %{with dietlibc}
+ CPPFLAGS="$CPPFLAGS -D_BSD_SOURCE" \
+ LDFLAGS="-lcompat"
+%endif
-for dir in shlibs/* disk-utils misc-utils fsck fdisk schedutils hwclock; do
- %{__make} -C $dir \
- %if %{with uClibc}
- LDFLAGS="-Wl,-static"
- %endif
- %if %{with dietlibc}
- CPPFLAGS="$CPPFLAGS -D_BSD_SOURCE" \
- LDFLAGS="-lcompat"
- %endif
- # empty line required because there is a backslash up there
- %{__make} -C $dir install DESTDIR=`pwd`/initrd
-done
+%{__make} install \
+ DESTDIR=$(pwd)/initrd
%{__make} clean
%endif
--disable-silent-rules \
--disable-use-tty-group \
--disable-wall \
+ --enable-chfn-chsh \
--enable-kill \
+ --enable-libblkid \
+ --enable-line \
+ --enable-login \
--enable-login-chown-vcs \
- --enable-login-utils \
+ --enable-newgrp \
--enable-partx \
+ --enable-runuser%{!?with_su:=no} \
+ --enable-su%{!?with_su:=no} \
+ --enable-sulogin \
+ --enable-tunelp \
+ --enable-utmpdump \
+ --enable-vipw \
--enable-write \
+ --with-python=3 \
--with-audit \
- --with-pam \
- --with%{!?with_selinux:out}-selinux
+ --with-bashcompletiondir=/usr/share/bash-completion/completions \
+ --with-selinux%{!?with_selinux:=no} \
+ --with-smack \
+ --with-readline
%{__make}
+%{__cc} %{rpmcflags} nologin.c -o nologin
+
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,sysconfig,security} \
- $RPM_BUILD_ROOT{/%{_lib},/var/{lock,lib/libuuid}}
+ $RPM_BUILD_ROOT{/%{_lib},/var/{lock,lib/libuuid}} \
+ $RPM_BUILD_ROOT{/lib/systemd/pld-helpers.d,%{systemdunitdir}}
%{?with_dietlibc:install -d $RPM_BUILD_ROOT%{dietlibdir}}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
-sed -i -e 's,/usr/spool/mail,/var/mail,g' $RPM_BUILD_ROOT%{_mandir}/man1/login.1
+%{__mv} $RPM_BUILD_ROOT%{_sbindir}/{addpart,delpart,partx} $RPM_BUILD_ROOT/sbin
+%{__mv} $RPM_BUILD_ROOT/sbin/raw $RPM_BUILD_ROOT%{_bindir}
-mv $RPM_BUILD_ROOT%{_sbindir}/{addpart,delpart,partx} $RPM_BUILD_ROOT/sbin
+install -p nologin $RPM_BUILD_ROOT/sbin
+cp -p %{SOURCE11} $RPM_BUILD_ROOT%{_mandir}/man8
-cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/login
+cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/login
install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/blockdev
-cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/blockdev
+cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/blockdev
+cp -p %{SOURCE12} $RPM_BUILD_ROOT%{systemdunitdir}/blockdev.service
+cp -p %{SOURCE13} $RPM_BUILD_ROOT/lib/systemd/pld-helpers.d/blockdev.sh
+%if %{with su}
+ln -s ../sbin/runuser $RPM_BUILD_ROOT/bin/runuser
+cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/su
+cp -p %{SOURCE7} $RPM_BUILD_ROOT/etc/pam.d/su-l
+cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/pam.d/runuser
+cp -p %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/runuser-l
+%endif
:> $RPM_BUILD_ROOT/etc/security/blacklist.login
:> $RPM_BUILD_ROOT/var/lock/wtmpxlock
:> $RPM_BUILD_ROOT%{_sysconfdir}/blkid.tab
-for lib in blkid uuid mount; do
+for lib in blkid fdisk mount smartcols uuid; do
mv $RPM_BUILD_ROOT%{_libdir}/lib${lib}.so.* $RPM_BUILD_ROOT/%{_lib}
ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/lib${lib}.so.*.*.*) \
$RPM_BUILD_ROOT%{_libdir}/lib${lib}.so
done
-ln -sf hwclock $RPM_BUILD_ROOT/sbin/clock
-echo '.so hwclock.8' > $RPM_BUILD_ROOT%{_mandir}/man8/clock.8
+# python module
+%{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/libmount/pylibmount.la
+# obsoleted by pkg-config (libuuid.la temporarily kept because of packages built with it)
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib{blkid,fdisk,mount,smartcols}.la
+
+ln -s hwclock $RPM_BUILD_ROOT/sbin/clock
+echo '.so man8/hwclock.8' > $RPM_BUILD_ROOT%{_mandir}/man8/clock.8
+
+ln -s utmpdump $RPM_BUILD_ROOT%{_bindir}/utmpx-dump
+ln -s mkswap $RPM_BUILD_ROOT/sbin/mkfs.swap
for d in cs de es fi fr hu id it ja ko nl pl ; do
for m in man1 man5 man8 ; do
if [ -d man/$d/$m ]; then
install -d $RPM_BUILD_ROOT%{_mandir}/$d/$m
- cp -a man/$d/$m/* $RPM_BUILD_ROOT%{_mandir}/$d/$m
+ cp -p man/$d/$m/* $RPM_BUILD_ROOT%{_mandir}/$d/$m
fi
done
done
+# it's been moved from man1 to man8
+for d in es ja ko ; do
+ mv -f $RPM_BUILD_ROOT%{_mandir}/$d/man1/readprofile.1 \
+ $RPM_BUILD_ROOT%{_mandir}/$d/man8/readprofile.8
+ %{__sed} -i -e 's/READPROFILE 1/READPROFILE 8/' $RPM_BUILD_ROOT%{_mandir}/$d/man8/readprofile.8
+done
+# fix inconsistent man links
+echo '.so man8/hwclock.8' > $RPM_BUILD_ROOT%{_mandir}/es/man8/clock.8
+echo '.so man8/hwclock.8' > $RPM_BUILD_ROOT%{_mandir}/ja/man8/clock.8
+echo '.so man8/swapon.8' > $RPM_BUILD_ROOT%{_mandir}/es/man8/swapoff.8
+echo '.so man8/swapon.8' > $RPM_BUILD_ROOT%{_mandir}/it/man8/swapoff.8
+echo '.so man8/swapon.8' > $RPM_BUILD_ROOT%{_mandir}/ja/man8/swapoff.8
+echo '.so man8/swapon.8' > $RPM_BUILD_ROOT%{_mandir}/ko/man8/swapoff.8
+echo '.so man8/swapon.8' > $RPM_BUILD_ROOT%{_mandir}/pl/man8/swapoff.8
# cleanup, remove files not included in package
%{__rm} $RPM_BUILD_ROOT%{_bindir}/{chfn,chsh,newgrp} \
$RPM_BUILD_ROOT%{_sbindir}/{vigr,vipw} \
$RPM_BUILD_ROOT%{_mandir}/man1/{chfn,chsh,newgrp}.1 \
$RPM_BUILD_ROOT%{_mandir}/man8/{vigr,vipw}.8 \
- $RPM_BUILD_ROOT%{_mandir}/*/man1/{arch,reset}.1 \
+ $RPM_BUILD_ROOT%{_mandir}/*/man1/{arch,chkdupexe,ddate,reset}.1 \
$RPM_BUILD_ROOT%{_mandir}/*/man5/nfs.5 \
- $RPM_BUILD_ROOT%{_mandir}/*/man8/{elvtune,setfdprm,sln,ramsize,raw,rdev,rootflags,vidmode}.8
+ $RPM_BUILD_ROOT%{_mandir}/*/man8/{cytune,elvtune,setfdprm,sln,ramsize,raw,rdev,rootflags,vidmode}.8
-%ifarch sparc sparc64
+%ifarch sparc sparcv9 sparc64
+# programs not built on sparc
%{__rm} $RPM_BUILD_ROOT%{_mandir}/*/man8/{cfdisk,sfdisk}.8
%endif
+# examples
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}/getopt/getopt-parse.*sh
+
%if %{with initrd}
install -d $RPM_BUILD_ROOT%{_libdir}/initrd
-install -p initrd%{_bindir}/* $RPM_BUILD_ROOT%{_libdir}/initrd/
-install -p initrd%{_sbindir}/* $RPM_BUILD_ROOT%{_libdir}/initrd/
+install -p initrd/bin/* $RPM_BUILD_ROOT%{_libdir}/initrd
+install -p initrd/sbin/* $RPM_BUILD_ROOT%{_libdir}/initrd
ln -s fsck $RPM_BUILD_ROOT%{_libdir}/initrd/e2fsck
# We don't need those
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/initrd/{chkdupexe,ddate,uuidd,mcookie,whereis,mkfs*,fsck.minix,isosize,logger}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/initrd/{cal,col,colcrt,colrm,column,ctrlaltdel,dmesg,flock,fsfreeze,fstrim,getopt,hexdump,ipcmk,ipcrm,ipcs,isosize,logger,lslocks,mcookie,mkfs*,readprofile,renice,rev,rtcwake,script,scriptreplay,setsid,tailf,tunelp,wdctl,whereis}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib{blkid,mount}.la
%if %{with dietlibc}
-cp -a initrd%{_libdir}/lib*.a $RPM_BUILD_ROOT%{dietlibdir}
+cp -a initrd/%{_lib}/lib*.a $RPM_BUILD_ROOT%{dietlibdir}
%endif
%endif
-%find_lang util-linux
+%find_lang %{name}
%clean
rm -rf $RPM_BUILD_ROOT
%post -n blockdev
/sbin/chkconfig --add blockdev
%service blockdev restart
+%systemd_post blockdev.service
%preun -n blockdev
if [ "$1" = "0" ]; then
%service blockdev stop
/sbin/chkconfig --del blockdev
fi
+%systemd_preun blockdev.service
+
+%postun -n blockdev
+%systemd_reload
+
+%triggerpostun -n blockdev -- blockdev < 2.24-4
+%systemd_trigger blockdev.service
%post -n libblkid -p /sbin/ldconfig
%postun -n libblkid -p /sbin/ldconfig
%pre -n uuidd
if [ "$(getgid libuuid 2>/dev/null)" = "222" ]; then
- /usr/sbin/groupmod -n uuidd libuuid
+ /usr/sbin/groupmod -n uuidd libuuid
fi
%groupadd -g 222 uuidd
if [ "$(id -u libuuid 2>/dev/null)" = "222" ]; then
- /usr/sbin/usermod -l uuidd libuuid
+ /usr/sbin/usermod -l uuidd libuuid
fi
%useradd -u 222 -r -d /var/lib/libuuid -s /bin/false -c "UUID generator helper daemon" -g uuidd uuidd
%postun -n uuidd
if [ "$1" = "0" ]; then
- %userremove uuidd
- %groupremove uuidd
+ %userremove uuidd
+ %groupremove uuidd
fi
+%post -n libfdisk -p /sbin/ldconfig
+%postun -n libfdisk -p /sbin/ldconfig
+
%post -n libmount -p /sbin/ldconfig
%postun -n libmount -p /sbin/ldconfig
-%files -f util-linux.lang
+%post -n libsmartcols -p /sbin/ldconfig
+%postun -n libsmartcols -p /sbin/ldconfig
+
+%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc */README.* text-utils/LICENSE.pg NEWS
+%doc AUTHORS ChangeLog NEWS README README.licensing Documentation misc-utils/getopt-parse.{bash,tcsh}
%attr(755,root,root) /sbin/clock
%attr(755,root,root) /sbin/hwclock*
+%attr(755,root,root) /sbin/nologin
%{_mandir}/man8/clock.8*
%{_mandir}/man8/hwclock.8*
+%{_mandir}/man8/nologin.8*
%lang(es) %{_mandir}/es/man8/clock.8*
%lang(es) %{_mandir}/es/man8/hwclock.8*
%lang(ja) %{_mandir}/ja/man8/clock.8*
%attr(755,root,root) %{_bindir}/s390*
%{_mandir}/man8/s390*
%endif
-%ifarch %{ix86} %{x8664}
+%ifarch %{ix86} %{x8664} x32
%attr(755,root,root) %{_bindir}/i386
%{_mandir}/man8/i386*
-%ifarch %{x8664}
+%ifarch %{x8664} x32
%attr(755,root,root) %{_bindir}/x86_64
%{_mandir}/man8/x86_64*
%endif
%attr(755,root,root) /bin/dmesg
%attr(755,root,root) /bin/kill
-%attr(755,root,root) /bin/lsblk
%attr(755,root,root) /bin/more
-%attr(755,root,root) /sbin/addpart
+
+%attr(755,root,root) /bin/wdctl
+
+%attr(755,root,root) /sbin/chcpu
%attr(755,root,root) /sbin/ctrlaltdel
+%attr(755,root,root) /sbin/addpart
+%attr(755,root,root) /sbin/blkdiscard
%attr(755,root,root) /sbin/delpart
+%attr(755,root,root) /sbin/partx
+%attr(755,root,root) /bin/lsblk
%attr(755,root,root) /sbin/fsfreeze
%attr(755,root,root) /sbin/fstrim
%attr(755,root,root) /sbin/mkfs
+%attr(755,root,root) /sbin/mkfs.swap
%attr(755,root,root) /sbin/mkswap
-%attr(755,root,root) /sbin/partx
+%attr(755,root,root) /sbin/sulogin
%attr(755,root,root) /sbin/swaplabel
%if "%{pld_release}" != "ac"
%attr(755,root,root) /sbin/switch_root
%endif
%attr(755,root,root) /sbin/wipefs
+%attr(755,root,root) /sbin/zramctl
%attr(755,root,root) %{_bindir}/cal
%attr(755,root,root) %{_bindir}/chrt
%attr(755,root,root) %{_bindir}/col
%attr(755,root,root) %{_bindir}/colcrt
%attr(755,root,root) %{_bindir}/colrm
%attr(755,root,root) %{_bindir}/column
-%attr(755,root,root) %{_bindir}/cytune
-%attr(755,root,root) %{_bindir}/ddate
+%attr(755,root,root) %{_bindir}/eject
%attr(755,root,root) %{_bindir}/flock
%{?with_fallocate:%attr(755,root,root) %{_bindir}/fallocate}
%attr(755,root,root) %{_bindir}/getopt
%attr(755,root,root) %{_bindir}/ipcs
%attr(755,root,root) %{_bindir}/isosize
%attr(755,root,root) %{_bindir}/line
+%attr(755,root,root) %{_bindir}/last
+%attr(755,root,root) %{_bindir}/lastb
%attr(755,root,root) %{_bindir}/logger
%attr(755,root,root) %{_bindir}/look
%attr(755,root,root) %{_bindir}/lscpu
+%attr(755,root,root) %{_bindir}/lsipc
+%attr(755,root,root) %{_bindir}/lslocks
+%attr(755,root,root) %{_bindir}/lslogins
+%attr(755,root,root) %{_bindir}/lsns
+%attr(755,root,root) %{_bindir}/mesg
%attr(755,root,root) %{_bindir}/mcookie
%attr(755,root,root) %{_bindir}/namei
+%attr(755,root,root) %{_bindir}/nsenter
%attr(755,root,root) %{_bindir}/pg
+%attr(755,root,root) %{_bindir}/prlimit
+%attr(755,root,root) %{_bindir}/raw
%attr(755,root,root) %{_bindir}/rename
%attr(755,root,root) %{_bindir}/renice
%attr(755,root,root) %{_bindir}/rev
%attr(755,root,root) %{_bindir}/script
%attr(755,root,root) %{_bindir}/scriptreplay
+%attr(755,root,root) %{_bindir}/setpriv
%attr(755,root,root) %{_bindir}/setsid
%attr(755,root,root) %{_bindir}/setterm
%attr(755,root,root) %{_bindir}/tailf
%attr(755,root,root) %{_bindir}/taskset
%attr(755,root,root) %{_bindir}/ul
+%attr(755,root,root) %{_bindir}/uname26
%attr(755,root,root) %{_bindir}/unshare
+%attr(755,root,root) %{_bindir}/utmpdump
+%attr(755,root,root) %{_bindir}/utmpx-dump
%attr(755,root,root) %{_bindir}/whereis
%attr(2755,root,tty) %{_bindir}/write
%attr(755,root,root) %{_sbindir}/fdformat
%attr(755,root,root) %{_sbindir}/ldattach
%attr(755,root,root) %{_sbindir}/readprofile
+%attr(755,root,root) %{_sbindir}/resizepart
%attr(755,root,root) %{_sbindir}/rtcwake
+%{systemdunitdir}/fstrim.service
+%{systemdunitdir}/fstrim.timer
+
%{_mandir}/man1/cal.1*
%{_mandir}/man1/chrt.1*
%{_mandir}/man1/col.1*
%{_mandir}/man1/colcrt.1*
%{_mandir}/man1/colrm.1*
%{_mandir}/man1/column.1*
-%{_mandir}/man1/ddate.1*
%{_mandir}/man1/dmesg.1*
+%{_mandir}/man1/eject.1*
%{?with_fallocate:%{_mandir}/man1/fallocate.1*}
%{_mandir}/man1/flock.1*
%{_mandir}/man1/getopt.1*
%{_mandir}/man1/ipcmk.1*
%{_mandir}/man1/ipcs.1*
%{_mandir}/man1/kill.1*
+%{_mandir}/man1/last.1*
+%{_mandir}/man1/lastb.1*
%{_mandir}/man1/line.1*
%{_mandir}/man1/logger.1*
%{_mandir}/man1/look.1*
%{_mandir}/man1/lscpu.1*
+%{_mandir}/man1/lsipc.1*
+%{_mandir}/man1/lslogins.1*
%{_mandir}/man1/mcookie.1*
+%{_mandir}/man1/mesg.1*
%{_mandir}/man1/more.1*
%{_mandir}/man1/namei.1*
+%{_mandir}/man1/nsenter.1*
+%{_mandir}/man1/prlimit.1*
%{_mandir}/man1/pg.1*
-%{_mandir}/man1/readprofile.1*
%{_mandir}/man1/renice.1*
%{_mandir}/man1/rev.1*
%{_mandir}/man1/rename.1*
+%{_mandir}/man1/setpriv.1*
%{_mandir}/man1/setsid.1*
%{_mandir}/man1/script.1*
%{_mandir}/man1/scriptreplay.1*
%{_mandir}/man1/taskset.1*
%{_mandir}/man1/ul.1*
%{_mandir}/man1/unshare.1*
+%{_mandir}/man1/utmpdump.1*
%{_mandir}/man1/whereis.1*
%{_mandir}/man1/write.1*
%{_mandir}/man8/addpart.8*
-%{_mandir}/man8/ctrlaltdel.8*
-%{_mandir}/man8/cytune.8*
+%{_mandir}/man8/blkdiscard.8*
%{_mandir}/man8/delpart.8*
+%{_mandir}/man8/partx.8*
+%{_mandir}/man8/lsblk.8*
+%{_mandir}/man8/lsns.8*
+%{_mandir}/man8/chcpu.8*
+%{_mandir}/man8/ctrlaltdel.8*
%{_mandir}/man8/fdformat.8*
%{_mandir}/man8/fsfreeze.8*
%{_mandir}/man8/fstrim.8*
%{_mandir}/man8/isosize.8*
%{_mandir}/man8/ldattach.8*
-%{_mandir}/man8/lsblk.8*
+%{_mandir}/man8/lslocks.8*
%{_mandir}/man8/mkswap.8*
-%{_mandir}/man8/partx.8*
+%{_mandir}/man8/raw.8*
+%{_mandir}/man8/readprofile.8*
+%{_mandir}/man8/resizepart.8*
%{_mandir}/man8/rtcwake.8*
%{_mandir}/man8/swaplabel.8*
%if "%{pld_release}" != "ac"
%{_mandir}/man8/switch_root.8*
%endif
+%{_mandir}/man8/sulogin.8*
+%{_mandir}/man8/uname26.8*
+%{_mandir}/man8/wdctl.8*
%{_mandir}/man8/wipefs.8*
+%{_mandir}/man8/zramctl.8*
%lang(de) %{_mandir}/de/man1/kill.1*
%lang(de) %{_mandir}/de/man1/more.1*
%lang(es) %{_mandir}/es/man1/colrm.1*
%lang(es) %{_mandir}/es/man1/column.1*
-%lang(es) %{_mandir}/es/man1/ddate.1*
%lang(es) %{_mandir}/es/man1/getopt.1*
%lang(es) %{_mandir}/es/man1/look.1*
%lang(es) %{_mandir}/es/man1/more.1*
%lang(es) %{_mandir}/es/man1/namei.1*
-%lang(es) %{_mandir}/es/man1/readprofile.1*
%lang(es) %{_mandir}/es/man1/rev.1*
%lang(es) %{_mandir}/es/man1/script.1*
%lang(es) %{_mandir}/es/man1/setterm.1*
%lang(es) %{_mandir}/es/man1/ul.1*
%lang(es) %{_mandir}/es/man1/whereis.1*
%lang(es) %{_mandir}/es/man1/write.1*
-%lang(es) %{_mandir}/es/man8/cytune.8*
%lang(es) %{_mandir}/es/man8/ctrlaltdel.8*
%lang(es) %{_mandir}/es/man8/ipcrm.8*
%lang(es) %{_mandir}/es/man8/ipcs.8*
%lang(es) %{_mandir}/es/man8/mkswap.8*
+%lang(es) %{_mandir}/es/man8/readprofile.8*
%lang(es) %{_mandir}/es/man8/renice.8*
%lang(es) %{_mandir}/es/man8/setsid.8*
%lang(ja) %{_mandir}/ja/man1/colcrt.1*
%lang(ja) %{_mandir}/ja/man1/colrm.1*
%lang(ja) %{_mandir}/ja/man1/column.1*
-%lang(ja) %{_mandir}/ja/man1/ddate.1*
%lang(ja) %{_mandir}/ja/man1/getopt.1*
%lang(ja) %{_mandir}/ja/man1/hexdump.1*
%lang(ja) %{_mandir}/ja/man1/kill.1*
%lang(ja) %{_mandir}/ja/man1/line.1*
%lang(ja) %{_mandir}/ja/man1/logger.1*
-%lang(ja) %{_mandir}/ja/man1/login.1*
%lang(ja) %{_mandir}/ja/man1/look.1*
%lang(ja) %{_mandir}/ja/man1/mcookie.1*
%lang(ja) %{_mandir}/ja/man1/more.1*
%lang(ja) %{_mandir}/ja/man1/namei.1*
-%lang(ja) %{_mandir}/ja/man1/readprofile.1*
%lang(ja) %{_mandir}/ja/man1/rename.1*
%lang(ja) %{_mandir}/ja/man1/rev.1*
%lang(ja) %{_mandir}/ja/man1/script.1*
%lang(ja) %{_mandir}/ja/man1/whereis.1*
%lang(ja) %{_mandir}/ja/man1/write.1*
%lang(ja) %{_mandir}/ja/man8/ctrlaltdel.8*
-%lang(ja) %{_mandir}/ja/man8/cytune.8*
%lang(ja) %{_mandir}/ja/man8/dmesg.8*
%lang(ja) %{_mandir}/ja/man8/fdformat.8*
%lang(ja) %{_mandir}/ja/man8/ipcrm.8*
%lang(ja) %{_mandir}/ja/man8/ipcs.8*
%lang(ja) %{_mandir}/ja/man8/isosize.8*
%lang(ja) %{_mandir}/ja/man8/mkswap.8*
+%lang(ja) %{_mandir}/ja/man8/readprofile.8*
%lang(ja) %{_mandir}/ja/man8/renice.8*
%lang(ja) %{_mandir}/ja/man8/setsid.8*
%lang(ko) %{_mandir}/ko/man1/colcrt.1*
%lang(ko) %{_mandir}/ko/man1/colrm.1*
%lang(ko) %{_mandir}/ko/man1/column.1*
-%lang(ko) %{_mandir}/ko/man1/ddate.1*
%lang(ko) %{_mandir}/ko/man1/getopt.1*
%lang(ko) %{_mandir}/ko/man1/hexdump.1*
%lang(ko) %{_mandir}/ko/man1/kill.1*
%lang(ko) %{_mandir}/ko/man1/mcookie.1*
%lang(ko) %{_mandir}/ko/man1/more.1*
%lang(ko) %{_mandir}/ko/man1/namei.1*
-%lang(ko) %{_mandir}/ko/man1/readprofile.1*
%lang(ko) %{_mandir}/ko/man1/rev.1*
%lang(ko) %{_mandir}/ko/man1/script.1*
%lang(ko) %{_mandir}/ko/man1/setterm.1*
%lang(ko) %{_mandir}/ko/man8/ipcrm.8*
%lang(ko) %{_mandir}/ko/man8/ipcs.8*
%lang(ko) %{_mandir}/ko/man8/mkswap.8*
+%lang(ko) %{_mandir}/ko/man8/readprofile.8*
%lang(ko) %{_mandir}/ko/man8/renice.8*
%lang(ko) %{_mandir}/ko/man8/setsid.8*
%lang(pl) %{_mandir}/pl/man8/mkswap.8*
%lang(pl) %{_mandir}/pl/man8/renice.8*
-%lang(ru) %{_mandir}/ru/man1/ddate.1*
-
%attr(755,root,root) /sbin/fdisk
%attr(755,root,root) /sbin/fsck.minix
%attr(755,root,root) /sbin/mkfs.minix
%attr(755,root,root) /sbin/fsck.cramfs
%attr(755,root,root) /sbin/mkfs.cramfs
%attr(755,root,root) /sbin/mkfs.bfs
+%{_mandir}/man8/fsck.cramfs.8*
+%{_mandir}/man8/mkfs.cramfs.8*
+
+%if %{with su}
+%attr(755,root,root) /bin/runuser
+%attr(755,root,root) /sbin/runuser
+%attr(4755,root,root) /bin/su
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/runuser
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/runuser-l
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/su
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/su-l
+%{_mandir}/man1/runuser.1*
+%{_mandir}/man1/su.1*
+%endif
%ghost /var/lock/wtmpxlock
%attr(755,root,root) /sbin/blockdev
%{_mandir}/man8/blockdev.8*
%lang(ja) %{_mandir}/ja/man8/blockdev.8*
+%{systemdunitdir}/blockdev.service
+%attr(755,root,root) /lib/systemd/pld-helpers.d/blockdev.sh
%files -n mount
%defattr(644,root,root,755)
+%attr(755,root,root) /bin/findmnt
+%attr(755,root,root) /bin/mountpoint
%attr(4755,root,root) /bin/mount
%attr(4755,root,root) /bin/umount
%attr(755,root,root) /sbin/pivot_root
%attr(755,root,root) /sbin/swapon
%attr(755,root,root) /sbin/swapoff
+%{_mandir}/man1/mountpoint.1*
%{_mandir}/man5/fstab.5*
-
+%{_mandir}/man8/findmnt.8*
%{_mandir}/man8/mount.8*
%{_mandir}/man8/umount.8*
%{_mandir}/man8/pivot_root.8*
%lang(ko) %{_mandir}/ko/man8/losetup.8*
%lang(pl) %{_mandir}/pl/man8/losetup.8*
-%files chkdupexe
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/chkdupexe
-%{_mandir}/man1/chkdupexe.1*
-%lang(ja) %{_mandir}/ja/man1/chkdupexe.1*
-%lang(ko) %{_mandir}/ko/man1/chkdupexe.1*
-%lang(pl) %{_mandir}/pl/man1/chkdupexe.1*
-
%files -n tunelp
%defattr(644,root,root,755)
%attr(755,root,root) %{_sbindir}/tunelp
%files -n libblkid-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libblkid.so
-%{_libdir}/libblkid.la
%{_includedir}/blkid
%{_pkgconfigdir}/blkid.pc
%{_mandir}/man3/libblkid.3*
%attr(6755,uuidd,uuidd) %{_sbindir}/uuidd
%attr(2775,uuidd,uuidd) /var/lib/libuuid
%{_mandir}/man8/uuidd.8*
+%{systemdunitdir}/uuidd.service
+%{systemdunitdir}/uuidd.socket
+
+%files -n libfdisk
+%defattr(644,root,root,755)
+%doc libfdisk/COPYING
+%attr(755,root,root) /%{_lib}/libfdisk.so.*.*
+%attr(755,root,root) %ghost /%{_lib}/libfdisk.so.1
+
+%files -n libfdisk-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libfdisk.so
+%{_includedir}/libfdisk
+%{_pkgconfigdir}/fdisk.pc
+
+%files -n libfdisk-static
+%defattr(644,root,root,755)
+%{_libdir}/libfdisk.a
%files -n libmount
%defattr(644,root,root,755)
+%doc libmount/COPYING
%attr(755,root,root) /%{_lib}/libmount.so.*.*
%attr(755,root,root) %ghost /%{_lib}/libmount.so.1
-# move to -n mount when mount starts to use libmount
-%attr(755,root,root) /bin/findmnt
-%{_mandir}/man8/findmnt.8*
%files -n libmount-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libmount.so
-%{_libdir}/libmount.la
%{_includedir}/libmount
%{_pkgconfigdir}/mount.pc
%defattr(644,root,root,755)
%{_libdir}/libmount.a
-%if %{with initrd} && %{with dietlibc}
-%files -n libmount-dietlibc
+%files -n python3-libmount
%defattr(644,root,root,755)
-%{dietlibdir}/libmount.a
-%endif
+%dir %{py3_sitedir}/libmount
+%attr(755,root,root) %{py3_sitedir}/libmount/pylibmount.so
+%{py3_sitedir}/libmount/__init__.py
+%{py3_sitedir}/libmount/__pycache__
%files -n fsck
%defattr(644,root,root,755)
%attr(755,root,root) /sbin/fsck
%{_mandir}/man8/fsck.8*
+%files -n libsmartcols
+%defattr(644,root,root,755)
+%attr(755,root,root) /%{_lib}/libsmartcols.so.*.*.*
+%attr(755,root,root) %ghost /%{_lib}/libsmartcols.so.1
+# common for many utilities (hexdump,cal,dmesg,fdisk,cfdisk; also libblkid,libmount?)
+%{_mandir}/man5/terminal-colors.d.5*
+
+%files -n libsmartcols-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libsmartcols.so
+%{_includedir}/libsmartcols
+%{_pkgconfigdir}/smartcols.pc
+
+%files -n libsmartcols-static
+%defattr(644,root,root,755)
+%{_libdir}/libsmartcols.a
+
%if %{with initrd}
%files initrd
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/initrd/*
+%attr(755,root,root) %{_libdir}/initrd/blkid
+%attr(755,root,root) %{_libdir}/initrd/blockdev
+%attr(755,root,root) %{_libdir}/initrd/fdformat
+%attr(755,root,root) %{_libdir}/initrd/fdisk
+%attr(755,root,root) %{_libdir}/initrd/findfs
+%attr(755,root,root) %{_libdir}/initrd/hwclock
+%attr(755,root,root) %{_libdir}/initrd/look
+%attr(755,root,root) %{_libdir}/initrd/mkswap
+%attr(755,root,root) %{_libdir}/initrd/namei
+%attr(755,root,root) %{_libdir}/initrd/rename
+%ifnarch sparc sparcv9 sparc64
+%attr(755,root,root) %{_libdir}/initrd/sfdisk
%endif
+%attr(755,root,root) %{_libdir}/initrd/swaplabel
+%attr(755,root,root) %{_libdir}/initrd/uuidgen
+%attr(755,root,root) %{_libdir}/initrd/wipefs
+# not needed?
+#%attr(755,root,root) %{_libdir}/initrd/chrt
+# not built because of disabled libmount
+#%attr(755,root,root) %{_libdir}/initrd/e2fsck
+#%attr(755,root,root) %{_libdir}/initrd/fsck
+%endif
+
+%files -n bash-completion-util-linux
+%defattr(644,root,root,755)
+/usr/share/bash-completion/completions/*