Baptiste Daroussin wrote:
On Tue, Jun 05, 2012 at 11:10:19AM +0200, Arnaud Houdelette wrote:
Hello.

I'm currently testing pkgng and poudriere as a replacement for old pkg
and pkg_jail.

When upgrading/reinstalling a port, pkg install / pkg upgrade resets the
permissions of the directories created by the ports which already exist.

Old pkg_add did not have this behavior.

For example,
- install lighttpd
- chmod 750 /var/log/lighttpd
- pkg install -f lighttpd

=>  /var/log/lighttpd mode is reset to 700.

Is this behavior correct ? Is there some option to avoid this ?

Arnaud

This is expected and there is no way to avoid this but fixing the ports itself
so that it create a 750 package.

The package should be consistent and the permission should be set at the
package creation
time.

Of course my view here might be wrong and I'm all open for aguments against that
:D

I am against automatic (silent) overriding of modified directory permissions / owners. It is really annoying to correct it after each update of the port.

I am not saying that it is problem of PKGNG, it is sometime problem elsewhere - in my example in rc script of courier-authdaemond which contains

install -o courier -g courier -m 0750 -d "${authdaemonvar}"

So after update / reinstall, Postfix cannot connect to courier-authdaemond socket to verify SMTP auth.

I don't know how it should be done for all ports in the same way.
Some ports let the user to create directories manually, some create them only if directories doesn't exist, some change owner and permission on existing directories (the worst case).


In the case of Lighttpd, the Makefile contains

LIGHTTPD_LOGROOT?=      /var/log/lighttpd
LIGHTTPD_WEBROOT?=      ${PREFIX}/www/data
LIGHTTPD_USER?=         www
LIGHTTPD_GROUP?=        www

PLIST_SUB+=             LOGROOT="${LIGHTTPD_LOGROOT}" \
                        USER="${LIGHTTPD_USER}" \
                        GROUP="${LIGHTTPD_GROUP}" \
                        MKDIR="${MKDIR}" \
                        CHOWN="${CHOWN}"

Is it possible to add "LIGHTTPD_LOGROOT_MODE" (or some other variable) to allow user to override default mode in make.conf?

LIGHTTPD_LOGROOT_MODE?= 0750

Or is it already recorded in binary package and cannot be overriden in install time?

Miroslav Lachman
_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to