Re: installworld with NO_ROOT produces paths with .. for man pages
- In reply to: Andriy Gapon : "Re: installworld with NO_ROOT produces paths with .. for man pages"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 23 Sep 2021 13:08:49 UTC
On Thu, Sep 23, 2021 at 02:38:27PM +0300, Andriy Gapon wrote:
> On 28/08/2021 17:28, Andriy Gapon wrote:
> >
> > This seems to be related to the recent change to install manual pages
> > for all platforms.
> >
> > My method of creating a cross-platform installation image is to install
> > with NO_ROOT and then to tar up with @METALOG argument.
> > On the destination I simply untar the archive into a destination
> > directory (typically a fresh ZFS BE).
> >
> > Today I noticed some complaints when extracting the archive, here is a few:
> > ./usr/share/man/man4/i386/../smapi.4.gz: Path contains '..'
> > ./usr/share/man/man4/i386/../vpd.4.gz: Path contains '..'
> > ./usr/share/man/man4/powerpc/../adb.4.gz: Path contains '..'
> > ./usr/share/man/man4/powerpc/../akbd.4.gz: Path contains '..'
> >
> > This is a not a big deal but would be nice to "straighten" the
> > installation paths when installing such manual pages.
> >
> > P.S.
> > NO_ROOT does not seem to be documented outside of the source code.
> >
>
> I think that it would be nice to fix that .. issue.
> Any suggestions?
MLINKS+=${_manpage} ../${_manpage}
so install(1) does what it is asked to do and write it do the metalog as such.
First it is a bad idea to have .. in mlink as we are creating hardlinks, so we
could have a cross device issue.
The issue was reported when those links were added: 0a0f7486413c
https://lists.freebsd.org/pipermail/dev-commits-src-all/2021-July/009164.html
imho the right way to do this would be to have a new kind of macros which would
create relative symlinks using ${INSTALL_RSYMLINK} to replace MLINKS
Best regards,
Bapt