public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog user.eclass
@ 2011-11-04 13:08 Naohiro Aota (naota)
  0 siblings, 0 replies; 5+ messages in thread
From: Naohiro Aota (naota) @ 2011-11-04 13:08 UTC (permalink / raw
  To: gentoo-commits

naota       11/11/04 13:08:23

  Modified:             ChangeLog user.eclass
  Log:
  Change possible mis-used ${action} to ${db}

Revision  Changes    Path
1.2                  eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.2&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.2&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1&r2=1.2

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ChangeLog	3 Nov 2011 23:24:26 -0000	1.1
+++ ChangeLog	4 Nov 2011 13:08:23 -0000	1.2
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1 2011/11/03 23:24:26 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.2 2011/11/04 13:08:23 naota Exp $
+
+  04 Nov 2011; Naohiro Aota <naota@gentoo.org> mysql.eclass, user.eclass:
+  Change possible mis-used ${action} to ${db}
 
   03 Nov 2011; Andreas K. Huettel <dilfridge@gentoo.org> +ChangeLog:
   Created ChangeLog



1.10                 eclass/user.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.10&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.10&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?r1=1.9&r2=1.10

Index: user.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/user.eclass,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- user.eclass	3 Nov 2011 15:29:39 -0000	1.9
+++ user.eclass	4 Nov 2011 13:08:23 -0000	1.10
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.9 2011/11/03 15:29:39 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.10 2011/11/04 13:08:23 naota Exp $
 
 # @ECLASS: user.eclass
 # @MAINTAINER:
@@ -78,10 +78,10 @@
 		# lookup by uid/gid
 		local opts
 		if [[ ${key} == [[:digit:]]* ]] ; then
-			[[ ${action} == "user" ]] && opts="-u" || opts="-g"
+			[[ ${db} == "user" ]] && opts="-u" || opts="-g"
 		fi
 
-		pw show ${action} ${opts} "${key}" -q
+		pw show ${db} ${opts} "${key}" -q
 		;;
 	*-netbsd*|*-openbsd*)
 		grep "${key}:\*:" /etc/${db}






^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog user.eclass
@ 2012-06-18 16:51 Ian Stakenvicius (axs)
  0 siblings, 0 replies; 5+ messages in thread
From: Ian Stakenvicius (axs) @ 2012-06-18 16:51 UTC (permalink / raw
  To: gentoo-commits

axs         12/06/18 16:51:34

  Modified:             ChangeLog user.eclass
  Log:
  added 'esethome' to user.eclass

Revision  Changes    Path
1.317                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.317&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.317&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.316&r2=1.317

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.316
retrieving revision 1.317
diff -u -r1.316 -r1.317
--- ChangeLog	18 Jun 2012 06:45:28 -0000	1.316
+++ ChangeLog	18 Jun 2012 16:51:34 -0000	1.317
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.316 2012/06/18 06:45:28 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.317 2012/06/18 16:51:34 axs Exp $
+
+  18 Jun 2012; Ian Stakenvicius <axs@gentoo.org> user.eclass:
+  added 'esethome' to user.eclass
 
   18 Jun 2012; Fabian Groffen <grobian@gentoo.org> flag-o-matic.eclass:
   Allow header and library paths flags in setup-allowed-flags(), bug #414641



1.19                 eclass/user.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.19&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.19&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?r1=1.18&r2=1.19

Index: user.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/user.eclass,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- user.eclass	10 Dec 2011 20:03:17 -0000	1.18
+++ user.eclass	18 Jun 2012 16:51:34 -0000	1.19
@@ -1,6 +1,6 @@
-# Copyright 1999-2011 Gentoo Foundation
+# Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.18 2011/12/10 20:03:17 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.19 2012/06/18 16:51:34 axs Exp $
 
 # @ECLASS: user.eclass
 # @MAINTAINER:
@@ -387,4 +387,64 @@
 	egetent passwd "$1" | cut -d: -f${pos}
 }
 
