Files
config/profiles/http/services/polaris.nix
T
pederbs eccdf4f536 test polaris pr on nox, flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs-2411':
    'github:NixOS/nixpkgs/cdd2ef009676ac92b715ff26630164bb88fec4e0' (2025-03-13)
  → 'github:NixOS/nixpkgs/b75693fb46bfaf09e662d09ec076c5a162efa9f6' (2025-03-19)
2025-03-21 13:43:07 +01:00

46 lines
1.7 KiB
Nix

{ config, pkgs, lib, inputs, ... }:
let
inherit (config.pbsds.nginx) mkDomain;
in
{
# Polaris
# Self-host your music collection, and access it from any computer and mobile device
/**/
disabledModules = [ "services/misc/polaris.nix" ];
imports = [ "${inputs.unstable}/nixos/modules/services/misc/polaris.nix" ];
services.polaris.package = pkgs.unstable.polaris;
/**/
services.polaris = {
enable = true;
#user = "pbsds";
#group = "users";
port = 7890;
settings = {
settings.reindex_every_n_seconds = 7*24*60*60; # weekly, default is 1800, i.e. hourly
settings.album_art_pattern =
"([Cc]over|COVER|[Ff]older|FOLDER|[Ff]ront|FRONT)\.(jpeg|JPEG|jpg|JPG|png|PNG|bmp|BMP|gif|GIF)";
#"(?i)(cover|folder|front)\.(jpeg|jpg|png|bmp|gif)";
mount_dirs = lib.mkIf (!config.virtualisation.isVmVariant) [
{ name = "Albums"; source = "/mnt/freon/Music/Albums"; }
{ name = "dojin.co"; source = "/mnt/freon/Music/dojin.co"; }
{ name = "Vocaloid"; source = "/mnt/freon/Music/Vocaloid"; }
{ name = "Touhou"; source = "/mnt/freon/Music/Touhou"; }
{ name = "OST"; source = "/mnt/freon/Music/OST"; }
{ name = "Kancolle"; source = "/mnt/freon/Music/Kancolle"; }
{ name = "Downloads"; source = "/mnt/reidun/Downloads/music"; }
];
};
};
services.nginx.virtualHosts.${mkDomain "polaris"} = lib.mkIf config.services.polaris.enable {
forceSSL = true; # addSSL = true;
enableACME = true; #useACMEHost = acmeDomain;
locations."/" = {
proxyPass = "http://127.0.0.1:${toString config.services.polaris.port}";
proxyWebsockets = true;
};
};
}