suggestions for ports screening

Matthew Seaman m.seaman at infracaninophile.co.uk
Sun Nov 11 00:36:45 PST 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Edwin Groothuis wrote:
> On Sat, Nov 10, 2007 at 10:36:45PM -0500, Chuck Robey wrote:
>> An example?  If a programmer asks you if you want the blotz program (I 
>> make up great fake names, don't I?) hows the user going to know the the 
>> blotz program is a particular sound program, when they have no sound card?
> 
> When I search for a certain program with some capabilities, I go
> through the INDEX file (/usr/ports/INDEX) or I go to freshmeat or
> freshports and do a search there. If I don't see "blotz" there, I'm
> not interested in it.
> 
>> OK, My suggestion is for a two level system (yes, some of you are going 
>> to recognize some of this from other OSes.  G'wan, brag about it).  The 
>> first part is a small list of keywords (well, not terribly small, maybe 
>> 100-200 of them, but most user's personal lists would be far shorter). 
>> These words are descriptive of the sort of machine environment the user 
>> wants, like, they might have the words SOUND, FMRADIO and TELEVISION to 
>> show that they care to have those sort of dependencies built.  All ports 
>> would be required to export a list of words that they check for, before 
>> they  build.  If a browser sees no SOUND word, it requires to sound 
>> dependencies be built.  Let me repeat this to get it clearly: the words 
>> are used to qualify the dependcency lists, but if a particular port is 
>> chosen, then it gets built, period.  If a user asks for that sound 
>> program explicitly, then it gets built, SOUND word or no SOUND word. 
>> It's the dependency lists that have to check and modify themselves.
> 
> This sounds like the ports-tag project started by tobez@ a long
> time ago: http://www.tobez.org/port-tags/. Not sure what the current
> status is.

It's the Gentoo package masking system[*].  FreeBSD's KNOBS system
sits in much the same territory.  The big difference is that if I
put 'WITHOUT_X11 = yes' in my /etc/make.conf on FreeBSD then I'll
get a version of eg. emacs that doesn't depend on X11 but any other
port that has non-optional dependencies on X11 will cause all that
X11 stuff to be installed with never a murmur.  Adding '-X11' (or
whatever the precise syntax is) to the appropriate thing in
/etc/make.conf on a Gentoo box will cause the portage system to
block, or at least complain volubly about) the installation of X11
and anything that has an obligatory dependency on it.

Personally I feel that the existing FreeBSD setup is counter-
intuitive.  If I don't want X11 on this server, then I just put
'WITHOUT_X11 = yes' in /etc/make.conf and ... oh.  Enforcing the
action of KNOBS at a global level would accord with POLA, and it
shouldn't be impossibly difficult to insert into the existing state of things.

Given that  Gentoo blatantly stole the whole Portage concept from our ports[**], I feel that it would only be equitable if we returned the
favour.

	Cheers,

	Matthew

[*] Do I get a lollipop?

[**] As they were perfectly entitled to do.

- -- 
Dr Matthew J Seaman MA, D.Phil.                   7 Priory Courtyard
                                                  Flat 3
PGP: http://www.infracaninophile.co.uk/pgpkey     Ramsgate
                                                  Kent, CT11 9PW
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.4 (FreeBSD)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHNr8R8Mjk52CukIwRCKEXAJ0XH49mp6Zpnol77zLVhtxOmCuviACdEk2w
qivLCOUNkLJetpl+LEgvElM=
=DdaX
-----END PGP SIGNATURE-----


More information about the freebsd-ports mailing list