diff --git a/modules/services/miniflux.nix b/modules/services/miniflux.nix new file mode 100644 index 0000000..bb5ebc0 --- /dev/null +++ b/modules/services/miniflux.nix @@ -0,0 +1,39 @@ +{ config, pkgs, ... }: + +{ + services.miniflux = { + enable = true; + createDatabaseLocally = true; + adminCredentialsFile = pkgs.writeText "miniflux-admin-credentials" '' + ADMIN_USERNAME=admin + ADMIN_PASSWORD=adminadmin + ''; + + config = { + LISTEN_ADDR = "0.0.0.0:8021"; + BASE_URL = "http://${config.networking.hostName}"; + CLEANUP_FREQUENCY = 48; + + CREATE_ADMIN = 1; + + CLEANUP_ARCHIVE_BATCH_SIZE = 100000; + CLEANUP_ARCHIVE_READ_DAYS = -1; + CLEANUP_ARCHIVE_UNREAD_DAYS = 180; + CLEANUP_FREQUENCY_HOURS = 24; + CLEANUP_REMOVE_SESSION_DAYS = 7; + + DISABLE_HSTS = 1; + HTTPS = 0; + DISABLE_HTTP_SERVICE = 0; + + FETCH_YOUTUBE_WATCH_TIME = 1; + FILTER_ENTRY_MAX_AGE_DAYS = 1825; # 5 years + + FORCE_REFRESH_INTERVAL = 30; + POLLING_FREQUENCY = 60; + }; + }; + + networking.firewall.allowedTCPPorts = [ 8021 ]; + networking.firewall.allowedUDPPorts = [ 8021 ]; +}