A plea or sanity in port options menu

Gonzalo Nemmi gnemmi at gmail.com
Mon Feb 2 19:20:07 PST 2009


On Monday 02 February 2009 10:29:16 pm Eitan Adler wrote:
> Gonzalo Nemmi wrote:
> > On Monday 02 February 2009 6:39:25 pm Bill Moran wrote:
> >> In response to Warren Block <wblock at wonkity.com>:
> >>> On Mon, 2 Feb 2009, Bill Moran wrote:
> >>>> How about:
> >>>>
> >>>>       Options for port-fu
> >>>> [ ] BRG   Bernstein Riggs Guillotine parsing
> >>>> [X] QFZ   Quantum Freeze Zulu rending
> >>>>
> >>>> At least that one gives me _some_ idea what those TLAs mean.
> >>>
> >>> There was talk some time ago of having extended descriptions.  Several
> >>> ideas, but the one that made the most sense to me would be a box at the
> >>> bottom that would display a description as you moved through the
> >>> options:
> >>>
> >>> [.] BRG
> >>> [X] QFZ
> >>>
> >>> Bernstein Riggs Guillotine parsing
> >>>
> >>> with the . representing the cursor/highlight position.  Move down and
> >>> the bottom line would change to say "Quantum Freeze Zulu rending".  The
> >>> nice thing about the box at the bottom is it would give a full line or
> >>> possibly several lines for explanations.
> >>>
> >>> Seems like it could be added without breaking the existing system with
> >>> an optional OPTIONS_DESC variable that would correspond with OPTIONS.
> >>> I don't really know how hard that would be; ideas are cheap,
> >>> implementation more costly.
> >>
> >> I don't think there's any need for any new features in the ports
> >> infrastructure.  I think it's just a matter of Makefile authors taking
> >> the time to describe their options.  A quick test of some ports turns
> >> up this one:
> >>
> >>  [ ] OPENGL  OpenGL support
> >>
> >> True but useless.  How about:
> >>
> >>  [ ] OPENGL  Use OpenGL graphics library
> >>
> >> ...which, at least give the user _some_ idea what they're doing.
> >>
> >> OpenGL probably isn't a good example, however.  It's pretty easy to
> >> Google OpenGL and figure out what it is.  Here's some more bizarre
> >> options:
> >>
> >>  [X] EPUB          Epub modules
> >>  [X] EXTENSIONS    Extensions
> >>  [X] TEMPLATE      Templates
> >>  [X] TOOLS         Tools
> >>
> >> I mean, if I enable "Extensions", what happens?  How do I figure out
> >> what happens?  I have to read the Makefile, at which point having these
> >> options on a menu is pretty pointless.  I mean, I can't even come up
> >> with a Google search to help me figure out what "tools" are involved
> >> here.
> >>
> >> There are some ports that do this very well.  For example:
> >>  [ ] NLS               Use internationalized messages
> >>  [ ] PAM               Build with PAM support (server only)
> >>  [ ] LDAP              Build with LDAP authentication support
> >>  [ ] MIT_KRB5          Build with MIT's kerberos support
> >>  [ ] HEIMDAL_KRB5      Builds with Heimdal kerberos support
> >>  [ ] OPTIMIZED_CFLAGS  Builds with compiler optimizations (-O3)
> >>  [X] XML               Build with XML data type (server)
> >>  [X] TZDATA            Use internal timezone database (server)
> >>  [ ] DEBUG             Builds with debugging symbols
> >>  [ ] ICU               Use ICU for unicode collation (server)
> >>  [ ] INTDATE           Builds with 64-bit date/time type (server)
> >>
> >> I mean, a Google on ICU is liable to bring up all sorts of medical drama
> >> websites, but I can do a search for "ICU unicode" and find my answer on
> >> the first result.  Not only am I told that optimized compiler flags are
> >> an option, but I'm told the exact one that will be used (-O3)
> >>
> >> The porters handbook doesn't seem to offer any helpful advice on these:
> >> http://www.freebsd.org/doc/en/books/porters-handbook/makefile-options.ht
> >>ml
> >>
> >> In fact, the examples it provides are excellent examples of doing it
> >> WRONG.
> >>
> >> Let me see about making a patch to the porters handbook to provide some
> >> advice ...
> >
> > +1,000,000 on your idea.
> >
> > Yes .. you are absolutely right ... even if you know your way around make
> > && gcc && compiling software .. and even if you _really_ know your way
> > around make && gcc && compiling software, there's no chance on earth that
> > anyone can tell what does every single option on every single Makefile
> > actually mean.
> >
> > As you pointed out:
> >
> > [ ] BRG
> > [X] QFZ
> >
> > means _nothing_ to 99.9% of the users... Be Really Grumpy? Buy Red
> > Goggles? Quite Faster Zapping?? Quit Filtering Zealots??
> >
> > This kind of things really hurts the "good documentation" reputation that
> > FreeBSD has rightfully earned.
> >
> > And I do agree with you:
> >
> > " I don't think there's any need for any new features in the ports
> > infrastructure.  I think it's just a matter of Makefile authors taking
> > the time to describe their options. "
> >
> > And once again .. this is the way to go for me too:
> >> There are some ports that do this very well.  For example:
> >>  [ ] NLS               Use internationalized messages
> >>  [ ] PAM               Build with PAM support (server only)
> >>  [ ] LDAP              Build with LDAP authentication support
> >>  [ ] MIT_KRB5          Build with MIT's kerberos support
> >>  [ ] HEIMDAL_KRB5      Builds with Heimdal kerberos support
> >>  [ ] OPTIMIZED_CFLAGS  Builds with compiler optimizations (-O3)
> >>  [X] XML               Build with XML data type (server)
> >>  [X] TZDATA            Use internal timezone database (server)
> >>  [ ] DEBUG             Builds with debugging symbols
> >>  [ ] ICU               Use ICU for unicode collation (server)
> >>  [ ] INTDATE           Builds with 64-bit date/time type (server)
> >
> > no need to break anything ... just _be_verbose_
> >
> > Regards
>
> If you could give me a list of ports which do this I would glad to work
> on patches to send to the relevant maintainers.

Dear Eitan:

I have a full install coming my way in a week or two ... my own desktop ... 
7.0 -> 7.1 .. just need enough spare time, confidence in the fact that Xorg 
7.4 will install OK ... and maybe I'll even go as far as to install KDE 
4.2 ..., so I'll be glad to take notes on the relevant menus and then pass 
the list on to you.
If I happen to catch any of them before my desktop installation, I'll let you 
know right away.

Best regards

-- 
Blessings
Gonzalo Nemmi


More information about the freebsd-ports mailing list