From nobody Sat Oct 11 00:04:20 2025 X-Original-To: dev-commits-src-all@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 4ck3kX1qG0z6CDBV; Sat, 11 Oct 2025 00:04:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (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-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ck3kX1JNDz3X2y; Sat, 11 Oct 2025 00:04:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760141060; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=p3gjaM/1w1selrtDsHFySWo/HX0Hfcb1HgI8I09VfXA=; b=sbRNiOS7YbqpX1GQnHMY9w8duJkxFa43MWZ5i8ossEt1YBjNUrAVJKnx8OpPVu+5SeF9gw rayQCVj/HKHas4oZ0mwzL6D9N1IqcwI6f/KwD91dk41xjwRa1lb3A4n00G7fsmLHT5e5YE 3x/1cnXHK2g6cty2FWLXyIkO6Hu9R8A3QB1Tbn11vmJTR4I5E3diC8n4JjuLW2fIVRRArL xqqQ4W75ASCHzJMJkF6S63Wa9N1xBieopwd98PCwsWwUyZ0bMSgqClqom601p6q6k3DVSv 02mbI+Pmz4C4FQe8huo3+pjnOwTBJ0JlFMmE3p53AKxOaa3SwKwZNfwHA0H0Gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1760141060; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=p3gjaM/1w1selrtDsHFySWo/HX0Hfcb1HgI8I09VfXA=; b=DZqoch8RWH+xaVaIIga+si5OP8064MnS0GHfVGRWXhilatH6X4WEqwP+agVQHeD5POjHwk JPJnqiTIrUY2AIOPhsKLZd3m1NOQEjCnk3PbkI/u0ECVGJ9ox81h1/lQ8xnkSMLlEROg07 NsiPLCCTOp6kjYYrWr9MPVeCUUy7cgPLa/c8tCWb5EwPyahEr1+baqCWTPoqcOPGUgxnG5 tgct98z29Imh7vqzV7fCgmgN+ga0VY3mTVV0nvsn0LK8zwoEm1E+JBDO3Bh3iaXJA9VDJm 1I+THDew9wuDZodIQhm/StvpPt4v0X3J7g3YC5X3EpLEgMTKySynanD3xYpPRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1760141060; a=rsa-sha256; cv=none; b=Y3wEhQQzNI0e8YWbPcEMkO+PQrRkGSdP5x/E/LD4ChM3M9YT+iszqIZwU40kkvzwM3MwJ0 HYj5PyUnHdOVYNN9EB8g4ZmIEBd4poxEHCLJmT+MCEWdYQstRGdOYrj/gEEb2HwqnXgYSY bUY4FQRVBHCrEnyrFTwtU9RNx8t3t9miCiHmQLC9DYNriEZR+ZPNrissreTX5BURrx6GRi j7EVUwJzrTVj3jNNZJnyKmdJfSUXqw6NahkY1r79zSvzYmfVFhMsmGg86YfpEooGUX8Lma jRuOctiXdsSReDdO82hGtOZwy8eT122WDhGLGEyNgJPCKk2LqUdQpbgGsBdEbA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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 mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ck3kX0cD2z1N7f; Sat, 11 Oct 2025 00:04:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 59B04KNO082813; Sat, 11 Oct 2025 00:04:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 59B04Kar082810; Sat, 11 Oct 2025 00:04:20 GMT (envelope-from git) Date: Sat, 11 Oct 2025 00:04:20 GMT Message-Id: <202510110004.59B04Kar082810@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: b3c5c7d6f104 - stable/15 - vmimage.subr: metalog_add generated databases List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: b3c5c7d6f10433497fe66447a22e6184a8e1341f Auto-Submitted: auto-generated The branch stable/15 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=b3c5c7d6f10433497fe66447a22e6184a8e1341f commit b3c5c7d6f10433497fe66447a22e6184a8e1341f Author: Colin Percival AuthorDate: 2025-10-10 22:01:38 +0000 Commit: Colin Percival CommitDate: 2025-10-11 00:03:41 +0000 vmimage.subr: metalog_add generated databases The files /etc/login.conf.db, /etc/passwd, /etc/pwd.db, /etc/spwd.db, and /var/db/services.db are generated at install time. When VM images are built using installworld, there is Makefile code which emits the necessary METALOG lines; but the pkgbase triggers do not do this. This resulted in VM images which lacked these essential database files. VM images are currently the only place where this matters, since this issue is specific to non-root image builds uusing pkgbase. (In some point in the future we will start building release ISO iamges from pkgbase, at which point it will be a problem there as well.) The long-term solution for this is probably to teach the relevant database-creating tools to emit METALOG lines; but for now, just log the necessary files from vmimage.subr. Reviewed by: dch MFC after: 5 minutes Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D53034 (cherry picked from commit 6081365c27e68707ad25c98159e364ee90fcf5db) --- release/tools/vmimage.subr | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/release/tools/vmimage.subr b/release/tools/vmimage.subr index 067eb5ea48a8..15c4dd53e70b 100644 --- a/release/tools/vmimage.subr +++ b/release/tools/vmimage.subr @@ -213,6 +213,16 @@ vm_extra_install_packages() { install -y -r ${PKG_REPO_NAME} $pkg done metalog_add_data ./var/db/pkg/local.sqlite + + # Add some database files which are created by pkg triggers; + # at some point in the future the tools which create these + # files should probably learn how to record them in METALOG + # (which would simplify no-root installworld as well). + metalog_add_data ./etc/login.conf.db + metalog_add_data ./etc/passwd + metalog_add_data ./etc/pwd.db + metalog_add_data ./etc/spwd.db 600 + metalog_add_data ./var/db/services.db else if [ -n "${WITHOUT_QEMU}" ]; then return 0