This commit is contained in:
DuN0z 2025-10-09 17:50:49 +02:00
commit 441cd5eff9
7 changed files with 49 additions and 16 deletions

View file

@ -10,4 +10,35 @@
port = 587 ; port = 587 ;
user = "contact@porzh.me"; user = "contact@porzh.me";
}; };
network = {
gateway = "192.168.50.1";
pennsardin = {
ip = "192.168.50.12";
};
terre-neuvas = {
ip = "192.168.50.11";
};
};
services = {
forgejo = {
home = "/var/lib/services/forgejo";
url = "govel.porzh.me";
port = 3000;
};
goaccess = {
home = "/var/lib/www/goaccess";
url = "koum.porzh.me";
};
levr = {
home = "/var/lib/services/levr";
build = "/var/lib/www/levr";
url = "levr.porzh.me";
};
outline = {
url = "notes.porzh.me";
port = 3001;
};
};
} }

View file

@ -5,7 +5,9 @@
config, config,
pkgs, pkgs,
... ...
}: { }: let
globals = import ../../config/globals.nix ;
in {
nix.settings.experimental-features = ["nix-command" "flakes"]; nix.settings.experimental-features = ["nix-command" "flakes"];
imports = [ imports = [
# Include the results of the hardware scan. # Include the results of the hardware scan.
@ -55,16 +57,16 @@
useDHCP = false; useDHCP = false;
ipv4.addresses = [ ipv4.addresses = [
{ {
address = "192.168.0.3"; address = globals.network.terre-neuvas.ip;
prefixLength = 24; prefixLength = 24;
} }
]; ];
}; };
defaultGateway = { defaultGateway = {
interface = "br0"; interface = "br0";
address = "192.168.0.254"; address = globals.network.gateway;
}; };
nameservers = ["192.168.0.254" "1.1.1.1"]; nameservers = [ globals.network.gateway "1.1.1.1"];
bridges.br0.interfaces = ["eno1"]; bridges.br0.interfaces = ["eno1"];
}; };
systemd.network = { systemd.network = {

View file

@ -1,6 +1,6 @@
{pkgs, ...}: {pkgs, ...}:
let let
import ../../config/globals.nix; globals = import ../../config/globals.nix;
in { in {
# --- Utilisateur dédié --- # --- Utilisateur dédié ---
users.users.git = { users.users.git = {
@ -44,7 +44,7 @@ in {
enable = true; enable = true;
virtualHosts.${globals.services.forgejo.url} = { virtualHosts.${globals.services.forgejo.url} = {
extraConfig = '' extraConfig = ''
reverse_proxy localhost:${globals.services.forgejo.port} reverse_proxy localhost:${toString globals.services.forgejo.port}
''; '';
}; };
}; };

View file

@ -1,6 +1,6 @@
{pkgs, ...}: {pkgs, ...}:
let let
imports = ../../config/globals.nix ; globals = import ../../config/globals.nix ;
in { in {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
goaccess goaccess
@ -25,7 +25,7 @@ in {
}; };
services.caddy = { services.caddy = {
virtualHosts = { virtualHosts = {
globals.services.goaccess.url = { "${globals.services.goaccess.url}" = {
extraConfig = '' extraConfig = ''
root * ${globals.services.goaccess.home} root * ${globals.services.goaccess.home}
file_server browse file_server browse

View file

@ -1,6 +1,6 @@
{ config, pkgs, lib, ... }: { config, pkgs, lib, ... }:
let let
import ../../config/globals.nix ; globals = import ../../config/globals.nix ;
in { in {
services = { services = {
outline = { outline = {
@ -11,7 +11,7 @@ in {
smtp = { smtp = {
host = globals.smtp.host ; host = globals.smtp.host ;
username = globals.smtp.user ; username = globals.smtp.user ;
passwordFile = "/run/secrets/proton_pass"; passwordFile = "/etc/secrets/protonpass";
fromEmail = globals.smtp.user; fromEmail = globals.smtp.user;
replyEmail = globals.smtp.user; replyEmail = globals.smtp.user;
port = globals.smtp.port; port = globals.smtp.port;
@ -23,7 +23,7 @@ in {
enable = true; enable = true;
virtualHosts.${globals.services.outline.url} = { virtualHosts.${globals.services.outline.url} = {
extraConfig = '' extraConfig = ''
reverse_proxy localhost:${globals.services.outline.port} reverse_proxy localhost:${toString globals.services.outline.port}
''; '';
}; };
}; };

View file

@ -1,6 +1,6 @@
{ pkgs, lib, ...}: { pkgs, lib, ...}:
let let
import = ../../config/globals.nix ; globals = import ../../config/globals.nix ;
in { in {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
hugo hugo
@ -44,7 +44,7 @@ in {
services.caddy = { services.caddy = {
enable = true; enable = true;
virtualHosts = { virtualHosts = {
globals.services.levr.url = { "${globals.services.levr.url}" = {
extraConfig = '' extraConfig = ''
@http { @http {
protocol http protocol http
@ -54,7 +54,7 @@ in {
file_server file_server
log { log {
output file /var/log/caddy/access-${global.services.levr.url}.log output file /var/log/caddy/access-${globals.services.levr.url}.log
} }
''; '';
}; };

View file

@ -1,5 +1,5 @@
{pkgs, ...}: let {pkgs, ...}: let
import ../../config/globals.nix ; globals = import ../../config/globals.nix ;
porzhSite = pkgs.stdenv.mkDerivation { porzhSite = pkgs.stdenv.mkDerivation {
pname = "porzh-site"; pname = "porzh-site";
version = "1.0"; version = "1.0";
@ -14,7 +14,7 @@ in {
services.caddy = { services.caddy = {
enable = true; enable = true;
virtualHosts = { virtualHosts = {
globals.domain = { "${globals.domain}" = {
serverAliases = [ "www.${globals.domain}" ]; serverAliases = [ "www.${globals.domain}" ];
extraConfig = '' extraConfig = ''
root * ${porzhSite} root * ${porzhSite}