caprover / one-click-apps

Community Maintained One Click Apps (https://github.com/caprover/caprover)
Apache License 2.0
536 stars 520 forks source link

App Suggestion: Deluge (file already available) #1043

Open Emilien-Lambert opened 7 months ago

Emilien-Lambert commented 7 months ago

Hello, this is the first time I'm trying to contribute to an open source project, I hope to do things right.

I've created a deluge.yml file to add the Deluge application to the list of "one clic apps". This is an official image of deluge publish by linuxserver

I tested my application with the template as explained here and everything works like a charm.

Here's the file in question, I tried to push on a new branch of the repository to create a pull request but it doesn't seem allowed so I propose my solution here.

captainVersion: 4
services:
  '$$cap_appname':
    image: linuxserver/deluge:$$cap_version
    environment:
      TZ: '$$cap_tz'
      PUID: '$$cap_puid'
      PGID: '$$cap_pgid'
    hostname: $$cap_appname.$$cap_root_domain
    volumes:
      - '$$cap_appname-config:/config'
      - '$$cap_appname-downloads:/downloads'
      - '$$cap_appname-watch:/watch'
    caproverExtra:
      containerHttpPort: '8112'
caproverOneClickApp:
  variables:
    - id: '$$cap_version'
      label: Deluge Version
      defaultValue: 'latest'
      description: Check out their Docker page for the valid tags https://hub.docker.com/r/linuxserver/deluge/tags
      validRegex: "/^([^\\s^\\/])+$/"
    - id: '$$cap_tz'
      label: Time Zone
      defaultValue: Europe/Paris
      description: Get yours from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
      validRegex: '/.{1,}/'
    - id: '$$cap_puid'
      label: PUID
      defaultValue: '1000'
      description: User ID
      validRegex: '/^\d+$/'
    - id: '$$cap_pgid'
      label: PGID
      defaultValue: '1000'
      description: Group ID
      validRegex: '/^\d+$/'
    - id: $$cap_appname-downloads
      label: Path downloads folder
      defaultValue: /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/downloads/
      validRegex: /.{1,}/
    - id: $$cap_appname-watch
      label: Path watch folder
      defaultValue: /watch
      description: Path to watch folder if you want to use AutoAdd plugin. You can mention an existing directory here too. Eg. /home/user/watch/
      validRegex: /.{1,}/
  instructions:
    start: |-
      A lightweight, Free Software, cross-platform BitTorrent client with Full Encryption, WebUI, Plugin System, etc.
      More details: https://deluge-torrent.org
    end: |-
      Deluge has been successfully deployed!
      Is available as [http://$$cap_appname.$$cap_root_domain](http://$$cap_appname.$$cap_root_domain)
      The default username is `admin` and the default password is `deluge`. 
      You must change the password after logging in for the first time.
  displayName: Deluge
  isOfficial: true
  description: A lightweight, Free Software, cross-platform BitTorrent client with Full Encryption, WebUI, Plugin System, etc.
  documentation: See https://deluge-torrent.org
githubsaturn commented 7 months ago

Thanks for the contribution! I can definitely help you get this Pull Request ready!

Have a look at this article, it explains how you can create a pull request.

https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request

Summary:

There are a few more obstacles that you'll face once you create the pull request, but I'll be happy to help you to fix those.