From 5a79f212e9e8b2cfb28591aabb4932715da4977c Mon Sep 17 00:00:00 2001 From: mc-fucker Date: Mon, 6 May 2024 16:57:23 +0200 Subject: [PATCH] added calibre-web --- modules/calibre-web.nix | 58 +++++++++++++++++++++++++++++++++++++++++ modules/vars.nix | 5 ++++ 2 files changed, 63 insertions(+) create mode 100644 modules/calibre-web.nix diff --git a/modules/calibre-web.nix b/modules/calibre-web.nix new file mode 100644 index 0000000..154c0b7 --- /dev/null +++ b/modules/calibre-web.nix @@ -0,0 +1,58 @@ +{ config, lib, ... }: +let + cfg = import ./vars.nix; + name = "calibre"; + #dbport = cfg.XXX.dbport; + #db_host = cfg.podman.hostIP; + port = cfg.calibre.port; + domain = cfg.calibre.domain; +in +{ + imports = [ + #./podman.nix + #./podman-postgresql.nix # for the database + ./nginx.nix # for the webserver + ]; + + #sops.secrets."${name}/db" = {}; + #sops.secrets."${name}/env" = {}; + + #services.podman-postgresql."${name}" = { + # enable = true; + # image = "docker.io/library/postgres:16-alpine"; + # port = (lib.strings.toInt dbport); + # passwordFile = config.sops.secrets."${name}/db".path; + #}; + + virtualisation.oci-containers.containers.${name} = { + image = "lscr.io/linuxserver/calibre-web"; + environment = { + TZ = "Europe/Berlin"; + DOCKER_MODS = "linuxserver/mods:universal-calibre"; + }; + #environmentFiles = [ config.sops.secrets."${name}/env".path ]; + ports = [ + "${port}:${port}" + ]; + volumes = [ + "/var/lib/calibre:/config" + "/mnt/mergerfs/media/books:/books" + ]; + extraOptions = cfg.podman.extraOptions; + }; + + #services.nginx.virtualHosts.${domain} = { + # forceSSL = true; + # enableACME = true; + # locations."/" = { + # proxyPass = "http://localhost:${port}"; + # proxyWebsockets = true; + # }; + # extraConfig = '' + # access_log /var/log/nginx/${domain}_access.log; + # error_log /var/log/nginx/${domain}_error.log; + # ''; + #}; + +} +# vim: set et ts=2 sw=2 ai: diff --git a/modules/vars.nix b/modules/vars.nix index 9e751e1..f5f89c9 100644 --- a/modules/vars.nix +++ b/modules/vars.nix @@ -29,6 +29,11 @@ port = "8086"; }; + calibre = { + domain = "calibre.mc-fucker.cool"; + port = "8083"; + }; + ihatemoney = { db = "ihatemoney"; domain = "geld.mc-fucker.cool";