Negate This

A future that could've been

"New" Thinkpad T60 and OpenBSD

Published on by Negate This #Openbsd #Technology #Thinkpad


My current daily driver is a Thinkpad E590 that I was gifted /in order to/ have a laptop for college. I was running Windows 10 dual-booted with Linux Mint for a while, but I’ve been runnning strictly KDE Neon on it for a couple of months now.

I tried running OpenSUSE Tumbleweed on it as well for a bit, but the 5.10 kernel update, along with some stupid custom GRUB config on my part, broke my install and I had to revert back to KDE Neon with some of my files gone.

As much as I love messing around with my computer and running a rolling release distro or theming my desktop, I need my computer to actually work when I want it to work so that I can safely and easily do my schooling. So I figured I would buy an older, inexpensive laptop to have for fiddling around with without having to worry about breaking it or not.

Cue my birthday, when my partner <3 bought me an old Thinkpad T60 (specs: Intel Core Duo T2400 / 1.83GHz and 1GB RAM) for $30! I’d call that a hell of a steal, personally. So I got it and…it did not include a battery, hard drive, or a hard drive caddy. Bummer, but I knew that when she bought it so I bought a new battery, hard drive caddy, and got some free hard drives from work. Two of the hard drives were throwing I/O errors, which prompted me to open up the laptop to take a look at the hard drive connector, a very simple process thanks to the fine build quality of the older Thinkpads. Sadly, I’m an idiot, and I accidentally screwed a hole into the palm rest and made two more dimples in it as I was screwing everything back together. No damage was caused to the machine, thankfully, but wow I’m a dingus.

It turned out that the hard drives were just broken, so I got some other ones and BOOM everything is working flawlessly! I promptly installed OpenBSD i386 since the current CPU is 32-bit. Besides failing to install the comp68.tgz set, everything went smoothly and I booted up to a fresh OpenBSD install. I’ve no real experience with OpenBSD, so I’m learning as I go.

First things first, I ran man afterboot and read through the recommendations on what to do next. I’m pretty sure I didn’t do anything man afterboot suggested, whoops. First things first for real this time, I copied /etc/examples/doas.conf into /etc/doas.conf /in order to/ have doas set up for me to run things as root. The default config has it so that any user in the :wheel group can run as root, and you’ll be prompted for your password every time you run doas!

Second things second, I had to get WiFi up and running. I got my old laptop, downloaded wpi-firmware-3.2p1.tgz from here onto a flash drive, mounted the flash drive into my “new” Thinkpad T60, and extracted the contents of wpi-firmware-3.2p1.tgz into /etc/firmware/. I couldn’t believe how simple it was! After this, I was able to connect to an open network my University has using ifconfig, like so:

(Never run commands you find online unless you know exactly what they do!!!! Especially any of my commands, because I don’t know what I’m doing!!!)

-> # means to run as root, whether by being the root user or using doas

-> $ means to run as non-root user

1. # ifconfig wpi0 up # wpi0 is my network device. Yours may vary.
2. # ifconfig wpi0 nwid "SSID" -wpa # Replace SSID with the name of the network you want to connect to. -wpa means to diable WiFi Protected Access, because this is an open network
3. # dhclient wpi0

After this, I successfully connected to the network. I looked at the list of mirrors here, chose one, and put it into /etc/installurl. I then ran:

1. # fw_update # Update all needed firmware
2. # syspatch # Apply any system patches needed for vulnerabilities
3. # pkg_add -uv # Update any packages you may have on your system

All updates should be installed now.

I don’t want to stay on this open network since it’s meant for people’s personal entertainment devices and such, it’s not the “official” University network for students to use day-to-day. That network is a WPA2-Enterprise network, so it’s a good idea to have wpa_supplicant manage that kind of network. To do this:

1. # pkg_add -i wpa_supplicant # Installs the wpa_supplicant package
2. Add this info to /etc/wpa_supplicant.conf using your text editor of choice, with a root user:

network={
	SSID="SSID" # Replace with the name of the network
	key_mgmt=WPA-EAP
	phase2="auth=MSCHAPV2"
	identity="USERNAME" # Your identity provided to you by the University
	password="PASSWORD"
} 

Keep in mind that info may vary based on your network settings

3. # rcctl enable wpa_supplicant
4. # ifconfig wpi0 up
5. # ifconfig wpi0 nwid "SSID" wpa wpaakms 802.1x up
6. # wpa_supplicant -c /etc/wpa_supplicant.conf -D openbsd -i wpi0
7. # dhclient wpi0

You can also use rcctl to set wpa_supplicant flags for when it starts up:

# rcctl set wpa_supplicant flags -c /etc/wpa_supplicant.conf -D openbsd -i wpi0

You should be connected to a University network after running these steps.

The Thinkpad T60 is a very old laptop, so battery isn’t going to be a killer feature or anything. I haven’t been able to run any specific tests, but the battery has lasted enough to get me through at least one lecture, and that’s good enough for me since I can charge it between lectures.

There is a similar utlity to tlp on OpenBSD included in base, called apmd. Theoretically it should help extend battery life to some degree. Again, I haven’t been able to run tests so I can’t say for sure, but I doubt it hurts to activate it.

1. # rcctl enable apmd
2. # rcctl set apmd flags -A -z 5 # 5 is the percent at which the system will be suspended if not connected to the charger

Also, I’ve had a lot of trouble actually being able to gracefully shut down my laptop. Running doas shutdown now only stops all services and immediately restarts them. I could also use the physical button, but I like having “graceful” ways of doing it. Luckily, I found that running doas halt -p actually shuts everything down correctly. Hooray!

So far this is the extent at which I’ve configured the laptop. I’ve downloaded Firefox onto it to test it out and ooooo boy. I can’t open Preferences witout Firefox crashing from memory problems. I can barely have four tabs open before my 1GB of RAM is depleted and my laptop just dramatically slows down.

I pretty much expected these problems, though, so I prepared by ordering a new T7200 CPU, along with a 2 GB RAM stick. The best CPU actually compatible with the Thinkpad T60 motherboard is the T7600, but the T7200 is much cheaper so I’ve bought that one. Also, the motherboard can identify 4 GB of RAM, but only actually use 3 GB, hence why I’ve only got an extra 2 GB RAM stick to go with the 1 GB I had and nothing greater.

I don’t want to do a whole lot with the laptop until I get the new CPU and RAM so that I could install the 64-bit version of OpenBSD and have a more “permanent” install. So I’ll have another post in the near future as I experiment with OpenBSD and learn more about it and the Thinkpad T60.

So far, though, I’ve had a lot of fun configuring OpenBSD and experimenting with such old hardware. It may not be the best, but it’ll be interesting seeing how far I can get with such hardware.