I've installed OpenBSD on my ThinkPad X61s. A rugged and minimal pairing of OS and laptop.
Instead of trying to make it do more, they keep it focused on doing what it does with more security and reliability. Derek Sivers
The basic OS is small, the x86 install is less than 300MB. This provides everything OpenBSD's developers consider essential for a general-purpose Operating System. The UNIX philosophy is adhered to and is coupled with rigorous documentation. If there is a job that needs doing it will have one program to do it and the user can read a thorough manual describing its intended use and functionality, with examples. While not for the novice (it's console only, by default) the system is complete and self-contained. With time a user could operate and learn about the system with no external resources. [This is beyond me, so far, but I'm getting there.]
I'm enjoying the learning-curve, I recommend it.
I aim at a simple set-up, for example this page published using the flowing tools:
- write and edit in vim;
- use git for version control;
- markdown for text;
- pandoc to convert md to HTML;
- a shell script to wrap the HTML in a minimally styled document;
- I deploy this to an AWS S3 bucket which serves over http.
OpenBSD reveals just how much computation is involved in assembling the tools, above.
For instance, pandoc is a non-trivial piece of software. To install on Ubuntu I'd simply:
sudo apt-get install pandoc
This would bring down a pre-compiled binary and any dynamically linked libraries/dependent-packages. Seems simple but this is deceptive. To install on OpenBSD there is no preconfigured binary. To obtain pandoc I needed to:
- install the Glasgow Haskell Comiler (GHC);
- install the Haskell package manager Cabal;
- use Cabal to obtain the pandoc source and build and executable binary.
This process took over 30 mins to complete (the X61s first appeared in 2007 so its slow by current standards).
I like to know and understand my tools. I'm not at a stage where replacing vim and git are an option.
Much as I admire pandoc I am not using most of its functionality. For the sub-set of markdown that I'm using I could write my own md-to-html program.
And though AWS is cheap (this blog is never visited enough to make it worth Amazon's effort to bill me) I could be serving content from my own OpenBSD server at home.