18.04.2023 15:05, Nuno Teixeira wrote:
> Hello all,
>
> net/gitup uses a reinplace cmd to setup gitup.conf to the correspondent
> RELEASE/STABLE for command `gitup release` and `gitup stable`.
> So, if user is using 13.1-RELEASE, reinplace will configure gitup.conf to:
>
> "release" : {
> "branch" : "releng/13.1",
> "stable" : {
> "branch" : "stable/13",
>
> The problem is that OSREL is taken from build time and at this moment 13.2
> pkgs are being built on a 13.1 machine.
> So the result is wrong by setting releng/13.1 instead of releng/13.2.
>
> the reinplace cmd is:
> ---
> ${REINPLACE_CMD} -e 's|stable\/12|stable\/${OSREL:R}| ; \
> s|releng\/11.4|releng\/${OSREL}|' \
> ${WRKSRC}/gitup.conf
> ---
>
> Any sugestion or example that permits to get OSREL at install time?
# osrel=$(sysctl -n kern.osrelease)
# echo $osrel ${osrel%%-*} ${osrel%%.*}
13.2-STABLE 13.2 13
And use @postexec command in pkg-plist to run sed instead of REINPLACE_CMD in
the Makefile.
Something like this (untested):
@postexec env osrel=$(sysctl -n kern.osrelease) sed -E -e
s,stable/[0-9]+,stable/${osrel\%\%.*}, -e
s,releng/[0-9]+,releng/${osrel\%\%-*}, %%PREFIX%%/etc/gitup.conf
I'm not sure about escaping and screening, though. You'll need to test it :-)