Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 02 May 2019 06:09:00 -0500
From:      "Zane C. B-H." <v.velox@vvelox.net>
To:        Miroslav Lachman <000.fbsd@quip.cz>
Cc:        David Chisnall <theraven@freebsd.org>, FreeBSD Stable <freebsd-stable@freebsd.org>, freebsd-ports@freebsd.org, =?UTF-8?Q?Gor?= =?UTF-8?Q?an_Meki=C4=87?= <meka@tilda.center>, freebsd-hackers@freebsd.org, FreeBSD Current <freebsd-current@freebsd.org>, freebsd-pkgbase@freebsd.org, freebsd-pkg@freebsd.org, owner-freebsd-pkgbase@freebsd.org
Subject:   Re: CFT: FreeBSD Package Base
Message-ID:  <8d664f5eb336c955475c97332bcd2b2b@vvelox.net>
In-Reply-To: <292eadc6-3662-ec43-1175-53fc252487bd@quip.cz>
References:  <201904291931.x3TJV73d079802@slippy.cwsent.com> <6EB65F49-47CD-48B2-8C58-BF387D8C7A58@ixsystems.com> <daecd304-d4f6-7b15-3455-6a3b734cb258@FreeBSD.org> <292eadc6-3662-ec43-1175-53fc252487bd@quip.cz>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2019-04-30 17:03, Miroslav Lachman wrote:
> 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?

Speaking as a ports maintainer, it will be very annoying. Splitting it 
into a handful of large ass packages, same as you are presented with 
during install, would be best.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8d664f5eb336c955475c97332bcd2b2b>