Compare commits
94 Commits
410df50778
...
codex/fix-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2ffe78d610 | ||
|
|
cbf2ecb023 | ||
|
|
5476bd37f7 | ||
|
|
4e07681e96 | ||
|
|
4d8ccbca77 | ||
|
|
91d153f584 | ||
|
|
b5da771ba3 | ||
|
|
014dd33231 | ||
|
|
2f9721e0d7 | ||
|
|
c44737b118 | ||
|
|
bfce7f4ebd | ||
|
|
f6872bb37f | ||
|
|
4283f1dbed | ||
|
|
9236d0d85c | ||
|
|
b20ad6a1ba | ||
|
|
8c149a55d7 | ||
|
|
1d21c8b172 | ||
|
|
242d72a115 | ||
|
|
6ccf9e701a | ||
|
|
ecfe98367f | ||
|
|
0c27531e5a | ||
|
|
ee3d97cf21 | ||
|
|
81853f7a1c | ||
|
|
a56199c560 | ||
|
|
67b6483ab4 | ||
|
|
27b88be483 | ||
|
|
a00b488713 | ||
|
|
31221c5d9e | ||
|
|
3f0660f117 | ||
|
|
6d28b63113 | ||
|
|
6e43a8a777 | ||
|
|
7134bd92d7 | ||
|
|
20c1b75d43 | ||
|
|
80b058cab3 | ||
|
|
c79f983beb | ||
|
|
5b67f3ab80 | ||
|
|
956efdd006 | ||
|
|
f777bd936b | ||
|
|
7de71f92d8 | ||
|
|
ddbe6df5c6 | ||
|
|
e6748aa146 | ||
|
|
8a40d1e379 | ||
|
|
cf084e1738 | ||
|
|
9c02da1307 | ||
|
|
f76e1e34e4 | ||
|
|
9893ad41dc | ||
|
|
ae6a0689fe | ||
|
|
2dae43fb09 | ||
|
|
8a0f15413c | ||
|
|
e600a9d178 | ||
|
|
f7bc2ab427 | ||
|
|
99cef7283f | ||
|
|
587c9b8709 | ||
|
|
4ce3b460fd | ||
|
|
0916466849 | ||
|
|
ffdcc54dec | ||
|
|
af461c5f71 | ||
|
|
e476bddd03 | ||
|
|
db417e78d6 | ||
|
|
0a8637d90c | ||
|
|
01a87f3d3d | ||
|
|
9dd66d0977 | ||
|
|
8efc883ab2 | ||
|
|
bc4f9528fe | ||
|
|
911fb73b68 | ||
|
|
ce71f1a9b6 | ||
|
|
c21896c6d6 | ||
|
|
f275dbb139 | ||
|
|
16d7fbcdf9 | ||
|
|
8043837ba4 | ||
|
|
ec2ee2f688 | ||
|
|
bb9530b836 | ||
|
|
ad1688b4a2 | ||
|
|
a1f774cf10 | ||
|
|
89b4cdebef | ||
|
|
367410d2b7 | ||
|
|
c591203a70 | ||
|
|
9dfafc0406 | ||
|
|
a91ff1f91f | ||
|
|
367a42230b | ||
|
|
1a3dc1e7a9 | ||
|
|
ab9e5ae198 | ||
|
|
7779197928 | ||
|
|
ef0b77740a | ||
|
|
ba822316d6 | ||
|
|
756d3b86ba | ||
|
|
63b9e1c1d6 | ||
|
|
9910d6355c | ||
|
|
af86466352 | ||
|
|
5f80439cb0 | ||
|
|
7414ff1af2 | ||
|
|
df6175e1ec | ||
|
|
353a5668a3 | ||
|
|
c16e84676d |
14
.github/stargazer_countries.csv
vendored
@@ -27,6 +27,7 @@ ATOMIC09,Thailand
|
||||
ATechAdventurer,United States
|
||||
Acid-base,
|
||||
Actpohomoc,Ukraine
|
||||
Addonniss,
|
||||
Adrian-Rosoga,United Kingdom
|
||||
Aersaud,United States
|
||||
Ag4m3mN0n,
|
||||
@@ -494,6 +495,7 @@ NoFace3D,
|
||||
Noob25930,
|
||||
NuclearTruck,
|
||||
Oberknecht,Germany
|
||||
OdorDecoder,
|
||||
Omega7572,
|
||||
Omni-Engineering,
|
||||
OneByJorah,
|
||||
@@ -701,6 +703,7 @@ UplandJacob,United States
|
||||
VadimOmsk,
|
||||
VfBfoerst,
|
||||
ViPeR5000,Portugal
|
||||
Vikinge,
|
||||
ViorelMocanu,Romania
|
||||
VladDBA,Romania
|
||||
Vladislaf70,
|
||||
@@ -780,6 +783,7 @@ alexballow,France
|
||||
alexdelprete,Italy
|
||||
alexgt9,Spain
|
||||
alexh3o,
|
||||
alexit190,
|
||||
alexmalinoshevsky,
|
||||
alexneo2003,
|
||||
alfredolvera,
|
||||
@@ -831,6 +835,7 @@ arpit-mehra,
|
||||
artemave,France
|
||||
artemdanielov,
|
||||
arvin-chou,
|
||||
arzuino,
|
||||
asaez85,
|
||||
ash286,
|
||||
ashayh,
|
||||
@@ -1724,6 +1729,7 @@ megawubs,Netherlands
|
||||
meska,
|
||||
methbkts,France
|
||||
mevlutdemirbas,
|
||||
mezarkabul,
|
||||
mgeeky,Poland
|
||||
mhabing,Netherlands
|
||||
mhdevlab,
|
||||
@@ -1988,6 +1994,7 @@ qun-media,
|
||||
rJUUSO,
|
||||
raphael1688,
|
||||
rapjul,
|
||||
rascasseuk,
|
||||
raul811,
|
||||
raulpetruta,Romania
|
||||
rawpie2,
|
||||
@@ -2051,7 +2058,9 @@ rtmlp,
|
||||
rucas,United States
|
||||
rvbg,Germany
|
||||
rwagnervm,Brazil
|
||||
rxaaron,
|
||||
s-e-t-h,United Kingdom
|
||||
s7iceexe,
|
||||
sachavg,
|
||||
saddukar,
|
||||
sahi-hub,
|
||||
@@ -2062,6 +2071,7 @@ sambarlick,
|
||||
sambhavbharvesh,
|
||||
samdeleu,Belgium
|
||||
samimasad,
|
||||
samsttx,
|
||||
samuelthng,Singapore
|
||||
samzwiches,
|
||||
sanandan,
|
||||
@@ -2164,6 +2174,7 @@ stef-th,
|
||||
stefangries,
|
||||
steini95,
|
||||
steinmaerivoet,Belgium
|
||||
stenvanhouwelingen,
|
||||
stephenjharrington,
|
||||
stepping-razor,Czechia
|
||||
stetho,United Kingdom
|
||||
@@ -2208,6 +2219,7 @@ tbrasser,Netherlands
|
||||
tdn131,
|
||||
tdubu,
|
||||
tech2mar,Germany
|
||||
techniker,Germany
|
||||
techris45,United States
|
||||
tednilsen,Norway
|
||||
tehaiks,Poland
|
||||
@@ -2262,6 +2274,7 @@ tonyliu9189,
|
||||
toot,
|
||||
torb75,
|
||||
toshi38,
|
||||
tphummel,United States
|
||||
tplas,United States
|
||||
tragut,
|
||||
travail2402,
|
||||
@@ -2365,6 +2378,7 @@ x1991410d,
|
||||
xPakrikx,
|
||||
xamrex,
|
||||
xeberth,
|
||||
xelemorf,
|
||||
xingfeng7788,
|
||||
xl0rnx,Germany
|
||||
xneo1,Greece
|
||||
|
||||
|
BIN
.github/stargazer_map.png
vendored
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 61 KiB |
BIN
.github/stats.png
vendored
|
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 2.2 KiB |
BIN
.github/stats_addons.png
vendored
|
Before Width: | Height: | Size: 9.0 KiB After Width: | Height: | Size: 4.1 KiB |
@@ -7,12 +7,15 @@ set -e
|
||||
# ======================================================================
|
||||
|
||||
if ! bashio::supervisor.ping 2>/dev/null; then
|
||||
# Source standalone bashio first to provide function definitions
|
||||
if [ -f /usr/local/lib/bashio-standalone.sh ]; then
|
||||
source /usr/local/lib/bashio-standalone.sh
|
||||
fi
|
||||
bashio::log.blue '-----------------------------------------------------------'
|
||||
bashio::log.blue "Starting addon in standalone mode (no Supervisor)"
|
||||
bashio::log.blue "Version : ${BUILD_VERSION:-1.0}"
|
||||
bashio::log.blue "Config source: ENV + /data/options.json"
|
||||
bashio::log.blue '-----------------------------------------------------------'
|
||||
source /usr/local/lib/bashio-standalone.sh
|
||||
cp -rf /usr/local/lib/bashio-standalone.sh /usr/bin/bashio
|
||||
grep -rlZ "^#!.*bashio" /etc |
|
||||
while IFS= read -r -d '' f; do
|
||||
|
||||
@@ -47,9 +47,11 @@ test_mount() {
|
||||
return 0
|
||||
fi
|
||||
|
||||
if [[ "$FSTYPE" == "cifs" && "$MOUNTOPTIONS" != *"noserverino"* ]]; then
|
||||
local orig_mountoptions="$MOUNTOPTIONS"
|
||||
|
||||
if [[ "$FSTYPE" == "cifs" && "$orig_mountoptions" != *"noserverino"* ]]; then
|
||||
echo "... retrying mount with noserverino"
|
||||
MOUNTOPTIONS="${MOUNTOPTIONS},noserverino"
|
||||
MOUNTOPTIONS="${orig_mountoptions},noserverino"
|
||||
|
||||
umount "$mountpoint" 2>/dev/null || true
|
||||
if mount_drive "$MOUNTOPTIONS"; then
|
||||
@@ -60,9 +62,9 @@ test_mount() {
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "$FSTYPE" == "cifs" && "$MOUNTOPTIONS" != *"noperm"* ]]; then
|
||||
if [[ "$FSTYPE" == "cifs" && "$orig_mountoptions" != *"noperm"* ]]; then
|
||||
echo "... retrying mount with noperm"
|
||||
MOUNTOPTIONS="${MOUNTOPTIONS},noperm"
|
||||
MOUNTOPTIONS="${orig_mountoptions},noperm"
|
||||
|
||||
umount "$mountpoint" 2>/dev/null || true
|
||||
if mount_drive "$MOUNTOPTIONS"; then
|
||||
@@ -73,7 +75,11 @@ test_mount() {
|
||||
fi
|
||||
fi
|
||||
|
||||
MOUNTED="readonly"
|
||||
if mountpoint -q "$mountpoint"; then
|
||||
MOUNTED="readonly"
|
||||
else
|
||||
MOUNTED=false
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
|
||||
@@ -111,7 +117,7 @@ retry_cifs_with_vers_ladder_on_dialect_failure() {
|
||||
fi
|
||||
|
||||
CIFS_LADDER_ATTEMPTED=true
|
||||
bashio::log.warning "...... CIFS negotiation/dialect failure: trying SMB dialect ladder (3.x -> 2.x)."
|
||||
bashio::log.warning "...... CIFS negotiation/dialect failure: trying SMB dialect ladder (3.x -> 2.x -> 1.0)."
|
||||
|
||||
local base_opts try_opts vers vopt sectry
|
||||
|
||||
@@ -119,8 +125,8 @@ retry_cifs_with_vers_ladder_on_dialect_failure() {
|
||||
base_opts="$(echo "$base_opts" | sed -E 's/,vers=[^,]+//g; s/,sec=[^,]+//g')"
|
||||
|
||||
local -a opt_variants=("" ",nounix" ",noserverino" ",nounix,noserverino")
|
||||
local -a sec_variants=("" ",sec=ntlmssp" ",sec=ntlmv2")
|
||||
local -a vers_variants=("3.1.1" "3.02" "3.0" "2.1" "2.0")
|
||||
local -a sec_variants=("" ",sec=ntlmssp" ",sec=ntlmv2" ",sec=ntlm")
|
||||
local -a vers_variants=("3.1.1" "3.02" "3.0" "2.1" "2.0" "1.0")
|
||||
|
||||
for vopt in "${opt_variants[@]}"; do
|
||||
for vers in "${vers_variants[@]}"; do
|
||||
@@ -143,7 +149,7 @@ retry_cifs_with_vers_ladder_on_dialect_failure() {
|
||||
base_opts="${base_opts//,nobrl/}"
|
||||
base_opts="$(echo "$base_opts" | sed -E 's/,iocharset=[^,]+//g')"
|
||||
|
||||
local -a vers_variants2=("2.1" "2.0")
|
||||
local -a vers_variants2=("2.1" "2.0" "1.0")
|
||||
for vopt in "${opt_variants[@]}"; do
|
||||
for vers in "${vers_variants2[@]}"; do
|
||||
for sectry in "${sec_variants[@]}"; do
|
||||
@@ -226,7 +232,7 @@ if bashio::config.has_value 'networkdisks'; then
|
||||
if [[ "$disk" =~ ^nfs:// ]]; then
|
||||
FSTYPE="nfs"
|
||||
disk="${disk#nfs://}"
|
||||
elif [[ "$disk" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:/.+ ]]; then
|
||||
elif [[ "$disk" =~ ^[^/:]+:/.+ ]]; then
|
||||
FSTYPE="nfs"
|
||||
fi
|
||||
|
||||
@@ -240,6 +246,11 @@ if bashio::config.has_value 'networkdisks'; then
|
||||
diskname="${diskname//\\//}"
|
||||
diskname="${diskname##*/}"
|
||||
|
||||
if mountpoint -q "/mnt/$diskname" 2>/dev/null; then
|
||||
bashio::log.warning "...... mount point /mnt/$diskname already in use (name collision for $disk). Skipping this share."
|
||||
continue
|
||||
fi
|
||||
|
||||
ERRORCODE_FILE="/tmp/mount_error_${diskname//[^a-zA-Z0-9._-]/_}.log"
|
||||
: >"$ERRORCODE_FILE" || true
|
||||
|
||||
@@ -259,8 +270,8 @@ if bashio::config.has_value 'networkdisks'; then
|
||||
continue
|
||||
fi
|
||||
else
|
||||
if [[ ! "$disk" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:/.+ ]]; then
|
||||
bashio::log.fatal "...... invalid NFS path \"$disk\". Use 123.12.12.12:/export/path"
|
||||
if [[ ! "$disk" =~ ^[^/:]+:/.+ ]]; then
|
||||
bashio::log.fatal "...... invalid NFS path \"$disk\". Use server:/export/path or 123.12.12.12:/export/path"
|
||||
echo "Invalid NFS path structure: $disk" >"$ERRORCODE_FILE" || true
|
||||
continue
|
||||
fi
|
||||
@@ -332,14 +343,19 @@ if bashio::config.has_value 'networkdisks'; then
|
||||
fi
|
||||
|
||||
SMBRAW=""
|
||||
SMB1_DETECTED=false
|
||||
if command -v nmap >/dev/null 2>&1; then
|
||||
NMAP_OUTPUT="$(nmap --script smb-protocols -p 445 "$server" 2>/dev/null || true)"
|
||||
SMBRAW="$(
|
||||
nmap --script smb-protocols -p 445 "$server" 2>/dev/null \
|
||||
echo "$NMAP_OUTPUT" \
|
||||
| awk '/SMB2_DIALECT_/ {print $NF}' \
|
||||
| sed 's/SMB2_DIALECT_//' \
|
||||
| tr -d '_' \
|
||||
| sort -V | tail -n 1 || true
|
||||
)"
|
||||
if [[ -z "$SMBRAW" ]] && echo "$NMAP_OUTPUT" | grep -Eiq 'NT LM 0\.12|SMBv1|NT1'; then
|
||||
SMB1_DETECTED=true
|
||||
fi
|
||||
fi
|
||||
|
||||
SMBVERS=""
|
||||
@@ -352,19 +368,28 @@ if bashio::config.has_value 'networkdisks'; then
|
||||
*) SMBVERS="" ;;
|
||||
esac
|
||||
|
||||
if [[ -z "$SMBVERS" && "$SMB1_DETECTED" == "true" ]]; then
|
||||
echo "...... SMB version detected via nmap : SMBv1 (NT LM 0.12)"
|
||||
SMBVERS=",vers=1.0"
|
||||
SECVERS=",sec=ntlm"
|
||||
fi
|
||||
|
||||
if [[ -n "$SMBVERS" ]]; then
|
||||
echo "...... SMB version detected : ${SMBVERS#,vers=}"
|
||||
elif command -v smbclient >/dev/null 2>&1 && smbclient -t 2 -L "$server" -m NT1 -N $DOMAINCLIENT -c "exit" &>/dev/null; then
|
||||
elif command -v smbclient >/dev/null 2>&1 && smbclient -t 2 -L "$server" -m NT1 -U "$USERNAME%$PASSWORD" $DOMAINCLIENT -c "exit" &>/dev/null; then
|
||||
echo "...... SMB version : only SMBv1 is supported, this can lead to issues"
|
||||
SECVERS=",sec=ntlm"
|
||||
SMBVERS=",vers=1.0"
|
||||
else
|
||||
echo "...... SMB version : couldn't detect, falling back to SMB3->SMB2 ladder on negotiation/dialect failure"
|
||||
echo "...... SMB version : couldn't detect, falling back to SMB3->SMB2->SMB1 ladder on negotiation/dialect failure"
|
||||
SMBVERS=",vers=3.1.1"
|
||||
fi
|
||||
|
||||
if [[ -n "$SMBVERS_FORCE" ]]; then
|
||||
[[ -z "$SMBVERS" ]] && SMBVERS="$SMBVERS_FORCE"
|
||||
if [[ -n "$SMBVERS" && "$SMBVERS" != "$SMBVERS_FORCE" ]]; then
|
||||
bashio::log.warning "...... overriding detected SMB version ${SMBVERS#,vers=} with forced ${SMBVERS_FORCE#,vers=} (server requires legacy protocol)"
|
||||
fi
|
||||
SMBVERS="$SMBVERS_FORCE"
|
||||
[[ -z "$SECVERS" ]] && SECVERS="$SECVERS_FORCE"
|
||||
fi
|
||||
|
||||
|
||||
@@ -1,7 +1,160 @@
|
||||
#!/usr/bin/with-contenv bashio
|
||||
#!/bin/bash
|
||||
# shellcheck shell=bash
|
||||
set -e
|
||||
|
||||
##########################################
|
||||
# Pick an exec-capable directory #
|
||||
##########################################
|
||||
|
||||
pick_exec_dir() {
|
||||
local d
|
||||
for d in /dev/shm /run /var/run /mnt /root /; do
|
||||
if [ -d "$d" ] && [ -w "$d" ]; then
|
||||
local t="${d%/}/.exec_test_$$"
|
||||
printf '#!/bin/sh\necho ok\n' >"$t" 2>/dev/null || { rm -f "$t" 2>/dev/null || true; continue; }
|
||||
chmod 700 "$t" 2>/dev/null || { rm -f "$t" 2>/dev/null || true; continue; }
|
||||
if "$t" >/dev/null 2>&1; then
|
||||
rm -f "$t" 2>/dev/null || true
|
||||
echo "$d"
|
||||
return 0
|
||||
fi
|
||||
rm -f "$t" 2>/dev/null || true
|
||||
fi
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
EXEC_DIR="$(pick_exec_dir || true)"
|
||||
if [ -z "${EXEC_DIR:-}" ]; then
|
||||
echo "ERROR: Could not find an exec-capable writable directory."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
######################
|
||||
# Select the shebang #
|
||||
######################
|
||||
|
||||
candidate_shebangs=(
|
||||
"/command/with-contenv bashio"
|
||||
"/usr/bin/with-contenv bashio"
|
||||
"/usr/bin/env bashio"
|
||||
"/usr/bin/bashio"
|
||||
"/usr/bin/bash"
|
||||
"/bin/bash"
|
||||
"/usr/bin/sh"
|
||||
"/bin/sh"
|
||||
)
|
||||
|
||||
SHEBANG_ERRORS=()
|
||||
|
||||
probe_script_content='
|
||||
set -e
|
||||
|
||||
if ! command -v bashio::addon.version >/dev/null 2>&1; then
|
||||
for f in \
|
||||
/usr/lib/bashio/bashio.sh \
|
||||
/usr/lib/bashio/lib.sh \
|
||||
/usr/src/bashio/bashio.sh \
|
||||
/usr/local/lib/bashio/bashio.sh
|
||||
do
|
||||
if [ -f "$f" ]; then
|
||||
. "$f"
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Try regular bashio, fallback to standalone if unavailable or fails
|
||||
set +e
|
||||
_bv="$(bashio::addon.version 2>/dev/null)"
|
||||
_rc=$?
|
||||
set -e
|
||||
|
||||
if [ "$_rc" -ne 0 ] || [ -z "$_bv" ] || [ "$_bv" = "null" ]; then
|
||||
if [ -f /usr/local/lib/bashio-standalone.sh ]; then
|
||||
. /usr/local/lib/bashio-standalone.sh
|
||||
_bv="$(bashio::addon.version)"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "$_bv"
|
||||
'
|
||||
|
||||
validate_shebang() {
|
||||
local candidate="$1"
|
||||
local tmp out rc
|
||||
local errfile msg
|
||||
|
||||
# shellcheck disable=SC2206
|
||||
local cmd=( $candidate )
|
||||
local exe="${cmd[0]}"
|
||||
|
||||
if [ ! -x "$exe" ]; then
|
||||
SHEBANG_ERRORS+=(" - FAIL (not executable): #!$candidate")
|
||||
return 1
|
||||
fi
|
||||
|
||||
tmp="${EXEC_DIR%/}/shebang_test.$$.$RANDOM"
|
||||
errfile="${EXEC_DIR%/}/shebang_probe_err.$$"
|
||||
{
|
||||
printf '#!%s\n' "$candidate"
|
||||
printf '%s\n' "$probe_script_content"
|
||||
} >"$tmp"
|
||||
chmod 700 "$tmp" 2>/dev/null || true
|
||||
|
||||
set +e
|
||||
out="$("$tmp" 2>"$errfile")"
|
||||
rc=$?
|
||||
set -e
|
||||
|
||||
rm -f "$tmp" 2>/dev/null || true
|
||||
|
||||
if [ "$rc" -eq 0 ] && [ -n "${out:-}" ] && [ "$out" != "null" ]; then
|
||||
rm -f "$errfile" 2>/dev/null || true
|
||||
return 0
|
||||
fi
|
||||
|
||||
msg=$' - FAIL: #!'"$candidate"$'\n'" rc=$rc, stdout='${out:-}'"$'\n'
|
||||
if [ -s "$errfile" ]; then
|
||||
msg+=$' stderr:\n'
|
||||
msg+="$(sed -n '1,8p' "$errfile")"$'\n'
|
||||
else
|
||||
msg+=$' stderr: <empty>\n'
|
||||
fi
|
||||
SHEBANG_ERRORS+=("$msg")
|
||||
rm -f "$errfile" 2>/dev/null || true
|
||||
return 1
|
||||
}
|
||||
|
||||
shebang=""
|
||||
for candidate in "${candidate_shebangs[@]}"; do
|
||||
if validate_shebang "$candidate"; then
|
||||
shebang="$candidate"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -z "$shebang" ]; then
|
||||
echo "ERROR: No valid shebang found." >&2
|
||||
printf ' - %s\n' "${candidate_shebangs[@]}" >&2
|
||||
if [ "${#SHEBANG_ERRORS[@]}" -gt 0 ]; then
|
||||
printf '%s\n' "${SHEBANG_ERRORS[@]}" >&2
|
||||
fi
|
||||
exit 1
|
||||
fi
|
||||
|
||||
sed -i "1s|^.*|#!$shebang|" "$0"
|
||||
|
||||
if ! command -v bashio::addon.version >/dev/null 2>&1; then
|
||||
for f in /usr/lib/bashio/bashio.sh /usr/lib/bashio/lib.sh /usr/src/bashio/bashio.sh /usr/local/lib/bashio/bashio.sh /usr/local/lib/bashio-standalone.sh; do
|
||||
if [ -f "$f" ]; then
|
||||
# shellcheck disable=SC1090
|
||||
. "$f"
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
##################
|
||||
# INITIALIZATION #
|
||||
##################
|
||||
@@ -45,12 +198,7 @@ fi
|
||||
dos2unix "$CONFIGSOURCE" &> /dev/null || true
|
||||
chmod +x "$CONFIGSOURCE"
|
||||
|
||||
# Get current shebang, if not available use another
|
||||
currentshebang="$(sed -n '1{s/^#![[:blank:]]*//p;q}' "$CONFIGSOURCE")"
|
||||
if [ ! -f "${currentshebang%% *}" ]; then
|
||||
for shebang in "/command/with-contenv bashio" "/usr/bin/env bashio" "/usr/bin/bashio" "/bin/bash" "/bin/sh"; do if [ -f "${shebang%% *}" ]; then break; fi; done
|
||||
sed -i "s|$currentshebang|$shebang|g" "$CONFIGSOURCE"
|
||||
fi
|
||||
sed -i "1s|^.*|#!$shebang|" "$CONFIGSOURCE"
|
||||
|
||||
# Check if there is actual commands
|
||||
while IFS= read -r line; do
|
||||
|
||||
@@ -83,7 +83,21 @@ if ! command -v bashio::addon.version >/dev/null 2>&1; then
|
||||
done
|
||||
fi
|
||||
|
||||
bashio::addon.version
|
||||
# Try regular bashio, fallback to standalone if unavailable or fails
|
||||
set +e
|
||||
_bv="$(bashio::addon.version 2>/dev/null)"
|
||||
_rc=$?
|
||||
set -e
|
||||
|
||||
if [ "$_rc" -ne 0 ] || [ -z "$_bv" ] || [ "$_bv" = "null" ]; then
|
||||
if [ -f /usr/local/lib/bashio-standalone.sh ]; then
|
||||
# shellcheck disable=SC1091
|
||||
. /usr/local/lib/bashio-standalone.sh
|
||||
_bv="$(bashio::addon.version)"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "$_bv"
|
||||
'
|
||||
|
||||
validate_shebang() {
|
||||
@@ -199,8 +213,25 @@ if $PID1; then
|
||||
echo "Starting: $runfile"
|
||||
sed -i "1s|^.*|#!$shebang|" "$runfile"
|
||||
chmod +x "$runfile"
|
||||
(exec "$runfile") &
|
||||
true
|
||||
(
|
||||
restart_count=0
|
||||
max_restarts=5
|
||||
while true; do
|
||||
"$runfile"
|
||||
rc=$?
|
||||
if [ "$rc" -eq 0 ]; then
|
||||
echo "$runfile exited cleanly (exit 0), not restarting."
|
||||
break
|
||||
fi
|
||||
restart_count=$((restart_count + 1))
|
||||
if [ "$restart_count" -ge "$max_restarts" ]; then
|
||||
echo -e "\033[0;31mERROR: $runfile has crashed $restart_count times (last exit code: $rc), giving up.\033[0m"
|
||||
break
|
||||
fi
|
||||
echo -e "\e[38;5;214m$(date) WARNING: $runfile exited (code $rc), restarting (#${restart_count}/${max_restarts}) in 5s...\e[0m"
|
||||
sleep 5
|
||||
done
|
||||
) &
|
||||
done
|
||||
shopt -u nullglob
|
||||
fi
|
||||
@@ -214,6 +245,7 @@ if $PID1; then
|
||||
echo -e "\033[0;32mEverything started!\033[0m"
|
||||
|
||||
terminate() {
|
||||
local local_pid
|
||||
echo "Termination signal received, forwarding to subprocesses..."
|
||||
if command -v pgrep >/dev/null 2>&1; then
|
||||
while read -r pid; do
|
||||
|
||||
@@ -56,7 +56,7 @@ If you want to do add the repository manually, please follow the procedure highl
|
||||
|
||||
### Number of addons
|
||||
|
||||
- In the repository : 123
|
||||
- In the repository : 124
|
||||
- Installed : 102680
|
||||
|
||||
### Top 3
|
||||
@@ -533,6 +533,12 @@ If you want to do add the repository manually, please follow the procedure highl
|
||||
![aarch64][aarch64-badge]
|
||||
![amd64][amd64-badge]
|
||||
|
||||
✓ [Manyfold](manyfold/) : Manyfold 3D model manager as a Home Assistant add-on, using the upstream image with configurable library/index paths.
|
||||
|
||||
  
|
||||
![aarch64][aarch64-badge]
|
||||
![amd64][amd64-badge]
|
||||
|
||||
✓  [Mealie](mealie/) : Mealie is a self hosted recipe manager and meal planner built in Vue
|
||||
|
||||
  
|
||||
|
||||
@@ -37,7 +37,8 @@ This script allows to automatically update addons based on upstream new releases
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Configure the add-on to your preferences, see below
|
||||
1. Click the `Save` button to store your configuration.
|
||||
|
||||
|
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 1.5 KiB |
BIN
baikal/stats.png
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,3 +1,8 @@
|
||||
## 2026.02.25-2 (25-02-2026)
|
||||
- Minor bugs fixed
|
||||
## 2026.02.25 (25-02-2026)
|
||||
- Fix FLAC for birdweather
|
||||
- Implement max species to save disk space
|
||||
- Added support for configuring extra environment variables via the `env_vars` add-on option alongside config.yaml. See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details.
|
||||
|
||||
## 2025.06.06 (2025-06-03)
|
||||
|
||||
@@ -118,5 +118,5 @@ tmpfs: true
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons/tree/master/battybirdnet-pi
|
||||
usb: true
|
||||
version: 2025.06.06
|
||||
version: "2026.02.25-2"
|
||||
video: true
|
||||
|
||||
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 1.5 KiB |
BIN
bazarr/stats.png
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 1.3 KiB |
@@ -46,7 +46,8 @@ Please see https://github.com/chrisleekr/binance-trading-bot for configuration.
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -1,3 +1,5 @@
|
||||
## 2026.02.25 (25-02-2026)
|
||||
- Minor bugs fixed
|
||||
## 2026.02.01 (01-02-2026)
|
||||
- Minor bugs fixed
|
||||
## 2026.01.21 (21-01-2026)
|
||||
|
||||
@@ -116,5 +116,5 @@ tmpfs: true
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-pi
|
||||
usb: true
|
||||
version: 2026.02.01
|
||||
version: 2026.02.25
|
||||
video: true
|
||||
|
||||
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 1.8 KiB |
@@ -1,3 +1,5 @@
|
||||
## 0.5.4-2 (23-02-2026)
|
||||
- Fix Icecast service failing to connect to PulseAudio on HAOS by respecting PULSE_SERVER env var and setting up socket symlink and auth cookie for icecast2 user
|
||||
|
||||
## 0.5.4 (2026-02-21)
|
||||
- Update to latest version from Suncuss/BirdNET-PiPy (changelog : https://github.com/Suncuss/BirdNET-PiPy/releases)
|
||||
|
||||
@@ -7,6 +7,14 @@ BirdNET-PiPy is a self-hosted system that uses the BirdNET deep-learning model t
|
||||
- Upstream project: https://github.com/Suncuss/BirdNET-PiPy
|
||||
- This add-on runs the BirdNET-PiPy backend services, Icecast audio stream, and Vue.js frontend in a single container.
|
||||
|
||||
## Installation
|
||||
|
||||
1. Add my add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Start the add-on.
|
||||
1. Check the logs of the add-on to see if everything went well.
|
||||
|
||||
## Configuration
|
||||
|
||||
Install, then start the add-on a first time. Open the Web UI from Home Assistant (Ingress) or directly at `http://<host>:8011` (or the port you configure).
|
||||
|
||||
@@ -93,5 +93,5 @@ schema:
|
||||
ssl: bool?
|
||||
slug: birdnet-pipy
|
||||
url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-pipy
|
||||
version: "0.5.4"
|
||||
version: "0.5.4-2"
|
||||
webui: "[PROTO:ssl]://[HOST]:[PORT:80]"
|
||||
|
||||
@@ -14,8 +14,32 @@ if [ -n "${SND_GID}" ] && getent group audio >/dev/null 2>&1; then
|
||||
fi
|
||||
fi
|
||||
|
||||
for u in root nginx www-data; do
|
||||
for u in root nginx www-data icecast2; do
|
||||
if id "${u}" >/dev/null 2>&1; then
|
||||
usermod -aG audio "${u}" 2>/dev/null || true
|
||||
fi
|
||||
done
|
||||
|
||||
# Create /run/pulse/native symlink if the PulseAudio socket is elsewhere
|
||||
# (e.g. HAOS provides it at /run/audio/pulse.sock)
|
||||
PULSE_SOCK="${PULSE_SERVER:-}"
|
||||
PULSE_SOCK="${PULSE_SOCK#unix:}"
|
||||
if [ -n "${PULSE_SOCK}" ] && [ -S "${PULSE_SOCK}" ] && [ ! -S /run/pulse/native ]; then
|
||||
mkdir -p /run/pulse
|
||||
ln -sf "${PULSE_SOCK}" /run/pulse/native
|
||||
fi
|
||||
|
||||
# Copy PulseAudio cookie for the icecast2 user so it can authenticate
|
||||
if id icecast2 >/dev/null 2>&1; then
|
||||
ICECAST_HOME="$(getent passwd icecast2 | cut -d: -f6)"
|
||||
if [ -n "${ICECAST_HOME}" ]; then
|
||||
for cookie in /config/.config/pulse/cookie /root/.config/pulse/cookie; do
|
||||
if [ -f "${cookie}" ]; then
|
||||
mkdir -p "${ICECAST_HOME}/.config/pulse"
|
||||
cp "${cookie}" "${ICECAST_HOME}/.config/pulse/cookie"
|
||||
chown icecast2 "${ICECAST_HOME}/.config/pulse" "${ICECAST_HOME}/.config/pulse/cookie"
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/with-contenv bashio
|
||||
# shellcheck shell=bash
|
||||
set -euo pipefail
|
||||
export PULSE_SERVER=unix:/run/pulse/native
|
||||
export PULSE_SERVER="${PULSE_SERVER:-unix:/run/pulse/native}"
|
||||
gosu icecast2 /usr/local/bin/start-icecast.sh
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# shellcheck shell=bash
|
||||
set -euo pipefail
|
||||
export PYTHONPATH=/app
|
||||
export PULSE_SERVER=unix:/run/pulse/native
|
||||
export PULSE_SERVER="${PULSE_SERVER:-unix:/run/pulse/native}"
|
||||
bashio::net.wait_for 5002 127.0.0.1 300
|
||||
cd /app
|
||||
exec python3 -m core.main
|
||||
|
||||
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 1.3 KiB |
@@ -31,6 +31,14 @@ _Thanks to everyone having starred my repo! To star it click on the image below,
|
||||
|
||||

|
||||
|
||||
## Installation
|
||||
|
||||
1. Add my add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Start the add-on.
|
||||
1. Check the logs of the add-on to see if everything went well.
|
||||
|
||||
## About
|
||||
|
||||
Created by Frenck, please see documentation here : https://github.com/hassio-addons/addon-bitwarden
|
||||
|
||||
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -1,4 +1,7 @@
|
||||
|
||||
## 9.3.1 (2026-02-23)
|
||||
- Update to latest version from linuxserver/docker-calibre (changelog : https://github.com/linuxserver/docker-calibre/releases)
|
||||
|
||||
## 9.3.0 (2026-02-21)
|
||||
- Update to latest version from linuxserver/docker-calibre (changelog : https://github.com/linuxserver/docker-calibre/releases)
|
||||
|
||||
|
||||
@@ -117,5 +117,5 @@ schema:
|
||||
slug: calibre
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons/tree/master/calibre
|
||||
version: "9.3.0"
|
||||
version: "9.3.1"
|
||||
video: true
|
||||
|
||||
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"github_fulltag": "false",
|
||||
"last_update": "2026-02-21",
|
||||
"last_update": "2026-02-23",
|
||||
"repository": "alexbelgium/hassio-addons",
|
||||
"slug": "calibre",
|
||||
"source": "github",
|
||||
"upstream_repo": "linuxserver/docker-calibre",
|
||||
"upstream_version": "9.3.0"
|
||||
"upstream_version": "9.3.1"
|
||||
}
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
|
||||
## 0.53.7 (2026-02-23)
|
||||
- Update to latest version from linuxserver/docker-changedetection.io (changelog : https://github.com/linuxserver/docker-changedetection.io/releases)
|
||||
|
||||
## 0.53.5 (2026-02-21)
|
||||
- Update to latest version from linuxserver/docker-changedetection.io (changelog : https://github.com/linuxserver/docker-changedetection.io/releases)
|
||||
## 0.52.9-2 (01-02-2026)
|
||||
|
||||
@@ -85,7 +85,8 @@ Then restart the Changedetection.io add-on - after that you can use the browser
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
@@ -34,4 +34,4 @@ schema:
|
||||
slug: changedetection.io
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons/tree/master/changedetection.io
|
||||
version: "0.53.5"
|
||||
version: "0.53.7"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 1.4 KiB |
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"github_fulltag": "false",
|
||||
"last_update": "2026-02-21",
|
||||
"last_update": "2026-02-23",
|
||||
"repository": "alexbelgium/hassio-addons",
|
||||
"slug": "changedetection.io",
|
||||
"source": "github",
|
||||
"upstream_repo": "linuxserver/docker-changedetection.io",
|
||||
"upstream_version": "0.53.5"
|
||||
"upstream_version": "0.53.7"
|
||||
}
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
|
||||
## 19.6.0 (2026-02-23)
|
||||
- Update to latest version from coderaiser/cloudcmd (changelog : https://github.com/coderaiser/cloudcmd/releases)
|
||||
|
||||
## 19.5.1 (2026-02-21)
|
||||
- Update to latest version from coderaiser/cloudcmd (changelog : https://github.com/coderaiser/cloudcmd/releases)
|
||||
|
||||
|
||||
@@ -82,7 +82,8 @@ This addon supports custom scripts and environment variables:
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
@@ -104,4 +104,4 @@ schema:
|
||||
slug: cloudcommander
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons/tree/master/cloudcommander
|
||||
version: "19.5.1"
|
||||
version: "19.6.0"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"last_update": "2026-02-21",
|
||||
"last_update": "2026-02-23",
|
||||
"repository": "alexbelgium/hassio-addons",
|
||||
"slug": "cloudcommander",
|
||||
"source": "github",
|
||||
"upstream_repo": "coderaiser/cloudcmd",
|
||||
"upstream_version": "19.5.1"
|
||||
"upstream_version": "19.6.0"
|
||||
}
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
|
||||
## 1.9.18 (2026-02-23)
|
||||
- Update to latest version from ajslater/codex (changelog : https://github.com/ajslater/codex/releases)
|
||||
|
||||
## 1.9.16 (2026-02-04)
|
||||
- Update to latest version from ajslater/codex (changelog : https://github.com/ajslater/codex/releases)
|
||||
|
||||
|
||||
@@ -101,4 +101,4 @@ schema:
|
||||
slug: codex
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons
|
||||
version: "1.9.16"
|
||||
version: "1.9.18"
|
||||
|
||||
BIN
codex/stats.png
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"github_beta": "true",
|
||||
"last_update": "2026-02-04",
|
||||
"last_update": "2026-02-23",
|
||||
"repository": "alexbelgium/hassio-addons",
|
||||
"slug": "codex",
|
||||
"source": "github",
|
||||
"upstream_repo": "ajslater/codex",
|
||||
"upstream_version": "1.9.16"
|
||||
"upstream_version": "1.9.18"
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -81,7 +81,8 @@ This addon supports mounting both local drives and remote SMB shares:
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
BIN
emby/stats.png
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -57,7 +57,8 @@ silent: true #suppresses debug messages
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 1.3 KiB |
@@ -78,7 +78,8 @@ For complete configuration options, see: https://github.com/m4dm4rtig4n/myelectr
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -78,7 +78,8 @@ For complete configuration options, see: https://github.com/m4dm4rtig4n/myelectr
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -1,4 +1,7 @@
|
||||
|
||||
## 1.3.15 (2026-02-23)
|
||||
- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases)
|
||||
|
||||
## 4.4.17 (2026-02-21)
|
||||
- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases)
|
||||
|
||||
|
||||
@@ -120,6 +120,6 @@ schema:
|
||||
slug: ente
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons
|
||||
version: "4.4.17"
|
||||
version: "1.3.15"
|
||||
video: true
|
||||
webui: http://[HOST]:[PORT:3000]
|
||||
|
||||
BIN
ente/stats.png
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 1.4 KiB |
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"github_beta": "false",
|
||||
"last_update": "2026-02-21",
|
||||
"last_update": "2026-02-23",
|
||||
"repository": "alexbelgium/hassio-addons",
|
||||
"slug": "ente",
|
||||
"source": "github",
|
||||
"upstream_repo": "ente-io/ente",
|
||||
"upstream_version": "4.4.17"
|
||||
"upstream_version": "1.3.15"
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,4 +1,7 @@
|
||||
|
||||
## 2.60.0 (2026-02-23)
|
||||
- Update to latest version from filebrowser/filebrowser (changelog : https://github.com/filebrowser/filebrowser/releases)
|
||||
|
||||
## 2.59.0 (2026-02-21)
|
||||
- Update to latest version from filebrowser/filebrowser (changelog : https://github.com/filebrowser/filebrowser/releases)
|
||||
## 2.57.1-3 (14-02-2026)
|
||||
|
||||
@@ -38,7 +38,8 @@ This addon is based on the [docker image](https://hub.docker.com/r/filebrowser/f
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
comparison to installing any other Home Assistant add-on.
|
||||
|
||||
1. [Add my Home Assistant add-ons repository][repository] to your Home Assistant instance.
|
||||
1. Add my add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
@@ -123,4 +123,4 @@ schema:
|
||||
slug: filebrowser
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons
|
||||
version: "2.59.0"
|
||||
version: "2.60.0"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -1,10 +1,10 @@
|
||||
{
|
||||
"github_beta": "true",
|
||||
"last_update": "2026-02-21",
|
||||
"last_update": "2026-02-23",
|
||||
"paused": false,
|
||||
"repository": "alexbelgium/hassio-addons",
|
||||
"slug": "filebrowser",
|
||||
"source": "github",
|
||||
"upstream_repo": "filebrowser/filebrowser",
|
||||
"upstream_version": "2.59.0"
|
||||
"upstream_version": "2.60.0"
|
||||
}
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
|
||||
## 1.1.3 (2026-02-23)
|
||||
- Update to latest version from gtsteffaniak/filebrowser (changelog : https://github.com/gtsteffaniak/filebrowser/releases)
|
||||
|
||||
## 1.1.2 (2026-02-14)
|
||||
- Update to latest version from gtsteffaniak/filebrowser (changelog : https://github.com/gtsteffaniak/filebrowser/releases)
|
||||
|
||||
|
||||
@@ -38,7 +38,8 @@ This addon is based on the [docker image](https://hub.docker.com/r/gtstef/filebr
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
comparison to installing any other Home Assistant add-on.
|
||||
|
||||
1. [Add my Home Assistant add-ons repository][repository] to your Home Assistant instance.
|
||||
1. Add my add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
@@ -110,4 +110,4 @@ schema:
|
||||
slug: filebrowser_quantum
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons
|
||||
version: "1.1.2"
|
||||
version: "1.1.3"
|
||||
|
||||
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 1.4 KiB |
@@ -1,10 +1,10 @@
|
||||
{
|
||||
"github_beta": "false",
|
||||
"last_update": "2026-02-14",
|
||||
"last_update": "2026-02-23",
|
||||
"paused": false,
|
||||
"repository": "alexbelgium/hassio-addons",
|
||||
"slug": "filebrowser_quantum",
|
||||
"source": "github",
|
||||
"upstream_repo": "gtsteffaniak/filebrowser",
|
||||
"upstream_version": "1.1.2"
|
||||
"upstream_version": "1.1.3"
|
||||
}
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
|
||||
## 2.1.1-2 (2026-02-23)
|
||||
- Fix cron auto-import no longer triggering after env changes (https://github.com/alexbelgium/hassio-addons/issues/1839)
|
||||
- Fix health check log spam in nginx
|
||||
|
||||
## 2.1.1 (2026-02-21)
|
||||
- Update to latest version from firefly-iii/data-importer (changelog : https://github.com/firefly-iii/data-importer/releases)
|
||||
|
||||
|
||||
@@ -168,7 +168,7 @@ RUN \
|
||||
\
|
||||
# Handle Nginx configuration
|
||||
if [ -f /etc/nginx/nginx.conf ]; then \
|
||||
awk '/http \{/{print; print "map $http_user_agent $dontlog {\n default 0;\n \"~*HealthCheck\" 1;\n}\naccess_log /var/log/nginx/access.log combined if=$dontlog;"; next}1' /etc/nginx/nginx.conf > /etc/nginx/nginx.conf.new && \
|
||||
awk '/http \{/{print; print "map $http_user_agent $loggable {\n default 1;\n \"~*HealthCheck\" 0;\n}\naccess_log /var/log/nginx/access.log combined if=$loggable;"; next}1' /etc/nginx/nginx.conf > /etc/nginx/nginx.conf.new && \
|
||||
mv /etc/nginx/nginx.conf.new /etc/nginx/nginx.conf; \
|
||||
fi
|
||||
|
||||
|
||||
@@ -101,5 +101,5 @@ schema:
|
||||
slug: fireflyiii_data_importer
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons
|
||||
version: "2.1.1"
|
||||
version: "2.1.1-2"
|
||||
webui: "[PROTO:ssl]://[HOST]:[PORT:8080]"
|
||||
|
||||
@@ -25,6 +25,17 @@ export CAN_POST_FILES="$(bashio::config "CAN_POST_FILES")"
|
||||
# shellcheck disable=SC2155
|
||||
export CAN_POST_AUTOIMPORT="$(bashio::config "CAN_POST_AUTOIMPORT")"
|
||||
|
||||
# Persist variables to /etc/environment for cron jobs
|
||||
{
|
||||
[ -n "$JSON_CONFIGURATION_DIR" ] && echo "JSON_CONFIGURATION_DIR=\"$JSON_CONFIGURATION_DIR\""
|
||||
echo "IMPORT_DIR_ALLOWLIST=\"$IMPORT_DIR_ALLOWLIST\""
|
||||
echo "IMPORT_DIR_WHITELIST=\"$IMPORT_DIR_WHITELIST\""
|
||||
echo "AUTO_IMPORT_SECRET=\"$AUTO_IMPORT_SECRET\""
|
||||
echo "CAN_POST_FILES=\"$CAN_POST_FILES\""
|
||||
echo "CAN_POST_AUTOIMPORT=\"$CAN_POST_AUTOIMPORT\""
|
||||
} >> /etc/environment
|
||||
chmod 600 /etc/environment
|
||||
|
||||
################
|
||||
# CRON OPTIONS #
|
||||
################
|
||||
|
||||
@@ -2,6 +2,10 @@
|
||||
# shellcheck shell=bash
|
||||
set -e
|
||||
|
||||
# Source environment variables for cron context
|
||||
# shellcheck disable=SC1091
|
||||
if [ -f /etc/environment ]; then set -a; . /etc/environment; set +a; fi
|
||||
|
||||
CONFIGSOURCE="$(bashio::config "CONFIG_LOCATION")"
|
||||
|
||||
(
|
||||
|
||||
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -1,4 +1,7 @@
|
||||
|
||||
## 3.18.48 (2026-02-23)
|
||||
- Update to latest version from wiserain/flexget
|
||||
|
||||
## 3.18.46 (2026-02-14)
|
||||
- Update to latest version from wiserain/flexget
|
||||
|
||||
|
||||
@@ -95,5 +95,5 @@ schema:
|
||||
slug: flexget
|
||||
udev: true
|
||||
url: https://github.com/alexbelgium/hassio-addons
|
||||
version: "3.18.46"
|
||||
version: "3.18.48"
|
||||
webui: "[PROTO:ssl]://[HOST]:[PORT:5050]"
|
||||
|
||||
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 1.3 KiB |
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"dockerhub_list_size": "10",
|
||||
"last_update": "2026-02-14",
|
||||
"last_update": "2026-02-23",
|
||||
"repository": "alexbelgium/hassio-addons",
|
||||
"slug": "flexget",
|
||||
"source": "dockerhub",
|
||||
"upstream_repo": "wiserain/flexget",
|
||||
"upstream_version": "3.18.46"
|
||||
"upstream_version": "3.18.48"
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 1.8 KiB |
@@ -98,7 +98,8 @@ For complete configuration options, see: https://github.com/ssenart/gazpar2mqtt
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -74,7 +74,8 @@ This addon supports custom scripts and environment variables through the `addon_
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||
BIN
gitea/stats.png
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 1.5 KiB |
BIN
grav/stats.png
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 1.5 KiB |
@@ -73,7 +73,8 @@ This addon supports custom scripts and environment variables through the `addon_
|
||||
The installation of this add-on is pretty straightforward and not different in
|
||||
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 add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
||||
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
||||
1. Install this add-on.
|
||||
1. Click the `Save` button to store your configuration.
|
||||
1. Start the add-on.
|
||||
|
||||