Date: Wed, 05 Mar 2014 07:03:40 +0100 From: olli hauer <ohauer@gmx.de> To: freebsd-ports@freebsd.org Cc: "Hans F. Nordhaug" <Hans.F.Nordhaug@hiMolde.no> Subject: Re: Staging - set owner/group/mode in pkg-plist for empty directory Message-ID: <5316BE3C.1000007@gmx.de> In-Reply-To: <20140304224706.GA17997@hiMolde.no> References: <20140304143052.GA22995@hiMolde.no> <5315FB56.3000601@gmx.de> <20140304224706.GA17997@hiMolde.no>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2014-03-04 23:47, Hans F. Nordhaug wrote: > * olli hauer <ohauer@gmx.de> [2014-03-04]: >> On 2014-03-04 15:30, Hans F. Nordhaug wrote: >>> Hi, >>> >>> I'm trying to add staging to the Piwik port (at the same time as >>> updating to the new 2.1.0 release). AFAIK it's not possible to >>> set owner/group/mode for a directory in pkg-plist, only for files. >>> Is that correct? >>> >>> Piwik comes with an empty tmp directory that needs to be writable >>> by the webserver. Using CHMOD naivly in the post-install target >>> doesn't work. >>> >>> What is the correct work-around? >>> >>> Regards, >>> Hans >>> >>> PS! I can't test the port anymore with porttools ("port test"). >>> I always get: >>> >>> ------- >>> [...] >>> ===> Building package for piwik-2.1.0 >>> Creating package /usr/ports/www/piwik/work/piwik-2.1.0.tbz >>> Registering depends:. >>> pkg_create: couldn't resolve path for prefix: /tmp/piwik-2.1.0: No >>> such file or directory >>> *** [do-package] Error code 1 >>> >>> Stop in /usr/ports/www/piwik. >>> *** [package] Error code 1 >>> >>> Stop in /usr/ports/www/piwik. >>> ===> Error running make package >>> [...] >>> ------- >>> >>> Is this a known issue? I haven't upgraded to pkgng yet. >> >> >> Hi Hans, > > Hi, Olli. You sent your reply off the list, but I guess that was a > mistake so I'm sending this reply to the list. > >> I haven't used porttools once in my life, but I suspect in pkg-plist >> you miss %D/ as path prefix for the directory and in that case pkg >> creates the directory in your current working directory. > > No, that isn't the problem - several things has changed in the latest version. > >> This should work. >> @exec install -m 755 -o %%WWWOWN%% -g %%WWWGRP%% -d %D/%%WWWDIR%%/tmp >> @exec chown -R %%WWWOWN%%:%%WWWGRP%% %D/%%WWWDIR%%/tmp > > Thx, I ended up using "@exec chown ..." at the end pkg-plist. (The empty > directory is created so I don't need "@exec install".) > >> The following patch should work for your update >> http://people.freebsd.org/~ohauer/diffs/piwik-2.1.0.diff > > Thx, but I had already written the patch - I just needed the one > missing piece ("@exec chown ..."). I did however copy the option > changes you did - much clearer code. Thx! > > Regards, > Hans Hi Hans, the creation of the empty tmp directory is required for the old pkg_create tool, with the new ports-mgmt/pkg tools this is not required since it can handle empty directories. Since you haven't upgraded to pkgng yet, you can test this yourself by creating a package cleanup local/www and installing the package. $> cd www/piwik $> make clean package && make clean $> make deinstall $> rm -rf /usr/local/www/piwik $> pkg_add $path/to/new/piwik-2.1.0.tbz Now check if the directory is there. -- Regards, olli
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5316BE3C.1000007>