miniflux: move into module

This commit is contained in:
Tim Schubert 2022-10-29 13:04:17 +02:00
parent 3c3868c88b
commit 8f4ffd1d45
Signed by: dadada
GPG key ID: EEB8D1CE62C4DFEA
23 changed files with 114 additions and 64 deletions

View file

@ -71,15 +71,6 @@ in
];
};
services.miniflux = {
enable = true;
config = {
CLEANUP_FREQUENCY = "48";
LISTEN_ADDR = "localhost:8080";
};
adminCredentialsFile = "/var/lib/miniflux/admin-credentials";
};
environment.systemPackages = with pkgs; [
chromium
ghostscript

View file

@ -10,6 +10,7 @@
headphones = import ./headphones.nix;
homepage = import ./homepage.nix;
kanboard = import ./kanboard;
miniflux = import ./miniflux.nix;
networking = import ./networking.nix;
nix = import ./nix.nix;
nixpkgs = import ./nixpkgs.nix;

View file

@ -0,0 +1,39 @@
{ config, lib, ... }:
let
cfg = config.dadada.miniflux;
domain = "miniflux.${config.networking.domain}";
adminCredentialsFile = "miniflux-admin-credentials";
in
{
options.dadada.miniflux = {
enable = lib.mkEnableOption "Enable miniflux RSS aggregator";
};
config = lib.mkIf cfg.enable {
services.miniflux = {
enable = true;
config = {
CLEANUP_FREQUENCY = "48";
LISTEN_ADDR = "localhost:8080";
};
adminCredentialsFile = config.age.secrets.${adminCredentialsFile}.path;
};
services.nginx.virtualHosts.${domain} = {
enableACME = true;
forceSSL = true;
locations."/".extraConfig = ''
proxy_pass http://localhost:8080/;
'';
};
age.secrets.${adminCredentialsFile} = {
file = "${config.dadada.secrets.path}/${adminCredentialsFile}.age";
owner = config.systemd.services.miniflux.serviceConfig.User;
group = "root";
mode = "0700";
};
};
}

View file

@ -0,0 +1,7 @@
{ config, ... }:
{
security.acme = {
defaults.email = "d553a78d-0349-48db-9c20-5b27af3a1dfc@dadada.li";
acceptTerms = true;
};
}

View file

@ -6,6 +6,7 @@
with lib; {
imports = [
./backup.nix
./base.nix
];
networking.domain = mkDefault "dadada.li";

View file

@ -6,6 +6,7 @@
with lib; {
imports = [
./backup.nix
./base.nix
];
networking.domain = mkDefault "dadada.li";

View file

@ -41,6 +41,7 @@ in
dadada.element.enable = true;
dadada.gitea.enable = true;
dadada.miniflux.enable = true;
dadada.weechat.enable = true;
dadada.homePage.enable = true;
dadada.share.enable = true;
@ -65,11 +66,6 @@ in
];
};
security.acme = {
defaults.email = "d553a78d-0349-48db-9c20-5b27af3a1dfc@dadada.li";
acceptTerms = true;
};
# Use the GRUB 2 boot loader.
boot.loader.grub.enable = true;
boot.loader.grub.version = 2;