mirror of
https://git.pvv.ntnu.no/Drift/pvv-nixos-config.git
synced 2025-12-31 12:48:23 +01:00
Compare commits
1 Commits
main
...
fix-bluema
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ba73075ed3 |
10
flake.nix
10
flake.nix
@@ -261,12 +261,7 @@
|
||||
topology' = import inputs.nix-topology {
|
||||
pkgs = import nixpkgs {
|
||||
system = "x86_64-linux";
|
||||
overlays = [
|
||||
inputs.nix-topology.overlays.default
|
||||
(final: prev: {
|
||||
inherit (nixpkgs-unstable.legacyPackages.x86_64-linux) super-tiny-icons;
|
||||
})
|
||||
];
|
||||
overlays = [ inputs.nix-topology.overlays.default ];
|
||||
};
|
||||
|
||||
specialArgs = {
|
||||
@@ -280,9 +275,6 @@
|
||||
modules = [
|
||||
inputs.nix-topology.nixosModules.default
|
||||
./topology/service-extractors/greg-ng.nix
|
||||
./topology/service-extractors/postgresql.nix
|
||||
./topology/service-extractors/mysql.nix
|
||||
./topology/service-extractors/gitea-runners.nix
|
||||
];
|
||||
}) self.nixosConfigurations;
|
||||
}
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
|
||||
(fp /base)
|
||||
|
||||
./services/alps.nix
|
||||
./services/bluemap.nix
|
||||
./services/idp-simplesamlphp
|
||||
./services/kerberos.nix
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
{ config, lib, ... }:
|
||||
let
|
||||
cfg = config.services.alps;
|
||||
in
|
||||
{
|
||||
services.alps = {
|
||||
enable = true;
|
||||
theme = "sourcehut";
|
||||
smtps.host = "smtp.pvv.ntnu.no";
|
||||
imaps.host = "imap.pvv.ntnu.no";
|
||||
bindIP = "127.0.0.1";
|
||||
};
|
||||
|
||||
services.nginx.virtualHosts."alps.pvv.ntnu.no" = lib.mkIf cfg.enable {
|
||||
enableACME = true;
|
||||
forceSSL = true;
|
||||
kTLS = true;
|
||||
locations."/" = {
|
||||
proxyPass = "http://${cfg.bindIP}:${toString cfg.port}";
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -58,7 +58,11 @@ in {
|
||||
max-y = 90;
|
||||
}];
|
||||
marker-sets = {
|
||||
_includes = [ (format.lib.mkInclude "${bluemap-export}/nether.hocon") ];
|
||||
_includes = [ (format.lib.mkInclude {
|
||||
required = true;
|
||||
type = "file";
|
||||
value = "${bluemap-export}/nether.hocon";
|
||||
}) ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -103,26 +103,11 @@ in {
|
||||
);
|
||||
};
|
||||
|
||||
nodes.bekkalokk.hardware.info = "Supermicro X9SCL/X9SCM";
|
||||
|
||||
nodes.lupine-1.hardware.info = "Dell OptiPlex 7040";
|
||||
# nodes.lupine-2.hardware.info = "Dell OptiPlex 5050";
|
||||
nodes.lupine-3.hardware.info = "Dell OptiPlex 5050";
|
||||
nodes.lupine-4.hardware.info = "Dell OptiPlex 5050";
|
||||
# nodes.lupine-5.hardware.info = "Dell OptiPlex 5050";
|
||||
|
||||
nodes.buskerud = mkDevice "buskerud" {
|
||||
deviceIcon = ./icons/proxmox.svg;
|
||||
interfaceGroups = [ [ "eth1" ] ];
|
||||
|
||||
interfaces.eth1.network = "pvv";
|
||||
|
||||
services = {
|
||||
proxmox = {
|
||||
name = "Proxmox web interface";
|
||||
info = "https://buskerud.pvv.ntnu.no:8006/";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nodes.shark = {
|
||||
@@ -140,15 +125,6 @@ in {
|
||||
hardware.info = "Dell PowerEdge R730 x 3";
|
||||
|
||||
interfaceGroups = [ [ "eth1" ] ];
|
||||
|
||||
services = {
|
||||
proxmox = {
|
||||
name = "Proxmox web interface";
|
||||
details.bubbles.text = "https://bubbles.pvv.ntnu.no:8006/";
|
||||
details.blossom.text = "https://blossom.pvv.ntnu.no:8006/";
|
||||
details.buttercup.text = "https://buttercup.pvv.ntnu.no:8006/";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nodes.kommode = {
|
||||
|
||||
@@ -120,30 +120,6 @@ in {
|
||||
values.hosts.gateway6
|
||||
];
|
||||
};
|
||||
|
||||
services = {
|
||||
dovecot = {
|
||||
name = "Dovecot";
|
||||
info = "imap.pvv.ntnu.no pop.pvv.ntnu.no";
|
||||
icon = "${pkgs.super-tiny-icons}/share/icons/SuperTinyIcons/svg/dovecot.svg";
|
||||
details.imap.text = "0.0.0.0:993";
|
||||
details.pop3.text = "0.0.0.0:995";
|
||||
};
|
||||
|
||||
exim4 = {
|
||||
name = "Exim4";
|
||||
info = "mail.pvv.ntnu.no mailhost.pvv.ntnu.no";
|
||||
details.smtp.text = "0.0.0.0:25";
|
||||
details.smtps.text = "0.0.0.0:465";
|
||||
details.starttls.text = "0.0.0.0:587";
|
||||
};
|
||||
|
||||
nfs = {
|
||||
name = "NFS";
|
||||
info = "homepvv.pvv.ntnu.no";
|
||||
details.rpcbind.text = "0.0.0.0:111";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nodes.innovation = mkDevice "innovation" {
|
||||
@@ -169,7 +145,6 @@ in {
|
||||
icon = "services.minecraft";
|
||||
info = "minecraft.pvv.ntnu.no";
|
||||
details.listen.text = "0.0.0.0:25565";
|
||||
details.directory.text = "/srv/minecraft-pvv";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -245,26 +220,11 @@ in {
|
||||
values.hosts.gateway6
|
||||
];
|
||||
};
|
||||
|
||||
services = {
|
||||
mapcrafter = {
|
||||
name = "Mapcrafter Minecraft Map";
|
||||
info = "http://isvegg.pvv.ntnu.no/kart/";
|
||||
details.directory.text = "/scratch/mckart/kart";
|
||||
};
|
||||
gophernicus = {
|
||||
name = "Gophernicus";
|
||||
info = "gopher://gopher.pvv.ntnu.no/";
|
||||
details.directory.text = "/var/gopher";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nodes.ameno = mkDevice "ameno" {
|
||||
deviceIcon = "${pkgs.super-tiny-icons}/share/icons/SuperTinyIcons/svg/ubuntu.svg";
|
||||
|
||||
hardware.info = "Raspberry Pi 2B 1.1";
|
||||
|
||||
interfaceGroups = [ [ "eth0" ] ];
|
||||
interfaces.eth0 = {
|
||||
mac = "b8:27:eb:62:1d:d8";
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
{ config, unstablePkgs, lib, ... }:
|
||||
let
|
||||
cfg = config.services.gitea-actions-runner;
|
||||
in
|
||||
{
|
||||
config.topology.self.services = lib.mapAttrs' (name: instance: {
|
||||
name = "gitea-runner-${name}";
|
||||
value = {
|
||||
name = "Gitea runner ${name}";
|
||||
icon = "services.gitea";
|
||||
};
|
||||
}) (lib.filterAttrs (_: instance: instance.enable) cfg.instances);
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
{ config, unstablePkgs, lib, ... }:
|
||||
let
|
||||
cfg = config.services.mysql;
|
||||
cfgBak = config.services.mysqlBackup;
|
||||
in
|
||||
{
|
||||
config.topology.self.services.mysql = lib.mkIf cfg.enable {
|
||||
name = "MySQL";
|
||||
icon = "${unstablePkgs.super-tiny-icons}/share/icons/SuperTinyIcons/svg/mysql.svg";
|
||||
|
||||
details.listen.text = "${cfg.settings.mysqld.bind-address or "127.0.0.1"}:${toString (cfg.settings.mysqld.port or 3306)}";
|
||||
details.socket.text = cfg.settings.mysqld.socket or "/run/mysqld/mysqld.sock";
|
||||
details.type.text = cfg.package.pname;
|
||||
details.dataDir.text = cfg.dataDir;
|
||||
|
||||
# details.backup-time = lib.mkIf cfgBak.enable cfgBak.calendar;
|
||||
# details.backup-location = lib.mkIf cfgBak.enable cfgBak.location;
|
||||
};
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
{ config, unstablePkgs, lib, ... }:
|
||||
let
|
||||
cfg = config.services.postgresql;
|
||||
cfgBak = config.services.postgresqlBackup;
|
||||
in
|
||||
{
|
||||
config.topology.self.services.postgresql = lib.mkIf cfg.enable {
|
||||
name = "PostgreSQL";
|
||||
icon = "${unstablePkgs.super-tiny-icons}/share/icons/SuperTinyIcons/svg/postgresql.svg";
|
||||
|
||||
details.listen.text = lib.mkIf cfg.enableTCPIP "0.0.0.0:${toString cfg.settings.port}";
|
||||
details.socket.text = "/run/postgresql/.s.PGSQL.${toString cfg.settings.port}";
|
||||
details.version.text = cfg.package.version;
|
||||
details.dataDir.text = cfg.dataDir;
|
||||
|
||||
# details.backup-time = lib.mkIf cfgBak.enable cfgBak.startAt;
|
||||
# details.backup-location = lib.mkIf cfgBak.enable cfgBak.location;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user