mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-06-19 13:59:15 +02:00
added Joal
This commit is contained in:
@@ -1,11 +1,16 @@
|
|||||||
ARG BUILD_FROM
|
ARG BUILD_FROM
|
||||||
FROM $BUILD_FROM
|
FROM $BUILD_FROM
|
||||||
|
|
||||||
# Copy root filesystem
|
|
||||||
COPY rootfs /
|
|
||||||
|
|
||||||
# MOFIFY DATA PATH
|
RUN mkdir -p /joal \
|
||||||
RUN sed -i "s|config|share/transmission|g" /etc/services.d/transmission/run \
|
&& curl -L -s \
|
||||||
&& sed -i "s|config|share/transmission|g" /etc/cont-init.d/20-config
|
"https://github.com/anthonyraymond/joal/releases/download/2.1.24/joal.tar.gz" \
|
||||||
|
| tar zxvf - -C /joal \
|
||||||
|
&& chown -R $(id -u):$(id -g) /joal \
|
||||||
|
&& rm -fr \
|
||||||
|
/tmp/*
|
||||||
|
|
||||||
VOLUME [ "/data" ]
|
VOLUME /data
|
||||||
|
|
||||||
|
CMD [ "--joal-conf=/joal" ]
|
||||||
|
VOLUME [ "/data" ]
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Home assistant add-on: Transmission
|
# Home assistant add-on: Joal
|
||||||
![Supports aarch64 Architecture][aarch64-shield] ![Supports amd64 Architecture][amd64-shield] ![Supports armhf Architecture][armhf-shield] ![Supports armv7 Architecture][armv7-shield]
|
![Supports aarch64 Architecture][aarch64-shield] ![Supports amd64 Architecture][amd64-shield] ![Supports armhf Architecture][armhf-shield] ![Supports armv7 Architecture][armv7-shield]
|
||||||
|
|
||||||
## About
|
## About
|
||||||
|
|
||||||
Transmission is a bittorrent client.
|
An open source command line RatioMaster with WebUI.
|
||||||
This addon is based on the [docker image](https://github.com/linuxserver/transmission) from linuxserver.io.
|
This addon is based on the [docker image](https://hub.docker.com/r/anthonyraymond/joal) from Anthony Raymond.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
@@ -14,23 +14,15 @@ comparison to installing any other Hass.io add-on.
|
|||||||
1. [Add my Hass.io add-ons repository][repository] to your Hass.io instance.
|
1. [Add my Hass.io add-ons repository][repository] to your Hass.io instance.
|
||||||
1. Install this add-on.
|
1. Install this add-on.
|
||||||
1. Click the `Save` button to store your configuration.
|
1. Click the `Save` button to store your configuration.
|
||||||
|
1. Make sure that the two ports are open on your router
|
||||||
1. Start the add-on.
|
1. Start the add-on.
|
||||||
1. Check the logs of the add-on to see if everything went well.
|
1. Check the logs of the add-on to see if everything went well.
|
||||||
1. Carefully configure the add-on to your preferences, see the official documentation for for that.
|
1. Carefully configure the add-on to your preferences, see the official documentation for for that.
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
Options :
|
Webui can be found at `<your-ip>:8081/joal/ui`.
|
||||||
- "download_dir": "/share/downloads" # where the files will be saved after download
|
You'll need to open the options and encode the secret token lrMY24Byhx
|
||||||
- "incomplete_dir": "/share/incomplete" # where the files are saved during download
|
|
||||||
- "localdisks": ["sda1"] # list of devices to mount, '' if none
|
|
||||||
- "networkdisks": "<//SERVER/SHARE>" # list of smbv2/3 servers to mount, '' if none
|
|
||||||
- "cifsusername": "<username>" # smb username
|
|
||||||
- "cifspassword": "<password>" # smb password
|
|
||||||
|
|
||||||
Complete transmission options are in /share/transmission (make sure addon is stopped before modifying it as Transmission writes its ongoing values when stopping and could erase your changes)
|
|
||||||
|
|
||||||
Webui can be found at `<your-ip>:9091`.
|
|
||||||
|
|
||||||
[repository]: https://github.com/alexbelgium/hassio-addons
|
[repository]: https://github.com/alexbelgium/hassio-addons
|
||||||
[aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg
|
[aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
"armv7": "anthonyraymond/joal:2.1.24-arm",
|
"armv7": "anthonyraymond/joal:2.1.24-arm",
|
||||||
"armhf": "anthonyraymond/joal:2.1.24-arm",
|
"armhf": "anthonyraymond/joal:2.1.24-arm",
|
||||||
"aarch64": "anthonyraymond/joal:2.1.24-arm64",
|
"aarch64": "anthonyraymond/joal:2.1.24-arm64",
|
||||||
"amd64": "anthonyraymond/joal:2.1.24-amd64",
|
"amd64": "anthonyraymond/joal:2.1.24-amd64"
|
||||||
},
|
},
|
||||||
"squash": false,
|
"squash": false,
|
||||||
"args": {}
|
"args": {}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"name": "Joal Desktop test",
|
"name": "Joal Desktop test",
|
||||||
"version": "2.1.24",
|
"version": "2.1.24",
|
||||||
"slug": "joal",
|
"slug": "joal",
|
||||||
"description": "Joal Desktop docker".
|
"description": "An open source command line RatioMaster with WebUI",
|
||||||
"url": "https://github.com/alexbelgium/hassio-addons/tree/master/joal",
|
"url": "https://github.com/alexbelgium/hassio-addons/tree/master/joal",
|
||||||
"startup": "services",
|
"startup": "services",
|
||||||
"arch": [
|
"arch": [
|
||||||
@@ -12,39 +12,25 @@
|
|||||||
"armhf"
|
"armhf"
|
||||||
],
|
],
|
||||||
"ports": {
|
"ports": {
|
||||||
"1234/tcp": 1234
|
"49152/tcp": 49152,
|
||||||
|
"8081/tcp": 8081
|
||||||
},
|
},
|
||||||
"ports_description": {
|
"ports_description": {
|
||||||
"1234/tcp": "Web UI port (required),
|
"49152/tcp": "torrent port - hardcoded, can't change",
|
||||||
|
"8081/tcp": "Web UI port - hardcoded, can't change"
|
||||||
},
|
},
|
||||||
"map": [
|
"webui": "http://[HOST]:[PORT:8081]/joal/ui",
|
||||||
"share:rw"
|
|
||||||
],
|
|
||||||
"webui": "http://[HOST]:[PORT:1234]",
|
|
||||||
"boot": "auto",
|
"boot": "auto",
|
||||||
|
"host_network": true,
|
||||||
"environment": {
|
"environment": {
|
||||||
"PUID": 0,
|
"spring.main.web-environment": true,
|
||||||
"PGID": 0
|
"joal.iframe.enabled":false,
|
||||||
|
"joal.ui.path.prefix": "joal",
|
||||||
|
"joal.ui.secret-token": "lrMY24Byhx",
|
||||||
|
"server.port": 8081
|
||||||
},
|
},
|
||||||
"options": {
|
"options": {
|
||||||
"PUID": 0,
|
},
|
||||||
"PGID": 0,
|
|
||||||
"download_dir": "/share/downloads",
|
|
||||||
"incomplete_dir": "/share/incomplete",
|
|
||||||
"localdisks": ["sda1"],
|
|
||||||
"networkdisks": "//SERVER/SHARE",
|
|
||||||
"cifsusername": "username",
|
|
||||||
"cifspassword": "password"
|
|
||||||
},
|
|
||||||
"schema": {
|
"schema": {
|
||||||
"PUID": "int",
|
|
||||||
"PGID": "int",
|
|
||||||
"TZ": "str?",
|
|
||||||
"download_dir": "str",
|
|
||||||
"incomplete_dir": "str",
|
|
||||||
"localdisks": ["str?"],
|
|
||||||
"networkdisks": "str?",
|
|
||||||
"cifsusername": "str?",
|
|
||||||
"cifspassword": "str?"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
joal/icon.png
BIN
joal/icon.png
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 12 KiB |
BIN
joal/logo.png
BIN
joal/logo.png
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 12 KiB |
@@ -1,30 +0,0 @@
|
|||||||
#!/usr/bin/with-contenv bashio
|
|
||||||
# ==============================================================================
|
|
||||||
|
|
||||||
declare CONFIG
|
|
||||||
declare incomplete_bool
|
|
||||||
declare download_dir
|
|
||||||
declare incomplete_dir
|
|
||||||
|
|
||||||
if ! bashio::fs.directory_exists '/share/transmission'; then
|
|
||||||
mkdir '/share/transmission'
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! bashio::fs.file_exists '/share/transmission/settings.json'; then
|
|
||||||
echo "{}" > /share/transmission/settings.json
|
|
||||||
fi
|
|
||||||
|
|
||||||
CONFIG=$(</share/transmission/settings.json)
|
|
||||||
|
|
||||||
download_dir=$(bashio::config 'download_dir')
|
|
||||||
incomplete_dir=$(bashio::config 'incomplete_dir')
|
|
||||||
|
|
||||||
# Defaults
|
|
||||||
CONFIG=$(bashio::jq "${CONFIG}" ".\"incomplete-dir\"=\"${incomplete_dir}\"")
|
|
||||||
CONFIG=$(bashio::jq "${CONFIG}" ".\"download-dir\"=\"${download_dir}\"")
|
|
||||||
CONFIG=$(bashio::jq "${CONFIG}" ".\"incomplete-dir-enabled\"=true")
|
|
||||||
CONFIG=$(bashio::jq "${CONFIG}" ".\"rpc-whitelist-enabled\"=false")
|
|
||||||
CONFIG=$(bashio::jq "${CONFIG}" ".\"rpc-host-whitelist-enabled\"=false")
|
|
||||||
CONFIG=$(bashio::jq "${CONFIG}" ".\"bind-address-ipv4\"=\"0.0.0.0\"")
|
|
||||||
|
|
||||||
echo "${CONFIG}" > /share/transmission/settings.json
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
#!/usr/bin/with-contenv bashio
|
|
||||||
bashio::log.info 'Mounting external hdd...'
|
|
||||||
|
|
||||||
# Mount local Share if configured and if Protection Mode is active
|
|
||||||
if bashio::config.has_value 'localdisks'; then
|
|
||||||
MOREDISKS=$(bashio::config 'localdisks')
|
|
||||||
bashio::log.info "Local Disks mounting.. ${MOREDISKS}" && \
|
|
||||||
for disk in $MOREDISKS
|
|
||||||
do
|
|
||||||
bashio::log.info "Mount ${disk}"
|
|
||||||
mkdir -p /share/$disk && \
|
|
||||||
if [ ! -d /share/$disk ]; then
|
|
||||||
echo "Creating /share/$disk"
|
|
||||||
mkdir -p /share/$disk
|
|
||||||
chown -R abc:abc /share/$disk
|
|
||||||
fi
|
|
||||||
mount /dev/$disk /share/$disk && \
|
|
||||||
bashio::log.info "Success!"
|
|
||||||
done || \
|
|
||||||
bashio::log.warning "Protection mode is ON. Unable to mount local drives!"
|
|
||||||
fi
|
|
||||||
Reference in New Issue
Block a user