This is a unification of all the different pick NixOS tooling into one executable. Why? Because why not, to be honest. Written in Zig, because I like Zig.
nixos replaces these tools with respective subcommmands, listed below:
nixos-rebuild→nixos build+nixos generationnixos-enter→nixos enternixos-generate-config→nixos generate-config
More to come in the future, see TODO for a list of commands and flags that are planned to be implemented.
Use this repo as a flake input. A NixOS module is also provided, and this is the recommended way to use this program.
{
inputs.nixos-cli.url = "github:water-sucks/nixos";
outputs = { nixpkgs, nixos-cli, ... }: {
nixosConfigurations.system-name = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
nixos-cli.nixosModules.nixos-cli
# other configuration goes here
];
};
};
}- It's 1 tool, not 10 different ones with roughly similar options
- No mishmash of monstrous Bash and Perl scripts
- It's written in Zig!
- [-]
build -
container-
list -
create <name> -
destroy <name> -
start <name> -
stop <name> -
status <name> -
update <name> -
login <name> -
run <name> <args...> -
show-ip <name> -
show-host-key <name>
-
-
enter -
edit-config - [-]
generate-config -
info -
manual -
install -
option -
generation-
list -
switch <number> -
rollback - [?]
diff
-
I would like for this to become a standard NixOS tool, which means that I want to cater to potentially many interests. If you would like for any subcommands to be implemented that you think fit this project, please file an issue.