I'm assuming you already know how to install a port, and also how to compile your own kernel.
I will make my notes, and various tips, available here as soon I have time to write them. Don't hesitate to email me if you need some particular bit of information sooner rather than later. I won't promise I'll write about it, but I'll try.
Initially when I tried -CURRENT, I ran into some problems. The following tip from Andreas Ott might help, but I am not sure it is still needed. Here is a more detailed explanation.
Use Partition Magic or a similar tool to nuke the Win2K partition, but don't touch the rescue partition. Next, create a smaller FAT partition (let's say 5 to 10 GB).
Now reboot from the disk. The BIOS will see that the Win2K partition is gone, and will start running the rescue routine. It will install Win2K on the first partition (the small one you created previously). This can take an hour or two to complete, but doesn't require too much user intervention.
Now you have free space in which you can install FreeBSD.
See "preparation" above - you now have free space on the disk, just install FreeBSD on it (or on part of it).
I followed the advice from the port message and put this in
/boot/loader.conf
:
agp_load="YES"
Also, I added this line to the "Screen" section of /etc/XF86Config
:
DefaultDepth 24
If you need to set the network name, just drop this line in
/etc/start_if.wi0
:
wicontrol -n MYNET
Note that if you have both ifconfig_fxp0="DHCP"
and
pccard_ifconfig="DHCP"
in your /etc/rc.conf
, and
you boot with the wireless card inserted but no network cable in the
ethernet port, dhclient will get confused and won't pick up any leases. I
don't know if the more recent dhclient will behave better. There are two
workarounds for this:
/etc/rc.network
. Also, I had this set in /etc/rc.conf
:
network_interfaces="fxp0 lo0"
/usr/ports/net/nicmond
port. It monitors the
wired interface and brings it up when you plug it in. The
relevant section in /usr/local/etc/nicmond.conf
looks
like:
interface fxp0
   up /etc/pccard_ether $device start
   down /etc/pccard_ether $device stop
Note that when the carrier appears on the wired interface the wireless interfaces can't be used or else you'll run into the same dhclient problem mentioned above. But that's not likely to happen (or bother you). Although the docs for nicmond are in Japanese, it works well enough out-of-the-box to be used by non-speakers. For some history about the port see this message
/usr/ports/comms/ltmdm/
port.See above regarding whether the model you have (or want to buy) has such a modem. I've received reports that the following models do not have chipsets that work with FreeBSD:
While the following models are reported to work fine with the ltmdm port:
cd /dev; sh MAKEDEV usb1
Don't forget to restart usbd
after you do it. Thanks to
Wei-Hon Chen for the tip!
I use the /usr/ports/palm/coldsync/
port to sync the visor over
USB. Drop this in your /etc/usbd.conf
:
device "Handspring Visor"
   devname "ugen0"
   vendor 0x082d
   product 0x0100
   release 0x0100
   attach "/usr/local/bin/coldsync -t usb -svv -md ${DEVNAME}"
/usr/ports/comms/birda
port. And added this
startup script in
/usr/local/etc/rc.d/birda.sh
(thanks to Brandon
Allbery).
The important thing to remember is that the device to
point your utilities to is /dev/ttypv
. Yes, that's not
a mistake - irs
talks to ptypv
but the
application needs to talk to
ttypv
. This works with the pilot-link utilities, as
well as coldsync. It's very slow, though, and not very reliable.
I received reports from people that this doesn't work for them. It appears
that the "correct" way to do this is to let irs talk to the master at
ttypv
and have the application talk to the slave
at ptypv
. So, if the above fails for you, change
the script above and point your applications appropriately.
I don't use the "correct" way because I found that in in my
particular setup, this causes:
birda.sh
script to not detach (irs only detaches once
the first sync is started).
I presume this is due to some bug in irs. But, since it works for me if I switch the device nodes, I didn't pursue it further.
~/.xsession
:
xmodmap -e "keycode 77 = Num_Lock"
device apm0
And this to your /etc/rc.conf
:
apm_enable="YES"
apmd_enable="YES"
I'm getting 3h45m out of the IBM 4.0 A-H battery. It's 15 minutes less with wireless (30 minutes less if the card is not in powersave mode). Overall, pretty good.
Here are some power-saving tricks:
noatime
.atrun
line in /etc/crontab
to
start with */30
so at(1) wakes up only once in 30 minutes,
instead of 5. Or just comment the whole line out, if you don't want at(1)
to run.
Note: If I suspend the machine when it's plugged in, and resume when it's on
battery, then I'd lose the time. Usually it will jump ahead a day or two
(and up to four). Nothing a date
and ntpdate
can't fix. Unless, of course, X gets confused and I lose the keyboard
autorepeat. So until I figure this out, I'll just need to remember to not
do that...
If you have comments, be my guest.