From owner-freebsd-questions@FreeBSD.ORG Sat Feb 14 18:14:18 2015 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6186FB7B for ; Sat, 14 Feb 2015 18:14:18 +0000 (UTC) Received: from glockenspiel.complete.org (glockenspiel.complete.org [192.99.4.47]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3B1211E2 for ; Sat, 14 Feb 2015 18:14:18 +0000 (UTC) Received: from [63.245.179.205] (helo=hephaestus.lan.complete.org) by glockenspiel.complete.org with esmtps (with TLS1.2:RSA_AES_128_CBC_SHA1:128) (TLS peer CN christoph.complete.org, certificate verified) (Exim 4.80) id 1YMgmg-0000ct-B6 for freebsd-questions@freebsd.org; Sat, 14 Feb 2015 11:45:38 -0600 Received: from [::1] by hephaestus.lan.complete.org with esmtp (Exim 4.84) (envelope-from ) id 1YMgmd-0003YH-9Y for freebsd-questions@freebsd.org; Sat, 14 Feb 2015 11:45:35 -0600 Message-ID: <54DF89BE.6010005@complete.org> Date: Sat, 14 Feb 2015 11:45:34 -0600 From: John Goerzen User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.3.0 MIME-Version: 1.0 To: freebsd-questions@freebsd.org Subject: Ports/Packages and release engineering Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 14 Feb 2015 18:14:18 -0000 Hello folks, FreeBSD was my first Unix roughly 20 years ago now, and I'm looking to pick it back up again. (I've been using Debian since then.) My knowledge is, ahem, dated ;-) I have some questions pertaining to the ports and packages -- hopefully this is the right list for them (I could take it to -ports if that would be better.) The questions mainly relate to two main lines of thought: ensuring consistency within the ports/packages collection, and ensuring consistency between ports and the base system. A lot of my questions may be "OK, I'm used to this happening in way X. What is the FreeBSD way= ?" So, it looks to me that ports is essentially always a -CURRENT tree. I don't see any reference in the handbook to selecting different branches of ports, or different branches that might happen to match different RELEASE versions. How, then, is quality maintained within the ports?=20 Is it just luck of the draw on when a local update happens that it gets a version that didn't have a silly bug that got corrected a day later, or how do ports get tested before being released to everyone? One thing I know from Debian is that there we often have "transitions" from Debian's unstable (roughly -CURRENT) to testing (roughly -STABLE) when certain groups of packages have to be transitioned in sync in order to avoid breakage. This might be things relating to KDE (such as Digikam), or another example is Haskell, where new versions of the compiler ghc introduce a different ABI requiring all the Haskell module packages to be rebuilt. There are plenty of examples, though. How are these handled in FreeBSD? When packages are updated, what happens to their config files and rc.d scripts? Are files in /usr/local/etc, /etc, {/usr/local,}/etc/rc.d never modified automatically, or is the administrator prompted on what to do (as in Debian)? If they are never modified automatically, how does a person know what changes to make after an update? This brings me to the question of how the ports/packages relate to the base system. A couple of things surprised me in researching this question: the first being the comment in the Handbook to reinstall the entire ports/packages system after a base system upgrade to a new major version, due to ABI incompatibilities. I would have thought backward ABI compatibility would be a pretty important design goal in FreeBSD.=20 The other thing was that ports are only tested against -CURRENT and -STABLE, therefore implying that even the current -RELEASE may not have working ports (let alone even an LTS -RELEASE). That leaves me concerned about the long-term viability of managing FreeBSD systems, but also wondering if I'm missing out on some important bit of information he= re. Speaking of which, when the base system is upgraded, how are administrator customizations in /etc and related configuration locations preserved? (Same question as with the ports updates above.) Another small question: I ran something like "pkg install xserver-xorg digikam vim screen bash" the other day in my FreeBSD test VM. I discovered quite a bit of information was printed out at the end from various packages, which scrolled off the screen. Is there a way to re-display all that information? It seems if it's important enough to display, it's important enough to display long enough to read ;-) Thanks everyone, John