From owner-freebsd-ports@freebsd.org Wed Oct 5 20:44:29 2016 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C7FF2AF6503 for ; Wed, 5 Oct 2016 20:44:29 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id ABF5293D for ; Wed, 5 Oct 2016 20:44:29 +0000 (UTC) (envelope-from julian@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id A8524AF6502; Wed, 5 Oct 2016 20:44:29 +0000 (UTC) Delivered-To: ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A7E36AF6501 for ; Wed, 5 Oct 2016 20:44:29 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "vps1.elischer.org", Issuer "CA Cert Signing Authority" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 8C74093C; Wed, 5 Oct 2016 20:44:29 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from julian-mbp3.pixel8networks.com (50-196-156-133-static.hfc.comcastbusiness.net [50.196.156.133]) (authenticated bits=0) by vps1.elischer.org (8.15.2/8.15.2) with ESMTPSA id u95KiPgt051049 (version=TLSv1.2 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Wed, 5 Oct 2016 13:44:27 -0700 (PDT) (envelope-from julian@freebsd.org) Subject: Re: dependency explosions To: Miroslav Lachman <000.fbsd@quip.cz>, Mathieu Arnold , "ports@FreeBSD.org" References: <2df71272-7b98-ad73-650a-3ec70beb71d5@freebsd.org> <3b3f3e28-d759-d654-24c0-97fa5683837d@freebsd.org> <88debba1-df87-7ab6-447b-4a63b5e9c44b@freebsd.org> <57F5651D.8060406@quip.cz> From: Julian Elischer Message-ID: <2aa0e509-3361-6aad-1494-36efdabdde1b@freebsd.org> Date: Wed, 5 Oct 2016 13:44:19 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <57F5651D.8060406@quip.cz> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Oct 2016 20:44:29 -0000 On 5/10/2016 1:39 PM, Miroslav Lachman wrote: > Julian Elischer wrote on 10/05/2016 22:04: >> On 4/10/2016 11:38 PM, Mathieu Arnold wrote: >>> Le 05/10/2016 à 05:18, Julian Elischer a écrit : >>>> On 3/10/2016 5:14 AM, Mathieu Arnold wrote: >>>>> Le 01/10/2016 à 04:35, Julian Elischer a écrit : >>>>>> There is a need for a "minimum" install of a lot of packages. >>>>> Some dependencies are often optional, and can be unchecked by >>>>> running >>>>> make config. >>>>> >>>>>> Such a 'minimum' install should probably be the default when >>>>>> coming in >>>>>> as a dependency, as >>>>>> there is an increasing tendency to configure things with all >>>>>> the bells >>>>>> and whistles. >>>>> The bare minimum will never be the default. The default is what >>>>> will >>>>> fit most people, so that they can use our packages out of the box. >>>>> >>>> I didn't say it should be the default, I said it should be an >>>> easy to >>>> request option, >>>> (without using the config screen on each of 25000 ports) >>>> e.g. setting PORTS_CONFIG_MINIMUM before making everything. >>>> Most ports and packages are installed not because people want them, >>>> but because they are forced to do so by dependencies. >>>> Giving a way to reduce the number of unrequested packages, in a >>>> simple >>>> way would be of great use to many many people >>> Feel free to open PR/provide patches for ports which you think >>> need to >>> provide more options. >> I think it would be a framework change. >> not so much a per-port change. >> By default, when the variable is set you take the list of options for >> the package, and set them all to 'unset'. >> >> The only packages that would need work would be those for which >> that is >> not a valid configuration, in which case you would supply some >> precanned >> list of options to set to unset (or similar) e.g. >> MIN_SETTINGS="bla foo >> bar" > > >> the point is that if I'm including a port becuase it's just a prereq. >> then I probably want almost no options set.. The port itself can >> probably know what options are likely to be needed by things that need >> it adn can possibly supply a sensible setting but if it doesn't it >> might >> be possible to just do it automatically. It's ridiculous that a single >> small port can pull in python, perl and TCL (I forget which it was) >> along with some 40 or so other packages. > > > There is one more problem - port A needs port B as dependency, port > B can be compiled with 4 options [W,X,Y,Z], port A needs port B with > option X which pull port C as dependency. > So this needs to be set somewhere or else default minimal options > would break some ports. any non-minimum port would trump a minimum port I would think. (and replace it?) it's just an idea. Born from frustration of not being able to do thigs because htey call in too many other things. If you call in too many other things the chance of one of them breaking gets higher. (approaches unity in some cases I think). > Miroslav Lachman > >