From nobody Wed Aug 6 21:17:19 2025 X-Original-To: freebsd-pkgbase@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 4by3604zc5z64Dnt for ; Wed, 06 Aug 2025 21:17:28 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-qv1-xf2d.google.com (mail-qv1-xf2d.google.com [IPv6:2607:f8b0:4864:20::f2d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4by35z5vDsz3GQ2 for ; Wed, 06 Aug 2025 21:17:27 +0000 (UTC) (envelope-from markjdb@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=OF27ahJc; spf=pass (mx1.freebsd.org: domain of markjdb@gmail.com designates 2607:f8b0:4864:20::f2d as permitted sender) smtp.mailfrom=markjdb@gmail.com; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=freebsd.org (policy=none) Received: by mail-qv1-xf2d.google.com with SMTP id 6a1803df08f44-7074bad053bso5202756d6.0 for ; Wed, 06 Aug 2025 14:17:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1754515042; x=1755119842; darn=freebsd.org; h=content-disposition:mime-version:message-id:subject:to:from:date :sender:from:to:cc:subject:date:message-id:reply-to; bh=sD1IreShksuNCoA7rsrY94on5ZMPr42X7ImzVGxvtqs=; b=OF27ahJcdzN2rabtk1Cq7qGULoQr9zSnu2BbvEcp11gyiB8Wb1RG7psddRi3dXpOU9 hvh8VJ2WZ4iUUcZ0dsnjjpx8wnZpzed6ASWtXKxk5KeygmIJc6Ep65gsVCcrr7SU+U3a tJdV8BqH/LS9Z5/7SgxPzuRj4oN79qr4SNJiORMfNC8YGHcOKLMKFpUCaTx8CZoj4HD2 py+7Qm//dPm/SNnJP9VGxtE73s3nDcyfECLirCZ98RPOTp2F4iF8Aj2NvZkowMU+1R2K A7cPgGACZdKIXdPt9d4rBBTznCY9KDKCldkEGVkaOMlsdRz0X56e/G7UeJZ0bDGdOqPB 6C8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1754515042; x=1755119842; h=content-disposition:mime-version:message-id:subject:to:from:date :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=sD1IreShksuNCoA7rsrY94on5ZMPr42X7ImzVGxvtqs=; b=HwdQm3CVkSGI7pBUsxCcx9ktelzaBIzQWaTnuPXXQbQaPCRuA9z50mypvNpxNOfCHU 1+2+fsM6g4xbyf3c3MCMbq/huqOtv2JDZUECMvYrnmJvtBgai4wmnXah6ojDa9z0tIGN 8+P80DNZlZHi+b7z3uzmY3pxRjNBBhq3DcY5wOCNY1wURyW/wuNIEb4J6DZUIaoYsMnA X9fkZnbzmPl5AJZr/I5EBcuuwb3c0+2cQFRQMPDddTJigrI9gZYFC1IxxvrJlA/KSyP2 njF+LdHyIsNmLGVsqKWHm+ij3nAoK7YhF6Jg2Cs7ChRrlpu2Rxkgl3AkieWxJv/wBPFC FdYg== X-Gm-Message-State: AOJu0YwX5ecRCZ2dgVXOqDpT1E5Zw4dg5Z1DGlK0szVJ8zij8gI4WIIr jlaCgkUihfGhqwRXzUQ3d+mnT7x3+fRWbTKtKRSSAjVWaMZ1N5/UlzPMEijYsMf7 X-Gm-Gg: ASbGncvXbj8pHY0URKQEFQuS6o1rX7HGaVEBVr+t4KbQ73ZnG0+hm4tTNZmIVWLbmjC dgUr0wqBmHBDlVRx8EZHP8Q4n9OHBDsmAiOCCGK0kcySqSG4XxE9c73tF4UpeQlxFHiVdEQuetU LA1ZjaMUyg7GIvETh/O0KTrhfmHfa6s0oU8AZMRR4i9OAdMuFOdSfHyMUcyEqhgbbxJxcNWDMhp x/bkUfWj6kgUn9o6yqQgGOs2nvEPldZzDqMi7O+gthnyDmzmRdfHDXAktdLc9/gVKkXir0BhxfQ lWz2KZsk79jHNCmamoEDOC1uUSVR8D6RJY4pZ0BXIujMcAWpyBO47dlrKdx5t4Uu9IME1TOI87J orPPx8+1+IJWxtu2hHu5f0SnMTbKnkX5Hq2I7 X-Google-Smtp-Source: AGHT+IEuOEMWB6rWNa8DwBbNIPjZtUWzz7UhYMZhacy447AAa3uRgaj3QLu4K4SkTxUXdCgg06Vr2A== X-Received: by 2002:a05:6214:27ea:b0:707:3314:793d with SMTP id 6a1803df08f44-7097969ff73mr67556806d6.37.1754515041786; Wed, 06 Aug 2025 14:17:21 -0700 (PDT) Received: from nuc (192-0-220-237.cpe.teksavvy.com. [192.0.220.237]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-7077ca3c73asm90273236d6.32.2025.08.06.14.17.21 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 06 Aug 2025 14:17:21 -0700 (PDT) Date: Wed, 6 Aug 2025 17:17:19 -0400 From: Mark Johnston To: freebsd-pkgbase@freebsd.org Subject: freebsd-update and pkgbase Message-ID: List-Id: Packaging the FreeBSD base system List-Archive: https://lists.freebsd.org/archives/freebsd-pkgbase List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-pkgbase@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Spamd-Result: default: False [-1.84 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; MID_RHS_NOT_FQDN(0.50)[]; FORGED_SENDER(0.30)[markj@freebsd.org,markjdb@gmail.com]; NEURAL_HAM_SHORT(-0.24)[-0.241]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; MIME_GOOD(-0.10)[text/plain]; DMARC_POLICY_SOFTFAIL(0.10)[freebsd.org : SPF not aligned (relaxed), DKIM not aligned (relaxed),none]; RCVD_TLS_LAST(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; ARC_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MISSING_XM_UA(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; TO_DN_NONE(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FROM_NEQ_ENVFROM(0.00)[markj@freebsd.org,markjdb@gmail.com]; DKIM_TRACE(0.00)[gmail.com:+]; PREVIOUSLY_DELIVERED(0.00)[freebsd-pkgbase@freebsd.org]; TO_DOM_EQ_FROM_DOM(0.00)[]; MLMMJ_DEST(0.00)[freebsd-pkgbase@freebsd.org]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::f2d:from] X-Rspamd-Queue-Id: 4by35z5vDsz3GQ2 X-Spamd-Bar: - The future of freebsd-update post 15.0 isn't totally clear. There have been proposals to remove it in 15.0. IMO we can't remove it outright, since may be needed in order to upgrade 13.x and 14.x jails on a 15.0 host. It is also a shame to lose a simple upgrade utility that is well-documented and that many users are familiar with; compare "freebsd-update upgrade -r 14.3-RELEASE" with the upgrade instructions on the pkgbase wiki page. pkgbase offers a lot of flexibility but I suspect many users don't need it; they need a one-shot "upgrade my system, please" utility that will automatically create a boot environment, configure pkg repositories as needed for major/minor/security upgrades, fetch packages, and handle package installation order (i.e., kernel first, followed by a reboot). I don't really think this functionality belongs in pkg itself. So, seeing as freebsd-update already handles some of the above, and users are already familiar with it, I propose extending freebsd-update to work in a pkgbase world. Users would be free to not use it and instead use pkg directly if they so desire, but this would provide a simple alternative to those who don't want or need that flexibility. I'm going to try implementing this, if only to see if there are any unexpected issues that come up. Feedback would be appreciated, both on the proposal itself and on any technical hurdles you see. Aside from the internal changes needed to make freebsd-update subcommands use pkg, I see a few tasks and requirements: - freebsd-update should be able to bootstrap pkgbase; in practice, I think this means that we should import pkgbaseify and make freebsd-update able to run it if the user so requests. - freebsd-update should possibly live in its own pkgbase package so that it can upgrade itself before the rest of the system. - freebsd-update should configure a pkgbase repository using a file in /etc/pkg, disabled by default so that regular "pkg upgrade" doesn't try to touch the base system. I'm not sure yet how repository configurations should be managed: should they be dynamically generated, or should we provide some bundle of configurations (e.g., one for every supported release), or? - We need to figure out how to handle freebsd-update.conf options which don't make sense in a pkgbase world.