Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Oct 95 14:11 WET
From:      uhclem%nemesis@fw.ast.com (Frank Durda IV)
To:        current@freebsd.org
Subject:   Ports - What is the standard for "ported"?
Message-ID:  <m0t9e4S-000ItnC@nemesis.lonestar.org>
Resent-Message-ID: <10058.815021780@time.cdrom.com>

next in thread | raw e-mail | index | archive | help
I recently (and am still) going through a rather agonizing migration
of a SCO UNIX system to FreeBSD 2.0.5.

Apart from lots of issues with SCSI hardware that SCO took in stride and
FreeBSD hated ("unknown board" errors for an Adaptec 1540A, which is one
of the non-thru-hole, 2nd generation surface-mount boards, and dealing with
a WangDAT tape drive that under 2.0.5 won't let you remove the media until
you reboot the system, OR you can issue a mt offline, remove the media, and
then reboot to get the drive to load new media - that really stinks and
didn't happen under SCO and I hope it is fixed in 2.1.0), I ran into a lot
of application issues.

My big problem came with some of the ports.  I really haven't had
the opportunity to use or rely on these or the associated mechanisms before,
but in the past 72 hours I have and found them to be a tad "uneven".

The worst offender was smail.  I had to manually locate the files
since the site was not operating under its final IP address yet (so
that the neighbors would not try to send mail yet), and the pkg system
tried to get the package first from ftp.uu.net, which refuses all
requests from sites with no reverse DNS look-up.  Nice deadly embrace.
99% of the desktops where I work would fail in the same way because
the security guys won't list them in the DNS tables that are visible
outside the firewall.

Make then went on to Walnut Creek, and failed with an error that looked
like it was unable to find the files on that system.  If it was supposed
to try additional locations at this point, that doesn't work.

Later I discovered that WC was "full" at the time, and the code that performs
the downloads doesn't put out a real good message describing what is really
going on.

So now I have smail down and I do the "make".  BOOM!  Oh, you have
to have bash installed (a different port) before you can build smail.

This "other package first" requirement was not listed anywhere I noted,
and it seems curious that we would include a port installation that relied
on a shell that we don't distribute by default.

Ok, I got bash and installed it.  Re-ran the smail install, and it
decided it had better download everything again.  (Why?).
Then it started building, WITHOUT giving me a chance to update the EDITME
file.  Ok, I assume EDITME must be set-up perfectly for FreeBSD. (Foolish)
The compile goes with numerous warnings, and finally succeeds.
So I install.

I send a test message to myself.  It is not delivered.  Run the queue
manually.  It is not delivered.  The mail is in the queue, but smail
complains about having to defer delivery.   I update the config file to
indicate a local "smart" mailer and try off-site mail.  That works fine!
I try sending mail from a remote system to my account.  It is placed
in the queue and eventually delivered.  I try local mail again from me
to me (or from root to root).  Local mail just sits in the queue endlessly.

After a few days of investigation, it appears that the "os/freebsd2.0"
file for smail and the patches for FreeBSD for smail are not
quite compatible, with the result you have to comment-out all of the
local: stuff in transports if you ever want to see mail from yourself or
any other local account again.   The EDITME and os items seem to be
out of date on system capabilities as well, turning on features FreeBSD
doesn't have and not turning on some that it has now. 

Maybe these files were correct at FreeBSD 2.0, but they are not correct now.

So I went to make changes to conf/EDITME, and cd .. and then did a
"make clean" "make".  Guess what?  It fails because of some "bashisms",
even if I run "bash" before doing the makes.  The only way I could get
it to compile at this point was to cd ../.., remove the .build_complete
(or whatever it was called) file, cd .. again and then do a make up here.

You have to be careful because once it decided the best thing to do was
re-extract the entire distribution and erase the changes I just made.  Grrr.

Oh, and don't do the "make clean" at this higher level, because it WILL
erase the EDITME file, and re-extracts everything from the distribution
tar.  That isn't my idea of a "make clean" action.

Again, I found no README that mentioned that you have to anything out of
the ordinary to make and/or configure smail.

The EDITME also dictated some locations for directories and files
that did not match where they already are on a FreeBSD, particularly if you
are planning on completely replacing sendmail with smail.  Where it looks
for spool, aliases and paths spring to mind.

This makes me wonder: is the requirement for a "port" that it just compiles
and links?

Someone needs to look at smail and see if things need updating.
Also, if a port requires some other non-included item (like BASH), it
should state this somewhere, like in a README.   I can see where this
stuff would drive a newbie totally nuts.

Frank Durda IV <uhclem@nemesis.lonestar.org>|"The Knights who say "LETNi"
or uhclem%nemesis@fw.ast.com (Fastest Route)| demand...  A SEGMENT REGISTER!!!"
...letni!rwsys!nemesis!uhclem               |"A what?"
...decvax!fw.ast.com!nemesis!uhclem         |"LETNi! LETNi! LETNi!"  - 1983




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?m0t9e4S-000ItnC>