2023-12-26 16:35:33 +01:00
|
|
|
{
|
|
|
|
inputs,
|
|
|
|
outputs,
|
|
|
|
lib,
|
|
|
|
config,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}: {
|
|
|
|
imports = [];
|
2024-01-19 01:03:09 +01:00
|
|
|
|
2024-01-19 01:00:20 +01:00
|
|
|
#sops.secrets."mailpassunhash".mode = "0440";
|
|
|
|
#sops.secrets."mailpassunhash".owner = config.users.users.virtualMail.name;
|
2023-12-26 16:35:33 +01:00
|
|
|
|
2024-01-02 12:08:24 +01:00
|
|
|
services.forgejo = {
|
2023-12-26 16:35:33 +01:00
|
|
|
enable = true;
|
|
|
|
#TODO: different mail passwords for different services
|
2024-01-19 01:03:09 +01:00
|
|
|
#mailerPasswordFile = config.sops.secrets."mailpassunhash".path;
|
2023-12-26 16:35:33 +01:00
|
|
|
database = {
|
|
|
|
type = "postgres";
|
|
|
|
};
|
2023-12-29 23:29:41 +01:00
|
|
|
settings = {
|
2023-12-30 00:24:45 +01:00
|
|
|
"cron.sync_external_users" = {
|
|
|
|
RUN_AT_START = true;
|
|
|
|
SCHEDULE = "@every 24h";
|
|
|
|
UPDATE_EXISTING = true;
|
|
|
|
};
|
2024-01-02 13:20:40 +01:00
|
|
|
mailer = {
|
|
|
|
ENABLED = true;
|
|
|
|
PROTOCOL = "sendmail";
|
|
|
|
FROM = "no-reply@git.lillianviolet.dev";
|
|
|
|
SENDMAIL_PATH = "${pkgs.system-sendmail}/bin/sendmail";
|
|
|
|
SENDMAIL_ARGS = "-bs";
|
|
|
|
};
|
2023-12-30 00:24:45 +01:00
|
|
|
repository = {
|
|
|
|
ENABLE_PUSH_CREATE_USER = true;
|
|
|
|
};
|
2024-01-02 12:24:17 +01:00
|
|
|
federation = {
|
|
|
|
ENABLED = true;
|
|
|
|
};
|
2023-12-30 00:24:45 +01:00
|
|
|
other = {
|
|
|
|
SHOW_FOOTER_VERSION = false;
|
|
|
|
};
|
2023-12-29 23:35:47 +01:00
|
|
|
service.DISABLE_REGISTRATION = true;
|
2023-12-29 23:29:41 +01:00
|
|
|
server = {
|
|
|
|
DOMAIN = "git.lillianviolet.dev";
|
|
|
|
ROOT_URL = "https://git.lillianviolet.dev/";
|
|
|
|
HTTP_PORT = 3218;
|
|
|
|
};
|
2024-04-16 10:39:58 +02:00
|
|
|
"markup.jupyter" = {
|
2024-03-07 13:23:47 +01:00
|
|
|
ENABLED = true;
|
2024-04-16 10:37:19 +02:00
|
|
|
FILE_EXTENSIONS = ".ipynb";
|
|
|
|
RENDER_COMMAND = "${pkgs.jupyter}/bin/jupyter nbconvert --stdout --to html --template full";
|
|
|
|
IS_INPUT_FILE = true;
|
|
|
|
RENDER_CONTENT_MODE = "no-sanitizer";
|
|
|
|
};
|
2024-04-16 10:39:58 +02:00
|
|
|
"markup.sanitizer.jupyter0" = {
|
2024-04-16 10:37:19 +02:00
|
|
|
ELEMENT = "div";
|
|
|
|
ALLOW_ATTR = "class";
|
|
|
|
REGEXP = "";
|
|
|
|
};
|
2024-04-16 13:46:42 +02:00
|
|
|
"markup.sanitizer.jupyter0.img" = {
|
2024-04-16 10:45:59 +02:00
|
|
|
ALLOW_DATA_URI_IMAGES = true;
|
|
|
|
};
|
2024-04-15 20:07:57 +02:00
|
|
|
};
|
2023-12-26 16:35:33 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
services.nginx = {
|
|
|
|
virtualHosts = {
|
|
|
|
"git.lillianviolet.dev" = {
|
|
|
|
forceSSL = true;
|
|
|
|
enableACME = true;
|
|
|
|
locations."/" = {
|
|
|
|
proxyPass = "http://localhost:3218";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|