forked from DGNum/infrastructure
fix(castopod): fix HEAD/GET proxy
This commit is contained in:
parent
23c3ecd99d
commit
1759692d71
1 changed files with 6 additions and 35 deletions
|
@ -215,10 +215,8 @@ Subject: [PATCH 3/4] nixos/castopod: init
|
||||||
|
|
||||||
---
|
---
|
||||||
nixos/modules/module-list.nix | 1 +
|
nixos/modules/module-list.nix | 1 +
|
||||||
nixos/modules/services/audio/castopod.md | 22 ++
|
nixos/modules/services/audio/castopod.nix | 299 ++++++++++++++++++
|
||||||
nixos/modules/services/audio/castopod.nix | 287 ++++++++++++++++++
|
2 files changed, 299 insertions(+)
|
||||||
3 files changed, 312 insertions(+)
|
|
||||||
create mode 100644 nixos/modules/services/audio/castopod.md
|
|
||||||
create mode 100644 nixos/modules/services/audio/castopod.nix
|
create mode 100644 nixos/modules/services/audio/castopod.nix
|
||||||
|
|
||||||
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
|
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
|
||||||
|
@ -233,40 +231,12 @@ index 206d5eaf75dedc..54fd5c7b040314 100644
|
||||||
./services/audio/gmediarender.nix
|
./services/audio/gmediarender.nix
|
||||||
./services/audio/gonic.nix
|
./services/audio/gonic.nix
|
||||||
./services/audio/hqplayerd.nix
|
./services/audio/hqplayerd.nix
|
||||||
diff --git a/nixos/modules/services/audio/castopod.md b/nixos/modules/services/audio/castopod.md
|
|
||||||
new file mode 100644
|
|
||||||
index 00000000000000..ee8590737a7c73
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/nixos/modules/services/audio/castopod.md
|
|
||||||
@@ -0,0 +1,22 @@
|
|
||||||
+# Castopod {#module-services-castopod}
|
|
||||||
+
|
|
||||||
+Castopod is an open-source hosting platform made for podcasters who want to engage and interact with their audience.
|
|
||||||
+
|
|
||||||
+## Quickstart {#module-services-castopod-quickstart}
|
|
||||||
+
|
|
||||||
+Use the following configuration to start a public instance of Castopod on `castopod.example.com` domain:
|
|
||||||
+
|
|
||||||
+```nix
|
|
||||||
+networking.firewall.allowedTCPPorts = [ 80 443 ];
|
|
||||||
+services.castopod = {
|
|
||||||
+ enable = true;
|
|
||||||
+ database.createLocally = true;
|
|
||||||
+ nginx.virtualHost = {
|
|
||||||
+ serverName = "castopod.example.com";
|
|
||||||
+ enableACME = true;
|
|
||||||
+ forceSSL = true;
|
|
||||||
+ };
|
|
||||||
+};
|
|
||||||
+```
|
|
||||||
+
|
|
||||||
+Go to `https://castopod.example.com/cp-install` to create superadmin account after applying the above configuration.
|
|
||||||
diff --git a/nixos/modules/services/audio/castopod.nix b/nixos/modules/services/audio/castopod.nix
|
diff --git a/nixos/modules/services/audio/castopod.nix b/nixos/modules/services/audio/castopod.nix
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 00000000000000..b782b548914795
|
index 00000000000000..b782b548914795
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/nixos/modules/services/audio/castopod.nix
|
+++ b/nixos/modules/services/audio/castopod.nix
|
||||||
@@ -0,0 +1,297 @@
|
@@ -0,0 +1,298 @@
|
||||||
+{ config, lib, pkgs, ... }:
|
+{ config, lib, pkgs, ... }:
|
||||||
+let
|
+let
|
||||||
+ cfg = config.services.castopod;
|
+ cfg = config.services.castopod;
|
||||||
|
@ -285,7 +255,6 @@ index 00000000000000..b782b548914795
|
||||||
+ ] ++ enabled);
|
+ ] ++ enabled);
|
||||||
+in
|
+in
|
||||||
+{
|
+{
|
||||||
+ meta.doc = ./castopod.md;
|
|
||||||
+ meta.maintainers = with lib.maintainers; [ alexoundos misuzu ];
|
+ meta.maintainers = with lib.maintainers; [ alexoundos misuzu ];
|
||||||
+
|
+
|
||||||
+ options.services = {
|
+ options.services = {
|
||||||
|
@ -514,10 +483,12 @@ index 00000000000000..b782b548914795
|
||||||
+
|
+
|
||||||
+ services.nginx = lib.mkIf cfg.configureNginx {
|
+ services.nginx = lib.mkIf cfg.configureNginx {
|
||||||
+ enable = true;
|
+ enable = true;
|
||||||
|
+ resolver.addresses = [ "127.0.0.53" ];
|
||||||
+ virtualHosts."${cfg.localDomain}" = {
|
+ virtualHosts."${cfg.localDomain}" = {
|
||||||
+ root = lib.mkForce "${cfg.package}/share/castopod/public";
|
+ root = lib.mkForce "${cfg.package}/share/castopod/public";
|
||||||
+
|
+
|
||||||
+ extraConfig = ''
|
+ extraConfig = ''
|
||||||
|
+ client_max_body_size 512m;
|
||||||
+ try_files $uri $uri/ /index.php?$args;
|
+ try_files $uri $uri/ /index.php?$args;
|
||||||
+ index index.php index.html;
|
+ index index.php index.html;
|
||||||
+ '';
|
+ '';
|
||||||
|
@ -526,7 +497,7 @@ index 00000000000000..b782b548914795
|
||||||
+ extraConfig = ''
|
+ extraConfig = ''
|
||||||
+ recursive_error_pages on;
|
+ recursive_error_pages on;
|
||||||
+ proxy_method GET;
|
+ proxy_method GET;
|
||||||
+ proxy_pass https://podcasts.dgnum.eu;
|
+ proxy_pass https://podcasts.dgnum.eu/$request_uri;
|
||||||
+ '';
|
+ '';
|
||||||
+ };
|
+ };
|
||||||
+
|
+
|
||||||
|
|
Loading…
Reference in a new issue