73 lines
2.2 KiB
Nix
73 lines
2.2 KiB
Nix
|
|
{ pkgs, lib, config, ... }:
|
|||
|
|
let
|
|||
|
|
serverIP = "10.0.174.12";
|
|||
|
|
buildNodeYggIP = "200:ccc6:1361:5c84:aba0:1244:35f5:c903";
|
|||
|
|
configRepoUrl = "https://forgejo.gregorbednov.ru/gregorbednov/configuration.nix.git";
|
|||
|
|
in
|
|||
|
|
{
|
|||
|
|
isoImage.isoName = "mirea-nixos-installer.iso";
|
|||
|
|
isoImage.squashfsCompression = "zstd -Xcompression-level 6";
|
|||
|
|
|
|||
|
|
services.getty.autologinUser = lib.mkForce "root";
|
|||
|
|
|
|||
|
|
environment.systemPackages = with pkgs; [
|
|||
|
|
parted
|
|||
|
|
gptfdisk
|
|||
|
|
util-linux
|
|||
|
|
dosfstools
|
|||
|
|
e2fsprogs
|
|||
|
|
git
|
|||
|
|
pv
|
|||
|
|
curl
|
|||
|
|
(writeShellScriptBin "mirea-install" (
|
|||
|
|
builtins.replaceStrings
|
|||
|
|
[ "@CONFIG_REPO_URL@" ]
|
|||
|
|
[ configRepoUrl ]
|
|||
|
|
(builtins.readFile ./mirea-install.sh)
|
|||
|
|
))
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
# Yggdrasil запускается на установщике — благодаря ему доступен локальный кэш сборок
|
|||
|
|
services.yggdrasil = {
|
|||
|
|
enable = true;
|
|||
|
|
persistentKeys = false;
|
|||
|
|
settings.Peers = [ "tcp://${serverIP}:12345" ];
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
networking.networkmanager.enable = true;
|
|||
|
|
networking.hosts."${buildNodeYggIP}" = [ "nixos.builds.node" ];
|
|||
|
|
|
|||
|
|
nix.settings = {
|
|||
|
|
substituters = [
|
|||
|
|
"http://nixos.builds.node"
|
|||
|
|
"https://cache.nixos.org"
|
|||
|
|
];
|
|||
|
|
trusted-public-keys = [
|
|||
|
|
"nixos.builds.node:E/XNkcdzB0EyTyEJuOTXJH8qynxgCfQ87JHkbD88uF8="
|
|||
|
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
|||
|
|
];
|
|||
|
|
trusted-substituters = [ "http://nixos.builds.node" ];
|
|||
|
|
connect-timeout = 5;
|
|||
|
|
experimental-features = [ "nix-command" "flakes" ];
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
systemd.services.nix-daemon = {
|
|||
|
|
after = [ "yggdrasil.service" ];
|
|||
|
|
wants = [ "yggdrasil.service" ];
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
i18n.defaultLocale = "ru_RU.UTF-8";
|
|||
|
|
time.timeZone = "Europe/Moscow";
|
|||
|
|
console.font = "cyr-sun16";
|
|||
|
|
|
|||
|
|
environment.etc."issue".text = ''
|
|||
|
|
|
|||
|
|
┌─────────────────────────────────────────┐
|
|||
|
|
│ Установщик NixOS MIREA │
|
|||
|
|
│ Запустите: mirea-install │
|
|||
|
|
└─────────────────────────────────────────┘
|
|||
|
|
|
|||
|
|
'';
|
|||
|
|
|
|||
|
|
system.stateVersion = "24.11";
|
|||
|
|
}
|