# nipsy's NixOS configuration This repository is the starting point for storing all relevant NixOS configurations. ## Layout This repository currently contains two systems I've configured similarly to track the current unstable NixOS branch, but with one system being a more home focused package set versus the other designed for work. By building on the modularity of this repository, it should be possible to capture any number of various combinations of system and user configurations from one or more people. I think everything is mostly laid out in such a way to support doing this very easily. This also means that as people come up with potentially new combinations of things, other people might be able to also benefit from them. I think that's sort of part of the charm that Nix in general provides. The section that follows is about a VM configured more for work and can be thought of as a template or starting point to define your own host, mostly with the same packages potentially, and with whatever personal touches you want for your own standard user account. ## richese This host is currently assumed to be a VirtualBox VM. The VirtualBox VM should be configured with the following: * CPU As many physical (non-SMT) cores as your CPU has ideally, since NixOS does need to build things occasionally. * RAM 8GB is probably a good starting point. If the installer hangs, you probably need to increase this from the presumably lower value you have set. * Display The NixOS configuration assumes VMSVGA. * Storage The installer assumes you've selected an AHCI SATA controller using a dynamically allocated VDI of 100GB. This might need to be bigger, given how disk intensive NixOS can be. * Network My testing NIC was configured in VirtualBox to use NAT and virtio-net. * Other This configuration works best if you also enable the bidirectional shared clipboard functionality under General -> Advanced. ### Installation You can download the minimal ISO image from https://nixos.org/download/ to start. Once in the installer command line, you can grab this repo using: ``` curl -O https://arrakis.bitgnome.net/nipsy/git/nix/snapshot/nix-master.tar.zst tar xavf nix-master.tar.zst ``` To start the installation script, including provisioning the local storage via disko, run: ``` nix-master/scripts/install-with-disko richese ``` which should walk you through the rest of the installation. ### Post-installation maintenance As part of the installation, the Git repo you grabbed above to perform the installation was also copied to /etc/nixos on your new system. Keeping a NixOS system up to date means keeping your living system configuration up to date also. To make this task slightly easier if this is your first NixOS installation, you can run the script `/etc/nixos/scripts/pretty-rebuild` as root which will perform a standard nixos-rebuild command to upgrade the system along with some informational output after that command finishes on what may have changed.