[arch-commits] Commit in util-linux/trunk (4 files)

Dave Reisner dreisner at archlinux.org
Wed Sep 5 02:43:55 UTC 2012


    Date: Tuesday, September 4, 2012 @ 22:43:54
  Author: dreisner
Revision: 166164

upgpkg: util-linux 2.22-2

- add etc/pam.d/su in backup array (FS#31412)
- include su.1 manpage from upstream git repo
- create uuidd user on install
- include tmpfiles.d/uuidd.conf (create on install/upgrade)
- fix --localstatedir for uuidd

Added:
  util-linux/trunk/su.1
  util-linux/trunk/uuidd.tmpfiles
Modified:
  util-linux/trunk/PKGBUILD
  util-linux/trunk/util-linux.install

--------------------+
 PKGBUILD           |   33 +++++--
 su.1               |  230 +++++++++++++++++++++++++++++++++++++++++++++++++++
 util-linux.install |   26 +++++
 uuidd.tmpfiles     |    1 
 4 files changed, 283 insertions(+), 7 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2012-09-05 01:16:34 UTC (rev 166163)
+++ PKGBUILD	2012-09-05 02:43:54 UTC (rev 166164)
@@ -4,7 +4,7 @@
 
 pkgname=util-linux
 pkgver=2.22
-pkgrel=1
+pkgrel=2
 pkgdesc="Miscellaneous system utilities for Linux"
 url="http://www.kernel.org/pub/linux/utils/util-linux/"
 arch=('i686' 'x86_64')
@@ -16,17 +16,31 @@
 license=('GPL2')
 options=('!libtool')
 source=(ftp://ftp.kernel.org/pub/linux/utils/${pkgname}/v2.22/${pkgname}-${pkgver}.tar.xz
+        su.1
+        uuidd.tmpfiles
         pam-login
         pam-common
-	pam-su)
-backup=(etc/pam.d/chfn etc/pam.d/chsh etc/pam.d/login)
+        pam-su)
+backup=(etc/pam.d/chfn etc/pam.d/chsh etc/pam.d/login etc/pam.d/su)
 install=util-linux.install
+md5sums=('ba2d8cc12a937231c80a04f7f7149303'
+         '7f524538dcf57284a86f03a98e624f04'
+         'a39554bfd65cccfd8254bb46922f4a67'
+         '4368b3f98abd8a32662e094c54e7f9b1'
+         'a31374fef2cba0ca34dfc7078e2969e4'
+         'fa85e5cce5d723275b14365ba71a8aad')
 
 build() {
   cd "${srcdir}/${pkgname}-${pkgver}"
 
+  # unbreak --localstatedir
+  # TODO(dreisner): find out what sami hand in mind with these heuristics
+  sed -i '71,75d' configure.ac
+  ./autogen.sh
+
   ./configure --prefix=/usr \
               --libdir=/usr/lib \
+              --localstatedir=/run \
               --enable-fs-paths-extra=/usr/bin:/usr/sbin \
               --enable-raw \
               --enable-vipw \
@@ -62,8 +76,13 @@
   install -m644 "$srcdir/pam-common" "$pkgdir/etc/pam.d/chsh"
   install -m644 "$srcdir/pam-login" "$pkgdir/etc/pam.d/login"
   install -m644 "$srcdir/pam-su" "${pkgdir}/etc/pam.d/su"
+
+  # broken buildsys doesn't include su(1), which means it
+  # isn't even in the dist tarball
+  # TODO(dreisner): patch for this already sent upstream
+  install -m644 "$srcdir/su.1" "$pkgdir/usr/share/man/man1/su.1"
+
+  # include tmpfiles fragment for uuidd
+  # TODO(dreisner): offer this upstream
+  install -Dm644 "$srcdir/uuidd.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/uuidd.conf"
 }
