[nycbug-talk] NetBSD on Mac mini

Miles Nordin carton at Ivy.NET
Sat Oct 7 18:17:29 EDT 2006


>>>>> "ii" == Ivan \"Rambius\" Ivanov <Ivan> writes:

    ii> BSD on a Mac

I have NetBSD running on a Rev. A iMac.  

The XFree86 driver for mach64 is all broken, so X is unaccelerated,
unless I warm-boot from OS X, and then accelerated X works.  No one's
interested in fixing it, and I don't know how.  I would expect the
same with other chips.  There is a guy on the port-macppc list that
has made amazing progress restoring sanity to X11 on macppc.  He has
all kinds of stuff working on his own mac, like multiple heads, and
PeeCee video cards using the int10 8086 emulator, but he doesn't
finish it off and commit it, just wraps up binary servers he sends to
people for ``testing.''  I got some actual source patches out of him
once and applied them to my own tree.  I think he eventually committed
them.

He's not ill-intentioned, just extremely extremely slow to clean
things up and commit them compared to how glad he is to talk on the
mailing list about what is ``possible''---meaning, possible for him,
or possible for someone else who has time to do a ``trivial'' amount
of kernel and XFree86 hacking.  not meaning for you.

The way I ``dual boot'' is by net-booting NetBSD and using an NFS
root.  This avoids all partitioning problems, and I find is generally
very nice since BSD will swap and everything else over NFS without any
weird buggy locking daemons or swap livelocks that make it piss all
over itself like Linux.  There are two problems with this.  First,
last I checked no one had figured out how to make modern versions of
OpenFirmware accept a DHCP reply.  I was unable to netboot an iBook G4
because OpenFirmware was too new.  It took about a week to get the
mailing list to admit they'd all tried it on their Macs and couldn't
get it to work either.  For any G3 or older Mac, even extremely old
ones, as long as it has PCI, netbooting works fine.  OpenFirmware bugs
are the bane of that whole platform, though, as you've no doubt
already seen reading NetBSD's installation guide, and there are as
many again workarounds for these stupid bugs inside the kernel.

Second, some of the network drivers are sub-standard: on the Rev. A
iMac, the PHY is not properly supported, so speed/duplex settings
don't work.  If it autodetects, fine, but if you want to diagnose some
kind of network performance issue and want to check the duplex
setting, the driver will just lie to you.  If you use 100BaseTX hubs
on purpose like I do, it could trash your whole network segment and
leave you wondering why.  Under OS X the PHY works fine.  not sure
about drivers other than the 'bm' but I would expect more of that.

I don't know about OpenBSD, but NetBSD likes to put BSD labels on Mac
disks rather than Mac labels.  Some early version of OpenFirmware
apparently led them to believe this disruptive, annoying behavior was
acceptable.  I believe this will prevent you from dual-booting
anything unless you can work around this and install BSD onto a
Mac-labelled disk.  Maybe they've fixed it by now, but you will run
into all sorts of OpenFirmware drama no matter what, and disk-labeling
drama if you try to use a disk.

The port is disused enough that you're likely to be the first one to
try whatever specific combination of hardware and booting you want, so
good luck.

The most important thing I'd say about BSD and Macs is, don't bother
with BSD on any non-i386 laptop of any kind (Mac, hpc*, sparcbook,
...)  because Suspend-to-RAM won't work, and often other
while-you're-using-it power saving features are broken, too, so it
eats up battery faster, sometimes like twice as fast to the point of
near uselessness.

good luck.

BTW, I heard FreeBSD also supports some macppc now, though...well at
least maybe threads would work better than {Net,Open}BSD, but it's a
very new port.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 304 bytes
Desc: not available
URL: <http://lists.nycbug.org/pipermail/talk/attachments/20061007/7790f49c/attachment.bin>


More information about the talk mailing list