box.matto.nl
Enjoying Open Source Software

FreeBSD 13 on a 12 year old laptop

My old (2009) HP laptop now runs FreeBSD 13.0-RELEASE.

I didn't do an upgrade, but I did a fresh install. The reason for this was that I now wanted to encrypt the hard disk. The previous install was on an unencrypted ZFS file system.

I did choose again for ZFS, but this time encrypted.

Here are some specs of the laptop:

  • Core 2 Duo CPU L9400 @ 1.86GHz
  • 8 Gb RAM (DDR2, 2 x 4Gb SO-DIMM)
  • 120 Gb SSD
  • 1280x800 LCD 12 inch monitor (16 x 10 aspect ratio)

The 120 Gb SSD is also not the newest, I bought this used. It is probably from around 2014 or 2015.

The laptop is built around a Intel chip set, so the graphics controller, audio, Gigabit network interface, Wireless, and so on, are all build with Intel chips.

I installed from the standard FreeBSD-13.0-RELEASE-amd64-memstick.img which went, of course, without any problems.

I used FreeBSD before on this laptop, so everything was quickly running smoothly.

I installed the 915resolution package, and added a line to /etc/rc.conf:

kld_list="/boot/modules/i915kms.ko"

In order to get the sound working properly, I added two lines to /boot/devices.hints:

hint.hdac.0.cad0.nid18.config="as=1 seq=15"
hint.hdac.0.cad0.nid22.config="as=1 seq=0"  

I am not sure if this is needed for this processor, but I also installed devcpu-data and added two lines to /boot/loader.conf:

cpu_microcode_load="YES"
cpu_microcode_name="/boot/firmware/intel-ucode.bin"

For power management I added the following lines to /etc/rc.conf:

powerd_enable="YES"
powerd_flags="-n adaptive -a hiadaptive -b adaptive -m 800 -M 1600"
performance_cx_lowest=C1
economy_cx_lowest=Cmax

and the following line to /boot/loader.conf:

acpi_video_load="YES"

$HOME in ramdisk

I like to have my $HOME directory in ramdisk (also known as "memory file system"). This way I always have a clean $HOME, and I don't have to worry about super cookies, cookies and other bad stuff like that. It also helps when you work with flash memory for local storage.

FreeBSD doesn't have the brilliant "-P" mount option that OpenBSD has, which will automagically set up your ramdisks. Therefor at boot time the home directory is populated by a small shell script that is started from a startup script in /usr/local/etc/rc.d.

Window manager

I have been using the ratpoison window manager for perhaps more than a decade, and a couple of years ago I switched to the i3 window manager. On this old laptop I am also using i3.

At the time of setting every thing up, I was in an unconfigured X setting, so I was working with the default TWM window manager and the default settings for Xterm, including the default Xterm font. In circumstances where one only needs a few xterm windows, and perhaps a web browser, this is of course good enough.

Fine workstation

I have been using this laptop with FreeBSD for some years now, and I think it is a fine workstation, but I am not a gamer.

In general, I prefer small laptops, and think that 12 inch is the sweet spot. The keyboard is great and I like the 4 x 3 aspect ratio of the monitor of this laptop.

My most used applications are thinks like ed, mg, vi , Vim, Emacs, tmux, lynx and w3m. Also I do use Firefox, LibreOffice and Gimp, and most of the time I am using SSH to connect to some remote system.

So, if your needs are modest, and you use FreeBSD, you don't need a fancy high performance system, and any old laptop will do fine.

Updates:

  • 2023-02-24: changed the aspect ratio of the display to 16:10 (thanks to ghane)

Tags:

⇽ Sparkleshare to sync org files Create a persistent macro in JOVE Micro Emacs ⇾