-md5sums=('ba2d8cc12a937231c80a04f7f7149303'
-         '4368b3f98abd8a32662e094c54e7f9b1'
-         'a31374fef2cba0ca34dfc7078e2969e4'
-         'fa85e5cce5d723275b14365ba71a8aad')

Added: su.1
===================================================================
--- su.1	                        (rev 0)
+++ su.1	2012-09-05 02:43:54 UTC (rev 166164)
@@ -0,0 +1,230 @@
+.TH SU "1" "June 2012" "util-linux" "User Commands"
+.SH NAME
+su \- run a command with substitute user and group ID
+.SH SYNOPSIS
+.B su
+[options...] [\-] [user [args...]]
+.SH DESCRIPTION
+.B su
+allows to run commands with substitute user and group ID.
+.PP
+When called without arguments
+.B su
+defaults to running an interactive shell as
+.IR root .
+.PP
+For backward compatibility
+.B su
+defaults to not change the current directory and to only set the
+environment variables
+.B HOME
+and
+.B SHELL
+(plus
+.B USER
+and
+.B LOGNAME
+if the target
+.I user
+is not root).  It is recommended to always use the
+.B \-\-login
+option (instead it's shortcut
+.BR \- )
+to avoid side effects caused by mixing environments.
+.PP
+This version of
+.B su
+uses PAM for authentication, account and session management.  Some
+configuration options found in other
+.B su
+implementations such as e.g. support of a wheel group have to be
+configured via PAM.
+.SH OPTIONS
+.TP
+\fB\-c\fR \fIcommand\fR, \fB\-\-command\fR=\fIcommand\fR
+Pass
+.I command
+to the shell with the
+.B \-c
+option.
+.TP
+\fB\-\-session\-command\fR=\fIcommand\fR
+Same as
+.B \-c
+but do not create a new session (discouraged).
+.TP
+\fB\-f\fR, \fB\-\-fast\fR
+Pass
+.B \-f
+to the shell which may or may not be useful depending on the
+shell.
+.TP
+\fB\-g\fR, \fB\-\-group\fR=\fIgroup\fR\fR
+specify the primary group, this option is allowed for root user only
+.TP
+\fB\-G\fR, \fB\-\-supp-group\fR=\fIgroup\fR\fR
+specify a supplemental group, this option is allowed for root user only
+.TP
+\fB\-\fR, \fB\-l\fR, \fB\-\-login\fR
+Starts the shell as login shell with an environment similar to a real
+login:
+.RS 10
+.TP
+o
+clears all environment variables except for
+.B TERM
+.TP
+o
+initializes the environment variables
+.BR HOME ,
+.BR SHELL ,
+.BR USER ,
+.BR LOGNAME ,
+.B PATH
+.TP
+o
+changes to the target user's home directory
+.TP
+o
+sets argv[0] of the shell to
+.RB ' \- '
+in order to make the shell a login shell
+.RE
+.TP
+\fB\-m\fR, \fB\-p\fR, \fB\-\-preserve-environment\fR
+Preserves the whole environment, ie does not set
+.BR HOME ,
+.BR SHELL ,
+.B USER
+nor
+.BR LOGNAME .
+.TP
+\fB\-s\fR \fISHELL\fR, \fB\-\-shell\fR=\fISHELL\fR
+Runs the specified shell instead of the default.  The shell to run is
+selected according to the following rules in order:
+.RS 10
+.TP
+o
+the shell specified with
+.B \-\-shell
+.TP
+o
+The shell specified in the environment variable
+.B SHELL
+if the
+.B \-\-preserve-environment
+option is used.
+.TP
+o
+the shell listed in the passwd entry of the target user
+.TP
+o
+/bin/sh
+.RE
+.IP
+If the target user has a restricted shell (i.e. not listed in
+/etc/shells) the
+.B \-\-shell
+option and the
+.B SHELL
+environment variables are ignored unless the calling user is root.
+.TP
+\fB\-\-help\fR
+Display help text and exit.
+.TP
+\fB\-\-version\fR
+Display version information and exit.
+.SH CONFIG FILES
+.B su
+reads the
+.I /etc/default/su
+and
+.I /etc/login.defs
+configuration files.  The following configuration items are relevant
+for
+.BR su (1):
+.PP
+.B FAIL_DELAY
+(number)
+.RS 4
+Delay in seconds in case of authentication failure.  Number must be
+a non-negative integer.
+.RE
+.PP
+.B ENV_PATH
+(string)
+.RS 4
+Defines the PATH environment variable for a regular user.  The
+default value is
+.IR /usr/local/bin:\:/bin:\:/usr/bin .
+.RE
+.PP
+.B ENV_ROOTPATH
+(string)
+.br
+.B ENV_SUPATH
+(string)
+.RS 4
+Defines the PATH environment variable for root. The default value is
+.IR /usr/local/sbin:\:/usr/local/bin:\:/sbin:\:/bin:\:/usr/sbin:\:/usr/bin .
+.RE
+.PP
+.B ALWAYS_SET_PATH
+(boolean)
+.RS 4
+If set to
+.I yes
+and \-\-login and \-\-preserve\-environment were not specified
+.B su
+initializes
+.BR PATH .
+.RE
+.SH EXIT STATUS
+.B su
+normally returns the exit status of the command it executed.  If the
+command was killed by a signal,
+.B su
+returns the number of the signal plus 128.
+.PP
+Exit status generated by
+.B su
+itself:
+.RS 10
+.TP
+1
+Generic error before executing the requested command
+.TP
+126
+The requested command could not be executed
+.TP
+127
+The requested command could was not found
+.RE
+.SH FILES
+.PD 0
+.TP 17
+/etc/pam.d/su
+default PAM configuration file
+.TP
+/etc/pam.d/su-l
+PAM configuration file if \-\-login is specified
+.TP
+/etc/default/su
+command specific logindef config file
+.TP
+/etc/login.defs
+global logindef config file
+.PD 1
+.SH "SEE ALSO"
+.BR pam (8),
+.BR shells (5),
+.BR login.defs (5)
+.SH AUTHOR
+Derived from coreutils' su which was based on an implementation from
+David MacKenzie.
+.SH AVAILABILITY
+The su command is part of the util-linux package and is
+available from
+.UR ftp://\:ftp.kernel.org\:/pub\:/linux\:/utils\:/util-linux/
+Linux Kernel Archive
+.UE .