+# @FUNCTION: esethome
+# @USAGE: <user> <homedir>
+# @DESCRIPTION:
+# Update the home directory in a platform-agnostic way.
+# Required parameters is the username and the new home directory.
+# Specify -1 if you want to set home to the enewuser default 
+# of /dev/null.
+# If the new home directory does not exist, it is created.
+# Any previously existing home directory is NOT moved.
+esethome() {
+	_assert_pkg_ebuild_phase ${FUNCNAME}
+
+	# get the username
+	local euser=$1; shift
+	if [[ -z ${euser} ]] ; then
+		eerror "No username specified !"
+		die "Cannot call esethome without a username"
+	fi
+
+	# lets see if the username already exists
+	if [[ -z $(egetent passwd "${euser}") ]] ; then
+		ewarn "User does not exist, cannot set home dir -- skipping."
+		return 1
+	fi
+
+	# handle homedir
+	local ehome=$1; shift
+	if [[ -z ${ehome} ]] ; then
+		eerror "No home directory specified !"
+		die "Cannot call esethome without a home directory or '-1'"
+	fi
+
+	if [[ ${ehome} == "-1" ]] ; then
+		ehome="/dev/null"
+	fi
+	einfo " - Home: ${ehome}"
+
+	# update the home directory
+	case ${CHOST} in
+	*-darwin*)
+		dscl . change "/users/${euser}" home "${ehome}"
+		;;
+
+	*-freebsd*|*-dragonfly*)
+		pw usermod "${euser}" -d "${ehome}" || die
+		;;
+
+	*)
+		usermod -d "${ehome}" "${euser}" || die
+		;;
+	esac
+
+	if [[ ! -e ${ROOT}/${ehome} ]] ; then
+		einfo " - Creating ${ehome} in ${ROOT}"
+		mkdir -p "${ROOT}/${ehome}"
+		chown "${euser}" "${ROOT}/${ehome}"
+		chmod 755 "${ROOT}/${ehome}"
+	fi
+}
+
 fi






^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog user.eclass
@ 2012-06-22 15:14 Ian Stakenvicius (axs)
  0 siblings, 0 replies; 5+ messages in thread
From: Ian Stakenvicius (axs) @ 2012-06-22 15:14 UTC (permalink / raw
  To: gentoo-commits

axs         12/06/22 15:14:10

  Modified:             ChangeLog user.eclass
  Log:
  fixed esethome, directory must exist befure user record can be updated

Revision  Changes    Path
1.325                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.325&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.325&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.324&r2=1.325

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.324
retrieving revision 1.325
diff -u -r1.324 -r1.325
--- ChangeLog	22 Jun 2012 12:41:51 -0000	1.324
+++ ChangeLog	22 Jun 2012 15:14:10 -0000	1.325
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.324 2012/06/22 12:41:51 voyageur Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.325 2012/06/22 15:14:10 axs Exp $
+
+  22 Jun 2012; Ian Stakenvicius <axs@gentoo.org> user.eclass:
+  fixed esethome, directory must exist befure user record can be updated
 
   22 Jun 2012; Bernard Cafarelli <voyageur@gentoo.org> gnustep-base.eclass:
   Stable gnustep-base does not have USE=libobjc2, thanks ago



1.20                 eclass/user.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.20&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.20&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?r1=1.19&r2=1.20

Index: user.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/user.eclass,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- user.eclass	18 Jun 2012 16:51:34 -0000	1.19
+++ user.eclass	22 Jun 2012 15:14:10 -0000	1.20
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.19 2012/06/18 16:51:34 axs Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.20 2012/06/22 15:14:10 axs Exp $
 
 # @ECLASS: user.eclass
 # @MAINTAINER:
@@ -424,6 +424,14 @@
 	fi
 	einfo " - Home: ${ehome}"
 
+	# ensure home directory exists, otherwise update will fail
+	if [[ ! -e ${ROOT}/${ehome} ]] ; then
+		einfo " - Creating ${ehome} in ${ROOT}"
+		mkdir -p "${ROOT}/${ehome}"
+		chown "${euser}" "${ROOT}/${ehome}"
+		chmod 755 "${ROOT}/${ehome}"
+	fi
+
 	# update the home directory
 	case ${CHOST} in
 	*-darwin*)
@@ -439,12 +447,6 @@
 		;;
 	esac
 
-	if [[ ! -e ${ROOT}/${ehome} ]] ; then
-		einfo " - Creating ${ehome} in ${ROOT}"
-		mkdir -p "${ROOT}/${ehome}"
-		chown "${euser}" "${ROOT}/${ehome}"
-		chmod 755 "${ROOT}/${ehome}"
-	fi
 }
 
 fi






^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog user.eclass
@ 2012-06-22 18:57 Ian Stakenvicius (axs)
  0 siblings, 0 replies; 5+ messages in thread
