From d55380bd2accf54e30ceb189cdb51939b01f723c Mon Sep 17 00:00:00 2001 From: mups Date: Tue, 27 Aug 2024 21:52:01 +0000 Subject: [PATCH] Add photoprism --- hosts/mups/configuration.nix | 6 ++++-- modules/nixos/server/media.nix | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/hosts/mups/configuration.nix b/hosts/mups/configuration.nix index 24a826e..62acba8 100644 --- a/hosts/mups/configuration.nix +++ b/hosts/mups/configuration.nix @@ -22,14 +22,16 @@ in { mods.tailscale.enable = true; - mods.unfree.minecraft.enable = true; - mods.server.astral.enable = true; + mods.unfree.minecraft.enable = false; + mods.server.astral.enable = false; mods.server.astral.memory = "3G"; mods.server.sync.enable = true; mods.server.sync.address = "100.85.27.29"; mods.server.sync.port = "8385"; + mods.server.media.enable = true; + # Use the GRUB 2 boot loader. boot.loader.grub.enable = true; boot.loader.grub.device = "/dev/vda"; diff --git a/modules/nixos/server/media.nix b/modules/nixos/server/media.nix index cf77205..89f7143 100644 --- a/modules/nixos/server/media.nix +++ b/modules/nixos/server/media.nix @@ -13,5 +13,39 @@ openFirewall = true; user="${config.mods.user.name}"; }; + + services.photoprism = { + enable = true; + port = 2342; + originalsPath = "/var/lib/private/photoprism/originals"; + address = "0.0.0.0"; + settings = { + PHOTOPRISM_ADMIN_USER = "admin"; + PHOTOPRISM_ADMIN_PASSWORD = "CarrotSec"; + PHOTOPRISM_DEFAULT_LOCALE = "en"; + PHOTOPRISM_DATABASE_DRIVER = "mysql"; + PHOTOPRISM_DATABASE_NAME = "photoprism"; + PHOTOPRISM_DATABASE_SERVER = "/run/mysqld/mysqld.sock"; + PHOTOPRISM_DATABASE_USER = "photoprism"; + PHOTOPRISM_SITE_URL = "http://93.95.230.11:2342"; + PHOTOPRISM_SITE_TITLE = "Giceland Potos"; + }; + }; + + networking.firewall.allowedTCPPorts = [ 2342 ]; + + # MySQL + services.mysql = { + enable = true; + dataDir = "/data/mysql"; + package = pkgs.mariadb; + ensureDatabases = [ "photoprism" ]; + ensureUsers = [ { + name = "photoprism"; + ensurePermissions = { + "photoprism.*" = "ALL PRIVILEGES"; + }; + } ]; + }; }; }