Here are my thoughts on the i1452 in general.
In this document, I will often refer to SuSE 6.1, the Linux distribution that I am using. The reasons I'm using SuSE are nothing more than:
Use whatever distribution you would like. In the following text, where there's a distribution-specific step, I'll describe how it works on SuSE, and you'll have to figure out how to do the same thing with your distribution's file hierarchy and commands.
A snap. Except for sound, SuSE's install got everything right.
Partitioning: The machine ships with a blank 2.6G partition, perfect for installing Linux. If you're worried about ultra performance, security, or reliability, you'll probably want to create separate partitions for /tmp, /var/spool, /var/log, /var/tmp, etc. I'm not, so I just created partitions for / and /home. I did not like the SuSE installer's tendency to put everything in extended partitions so I did everything manually using fdisk.
|1||2 Gb||DOS||As shipped by IBM, pre-installed with Win98, about 83% full from the factory.|
|2||96 Mb||swap||A good swap size for 64 Mb of memory and no need for ultra reliability.|
|3||2.2 Gb||ex2fs||Contains all of the distribution and /opt, mine is currently 75% full|
|4||~400 Mb||ex2fs||Contains all the files I care about. I can swap distributions by erasing partition 3 without having to worry about backing up my home directory. One day I would like to try out Debian.|
Printed by the fdisk command, this is how my partition table appears:
Device Boot Start End Blocks Id System /dev/hda1 1 261 2096451 6 DOS 16-bit >=32M /dev/hda2 262 274 104422+ 82 Linux swap /dev/hda3 * 275 542 2152710 83 Linux native /dev/hda4 543 592 401625 83 Linux native
X: SaX correctly ID'd the graphics chip (NeoMagic MagicMedia 256AV) and screen size (1024x768), and the X server to use (XF86_SVGA). 8 and 24-bit color depths work, but 8 is ugly and 24 is so slow that 16-bit is definitely the way to go. The trackpoint is simply a 3-button PS/2 Mouse (protocol=PS/2, device=/dev/psaux). Monitor vendor is "!!! LCD !!!" and name is "XGA 1024x768@60Hz".
booting: chos (does anybody know chos's home page?) is excellent, the best boot selector yet, and I've used LILO, WinNT's, and the hideously large BootMagic. It's easy to set up. You can probably use my /etc/chos.conf file, then simply run chos as root.
Under chos, you can specify boot-time command line options (choose a menu item and hit space instead of return), rendering the last two menu items strictly unnecessary. However, I like to be presented with all my options, rather than having to remember stuff like that.
After installation: if things are strange, you may need to play with your BIOS settings. For instance, PnP OS should be turned off.
Linux should now be up and working. That was the easy part. Now for Networking, Mail, PPP, Sound, etc...
The only real problems I've noticed with Linux on the i1452 are related to standing by and sleeping.
Under both Linux and Windows, this machine has abysmal standby times (usually around 8 hours). However, when Windows puts the laptop to sleep, it writes all memory to the HD and then turns off all power. When power is restored, the machine reads its memory from the hard drive and everything is as it was. Alas, Linux currently cannot do this. You must either settle for the 8 hour standby or shut it down completely.
Also, when standing by, the system clock is not updated. Therefore, if the machine stands by for 4 hours, when you start using the computer again, the clock will be 4 hours behind. To fix it, when you wake the machine up, simply run the following command as root (it just updates the sysem clock from the hardware real-time clock):
# hwclock --hctosys
Finally, every time after bringing the machine out of standby, even though the caps lock LED is unlit Linux seems to think that caps lock is pressed! If you hit the caps lock key yourself, the LED remains unlit and keystrokes come out normal again. It is a minor annoyance, having to remember to hit caps lock every time after waking up the machine.
If you want to access your Win98 partition from Linux, do the following as root (/c reminds me of the :c drive letter, you may call the directory whatever you'd like):
% mkdir /c
% chmod a+rw /c
% mount /dev/hda1 /c -t vfat
If there were no error messages, quickly browse around /c and make sure everything looks right.
/dev/hda1 /c vfat noauto,user 0 2
Now I can use free space on the Windows partition for Linux stuff as well. One thing to be careful of is that, unlike Unix, the VFAT file system is not case-sensitive: "README" and "readme" are the same file. And, of course, the performance of VFAT is pretty bad compared to ext2fs.
First, a warning: Alsa is still experimental, and in hot development. It's the best sound architecture I've seen yet, on any platform, but be preparered for error messages... All recent software seems to work fine; it's the older programs that give problems. If you value reliability over coolness, you might try to get OSS working instead.
Update: It appears
that you can skip this step with SuSE 6.2; the default /etc/conf.modules
file works fine.
Update: But you do need to do this with SuSE 6.3/ALSA 0.4. I've included the steps needed for configuring Alsa 0.4 by hand, but do not do this! Take it easy and use the alsaconf command instead.
# alias char-major-14 off
# alias sound off
# alias midi off
############### ALSA START # ISA PnP support options isapnp isapnp_reserve_irq=9,10,11,12,13 # ALSA native device support alias char-major-116 snd options snd snd_major=116 snd_cards_limit=1 # This is the driver setting alias snd-card-0 snd-esssolo1 # OSS/Lite setup alias char-major-14 soundcore alias sound-slot-0 snd-card-0 alias sound-service-0-3 snd-pcm1-oss alias sound-service-0-12 snd-pcm1-oss ############### ALSA END
############### ALSA START # ISA PnP support options isapnp isapnp_reserve_irq=9,10,11,12,13 # ALSA native device support alias char-major-116 snd options snd snd_major=116 snd_cards_limit=1 alias snd-card-0 snd-card-es1938 # Are the following lines necessary...? alias snd-minor-oss-0 snd-mixer alias snd-minor-oss-3 snd-pcm1-oss alias snd-minor-oss-12 snd-pcm1-oss # OSS/Lite setup alias char-major-14 soundcore alias oss snd-pcm1-oss alias sound-slot-0 snd-card-0 alias sound-service-0-0 snd-mixer-oss alias sound-service-0-3 snd-pcm1-oss alias sound-service-0-4 snd-pcm1-oss alias sound-service-0-5 snd-pcm1-oss alias sound-service-0-12 snd-pcm1-oss ############### ALSA END
% depmod -a % modprobe snd-esssolo1 % modprobe snd-pcm1-oss % amixer master 100; amixer master unmute % amixer pcm 100; amixer pcm unmute
% depmod -a % modprobe snd-card-es1938 % modprobe snd-pcm1-oss % amixer set Master 100% unmute % amixer set PCM,1 100% unmute
% aplay /usr/share/sounds/churchbell.wav(churchbell.wav can be found in the snd_wav RPM)
% aplay /usr/share/sounds/alsa/whistle.au
ALSA 0.3: /sbin/init.d/boot.d/S05soundon
ALSA 0.4: /sbin/init.d/boot.d/S05soundon
Since the Lucent WinModem on your laptop is useless, you'll probably want a PCMCIA modem (though for about the same amount of money, you could connect an external modem to the serial port). I bought a $99 Zoom PC Card 56K (which features an awful 4 foot telephone cord: unique and $20 for a replacement, grrr), but almost any PCMCIA modem should work. See David Hinds's PCMCIA information site for more info.
Installing could not have been easier: simply plug it in. The PCMCIA package (as shipped with SuSE 6.1) correctly identified and configured it, even creating the proper /dev/modem soft link. Awesome--now you just need to worry about configuring PPP...
Update: The following wrinkle no longer applies. As of PCMCIA package 3.1 (SuSE 6.3) this bug has been fixed.
There is a wrinkle, however. The card often fails to be recognized at boot time. David Hinds said in reply to my question that the problem is that O2Micro CardBus bridges go into some weird, unknown state. I've found that when this happens, try ejecting and inserting the card. Or (and this always works for me) boot the computer without any PCMCIA cards inserted. Then, once the machine is up and running, insert the card(s) like normal.
The WinModem is not
totally useless anymore. Richard J.M. Close and Pavel Machek found symbols in the Windows NT driver
and did some reverse engineering. You can download the resulting test
application at http://www.close.u-net.com/ and try it
out by running the command "
./ltmodem -d phone_number" (replace
phone_number with a valid phone number). Version 0.0.7 recognizes the modem
on my laptop, dials, and waits for a carrier, but it cannot communicate.
However, after running it, my PCMCIA modem no longer responds and the sysbeep
is a little garbled (though .wavs and MP3s still play just fine). Rebooting
fixes these anomalies.
This is so dependent on your distribution and ISP that I won't try to help here. However, I did find that on my setup I needed to set MRU and MTU (in the /etc/ppp/options file) to 296 or FTP would stall after transferring about 20K. This number can probably be increased a bit to improve performance, but I haven't felt like fiddling with it yet.
I use the excellent install-sendmail package. May I never have to edit a sendmail.cf file by hand again! You can find it at Freshmeat or http://members.xoom.com/xeer/index.html.
This package sets up mail the way it should work on a laptop. You ca nown send and read mail offline using whatever mail client you desire. You can even mix them, using mailx, Elm, Netscape, or Balsa, depending on your terminal and mood. When you go online, type "fetchmail" to download all new messages off your mailserver, and "sendmail -q" to send all queued mail.
There is one drawback to this: there is currently no way to save all outgoing messages. This is a major problem for me, so I'm working on this. stay tuned...
Make sure to run "/sbin/init.d/sendmail stop" before running install-sendmail, and then "/sbin/init.d/sendmail start" to start it up with the new configuration.
Update: The SuSEConfig in SuSE 6.2 appears to overwrite the existing sendmail configuration files with no warning. Setting SENDMAIL_TYPE="no" in /etc/rc.config should prevent SuSEConfig from doing this. (SuSEConfig is run automatically by YaST).
I'm currently using elm to read mail, and either elm or Netscape (when I click on a mailto: URL) to send mail. I'd like to find a more MIME-compliant X11 mail client, but I've been unsuccessful so far (see http://www.trestle.com/linux/mailclients.html to join my search)
You can find other good pages describing the i1452 and the I-series in general (they're all quite similar) at http://www.cs.utexas.edu/users/kharker/linux-laptop/.
Now your machine should be working as well as mine. Enjoy it! E-mail me if you have any questions: firstname.lastname@example.org