The Complete Computing Environment

My NixOS configuration


This is file:nixlib/roles/endpoint/default.nix which is installed on to a minimal NixOS with NixOps. It'll be a full NixOS configuration.nix when it grows up, likely generated in the same way as my home-manager configuration, but for now it's a minimal example. I have no idea how to make this a per-host configuration, eventually I will set up NixOps; for now everything is just gonna be set up by editing this, i guess, and I'll change things as I need to.

{ pkgs, lib, ... }:

  endpointCfg = ./default.nix; # this file
rec {
  imports = [    ./hardware-configuration.nix ./generated.nix ]  # (ref:imports)
            ++ [

  home-manager.users.rrix = import ../../home-manager.nix;
  environment.etc."nixos/configuration.nix".source = endpointCfg;

Here the strings are basically just taken out of Arroyo NixOS Generator, formatted to point to the relative-root of the CCE nixlib directory, sorted alphabetically, and concatenated.

(->> (arroyo-nixos-imports "endpoint")
     (-map (lambda (r) (format "../../%s" r)))
     (-sort #'s-less-p)
     (s-join "\n"))

Worth noting:

NEXT minimise nerdfonts


NEXT fix <> from my Xmodmap

my Xmodmap needs to be brought in to Nixos Automatic Partitioning Installer's target-config

NEXT split this in to dynamic CCE-modules like home-manager

some would say this isn't how it should work with org-roam but i think moving towards generating an imports statement instead of inserting a bunch of text in to a buffer, this makes the tooling work a bit better, probably.