75 lines
1.9 KiB
Nix
75 lines
1.9 KiB
Nix
{
|
|
description = "eve-psr-nix0 - Home Server";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "nixpkgs/nixos-23.05";
|
|
|
|
agenix = {
|
|
url = "github:ryantm/agenix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
inputs.darwin.follows = "";
|
|
inputs.home-manager.follows = "";
|
|
};
|
|
nix-serve-ng = {
|
|
url = github:aristanetworks/nix-serve-ng;
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = { self, nixpkgs, agenix, nix-serve-ng, ... }@attrs:
|
|
let
|
|
pkgs = import nixpkgs { inherit system; };
|
|
shell = import ./shell.nix { inherit agenix pkgs; };
|
|
system = "x86_64-linux";
|
|
in
|
|
{
|
|
devShell.x86_64-linux = shell.dev;
|
|
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixpkgs-fmt;
|
|
|
|
hydraJobs = {
|
|
devshell = shell.dev;
|
|
formatter = shell.packages.x86_64-linux.format;
|
|
};
|
|
|
|
packages = shell.packages;
|
|
|
|
nixosConfigurations = {
|
|
eve-psr-nix0 = nixpkgs.lib.nixosSystem {
|
|
inherit system;
|
|
specialArgs = attrs;
|
|
modules = [
|
|
({ modulesPath, ... }: {
|
|
|
|
imports = [
|
|
agenix.nixosModules.default
|
|
nix-serve-ng.nixosModules.default
|
|
|
|
./application/containers.nix
|
|
./application/nginx.nix
|
|
|
|
./monitoring/nginx.nix
|
|
./monitoring/grafana.nix
|
|
./monitoring/prometheus.nix
|
|
./monitoring/loki.nix
|
|
./monitoring/promtail.nix
|
|
|
|
./system/age.nix
|
|
./system/dns.nix
|
|
./system/hardware.nix
|
|
./system/nix-conf.nix
|
|
./system/security.nix
|
|
./system/build-services.nix
|
|
./system/system.nix
|
|
./system/virtualisation.nix
|
|
|
|
./user/users.nix
|
|
];
|
|
|
|
system.stateVersion = "22.11";
|
|
})
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|