1
1
Fork 1
mirror of https://github.com/oddlama/nix-config.git synced 2025-10-10 23:00:39 +02:00

feat: enable firefly-iii-data-importer

This commit is contained in:
oddlama 2025-04-27 22:49:39 +02:00
parent dfa462c0e6
commit 2d86a1b0bd
No known key found for this signature in database
GPG key ID: 14EFE510775FE39A
7 changed files with 42 additions and 0 deletions

View file

@ -46,5 +46,6 @@
firefly-iii = uidGid 965;
firefly-pico = uidGid 964;
avahi = uidGid 963;
firefly-iii-data-importer = uidGid 962;
};
}

View file

@ -14,6 +14,7 @@ let
globals.services.grafana.domain
globals.services.firefly.domain
globals.services.firefly-pico.domain
globals.services.firefly-data-importer.domain
globals.services.immich.domain
globals.services.influxdb.domain
globals.services.loki.domain

View file

@ -15,6 +15,7 @@ let
globals.services.grafana.domain
globals.services.firefly.domain
globals.services.firefly-pico.domain
globals.services.firefly-data-importer.domain
globals.services.immich.domain
globals.services.influxdb.domain
globals.services.loki.domain

View file

@ -114,6 +114,7 @@ in
globals.services.grafana.domain
globals.services.firefly.domain
globals.services.firefly-pico.domain
globals.services.firefly-data-importer.domain
globals.services.immich.domain
globals.services.influxdb.domain
globals.services.loki.domain

View file

@ -7,6 +7,7 @@
let
fireflyDomain = "firefly.${globals.domains.me}";
fireflyPicoDomain = "firefly-pico.${globals.domains.me}";
fireflyDataImporterDomain = "firefly-data-importer.${globals.domains.me}";
wardWebProxyCfg = nodes.ward-web-proxy.config;
in
{
@ -17,6 +18,7 @@ in
globals.services.firefly.domain = fireflyDomain;
globals.services.firefly-pico.domain = fireflyPicoDomain;
globals.services.firefly-data-importer.domain = fireflyDataImporterDomain;
globals.monitoring.http.firefly = {
url = "https://${fireflyDomain}";
expectedBodyRegex = "Firefly III";
@ -42,6 +44,13 @@ in
owner = "firefly-pico";
};
age.secrets.firefly-data-importer-app-key = {
generator.script = _: ''
echo "base64:$(head -c 32 /dev/urandom | base64)"
'';
owner = "firefly-data-importer";
};
environment.persistence."/persist".directories = [
{
directory = "/var/lib/firefly-iii";
@ -51,6 +60,10 @@ in
directory = "/var/lib/firefly-pico";
user = "firefly-pico";
}
{
directory = "/var/lib/firefly-iii-data-importer";
user = "firefly-iii-data-importer";
}
];
networking.hosts.${wardWebProxyCfg.wireguard.proxy-home.ipv4} = [
@ -89,6 +102,23 @@ in
};
};
services.firefly-iii-data-importer = {
enable = true;
enableNginx = true;
virtualHost = globals.services.firefly-data-importer.domain;
settings = {
LOG_CHANNEL = "syslog";
APP_ENV = "local";
APP_URL = "https://${globals.services.firefly-data-importer.domain}";
TZ = "Europe/Berlin";
FIREFLY_III_URL = config.services.firefly-iii.settings.APP_URL;
VANITY_URL = config.services.firefly-iii.settings.APP_URL;
TRUSTED_PROXIES = wardWebProxyCfg.wireguard.proxy-home.ipv4;
EXPECT_SECURE_URL = "true";
APP_KEY_FILE = config.age.secrets.firefly-data-importer-app-key.path;
};
};
services.nginx.commonHttpConfig = ''
log_format json_combined escape=json '{'
'"time": $msec,'

View file

@ -0,0 +1,8 @@
age-encryption.org/v1
-> ssh-ed25519 YHfciQ Ta83gRa74Qw3CSktDEV58orXyTabF1iyMe9o0EftLAk
JedF0o7cg0cyr7NTlDUQGQTrqTsOUyqr2qGgeb04F98
-> c7X&&-grease M (u|w5r1t Bu&{
KgBrgDovK7GWxFLq7kkwA5UNWr5QqlzeWbU13cTt8DXC4TCdSS9A+Wjzl+qDykzW
5oZ6tFgvWFFF2E/3Ym1YjTTl3cOvxG0RG6Bj/GXNVjo8PeTJ5Ny9h+yOJ/YuAcY
--- cqhrBzqNMukHeBPQe1mlHpVZfVWgUAepvPV8JGbAUVA
ÑR<,VÏHÀíY·ZÅ#Š}·*Ϫ¦!Ä �â[ärƒµÙúê¢kȾèÜ�†Ê“o’jcÎ>92­ /dbû=sÛöE{1~"îûû&ö»j$8H