1 # Maintainer: Tom Gundersen <teg@jklm.no>
2 # Maintainer: Dave Reisner <dreisner@archlinux.org>
3 # Contributor: judd <jvinet@zeroflux.org>
6 pkgname=(util-linux util-linux-libs)
8 _realver=${_pkgmajor}.1
11 pkgdesc='Miscellaneous system utilities for Linux'
12 url='https://github.com/karelzak/util-linux'
14 makedepends=('asciidoctor' 'libcap-ng' 'libxcrypt' 'python' 'systemd')
17 validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284') # Karel Zak
18 source=("https://www.kernel.org/pub/linux/utils/util-linux/v${_pkgmajor}/${pkgbase}-${_realver}.tar."{xz,sign}
19 pam-{login,common,runuser,su}
22 'rfkill-unblock_.service'
23 'rfkill-block_.service')
24 sha256sums=('60492a19b44e6cf9a3ddff68325b333b8b52b6c59ce3ebd6a0ecaa4c5117e84f'
26 '99cd77f21ee44a0c5e57b0f3670f711a00496f198fc5704d7e44f5d817c81a0f'
27 '57e057758944f4557762c6def939410c04ca5803cbdd2bfa2153ce47ffe7a4af'
28 '48d6fba767631e3dd3620cf02a71a74c5d65a525d4c4ce4b5a0b7d9f41ebfea1'
29 '3f54249ac2db44945d6d12ec728dcd0d69af0735787a8b078eacd2c67e38155b'
30 '10b0505351263a099163c0d928132706e501dd0a008dac2835b052167b14abe3'
31 '7423aaaa09fee7f47baa83df9ea6fef525ff9aec395c8cbd9fe848ceb2643f37'
32 '8ccec10a22523f6b9d55e0d6cbf91905a39881446710aa083e935e8073323376'
33 'a22e0a037e702170c7d88460cc9c9c2ab1d3e5c54a6985cd4a164ea7beff1b36')
36 cd "${pkgbase}-${_realver}"
43 --localstatedir=/var \
44 --enable-usrdir-path \
45 --enable-fs-paths-default=/usr/bin:/usr/local/bin \
56 package_util-linux() {
57 conflicts=('rfkill' 'hardlink')
58 provides=('rfkill' 'hardlink')
59 replaces=('rfkill' 'hardlink')
60 depends=('pam' 'shadow' 'coreutils' 'systemd-libs' 'libsystemd.so'
61 'libudev.so' 'libcap-ng' 'libxcrypt' 'libcrypt.so' 'util-linux-libs'
62 'libmagic.so' 'libncursesw.so')
63 optdepends=('words: default dictionary for look')
64 backup=(etc/pam.d/chfn
72 _python_stdlib="$(python -c 'import sysconfig; print(sysconfig.get_paths()["stdlib"])')"
74 make -C "${pkgbase}-${_realver}" DESTDIR="${pkgdir}" usrsbin_execdir=/usr/bin install
76 # remove static libraries
77 rm "${pkgdir}"/usr/lib/lib*.a*
79 # setuid chfn and chsh
80 chmod 4755 "${pkgdir}"/usr/bin/{newgrp,ch{sh,fn}}
82 # install PAM files for login-utils
83 install -Dm0644 pam-common "${pkgdir}/etc/pam.d/chfn"
84 install -m0644 pam-common "${pkgdir}/etc/pam.d/chsh"
85 install -m0644 pam-login "${pkgdir}/etc/pam.d/login"
86 install -m0644 pam-runuser "${pkgdir}/etc/pam.d/runuser"
87 install -m0644 pam-runuser "${pkgdir}/etc/pam.d/runuser-l"
88 install -m0644 pam-su "${pkgdir}/etc/pam.d/su"
89 install -m0644 pam-su "${pkgdir}/etc/pam.d/su-l"
91 # TODO(dreisner): offer this upstream?
92 sed -i '/ListenStream/ aRuntimeDirectory=uuidd' "${pkgdir}/usr/lib/systemd/system/uuidd.socket"
94 # runtime libs are shipped as part of util-linux-libs
95 install -d -m0755 util-linux-libs/lib/
96 mv "$pkgdir"/usr/lib/lib*.so* util-linux-libs/lib/
97 mv "$pkgdir"/usr/lib/pkgconfig util-linux-libs/lib/pkgconfig
98 mv "$pkgdir"/usr/include util-linux-libs/include
99 mv "$pkgdir"/"${_python_stdlib}"/site-packages util-linux-libs/site-packages
100 rmdir "$pkgdir"/"${_python_stdlib}"
101 mv "$pkgdir"/usr/share/man/man3 util-linux-libs/man3
103 # install systemd-sysusers
104 install -Dm0644 util-linux.sysusers \
105 "${pkgdir}/usr/lib/sysusers.d/util-linux.conf"
107 install -Dm0644 60-rfkill.rules \
108 "${pkgdir}/usr/lib/udev/rules.d/60-rfkill.rules"
110 install -Dm0644 rfkill-unblock_.service \
111 "${pkgdir}/usr/lib/systemd/system/rfkill-unblock@.service"
112 install -Dm0644 rfkill-block_.service \
113 "${pkgdir}/usr/lib/systemd/system/rfkill-block@.service"
116 package_util-linux-libs() {
117 pkgdesc="util-linux runtime libraries"
119 provides=('libutil-linux' 'libblkid.so' 'libfdisk.so' 'libmount.so' 'libsmartcols.so' 'libuuid.so')
120 conflicts=('libutil-linux')
121 replaces=('libutil-linux')
122 optdepends=('python: python bindings to libmount')
124 install -d -m0755 "$pkgdir"/{"${_python_stdlib}",usr/share/man/}
125 mv util-linux-libs/lib/* "$pkgdir"/usr/lib/
126 mv util-linux-libs/include "$pkgdir"/usr/include
127 mv util-linux-libs/site-packages "$pkgdir"/"${_python_stdlib}"/site-packages
128 mv util-linux-libs/man3 "$pkgdir"/usr/share/man/man3