modules: add darwin/nixos builder
This commit is contained in:
parent
75bc5ca2c0
commit
820fdb8fd1
11 changed files with 32 additions and 1 deletions
|
@ -144,6 +144,7 @@
|
||||||
flake.darwinModules = {
|
flake.darwinModules = {
|
||||||
common = ./modules/darwin/common;
|
common = ./modules/darwin/common;
|
||||||
|
|
||||||
|
builder = ./modules/darwin/builder.nix;
|
||||||
hercules-ci = ./modules/darwin/hercules-ci;
|
hercules-ci = ./modules/darwin/hercules-ci;
|
||||||
remote-builder = ./modules/darwin/remote-builder.nix;
|
remote-builder = ./modules/darwin/remote-builder.nix;
|
||||||
};
|
};
|
||||||
|
@ -151,6 +152,7 @@
|
||||||
flake.nixosModules = {
|
flake.nixosModules = {
|
||||||
common = ./modules/nixos/common;
|
common = ./modules/nixos/common;
|
||||||
|
|
||||||
|
builder = ./modules/nixos/builder.nix;
|
||||||
cachix-deploy = ./modules/nixos/cachix-deploy;
|
cachix-deploy = ./modules/nixos/cachix-deploy;
|
||||||
community-builder = ./modules/nixos/community-builder;
|
community-builder = ./modules/nixos/community-builder;
|
||||||
github-org-backup = ./modules/nixos/github-org-backup.nix;
|
github-org-backup = ./modules/nixos/github-org-backup.nix;
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
inputs.srvos.nixosModules.hardware-hetzner-online-amd
|
inputs.srvos.nixosModules.hardware-hetzner-online-amd
|
||||||
inputs.self.nixosModules.common
|
inputs.self.nixosModules.common
|
||||||
|
inputs.self.nixosModules.builder
|
||||||
inputs.self.nixosModules.zfs
|
inputs.self.nixosModules.zfs
|
||||||
inputs.self.nixosModules.community-builder
|
inputs.self.nixosModules.community-builder
|
||||||
];
|
];
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
./nixpkgs-update.nix
|
./nixpkgs-update.nix
|
||||||
./nixpkgs-update-backup.nix
|
./nixpkgs-update-backup.nix
|
||||||
inputs.self.nixosModules.common
|
inputs.self.nixosModules.common
|
||||||
|
inputs.self.nixosModules.builder
|
||||||
inputs.self.nixosModules.hercules-ci
|
inputs.self.nixosModules.hercules-ci
|
||||||
inputs.self.nixosModules.zfs
|
inputs.self.nixosModules.zfs
|
||||||
];
|
];
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
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.common
|
||||||
|
inputs.self.nixosModules.builder
|
||||||
inputs.self.nixosModules.hercules-ci
|
inputs.self.nixosModules.hercules-ci
|
||||||
inputs.self.nixosModules.watch-store
|
inputs.self.nixosModules.watch-store
|
||||||
inputs.self.nixosModules.zfs
|
inputs.self.nixosModules.zfs
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
inputs.disko.nixosModules.disko
|
inputs.disko.nixosModules.disko
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
inputs.self.nixosModules.common
|
inputs.self.nixosModules.common
|
||||||
|
inputs.self.nixosModules.builder
|
||||||
inputs.self.nixosModules.hercules-ci
|
inputs.self.nixosModules.hercules-ci
|
||||||
inputs.self.nixosModules.remote-builder
|
inputs.self.nixosModules.remote-builder
|
||||||
];
|
];
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.self.darwinModules.common
|
inputs.self.darwinModules.common
|
||||||
|
inputs.self.darwinModules.builder
|
||||||
inputs.self.darwinModules.hercules-ci
|
inputs.self.darwinModules.hercules-ci
|
||||||
inputs.self.darwinModules.remote-builder
|
inputs.self.darwinModules.remote-builder
|
||||||
];
|
];
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.self.darwinModules.common
|
inputs.self.darwinModules.common
|
||||||
|
inputs.self.darwinModules.builder
|
||||||
inputs.self.darwinModules.hercules-ci
|
inputs.self.darwinModules.hercules-ci
|
||||||
inputs.self.darwinModules.remote-builder
|
inputs.self.darwinModules.remote-builder
|
||||||
];
|
];
|
||||||
|
|
7
modules/darwin/builder.nix
Normal file
7
modules/darwin/builder.nix
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../shared/builder.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
nix.gc.interval = { Minute = 15; };
|
||||||
|
}
|
7
modules/nixos/builder.nix
Normal file
7
modules/nixos/builder.nix
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../shared/builder.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
nix.gc.dates = "hourly";
|
||||||
|
}
|
9
modules/shared/builder.nix
Normal file
9
modules/shared/builder.nix
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
let
|
||||||
|
asGB = size: toString (size * 1024 * 1024 * 1024);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
nix.gc.options = ''
|
||||||
|
--max-freed "$((${asGB 50} * 1024**3 - 1024 * $(df -P -k /nix/store | tail -n 1 | ${pkgs.gawk}/bin/awk '{ print $4 }')))"
|
||||||
|
'';
|
||||||
|
}
|
|
@ -25,6 +25,6 @@ in
|
||||||
nixPath = pkgs.lib.mkForce [ "nixpkgs=${pkgs.path}" ];
|
nixPath = pkgs.lib.mkForce [ "nixpkgs=${pkgs.path}" ];
|
||||||
|
|
||||||
gc.automatic = true;
|
gc.automatic = true;
|
||||||
gc.options = "--delete-older-than 14d";
|
gc.options = pkgs.lib.mkDefault "--delete-older-than 14d";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue