{ lib, pkgs, config, ... }: with lib; let cfg = config.nas-apps.open-webui; in { imports = [ ./options.nix ]; config = mkIf cfg.enable { virtualisation.oci-containers.containers.${cfg.name} = { autoStart = true; image = cfg.image; extraOptions = [ "--device=nvidia.com/gpu=0" ]; volumes = [ "${cfg.configPath}:/app/backend/data" "${cfg.ollamaPath}:/root/.ollama" ]; ports = [ "${cfg.port}:8080" ]; environment = { NVIDIA_VISIBLE_DEVICES = "all"; NVIDIA_DRIVER_CAPABILITIES = "all"; PUID = cfg.puid; PGID = cfg.pgid; TZ = cfg.timeZone; }; }; }; }