{ config, lib, pkgs, ... }: { environment.systemPackages = with pkgs; [ podman-compose ]; virtualisation = { podman = { enable = true; enableNvidia = true; dockerCompat = true; defaultNetwork.settings.dns_enabled = true; autoPrune = { enable = true; flags = [ "--all" ]; dates = "weekly"; }; }; oci-containers = { containers = { collabora = { autoStart = true; image = "collabora/code"; imageFile = pkgs.dockerTools.pullImage { imageName = "collabora/code"; imageDigest = "sha256:aab41379baf5652832e9237fcc06a768096a5a7fccc66cf8bd4fdb06d2cbba7f"; sha256 = "sha256-M66lynhzaOEFnE15Sy1N6lBbGDxwNw6ap+IUJAvoCLs="; }; ports = [ "9980:9980" ]; environment = { TZ = "America/Mexico_City"; domain = "cloud.servidos.lat"; username = "jawz"; password = "chichis"; dictionaries = "en_CA en_US es_MX es_ES fr_FR it pt_BR ru"; extra_params = '' --o:ssl.enable=false --o:ssl.termination=true ''; # --o:net.post_allow.host=\:\:ffff\:172\.16\.[0-9]{1,3}\.[0-9]{1,3} # --o:storage.wopi.host=\:\:ffff\:172\.16\.[0-9]{1,3}\.[0-9]{1,3} }; extraOptions = [ "--cap-add" "MKNOD" ]; }; flaresolverr = { autoStart = true; image = "ghcr.io/flaresolverr/flaresolverr:latest"; ports = [ "8191:8191" ]; }; flame = { autoStart = true; image = "pawelmalak/flame"; ports = [ "5005:5005" ]; volumes = [ "/var/lib/docker-configs/flame:/app/data" ]; environment = { TZ = "America/Mexico_City"; PUID = "1000"; PGID = "100"; PASSWORD = "RkawpqMc8lR56QyU7JSfiLhG"; }; }; flame-nsfw = { autoStart = true; image = "pawelmalak/flame"; ports = [ "5007:5005" ]; volumes = [ "/var/lib/docker-configs/flame-nsfw:/app/data" ]; environment = { TZ = "America/Mexico_City"; PUID = "1000"; PGID = "100"; PASSWORD = "RkawpqMc8lR56QyU7JSfiLhG"; }; }; lidarr = { autoStart = true; image = "lscr.io/linuxserver/lidarr:latest"; ports = [ "8686:8686" ]; environment = { TZ = "America/Mexico_City"; PUID = "1000"; PGID = "100"; }; volumes = [ "/mnt/pool/multimedia:/data" "/mnt/pool/multimedia/media/Music:/music" "/mnt/pool/multimedia/media/MusicVideos:/music-videos" "/var/lib/docker-configs/lidarr/files:/config" "/var/lib/docker-configs/lidarr/custom-services.d:/custom-services.d" "/var/lib/docker-configs/lidarr/custom-cont-init.d:/custom-cont-init.d" ]; labels = { "flame.type" = "application"; "flame.name" = "Lidarr"; "flame.url" = "music.servidos.lat"; "flame.icon" = "music"; }; }; mealie = { autoStart = true; image = "ghcr.io/mealie-recipes/mealie:v1.0.0-RC2"; ports = [ "9925:9000" ]; volumes = [ "/var/lib/docker-configs/mealie:/app/data/" ]; environment = { TZ = "America/Mexico_City"; ALLOW_SIGNUP = "true"; PUID = "1000"; PGID = "100"; MAX_WORKERS = "1"; WEB_CONCURRENCY = "1"; BASE_URL = "https://mealie.servidos.lat"; SMTP_HOST = "smtp.gmail.com"; SMTP_PORT = "587"; SMTP_FROM_EMAIL = "stunner6399@gmail.com"; SMTP_USER = "stunner6399@gmail.com"; SMTP_PASSWORD = "ywofhisexfawslob"; }; extraOptions = [ "--memory=1g" # VA-API (omit for NVENC) ]; labels = { "flame.type" = "application"; "flame.name" = "Mealie"; "flame.url" = "mealie.servidos.lat"; "flame.icon" = "fridge"; }; }; go-vod = { autoStart = true; image = "radialapps/go-vod"; environment = { TZ = "America/Mexico_City"; NEXTCLOUD_HOST = "https://${config.services.nextcloud.hostName}"; NVIDIA_VISIBLE_DEVICES = "all"; }; volumes = [ "ncdata:/var/www/html:ro" ]; extraOptions = [ "--device=/dev/dri" # VA-API (omit for NVENC) ]; }; }; }; }; }