Date: Mon, 13 Dec 2010 17:19:00 -0800 From: Jason Helfman <jhelfman@experts-exchange.com> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/153136: [patch] databases/postgresql84-server: allow for postgres user to be configurable Message-ID: <1292289540.325037.80575.nullmailer@experts-exchange.com> Resent-Message-ID: <201012140130.oBE1UARL012336@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 153136 >Category: ports >Synopsis: [patch] databases/postgresql84-server: allow for postgres user to be configurable >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Dec 14 01:30:10 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Jason Helfman >Release: FreeBSD 8.1-RELEASE i386 >Organization: Experts-Exchange, LLC. >Environment: System: FreeBSD eggman.experts-exchange.com 8.1-RELEASE FreeBSD 8.1-RELEASE #0: Mon Jul 19 02:55:53 UTC 2010 root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 >Description: Allow for postgres user to be something other than "pgsql," but pgsql should be default. >How-To-Repeat: 1. Rename the PostgreSQL OS user name with PW(8). 2. Run "/usr/local/etc/rc.d/postgresql start" 3. It will say: "su: unknown login: pgsql" >Fix: This is largely a copy of ports/113707, however, in my humble opinion, I believe this patch would be something that may be considered more of an acceptable solution. --- postgresql84-server/Makefile.orig 2010-12-13 16:03:19.000000000 -0800 +++ postgresql84-server/Makefile 2010-12-13 16:08:08.000000000 -0800 @@ -36,8 +36,9 @@ .undef GNU_CONFIGURE .endif -PGUSER= pgsql -PGGROUP= pgsql +PGUSER?= pgsql +PGGROUP?= pgsql +PGUID?= 70 LDFLAGS+= -L${LOCALBASE}/lib INCLUDES+= -I${LOCALBASE}/include @@ -281,7 +282,11 @@ done . if exists(${FILESDIR}/pkg-message${PKGNAMESUFFIX}.in) -SUB_FILES+= pkg-message${PKGNAMESUFFIX} +SUB_FILES+= pkg-install-server \ + pkg-message${PKGNAMESUFFIX} +SUB_LIST+= PGGROUP=${PGGROUP} \ + PGUSER=${PGUSER} \ + PGUID=${PGUID} PKGMESSAGE= ${WRKSRC}/pkg-message${PKGNAMESUFFIX} . endif .endif --- postgresql84-server/pkg-install-server.orig 2010-12-13 16:04:53.000000000 -0800 +++ postgresql84-server/pkg-install-server 2010-12-13 16:10:47.000000000 -0800 @@ -3,6 +3,9 @@ # $FreeBSD: ports/databases/postgresql84-server/pkg-install-server,v 1.7 2008/02/18 12:55:02 girgen Exp $ PATH=/bin:/usr/bin:/usr/sbin +PGUSER=%%PGUSER%% +PGGROUP=%%PGGROUP%% +PGUID=%%PGUID%% backupwarning() { echo " @@ -22,11 +25,11 @@ case $2 in PRE-INSTALL) backupwarning - PGUSER=${PGUSER:-pgsql} - PGGROUP=${PGGROUP:-pgsql} + PGUSER=${PGUSER:-${PGUSER}} + PGGROUP=${PGGROUP:-${PGGROUP}} DB_DIR=${PKG_PREFIX}/${PGUSER} - UID=70 - GID=70 + UID=${PGUID} + GID=${PGUID} if pw group show "${PGGROUP}" 2>/dev/null; then echo "You already have a group \"${PGGROUP}\", so I will use it." --- postgresql84-server/files/postgresql.in.orig 2010-12-13 16:03:32.000000000 -0800 +++ postgresql84-server/files/postgresql.in 2010-12-13 17:08:31.000000000 -0800 @@ -32,7 +32,7 @@ # set defaults postgresql_enable=${postgresql_enable:-"NO"} postgresql_flags=${postgresql_flags:-"-w -s -m fast"} -postgresql_user=pgsql +postgresql_user=${postgresql_user:-"%%PGUSER%%"} eval postgresql_data=${postgresql_data:-"~${postgresql_user}/data"} postgresql_class=${postgresql_class:-"default"} postgresql_initdb_flags=${postgresql_initdb_flags:-"--encoding=utf-8 --lc-collate=C"} >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1292289540.325037.80575.nullmailer>