refactor(ops): Split //ops/nixos into different locations

Splits //ops/nixos into:

* //ops/nixos.nix - utility functions for building systems
* //ops/machines - shared machine definitions (read by readTree)
* //ops/modules - shared NixOS modules (skipped by readTree)

This simplifies working with the configuration fixpoint in whitby, and
is overall a bit more in line with how NixOS systems in user folders
currently work.

Change-Id: I1322ec5cc76c0207c099c05d44828a3df0b3ffc1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2931
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Reviewed-by: glittershark <grfn@gws.fyi>
This commit is contained in:
Vincent Ambo 2021-04-11 22:50:30 +02:00 committed by tazjin
parent 7deabb8c8d
commit 90281c4eac
38 changed files with 41 additions and 60 deletions

View file

@ -1,20 +1,17 @@
NixOS configuration
===================
My NixOS configuration! It configures most of the packages I require
My NixOS configurations! It configures most of the packages I require
on my systems, sets up Emacs the way I need and does a bunch of other
interesting things.
System configuration lives in folders for each machine and a custom
fixed point evaluation (similar to standard NixOS module
configuration) is used to combine configuration together.
System configuration lives in folders, and some of the modules stem
from `//ops/modules`.
Building `ops.nixos.rebuilder` yields a script that will automatically
build and activate the newest configuration based on the current
hostname.
Machines are deployed with the script at `ops.nixos.rebuild-system`.
## Configured hosts:
* `frog` - weapon of mass computation at home
* `camden` - NUC serving tazj.in, tvl.fyi & co
* ~~`urdhva` - T470s~~ (currently with edef)
* `tverskoy` - X13 AMD that's travelling around with me
* `frog` - weapon of mass computation (in storage in London)
* `camden` - NUC formerly serving tazj.in (in storage in London)

View file

@ -25,8 +25,8 @@ in lib.fix(self: {
sha256 = "157c64220lf825ll4c0cxsdwg7cxqdx4z559fdp7kpz0g6p8fhhr";
};
in [
"${depot.depotPath}/ops/nixos/quassel.nix"
"${depot.depotPath}/ops/nixos/smtprelay.nix"
"${depot.depotPath}/ops/modules/quassel.nix"
"${depot.depotPath}/ops/modules/smtprelay.nix"
"${oldChannel}/nixos/modules/security/acme.nix"
];

View file

@ -16,7 +16,7 @@ config: let
};
in lib.fix(self: {
imports = [
"${depot.depotPath}/ops/nixos/v4l2loopback.nix"
"${depot.depotPath}/ops/modules/v4l2loopback.nix"
];
boot = {