Host forgejo on sisko

And runner on `picard`
This commit is contained in:
Andrea Ciceri 2024-02-11 15:40:02 +01:00
parent 7f3441fc76
commit a088e336dc
Signed by: aciceri
SSH key fingerprint: SHA256:/AagBweyV4Hlfg9u092n8hbHwD5fcB6A3qhDiDA65Rg
8 changed files with 113 additions and 6 deletions

View file

@ -0,0 +1,25 @@
{
config,
lib,
...
}: {
users.users.forgejo-runners = {
isSystemUser = true;
group = "forgejo-runners";
};
users.groups.forgejo-runners = {};
services.gitea-actions-runner.instances.test = {
enable = true;
name = "test";
url = "https://git.aciceri.dev";
tokenFile = config.age.secrets.forgejo-runners-token.file;
labels = ["test"];
};
systemd.services.gitea-runner-test.serviceConfig = {
User = lib.mkForce "forgejo-runners";
Group = lib.mkForce "forgejo-runners";
};
}

View file

@ -0,0 +1,44 @@
{
config,
pkgs,
...
}: {
services.forgejo = {
enable = true;
stateDir = "/mnt/hd/forgejo";
settings = {
DEFAULT = {
RUN_MODE = "dev";
APP_NAME = "git.aciceri.dev";
};
session.COOKIE_SECURE = true;
service.DISABLE_REGISTRATION = true;
server = {
HTTP_PORT = 3002;
ROOT_URL = "https://git.aciceri.dev";
};
other = {
SHOW_FOOTER_VERSION = false;
};
};
dump.enable = true;
};
systemd.tmpfiles.rules = [
"d ${config.services.forgejo.stateDir} 770 forgejo forgejo"
];
backup.paths = [
config.services.forgejo.stateDir
];
imports = [../nginx-base];
services.nginx.virtualHosts = {
"git.aciceri.dev" = {
enableACME = true;
forceSSL = true;
locations."/".proxyPass = "http://127.0.0.1:${builtins.toString config.services.forgejo.settings.server.HTTP_PORT}";
};
};
}

View file

@ -33,16 +33,21 @@ in {
services.postgresql = {
enable = true;
initialScript = pkgs.writeText "synapse-init.sql" ''
CREATE ROLE "matrix-synapse" WITH LOGIN PASSWORD 'synapse';
CREATE DATABASE "matrix-synapse" WITH OWNER "matrix-synapse"
TEMPLATE template0
LC_COLLATE = "C"
LC_CTYPE = "C";
CREATE ROLE "matrix-synapse" WITH LOGIN PASSWORD 'synapse';
CREATE DATABASE "matrix-synapse" WITH OWNER "matrix-synapse"
TEMPLATE template0
LC_COLLATE = "C"
LC_CTYPE = "C";
'';
};
systemd.tmpfiles.rules = [
"d ${config.services.matrix-synapse.dataDir} 770 matrix-synapse matrix-synapse"
];
services.matrix-synapse = {
enable = true;
dataDir = "/mnt/hd/matrix-synapse";
settings = {
server_name = "aciceri.dev";
public_baseurl = "https://matrix.aciceri.dev";
@ -66,7 +71,7 @@ in {
};
backup.paths = [
"/var/lib/matrix-synapse"
config.services.matrix-synapse.dataDir
"/var/backup/postgresql/matrix-synapse.sql.gz"
];