Digital AlphaStation 250 4/266 — Part 5

Previous:

In a previous post, I installed OpenBSD. In fact doing this experiment I installed OpenBSD at least a dozen of times. Here are a few notes about it.

Mount points

As seen before, the root directory is on the SD card (sd0) and a few sub-directories are on the SSD (wd0):

Once installed, I added noatime to all the mount points in order to not have to write the access time in files metadata each time a file is accessed. This should slightly improve the performances (badly needed here) but mostly reduce wear of memory cells on both SD card and SSD. So the /etc/fstab file looks like this:

xxxxxxxxxxxxxxxx.b none swap sw
yyyyyyyyyyyyyyyy.a / ffs rw,noatime 1 1
xxxxxxxxxxxxxxxx.g /home ffs rw,nodev,nosuid,noatime 1 2
xxxxxxxxxxxxxxxx.d /tmp ffs rw,nodev,nosuid,noatime 1 2
xxxxxxxxxxxxxxxx.f /usr ffs rw,wxallowed,nodev,noatime 1 2
xxxxxxxxxxxxxxxx.e /var ffs rw,nodev,nosuid,noatime 1 2

Ports

As said before, the Alpha architecture is not as well-supported as more common architectures. The main issue here being the lack of pre-packaged software. So the command pkg_add doesn’t find anything to install.

The alternative is to use ports, so prepackaged build files. Go to the ports’ folder of the software you want to install, type make install and it will download the source code of the software, apply patches if any, compile it and install it.

Following the ports manual, create /etc/mk.conf:

WRKOBJDIR=/usr/obj/ports
DISTDIR=/usr/distfiles
PACKAGE_REPOSITORY=/usr/packages

Fetch the ports tree and decompress it (that step can take a while, cf. part 3):

$ cd /tmp
$ ftp https://cdn.openbsd.org/pub/OpenBSD/$(uname -r)/{ports.tar.gz,SHA256.sig}
$ signify -Cp /etc/signify/openbsd-$(uname -r | cut -c 1,3)-base.pub -x SHA256.sig ports.tar.gz
# cd /usr
# tar xzf /tmp/ports.tar.gz

But then, trying to compile a software, I quickly realise that some X11 packages have to be installed… Packages that I removed during the installation process 😒.

So time to add them back (mount the CD’s ISO image and untar the packages):

mount -t cd9660 /dev/cd0a /mnt/
cd /mnt/7.7/alpha/
tar -C / -xzphf xbase77.tgz
tar -C / -xzphf xshare77.tgz

Then time to compile some software, starting with htop:

cd /usr/ports/sysutils/htop
make install

But compiling it needs to compile its dependencies too. So after a day and a half of compilation, I found the AlphaStation crashed with some disk errors. I was running it with 128 MB of memory, and it looked like it was swapping a lot.

Since I upgraded to 256 MB of memory, compilation seemed to go faster and further… but compiling gcc 8 did crash after 2 days and a half. The compilation process was taking more and more memory, then swap, and OpenBSD complained again of timeouts while writing onto the SSD.

So linux failed me, and now OpenBSD… Well, the hardware did. Switching back to 100% SD card, no SSD on PCI anymore, the compilation did finished… Partially.

Looks like there’s a compatibility issue in htop source code. I did manage to compile others software like speedtest-cli and curl.

But it’s slow. Very slow. To give you an idea, compiling gcc 8 took 9 DAYS! 💀

Compiling on another machine

Running OpenBSD in an Alpha VM

Yes, but no.

Here is a list of Alpha emulators, most of them are either dead, commercial or can’t run OpenBSD.

Cross compiling

Can I run OpenBSD on a more modern computer and compile packages for the Alpha architecture from there?

According to the documentation, yes and no 🫤: “Cross-compiling tools are in the system, for use by developers bringing up a new platform. However, they are not maintained for general use.”

I did have a quick look… and I don’t think I want to go down this path.

Conclusion

It looks like the use of this machine is quite limited nowadays. I did have some plans for it, but now I think they were unrealistic.

I will revert it back to using the SD card as hard drive, remove the SSD, put back the video card, but keep the fast ethernet card.

Comments Add one by emailing me.