2026-02-08 17:39:45 -05:00
|
|
|
{ pkgs, lib, config, ... }:
|
|
|
|
|
let cfg = config.cos.grocy; in
|
|
|
|
|
{
|
|
|
|
|
options.cos.grocy = {
|
|
|
|
|
enable = lib.mkEnableOption "enable grocy";
|
|
|
|
|
dataDir = lib.mkOption {
|
|
|
|
|
type = lib.types.str;
|
|
|
|
|
};
|
|
|
|
|
hostname = lib.mkOption {
|
|
|
|
|
type = lib.types.str;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
|
|
|
services.grocy = {
|
|
|
|
|
enable = true;
|
|
|
|
|
hostName = cfg.hostname;
|
|
|
|
|
dataDir = cfg.dataDir;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
services.nginx.virtualHosts.${cfg.hostname} = {
|
|
|
|
|
listen = [{
|
|
|
|
|
addr = "127.0.0.1";
|
|
|
|
|
port = 8303;
|
|
|
|
|
}];
|
|
|
|
|
serverName = null;
|
|
|
|
|
enableACME = lib.mkForce false;
|
|
|
|
|
forceSSL = lib.mkForce false;
|
|
|
|
|
};
|
2026-03-09 15:23:38 -04:00
|
|
|
services.cloudflared.tunnels.mine.ingress.${cfg.hostname} = "http://127.0.0.1:8303";
|
2026-02-08 17:39:45 -05:00
|
|
|
};
|
|
|
|
|
}
|