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

138 lines
3.7 KiB
Nix
Raw Normal View History

{ inputs
, defaultNixConf
, ...
}:
{
2024-01-16 06:54:50 +00:00
setups.nixos = {
configs = {
# The main desktop.
ni = {
nixpkgs.branch = "nixos-unstable";
2024-01-16 06:54:50 +00:00
systems = [ "x86_64-linux" ];
formats = null;
2024-02-28 10:49:42 +00:00
modules = [
inputs.disko.nixosModules.disko
inputs.sops-nix.nixosModules.sops
inputs.self.nixosModules.wrapper-manager
2024-02-28 10:49:42 +00:00
];
home-manager = {
branch = "home-manager-unstable";
nixpkgsInstance = "global";
users.foo-dogsquared = {
userConfig = {
uid = 1000;
extraGroups = [
"adm"
"adbusers"
"wheel"
"audio"
"docker"
"podman"
"networkmanager"
"systemd-journal"
"wireshark"
];
hashedPassword =
"$6$.cMYto0K0CHbpIMT$dRqyKs4q1ppzmTpdzy5FWP/V832a6X..FwM8CJ30ivK0nfLjQ7DubctxOZbeOtygfjcUd1PZ0nQoQpOg/WMvg.";
description = "Gabriel Arazas";
};
};
};
2024-01-16 06:54:50 +00:00
};
# A remote server.
plover = {
nixpkgs.branch = "nixos-unstable";
home-manager.branch = "home-manager-unstable";
2024-01-16 06:54:50 +00:00
systems = [ "x86_64-linux" ];
formats = null;
domain = "foodogsquared.one";
2024-02-28 10:49:42 +00:00
modules = [
inputs.disko.nixosModules.disko
inputs.sops-nix.nixosModules.sops
2024-02-28 10:49:42 +00:00
];
2024-01-16 06:54:50 +00:00
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 = {
nixpkgs.branch = "nixos-unstable";
home-manager.branch = "home-manager-unstable";
2024-01-16 06:54:50 +00:00
systems = [ "x86_64-linux" ];
formats = [ "vm" ];
};
#}}}
# The barely customized non-graphical installer.
bootstrap = {
nixpkgs.branch = "nixos-unstable-small";
2024-01-16 06:54:50 +00:00
systems = [ "aarch64-linux" "x86_64-linux" ];
formats = [ "install-iso" ];
};
# The barely customized graphical installer.
graphical-installer = {
nixpkgs.branch = "nixos-unstable";
home-manager.branch = "home-manager-unstable";
2024-01-16 06:54:50 +00:00
systems = [ "aarch64-linux" "x86_64-linux" ];
formats = [ "install-iso-graphical" ];
diskoConfigs = [ "external-hdd" ];
2024-02-28 10:49:42 +00:00
shouldBePartOfNixOSConfigurations = true;
2024-01-16 06:54:50 +00:00
};
# The WSL system (that is yet to be used).
winnowing = {
nixpkgs = {
branch = "nixos-unstable";
overlays = [
inputs.neovim-nightly-overlay.overlays.default
];
};
home-manager.branch = "home-manager-unstable";
2024-01-16 06:54:50 +00:00
systems = [ "x86_64-linux" ];
formats = null;
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
2024-02-25 09:26:06 +00:00
# The rainbow road to ricing your raw materials.
inputs.self.nixosModules.bahaghari
2024-02-23 10:17:43 +00:00
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
{
config.documentation.nixos = {
extraModules = [
../../modules/nixos
../../modules/nixos/_private
];
};
}
];
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;
};
}