From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pierre Neidhardt Subject: Re: Parameterized packages Date: Sat, 11 Jan 2020 12:31:43 +0100 Message-ID: <87v9piut40.fsf@ambrevar.xyz> References: <87woitz1xx.fsf@gnu.org> <87o945vze5.fsf@nckx> <8736ldq74z.fsf@netris.org> <20190719202906.lbanx5puk7t6q4cr@cf0> <87a7753boq.fsf@ambrevar.xyz> <87h813wah0.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:40431) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iqEzg-0005DU-9n for guix-devel@gnu.org; Sat, 11 Jan 2020 06:31:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iqEze-0004kG-DL for guix-devel@gnu.org; Sat, 11 Jan 2020 06:31:51 -0500 In-Reply-To: <87h813wah0.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane-mx.org@gnu.org Sender: "Guix-devel" To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Ludo! Ludovic Court=C3=A8s writes: > The way I see it, we=E2=80=99re still toying with the idea and its pros a= nd > cons=E2=80=94discussions about CLI syntax can come later. ;-) Sure thing! > The added flexibility of package parameters is definitely nice, but > really, maintainability is a big concern. The example Tobias gave (a > parameter to enable/disable X11 support) is interesting because it shows > that parameters can quickly become ubiquitous and get =E2=80=9Cout of con= trol=E2=80=9D, > from a maintenance viewpoint. What I understood from Tobias comment on the X11 support parameter is that we need to store the parameter metadata centrally. Why do you think this suggests it will get "out of control"? > That=E2=80=99s another good example of a problem that would arise. :-/ > It doesn=E2=80=99t seem reasonable to me to add complex logic in (guix pa= ckages) > to deal with this issue; I would very much prefer to leave input > handling unchanged. > > I=E2=80=99m worried about the maintenance cost of parameters. Having the > feature is one thing, but being able to guarantee that the package > combinations we offer all work is another one. > > We could have the feature and use it very seldom in Guix itself, but I=E2= =80=99m > guessing that that=E2=80=99s not what you have in mind. Indeed, the ultimate goal would be to do things like "install a headless system" and "use static libraries everywhere", etc. > Also, for CI purposes, we would need a way to enumerate all the possible > combinations=E2=80=A6 Considering the number of outputs would explode as parameters get added, it does not seem reasonable to try building everything. Maybe an easy option would be: =2D Only build the default packages (i.e. using the default values of the parameters). =2D If a non-default output is requested often enough (to be defined) then build it. =2D-=20 Pierre Neidhardt https://ambrevar.xyz/ --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEUPM+LlsMPZAEJKvom9z0l6S7zH8FAl4Zsh8ACgkQm9z0l6S7 zH/27QgAhy77AZFd8aAi6emFs/ViiQZlfdfKC35UgajC0q1tCmHUjB2BEDA1tEde Phm9D/qomS+wL/NcJEJnPAQyM1rVqXGHroa45RDmPb5l18yCLa829n3pwO4Odcne UR0u2PPGseAvuBfKkgQNd61cvBri2dG7xwjFEbtyWwbaQh1e2ajHc7S7CjCAcARU DvanXBN+KyPKrUb6XmEEz7rBRh4WrRqAGwSGZk6uQSVYVDR7teror/HxjsmRnAz0 t7iHl9SVQDlcr6uHmzQFWTlmnBIzeJSAND++kBnrG6mrw2XnT2oGqjVtjz69k6mS s6jbVRdpSedGVaxSeFLkZZ5OhlXf5A== =ZoOa -----END PGP SIGNATURE----- --=-=-=--