1{
2 config,
3 self,
4 ...
5}:
6let
7 d = self.lib.data.services.miniflux;
8in
9{
10 services.miniflux = {
11 enable = true;
12 config = {
13 PORT = d.port;
14 FETCH_YOUTUBE_WATCH_TIME = 1;
15 BASE_URL = "https://${d.extUrl}";
16 CREATE_ADMIN = 1;
17 WEBAUTHN = 1;
18 WORKER_POOL_SIZE = 5;
19 };
20 adminCredentialsFile = config.age.secrets.miniflux-admin.path;
21 };
22 users.users.miniflux.isSystemUser = true;
23 users.users.miniflux.group = "miniflux";
24 users.groups.miniflux = { };
25 age.secrets = {
26 miniflux-admin = {
27 file = ./secrets/miniflux-admin.age;
28 owner = "miniflux";
29 group = "miniflux";
30 };
31 };
32 services.anubis.instances.miniflux = {
33 settings = {
34 BIND = ":${toString d.anubis}";
35 TARGET = "http://localhost:${toString d.port}";
36 };
37 };
38}