[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: A plan for parameterized packages
From: |
Danny Milosavljevic |
Subject: |
Re: A plan for parameterized packages |
Date: |
Sun, 15 Nov 2020 21:46:58 +0100 |
Hi Ludo,
nice feature!
On Sun, 15 Nov 2020 17:33:28 +0100
Ludovic Courtès <ludo@gnu.org> wrote:
> An important question: do we have examples of packages for which we’d
> like to have parameters?
For the embedded/flash rom side:
* Enable/disable building the documentation. I really don't need a 40 MiB
manual stored onto a 16 MiB firmware flash chip. If that's better done as an
extra output, fair enough.
* Enable/disable obscure dependencies: Library packages that pull in 400 MiB Qt
into the closure for a thing no one (TM) uses should probably provide a switch
to
disable that GUI. Sometimes a package provides multiple GUIs for different
toolkits, in which case one should be able to choose one toolkit and not
build for the others.
* No, even in 2020, I won't start using AmigaFS, NFSv3 and whatever old
protocol/format is still around and superseded by other protocols.
The gexp-functionality of being able to select individual files of a package
is already very useful for use cases an embedded developer would have
(and that's there for a long time already). So that's nice!
For the kind of feature flags I have in mind, it usually means I don't want
to have the feature *anywhere*--for example, if I don't want to have Qt or
Kerberos or whatever, that's because I want to save the space and thus
it should be able to be *globally* specified--at least per profile.
It doesn't help one bit for space savings if package A doesn't pull in
Kerberos or latex or or Haskell bindings for a Raspberry Pi serial port
library (guess why that's oddly specific ;) ), but package B does.
However, sometimes using static libraries is better and there's no reason to
build the shared libraries. But that's very much local to whatever I'm
trying to do (at least local to a profile if not package).
I would advise against doing a grep -r -- --enable and introducing all those
as parameters. Rather I would check the closure of stuff and if the closure
goes from 1200 MiB to 50 MiB, chances are a parameter would be nice there :)
I guess the kind of flags I envision would be set at profile level.
From experience with Gentoo before I can tell you that the combinatory
explosion is a real problem and most of the "more advanced" (toggled more
switches :) ) combinations did not work the majority of the time.
pgp2_DNa8QFbj.pgp
Description: OpenPGP digital signature
- Re: A plan for parameterized packages, (continued)
Re: A plan for parameterized packages, zimoun, 2020/11/15
Re: A plan for parameterized packages, Taylan Kammer, 2020/11/15
Re: A plan for parameterized packages,
Danny Milosavljevic <=
Re: A plan for parameterized packages, raingloom, 2020/11/15
Re: A plan for parameterized packages, Denis 'GNUtoo' Carikli, 2020/11/19
Re: A plan for parameterized packages, Ludovic Courtès, 2020/11/20
Re: A plan for parameterized packages, zimoun, 2020/11/20