My thoughts, for what little they are worth...
(and considering my relative inexperience, they may not be worth much
8-)
Pull the DJB stuff out of ports.
Don't get me wrong, I've become quite a fan of djbdns, I respect DJB
for his skills as a programmer, and I can do nothing but be thrilled
at his goal -- and apparent success -- at writing "perfect" code.
However, this is really getting confusing.
His stuff is very easy to install on OpenBSD anyway (considering
OpenBSD is his reported development platform, no big surprise). He
makes enough changes in his programs that usually when I need a DNS
resolver at a client and do an install out of ports, it seems that
whatever is in ports is obsolete. Sure, I could CVS the new ports
tree (and hope it isn't an "old" system, no longer supported in ports,
like 2.7 or 2.8..which usually seems to be the case when I find a
client's ISP's DNS resolver is unreliable), but it is really easier
just to install the DJB way. He doesn't play by anyone else's rules,
and if you want to use his ball, you have to play his way. That's
fine, no one is holding a gun to anyone's head saying you must or you
can't.
I got caught napping on this whole /package issue and recently ended
up trying to install djbdns 1.0.5 with an "old" port (2.9 release) and
never quite figured out what I ended up with (and considering his
policy on distributing old code, it may not even have been legal).
Being the system was supposed to be in place the next day, I didn't
have time to figure it out. I just followed his (new) directions, and
things worked fine.
Camiel, please DON'T take this as any kind of comment on the quality
of the DJB ports, my frustration is aimed only at Bernstein (and even
then, it is fully respecting his rights to do what he wishes with his
software). It appears you have done an amazing job of keeping two
moving targets working together when neither side is really able or
willing to coordinate.
I don't think his goals of making a "new" system layout on Unix is
either achievable or desirable. Unix shows its age and its history.
There are already multiple philosophies on how systems should be laid
out and maintained -- the BEST he can hope to accomplish is to add Yet
Another philosophy to those that already exist.
Far more powerful organizations have done battle with this in worlds
that they actually had a lot of control over: Look at MS-DOS and its
CP/M-80 style (MS-DOS v1) and Unix-style (MS-DOS v2 and later)
function calls that still co-exist in Windows 9x and WinME. Look at
any number of idiocies of the IBM PC-derived hardware and software
design. Look what happened when IBM tried to change the direction of
the industry with MCA. Look at the 68000 code in the ROMs of the
PowerPC-based Macs. Look at the IDE interface, emulating a <insert
favorite profanity here> ST-506 drive on a 16+ year old Western
Digital MFM controller. Look at your SCSI controllers on PCs, trying
to emulate a concept of cylinders/heads/sectors from a totally
different interface. Look at the 8086 code the Pentium 4 still
supports, well over 20 years later now. No one today has use for ANY
of this <more profanity>, but we can't get rid of it.
If he thinks he can change a world he has virtually no control over in
ways that Apple, Microsoft, Intel, IBM, and the various Unix
publishers who have tried to "unify" their systems in the past have
not succeeded in doing in worlds they more or less DID control, well,
I have to bet against him.
If he wishes to build his own OS his own way, more power to him and I
wish him great success, though I hope he breaks with Unix in many
other ways far more basic than the location of files, too. Unix
already has ways things are done, however. Several of 'em. Yet
Another Way is not going to replace any of the existing systems, just
add to 'em, and I can not see this as A Good Thing. OpenBSD has a
goal of maintaining Unix standards, not wandering off in new
directions.
I would even argue that OSs need to wander off in directions other
than Unix -- but it should be a new, clean design, not a more perfume
on the pig.
(yes, I realize I have wandered way off topic, sorta.)
Anyway, back to my point... The DJBware I have worked with is no more
difficult to install directly than to use ports -- when things work
properly with ports. When they DON'T work properly, it is a mess. It
seems that usually when I try to use the ports, I wish I hadn't.
Perhaps what would be appropriate would be to have in ports a
"standardized" version -- no daemontools, just run out of rc.local or
inetd or whatever, and a big notice saying "If you want support on
this, you had better go to http://cr.yp.to and follow the directions
there -- all of them -- instead of using this port". Some poorly
written software for other OSs has to go through some serious patching
before installation on OpenBSD, and I have to imagine that this
patching may result in operational differences from the way the author
intended, so there is some precedence for this, I believe. The idea
of ports is to provide a standardized way of installing and managing
"third party" software. Love or hate DJB and his products, I don't
think he's ever been called "standard".
In addition, DJB has also very recently demonstrated that he has zero
interest in people using ports:
> ``The port'' is unauthorized and unsupported. It does not correctly
> install daemontools. Remove it, and do the installation properly:
> http://cr.yp.to/daemontools/install.html
>
> Then complain to the author of ``the port.''
(thread subject: "svscan will not start at boot - FreeBSD."
Aug. 1, 2001, dns@list.cr.yp.to)
(didn't know ports needed authorization... 8-)
So again, I am saying yes, pull DJB software out of ports, for the
sake of the maintainers, the users, and DJB. My guess is we all have
things we can better spend our time on. I really don't think anyone
is going to think any more or any less of OpenBSD because we do or do
not have a port of djbdns, qmail, and the like. The users won't be
hurt, and it sounds like DJB would be happier.
Nick.
"Where am I, and what am I doing on this soap box?"
(shamelessly ripped off Wes Peter's .sig)
Camiel Dobbelaar wrote:
>
> Porters, and especially users of DJB software like qmail and djbdns,
> please have a look at this:
> http://cr.yp.to/slashpackage/management.html
> or the whole picture:
> http://cr.yp.to/slashpackage.html
>
> Yes, it's a proposal for a package management system. The new version of
> daemontools (0.76) is already converted to use this.
>
> I am not sure what to do with the daemontools port. Try to (1) support
> slashpackage or (2) work around it and stick to /usr/local ?
>
> Essentially, slashpackage replaces the whole BSD ports and packages
> mechanism. Trying to support one package management system through
> another one makes option 1 cumbersome.
>
> The second option is not very appealing either. Trying to make
> daemontools adhere to /usr/local requires (ugly) work-arounds. Also,
> users of the port can no longer get support on the DJB mailinglists,
> because their version will not conform to 'the standard'.
>
> Should we stop supporting DJB software through the ports system?
>
> --
> Cam
--
http://www.holland-consulting.net/
|