89 lines
2.1 KiB
Nix
89 lines
2.1 KiB
Nix
{
|
|
inputs = {
|
|
nixpkgs.url = "https://channels.nixos.org/nixos-25.11/nixexprs.tar.xz";
|
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
|
|
|
## Nix/OS utilities
|
|
|
|
disko = {
|
|
url = "github:nix-community/disko";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
deploy-rs = {
|
|
url = "github:serokell/deploy-rs";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
sops-nix = {
|
|
url = "github:Mic92/sops-nix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
## Programs
|
|
|
|
flint = {
|
|
url = "github:NotAShelf/flint";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
## Services
|
|
|
|
foundryvtt = {
|
|
url = "github:reckenrode/nix-foundryvtt";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
sonnenshift = {
|
|
url = "git+ssh://git@github.com/sonnenshift/battery-manager";
|
|
inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
crate2nix.inputs = {
|
|
flake-compat.follows = "deploy-rs/flake-compat";
|
|
devshell.inputs.flake-utils.follows = "deploy-rs/utils";
|
|
flake-parts.follows = "flake-parts";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
outputs =
|
|
{ flake-parts, ... }@inputs:
|
|
flake-parts.lib.mkFlake { inherit inputs; } (
|
|
{ self, ... }@args:
|
|
{
|
|
imports = [
|
|
(flake-parts.lib.importApply ./flakeModules/deploy-rs.nix args)
|
|
./checks
|
|
./dev-utils.nix
|
|
./pkgs
|
|
];
|
|
|
|
flake.nixosConfigurations.hetzner-1 = inputs.nixpkgs.lib.nixosSystem {
|
|
specialArgs.flake-inputs = inputs;
|
|
modules = [
|
|
./configuration
|
|
./configuration/hardware-specific/hetzner
|
|
];
|
|
};
|
|
|
|
deploy.nodes.hetzner-1 = {
|
|
hostname = "116.202.158.55";
|
|
|
|
profiles.system = {
|
|
user = "root";
|
|
activation = "nixos";
|
|
closure = self.nixosConfigurations.hetzner-1;
|
|
|
|
sshUser = "tlater";
|
|
sshOpts = [
|
|
"-p"
|
|
"2222"
|
|
"-o"
|
|
"ForwardAgent=yes"
|
|
];
|
|
};
|
|
};
|
|
}
|
|
);
|
|
}
|