Modified: util-linux.install
===================================================================
--- util-linux.install	2012-09-05 01:16:34 UTC (rev 166163)
+++ util-linux.install	2012-09-05 02:43:54 UTC (rev 166164)
@@ -1,3 +1,17 @@
+post_install() {
+  # create user for uuidd
+  if ! getent group uuidd >/dev/null; then
+    groupadd -r uuidd
+  fi
+
+  if ! getent passwd uuidd >/dev/null; then
+    useradd -r -s /sbin/nologin -g uuidd uuidd
+  fi
+
+  # ensure /run/uuidd exists
+  systemd-tmpfiles --create uuidd.conf
+}
+
 post_upgrade() {
   if [ "$(vercmp $2 2.21.2-4)" -lt 0 ]; then
     if [ -f /var/lib/hwclock/adjtime ]; then
@@ -7,4 +21,16 @@
       rmdir /var/lib/hwclock
     fi
   fi
+
+  post_install
 }
+
+post_remove() {
+  if getent passwd uuidd >/dev/null; then
+    userdel uuidd
+  fi
+
+  if getent group uuidd >/dev/null; then
+    userdel uuidd
+  fi
+}

Added: uuidd.tmpfiles
===================================================================
--- uuidd.tmpfiles	                        (rev 0)
+++ uuidd.tmpfiles	2012-09-05 02:43:54 UTC (rev 166164)
@@ -0,0 +1 @@
+d /run/uuidd 0755 uuidd uuidd




More information about the arch-commits mailing list