simple nixos mail server
This commit is contained in:
parent
6bee6cb48c
commit
b4298d5f3e
7 changed files with 169 additions and 10 deletions
118
flake.lock
generated
118
flake.lock
generated
|
|
@ -23,6 +23,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"blobs": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1604995301,
|
||||
"narHash": "sha256-wcLzgLec6SGJA8fx1OEN1yV/Py5b+U5iyYpksUY/yLw=",
|
||||
"owner": "simple-nixos-mailserver",
|
||||
"repo": "blobs",
|
||||
"rev": "2cccdf1ca48316f2cfd1c9a0017e8de5a7156265",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
"owner": "simple-nixos-mailserver",
|
||||
"repo": "blobs",
|
||||
"type": "gitlab"
|
||||
}
|
||||
},
|
||||
"colmena": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
|
|
@ -117,6 +133,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_3": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1761588595,
|
||||
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
|
|
@ -156,6 +188,32 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"git-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"simple-nixos-mailserver",
|
||||
"flake-compat"
|
||||
],
|
||||
"gitignore": "gitignore_2",
|
||||
"nixpkgs": [
|
||||
"simple-nixos-mailserver",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1763988335,
|
||||
"narHash": "sha256-QlcnByMc8KBjpU37rbq5iP7Cp97HvjRP0ucfdh+M4Qc=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "50b9238891e388c9fdc6a5c49e49c42533a1b5ce",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
@ -178,6 +236,28 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"simple-nixos-mailserver",
|
||||
"git-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
@ -298,6 +378,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1764374374,
|
||||
"narHash": "sha256-naS7hg/D1yLKSZoENx9gvsPLFiNEOTcqamJSu0OEvCA=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6a49303095abc094ee77dc243a9e351b642e8e75",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable-small",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_25-05": {
|
||||
"locked": {
|
||||
"lastModified": 1767313136,
|
||||
|
|
@ -351,6 +447,7 @@
|
|||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs_25-05": "nixpkgs_25-05",
|
||||
"simple-nixos-mailserver": "simple-nixos-mailserver",
|
||||
"vscode-extensions": "vscode-extensions"
|
||||
}
|
||||
},
|
||||
|
|
@ -375,6 +472,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"simple-nixos-mailserver": {
|
||||
"inputs": {
|
||||
"blobs": "blobs",
|
||||
"flake-compat": "flake-compat_3",
|
||||
"git-hooks": "git-hooks",
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1766321686,
|
||||
"narHash": "sha256-icOWbnD977HXhveirqA10zoqvErczVs3NKx8Bj+ikHY=",
|
||||
"owner": "simple-nixos-mailserver",
|
||||
"repo": "nixos-mailserver",
|
||||
"rev": "7d433bf89882f61621f95082e90a4ab91eb0bdd3",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
"owner": "simple-nixos-mailserver",
|
||||
"repo": "nixos-mailserver",
|
||||
"type": "gitlab"
|
||||
}
|
||||
},
|
||||
"stable": {
|
||||
"locked": {
|
||||
"lastModified": 1750133334,
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@
|
|||
url = "github:nix-community/lanzaboote/v0.4.3";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver";
|
||||
};
|
||||
|
||||
outputs =
|
||||
|
|
@ -44,6 +45,7 @@
|
|||
nixos-hardware,
|
||||
nixpkgs_25-05,
|
||||
nixpkgs,
|
||||
simple-nixos-mailserver,
|
||||
vscode-extensions,
|
||||
}@inputs:
|
||||
let
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@
|
|||
./firefox-sync.nix
|
||||
./git.nix
|
||||
./hardware-configuration.nix
|
||||
./mail.nix
|
||||
./networking.nix
|
||||
./nextcloud.nix
|
||||
./services.nix
|
||||
|
|
|
|||
18
host/roam/mail.nix
Normal file
18
host/roam/mail.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
{ inputs, config, ... }:
|
||||
{
|
||||
imports = [ inputs.simple-nixos-mailserver.nixosModule ];
|
||||
|
||||
mailserver = {
|
||||
enable = true;
|
||||
stateVersion = 3;
|
||||
fqdn = "roam.hdohmen.de";
|
||||
x509.useACMEHost = config.mailserver.fqdn;
|
||||
domains = [ "hdohmen.de" ];
|
||||
loginAccounts = {
|
||||
"hd@hdohmen.de" = {
|
||||
hashedPassword = "$y$j9T$ThusPQJOPsUxfJrO6T6kN/$4hoobYwjhxSLo.f8uWg7DZu7gHtRlUt.nfiDC5xN2w2";
|
||||
aliases = [ "hd@hdohmen.de" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -21,6 +21,17 @@ in
|
|||
interface = "ens3";
|
||||
};
|
||||
|
||||
firewall = {
|
||||
enable = true;
|
||||
interfaces."wg0" = {
|
||||
allowedTCPPorts = [ 25565 ];
|
||||
};
|
||||
allowedTCPPorts = [
|
||||
80
|
||||
443
|
||||
];
|
||||
};
|
||||
|
||||
nat = {
|
||||
enable = true;
|
||||
externalInterface = "ens3";
|
||||
|
|
|
|||
|
|
@ -47,14 +47,4 @@
|
|||
};
|
||||
};
|
||||
|
||||
networking.firewall = {
|
||||
enable = true;
|
||||
interfaces."wg0" = {
|
||||
allowedTCPPorts = [ 25565 ];
|
||||
};
|
||||
allowedTCPPorts = [
|
||||
80
|
||||
443
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -63,6 +63,25 @@ in
|
|||
thunderbird.enable = true;
|
||||
gpg.key = "AB79213B044674AE";
|
||||
};
|
||||
|
||||
"SimpleMailserver" = rec {
|
||||
address = "hd@hdohmen.de";
|
||||
realName = "Henri Dohmen";
|
||||
smtp = {
|
||||
tls.enable = true;
|
||||
host = "roam.hdohmen.de";
|
||||
port = 465;
|
||||
};
|
||||
imap = {
|
||||
tls.enable = true;
|
||||
host = "roam.hdohmen.de";
|
||||
port = 993;
|
||||
};
|
||||
userName = address;
|
||||
thunderbird.enable = true;
|
||||
gpg.key = "AB79213B044674AE";
|
||||
};
|
||||
|
||||
};
|
||||
accounts.calendar.accounts = {
|
||||
"Privat" = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue