dotfiles/nixos/boxes/vpsfree1/rss.nix

66 lines
1.7 KiB
Nix

{ config, pkgs, inputs, lib, ... }:
let
port = 8080;
domain = "news.cyplo.dev";
postgresPort = 5435;
in {
imports = [ ../nginx.nix ];
services.nginx = {
virtualHosts = {
"${domain}" = {
forceSSL = true;
enableACME = true;
locations."/" = { proxyPass = "http://127.0.0.1:" + toString port; };
};
};
};
containers.rss = {
autoStart = true;
forwardPorts = [{
containerPort = port;
hostPort = port;
}];
config = { config, pkgs, ... }:
let
inherit (config.services.tt-rss) pool;
inherit (config.services.tt-rss) root;
in {
system.stateVersion = "23.05";
services.postgresql.port = postgresPort;
services.tt-rss = {
enable = true;
selfUrlPath = "https://${domain}";
virtualHost = null;
registration.enable = false;
simpleUpdateMode = true;
database.port = postgresPort;
};
services.nginx = {
enable = true;
virtualHosts = {
"${domain}" = {
listen = [{
inherit port;
addr = "0.0.0.0";
}];
root = "${root}/www";
locations."/" = { index = "index.php"; };
locations."^~ /feed-icons" = { root = "${root}"; };
locations."~ \\.php$" = {
extraConfig = ''
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:${
config.services.phpfpm.pools.${pool}.socket
};
fastcgi_index index.php;
'';
};
};
};
};
};
};
}