From nobody Wed Aug 9 12:38:22 2023 X-Original-To: freebsd-current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4RLV3B4d7dz4pvVf for ; Wed, 9 Aug 2023 12:38:30 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from www121.sakura.ne.jp (www121.sakura.ne.jp [153.125.133.21]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4RLV381Cjnz3YVj for ; Wed, 9 Aug 2023 12:38:27 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Authentication-Results: mx1.freebsd.org; dkim=none; spf=none (mx1.freebsd.org: domain of junchoon@dec.sakura.ne.jp has no SPF policy when checking 153.125.133.21) smtp.mailfrom=junchoon@dec.sakura.ne.jp; dmarc=none Received: from kalamity.joker.local (123-1-88-210.area1b.commufa.jp [123.1.88.210]) (authenticated bits=0) by www121.sakura.ne.jp (8.16.1/8.16.1/[SAKURA-WEB]/20201212) with ESMTPA id 379CcMYe093952 for ; Wed, 9 Aug 2023 21:38:23 +0900 (JST) (envelope-from junchoon@dec.sakura.ne.jp) Date: Wed, 9 Aug 2023 21:38:22 +0900 From: Tomoaki AOKI To: freebsd-current@freebsd.org Subject: Re: Has the update procedure changed? Message-Id: <20230809213822.950a3c337ec86c102dcbd235@dec.sakura.ne.jp> In-Reply-To: References: <7A0E604D-EF40-4F10-B597-F1F076507192@gmail.com> Organization: Junchoon corps X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; amd64-portbld-freebsd13.2) List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@freebsd.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spamd-Result: default: False [0.89 / 15.00]; SUBJECT_ENDS_QUESTION(1.00)[]; AUTH_NA(1.00)[]; NEURAL_HAM_SHORT(-1.00)[-1.000]; MV_CASE(0.50)[]; NEURAL_HAM_LONG(-0.46)[-0.465]; NEURAL_HAM_MEDIUM(-0.14)[-0.143]; MIME_GOOD(-0.10)[text/plain]; ONCE_RECEIVED(0.10)[]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[freebsd-current@freebsd.org]; DMARC_NA(0.00)[sakura.ne.jp]; RCPT_COUNT_ONE(0.00)[1]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_SPF_NA(0.00)[no SPF record]; RCVD_COUNT_ONE(0.00)[1]; HAS_ORG_HEADER(0.00)[]; TO_DN_NONE(0.00)[]; R_DKIM_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; ASN(0.00)[asn:7684, ipnet:153.125.128.0/18, country:JP]; MLMMJ_DEST(0.00)[freebsd-current@freebsd.org] X-Spamd-Bar: / X-Rspamd-Queue-Id: 4RLV381Cjnz3YVj On Tue, 8 Aug 2023 23:22:32 -0700 Kevin Oberman wrote: > On Mon, Aug 7, 2023 at 9:12 AM Matthias Apitz wrote: > > > El día lunes, agosto 07, 2023 a las 08:51:55a. m. -0700, Kevin Oberman > > escribió: > > > > > On Sun, Aug 6, 2023 at 9:51 AM Tim Kellers wrote: > > > > > > > > > > > > > > > On Aug 6, 2023, at 11:05 AM, Kevin Oberman > > wrote: > > > > > > > >  > > > > On Sat, Aug 5, 2023 at 10:51 PM Matthias Apitz > > wrote: > > > > > > > >> In the past I was used to use the following procedure to install a new > > > >> kernel and world: > > > >> > > > >> # cd /usr/src > > > >> # make installkernel > > > >> # shutdown -r now > > > >> > > > >> boot -s from the loader prompt > > > >> > > > >> # adjkerntz -i > > > >> # mount -a -t ufs > > > >> # mergemaster -p > > > >> # cd /usr/src > > > >> # make installworld > > > >> # mergemaster > > > >> # yes | make delete-old > > > >> # yes | make delete-old-libs > > > >> > > > >> # reboot > > > >> > > > ... > > > > > I am more confused about "etcupdate -p". Both files put it after the > > > kernel installation and reboot but before the installworld. The man page > > > for etcupdate says that '-p' it should be run before "make buildworld" > > and > > > I have always followed the man pages. > > > > The man page of mergemaster says: > > > > -p Pre-buildworld mode. > > > " > > > > > i.e. it must be run after installkernel and before installworld to > > adjust the new /etc/group and /etc/master.passwd. After installworld > > mergemaster > > should be run (or etcupdate) without -p to adjust all the scripts below > > /etc, /etc/rc.d/ ... I've used this procedure above for many years and > > it always let me decide it I want the new or the old or deal later with > > the diff of all these files. And so I did it yesterday and it worked fine > > again. > > > > Will check the next time what etcupdate wants to do, because it seems > > the sucsessor of mergemaster. > > > > matthias > > > > -- > > Matthias Apitz, ✉ guru@unixarea.de, http://www.unixarea.de/ > > +49-176-38902045 > > Public GnuPG key: http://www.unixarea.de/key.pub > > > > etcupdate is the successor to mergemaster. It is vastly better, but does > have a learning curve when you first start using it. Also, it has quite a > few commands that are seldom needed and I think that intimidates people a > bit. Unless you understand a three-way merge, it is confusing. It's not > complicated, but different from mergemster. (freebsd-update always has done > a three-way merge.) > > I don't see how you get this from the man page. > "Compares only files known to be > essential to the success of {build|install}world, i.e., > /etc/group and /etc/master.passwd. > > If it is potentially updating files that MIGHT be essential to a successful > buildworld, running it after buildkernel seems quite wrong. At least I read > {build|install}world as buildworld or installworld. > > -- > Kevin Oberman, Part time kid herder and retired Network Engineer > E-mail: rkoberman@gmail.com > PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683 Please correct me if I'm missing something. I use source update for years and not using bsdinstall nor freebsd-update. Does bsdinstall (and/or freebsd-update) create the first current tree for etcupdate, if not yet exists? This would be most confusing and harmful point of etcupdate. When I first tried etcupdate, I didn't noticed that I needed `etcupdate extract -B` BEFORE UPDATING src tree. Without this, etcupdate cannot detect what should be updated, even if a plenty of updates are required. At the moment, I must use mergemaster, and after that, `etcupdate extract -B` for next run. I think bsdinstall can create current tree, which is turned over to old tree on actual run, for etcupdate. So do freebsd-update. It would be able to create current tree JUST BEFORE INSTALLING UPDATE. I was helped by mergemaster, but after it completely retires, features above should be mandatory. -- Tomoaki AOKI