put remote builder config in module
This commit is contained in:
@ -6,7 +6,7 @@
|
|||||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||||
# +#+#+#+#+#+ +#+ #
|
# +#+#+#+#+#+ +#+ #
|
||||||
# Created: 2025/09/06 00:56:57 by tomoron #+# #+# #
|
# Created: 2025/09/06 00:56:57 by tomoron #+# #+# #
|
||||||
# Updated: 2026/06/13 23:02:10 by tomoron ### ########.fr #
|
# Updated: 2026/06/13 23:20:55 by tomoron ### ########.fr #
|
||||||
# #
|
# #
|
||||||
# **************************************************************************** #
|
# **************************************************************************** #
|
||||||
|
|
||||||
@ -168,41 +168,4 @@
|
|||||||
|
|
||||||
programs.corectrl.enable = true;
|
programs.corectrl.enable = true;
|
||||||
|
|
||||||
|
|
||||||
nix.buildMachines = [
|
|
||||||
{
|
|
||||||
hostName = "tmoron.fr";
|
|
||||||
sshUser = "builder";
|
|
||||||
# 'ssh-ng' is faster if both machines are NixOS but falls flat if the
|
|
||||||
# machine Nix will attempt a connection to is not NixOS. In such a case
|
|
||||||
# you must use 'ssh' instead.
|
|
||||||
protocol = "ssh-ng";
|
|
||||||
|
|
||||||
# This can be an absolute path to a private key or it can be managed
|
|
||||||
# with something like Agenix, or SOPS.
|
|
||||||
sshKey = "/root/.ssh/id_ed25519";
|
|
||||||
|
|
||||||
# Systems for which builds will be offloaded.
|
|
||||||
system = "x86_64-linux";
|
|
||||||
|
|
||||||
# Default is 1 but may keep the builder idle in between builds
|
|
||||||
maxJobs = 1;
|
|
||||||
# How fast is the builder compared to your local machine
|
|
||||||
speedFactor = 2;
|
|
||||||
|
|
||||||
supportedFeatures = ["big-parallel" "kvm" "nixos-test"];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
nix.distributedBuilds = true;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
programs.ssh.extraConfig = ''
|
|
||||||
Host tmoron.fr
|
|
||||||
HostName tmoron.fr
|
|
||||||
Port 1880
|
|
||||||
'';
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||||
# +#+#+#+#+#+ +#+ #
|
# +#+#+#+#+#+ +#+ #
|
||||||
# Created: 2025/09/06 00:57:09 by tomoron #+# #+# #
|
# Created: 2025/09/06 00:57:09 by tomoron #+# #+# #
|
||||||
# Updated: 2026/06/13 22:52:09 by tomoron ### ########.fr #
|
# Updated: 2026/06/13 23:21:39 by tomoron ### ########.fr #
|
||||||
# #
|
# #
|
||||||
# **************************************************************************** #
|
# **************************************************************************** #
|
||||||
|
|
||||||
@ -155,6 +155,8 @@ in
|
|||||||
};
|
};
|
||||||
users.groups.builder = {};
|
users.groups.builder = {};
|
||||||
|
|
||||||
|
config.mods.remote-build.enable = false;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
systemd.services.dockermcmgr-server = {
|
systemd.services.dockermcmgr-server = {
|
||||||
@ -167,4 +169,5 @@ in
|
|||||||
Group= "users";
|
Group= "users";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
46
osConfigs/modules/remote_build.nix
Normal file
46
osConfigs/modules/remote_build.nix
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# **************************************************************************** #
|
||||||
|
# #
|
||||||
|
# ::: :::::::: #
|
||||||
|
# remote_build.nix :+: :+: :+: #
|
||||||
|
# +:+ +:+ +:+ #
|
||||||
|
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||||
|
# +#+#+#+#+#+ +#+ #
|
||||||
|
# Created: 2025/09/05 23:47:09 by tomoron #+# #+# #
|
||||||
|
# Updated: 2026/06/13 23:27:26 by tomoron ### ########.fr #
|
||||||
|
# #
|
||||||
|
# **************************************************************************** #
|
||||||
|
|
||||||
|
{config, lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
options.mods.remote-build.enable = lib.mkOption {
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = true;
|
||||||
|
description = "setup remote nix builder";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.mods.remote-build.enable {
|
||||||
|
nix.buildMachines = [
|
||||||
|
{
|
||||||
|
hostName = "tmoron.fr";
|
||||||
|
sshUser = "builder";
|
||||||
|
protocol = "ssh-ng";
|
||||||
|
|
||||||
|
sshKey = "/root/.ssh/id_ed25519";
|
||||||
|
|
||||||
|
system = "x86_64-linux";
|
||||||
|
|
||||||
|
maxJobs = 1;
|
||||||
|
speedFactor = 2;
|
||||||
|
|
||||||
|
supportedFeatures = ["big-parallel" "kvm" "nixos-test"];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
nix.distributedBuilds = true;
|
||||||
|
programs.ssh.extraConfig = ''
|
||||||
|
Host tmoron.fr
|
||||||
|
HostName tmoron.fr
|
||||||
|
Port 1880
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user