diff --git a/templates/Cryptpad/0/README.md b/templates/Cryptpad/0/README.md new file mode 100644 index 0000000..1b85b50 --- /dev/null +++ b/templates/Cryptpad/0/README.md @@ -0,0 +1 @@ +# Cryptpad \ No newline at end of file diff --git a/templates/Cryptpad/0/docker-compose.yml b/templates/Cryptpad/0/docker-compose.yml new file mode 100644 index 0000000..41c3c5e --- /dev/null +++ b/templates/Cryptpad/0/docker-compose.yml @@ -0,0 +1,36 @@ +version: '2' + +services: + cryptpad: + image: cryptpad/cryptpad:latest + dns: # Using Cloudflare DNS + - 1.1.1.1 + - 1.0.0.1 + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + traefik.enable: true + ### Start Web Segment + traefik.frontend.entryPoints: http,https + traefik.frontend.headers.forceSTSHeader: true + traefik.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information) + traefik.frontend.headers.SSLRedirect: true + traefik.frontend.headers.STSPreload: true + traefik.frontend.headers.STSSeconds: 15552000 + traefik.frontend.passHostHeader: true + traefik.frontend.rule: Host:${TRAEFIK_HOST} + traefik.port: "3000" + ### End Web Segment + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + - /RancherCattle/${DATA_DIR}/Blob:/cryptpad/blob + - /RancherCattle/${DATA_DIR}/BlobStage:/cryptpad/blobstage + - /RancherCattle/${DATA_DIR}/Block:/cryptpad/block + - /RancherCattle/${DATA_DIR}/Configuration:/cryptpad/customize + - /RancherCattle/${DATA_DIR}/Data:/cryptpad/datastore + - /RancherCattle/${DATA_DIR}/Pins:/cryptpad/pins + - /RancherCattle/${DATA_DIR}/Tasks:/cryptpad/tasks \ No newline at end of file diff --git a/templates/Cryptpad/0/rancher-compose.yml b/templates/Cryptpad/0/rancher-compose.yml new file mode 100644 index 0000000..0f30bf1 --- /dev/null +++ b/templates/Cryptpad/0/rancher-compose.yml @@ -0,0 +1,33 @@ +version: '2' +catalog: + name: Cryptpad + version: latest + # description: + # minimum_rancher_version: + # maximum_rancher_version: + # upgrade_from: + questions: + + - variable: "HOST_LABEL" + label: "Host Label Key/Value Pair" + description: | + The Label Key/Value pair of the host which containers should be deployed + default: "host.id=Host1" + required: false + type: string + + - variable: "TRAEFIK_HOST" + label: "Public Host Domain" + description: | + The host that Traefik will use to provide public access. + default: "subdomain.domain.tld" + required: true + type: string + + - variable: "DATA_DIR" + label: "Data Directory" + description: | + The directory to store persistent data for the stack. + default: "Personal/Cryptpad" + required: true + type: string \ No newline at end of file diff --git a/templates/Cryptpad/config.yml b/templates/Cryptpad/config.yml new file mode 100644 index 0000000..aef6617 --- /dev/null +++ b/templates/Cryptpad/config.yml @@ -0,0 +1,8 @@ +name: Cryptpad +description: | + Status: NOT READY +version: latest +# category: +maintainer: WilliamMiceli +# license: +# projectURL: \ No newline at end of file diff --git a/templates/Grav/0/README.md b/templates/Grav/0/README.md new file mode 100644 index 0000000..23ce3c5 --- /dev/null +++ b/templates/Grav/0/README.md @@ -0,0 +1 @@ +# Grav \ No newline at end of file diff --git a/templates/Grav/0/docker-compose.yml b/templates/Grav/0/docker-compose.yml new file mode 100644 index 0000000..0195a5e --- /dev/null +++ b/templates/Grav/0/docker-compose.yml @@ -0,0 +1,31 @@ +version: '2' + +services: + grav: + image: williammiceli/grav:latest-git + dns: # Using Cloudflare DNS + - 1.1.1.1 + - 1.0.0.1 + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + traefik.enable: true + ### Start Grav Segment + traefik.frontend.entryPoints: http,https + traefik.frontend.headers.forceSTSHeader: true + traefik.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information) + traefik.frontend.headers.SSLRedirect: true + traefik.frontend.headers.STSPreload: true + traefik.frontend.headers.STSSeconds: 15552000 + traefik.frontend.passHostHeader: true + traefik.frontend.rule: Host:${TRAEFIK_HOST} + traefik.port: "80" + ### End Grav Segment + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + - /Rancher/${DATA_DIR}/Backups:/var/www/backup:rw # Backups + - /Rancher/${DATA_DIR}/Images:/var/www/images:rw # Images \ No newline at end of file diff --git a/templates/Grav/0/rancher-compose.yml b/templates/Grav/0/rancher-compose.yml new file mode 100644 index 0000000..c869807 --- /dev/null +++ b/templates/Grav/0/rancher-compose.yml @@ -0,0 +1,33 @@ +version: '2' +catalog: + name: Grav + version: latest + # description: + # minimum_rancher_version: + # maximum_rancher_version: + # upgrade_from: + questions: + + - variable: "HOST_LABEL" + label: "Host Label Key/Value Pair" + description: | + The Label Key/Value pair of the host which containers should be deployed + default: "host.id=Host1" + required: false + type: string + + - variable: "TRAEFIK_HOST" + label: "Public Host Domain" + description: | + The host that Traefik will use to provide public access. + default: "subdomain.domain.tld" + required: true + type: string + + - variable: "DATA_DIR" + label: "Data Directory" + description: | + The directory to store persistent data for the stack. + default: "Personal/Grav" + required: true + type: string diff --git a/templates/Grav/config.yml b/templates/Grav/config.yml new file mode 100644 index 0000000..ce691b9 --- /dev/null +++ b/templates/Grav/config.yml @@ -0,0 +1,8 @@ +name: Grav +description: | + Status: EXPERIMENTAL +version: latest +# category: +maintainer: WilliamMiceli +# license: +# projectURL: \ No newline at end of file diff --git a/templates/Jellyfin/0/README.md b/templates/Jellyfin/0/README.md new file mode 100644 index 0000000..ec08986 --- /dev/null +++ b/templates/Jellyfin/0/README.md @@ -0,0 +1 @@ +# Jellyfin \ No newline at end of file diff --git a/templates/Jellyfin/0/docker-compose.yml b/templates/Jellyfin/0/docker-compose.yml new file mode 100644 index 0000000..7406fde --- /dev/null +++ b/templates/Jellyfin/0/docker-compose.yml @@ -0,0 +1,32 @@ +version: '2' + +services: + jellyfin: + image: jellyfin/jellyfin:latest + dns: # Using Cloudflare DNS + - 1.1.1.1 + - 1.0.0.1 + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + traefik.enable: true + ### Start Web Segment + traefik.frontend.entryPoints: http,https + traefik.frontend.headers.forceSTSHeader: true + traefik.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information) + traefik.frontend.headers.SSLRedirect: true + traefik.frontend.headers.STSPreload: true + traefik.frontend.headers.STSSeconds: 15552000 + traefik.frontend.passHostHeader: true + traefik.frontend.rule: Host:${TRAEFIK_HOST} + traefik.port: "8096" + ### End Web Segment + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + - /RancherCattle/${DATA_DIR}/Cache:/cache # Cache files + - /RancherCattle/${DATA_DIR}/Configuration:/config # Configuration files + - /RancherCattle/${DATA_DIR}/Media:/mnt/library # Media files \ No newline at end of file diff --git a/templates/Jellyfin/0/rancher-compose.yml b/templates/Jellyfin/0/rancher-compose.yml new file mode 100644 index 0000000..dad7898 --- /dev/null +++ b/templates/Jellyfin/0/rancher-compose.yml @@ -0,0 +1,33 @@ +version: '2' +catalog: + name: Jellyfin + version: latest + # description: + # minimum_rancher_version: + # maximum_rancher_version: + # upgrade_from: + questions: + + - variable: "HOST_LABEL" + label: "Host Label Key/Value Pair" + description: | + The Label Key/Value pair of the host which containers should be deployed + default: "host.id=Host1" + required: false + type: string + + - variable: "TRAEFIK_HOST" + label: "Public Host Domain" + description: | + The host that Traefik will use to provide public access. + default: "subdomain.domain.tld" + required: true + type: string + + - variable: "DATA_DIR" + label: "Data Directory" + description: | + The directory to store persistent data for the stack. + default: "Personal/Jellyfin" + required: true + type: string \ No newline at end of file diff --git a/templates/Jellyfin/config.yml b/templates/Jellyfin/config.yml new file mode 100644 index 0000000..1020046 --- /dev/null +++ b/templates/Jellyfin/config.yml @@ -0,0 +1,8 @@ +name: Jellyfin +description: | + Status: NOT READY +version: latest +# category: +maintainer: WilliamMiceli +# license: +# projectURL: \ No newline at end of file diff --git a/templates/Pydio-Cells/0/README.md b/templates/Pydio-Cells/0/README.md new file mode 100644 index 0000000..a29f50f --- /dev/null +++ b/templates/Pydio-Cells/0/README.md @@ -0,0 +1,6 @@ +# Pydio Cells + +As of 2019/01/22: +Cells seems UNSTABLE +Was only able to get it started once, but didn't even make it all the way through installing. +Will probably come back to this at a later date, once they've worked out all the issues. \ No newline at end of file diff --git a/templates/Pydio-Cells/0/docker-compose.yml b/templates/Pydio-Cells/0/docker-compose.yml new file mode 100644 index 0000000..86201ec --- /dev/null +++ b/templates/Pydio-Cells/0/docker-compose.yml @@ -0,0 +1,57 @@ +version: '2' + +services: + cells: + image: pydio/cells:latest + dns: # Using Cloudflare DNS + - 1.1.1.1 + - 1.0.0.1 + environment: + CELLS_BIND: "localhost:80" + CELLS_EXTERNAL: "${TRAEFIK_HOST}:443" + CELLS_NO_SSL: 0 + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + traefik.enable: true + ### Start Web Segment + traefik.web.frontend.entryPoints: http,https + traefik.web.frontend.headers.forceSTSHeader: true + traefik.web.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information) + traefik.web.frontend.headers.SSLRedirect: true + traefik.web.frontend.headers.STSPreload: true + traefik.web.frontend.headers.STSSeconds: 15552000 + traefik.web.frontend.rule: Host:${TRAEFIK_HOST} + traefik.web.port: "80" + ### End Web Segment + links: + - mysql + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + - /RancherCattle/${DATA_DIR}:/root/.config/pydio/cells + mysql: + image: mysql:5.7 + command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci] + dns: # Using Cloudflare DNS + - 1.1.1.1 + - 1.0.0.1 + environment: + MYSQL_DATABASE: cells_db + MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS} + MYSQL_USER: cells_user + MYSQL_PASSWORD: ${DB_USER_PASS} + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + traefik.enable: false + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + - /RancherCattle/${DATA_DIR}/Database:/var/lib/mysql diff --git a/templates/Pydio-Cells/0/rancher-compose.yml b/templates/Pydio-Cells/0/rancher-compose.yml new file mode 100644 index 0000000..0656229 --- /dev/null +++ b/templates/Pydio-Cells/0/rancher-compose.yml @@ -0,0 +1,49 @@ +version: '2' +catalog: + name: Pydio Cells + version: latest + # description: + # minimum_rancher_version: + # maximum_rancher_version: + # upgrade_from: + questions: + + - variable: "HOST_LABEL" + label: "Host Label Key/Value Pair" + description: | + The Label Key/Value pair on the host which containers should be deployed + default: "host.id=Host1" + required: false + type: string + + - variable: "TRAEFIK_HOST" + label: "Public Host Domain" + description: | + The host that Traefik will use to provide public access. + default: "subdomain.domain.tld" + required: true + type: string + + - variable: "DB_ROOT_PASS" + label: "Database Root Password" + description: | + A secure password to be used by the "root" database user. + # default: + required: true + type: password + + - variable: "DB_USER_PASS" + label: "Database User Password" + description: | + A secure password to be used by the "cells_user" database user. + # default: + required: true + type: password + + - variable: "DATA_DIR" + label: "Data Directory" + description: | + The directory to store persistent data for the stack. + default: "Personal/Pydio-Cells" + required: true + type: string \ No newline at end of file diff --git a/templates/Pydio-Cells/config.yml b/templates/Pydio-Cells/config.yml new file mode 100644 index 0000000..cf045cd --- /dev/null +++ b/templates/Pydio-Cells/config.yml @@ -0,0 +1,8 @@ +name: Pydio Cells +description: | + Status: EXPERIMENTAL +version: latest +# category: +maintainer: WilliamMiceli +# license: +# projectURL: \ No newline at end of file diff --git a/templates/Turtl/0/README.md b/templates/Turtl/0/README.md deleted file mode 100644 index 874cefe..0000000 --- a/templates/Turtl/0/README.md +++ /dev/null @@ -1 +0,0 @@ -# Turtl \ No newline at end of file diff --git a/templates/Turtl/0/docker-compose.yml b/templates/Turtl/0/docker-compose.yml deleted file mode 100644 index 3a129a4..0000000 --- a/templates/Turtl/0/docker-compose.yml +++ /dev/null @@ -1,34 +0,0 @@ -turtl-api-data: - labels: - io.rancher.container.start_once: 'true' - entrypoint: - - /bin/true - image: busybox - volumes: - - /opt/api/uploads - - /var/lib/rethinkdb/instance1 - -turtl-api: - ports: - - 8181:8181/tcp - environment: - DISPLAY_ERRORS: ${DISPLAY_ERRORS} - FQDN: ${FQDN} - SITE_URL: ${SITE_URL} - LOCAL_UPLOAD_URL: ${LOCAL_UPLOAD_URL} - LOCAL_UPLOAD_PATH: ${LOCAL_UPLOAD_PATH} - AWS_S3_TOKEN: ${AWS_S3_TOKEN} - ADMIN_EMAIL: ${ADMIN_EMAIL} - EMAIL_FROM: ${EMAIL_FROM} - SMTP_USER: ${SMTP_USER} - SMTP_PASS: ${SMTP_PASS} - DEFAULT_STORAGE_LIMIT: ${DEFAULT_STORAGE_LIMIT} - STORAGE_INVITE_CREDIT: ${STORAGE_INVITE_CREDIT} - image: webofmars/turtl-docker:latest - stdin_open: true - tty: true - labels: - io.rancher.container.pull_image: always - io.rancher.sidekicks: turtl-api-data - volumes_from: - - turtl-api-data \ No newline at end of file diff --git a/templates/Turtl/0/rancher-compose.yml b/templates/Turtl/0/rancher-compose.yml deleted file mode 100644 index 5bc83d3..0000000 --- a/templates/Turtl/0/rancher-compose.yml +++ /dev/null @@ -1,110 +0,0 @@ -version: '2' -catalog: - name: Turtl - version: latest - # description: - # minimum_rancher_version: - # maximum_rancher_version: - # upgrade_from: - questions: - - - variable: "DISPLAY_ERRORS" - descrition: "Display errors" - label: "Display errors: " - required: false - default: "t" - type: "string" - - - variable: "FQDN" - description: "Fully Qualified Domain Name (ex: 'notes.example.com')." - label: "fqdn" - required: true - default: "turtl.local" - type: "string" - - - variable: "SITE_URL" - description: "The uri used to access the turtl api" - label: "site url" - required: true - default: "http://turtl.local" - type: "string" - - - variable: "LOCAL_UPLOAD_PATH" - description: "The local path of the uploaded content." - label: "uploads local path" - required: false - default: "" - type: "string" - - - variable: "LOCAL_UPLOAD_URL" - description: "The urls used to retrieve uploaded content. Must be set if you change LOCAL_UPLOAD_PATH. (ex: http://turtl.local)" - label: "local upload url" - required: false - default: "" - type: "string" - - - variable: "AWS_S3_TOKEN" - description: | - Amazon Web Services S3 token. Used only if you use S3 as a storage backend. ex : (:token '' - secret '' - bucket '' - endpoint 'https://s3.amazonaws.com') - label: "AWS S3 token" - required: false - default: "" - type: "string" - - - variable: "ADMIN_EMAIL" - description: "email adresse of administrator ex: admin@example.com" - label: "Admin e-mail" - required: false - default: "" - type: "string" - - - variable: "EMAIL_FROM" - description: "The e-mail adress used to send the e-mail from turtl to users." - label: "e-mail from" - required: false - default: "" - type: "string" - - - variable: "SMTP_USER" - description: "The user used to authenticate to the smtp server. Can be blank." - label: "smtp user" - required: false - default: "" - type: "string" - - - variable: "SMTP_PASS" - description: "The password used to authenticate to the smtp server. Can be blank." - label: "smtp password" - required: false - default: "" - type: "string" - - - variable: "STORAGE_INVITE_CREDIT" - description: "The number of MB a user gain when he invites someone" - label: "storage invite credit" - required: false - default: "" - type: "int" - - - variable: "DEFAULT_STORAGE_LIMIT" - description: "Maximum storage space (in MB) that can be used by a single user (ex: 1000)" - label: "Default Storage Limit" - required: false - default: "" - type: "int" - -turtl-api-data: - scale: 1 -turtl-api: - scale: 1 - health_check: - port: 8181 - interval: 2000 - initializing_timeout: 300000 - unhealthy_threshold: 10 - strategy: recreate - response_timeout: 2000 - healthy_threshold: 2 \ No newline at end of file diff --git a/templates/Turtl/catalogIcon-turtl.svg b/templates/Turtl/catalogIcon-turtl.svg deleted file mode 100644 index b0a8b87..0000000 --- a/templates/Turtl/catalogIcon-turtl.svg +++ /dev/null @@ -1 +0,0 @@ -catalogIcon-turtlTURTLW \ No newline at end of file diff --git a/templates/Turtl/config.yml b/templates/Turtl/config.yml deleted file mode 100644 index 40a4c5a..0000000 --- a/templates/Turtl/config.yml +++ /dev/null @@ -1,8 +0,0 @@ -name: Turtl -description: | - Status: NOT READY -# version: -category: Productivity -maintainer: WilliamMiceli -# license: -# projectURL: https://github.com/webofmars/turtl-docker \ No newline at end of file diff --git a/templates/YOURLS/0/README.md b/templates/YOURLS/0/README.md new file mode 100644 index 0000000..e762fd6 --- /dev/null +++ b/templates/YOURLS/0/README.md @@ -0,0 +1,5 @@ +# YOURLS + +## Pre-Requisites + +* Traefik deployed \ No newline at end of file diff --git a/templates/YOURLS/0/docker-compose.yml b/templates/YOURLS/0/docker-compose.yml new file mode 100644 index 0000000..0fbdb04 --- /dev/null +++ b/templates/YOURLS/0/docker-compose.yml @@ -0,0 +1,57 @@ +version: '2' + +services: + yourls: + image: yourls:apache + dns: # Using Cloudflare DNS + - 1.1.1.1 + - 1.0.0.1 + environment: + YOURLS_DB_HOST: mysql + YOURLS_DB_NAME: yourls_db + YOURLS_DB_USER: yourls_user + YOURLS_DB_PASS: ${DB_USER_PASS} + YOURLS_SITE: https://${TRAEFIK_HOST} + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + traefik.enable: true + ### Start Web Segment + traefik.web.frontend.entryPoints: http,https + traefik.web.frontend.headers.forceSTSHeader: true + traefik.web.frontend.headers.referrerPolicy: no-referrer # Security enhancement (Prevents leaking of referer information) + traefik.web.frontend.headers.SSLRedirect: true + traefik.web.frontend.headers.STSPreload: true + traefik.web.frontend.headers.STSSeconds: 15552000 + traefik.web.frontend.rule: Host:${TRAEFIK_HOST} + traefik.web.port: "80" + ### End Web Segment + links: + - mysql + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + mysql: + image: mysql:5 + dns: # Using Cloudflare DNS + - 1.1.1.1 + - 1.0.0.1 + environment: + MYSQL_DATABASE: yourls_db + MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS} + MYSQL_USER: yourls_user + MYSQL_PASSWORD: ${DB_USER_PASS} + labels: + io.rancher.container.pull_image: always + {{- if .Values.HOST_LABEL}} + io.rancher.scheduler.affinity:host_label: ${HOST_LABEL} + {{- end}} + traefik.enable: false + restart: on-failure + volumes: + - /etc/localtime:/etc/localtime:ro # Syncronize time of container with the host system + - /etc/timezone:/etc/timezone:ro # Syncronize timezone of container with the host system + - /RancherCattle/${DATA_DIR}/Database:/var/lib/mysql diff --git a/templates/YOURLS/0/rancher-compose.yml b/templates/YOURLS/0/rancher-compose.yml new file mode 100644 index 0000000..d5e9278 --- /dev/null +++ b/templates/YOURLS/0/rancher-compose.yml @@ -0,0 +1,49 @@ +version: '2' +catalog: + name: YOURLS + version: latest + # description: + # minimum_rancher_version: + # maximum_rancher_version: + # upgrade_from: + questions: + + - variable: "HOST_LABEL" + label: "Host Label Key/Value Pair" + description: | + The Label Key/Value pair on the host which containers should be deployed + default: "host.id=Host1" + required: false + type: string + + - variable: "TRAEFIK_HOST" + label: "Public Host Domain" + description: | + The host that Traefik will use to provide public access. + default: "subdomain.domain.tld" + required: true + type: string + + - variable: "DB_ROOT_PASS" + label: "Database Root Password" + description: | + A secure password to be used by the "root" database user. + # default: + required: true + type: password + + - variable: "DB_USER_PASS" + label: "Database User Password" + description: | + A secure password to be used by the "yourls_user" database user. + # default: + required: true + type: password + + - variable: "DATA_DIR" + label: "Data Directory" + description: | + The directory to store persistent data for the stack. + default: "Personal/YOURLS" + required: true + type: string \ No newline at end of file diff --git a/templates/YOURLS/config.yml b/templates/YOURLS/config.yml new file mode 100644 index 0000000..1a4dafd --- /dev/null +++ b/templates/YOURLS/config.yml @@ -0,0 +1,8 @@ +name: YOURLS +description: | + Status: EXPERIMENTAL +version: latest +# category: +maintainer: WilliamMiceli +# license: +# projectURL: \ No newline at end of file