{ lib, namespace, ... }:
with lib;
let
  inherit (lib.${namespace}) mkOpt mkBoolOpt;
in
{
  options.${namespace}.services.nextcloud = {
    enable = mkEnableOption "enable nextcloud";

    autoStart = mkBoolOpt true "autostart container";

    port = mkOpt types.str "9988" "https port";

    name = mkOpt types.str "nextcloud" "container name";

    image = mkOpt types.str "lscr.io/linuxserver/nextcloud" "";

    configPath = mkOpt types.str "/media/nas/main/nix-app-data/nextcloud/config" "";

    dataPath = mkOpt types.str "/media/nas/main/nextcloud" "";

    puid = mkOpt types.str "911" "puid";

    pgid = mkOpt types.str "1000" "pgid";

    timeZone = mkOpt types.str "America/Chicago" "container tz";
  };
}
