captainVersion: 4
services:
    $$cap_appname:
        image: ghcr.io/linuxserver/transmission:$$cap_transmission_version
        environment:
            PUID: '1000'
            PGID: '1000'
            TZ: $$cap_tz
            TRANSMISSION_WEB_HOME: /$$cap_ui/
            USER: $$cap_user
            PASS: $$cap_pass
            WHITELIST: '' #optional
            HOST_WHITELIST: '' #optional
            WEBUI_PORT: '9091'
        ports:
            - 51413:51413
        hostname: $$cap_appname.$$cap_root_domain
        volumes:
            - $$cap_appname-config:/config
            - $$cap_path_to_downloads:/downloads
            - $$cap_appname-watch:/watch
        caproverExtra:
            containerHttpPort: '9091'
caproverOneClickApp:
    variables:
        - id: $$cap_transmission_version
          label: Transmission Version
          defaultValue: arm64v8-version-3.00-r2
          description: Check out their Docker page for the valid tags https://hub.docker.com/r/linuxserver/transmission/tags
          validRegex: /^([^\s^\/])+$/
        - id: $$cap_tz
          label: Time Zone
          defaultValue: Asia/Kolkata
          description: Get yours from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
          validRegex: /.{1,}/
        - id: $$cap_user
          label: Username
          defaultValue: admin
        - id: $$cap_pass
          label: Password
          defaultValue: password
        - id: $$cap_path_to_downloads
          label: Path to downloads folder
          defaultValue: transmission-downloads
          description: Path to downloads folder where you want to save the downloaded torrents. You can mention an existing directory here too. Eg. /home/user/torrents/
          validRegex: '/.{1,}/'
        - id: $$cap_ui
          label: User Interface
          defaultValue: transmission-web-control
          description: Specify an alternative UI options are combustion-release, transmission-web-control, kettu and flood-for-transmission.
          validRegex: /^(combustion-release|transmission-web-control|kettu|flood-for-transmission)$/
    instructions:
        start: |-
            Transmission is designed for easy, powerful use. Transmission has the features you want from a BitTorrent client: encryption, a web interface, peer exchange, magnet links, DHT, µTP, UPnP and NAT-PMP port forwarding, webseed support, watch directories, tracker editing, global and per-torrent speed limits, and more.
            This app uses port 51413 as Torrent port, Always allow this port on your firewall.
        end: |-
            Transmission is deployed and available as $$cap_appname.$$cap_root_domain.
            The default username/password is $$cap_user/$$cap_pass.
            Change username/password via the webui in the webui section of settings or using enviornament variables.
    displayName: Transmission
    isOfficial: true
    description: Transmission is a BitTorrent client which features a variety of user interfaces on top of a cross-platform back-end.
    documentation: Taken from https://hub.docker.com/r/linuxserver/transmission.
