diff --git a/flaresolverr/CHANGELOG.md b/flaresolverr/CHANGELOG.md index a2636fe4b..b808b5a56 100644 --- a/flaresolverr/CHANGELOG.md +++ b/flaresolverr/CHANGELOG.md @@ -1,4 +1,8 @@ +## 3.4.1-1 (21-09-2025) + +- Fix Chromium startup by hardening the shared memory helper for large reported sizes (thanks to community reports) + ## 3.4.1 (20-09-2025) - Update to latest version from FlareSolverr/FlareSolverr (changelog : https://github.com/FlareSolverr/FlareSolverr/releases) ## 3.4.0 (26-08-2025) diff --git a/flaresolverr/config.json b/flaresolverr/config.json index 2883daaa6..b11cf8bc4 100644 --- a/flaresolverr/config.json +++ b/flaresolverr/config.json @@ -80,6 +80,6 @@ "slug": "flaresolverr", "udev": true, "url": "https://github.com/alexbelgium/hassio-addons", - "version": "3.3.25", + "version": "3.4.1-1", "webui": "[PROTO:ssl]://[HOST]:[PORT:8191]" } diff --git a/flaresolverr/rootfs/etc/cont-init.d/02-fix-chromium-dev-shm.sh b/flaresolverr/rootfs/etc/cont-init.d/02-fix-chromium-dev-shm.sh new file mode 100755 index 000000000..2bc3e5342 --- /dev/null +++ b/flaresolverr/rootfs/etc/cont-init.d/02-fix-chromium-dev-shm.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bashio +# shellcheck shell=bash +set -euo pipefail + +fix_file="/etc/chromium.d/dev-shm" + +if [ -f "${fix_file}" ]; then + bashio::log.info "Patching Chromium shared memory helper for reliable startup" + cat <<'PATCH' > "${fix_file}" +# shellcheck shell=sh +# Patched by alexbelgium/hassio-addons to avoid arithmetic errors with large values on some shells. +shm_avail=$(findmnt -bnr -o avail -T /dev/shm 2>/dev/null) + +if python3 - "${shm_avail}" <<'PY' +import re +import sys + +raw = sys.argv[1] if len(sys.argv) > 1 else '' +match = re.search(r'\d+', raw) +value = int(match.group(0)) if match else 0 +LIMIT = 4080218931 +sys.exit(0 if value < LIMIT else 1) +PY +then + export CHROMIUM_FLAGS="${CHROMIUM_FLAGS} --disable-dev-shm-usage" +fi +PATCH + chmod 0644 "${fix_file}" +fi diff --git a/flaresolverr/rootfs/etc/cont-init.d/99-run.sh b/flaresolverr/rootfs/etc/cont-init.d/99-run.sh index e25b51762..49aaf2dea 100755 --- a/flaresolverr/rootfs/etc/cont-init.d/99-run.sh +++ b/flaresolverr/rootfs/etc/cont-init.d/99-run.sh @@ -1,8 +1,23 @@ -#!/usr/bin/env bashio +#!/bin/bash # shellcheck shell=bash -set -euo pipefail +set +eu -bashio::log.warning "Warning - minimum configuration recommended: 2 CPU cores and 4 GB of memory. Otherwise the system may become unresponsive or crash." +echo "Warning - minimum configuration recommended: 2 CPU cores and 4 GB of memory. Otherwise the system may become unresponsive or crash." + +chromium_wrapper="/usr/bin/chromium" + +if [[ -f "${chromium_wrapper}" ]]; then + if [[ ! -x /bin/bash ]]; then + bashio::log.warning "Chromium wrapper patch skipped: /bin/bash is not available." + else + if grep -q '^#!/bin/sh' "${chromium_wrapper}"; then + if grep -q '==' "${chromium_wrapper}"; then + bashio::log.info "Adjusting Chromium wrapper to use bash for compatibility with Chromium 140." + sed -i '1s|/bin/sh|/bin/bash|' "${chromium_wrapper}" + fi + fi + fi +fi ############## # LAUNCH APP # diff --git a/flaresolverr/updater.json b/flaresolverr/updater.json index ec201f137..2ab9b4eec 100644 --- a/flaresolverr/updater.json +++ b/flaresolverr/updater.json @@ -1,5 +1,5 @@ { - "last_update": "20-09-2025", + "last_update": "21-09-2025", "repository": "alexbelgium/hassio-addons", "slug": "flaresolverr", "source": "github",