chore: moved all config out of hive.nix and full nixfmt
This commit is contained in:
parent
bc23fda1c2
commit
7f5761a250
18 changed files with 366 additions and 352 deletions
204
hive.nix
204
hive.nix
|
@ -3,6 +3,11 @@ let
|
||||||
users = import ./users;
|
users = import ./users;
|
||||||
sources = import ./npins;
|
sources = import ./npins;
|
||||||
mkNixpkgsSrc = (import sources.nix-patches { patchFile = ./patches; }).mkNixpkgsSrc;
|
mkNixpkgsSrc = (import sources.nix-patches { patchFile = ./patches; }).mkNixpkgsSrc;
|
||||||
|
lib =
|
||||||
|
(import (mkNixpkgsSrc {
|
||||||
|
src = sources.nixpkgs;
|
||||||
|
version = "unstable";
|
||||||
|
}) { }).lib;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -20,204 +25,15 @@ in
|
||||||
};
|
};
|
||||||
defaults =
|
defaults =
|
||||||
{
|
{
|
||||||
nodes,
|
|
||||||
name,
|
name,
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [ ./kat ];
|
||||||
./kat
|
|
||||||
];
|
|
||||||
networking.hostName = name;
|
networking.hostName = name;
|
||||||
};
|
};
|
||||||
|
|
||||||
kat-probook =
|
|
||||||
{ users, ... }:
|
|
||||||
{
|
|
||||||
deployment.allowLocalDeployment = true;
|
|
||||||
|
|
||||||
imports = [
|
|
||||||
./machines/kat-probook
|
|
||||||
users.catvayor
|
|
||||||
];
|
|
||||||
nix.settings.trusted-users = [
|
|
||||||
"root"
|
|
||||||
"@wheel"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
kat-manah =
|
|
||||||
{ users, ... }:
|
|
||||||
{
|
|
||||||
deployment.targetHost = "manah.kat";
|
|
||||||
services.openssh.enable = true;
|
|
||||||
kat.fqdn = "manah.katvayor.net";
|
|
||||||
imports = [
|
|
||||||
./machines/kat-manah
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
kat-watcher =
|
|
||||||
{ users, ... }:
|
|
||||||
{
|
|
||||||
deployment.targetHost = "watcher.kat";
|
|
||||||
services.openssh.enable = true;
|
|
||||||
kat.fqdn = "watcher.katvayor.net";
|
|
||||||
imports = [
|
|
||||||
./machines/kat-watcher
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
kat-virt =
|
|
||||||
{ ssh-keys, ... }:
|
|
||||||
{
|
|
||||||
deployment = {
|
|
||||||
targetHost = "virt.kat";
|
|
||||||
tags = [ "kat-vms" ];
|
|
||||||
};
|
|
||||||
services.openssh.enable = true;
|
|
||||||
services.qemuGuest.enable = true;
|
|
||||||
boot.kernelParams = [ "console=ttyS0" ];
|
|
||||||
kat.fqdn = "degette.katvayor.net";
|
|
||||||
|
|
||||||
imports = [
|
|
||||||
./machines/kat-virt
|
|
||||||
];
|
|
||||||
users.users.root.openssh.authorizedKeys.keys = with ssh-keys; sylvain ++ gaby;
|
|
||||||
};
|
|
||||||
|
|
||||||
kat-mail-test =
|
|
||||||
{ ssh-keys, ... }:
|
|
||||||
{
|
|
||||||
deployment = {
|
|
||||||
targetHost = "mail-test.kat";
|
|
||||||
tags = [ "kat-vms" ];
|
|
||||||
};
|
|
||||||
services.openssh.enable = true;
|
|
||||||
services.qemuGuest.enable = true;
|
|
||||||
boot.kernelParams = [ "console=ttyS0" ];
|
|
||||||
kat.fqdn = "betamail.katvayor.net";
|
|
||||||
|
|
||||||
imports = [
|
|
||||||
./machines/kat-mail-test
|
|
||||||
];
|
|
||||||
users.users.root.openssh.authorizedKeys.keys = ssh-keys.sylvain;
|
|
||||||
};
|
|
||||||
|
|
||||||
kat-son =
|
|
||||||
{ users, ... }:
|
|
||||||
{
|
|
||||||
deployment = {
|
|
||||||
targetHost = "son.kat";
|
|
||||||
tags = [ "kat-vms" ];
|
|
||||||
};
|
|
||||||
services.openssh.enable = true;
|
|
||||||
services.qemuGuest.enable = true;
|
|
||||||
boot.kernelParams = [ "console=ttyS0" ];
|
|
||||||
kat.fqdn = "son.katvayor.net";
|
|
||||||
imports = [
|
|
||||||
./machines/kat-son
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
kat-orchid =
|
|
||||||
{ users, ... }:
|
|
||||||
{
|
|
||||||
deployment = {
|
|
||||||
targetHost = "orchid.kat";
|
|
||||||
tags = [ "kat-vms" ];
|
|
||||||
};
|
|
||||||
services.openssh.enable = true;
|
|
||||||
services.qemuGuest.enable = true;
|
|
||||||
boot.kernelParams = [ "console=ttyS0" ];
|
|
||||||
kat.fqdn = "orchid.katvayor.net";
|
|
||||||
imports = [
|
|
||||||
./machines/kat-orchid
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
kat-iso =
|
|
||||||
{
|
|
||||||
users,
|
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
deployment = {
|
|
||||||
allowLocalDeployment = false;
|
|
||||||
targetHost = null;
|
|
||||||
};
|
|
||||||
|
|
||||||
imports = [
|
|
||||||
(modulesPath + "/installer/cd-dvd/installation-cd-minimal-new-kernel-no-zfs.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
networkmanager.enable = true;
|
|
||||||
wireless.enable = false;
|
|
||||||
};
|
|
||||||
console.keyMap = "fr";
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
perl
|
|
||||||
git
|
|
||||||
];
|
|
||||||
programs.zsh.enable = true;
|
|
||||||
services.openssh.enable = true;
|
|
||||||
services.qemuGuest.enable = true;
|
|
||||||
boot.supportedFilesystems = {
|
|
||||||
bcachefs = true;
|
|
||||||
zfs = lib.mkForce false;
|
|
||||||
};
|
|
||||||
boot.kernelParams = [ "console=ttyS0" ];
|
|
||||||
boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
|
|
||||||
services.getty.autologinUser = lib.mkForce "root";
|
|
||||||
system.stateVersion = lib.mkForce "24.11";
|
|
||||||
};
|
|
||||||
|
|
||||||
kat-kexec =
|
|
||||||
{
|
|
||||||
users,
|
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
{
|
|
||||||
deployment = {
|
|
||||||
allowLocalDeployment = false;
|
|
||||||
targetHost = null;
|
|
||||||
};
|
|
||||||
|
|
||||||
imports = [
|
|
||||||
("${sources.nixos-images}/nix/kexec-installer/module.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
networkmanager.enable = false;
|
|
||||||
wireless.enable = false;
|
|
||||||
};
|
|
||||||
console.keyMap = "fr";
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
perl
|
|
||||||
git
|
|
||||||
];
|
|
||||||
programs.zsh.enable = true;
|
|
||||||
services.openssh.enable = true;
|
|
||||||
services.qemuGuest.enable = true;
|
|
||||||
boot.kernelParams = [ "console=ttyS0" ];
|
|
||||||
boot.kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
|
|
||||||
boot.supportedFilesystems = {
|
|
||||||
bcachefs = true;
|
|
||||||
zfs = lib.mkForce false;
|
|
||||||
};
|
|
||||||
services.getty.autologinUser = lib.mkForce "root";
|
|
||||||
system.stateVersion = lib.mkForce "24.11";
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
// lib.mapAttrs' (name: _: {
|
||||||
|
name = lib.removeSuffix ".nix" name;
|
||||||
|
value = import ./machines/${name};
|
||||||
|
}) (builtins.readDir ./machines)
|
||||||
|
|
|
@ -5,13 +5,18 @@ let
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [ (import ./zsh.nix).system ];
|
imports = [ (import ./zsh.nix).system ];
|
||||||
home-manager.sharedModules = [{
|
home-manager.sharedModules = [
|
||||||
imports = [ zsh.user ./neovim ];
|
{
|
||||||
# options.kat = {
|
imports = [
|
||||||
# ssh = mkEnableOption "ssh configuration";
|
zsh.user
|
||||||
# };
|
./neovim
|
||||||
config = {
|
];
|
||||||
home.stateVersion = config.system.stateVersion;
|
# options.kat = {
|
||||||
};
|
# ssh = mkEnableOption "ssh configuration";
|
||||||
}];
|
# };
|
||||||
|
config = {
|
||||||
|
home.stateVersion = config.system.stateVersion;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
44
machines/kat-iso.nix
Normal file
44
machines/kat-iso.nix
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
deployment = {
|
||||||
|
allowLocalDeployment = false;
|
||||||
|
targetHost = null;
|
||||||
|
};
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/installer/cd-dvd/installation-cd-minimal-new-kernel-no-zfs.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
supportedFilesystems = {
|
||||||
|
bcachefs = true;
|
||||||
|
zfs = lib.mkForce false;
|
||||||
|
};
|
||||||
|
kernelParams = [ "console=ttyS0" ];
|
||||||
|
kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
|
||||||
|
};
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
networkmanager.enable = true;
|
||||||
|
wireless.enable = false;
|
||||||
|
};
|
||||||
|
console.keyMap = "fr";
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
perl
|
||||||
|
git
|
||||||
|
];
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
services = {
|
||||||
|
openssh.enable = true;
|
||||||
|
qemuGuest.enable = true;
|
||||||
|
getty.autologinUser = lib.mkForce "root";
|
||||||
|
};
|
||||||
|
|
||||||
|
system.stateVersion = lib.mkForce "24.11";
|
||||||
|
}
|
45
machines/kat-kexec.nix
Normal file
45
machines/kat-kexec.nix
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
lib,
|
||||||
|
sources,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
deployment = {
|
||||||
|
allowLocalDeployment = false;
|
||||||
|
targetHost = null;
|
||||||
|
};
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
("${sources.nixos-images}/nix/kexec-installer/module.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
kernelParams = [ "console=ttyS0" ];
|
||||||
|
kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
|
||||||
|
supportedFilesystems = {
|
||||||
|
bcachefs = true;
|
||||||
|
zfs = lib.mkForce false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
networkmanager.enable = false;
|
||||||
|
wireless.enable = false;
|
||||||
|
};
|
||||||
|
console.keyMap = "fr";
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
perl
|
||||||
|
git
|
||||||
|
];
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
services = {
|
||||||
|
openssh.enable = true;
|
||||||
|
qemuGuest.enable = true;
|
||||||
|
getty.autologinUser = lib.mkForce "root";
|
||||||
|
};
|
||||||
|
|
||||||
|
system.stateVersion = lib.mkForce "24.11";
|
||||||
|
}
|
|
@ -4,12 +4,17 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
nodes,
|
nodes,
|
||||||
sources,
|
sources,
|
||||||
|
ssh-keys,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
host = "catvayor.sh";
|
host = "catvayor.sh";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
deployment = {
|
||||||
|
targetHost = "mail-test.kat";
|
||||||
|
tags = [ "kat-vms" ];
|
||||||
|
};
|
||||||
imports = [
|
imports = [
|
||||||
"${sources.nixos-mailserver}"
|
"${sources.nixos-mailserver}"
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
@ -17,26 +22,34 @@ in
|
||||||
./modo.nix
|
./modo.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
kat.proxies = {
|
users.users.root.openssh.authorizedKeys.keys = ssh-keys.sylvain;
|
||||||
ip = "192.168.122.3";
|
|
||||||
aliases = [ "catvayor.sh" ];
|
kat = {
|
||||||
open-tcp = [
|
fqdn = "betamail.katvayor.net";
|
||||||
{
|
wireguardPubKey = "Znj451+hGJcPV1zFgpRMA8hg8edmUInA5zBtYBUuL3k=";
|
||||||
internal = 22;
|
proxies = {
|
||||||
external = 22002;
|
ip = "192.168.122.3";
|
||||||
}
|
aliases = [ "catvayor.sh" ];
|
||||||
25
|
open-tcp = [
|
||||||
465
|
{
|
||||||
993
|
internal = 22;
|
||||||
];
|
external = 22002;
|
||||||
|
}
|
||||||
|
25
|
||||||
|
465
|
||||||
|
993
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.loader = {
|
boot = {
|
||||||
systemd-boot.enable = true;
|
loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
systemd-boot.enable = true;
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
};
|
||||||
|
kernelParams = [ "console=ttyS0" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
kat.wireguardPubKey = "Znj451+hGJcPV1zFgpRMA8hg8edmUInA5zBtYBUuL3k=";
|
|
||||||
systemd.network = {
|
systemd.network = {
|
||||||
networks = {
|
networks = {
|
||||||
"10-enp1s0" = {
|
"10-enp1s0" = {
|
||||||
|
@ -87,25 +100,28 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.useDHCP = false;
|
networking = {
|
||||||
|
useDHCP = false;
|
||||||
services.openssh.enable = true;
|
firewall.enable = false;
|
||||||
|
};
|
||||||
networking.firewall.enable = false;
|
|
||||||
|
|
||||||
security.acme = {
|
security.acme = {
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
defaults.email = "root@katvayor.net";
|
defaults.email = "root@katvayor.net";
|
||||||
};
|
};
|
||||||
services.nginx = {
|
services = {
|
||||||
enable = true;
|
openssh.enable = true;
|
||||||
virtualHosts."catvayor.sh".enableACME = true;
|
qemuGuest.enable = true;
|
||||||
virtualHosts."betamail.katvayor.net" = {
|
nginx = {
|
||||||
enableACME = true;
|
enable = true;
|
||||||
addSSL = true;
|
virtualHosts."catvayor.sh".enableACME = true;
|
||||||
locations."/" = {
|
virtualHosts."betamail.katvayor.net" = {
|
||||||
recommendedProxySettings = true;
|
enableACME = true;
|
||||||
proxyPass = "http://localhost:8000/";
|
addSSL = true;
|
||||||
|
locations."/" = {
|
||||||
|
recommendedProxySettings = true;
|
||||||
|
proxyPass = "http://localhost:8000/";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -22,7 +22,10 @@
|
||||||
type = "filesystem";
|
type = "filesystem";
|
||||||
format = "bcachefs";
|
format = "bcachefs";
|
||||||
mountpoint = "/";
|
mountpoint = "/";
|
||||||
mountOptions = [ "fsck" "fix_errors" ];
|
mountOptions = [
|
||||||
|
"fsck"
|
||||||
|
"fix_errors"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -6,6 +6,8 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
deployment.targetHost = "manah.kat";
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
@ -22,7 +24,24 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
kat.wireguardPubKey = "2rMQV5fyBhl7t/0j70iPOfEr/lAWQfLXQKMwtzaXxnM=";
|
kat = {
|
||||||
|
fqdn = "manah.katvayor.net";
|
||||||
|
proxies = {
|
||||||
|
ip = "10.42.0.1";
|
||||||
|
open-tcp = [
|
||||||
|
9000
|
||||||
|
9500
|
||||||
|
];
|
||||||
|
redirects = [
|
||||||
|
"kat-orchid"
|
||||||
|
"kat-son"
|
||||||
|
"kat-virt"
|
||||||
|
"kat-mail-test"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
wireguardPubKey = "2rMQV5fyBhl7t/0j70iPOfEr/lAWQfLXQKMwtzaXxnM=";
|
||||||
|
};
|
||||||
|
|
||||||
systemd.network = {
|
systemd.network = {
|
||||||
enable = true;
|
enable = true;
|
||||||
networks = {
|
networks = {
|
||||||
|
@ -60,8 +79,6 @@
|
||||||
tcpdump
|
tcpdump
|
||||||
];
|
];
|
||||||
|
|
||||||
services.openssh.enable = true;
|
|
||||||
|
|
||||||
programs.virt-manager.enable = true;
|
programs.virt-manager.enable = true;
|
||||||
virtualisation.libvirtd.enable = true;
|
virtualisation.libvirtd.enable = true;
|
||||||
|
|
||||||
|
@ -69,23 +86,13 @@
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
defaults.email = "root@katvayor.net";
|
defaults.email = "root@katvayor.net";
|
||||||
};
|
};
|
||||||
kat.proxies = {
|
|
||||||
ip = "10.42.0.1";
|
|
||||||
open-tcp = [
|
|
||||||
9000
|
|
||||||
9500
|
|
||||||
];
|
|
||||||
redirects = [
|
|
||||||
"kat-orchid"
|
|
||||||
"kat-son"
|
|
||||||
"kat-virt"
|
|
||||||
"kat-mail-test"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
services.weechat = {
|
services = {
|
||||||
enable = true;
|
openssh.enable = true;
|
||||||
binary = "${pkgs.weechat}/bin/weechat-headless";
|
weechat = {
|
||||||
|
enable = true;
|
||||||
|
binary = "${pkgs.weechat}/bin/weechat-headless";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.firewall = {
|
networking.firewall = {
|
||||||
|
|
|
@ -26,7 +26,10 @@
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "UUID=2d6f7d3a-936d-457c-86c7-f49d816ff5b7";
|
device = "UUID=2d6f7d3a-936d-457c-86c7-f49d816ff5b7";
|
||||||
fsType = "bcachefs";
|
fsType = "bcachefs";
|
||||||
options = [ "fsck" "fix_errors" ];
|
options = [
|
||||||
|
"fsck"
|
||||||
|
"fix_errors"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" = {
|
||||||
|
@ -37,7 +40,10 @@
|
||||||
fileSystems."/.ssd" = {
|
fileSystems."/.ssd" = {
|
||||||
device = "UUID=b4fc22f8-aecd-4cde-b77d-79825fae65eb";
|
device = "UUID=b4fc22f8-aecd-4cde-b77d-79825fae65eb";
|
||||||
fsType = "bcachefs";
|
fsType = "bcachefs";
|
||||||
options = [ "fsck" "fix_errors" ];
|
options = [
|
||||||
|
"fsck"
|
||||||
|
"fix_errors"
|
||||||
|
];
|
||||||
neededForBoot = true;
|
neededForBoot = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -9,33 +9,47 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
deployment = {
|
||||||
|
targetHost = "orchid.kat";
|
||||||
|
tags = [ "kat-vms" ];
|
||||||
|
};
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./disks.nix
|
./disks.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.loader = {
|
boot = {
|
||||||
systemd-boot.enable = true;
|
loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
systemd-boot.enable = true;
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
};
|
||||||
|
kernelParams = [ "console=ttyS0" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
kat.proxies = {
|
kat = {
|
||||||
ip = "192.168.122.6";
|
fqdn = "orchid.katvayor.net";
|
||||||
aliases = [
|
proxies = {
|
||||||
"simply-wise.fr"
|
ip = "192.168.122.6";
|
||||||
"www.simply-wise.fr"
|
aliases = [
|
||||||
];
|
"simply-wise.fr"
|
||||||
open-tcp = [
|
"www.simply-wise.fr"
|
||||||
{
|
];
|
||||||
internal = 22;
|
open-tcp = [
|
||||||
external = 22042;
|
{
|
||||||
}
|
internal = 22;
|
||||||
];
|
external = 22042;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.network.enable = lib.mkForce false;
|
systemd.network.enable = lib.mkForce false;
|
||||||
networking = {
|
networking = {
|
||||||
useNetworkd = lib.mkForce false;
|
useNetworkd = lib.mkForce false;
|
||||||
|
firewall.allowedTCPPorts = [
|
||||||
|
80
|
||||||
|
443
|
||||||
|
];
|
||||||
interfaces."enp1s0" = {
|
interfaces."enp1s0" = {
|
||||||
useDHCP = false;
|
useDHCP = false;
|
||||||
ipv4.addresses = [
|
ipv4.addresses = [
|
||||||
|
@ -64,13 +78,6 @@
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
services.openssh.enable = true;
|
|
||||||
|
|
||||||
networking.firewall.allowedTCPPorts = [
|
|
||||||
80
|
|
||||||
443
|
|
||||||
];
|
|
||||||
|
|
||||||
security.acme = {
|
security.acme = {
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
defaults.email = "root@katvayor.net";
|
defaults.email = "root@katvayor.net";
|
||||||
|
@ -79,33 +86,37 @@
|
||||||
"www.simply-wise.fr"
|
"www.simply-wise.fr"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
services.nginx = {
|
services = {
|
||||||
enable = true;
|
openssh.enable = true;
|
||||||
virtualHosts = {
|
qemuGuest.enable = true;
|
||||||
"orchid.katvayor.net" = {
|
nginx = {
|
||||||
enableACME = true;
|
enable = true;
|
||||||
forceSSL = true;
|
virtualHosts = {
|
||||||
locations = {
|
"orchid.katvayor.net" = {
|
||||||
"/static/".alias = "/srv/orchid/";
|
enableACME = true;
|
||||||
"/" = {
|
forceSSL = true;
|
||||||
recommendedProxySettings = true;
|
locations = {
|
||||||
proxyPass = "https://192.168.123.2/";
|
"/static/".alias = "/srv/orchid/";
|
||||||
|
"/" = {
|
||||||
|
recommendedProxySettings = true;
|
||||||
|
proxyPass = "https://192.168.123.2/";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
"simply-wise.fr" = {
|
||||||
"simply-wise.fr" = {
|
useACMEHost = "orchid.katvayor.net";
|
||||||
useACMEHost = "orchid.katvayor.net";
|
forceSSL = true;
|
||||||
forceSSL = true;
|
serverAliases = [ "www.simply-wise.fr" ];
|
||||||
serverAliases = [ "www.simply-wise.fr" ];
|
locations."/" = {
|
||||||
locations."/" = {
|
root = pkgs.runCommand "building" { } ''
|
||||||
root = pkgs.runCommand "building" { } ''
|
mkdir -p $out
|
||||||
mkdir -p $out
|
ln -nsf ${./building.html} $out/building.html
|
||||||
ln -nsf ${./building.html} $out/building.html
|
'';
|
||||||
'';
|
extraConfig = ''
|
||||||
extraConfig = ''
|
internal;
|
||||||
internal;
|
error_page 404 =503 /building.html;
|
||||||
error_page 404 =503 /building.html;
|
'';
|
||||||
'';
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -22,7 +22,10 @@
|
||||||
type = "filesystem";
|
type = "filesystem";
|
||||||
format = "bcachefs";
|
format = "bcachefs";
|
||||||
mountpoint = "/";
|
mountpoint = "/";
|
||||||
mountOptions = [ "fsck" "fix_errors" ];
|
mountOptions = [
|
||||||
|
"fsck"
|
||||||
|
"fix_errors"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -5,12 +5,15 @@
|
||||||
mods,
|
mods,
|
||||||
sources,
|
sources,
|
||||||
nodes,
|
nodes,
|
||||||
|
users,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
deployment.allowLocalDeployment = true;
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
users.catvayor
|
||||||
# ./router.nix
|
# ./router.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -30,6 +33,10 @@
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix.settings.trusted-users = [
|
||||||
|
"root"
|
||||||
|
"@wheel"
|
||||||
|
];
|
||||||
networking.networkmanager = {
|
networking.networkmanager = {
|
||||||
enable = true;
|
enable = true;
|
||||||
unmanaged = [
|
unmanaged = [
|
||||||
|
|
|
@ -5,17 +5,28 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
deployment = {
|
||||||
|
targetHost = "son.kat";
|
||||||
|
tags = [ "kat-vms" ];
|
||||||
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./disks.nix
|
./disks.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.loader = {
|
boot = {
|
||||||
systemd-boot.enable = true;
|
loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
systemd-boot.enable = true;
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
};
|
||||||
|
kernelParams = [ "console=ttyS0" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
kat.proxies.ip = "192.168.122.5";
|
kat = {
|
||||||
|
fqdn = "son.katvayor.net";
|
||||||
|
proxies.ip = "192.168.122.5";
|
||||||
|
};
|
||||||
|
|
||||||
systemd.network.enable = lib.mkForce false;
|
systemd.network.enable = lib.mkForce false;
|
||||||
networking = {
|
networking = {
|
||||||
|
@ -46,20 +57,22 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.openssh.enable = true;
|
|
||||||
|
|
||||||
networking.firewall.enable = false;
|
networking.firewall.enable = false;
|
||||||
|
|
||||||
security.acme = {
|
security.acme = {
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
defaults.email = "root@katvayor.net";
|
defaults.email = "root@katvayor.net";
|
||||||
};
|
};
|
||||||
services.nginx = {
|
services = {
|
||||||
enable = true;
|
openssh.enable = true;
|
||||||
virtualHosts = {
|
qemuGuest.enable = true;
|
||||||
"son.katvayor.net" = {
|
nginx = {
|
||||||
enableACME = true;
|
enable = true;
|
||||||
addSSL = true;
|
virtualHosts = {
|
||||||
|
"son.katvayor.net" = {
|
||||||
|
enableACME = true;
|
||||||
|
addSSL = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -22,7 +22,10 @@
|
||||||
type = "filesystem";
|
type = "filesystem";
|
||||||
format = "bcachefs";
|
format = "bcachefs";
|
||||||
mountpoint = "/";
|
mountpoint = "/";
|
||||||
mountOptions = [ "fsck" "fix_errors" ];
|
mountOptions = [
|
||||||
|
"fsck"
|
||||||
|
"fix_errors"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,24 +2,36 @@
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
ssh-keys,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
imports = [ ./hardware-configuration.nix ];
|
deployment = {
|
||||||
|
targetHost = "virt.kat";
|
||||||
boot.loader = {
|
tags = [ "kat-vms" ];
|
||||||
systemd-boot.enable = true;
|
|
||||||
efi.canTouchEfiVariables = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
kat.proxies = {
|
imports = [ ./hardware-configuration.nix ];
|
||||||
ip = "192.168.122.2";
|
|
||||||
open-tcp = [
|
boot = {
|
||||||
{
|
loader = {
|
||||||
internal = 22;
|
systemd-boot.enable = true;
|
||||||
external = 22000;
|
efi.canTouchEfiVariables = true;
|
||||||
}
|
};
|
||||||
];
|
kernelParams = [ "console=ttyS0" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
kat = {
|
||||||
|
fqdn = "degette.katvayor.net";
|
||||||
|
proxies = {
|
||||||
|
ip = "192.168.122.2";
|
||||||
|
open-tcp = [
|
||||||
|
{
|
||||||
|
internal = 22;
|
||||||
|
external = 22000;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.network.enable = lib.mkForce false;
|
systemd.network.enable = lib.mkForce false;
|
||||||
|
@ -51,23 +63,28 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.openssh.enable = true;
|
services = {
|
||||||
|
openssh.enable = true;
|
||||||
|
qemuGuest.enable = true;
|
||||||
|
nginx = {
|
||||||
|
enable = true;
|
||||||
|
virtualHosts."degette.katvayor.net" = {
|
||||||
|
enableACME = true;
|
||||||
|
addSSL = true;
|
||||||
|
locations."/" = {
|
||||||
|
recommendedProxySettings = true;
|
||||||
|
proxyPass = "http://localhost:8000/";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.root.openssh.authorizedKeys.keys = with ssh-keys; sylvain ++ gaby;
|
||||||
|
|
||||||
security.acme = {
|
security.acme = {
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
defaults.email = "root@katvayor.net";
|
defaults.email = "root@katvayor.net";
|
||||||
};
|
};
|
||||||
services.nginx = {
|
|
||||||
enable = true;
|
|
||||||
virtualHosts."degette.katvayor.net" = {
|
|
||||||
enableACME = true;
|
|
||||||
addSSL = true;
|
|
||||||
locations."/" = {
|
|
||||||
recommendedProxySettings = true;
|
|
||||||
proxyPass = "http://localhost:8000/";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
networking.firewall.enable = false;
|
networking.firewall.enable = false;
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,10 @@
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "UUID=301a23cf-1aa3-4c53-a174-1a97592da5fa";
|
device = "UUID=301a23cf-1aa3-4c53-a174-1a97592da5fa";
|
||||||
fsType = "bcachefs";
|
fsType = "bcachefs";
|
||||||
options = [ "fsck" "fix_errors" ];
|
options = [
|
||||||
|
"fsck"
|
||||||
|
"fix_errors"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" = {
|
||||||
|
|
|
@ -6,19 +6,27 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
deployment.targetHost = "watcher.kat";
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./disks.nix
|
./disks.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.loader.grub = {
|
boot = {
|
||||||
enable = true;
|
loader.grub = {
|
||||||
efiSupport = true;
|
enable = true;
|
||||||
efiInstallAsRemovable = true;
|
efiSupport = true;
|
||||||
|
efiInstallAsRemovable = true;
|
||||||
|
};
|
||||||
|
kernel.sysctl."net.ipv4.ip_forward" = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.kernel.sysctl."net.ipv4.ip_forward" = true;
|
kat = {
|
||||||
kat.wireguardPubKey = "BgLBrWG7DRj2Gwoyj+vHZTjiB3gPEnwVcDFEQH/BYgg=";
|
wireguardPubKey = "BgLBrWG7DRj2Gwoyj+vHZTjiB3gPEnwVcDFEQH/BYgg=";
|
||||||
|
fqdn = "watcher.katvayor.net";
|
||||||
|
proxies.redirects = [ "kat-manah" ];
|
||||||
|
};
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
useDHCP = false;
|
useDHCP = false;
|
||||||
|
@ -100,7 +108,6 @@
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
defaults.email = "root@katvayor.net";
|
defaults.email = "root@katvayor.net";
|
||||||
};
|
};
|
||||||
kat.proxies.redirects = [ "kat-manah" ];
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [ tcpdump ];
|
environment.systemPackages = with pkgs; [ tcpdump ];
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,10 @@
|
||||||
format = "bcachefs";
|
format = "bcachefs";
|
||||||
mountpoint = "/";
|
mountpoint = "/";
|
||||||
extraArgs = [ "--compression=zstd" ];
|
extraArgs = [ "--compression=zstd" ];
|
||||||
mountOptions = [ "fsck" "fix_errors" ];
|
mountOptions = [
|
||||||
|
"fsck"
|
||||||
|
"fix_errors"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,4 +2,9 @@ let
|
||||||
sources = import ./npins;
|
sources = import ./npins;
|
||||||
pkgs = import sources.nixpkgs { };
|
pkgs = import sources.nixpkgs { };
|
||||||
in
|
in
|
||||||
pkgs.mkShell { packages = with pkgs; [ npins colmena ]; }
|
pkgs.mkShell {
|
||||||
|
packages = with pkgs; [
|
||||||
|
npins
|
||||||
|
colmena
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue