Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Nov 2025 14:42:22 +0100
From:      Marek Zarychta <zarychtam@plan-b.pwste.edu.pl>
To:        Thomas Schweikle <tschweikle@gmail.com>
Cc:        freebsd-current@freebsd.org
Subject:   Re: "etcupdate extract" -- Failed to build new tree.
Message-ID:  <43c4ae93-71e2-4b2e-b265-b84b96a70666@plan-b.pwste.edu.pl>
In-Reply-To: <CA%2BrGx5cUAo-93t1fTDhEeLxqrJ4ewb%2BriLfodOEhKAwNM6koig@mail.gmail.com>
References:  <CA%2BrGx5ekwmBNUJKoCOk1c-ts_Q_VXuRoQ4Krkuqey_c-KZbaXQ@mail.gmail.com> <86qzuo1ab1.fsf@ltc.des.dev> <CA%2BrGx5cF%2B-QTh95Jw1hs59Dsyk7TSAn%2BYBfWw_suNY98Q7i56w@mail.gmail.com> <868qgw14xj.fsf@ltc.des.dev> <CA%2BrGx5d3ZOXZM6yw4eyO-CbhjiCGu%2BZz1COmLiRDOOQEiOa1Qg@mail.gmail.com> <864irj1ett.fsf@ltc.des.dev> <CA%2BrGx5eKUx2KzfN=81pKrTkC6-3yhKiBn_2xgLqC5oADBuddSg@mail.gmail.com> <86jz0fyzjj.fsf@ltc.des.dev> <CA%2BrGx5dZgdMkW7zWsrbwLast8t_BhBZt6CF75H8VjW_Lez7cYA@mail.gmail.com> <31a80d2d-65b3-4604-ac5f-1440d23fb85a@plan-b.pwste.edu.pl> <CA%2BrGx5cUAo-93t1fTDhEeLxqrJ4ewb%2BriLfodOEhKAwNM6koig@mail.gmail.com>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
W dniu 3.11.2025 o 23:43, Thomas Schweikle pisze:
> Followed your idea:
>
> # make buildworld
> # make buildkernel
> # mergemaster
> # etcupdate extract
> Failed to build new tree.
>
> It is broken. It only works if you unpack installation from CD, DVD or 
> file. In all other cases it breaks. etcupdate has a "henn and egg" 
> problem. If you build from sources it wont work. Regardless at which 
> position you'll try to "etcupdate extract". It only works if you 
> unpacked "/etc" from CD, DVD, or file. If it was cloned by "git clone 
> https://github.com/freebsd/freebsd-src.git /usr/src" followed by "git 
> checkout" or not it will break. It will even break if you first build 
> world and or not kernel. It goes haywire if you just wipe sources, and 
> start from scratch.
> etcupdate needs something not there, if you build "/usr/src" by "git 
> clone https://github.com/freebsd/freebsd-src.git /usr/src", then 
> building world, and kernel but it is there if you unpack sources from 
> tarball.
>
Hello Thomas,

the user experience is crucial for the FreeBSD community. We should not 
abandon users who are continuously upgrading from FreeBSD 5.0-RELEASE to 
FreeBSD 15.0-STABLE, but debugging in such environments can be 
difficult. My guess is that something nonstandard in your make.conf or 
src.conf is preventing etcupdate from working correctly on that system. 
Please examine and audit these files carefully.

To clarify, during the transition from mergemaster to etcupdate, it's 
better to run etcupdate multiple times, even more than required, since 
it can sometimes behave unpredictably, generating conflicts - especially 
if there are old files left in /var/db/etcupdate but you attempt to 
restart the migration from mergemaster to etcupdate. If 
/var/db/etcupdate/ does not exist before the step "etcupdate extract", 
the transition process should be much smoother and more straightforward.

Cheers
Marek


[-- Attachment #2 --]
<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">W dniu 3.11.2025 o 23:43, Thomas
      Schweikle pisze:<br>
    </div>
    <blockquote type="cite"
cite="mid:CA+rGx5cUAo-93t1fTDhEeLxqrJ4ewb+riLfodOEhKAwNM6koig@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">Followed your idea:
        <div><br>
        </div>
        <div># make buildworld<br>
          # make buildkernel<br>
          # mergemaster<br>
          # etcupdate extract</div>
        <div>Failed to build new tree.</div>
        <div><br>
          It is broken. It only works if you unpack installation from
          CD, DVD or file. In all other cases it breaks. etcupdate has a
          "henn and egg" problem. If you build from sources it wont
          work. Regardless at which position you'll try to "etcupdate
          extract". It only works if you unpacked "/etc" from CD, DVD,
          or file. If it was cloned by "<span
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif">git
            clone </span><a
            href="https://github.com/freebsd/freebsd-src.git"
            target="_blank"
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif"
            moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/freebsd/freebsd-src.git</a><span
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif"> /usr/</span><span
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif">src"
            followed by "git checkout" or not it will break. It will
            even break if you first build world and or not kernel. It
            goes haywire if you just wipe sources, and start from
            scratch.</span></div>
        <div><span
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif">etcupdate
            needs something not there, if you build "/usr/src" by "</span><span
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif">git
            clone </span><a
            href="https://github.com/freebsd/freebsd-src.git"
            target="_blank"
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif"
            moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/freebsd/freebsd-src.git</a><span
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif"> /usr/</span><span
style="font-family:Roboto,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif">src",
            then building world, and kernel but it is there if you
            unpack sources from tarball.<br>
            <br>
          </span></div>
      </div>
    </blockquote>
    <p>Hello Thomas,</p>
    <p>the user experience is crucial for the FreeBSD community. We
      should not abandon users who are continuously upgrading from
      FreeBSD 5.0-RELEASE to FreeBSD 15.0-STABLE, but debugging in such
      environments can be difficult. My guess is that something
      nonstandard in your make.conf or src.conf is preventing etcupdate
      from working correctly on that system. Please examine and audit
      these files carefully.<br>
      <br>
      To clarify, during the transition from mergemaster to etcupdate, 
      it's better to run etcupdate multiple times, even more than
      required, since it can sometimes behave unpredictably, generating
      conflicts - especially if there are old files left in
      /var/db/etcupdate but you attempt to restart the migration from
      mergemaster to etcupdate. If /var/db/etcupdate/ does not exist
      before the step "etcupdate extract", the transition process should
      be much smoother and more straightforward.</p>
    <p>Cheers<br>
      Marek</p>
    <br>
  </body>
</html>
home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43c4ae93-71e2-4b2e-b265-b84b96a70666>