Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Sep 2025 11:38:25 +0000 (UTC)
From:      "Bjoern A. Zeeb" <bzeeb-lists@lists.zabbadoz.net>
To:        Lexi Winter <ivy@FreeBSD.org>
Cc:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org,  dev-commits-src-main@FreeBSD.org
Subject:   Re: git: aa730a66bc74 - main - sh: Add config tag to /.profile
Message-ID:  <5p49s627-11ps-53ns-s327-550s12o38q96@yvfgf.mnoonqbm.arg>
In-Reply-To: <202509020831.5828V5wg092563@gitrepo.freebsd.org>
References:  <202509020831.5828V5wg092563@gitrepo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 2 Sep 2025, Lexi Winter wrote:

> The branch main has been updated by ivy:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=aa730a66bc74696df85b21ec2719c75d8eab8c9f
>
> commit aa730a66bc74696df85b21ec2719c75d8eab8c9f
> Author:     Lexi Winter <ivy@FreeBSD.org>
> AuthorDate: 2025-09-02 08:22:56 +0000
> Commit:     Lexi Winter <ivy@FreeBSD.org>
> CommitDate: 2025-09-02 08:22:56 +0000
>
>    sh: Add config tag to /.profile
>
>    The file /.profile is installed as a hard link to /root/.profile. The
>    file in /root has the config tag, but the file in / does not, which
>    causes it to be overwritten by pkg upgrade. Since they're linked, this
>    also overwrites the file in /root.
>
>    Add the config tag to the file in / as well, so pkg treates both links
>    as config files and won't overwrite them.
>
>    PR:             289097
>    MFC after:      3 days
>    Reviewed by:    bapt, emaste
>    Differential Revision:  https://reviews.freebsd.org/D52162


make distribution ... I assume... now fails:

...
===> bin/rm (installconfig)
===> bin/rmdir (installconfig)
===> bin/setfacl (installconfig)
===> bin/sh (installconfig)
install: target directory `/dest/foo/.profile' does not exist
usage: install [-bCcpSsUv] [-f flags] [-g group] [-m mode] [-o owner]
                [-M log] [-D dest] [-h hash] [-T tags]
                [-B suffix] [-l linkflags] [-N dbdir]
                file1 file2
        install [-bCcpSsUv] [-f flags] [-g group] [-m mode] [-o owner]
                [-M log] [-D dest] [-h hash] [-T tags]
                [-B suffix] [-l linkflags] [-N dbdir]
                file1 ... fileN directory
        install -dU [-vU] [-g group] [-m mode] [-N dbdir] [-o owner]
                [-M log] [-D dest] [-h hash] [-T tags]
                directory ...
*** Error code 64

Stop.
make[4]: stopped making "installconfig" in /usr/usr/bin/sh



> ---
> bin/sh/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/bin/sh/Makefile b/bin/sh/Makefile
> index 087dbf40c3bd..4dbbf344bfb5 100644
> --- a/bin/sh/Makefile
> +++ b/bin/sh/Makefile
> @@ -74,6 +74,6 @@ beforeinstallconfig:
>
> LINKMODE=${CONFMODE}
> afterinstallconfig:
> -	${INSTALL_LINK} ${TAG_ARGS} ${DESTDIR}/root/.profile ${DESTDIR}/.profile
> +	${INSTALL_LINK} ${TAG_ARGS},config ${DESTDIR}/root/.profile ${DESTDIR}/.profile
>
> .include <bsd.prog.mk>
>

-- 
Bjoern A. Zeeb                                                     r15:7



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5p49s627-11ps-53ns-s327-550s12o38q96>