Date: Sun, 07 Feb 2021 17:28:06 -0800 From: Chris <portmaster@bsdforge.com> To: Chris Rees <crees@freebsd.org> Cc: ports@freebsd.org Subject: Re: Handling directory ownership in pkg-plist Message-ID: <223fd53a3efdbc8f2d4879e443a3f425@bsdforge.com> In-Reply-To: <B902B937-BEF0-4F21-B953-66B0B5696A3A@FreeBSD.org> References: <c6b5e1c6-f925-6df0-862e-76ea83fd80cb@rees.space> <623897a8b8aaf941d59f39f2f32e4326@bsdforge.com> <967F2C8E-AD27-4003-A5B7-6B39D1911572@FreeBSD.org> <8932039662e23e447f019a3b98bb9b90@bsdforge.com> <B902B937-BEF0-4F21-B953-66B0B5696A3A@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2021-02-07 12:19, Chris Rees wrote: > Afternoon, > > On 7 February 2021 19:05:26 GMT, Chris <portmaster@bsdforge.com> wrote: >> On 2021-02-07 02:18, Chris Rees wrote: >>> Hi Chris, >>> >>> Thamks for the reply. >>> >>> On 7 February 2021 03:57:03 GMT, Chris <portmaster@bsdforge.com> >> wrote: >>>> On 2021-02-06 13:34, Chris Rees wrote: >>>>> Hi all, >>>>> >>>>> Resurrecting audio/ampache-resurrect, and I have @owner www/@group >>>> www above >>>>> all >>>>> of the WWWDIR files, and they are correctly owned. However, the >>>> directories >>>>> under >>>>> it are all still owned by root:wheel, and if I explicitly add them >>>> all with >>>>> @dir >>>>> pkg then complains about not being able to find them. >>>>> >>>>> Would it be unacceptable to just have @exec chown -R www:www >>>> %D/%%WWWDIR%% >>>>> at the bottom? >>>> Yes. By way of pre-install: >>>> You'll probably get a complaint unless you use: ${CHOWN} >>> >>> Perhaps I was unclear- I'm referring to pkg-plist, so there is no >> ${CHOWN} >>> there. >>> >>> The exact proposed line is >>> >>> @postexec chown -R www:www %D/%%WWWDIR%% >>> >>> I was wondering what the 'proper' way to do this was. >> I'm wondering why it's not enough to create a post-extract that doesn't >> >> something >> like >> cd ${WRKSRC}/some/dir && ${CHOWN} -R ${WWUSER}:${WWGROUP} . >> Then the ports framework would create an appropriate pkg-plist based on >> that. >> A >> make -DBATCH makeplist would generate your target pkg-plist. >> >> I'm paraphrasing, as I don't have your Makefile. But I've needed to >> perform >> tasks >> like myself. Out of curiosity. What does a make -DBATCH makeplist >> generate? >> Does >> the output provide the necessary clues to create a pkg-plist you're >> interested in? > > CHOWN can't be used in the Makefile as you need root. > > make makeplist used after CHOWN does nothing different- it appears not to > notice > that they have different owners. But what of the pkg-plist for www/kanboard? It has the clues you need for setting the pkg-plist. The ports framework will honor the perms set within it. eg; @owner %%KANBOARD_USERNAME%% @group %%KANBOARD_GROUPNAME%% %%WWWDIR%%/.htaccess %%WWWDIR%%/ChangeLog %%WWWDIR%%/LICENSE %%WWWDIR%%/app/.htaccess %%WWWDIR%%/app/Action/Base.php %%WWWDIR%%/app/Action/CommentCreation.php ... Just change the leader to the @user and @group to your desired names in your pkg-plist. Save it to your port. Done. :-) > > There is nothing documented on this that I can find, so I'll commit the > @postexec line. > > Chris --Chris
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?223fd53a3efdbc8f2d4879e443a3f425>