From: Ian Stakenvicius (axs) @ 2012-06-22 18:57 UTC (permalink / raw
  To: gentoo-commits

axs         12/06/22 18:57:34

  Modified:             ChangeLog user.eclass
  Log:
  esethome: eerror and not die when home dir cannot be updated, due to for instance user being in use

Revision  Changes    Path
1.326                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.326&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.326&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.325&r2=1.326

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.325
retrieving revision 1.326
diff -u -r1.325 -r1.326
--- ChangeLog	22 Jun 2012 15:14:10 -0000	1.325
+++ ChangeLog	22 Jun 2012 18:57:33 -0000	1.326
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.325 2012/06/22 15:14:10 axs Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.326 2012/06/22 18:57:33 axs Exp $
+
+  22 Jun 2012; Ian Stakenvicius <axs@gentoo.org> user.eclass:
+  esethome: eerror and not die when home dir cannot be updated, due to for
+  instance user being in use
 
   22 Jun 2012; Ian Stakenvicius <axs@gentoo.org> user.eclass:
   fixed esethome, directory must exist befure user record can be updated



1.21                 eclass/user.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.21&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.21&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?r1=1.20&r2=1.21

Index: user.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/user.eclass,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- user.eclass	22 Jun 2012 15:14:10 -0000	1.20
+++ user.eclass	22 Jun 2012 18:57:33 -0000	1.21
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.20 2012/06/22 15:14:10 axs Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.21 2012/06/22 18:57:33 axs Exp $
 
 # @ECLASS: user.eclass
 # @MAINTAINER:
@@ -439,14 +439,21 @@
 		;;
 
 	*-freebsd*|*-dragonfly*)
-		pw usermod "${euser}" -d "${ehome}" || die
+		pw usermod "${euser}" -d "${ehome}" && return 0
+		[[ $? == 8 ]] && eerror "${euser} is in use, cannot update home"
+		eerror "There was an error when attempting to update the home directory for ${euser}"
+		eerror "Please update it manually on your system:"
+		eerror "\t pw usermod \"${euser}\" -d \"${ehome}\""
 		;;
 
 	*)
-		usermod -d "${ehome}" "${euser}" || die
+		usermod -d "${ehome}" "${euser}" && return 0
+		[[ $? == 8 ]] && eerror "${euser} is in use, cannot update home"
+		eerror "There was an error when attempting to update the home directory for ${euser}"
+		eerror "Please update it manually on your system (as root):"
+		eerror "\t usermod -d \"${ehome}\" \"${euser}\""
 		;;
 	esac
-
 }
 
 fi






^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog user.eclass
@ 2012-06-22 19:18 Ian Stakenvicius (axs)
  0 siblings, 0 replies; 5+ messages in thread
From: Ian Stakenvicius (axs) @ 2012-06-22 19:18 UTC (permalink / raw
  To: gentoo-commits

axs         12/06/22 19:18:24

  Modified:             ChangeLog user.eclass
  Log:
  esethome: silently exit if home dir already up to date, improve messaging

Revision  Changes    Path
1.327                eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.327&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.327&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.326&r2=1.327

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.326
retrieving revision 1.327
diff -u -r1.326 -r1.327
--- ChangeLog	22 Jun 2012 18:57:33 -0000	1.326
+++ ChangeLog	22 Jun 2012 19:18:24 -0000	1.327
@@ -1,6 +1,9 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.326 2012/06/22 18:57:33 axs Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.327 2012/06/22 19:18:24 axs Exp $
+
+  22 Jun 2012; Ian Stakenvicius <axs@gentoo.org> user.eclass:
+  esethome: silently exit if home dir already up to date, improve messaging
 
   22 Jun 2012; Ian Stakenvicius <axs@gentoo.org> user.eclass:
   esethome: eerror and not die when home dir cannot be updated, due to for



1.22                 eclass/user.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.22&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?rev=1.22&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/user.eclass?r1=1.21&r2=1.22

Index: user.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/user.eclass,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- user.eclass	22 Jun 2012 18:57:33 -0000	1.21
+++ user.eclass	22 Jun 2012 19:18:24 -0000	1.22
@@ -1,6 +1,6 @@
 # Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.21 2012/06/22 18:57:33 axs Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/user.eclass,v 1.22 2012/06/22 19:18:24 axs Exp $
 
 # @ECLASS: user.eclass
 # @MAINTAINER:
@@ -422,6 +422,13 @@
 	if [[ ${ehome} == "-1" ]] ; then
 		ehome="/dev/null"
 	fi
+
+	# exit with no message if home dir is up to date
+	if [[ $(egethome "${euser}") == ${ehome} ]]; then
+		return 0
+	fi
+
+	einfo "Updating home for user '${euser}' ..."
 	einfo " - Home: ${ehome}"
 
 	# ensure home directory exists, otherwise update will fail






^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2012-06-22 19:18 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-22 19:18 [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog user.eclass Ian Stakenvicius (axs)
  -- strict thread matches above, loose matches on Subject: below --
2012-06-22 18:57 Ian Stakenvicius (axs)
2012-06-22 15:14 Ian Stakenvicius (axs)
2012-06-18 16:51 Ian Stakenvicius (axs)
2011-11-04 13:08 Naohiro Aota (naota)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox