Compare commits
No commits in common. "8d623692c7da930fd80b1ea48c94220905aca23e" and "8748015accfadf62f115aa15c9ff2a2ebccdaa5d" have entirely different histories.
8d623692c7
...
8748015acc
@ -19,14 +19,6 @@
|
|||||||
generateNixosSystem = name: nixpkgs.lib.nixosSystem {
|
generateNixosSystem = name: nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
({ ... }: {
|
|
||||||
/*
|
|
||||||
Make the contents of the flake availiable to modules.
|
|
||||||
Useful for having the monitoring server scraping the
|
|
||||||
target config from all other servers automatically.
|
|
||||||
*/
|
|
||||||
_module.args._nixfiles = self;
|
|
||||||
})
|
|
||||||
./configuration/common
|
./configuration/common
|
||||||
({ ... }: {
|
({ ... }: {
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
|
12
hosts/mail-1/configuration.nix
Normal file
12
hosts/mail-1/configuration.nix
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
networking.hostName = "mail-1";
|
||||||
|
|
||||||
|
clerie.monitoring = {
|
||||||
|
enable = true;
|
||||||
|
id = "208";
|
||||||
|
pubkey = "s2GT9iYQmuiwkZ04KzSqqlIEbUJ6CT6i4htCjWYt2xs=";
|
||||||
|
nixos = false;
|
||||||
|
};
|
||||||
|
}
|
@ -1,19 +1,9 @@
|
|||||||
{ config, pkgs, lib, _nixfiles, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
hosts = _nixfiles.nixosConfigurations // {
|
hosts = (import ../../lib/hosts.nix { inherit pkgs; }).hosts;
|
||||||
"mail-1".config = {
|
|
||||||
networking.hostName = "mail-1";
|
|
||||||
clerie.monitoring = {
|
|
||||||
enable = true;
|
|
||||||
id = "208";
|
|
||||||
pubkey = "s2GT9iYQmuiwkZ04KzSqqlIEbUJ6CT6i4htCjWYt2xs=";
|
|
||||||
nixos = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
monitoringHosts = filterAttrs (name: host:
|
monitoringHosts = filterAttrs (name: host:
|
||||||
attrByPath ["clerie" "monitoring" "enable"] false host.config)
|
attrByPath ["clerie" "monitoring" "enable"] false host.config)
|
||||||
|
26
lib/hosts.nix
Normal file
26
lib/hosts.nix
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
{ pkgs ? import ../pkgs {} }:
|
||||||
|
|
||||||
|
with pkgs.lib;
|
||||||
|
|
||||||
|
rec {
|
||||||
|
hostsDir = ../hosts;
|
||||||
|
|
||||||
|
hostNames = attrNames (
|
||||||
|
filterAttrs (
|
||||||
|
name: type: type == "directory"
|
||||||
|
) (
|
||||||
|
builtins.readDir hostsDir
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
hosts = listToAttrs (
|
||||||
|
map (
|
||||||
|
hostName: nameValuePair hostName (
|
||||||
|
import (pkgs.path + "/nixos") {
|
||||||
|
configuration = import (hostsDir + "/${hostName}/configuration.nix");
|
||||||
|
system = "x86_64-linux";
|
||||||
|
}
|
||||||
|
)
|
||||||
|
) hostNames
|
||||||
|
);
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user