flake: add lite-config
This commit is contained in:
parent
3fe13fee63
commit
1b09fe00a7
9 changed files with 52 additions and 90 deletions
16
flake.lock
generated
16
flake.lock
generated
|
@ -147,6 +147,21 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"lite-config": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1723691425,
|
||||||
|
"narHash": "sha256-xOroQo/+CAtocvJQsGPE5ukr1Btp72xlcWPB4tBZp6M=",
|
||||||
|
"owner": "yelite",
|
||||||
|
"repo": "lite-config",
|
||||||
|
"rev": "34357ad12ad0a66b2de55a2457159bda36c71a06",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "yelite",
|
||||||
|
"repo": "lite-config",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nix-darwin": {
|
"nix-darwin": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -269,6 +284,7 @@
|
||||||
"empty": "empty",
|
"empty": "empty",
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
|
"lite-config": "lite-config",
|
||||||
"nix-darwin": "nix-darwin",
|
"nix-darwin": "nix-darwin",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-update": "nixpkgs-update",
|
"nixpkgs-update": "nixpkgs-update",
|
||||||
|
|
106
flake.nix
106
flake.nix
|
@ -24,6 +24,7 @@
|
||||||
flake-compat.url = "github:nix-community/flake-compat";
|
flake-compat.url = "github:nix-community/flake-compat";
|
||||||
flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs";
|
flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs";
|
||||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||||
|
lite-config.url = "github:yelite/lite-config";
|
||||||
nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
|
nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
nix-darwin.url = "github:LnL7/nix-darwin";
|
nix-darwin.url = "github:LnL7/nix-darwin";
|
||||||
nixpkgs-update-github-releases.flake = false;
|
nixpkgs-update-github-releases.flake = false;
|
||||||
|
@ -50,7 +51,41 @@
|
||||||
flake-parts.lib.mkFlake { inherit inputs; } {
|
flake-parts.lib.mkFlake { inherit inputs; } {
|
||||||
systems = import inputs.systems;
|
systems = import inputs.systems;
|
||||||
|
|
||||||
imports = [ inputs.treefmt-nix.flakeModule ];
|
imports = [
|
||||||
|
inputs.lite-config.flakeModule
|
||||||
|
inputs.treefmt-nix.flakeModule
|
||||||
|
];
|
||||||
|
|
||||||
|
lite-config =
|
||||||
|
{ lib, ... }:
|
||||||
|
{
|
||||||
|
nixpkgs = {
|
||||||
|
config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "terraform" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
hostModuleDir = ./hosts;
|
||||||
|
|
||||||
|
hosts = {
|
||||||
|
build01.system = "x86_64-linux";
|
||||||
|
build02.system = "x86_64-linux";
|
||||||
|
build03.system = "x86_64-linux";
|
||||||
|
build04.system = "aarch64-linux";
|
||||||
|
darwin01.system = "aarch64-darwin";
|
||||||
|
darwin02.system = "aarch64-darwin";
|
||||||
|
web02.system = "x86_64-linux";
|
||||||
|
};
|
||||||
|
|
||||||
|
systemModules = [
|
||||||
|
(
|
||||||
|
{ hostPlatform, ... }:
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
lib.optionals hostPlatform.isDarwin [ ./modules/darwin/common ]
|
||||||
|
++ lib.optionals hostPlatform.isLinux [ ./modules/nixos/common ];
|
||||||
|
}
|
||||||
|
)
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
perSystem =
|
perSystem =
|
||||||
{
|
{
|
||||||
|
@ -72,11 +107,6 @@
|
||||||
imports = [ ./dev/treefmt.nix ];
|
imports = [ ./dev/treefmt.nix ];
|
||||||
};
|
};
|
||||||
|
|
||||||
_module.args.pkgs = import inputs.nixpkgs {
|
|
||||||
inherit system;
|
|
||||||
config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "terraform" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
checks =
|
checks =
|
||||||
let
|
let
|
||||||
darwinConfigurations = lib.mapAttrs' (
|
darwinConfigurations = lib.mapAttrs' (
|
||||||
|
@ -103,69 +133,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
flake.darwinConfigurations =
|
|
||||||
let
|
|
||||||
darwinSystem =
|
|
||||||
args:
|
|
||||||
inputs.nix-darwin.lib.darwinSystem (
|
|
||||||
{
|
|
||||||
specialArgs = {
|
|
||||||
inherit inputs;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
// args
|
|
||||||
);
|
|
||||||
in
|
|
||||||
{
|
|
||||||
darwin01 = darwinSystem {
|
|
||||||
pkgs = inputs.nixpkgs.legacyPackages.aarch64-darwin;
|
|
||||||
modules = [ ./hosts/darwin01/configuration.nix ];
|
|
||||||
};
|
|
||||||
darwin02 = darwinSystem {
|
|
||||||
pkgs = inputs.nixpkgs.legacyPackages.aarch64-darwin;
|
|
||||||
modules = [ ./hosts/darwin02/configuration.nix ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
flake.nixosConfigurations =
|
|
||||||
let
|
|
||||||
nixosSystem =
|
|
||||||
args:
|
|
||||||
inputs.nixpkgs.lib.nixosSystem (
|
|
||||||
{
|
|
||||||
specialArgs = {
|
|
||||||
inherit inputs;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
// args
|
|
||||||
);
|
|
||||||
in
|
|
||||||
{
|
|
||||||
build01 = nixosSystem {
|
|
||||||
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
|
|
||||||
modules = [ ./hosts/build01/configuration.nix ];
|
|
||||||
};
|
|
||||||
build02 = nixosSystem {
|
|
||||||
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
|
|
||||||
modules = [ ./hosts/build02/configuration.nix ];
|
|
||||||
};
|
|
||||||
build03 = nixosSystem {
|
|
||||||
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
|
|
||||||
modules = [ ./hosts/build03/configuration.nix ];
|
|
||||||
};
|
|
||||||
build04 = nixosSystem {
|
|
||||||
pkgs = inputs.nixpkgs.legacyPackages.aarch64-linux;
|
|
||||||
modules = [ ./hosts/build04/configuration.nix ];
|
|
||||||
};
|
|
||||||
web02 = nixosSystem {
|
|
||||||
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
|
|
||||||
modules = [ ./hosts/web02/configuration.nix ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
flake.darwinModules = {
|
flake.darwinModules = {
|
||||||
common = ./modules/darwin/common;
|
|
||||||
|
|
||||||
builder = ./modules/darwin/builder.nix;
|
builder = ./modules/darwin/builder.nix;
|
||||||
community-builder = ./modules/darwin/community-builder;
|
community-builder = ./modules/darwin/community-builder;
|
||||||
hercules-ci = ./modules/darwin/hercules-ci.nix;
|
hercules-ci = ./modules/darwin/hercules-ci.nix;
|
||||||
|
@ -173,8 +141,6 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
flake.nixosModules = {
|
flake.nixosModules = {
|
||||||
common = ./modules/nixos/common;
|
|
||||||
|
|
||||||
buildbot = ./modules/nixos/buildbot.nix;
|
buildbot = ./modules/nixos/buildbot.nix;
|
||||||
builder = ./modules/nixos/builder.nix;
|
builder = ./modules/nixos/builder.nix;
|
||||||
community-builder = ./modules/nixos/community-builder;
|
community-builder = ./modules/nixos/community-builder;
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.srvos.nixosModules.hardware-hetzner-online-amd
|
inputs.srvos.nixosModules.hardware-hetzner-online-amd
|
||||||
inputs.self.nixosModules.common
|
|
||||||
inputs.self.nixosModules.disko-zfs
|
inputs.self.nixosModules.disko-zfs
|
||||||
inputs.self.nixosModules.builder
|
inputs.self.nixosModules.builder
|
||||||
inputs.self.nixosModules.community-builder
|
inputs.self.nixosModules.community-builder
|
||||||
|
@ -13,8 +12,6 @@
|
||||||
# Emulate riscv64 until we have proper builders
|
# Emulate riscv64 until we have proper builders
|
||||||
boot.binfmt.emulatedSystems = [ "riscv64-linux" ];
|
boot.binfmt.emulatedSystems = [ "riscv64-linux" ];
|
||||||
|
|
||||||
networking.hostName = "build01";
|
|
||||||
|
|
||||||
systemd.network.networks."10-uplink".networkConfig.Address = "2a01:4f9:3b:2946::1/64";
|
systemd.network.networks."10-uplink".networkConfig.Address = "2a01:4f9:3b:2946::1/64";
|
||||||
|
|
||||||
system.stateVersion = "23.11";
|
system.stateVersion = "23.11";
|
|
@ -6,7 +6,6 @@
|
||||||
inputs.srvos.nixosModules.hardware-hetzner-online-amd
|
inputs.srvos.nixosModules.hardware-hetzner-online-amd
|
||||||
./nixpkgs-update.nix
|
./nixpkgs-update.nix
|
||||||
./nixpkgs-update-backup.nix
|
./nixpkgs-update-backup.nix
|
||||||
inputs.self.nixosModules.common
|
|
||||||
inputs.self.nixosModules.builder
|
inputs.self.nixosModules.builder
|
||||||
inputs.self.nixosModules.disko-zfs
|
inputs.self.nixosModules.disko-zfs
|
||||||
];
|
];
|
||||||
|
@ -18,7 +17,6 @@
|
||||||
|
|
||||||
boot.kernelParams = [ "zfs.zfs_arc_max=${toString (24 * 1024 * 1024 * 1024)}" ]; # 24GB, try to limit OOM kills / reboots
|
boot.kernelParams = [ "zfs.zfs_arc_max=${toString (24 * 1024 * 1024 * 1024)}" ]; # 24GB, try to limit OOM kills / reboots
|
||||||
|
|
||||||
networking.hostName = "build02";
|
|
||||||
networking.nameservers = [
|
networking.nameservers = [
|
||||||
"1.1.1.1"
|
"1.1.1.1"
|
||||||
"1.0.0.1"
|
"1.0.0.1"
|
|
@ -3,7 +3,6 @@
|
||||||
imports = [
|
imports = [
|
||||||
inputs.srvos.nixosModules.mixins-nginx
|
inputs.srvos.nixosModules.mixins-nginx
|
||||||
inputs.srvos.nixosModules.hardware-hetzner-online-amd
|
inputs.srvos.nixosModules.hardware-hetzner-online-amd
|
||||||
inputs.self.nixosModules.common
|
|
||||||
inputs.self.nixosModules.disko-zfs
|
inputs.self.nixosModules.disko-zfs
|
||||||
inputs.self.nixosModules.buildbot
|
inputs.self.nixosModules.buildbot
|
||||||
inputs.self.nixosModules.builder
|
inputs.self.nixosModules.builder
|
||||||
|
@ -21,7 +20,5 @@
|
||||||
|
|
||||||
systemd.network.networks."10-uplink".networkConfig.Address = "2a01:4f8:2190:2698::2";
|
systemd.network.networks."10-uplink".networkConfig.Address = "2a01:4f8:2190:2698::2";
|
||||||
|
|
||||||
networking.hostName = "build03";
|
|
||||||
|
|
||||||
system.stateVersion = "23.11";
|
system.stateVersion = "23.11";
|
||||||
}
|
}
|
|
@ -3,7 +3,6 @@
|
||||||
imports = [
|
imports = [
|
||||||
inputs.srvos.nixosModules.hardware-hetzner-online-arm
|
inputs.srvos.nixosModules.hardware-hetzner-online-arm
|
||||||
inputs.self.nixosModules.disko-zfs
|
inputs.self.nixosModules.disko-zfs
|
||||||
inputs.self.nixosModules.common
|
|
||||||
inputs.self.nixosModules.builder
|
inputs.self.nixosModules.builder
|
||||||
inputs.self.nixosModules.hercules-ci
|
inputs.self.nixosModules.hercules-ci
|
||||||
inputs.self.nixosModules.remote-builder
|
inputs.self.nixosModules.remote-builder
|
||||||
|
@ -18,8 +17,6 @@
|
||||||
|
|
||||||
nixCommunity.remote-builder.key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEmdo1x1QkRepZf7nSe+OdEWX+wOjkBLF70vX9F+xf68 builder";
|
nixCommunity.remote-builder.key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEmdo1x1QkRepZf7nSe+OdEWX+wOjkBLF70vX9F+xf68 builder";
|
||||||
|
|
||||||
networking.hostName = "build04";
|
|
||||||
|
|
||||||
system.stateVersion = "23.11";
|
system.stateVersion = "23.11";
|
||||||
|
|
||||||
systemd.network.networks."10-uplink".networkConfig.Address = "2a01:4f9:3051:3962::2";
|
systemd.network.networks."10-uplink".networkConfig.Address = "2a01:4f9:3051:3962::2";
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.self.darwinModules.common
|
|
||||||
inputs.self.darwinModules.builder
|
inputs.self.darwinModules.builder
|
||||||
inputs.self.darwinModules.community-builder
|
inputs.self.darwinModules.community-builder
|
||||||
];
|
];
|
||||||
|
@ -15,7 +14,5 @@
|
||||||
# disable nixos-tests
|
# disable nixos-tests
|
||||||
nix.settings.system-features = [ "big-parallel" ];
|
nix.settings.system-features = [ "big-parallel" ];
|
||||||
|
|
||||||
networking.hostName = "darwin01";
|
|
||||||
|
|
||||||
system.stateVersion = 4;
|
system.stateVersion = 4;
|
||||||
}
|
}
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.self.darwinModules.common
|
|
||||||
inputs.self.darwinModules.builder
|
inputs.self.darwinModules.builder
|
||||||
inputs.self.darwinModules.hercules-ci
|
inputs.self.darwinModules.hercules-ci
|
||||||
inputs.self.darwinModules.remote-builder
|
inputs.self.darwinModules.remote-builder
|
||||||
|
@ -18,7 +17,5 @@
|
||||||
# disable nixos-tests
|
# disable nixos-tests
|
||||||
nix.settings.system-features = [ "big-parallel" ];
|
nix.settings.system-features = [ "big-parallel" ];
|
||||||
|
|
||||||
networking.hostName = "darwin02";
|
|
||||||
|
|
||||||
system.stateVersion = 4;
|
system.stateVersion = 4;
|
||||||
}
|
}
|
|
@ -2,13 +2,10 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./gandi.nix
|
./gandi.nix
|
||||||
inputs.self.nixosModules.common
|
|
||||||
inputs.self.nixosModules.monitoring
|
inputs.self.nixosModules.monitoring
|
||||||
inputs.srvos.nixosModules.mixins-nginx
|
inputs.srvos.nixosModules.mixins-nginx
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "web02";
|
|
||||||
|
|
||||||
networking.useDHCP = true;
|
networking.useDHCP = true;
|
||||||
|
|
||||||
# enabled by default for stateVersion < 23.11
|
# enabled by default for stateVersion < 23.11
|
Loading…
Add table
Reference in a new issue