Re: git: 918612d6fe2e - main - security/arti: Fix rc.d service using daemon, update URL
- In reply to: Carlo Strub : "git: 918612d6fe2e - main - security/arti: Fix rc.d service using daemon, update URL"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 26 Sep 2022 12:36:14 UTC
On Sun, Sep 25, 2022 at 04:22:00PM +0000, Carlo Strub wrote: > The branch main has been updated by cs: > > URL: https://cgit.FreeBSD.org/ports/commit/?id=918612d6fe2e312a1a57446d1c8f9c72df400e9e > > commit 918612d6fe2e312a1a57446d1c8f9c72df400e9e > Author: Carlo Strub <cs@FreeBSD.org> > AuthorDate: 2022-09-25 16:21:15 +0000 > Commit: Carlo Strub <cs@FreeBSD.org> > CommitDate: 2022-09-25 16:21:15 +0000 > > security/arti: Fix rc.d service using daemon, update URL > --- > GIDs | 2 +- > UIDs | 2 +- > security/arti/Makefile | 11 ++--- > security/arti/files/arti.in | 51 ++++++++++++++-------- > .../patch-crates_arti_src_arti-example-config.toml | 10 +++-- > 5 files changed, 48 insertions(+), 28 deletions(-) > [...] > diff --git a/security/arti/files/arti.in b/security/arti/files/arti.in > index b7226c5ebe14..8cb8d4a48513 100644 > --- a/security/arti/files/arti.in > +++ b/security/arti/files/arti.in > @@ -1,37 +1,54 @@ [...] > # by default. > -# arti_user (str): Arti daemon user. Default: %%USER%% > -# arti_pidfile (str): Arti pid file. Default: /var/run/arti/arti.pid > - > +# arti_user (str): Arti daemon user. Default: %%USERS%% > +# arti_group (str): Arti daemon group. Default: %%GROUPS%% > [...] > -command_args="-f -o $arti_logfile -P $arti_pidfile $arti proxy -c $arti_config" > +: ${arti_user="%%USERS%%"} > +: ${arti_group="%%GROUPS%%"} > + > +pidfiledir="/var/run/${name}" > +pidfile="${pidfiledir}/${name}.pid" > +logfiledir="/var/log/${name}" > +logfile="${logfiledir}/${name}.log" > +dbfiledir="/var/db/${name}" > +command="/usr/sbin/daemon" > +procname="%%PREFIX%%/bin/${name}" > + > +command_args="-f -o $logfile -p $pidfile $procname proxy --config $arti_config" > + > +start_precmd="${name}_prestart" > + > +arti_prestart() > +{ > + if [ ! -d ${pidfiledir} ]; then > + install -d -o ${arti_user} -g ${arti_group} ${pidfiledir} > + fi > + if [ ! -d ${logfiledir} ]; then > + install -d -o ${arti_user} -g ${arti_group} ${logfiledir} > + fi > + if [ ! -d ${dbfiledir} ]; then > + install -d -o ${arti_user} -g ${arti_group} ${dbfiledir} > + fi > +} > Somehow arti_prestart() fails to set the correct owner and group, causing arti to not start as a service. Wouldn't it be easier to handle this in pkg-plist instead? diff --git a/security/arti/pkg-plist b/security/arti/pkg-plist index 4b90f62f5..b70161d58 100644 --- a/security/arti/pkg-plist +++ b/security/arti/pkg-plist @@ -1,5 +1,7 @@ bin/arti @sample %%ETCDIR%%/arti.toml.sample +@owner %%USERS%% +@group %%GROUPS%% @dir /var/db/arti @dir /var/log/arti @dir /var/run/arti That also simplifies the rc.d script a bit by not having to declare the *filedir, arti_user and arti_group variables. Regards, René