nixos-config/configs/flake-parts/nixos.nix

110 lines
2.9 KiB
Nix
Raw Normal View History

{ inputs
, defaultNixConf
, ...
}:
{
2024-01-16 06:54:50 +00:00
setups.nixos = {
configs = {
# The main desktop.
ni = {
systems = [ "x86_64-linux" ];
formats = null;
homeManagerUsers = {
nixpkgsInstance = "global";
users.foo-dogsquared = {
userConfig = {
extraGroups = [
"adbusers"
"wheel"
"audio"
"docker"
"podman"
"networkmanager"
"wireshark"
];
hashedPassword =
"$6$.cMYto0K0CHbpIMT$dRqyKs4q1ppzmTpdzy5FWP/V832a6X..FwM8CJ30ivK0nfLjQ7DubctxOZbeOtygfjcUd1PZ0nQoQpOg/WMvg.";
description = "Gabriel Arazas";
};
};
};
2024-01-16 06:54:50 +00:00
};
# A remote server.
plover = {
systems = [ "x86_64-linux" ];
formats = null;
domain = "foodogsquared.one";
deploy = {
hostname = "plover.foodogsquared.one";
2024-01-17 09:33:31 +00:00
autoRollback = true;
magicRollback = true;
2024-01-16 06:54:50 +00:00
};
};
# TODO: Remove extra newlines that are here for whatever reason.
#{{{
void = {
systems = [ "x86_64-linux" ];
formats = [ "vm" ];
};
#}}}
# The barely customized non-graphical installer.
bootstrap = {
systems = [ "aarch64-linux" "x86_64-linux" ];
formats = [ "install-iso" ];
2024-01-17 09:33:31 +00:00
nixpkgsBranch = "nixos-unstable-small";
2024-01-16 06:54:50 +00:00
};
# The barely customized graphical installer.
graphical-installer = {
systems = [ "aarch64-linux" "x86_64-linux" ];
formats = [ "install-iso" ];
};
# The WSL system (that is yet to be used).
winnowing = {
systems = [ "x86_64-linux" ];
formats = null;
overlays = [
inputs.neovim-nightly-overlay.overlays.default
];
modules = [
# Well, well, well...
inputs.nixos-wsl.nixosModules.default
];
};
};
# Basically the baseline NixOS configuration of the whole cluster.
sharedModules = [
2024-01-26 13:21:08 +00:00
# Only have third-party modules with optional NixOS modules.
inputs.nix-index-database.nixosModules.nix-index
inputs.sops-nix.nixosModules.sops
inputs.disko.nixosModules.disko
2024-01-26 13:21:08 +00:00
# Bring our own teeny-tiny snippets of configurations.
defaultNixConf
../../modules/nixos/profiles/generic.nix
../../modules/nixos/profiles/nix-conf.nix
2024-01-26 13:21:08 +00:00
# The NixOS module that came from flake-parts.
({ config, lib, ... }: {
# Set the NixOS system at the time of evaluation for convenience. Take
# note, we assume that you develop your NixOS configuration somewhere
# not in `/etc/nixos`.
environment.etc.nixos.source = inputs.self;
})
];
2024-01-15 23:21:31 +00:00
};
2024-01-16 06:54:50 +00:00
flake = {
# Listing my public NixOS modules if anyone cares.
nixosModules.default = ../../modules/nixos;
};
}