about summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorOkina Matara <okinan@chiru.no>2019-03-23 01:17:01 -0500
committerOkina Matara <okinan@chiru.no>2019-03-23 01:19:29 -0500
commit40d7079f791a9acd92a4cc90c8a0235f602042aa (patch)
treeda8056e53da9bfc38a19d46ed1d27d27ae587315 /nixos
parent1d4a9950af8051cc5404e53d8c7870264b54d876 (diff)
downloadnixlib-40d7079f791a9acd92a4cc90c8a0235f602042aa.tar
nixlib-40d7079f791a9acd92a4cc90c8a0235f602042aa.tar.gz
nixlib-40d7079f791a9acd92a4cc90c8a0235f602042aa.tar.bz2
nixlib-40d7079f791a9acd92a4cc90c8a0235f602042aa.tar.lz
nixlib-40d7079f791a9acd92a4cc90c8a0235f602042aa.tar.xz
nixlib-40d7079f791a9acd92a4cc90c8a0235f602042aa.tar.zst
nixlib-40d7079f791a9acd92a4cc90c8a0235f602042aa.zip
nixos/meguca: Add videoPaths, set postgresql version to 11
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/web-servers/meguca.nix20
1 files changed, 18 insertions, 2 deletions
diff --git a/nixos/modules/services/web-servers/meguca.nix b/nixos/modules/services/web-servers/meguca.nix
index 11aebcb91d88..5a00070dc941 100644
--- a/nixos/modules/services/web-servers/meguca.nix
+++ b/nixos/modules/services/web-servers/meguca.nix
@@ -86,11 +86,19 @@ in with lib; {
       default = false;
       description = "Serve and listen only through HTTPS.";
     };
+
+    videoPaths = mkOption {
+      type = types.listOf types.path;
+      default = [];
+      example = [ "/home/okina/Videos/tehe_pero.webm" ];
+      description = "Videos that will be symlinked into www/videos.";
+    };
   };
 
   config = mkIf cfg.enable {
     security.sudo.enable = cfg.enable;
     services.postgresql.enable = cfg.enable;
+    services.postgresql.package = pkgs.postgresql_11;
     services.meguca.passwordFile = mkDefault (pkgs.writeText "meguca-password-file" cfg.password);
     services.meguca.postgresArgsFile = mkDefault (pkgs.writeText "meguca-postgres-args" cfg.postgresArgs);
     services.meguca.postgresArgs = mkDefault "user=meguca password=${cfg.password} dbname=meguca sslmode=disable";
@@ -102,8 +110,16 @@ in with lib; {
 
       preStart = ''
         # Ensure folder exists or create it and links and permissions are correct
-        mkdir -p ${escapeShellArg cfg.dataDir}
-        ln -sf ${pkgs.meguca}/share/meguca/www ${escapeShellArg cfg.dataDir}
+        mkdir -p ${escapeShellArg cfg.dataDir}/www
+        rm -rf ${escapeShellArg cfg.dataDir}/www/videos
+        ln -sf ${pkgs.meguca}/share/meguca/www/* ${escapeShellArg cfg.dataDir}/www
+        unlink ${escapeShellArg cfg.dataDir}/www/videos
+        mkdir -p ${escapeShellArg cfg.dataDir}/www/videos
+
+        for vid in ${escapeShellArg cfg.videoPaths}; do
+          ln -sf $vid ${escapeShellArg cfg.dataDir}/www/videos
+        done
+
         chmod 750 ${escapeShellArg cfg.dataDir}
         chown -R meguca:meguca ${escapeShellArg cfg.dataDir}