From owner-freebsd-pkgbase@freebsd.org Sun Apr 12 11:32:58 2020 Return-Path: Delivered-To: freebsd-pkgbase@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4E77F2BAF21 for ; Sun, 12 Apr 2020 11:32:58 +0000 (UTC) (envelope-from list1@gjunka.com) Received: from msa1.earth.yoonka.com (yoonka.com [88.98.225.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "msa1.earth.yoonka.com", Issuer "msa1.earth.yoonka.com" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 490V3s0F37z41SZ for ; Sun, 12 Apr 2020 11:32:56 +0000 (UTC) (envelope-from list1@gjunka.com) Received: from crayon2.yoonka.com (crayon2.yoonka.com [10.70.7.20]) (authenticated bits=0) by msa1.earth.yoonka.com (8.15.2/8.15.2) with ESMTPSA id 03CBWsNZ000814 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Sun, 12 Apr 2020 11:32:54 GMT (envelope-from list1@gjunka.com) Subject: Re: /root on a separate dataset breaks FreeBSD-base installation To: "Rodney W. Grimes" Cc: freebsd-pkgbase@freebsd.org References: <202004120035.03C0ZUTB025045@gndrsh.dnsmgr.net> From: Grzegorz Junka Message-ID: <90ddb61f-4bac-b000-0ba6-4fe0c485d45e@gjunka.com> Date: Sun, 12 Apr 2020 11:32:54 +0000 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <202004120035.03C0ZUTB025045@gndrsh.dnsmgr.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-Rspamd-Queue-Id: 490V3s0F37z41SZ X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of list1@gjunka.com designates 88.98.225.149 as permitted sender) smtp.mailfrom=list1@gjunka.com X-Spamd-Result: default: False [-5.86 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:88.98.225.149]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[gjunka.com]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCPT_COUNT_TWO(0.00)[2]; IP_SCORE(-3.56)[ip: (-9.34), ipnet: 88.98.192.0/18(-4.67), asn: 56478(-3.74), country: GB(-0.07)]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:56478, ipnet:88.98.192.0/18, country:GB]; MID_RHS_MATCH_FROM(0.00)[]; RCVD_TLS_ALL(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-pkgbase@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Packaging the FreeBSD base system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Apr 2020 11:32:58 -0000 > The norm is there are very few cross directory links and > this is very rarely an issue unless someone modifies the > system in a way outside of the norm. Having /root as a > seperate dataset is outside the norm. Note this also > places /root outside of the boot environment directory > which may bring other issues in the future. > > Ports should all install stuff inder the /usr/local hierarchy > and that is usually self contained, so hard links are not > an issue there. > > Further note, if you have made /usr/local its own dataset > your defanitly going to have issues with boot environments > if you try to run more than 1 version of FreeBSD as /usr/local > is pretty version dependent. > > /var is a whole nother crap mess with boot environments, > pkg and multiple versions cause pkg stores its caches > and databases in /var and /var is not part of the BE. That's exactly my thinking. Boot environments might work for servers where there are very few packages installed on host directly and the host is usually running dedicated jails. But it's another story on a desktop where the system and all packages take 17GB. I don't want to be reinstalling everything manually whenever I upgrade the base system and I don't want to deal with pkg having to work across multiple boot environments. For desktop my preference is to keep one copy of /usr/local, var, tmp, root, home, and so on, so essentially just have the base system and basic configuration versioned in the boot environment. Sure, some packages won't work properly, but that's easy to fix. I build them with newer base on another system then reinstall all of them on the desktop. I don't consider /root as part of the base system. A hardlink doesn't make it part of a base system. It's home directory for the /root user, where I often have larger files that I either copy to install or just as a backup of some parts of the system. Versioning it per boot environment wouldn't make sense. --GrzegorzJ