summaryrefslogtreecommitdiffstats
path: root/makefu/2configs
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2021-03-12 20:10:27 +0100
committermakefu <github@syntax-fehler.de>2021-03-12 20:10:39 +0100
commitba614307cdc027dddd9aee2fecdaac86336957eb (patch)
treebda38bc2a0e4099511d63a05ed855807193f12b5 /makefu/2configs
parent27e182f7f878721c665b92b287e0d5f8da5bd06a (diff)
ma omo.r: deploy airsonic,photoprism,metube
Diffstat (limited to 'makefu/2configs')
-rw-r--r--makefu/2configs/home/airsonic.nix29
-rw-r--r--makefu/2configs/home/metube.nix35
-rw-r--r--makefu/2configs/home/photoprism.nix9
3 files changed, 69 insertions, 4 deletions
diff --git a/makefu/2configs/home/airsonic.nix b/makefu/2configs/home/airsonic.nix
new file mode 100644
index 000000000..15e77438d
--- /dev/null
+++ b/makefu/2configs/home/airsonic.nix
@@ -0,0 +1,29 @@
+{ config, ... }:
+let
+ internal-ip = "192.168.1.11";
+ port = 4040;
+in
+{
+ # networking.firewall.allowedTCPPorts = [ 4040 ];
+ services.airsonic = {
+ enable = true;
+ listenAddress = "0.0.0.0";
+ inherit port;
+ };
+ state = [ config.services.airsonic.home ];
+ services.nginx.virtualHosts."airsonic" = {
+ serverAliases = [
+ "airsonic.lan"
+ "music" "music.lan"
+ "musik" "musik.lan"
+ ];
+
+ locations."/".proxyPass = "http://localhost:${toString port}";
+ locations."/".proxyWebsockets = true;
+ extraConfig = ''
+ if ( $server_addr != "${internal-ip}" ) {
+ return 403;
+ }
+ '';
+ };
+}
diff --git a/makefu/2configs/home/metube.nix b/makefu/2configs/home/metube.nix
new file mode 100644
index 000000000..c872bea08
--- /dev/null
+++ b/makefu/2configs/home/metube.nix
@@ -0,0 +1,35 @@
+{ pkgs, lib, ...}:
+# docker run -d -p 8081:8081 -v /path/to/downloads:/downloads --user 1001:1001 alexta69/metube
+with import <stockholm/lib>;
+let
+ port = "2348";
+ dl-dir = "/media/cryptX/youtube/music";
+ uid = 20421;
+ internal-ip = "192.168.1.11";
+in
+ {
+ systemd.tmpfiles.rules = [
+ "d ${dl-dir} metube nogroup - -"
+ ];
+ virtualisation.oci-containers.backend = "docker";
+
+ services.nginx.virtualHosts."tube" = {
+ serverAliases = [ "tube.lan" ];
+ locations."/".proxyPass = "http://localhost:${port}";
+ };
+
+ virtualisation.oci-containers.containers.metube = {
+ image = "alexta69/metube:latest";
+ ports = [ "${port}:8081" ];
+ volumes = [
+ "${dl-dir}:/downloads"
+ ];
+ user = "metube";
+ };
+ users.users.metube.uid = uid;
+
+ systemd.services.docker-metube.serviceConfig = {
+ StandardOutput = lib.mkForce "journal";
+ StandardError = lib.mkForce "journal";
+ };
+}
diff --git a/makefu/2configs/home/photoprism.nix b/makefu/2configs/home/photoprism.nix
index aaccd7350..ef4200576 100644
--- a/makefu/2configs/home/photoprism.nix
+++ b/makefu/2configs/home/photoprism.nix
@@ -16,8 +16,8 @@
let
port = "2347";
photodir = "/media/cryptX/photos";
- statedir = "/var/lib/photoprism/appsrv";
- db-dir = "/var/lib/photoprism/mysql";
+ statedir = "/media/cryptX/lib/photoprism/appsrv";
+ db-dir = "/media/cryptX/lib/photoprism/mysql";
internal-ip = "192.168.1.11";
sec = import <secrets/photoprism.nix>;
in
@@ -97,6 +97,7 @@ in
PHOTOPRISM_SITE_CAPTION = "FeMi Fotos";
PHOTOPRISM_SITE_DESCRIPTION = "Unsere Fotos";
PHOTOPRISM_SITE_AUTHOR = "FeMi";
+ PHOTOPRISM_SPONSOR = "true";
};
};
@@ -135,11 +136,11 @@ in
# };
#};
- systemd.services.photoprism.serviceConfig = {
+ systemd.services.docker-photoprism.serviceConfig = {
StandardOutput = lib.mkForce "journal";
StandardError = lib.mkForce "journal";
};
- systemd.services.mysql-photoprism.serviceConfig = {
+ systemd.services.docker-mysql-photoprism.serviceConfig = {
StandardOutput = lib.mkForce "journal";
StandardError = lib.mkForce "journal";
};