Overview

Every code machine is a NixOS system consisting of a range of Codchi modules, each corresponding to a NixOS module. So, configuring a code machine is the same as configuring a NixOS system, without you having to worry about hardware configuration.

A NixOS module is written in Nix's own configuration language with the same name. Nix (the language) can be described as "JSON with functions". To write your first Codchi module,

If you want to get deeper into Nix, there is

You can also as questions by

During module development, you most likely don't want to push after every config change. To switch to your local working copy, see chapter Local Configuration.

Additional Resources