gitea email support

This commit is contained in:
Danilo Reyes 2025-09-19 11:15:26 -06:00
parent 3d16556312
commit c234acacec
3 changed files with 40 additions and 25 deletions

View File

@ -1,4 +1,9 @@
{ lib, config, ... }: {
lib,
config,
pkgs,
...
}:
let let
cfg = config.my.servers.gitea; cfg = config.my.servers.gitea;
setup = import ./setup.nix { inherit lib config; }; setup = import ./setup.nix { inherit lib config; };
@ -8,16 +13,16 @@ in
config.services = { config.services = {
gitea = lib.mkIf cfg.enable { gitea = lib.mkIf cfg.enable {
enable = true; enable = true;
appName = "Danilo Git";
domain = cfg.host; domain = cfg.host;
rootUrl = cfg.url; rootUrl = cfg.url;
settings = { settings = {
session.COOKIE_SECURE = true; session.COOKIE_SECURE = true;
server = { server.HTTP_PORT = cfg.port;
HTTP_PORT = cfg.port; mailer = {
START_SSH_SERVER = true; ENABLED = true;
SSH_PORT = 2222; MAILER_TYPE = "sendmail";
SSH_LISTEN_PORT = 2222; FROM = config.my.smtpemail;
SENDMAIL_PATH = "${pkgs.msmtp}/bin/msmtp";
}; };
}; };
database = { database = {

View File

@ -40,13 +40,10 @@ in
go-vod.enable = lib.mkEnableOption "enable"; go-vod.enable = lib.mkEnableOption "enable";
}; };
config = lib.mkIf (cfg.enable && config.my.servers.postgres.enable) { config = lib.mkIf (cfg.enable && config.my.servers.postgres.enable) {
sops.secrets = { sops.secrets.nextcloud-adminpass = {
smtp-password = { };
nextcloud-adminpass = {
owner = config.users.users.nextcloud.name; owner = config.users.users.nextcloud.name;
inherit (config.users.users.nextcloud) group; inherit (config.users.users.nextcloud) group;
}; };
};
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [
"nodejs-14.21.3" "nodejs-14.21.3"
"openssl-1.1.1v" "openssl-1.1.1v"
@ -64,18 +61,6 @@ in
; ;
}; };
}; };
programs.msmtp = {
enable = true;
accounts.default = {
auth = true;
host = "smtp.gmail.com";
port = 587;
tls = true;
from = config.my.smtpemail;
user = config.my.smtpemail;
passwordeval = "cat ${config.sops.secrets.smtp-password.path}";
};
};
services = { services = {
nextcloud = { nextcloud = {
enable = true; enable = true;

View File

@ -0,0 +1,25 @@
{
config,
lib,
...
}:
let
cfg = config.my.servers;
in
{
config = lib.mkIf cfg.nextcloud.enable or cfg.gitea.enable {
sops.secrets.smtp-password = { };
programs.msmtp = {
enable = true;
accounts.default = {
auth = true;
host = "smtp.gmail.com";
port = 587;
tls = true;
from = config.my.smtpemail;
user = config.my.smtpemail;
passwordeval = "cat ${config.sops.secrets.smtp-password.path}";
};
};
};
}