My experience when switching to NixOS - Part 2

In the last part of the series I described what my requirements for a NixOS installation are and why I wanted to switch to it (and KDE).

In this part I describe how I installed my second machine (a Toshiba Notebook) with NixOS and how I got some things running.

The machine

I had NixOS installed on a virtual machine in the first place and I already had it on the mentioned Toshiba Notebook. But this installation was removed in favour of a complete reinstall (including disk formatting and everything). So this is actually a installation from scratch, whereas I kept the configuration files.

The machine I installed NixOS on is a Toshiba Notebook, a Toshiba Satellite PRO S300L.

Machine Data:

  • Intel Core 2 Duo Processor @ 2,00 GHz
  • 3 GB RAM
  • 160 GB HDD
  • Mobile Intel GMA 4500MHD Graphics
  • 15,4” WXGA TFT Display

Yes, it is an old machine, but that does not matter.

The Installation

The installation was really basic. I actually followed the NixOS installation guide pretty much.

After booting the live image, I formatted the disk to have approx. 75GB for the root partition and the rest (which was another approx. 75GB) for /home. I did that because I want to play with this machine, so a big root partition is important for me at this point. For a productive installation on this machine I would’ve used only 50GB, but not less. The Nix package manager actually needs more disk space for the packages as other package managers, but that’s part of the approach and won’t change in future, I guess. Anyhow, 75GB is not that much nowadays!

I formatted both partitions with ext4. Pretty basic stuff here, no encryption or something, no LVM, actually.

After this stuff was done, I copied the configuration file from my backup stick to /etc/nixos/configuration.nix, including all the parts I outsourced into .nix modules and fired up a nixos-install. It build my complete system, which I was able to boot afterwards!

Now, how’s that, Archlinuxers? It actually build my entire system including boot loader, mount points, services and desktop! I can actually use this piece of hardware now! I can use it productively!

That’s my sellings point No. 1 of NixOS! You don’t have to mess around anymore!

The KDE desktop.

I did some small configurations for the KDE desktop. Actually, I bound ALT-j, ATL-j, ALT-k and ALT-L and so on, to have some basic vi-like key bindings.

I also added some desktop widgets, but that’s not of a big deal as well.

Here are some screenshots:

Blank KDE

Dirty KDE

Nothing interesting, huh? It’s just a basic KDE desktop, of course!

So, in the next part I will elaborate a bit on my configuration setup. Maybe I will explain a bit of the syntax of the Nix expression language. I will clearly elaborate on the appraoch and maybe show a way how to build another system out of the already provided parts of my configuration.

Stay tuned!