From owner-freebsd-hackers@freebsd.org Wed May 1 03:56:46 2019 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 04312158331C; Wed, 1 May 2019 03:56:46 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id E73A974C1C; Wed, 1 May 2019 03:56:43 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA id LgMEhBJ2TldkPLgMFhnFVa; Tue, 30 Apr 2019 21:56:36 -0600 X-Authority-Analysis: v=2.3 cv=Ko4zJleN c=1 sm=1 tr=0 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17 a=jpOVt7BSZ2e4Z31A5e1TngXxSK0=:19 a=8nJEP1OIZ-IA:10 a=oexKYjalfGEA:10 a=YxBL1-UpAAAA:8 a=6I5d2MoRAAAA:8 a=q2XNxBO46EK3obBdrt4A:9 a=wPNLvfGTeEIA:10 a=Ia-lj3WSrqcvXOmTRaiG:22 a=IjZwj45LgO3ly-622nXo:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 8BF6514E; Tue, 30 Apr 2019 20:56:33 -0700 (PDT) Received: from slippy.cwsent.com (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x413uX67074032; Tue, 30 Apr 2019 20:56:33 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Received: from slippy (cy@localhost) by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x413uUnV068470; Tue, 30 Apr 2019 20:56:32 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201905010356.x413uUnV068470@slippy.cwsent.com> X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Miroslav Lachman <000.fbsd@quip.cz> cc: David Chisnall , FreeBSD Stable , freebsd-ports@freebsd.org, =?UTF-8?Q?Goran_Meki=c4=87?= , freebsd-hackers@freebsd.org, FreeBSD Current , freebsd-pkgbase@freebsd.org, freebsd-pkg@freebsd.org Subject: Re: CFT: FreeBSD Package Base In-Reply-To: Message from Miroslav Lachman <000.fbsd@quip.cz> of "Wed, 01 May 2019 00:03:44 +0200." <292eadc6-3662-ec43-1175-53fc252487bd@quip.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Date: Tue, 30 Apr 2019 20:56:30 -0700 X-CMAE-Envelope: MS4wfN/xmWRaWQf4f3J4LUJQu3pZlq2R+heRrUgbSIStI3jW7zX/5fMm4b0wrONS30PxYTM3L4AEceAbaUlH0j4Ssk2hgu0ilk7uSIb2ZQm3B34wLKJrGhxU HwWqFVGWz0FbohtGB8vZe+ZhlwMlOl+nV4bTEhDv1vj7LNpbO3NZmQOnMb1uHsrEYnimp8U3o5Ldv1Btob7Oz5spUCDh01syPNS8efzuut3lZbEWglh78Iul sPyzs8ESB8rbpCG1Etz3uwemvekBrPSWvbdp4F0pPhs+i985u/KunSKaEPyPP+EnNKeIq6a2IowFuvaH5ee+dvx8eKz/lEv74EXMf7LyIodLisYvO6SVjh3b 05bnRfDMx0Uroy8xz142FesMv0fY2sueoDnS5Afs/XbfU78s8tk0bOhtge4PbZSjTvqk5TyKv8onRizm9SpnzbpATzmeHLo6AdBYkyy7AWk5lCjRClOg0mbc 1/pTZMJvQHzSrCWq X-Rspamd-Queue-Id: E73A974C1C X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-3.63 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; HAS_XAW(0.00)[]; MX_GOOD(-0.01)[cached: spqr.komquats.com]; NEURAL_HAM_SHORT(-0.94)[-0.937,0]; RCPT_COUNT_SEVEN(0.00)[9]; RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; MIME_TRACE(0.00)[0:+]; RCVD_IN_DNSWL_LOW(-0.10)[12.134.59.64.list.dnswl.org : 127.0.5.1]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; RCVD_COUNT_FIVE(0.00)[5]; REPLYTO_EQ_FROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; IP_SCORE(-2.49)[ip: (-6.68), ipnet: 64.59.128.0/20(-3.21), asn: 6327(-2.46), country: CA(-0.09)]; TO_MATCH_ENVRCPT_SOME(0.00)[]; R_SPF_NA(0.00)[]; SUSPICIOUS_RECIPS(1.50)[] X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 May 2019 03:56:46 -0000 In message <292eadc6-3662-ec43-1175-53fc252487bd@quip.cz>, Miroslav Lachman wri tes: > David Chisnall wrote on 2019/04/30 10:22: > > On 29/04/2019 21:12, Joe Maloney wrote: > >> With CFT version you chose to build, and package individual components > >> such as sendmail with a port option.  That does entirely solve the > >> problem of being able to reinstall sendmail after the fact without a > >> rebuild of the userland (base) port but perhaps base flavors could > >> solve that problem assuming flavors could extend beyond python. > > > > This sounds very much like local optimisation. It's now easy to create a > > custom base image.  Great.  But how do I express dependencies in ports > > on a specific base configuration? This is easy if I depend on a specific > > base package, but how does this work in your model?  For example, if I > > have a package that depends on a library that is an optional part of the > > base system, how do I express that pkg needs to either refuse to install > > it, or install a userland pkg that includes that library in place of my > > existing version as part of the install process? > > > > More importantly for the container use case, if I want to take a > > completely empty jail and do pkg ins nginx (for example), what does the > > maintainer of the nginx port need to do to express the minimum set of > > the base system that needs to be installed to allow nginx to work? > > > > One of the goals for the pkg base concept was to allow this kind of use > > case, easily creating a minimal environment required to run a single > > service. With a monolithic base package set, you're going to need some > > mechanism other than packages to express the specific base subset > > package that you need and I think that you need to justify why this > > mechanism is better than using small individual packages. > > Will it not be maintainer's nightmare to take care of all the > dependencies on the base packages for each port we have in the ports tree? No more than it is today. Remember, people have been doing this sort of thing for decades. If the folks at Red Hat, Oracle (formerly Sun), and IBM can do it, I'm sure we can too. The dependency lists will be longer. We may require dependency lists that allow the choice of one of many prereqs or coreqs. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few.