- [ ] base should automatically be set as the default (dont do anything with the default) - [ ] try to remove common foot guns, ie abort if the user provides the home-manager or microvm nixosModules since cerulean ALREADY provides these - [ ] deploy port should default to the first port given to `services.openssh` - [ ] use the Nix module system instead of projectOnto for `cerulean.mkNexus` - [ ] create an alternative to nixos-install called cerulean-install that allows people to easily bootstrap new machines (and host it on dobutterfliescry.net) - [ ] find an alternative to `nix.settings.trusted-users` probably - [ ] add the ceru-build user, - [ ] add support for github:microvm-nix/microvm.nix - [ ] add support for sops-nix - [ ] it would be cool to enable/disable groups and hosts - [ ] find a standard for how nixpkgs.nix can have a different base per group - [ ] go through all flake inputs (recursively) and ENSURE we remove all duplicates by using follows!! - [X] rename nixos-modules/ to nixos/ - [X] ensure all machines are in groups.all by default - [X] fix nixpkgs.nix not working (default not respected) - [X] remove dependence on nixpkgs - [ ] allow multiple privesc methods, the standard is pam_ssh_agent_auth ## Low Priority - [X] rename extraModules to modules? - [X] rename specialArgs to args? - [ ] make an extension to the nix module system (different to mix) that allows transformations (ie a stop post config, ie outputs, which it then returns instead of config) - [ ] what if we automated the process of replacing windows with Nix?? then push this to nixos-anywhere or nix-infect lmaooo - [ ] patch microvm so that acpi=off https://github.com/microvm-nix/microvm.nix/commit/b59a26962bb324cc0a134756a323f3e164409b72 cause otherwise 2GB causes a failure - [ ] rewrite the ceru cli in rust - [ ] make `ceru` do local and remote deployments - [ ] support `legacyImports` ```nix # REF: foxora vms = { home-assistant = { autostart = true; # matches in vms/* image = "home-assistant"; options = { mem = 2048; }; }; equinox = { image = "home-assistant"; }; }; ```