[arch-commits] Commit in util-linux/repos (11 files)

Christian Hesse eworm at gemini.archlinux.org
Mon Jan 31 14:24:07 UTC 2022


    Date: Monday, January 31, 2022 @ 14:24:07
  Author: eworm
Revision: 435615

archrelease: copy trunk to testing-x86_64

Added:
  util-linux/repos/testing-x86_64/
  util-linux/repos/testing-x86_64/0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch
    (from rev 435614, util-linux/trunk/0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch)
  util-linux/repos/testing-x86_64/60-rfkill.rules
    (from rev 435614, util-linux/trunk/60-rfkill.rules)
  util-linux/repos/testing-x86_64/PKGBUILD
    (from rev 435614, util-linux/trunk/PKGBUILD)
  util-linux/repos/testing-x86_64/pam-common
    (from rev 435614, util-linux/trunk/pam-common)
  util-linux/repos/testing-x86_64/pam-login
    (from rev 435614, util-linux/trunk/pam-login)
  util-linux/repos/testing-x86_64/pam-runuser
    (from rev 435614, util-linux/trunk/pam-runuser)
  util-linux/repos/testing-x86_64/pam-su
    (from rev 435614, util-linux/trunk/pam-su)
  util-linux/repos/testing-x86_64/rfkill-block_.service
    (from rev 435614, util-linux/trunk/rfkill-block_.service)
  util-linux/repos/testing-x86_64/rfkill-unblock_.service
    (from rev 435614, util-linux/trunk/rfkill-unblock_.service)
  util-linux/repos/testing-x86_64/util-linux.sysusers
    (from rev 435614, util-linux/trunk/util-linux.sysusers)

---------------------------------------------------------------+
 0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch |  104 ++++++++
 60-rfkill.rules                                               |    1 
 PKGBUILD                                                      |  130 ++++++++++
 pam-common                                                    |    6 
 pam-login                                                     |    8 
 pam-runuser                                                   |    4 
 pam-su                                                        |   10 
 rfkill-block_.service                                         |   10 
 rfkill-unblock_.service                                       |   10 
 util-linux.sysusers                                           |    2 
 10 files changed, 285 insertions(+)

Copied: util-linux/repos/testing-x86_64/0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch (from rev 435614, util-linux/trunk/0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch)
===================================================================
--- testing-x86_64/0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch	                        (rev 0)
+++ testing-x86_64/0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,104 @@
+From 47831cc02ac0d71c335caecef1753f4c8861277c Mon Sep 17 00:00:00 2001
+From: tamz <totemz at protonmail.com>
+Date: Thu, 6 Jan 2022 11:56:58 +0100
+Subject: [PATCH 1/1] agetty: resolve tty name even if stdin is specified
+
+[kzak at redhat.com: - use "const" for options->tty (and friends)
+                    as expected by get_terminal_name()]
+
+Addresses: https://github.com/util-linux/util-linux/issues/1546
+Signed-off-by: tamz <totemz at protonmail.com>
+Signed-off-by: Karel Zak <kzak at redhat.com>
+---
+ term-utils/agetty.c | 26 ++++++++++++++++++--------
+ 1 file changed, 18 insertions(+), 8 deletions(-)
+
+diff --git a/term-utils/agetty.c b/term-utils/agetty.c
+index 55d373461..22850786d 100644
+--- a/term-utils/agetty.c
++++ b/term-utils/agetty.c
+@@ -190,8 +190,8 @@ struct options {
+ 	char *chroot;			/* Chroot before the login */
+ 	char *login;			/* login program */
+ 	char *logopt;			/* options for login program */
+-	char *tty;			/* name of tty */
+-	char *vcline;			/* line of virtual console */
++	const char *tty;		/* name of tty */
++	const char *vcline;		/* line of virtual console */
+ 	char *term;			/* terminal type */
+ 	char *initstring;		/* modem init string */
+ 	char *issue;			/* alternative issue file or directory */
+@@ -203,6 +203,7 @@ struct options {
+ 	int numspeed;			/* number of baud rates to try */
+ 	int clocal;			/* CLOCAL_MODE_* */
+ 	int kbmode;			/* Keyboard mode if virtual console */
++	int tty_is_stdin;		/* is the tty the standard input stream */
+ 	speed_t speeds[MAX_SPEED];	/* baud rates to be tried */
+ };
+ 
+@@ -319,7 +320,7 @@ static void init_special_char(char* arg, struct options *op);
+ static void parse_args(int argc, char **argv, struct options *op);
+ static void parse_speeds(struct options *op, char *arg);
+ static void update_utmp(struct options *op);
+-static void open_tty(char *tty, struct termios *tp, struct options *op);
++static void open_tty(const char *tty, struct termios *tp, struct options *op);
+ static void termio_init(struct options *op, struct termios *tp);
+ static void reset_vc(const struct options *op, struct termios *tp, int canon);
+ static void auto_baud(struct termios *tp);
+@@ -922,6 +923,15 @@ static void parse_args(int argc, char **argv, struct options *op)
+ 		}
+ 	}
+ 
++	/* resolve the tty path in case it was provided as stdin */
++	if (strcmp(op->tty, "-") == 0) {
++		op->tty_is_stdin = 1;
++		int fd = get_terminal_name(NULL, &op->tty, NULL);
++		if (fd < 0) {
++			log_warn(_("could not get terminal name: %d"), fd);
++		}
++	}
++
+ 	/* On virtual console remember the line which is used for */
+ 	if (strncmp(op->tty, "tty", 3) == 0 &&
+ 	    strspn(op->tty + 3, "0123456789") == strlen(op->tty+3))
+@@ -962,8 +972,8 @@ static void update_utmp(struct options *op)
+ 	time_t t;
+ 	pid_t pid = getpid();
+ 	pid_t sid = getsid(0);
+-	char *vcline = op->vcline;
+-	char *line   = op->tty;
++	const char *vcline = op->vcline;
++	const char *line = op->tty;
+ 	struct utmpx *utp;
+ 
+ 	/*
+@@ -1002,7 +1012,7 @@ static void update_utmp(struct options *op)
+ 			str2memcpy(ut.ut_id, vcline, sizeof(ut.ut_id));
+ 		else {
+ 			size_t len = strlen(line);
+-			char * ptr;
++			const char * ptr;
+ 			if (len >= sizeof(ut.ut_id))
+ 				ptr = line + len - sizeof(ut.ut_id);
+ 			else
+@@ -1030,7 +1040,7 @@ static void update_utmp(struct options *op)
+ #endif				/* SYSV_STYLE */
+ 
+ /* Set up tty as stdin, stdout & stderr. */
+-static void open_tty(char *tty, struct termios *tp, struct options *op)
++static void open_tty(const char *tty, struct termios *tp, struct options *op)
+ {
+ 	const pid_t pid = getpid();
+ 	int closed = 0;
+@@ -1040,7 +1050,7 @@ static void open_tty(char *tty, struct termios *tp, struct options *op)
+ 
+ 	/* Set up new standard input, unless we are given an already opened port. */
+ 
+-	if (strcmp(tty, "-") != 0) {
++	if (!op->tty_is_stdin) {
+ 		char buf[PATH_MAX+1];
+ 		struct group *gr = NULL;
+ 		struct stat st;
+-- 
+2.34.1
+

Copied: util-linux/repos/testing-x86_64/60-rfkill.rules (from rev 435614, util-linux/trunk/60-rfkill.rules)
===================================================================
--- testing-x86_64/60-rfkill.rules	                        (rev 0)
+++ testing-x86_64/60-rfkill.rules	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1 @@
+KERNEL=="rfkill", GROUP="rfkill", MODE="0664"

Copied: util-linux/repos/testing-x86_64/PKGBUILD (from rev 435614, util-linux/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD	                        (rev 0)
+++ testing-x86_64/PKGBUILD	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,130 @@
+# Maintainer: Tom Gundersen <teg at jklm.no>
+# Maintainer: Dave Reisner <dreisner at archlinux.org>
+# Contributor: judd <jvinet at zeroflux.org>
+
+pkgbase=util-linux
+pkgname=(util-linux util-linux-libs)
+_pkgmajor=2.37
+_realver=${_pkgmajor}.3
+pkgver=${_realver/-/}
+pkgrel=2
+pkgdesc='Miscellaneous system utilities for Linux'
+url='https://github.com/karelzak/util-linux'
+arch=('x86_64')
+makedepends=('asciidoctor' 'libcap-ng' 'libxcrypt' 'python' 'systemd')
+license=('GPL2')
+options=('debug' 'strip')
+validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284')  # Karel Zak
+source=("https://www.kernel.org/pub/linux/utils/util-linux/v${_pkgmajor}/${pkgbase}-${_realver}.tar."{xz,sign}
+        '0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch'
+        pam-{login,common,runuser,su}
+        'util-linux.sysusers'
+        '60-rfkill.rules'
+        'rfkill-unblock_.service'
+        'rfkill-block_.service')
+sha256sums=('590c592e58cd6bf38519cb467af05ce6a1ab18040e3e3418f24bcfb2f55f9776'
+            'SKIP'
+            '53395b7e434b32e6fee25f1b6fa59330ab72c1a2f99a17c3d3fd92473379fd9a'
+            '99cd77f21ee44a0c5e57b0f3670f711a00496f198fc5704d7e44f5d817c81a0f'
+            '57e057758944f4557762c6def939410c04ca5803cbdd2bfa2153ce47ffe7a4af'
+            '48d6fba767631e3dd3620cf02a71a74c5d65a525d4c4ce4b5a0b7d9f41ebfea1'
+            '3f54249ac2db44945d6d12ec728dcd0d69af0735787a8b078eacd2c67e38155b'
+            '10b0505351263a099163c0d928132706e501dd0a008dac2835b052167b14abe3'
+            '7423aaaa09fee7f47baa83df9ea6fef525ff9aec395c8cbd9fe848ceb2643f37'
+            '8ccec10a22523f6b9d55e0d6cbf91905a39881446710aa083e935e8073323376'
+            'a22e0a037e702170c7d88460cc9c9c2ab1d3e5c54a6985cd4a164ea7beff1b36')
+
+prepare() {
+  cd "${pkgbase}-${_realver}"
+
+  patch -Np1 < ../0001-agetty-resolve-tty-name-even-if-stdin-is-specified.patch
+}
+
+build() {
+  cd "${pkgbase}-${_realver}"
+
+  ./configure \
+    --prefix=/usr \
+    --libdir=/usr/lib \
+    --bindir=/usr/bin \
+    --sbindir=/usr/bin \
+    --localstatedir=/var \
+    --enable-usrdir-path \
+    --enable-fs-paths-default=/usr/bin:/usr/local/bin \
+    --enable-raw \
+    --enable-vipw \
+    --enable-newgrp \
+    --enable-chfn-chsh \
+    --enable-write \
+    --enable-mesg \
+    --with-python=3
+
+  make
+}
+
+package_util-linux() {
+  conflicts=('rfkill' 'hardlink')
+  provides=('rfkill' 'hardlink')
+  replaces=('rfkill' 'hardlink')
+  depends=('pam' 'shadow' 'coreutils' 'systemd-libs' 'libsystemd.so'
+           'libudev.so' 'libcap-ng' 'libxcrypt' 'libcrypt.so' 'util-linux-libs'
+           'libmagic.so' 'libncursesw.so' 'libreadline.so')
+  optdepends=('python: python bindings to libmount'
+              'words: default dictionary for look')
+  backup=(etc/pam.d/chfn
+          etc/pam.d/chsh
+          etc/pam.d/login
+          etc/pam.d/runuser
+          etc/pam.d/runuser-l
+          etc/pam.d/su
+          etc/pam.d/su-l)
+
+  cd "${pkgbase}-${_realver}"
+
+  make DESTDIR="${pkgdir}" install
+
+  # setuid chfn and chsh
+  chmod 4755 "${pkgdir}"/usr/bin/{newgrp,ch{sh,fn}}
+
+  # install PAM files for login-utils
+  install -Dm0644 "${srcdir}/pam-common" "${pkgdir}/etc/pam.d/chfn"
+  install -m0644 "${srcdir}/pam-common" "${pkgdir}/etc/pam.d/chsh"
+  install -m0644 "${srcdir}/pam-login" "${pkgdir}/etc/pam.d/login"
+  install -m0644 "${srcdir}/pam-runuser" "${pkgdir}/etc/pam.d/runuser"
+  install -m0644 "${srcdir}/pam-runuser" "${pkgdir}/etc/pam.d/runuser-l"
+  install -m0644 "${srcdir}/pam-su" "${pkgdir}/etc/pam.d/su"
+  install -m0644 "${srcdir}/pam-su" "${pkgdir}/etc/pam.d/su-l"
+
+  # TODO(dreisner): offer this upstream?
+  sed -i '/ListenStream/ aRuntimeDirectory=uuidd' "${pkgdir}/usr/lib/systemd/system/uuidd.socket"
+
+  # adjust for usrmove
+  # TODO(dreisner): fix configure.ac upstream so that this isn't needed
+  cd "${pkgdir}"
+  mv usr/sbin/* usr/bin
+  rmdir usr/sbin
+
+  ### runtime libs are shipped as part of util-linux-libs
+  rm "${pkgdir}"/usr/lib/lib*.{a,so}*
+
+  ### install systemd-sysusers
+  install -Dm0644 "${srcdir}/util-linux.sysusers" \
+    "${pkgdir}/usr/lib/sysusers.d/util-linux.conf"
+
+  install -Dm0644 "${srcdir}/60-rfkill.rules" \
+    "${pkgdir}/usr/lib/udev/rules.d/60-rfkill.rules"
+
+  install -Dm0644 "${srcdir}/rfkill-unblock_.service" \
+    "${pkgdir}/usr/lib/systemd/system/rfkill-unblock at .service"
+  install -Dm0644 "${srcdir}/rfkill-block_.service" \
+    "${pkgdir}/usr/lib/systemd/system/rfkill-block at .service"
+}
+
+package_util-linux-libs() {
+  pkgdesc="util-linux runtime libraries"
+  provides=('libutil-linux' 'libblkid.so' 'libfdisk.so' 'libmount.so' 'libsmartcols.so' 'libuuid.so')
+  conflicts=('libutil-linux')
+  replaces=('libutil-linux')
+
+  make -C "${pkgbase}-${_realver}" DESTDIR="${pkgdir}" install-usrlib_execLTLIBRARIES
+}

Copied: util-linux/repos/testing-x86_64/pam-common (from rev 435614, util-linux/trunk/pam-common)
===================================================================
--- testing-x86_64/pam-common	                        (rev 0)
+++ testing-x86_64/pam-common	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth            sufficient      pam_rootok.so
+auth            required        pam_unix.so
+account         required        pam_unix.so
+session         required        pam_unix.so
+password        required        pam_permit.so

Copied: util-linux/repos/testing-x86_64/pam-login (from rev 435614, util-linux/trunk/pam-login)
===================================================================
--- testing-x86_64/pam-login	                        (rev 0)
+++ testing-x86_64/pam-login	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,8 @@
+#%PAM-1.0
+
+auth       required     pam_securetty.so
+auth       requisite    pam_nologin.so
+auth       include      system-local-login
+account    include      system-local-login
+session    include      system-local-login
+password   include      system-local-login

Copied: util-linux/repos/testing-x86_64/pam-runuser (from rev 435614, util-linux/trunk/pam-runuser)
===================================================================
--- testing-x86_64/pam-runuser	                        (rev 0)
+++ testing-x86_64/pam-runuser	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,4 @@
+#%PAM-1.0
+
+auth    sufficient      pam_rootok.so
+session include         system-login

Copied: util-linux/repos/testing-x86_64/pam-su (from rev 435614, util-linux/trunk/pam-su)
===================================================================
--- testing-x86_64/pam-su	                        (rev 0)
+++ testing-x86_64/pam-su	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,10 @@
+#%PAM-1.0
+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
+# Uncomment the following line to require a user to be in the "wheel" group.
+#auth           required        pam_wheel.so use_uid
+auth            required        pam_unix.so
+account         required        pam_unix.so
+session	        required        pam_unix.so
+password        include         system-auth

Copied: util-linux/repos/testing-x86_64/rfkill-block_.service (from rev 435614, util-linux/trunk/rfkill-block_.service)
===================================================================
--- testing-x86_64/rfkill-block_.service	                        (rev 0)
+++ testing-x86_64/rfkill-block_.service	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,10 @@
+[Unit]
+Description=RFKill-Block %I
+After=rfkill-unblock at all.service
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/rfkill block %I
+
+[Install]
+WantedBy=multi-user.target

Copied: util-linux/repos/testing-x86_64/rfkill-unblock_.service (from rev 435614, util-linux/trunk/rfkill-unblock_.service)
===================================================================
--- testing-x86_64/rfkill-unblock_.service	                        (rev 0)
+++ testing-x86_64/rfkill-unblock_.service	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,10 @@
+[Unit]
+Description=RFKill-Unblock %I
+After=rfkill-block at all.service
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/rfkill unblock %I
+
+[Install]
+WantedBy=multi-user.target

Copied: util-linux/repos/testing-x86_64/util-linux.sysusers (from rev 435614, util-linux/trunk/util-linux.sysusers)
===================================================================
--- testing-x86_64/util-linux.sysusers	                        (rev 0)
+++ testing-x86_64/util-linux.sysusers	2022-01-31 14:24:07 UTC (rev 435615)
@@ -0,0 +1,2 @@
+u uuidd 68
+g rfkill - - -



More information about the arch-commits mailing list