From 918b9477b0de029e2e3f17260c518112e6297332 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Mon, 6 Jul 2026 17:33:39 +0200 Subject: [PATCH 001/538] Fix NetBird server startup --- netbird-server/CHANGELOG.md | 4 ++++ netbird-server/Dockerfile | 2 +- netbird-server/config.yaml | 2 +- netbird-server/rootfs/etc/cont-init.d/00-config.sh | 8 +++++++- netbird-server/rootfs/etc/services.d/management/run | 2 ++ netbird-server/rootfs/etc/services.d/signal/run | 2 ++ 6 files changed, 17 insertions(+), 3 deletions(-) diff --git a/netbird-server/CHANGELOG.md b/netbird-server/CHANGELOG.md index e69de29bb2..9ee4175fe6 100644 --- a/netbird-server/CHANGELOG.md +++ b/netbird-server/CHANGELOG.md @@ -0,0 +1,4 @@ +## 0.64.5-8 (2026-07-06) +- Fix NetBird management startup by adding glibc compatibility for the upstream binary. +- Assign separate metrics ports for management, signal, and relay to avoid startup port conflicts. +- Quote dashboard OIDC scopes so the generated env file can be sourced correctly. diff --git a/netbird-server/Dockerfile b/netbird-server/Dockerfile index 0a9c005b9f..53cb2b541d 100644 --- a/netbird-server/Dockerfile +++ b/netbird-server/Dockerfile @@ -74,7 +74,7 @@ COPY ha_automodules.sh /ha_automodules.sh RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_automodules.sh # Manual apps -ENV PACKAGES="nginx gettext ca-certificates caddy openssl" +ENV PACKAGES="nginx gettext ca-certificates caddy openssl gcompat" # Automatic apps & bashio COPY ha_autoapps.sh /ha_autoapps.sh diff --git a/netbird-server/config.yaml b/netbird-server/config.yaml index ffeebcbfb9..2e2c79c7e7 100644 --- a/netbird-server/config.yaml +++ b/netbird-server/config.yaml @@ -23,5 +23,5 @@ ports_description: schema: domain: str url: https://github.com/alexbelgium/hassio-addons/tree/master/netbird-server -version: 0.64.5-7 +version: 0.64.5-8 webui: "[PROTO:ssl]://[HOST]:[PORT:443]" diff --git a/netbird-server/rootfs/etc/cont-init.d/00-config.sh b/netbird-server/rootfs/etc/cont-init.d/00-config.sh index 12ca4c61ac..9d9a6d95fb 100755 --- a/netbird-server/rootfs/etc/cont-init.d/00-config.sh +++ b/netbird-server/rootfs/etc/cont-init.d/00-config.sh @@ -31,6 +31,7 @@ DASHBOARD_PORT=8080 SIGNAL_PORT=8083 SIGNAL_GRPC_PORT=10000 RELAY_PORT=8084 +RELAY_METRICS_PORT=9093 if [[ -z "$DOMAIN" || "$DOMAIN" == "netbird.example.com" ]]; then result=$(bashio::api.supervisor GET /core/api/config true || true) @@ -110,11 +111,15 @@ NB_LOG_LEVEL=info NB_LISTEN_ADDRESS=:${RELAY_PORT} NB_EXPOSED_ADDRESS=${NETBIRD_RELAY_PROTO}://${DOMAIN}:${NETBIRD_PORT} NB_AUTH_SECRET=${RELAY_AUTH_SECRET} +NB_METRICS_PORT=${RELAY_METRICS_PORT} NB_ENABLE_STUN=true NB_STUN_LOG_LEVEL=info NB_STUN_PORTS=${NETBIRD_STUN_PORT} CONFIG fi +if ! grep -q '^NB_METRICS_PORT=' "$RELAY_ENV_FILE"; then + echo "NB_METRICS_PORT=${RELAY_METRICS_PORT}" >> "$RELAY_ENV_FILE" +fi # Generate dashboard env file if missing DASHBOARD_ENV_FILE="$DATA_DIR/dashboard/env" @@ -130,7 +135,7 @@ AUTH_CLIENT_ID=netbird-dashboard AUTH_CLIENT_SECRET= AUTH_AUTHORITY=${NETBIRD_HTTP_PROTOCOL}://${DOMAIN}/oauth2 USE_AUTH0=false -AUTH_SUPPORTED_SCOPES=openid profile email groups +AUTH_SUPPORTED_SCOPES="openid profile email groups" AUTH_REDIRECT_URI=/nb-auth AUTH_SILENT_REDIRECT_URI=/nb-silent-auth # SSL @@ -140,6 +145,7 @@ LETSENCRYPT_DOMAIN=none CONFIG chmod 600 "$DASHBOARD_ENV_FILE" fi +sed -i 's/^AUTH_SUPPORTED_SCOPES=openid profile email groups$/AUTH_SUPPORTED_SCOPES="openid profile email groups"/' "$DASHBOARD_ENV_FILE" # Generate Caddyfile if missing CADDYFILE="$DATA_DIR/Caddyfile" diff --git a/netbird-server/rootfs/etc/services.d/management/run b/netbird-server/rootfs/etc/services.d/management/run index 2404df3cc8..d09c88fef3 100644 --- a/netbird-server/rootfs/etc/services.d/management/run +++ b/netbird-server/rootfs/etc/services.d/management/run @@ -11,6 +11,7 @@ DATA_DIR="/config/netbird" LOG_LEVEL="info" MANAGEMENT_CONFIG="$DATA_DIR/management/management.json" MANAGEMENT_PORT=8081 +MANAGEMENT_METRICS_PORT=9091 if [[ ! -f "$MANAGEMENT_CONFIG" ]]; then bashio::log.error "Missing management configuration at ${MANAGEMENT_CONFIG}." @@ -21,6 +22,7 @@ bashio::log.info "Starting NetBird Management..." exec /usr/local/bin/netbird-mgmt management \ --config "$MANAGEMENT_CONFIG" \ --port "$MANAGEMENT_PORT" \ + --metrics-port "$MANAGEMENT_METRICS_PORT" \ --log-level "$LOG_LEVEL" \ --log-file console \ --disable-anonymous-metrics=false \ diff --git a/netbird-server/rootfs/etc/services.d/signal/run b/netbird-server/rootfs/etc/services.d/signal/run index 5dc805860a..725b733bc1 100644 --- a/netbird-server/rootfs/etc/services.d/signal/run +++ b/netbird-server/rootfs/etc/services.d/signal/run @@ -8,10 +8,12 @@ set -euo pipefail # ============================================================================== SIGNAL_PORT=8083 +SIGNAL_METRICS_PORT=9092 LOG_LEVEL="info" bashio::log.info "Starting NetBird Signal on port ${SIGNAL_PORT} (legacy gRPC on 10000)..." exec /usr/local/bin/netbird-signal run \ --port "$SIGNAL_PORT" \ + --metrics-port "$SIGNAL_METRICS_PORT" \ --log-level "$LOG_LEVEL" \ --log-file console From c7b5fedbb17da3ae9e1efef2f779fa4c18f40360 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:18:43 +0200 Subject: [PATCH 002/538] Add Claude Code and web terminal dependencies --- claude_desktop/Dockerfile | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 9ddb9fa01b..3105605c15 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -49,16 +49,24 @@ RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -e RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \ if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/bash /bin/bash; fi -# Install Claude Desktop and Python tooling -RUN curl -fsSLo /usr/share/keyrings/claude-desktop-archive-keyring.asc https://downloads.claude.ai/claude-desktop/key.asc && \ +# Install Claude Desktop, Claude Code, browser-terminal tooling, and Python tooling +RUN install -d -m 0755 /etc/apt/keyrings && \ + curl -fsSLo /usr/share/keyrings/claude-desktop-archive-keyring.asc https://downloads.claude.ai/claude-desktop/key.asc && \ + curl -fsSLo /etc/apt/keyrings/claude-code.asc https://downloads.claude.ai/keys/claude-code.asc && \ echo "deb [arch=amd64,arm64 signed-by=/usr/share/keyrings/claude-desktop-archive-keyring.asc] https://downloads.claude.ai/claude-desktop/apt/stable stable main" > /etc/apt/sources.list.d/claude-desktop.list && \ + echo "deb [signed-by=/etc/apt/keyrings/claude-code.asc] https://downloads.claude.ai/claude-code/apt/stable stable main" > /etc/apt/sources.list.d/claude-code.list && \ apt-get update && \ apt-get install -y --no-install-recommends \ claude-desktop \ + claude-code \ python3-pip \ libsecret-1-0 \ dbus-x11 \ - git gh && \ + git \ + gh \ + ripgrep \ + tmux \ + ttyd && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* From 8e91d530c8a6bb3cab9e2a07598b4646bd0bcf85 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:19:01 +0200 Subject: [PATCH 003/538] Configure optional Claude Code terminal --- claude_desktop/config.yaml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index cc74a60335..64099bc88a 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -2,7 +2,7 @@ arch: - aarch64 - amd64 audio: true -description: Claude Desktop streamed through a browser with LinuxServer Selkies +description: Claude Desktop and a persistent Claude Code terminal streamed from one add-on devices: - /dev/dri - /dev/dri/card0 @@ -44,6 +44,10 @@ options: ha_smart_context: true enable_ha_mcp: true dangerously_skip_permissions: false + enable_terminal: true + terminal_username: claude + terminal_password: "" + terminal_workspace: "" github_token: "" github_username: "" install_caveman: true @@ -54,9 +58,11 @@ panel_admin: false panel_icon: mdi:robot-happy ports: 3001/tcp: null + 7681/tcp: null 8787/tcp: 8787 ports_description: - 3001/tcp: Web interface https + 3001/tcp: Claude Desktop web interface + 7681/tcp: Authenticated Claude Code web terminal 8787/tcp: Headroom dashboard and proxy privileged: - SYS_ADMIN @@ -80,6 +86,10 @@ schema: ha_smart_context: bool? enable_ha_mcp: bool? dangerously_skip_permissions: bool? + enable_terminal: bool + terminal_username: match(^[A-Za-z0-9_.-]+$) + terminal_password: password? + terminal_workspace: str? github_token: password? github_username: str? install_caveman: bool @@ -90,5 +100,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.12" +version: "1.13" video: true From 2ff136f34de6463b3e21454959a95385f90d5ed4 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:19:11 +0200 Subject: [PATCH 004/538] Keep Desktop on Headroom MCP integration --- claude_desktop/rootfs/defaults/autostart | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/claude_desktop/rootfs/defaults/autostart b/claude_desktop/rootfs/defaults/autostart index b3d68ce167..45f4fd0399 100644 --- a/claude_desktop/rootfs/defaults/autostart +++ b/claude_desktop/rootfs/defaults/autostart @@ -20,12 +20,13 @@ if [ -s "$CLAUDE_DESKTOP_COMMAND_FILE" ]; then else CLAUDE_DESKTOP_COMMAND="$DEFAULT_CLAUDE_DESKTOP_COMMAND" fi -if bashio::config.true 'install_headroom'; then - export ANTHROPIC_BASE_URL="http://127.0.0.1:8787" -fi + +# Headroom is intentionally not injected into the Desktop process. Claude Desktop overrides +# ANTHROPIC_BASE_URL, so Desktop uses the registered Headroom MCP tools instead. The Claude Code +# terminal uses the supported `headroom wrap claude` integration through claude-headroom. # Launch the configured command. If a custom/wrapped command fails to start, fall back to -# the plain Claude Desktop launch so the desktop app still comes up for the user. +# the plain Claude Desktop launch so the app always comes up for the user. if ! sh -c "$CLAUDE_DESKTOP_COMMAND"; then if [ "$CLAUDE_DESKTOP_COMMAND" != "$DEFAULT_CLAUDE_DESKTOP_COMMAND" ]; then echo "autostart: '$CLAUDE_DESKTOP_COMMAND' failed; falling back to default Claude Desktop launch" >&2 From a2a45b31432085a613800f6717aadb5ab1bb2281 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:19:33 +0200 Subject: [PATCH 005/538] Document combined Desktop and terminal workflow --- claude_desktop/README.md | 143 +++++++++++++++++++++++++++++++-------- 1 file changed, 115 insertions(+), 28 deletions(-) diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 6dd6289446..fa400a3495 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -4,7 +4,8 @@ ![Supports amd64 Architecture][amd64-shield] ![Project Maintenance][maintenance-shield] -Run the Claude Desktop Linux app inside a LinuxServer.io Selkies container and stream it through Home Assistant ingress. +Run Claude Desktop and an optional persistent Claude Code web terminal in one +LinuxServer.io Selkies add-on. ## Installation @@ -13,60 +14,146 @@ Run the Claude Desktop Linux app inside a LinuxServer.io Selkies container and s 3. Start the add-on and open the web UI from the sidebar. 4. Sign in with your Claude account from the Desktop app. -Claude Desktop sign-in requires a claude.ai plan that supports the Desktop app. API keys are not accepted by the Desktop application. Anthropic's Linux beta does not include Computer Use or dictation. +Claude Desktop sign-in requires a claude.ai plan that supports the Desktop app. +API keys are not accepted by the Desktop application. Anthropic's Linux beta +currently does not include Computer Use or dictation. + +## Architecture + +Claude Desktop and Claude Code run as separate clients inside the same add-on. +They share the persistent home directory, Git credentials, repositories, Claude +Code configuration, Headroom storage, and RTK configuration, but they do not +share or hand off a conversation. + +- **Claude Desktop** uses Headroom through its MCP tools. +- **Claude Code** uses Headroom's supported `headroom wrap claude` integration. +- **RTK** filters Claude Code Bash output through its `PreToolUse` hook. +- **tmux** keeps the terminal session running when the browser disconnects. ## Features - Claude Desktop in single-app Selkies mode. -- Home Assistant ingress support. -- Persistent `$HOME` under `/data/data`, preserving Claude Desktop and Claude Code sign-in state across restarts. +- Home Assistant ingress support for Claude Desktop. +- Official Claude Code stable package installed in the same image. +- Optional authenticated `ttyd` web terminal on port `7681`. +- Persistent `tmux` session shared by reconnecting terminal clients. +- Persistent `$HOME` under `/data/data`, preserving Desktop and Claude Code + sign-in state across restarts. - Optional runtime Claude Desktop updates from Anthropic's apt repository. - Optional extra apt and pip package installation. -- Baked-in `git` and GitHub CLI (`gh`) with optional startup credential configuration. -- Custom script support through the repository standard `claude_desktop.sh` script. -- Optional bundled Claude Code optimization tools: headroom, rtk, and caveman. -- Headroom dashboard exposed on mapped port `8787` when `install_headroom` is enabled. -- Low-power defaults: GPU device mapping, `AUTO_GPU=1`, `SELKIES_FRAMERATE=30`, `/tmp` tmpfs, and `$HOME/.cache` redirected to `/tmp/cache`. +- Baked-in `git`, GitHub CLI (`gh`), `ripgrep`, and terminal tooling. +- Custom script support through the repository standard `claude_desktop.sh`. +- Optional bundled Claude Code optimization tools: Headroom, RTK, and Caveman. +- Headroom dashboard exposed on mapped port `8787` when enabled. +- Low-power defaults for GPU mapping, Selkies frame rate, and volatile caches. + +## Claude Code terminal setup + +The terminal is enabled in the add-on configuration but remains unavailable +until authentication is configured. Port `7681` is not mapped by default. + +1. Set `terminal_password`, or set the existing `PASSWORD` option as a fallback. +2. Optionally set `terminal_username` and `terminal_workspace`. +3. Map container port `7681` to a host port in the add-on **Network** section. +4. Restart the add-on. +5. Open `http://:7681` and sign in with the configured + terminal credentials. + +The terminal opens in a persistent tmux session. Closing the browser detaches +from tmux rather than terminating commands that are already running. + +Start the optimized Claude Code path with: + +```shell +claude-headroom +``` + +This invokes `headroom wrap claude`, which starts or reuses the local Headroom +proxy and launches Claude Code with the required routing. The RTK hook remains +active through the shared `~/.claude/settings.json` configuration. + +To bypass Headroom for troubleshooting, run: + +```shell +claude-direct +``` + +Running `claude` directly is equivalent to the direct path. The first Claude +Code launch may require its own account authentication; Desktop and Claude Code +store separate client credentials even though both live under the same +persistent home directory. + +Do not expose the terminal port directly to the public internet. Prefer a VPN, +Tailscale, or another trusted private network in addition to ttyd authentication. ## Options | Option | Default | Description | | ------ | ------- | ----------- | | `PUID` / `PGID` | `0` / `0` | User and group used for persistent data ownership. | -| `TZ` | | Optional timezone, for example `America/New_York`. | +| `TZ` | | Optional timezone, for example `Europe/Brussels`. | | `KEYBOARD` | | Optional Selkies keyboard layout. | -| `PASSWORD` | | Optional password for direct Selkies ports. Set this before exposing ports `3000` or `3001`. | +| `PASSWORD` | | Optional password for direct Selkies ports and fallback terminal password. | | `DRINODE` | | Optional GPU device override for Selkies. | | `DNS_server` | `8.8.8.8` | DNS server used by the standard DNS module. | -| `auto_update` | `true` | Check Anthropic's apt repository and upgrade `claude-desktop` at add-on startup. | -| `install_headroom` | `true` | Register the baked-in `headroom` MCP server in Claude Desktop, start the Headroom proxy backend, and expose the Headroom dashboard on mapped port `8787` at `/dashboard` when that port is open. This exposes the `headroom_compress`/`headroom_retrieve`/`headroom_stats` context-compression tools inside the app. (Claude Desktop overrides `ANTHROPIC_BASE_URL`, so transparent proxy compression is not possible — MCP is the supported path; see [headroom #869](https://github.com/headroomlabs-ai/headroom/issues/869).) Disabling removes the MCP entry and stops the backend/dashboard service. | -| `install_rtk` | `true` | Configure the rtk Claude Code `PreToolUse` hook in the persistent Claude Code settings. | -| `install_caveman` | `true` | Install the caveman Claude Code plugin into the persistent Claude Code home. | -| `install_github_cli` | `true` | Enable first-start checks and setup for the baked-in `git` and `gh` commands. | -| `github_token` | | Optional GitHub personal access token used to authenticate `gh` and configure Git credentials for GitHub. | +| `auto_update` | `true` | Upgrade `claude-desktop` from Anthropic's apt repository at startup. | +| `enable_terminal` | `true` | Enable the supervised Claude Code web-terminal service. | +| `terminal_username` | `claude` | Username used by ttyd basic authentication. | +| `terminal_password` | | Terminal password; falls back to `PASSWORD`. The service idles when neither is set. | +| `terminal_workspace` | | Initial directory; defaults to `/workspace`. | +| `install_headroom` | `true` | Enable Headroom MCP for Desktop and the local proxy used by `claude-headroom`. | +| `install_rtk` | `true` | Configure RTK's Claude Code `PreToolUse` hook. | +| `install_caveman` | `true` | Install the Caveman Claude Code plugin in the persistent Claude home. | +| `install_github_cli` | `true` | Enable setup checks for the baked-in `git` and `gh` commands. | +| `github_token` | | Optional GitHub token used to authenticate `gh` and Git operations. | | `github_username` | | Optional global Git author name. | | `github_email` | | Optional global Git author email. | | `ha_smart_context` | `true` | Enable Home Assistant smart context support for Claude tooling. | | `enable_ha_mcp` | `true` | Enable Home Assistant MCP support for Claude tooling. | -| `dangerously_skip_permissions` | `false` | Expose Claude Code's dangerous permission skip mode option. Only enable if you understand the risk. | -| `additional_apps` | | Comma-separated Debian apt packages to install at startup, for example `htop,git`. | -| `additional_pip` | | Comma-separated pip packages to install at startup. Installs use `--break-system-packages`. | -| `data_location` | `/data/data` | Persistent home directory location. Keep this persistent so Claude sign-in survives restarts. | -| `networkdisks`, `cifsusername`, `cifspassword`, `cifsdomain` | | Standard SMB mount options. | -| `localdisks` | | Standard local disk mount option. | -| `env_vars` | `[]` | Extra environment variables to export into the container. This can override `SELKIES_*` defaults. | +| `dangerously_skip_permissions` | `false` | Expose Claude Code's dangerous permission-skip option. | +| `additional_apps` | | Comma-separated Debian apt packages to install at startup. | +| `additional_pip` | | Comma-separated pip packages installed with `--break-system-packages`. | +| `data_location` | `/data/data` | Persistent home directory for both Claude clients and tooling. | +| `env_vars` | `[]` | Additional environment variables exported inside the container. | + +Standard SMB and local-disk options from the repository are also available. + +## Headroom behavior + +When `install_headroom` is enabled, the add-on registers `headroom mcp serve` in +Claude Desktop and starts a supervised local Headroom backend. Desktop can use +`headroom_compress`, `headroom_retrieve`, and `headroom_stats` through MCP. + +Claude Desktop overrides `ANTHROPIC_BASE_URL`, so it is deliberately launched +without proxy injection. The web terminal instead provides `claude-headroom`, +which uses Headroom's supported Claude Code wrapper. + +The Headroom dashboard remains available at: + +```text +http://:8787/dashboard +``` + +when the `8787/tcp` port is mapped. ## Custom scripts -The add-on includes the repository standard custom-script executor. On first start, it seeds a `claude_desktop.sh` file in the add-on config directory from the shared template. Commands in that script run during startup, allowing local customization without rebuilding the image. +The add-on includes the repository standard custom-script executor. On first +start, it seeds `claude_desktop.sh` in the add-on config directory. Commands in +that script run during startup, allowing local customization without rebuilding +the image. ## Data and cache locations -Persistent state is stored in the configured `data_location`. Claude Desktop stores sign-in data below `~/.config/Claude`, and Claude Code/tool configuration is stored below `~/.claude`. Volatile cache data is redirected to `/tmp/cache` through `$XDG_CACHE_HOME` and `$HOME/.cache`. +Persistent state is stored in `data_location`: -## Headroom dashboard +- Claude Desktop sign-in: `~/.config/Claude` +- Claude Code settings, hooks, sessions, and plugins: `~/.claude` +- Default terminal workspace: `~/workspace` +- Headroom and RTK user state: their standard paths below the shared home -When `install_headroom` is enabled, the add-on starts the local Headroom proxy backend and maps port `8787` by default. Open `http://:8787/dashboard` to view the Headroom live savings dashboard. If you disable the `8787/tcp` port mapping, the backend binds to localhost for MCP use only and the dashboard is not externally exposed. +Volatile cache data is redirected to `/tmp/cache` through `$XDG_CACHE_HOME` and +`$HOME/.cache`. [aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg [amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg From 9f54cc91621cf9cbf1550a011c2c4973cd5223d8 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:19:49 +0200 Subject: [PATCH 006/538] Document Claude Code terminal release --- claude_desktop/CHANGELOG.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 747ecfa636..fb5e509dca 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,11 @@ +## 1.13 (10-07-2026) + +- Add the official Claude Code stable package, `ttyd`, `tmux`, and `ripgrep` to the Claude Desktop image. +- Add an optional authenticated Claude Code web terminal on port `7681`; reconnecting clients attach to the same persistent tmux session. +- Add `claude-headroom` for Headroom's supported `wrap claude` path and `claude-direct` for troubleshooting, while retaining the RTK `PreToolUse` hook. +- Keep Claude Desktop on the MCP-only Headroom integration and remove the ineffective `ANTHROPIC_BASE_URL` export from its launch environment. +- Document the shared-home architecture, separate Desktop/CLI sessions, terminal security, and configuration. + ## 1.12 (09-07-2026) - Minor bugs fixed ## 1.11 (09-07-2026) From 8724f1d09732ae508f8a2d517a6c3e41e26ceed6 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:20:01 +0200 Subject: [PATCH 007/538] Add supervised Claude Code terminal service --- .../s6-rc.d/svc-claude-terminal/run | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run new file mode 100644 index 0000000000..5d4a188b9d --- /dev/null +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run @@ -0,0 +1,48 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +declare port=7681 +declare username +declare password="" +declare workspace + +if ! bashio::config.true 'enable_terminal'; then + bashio::log.info "svc-claude-terminal: terminal disabled; idling" + exec sleep infinity +fi + +if ! command -v ttyd >/dev/null 2>&1 || ! command -v tmux >/dev/null 2>&1 || ! command -v claude >/dev/null 2>&1; then + bashio::log.error "svc-claude-terminal: ttyd, tmux, or Claude Code is missing; idling" + exec sleep infinity +fi + +username="$(bashio::config 'terminal_username')" +if bashio::config.has_value 'terminal_password'; then + password="$(bashio::config 'terminal_password')" +elif bashio::config.has_value 'PASSWORD'; then + password="$(bashio::config 'PASSWORD')" +fi + +if [ -z "$password" ]; then + bashio::log.warning "svc-claude-terminal: set terminal_password (or PASSWORD) before mapping port ${port}; terminal will remain disabled" + exec sleep infinity +fi + +workspace="$(bashio::config 'terminal_workspace')" +if [ -z "$workspace" ]; then + workspace="${HOME}/workspace" +fi + +install -d -o abc -g abc "$workspace" +export CLAUDE_TERMINAL_WORKSPACE="$workspace" +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH}" + +bashio::log.info "svc-claude-terminal: starting authenticated ttyd terminal on port ${port}; workspace=${workspace}" +exec s6-setuidgid abc ttyd \ + -p "$port" \ + -W \ + -O \ + -c "${username}:${password}" \ + /usr/local/bin/claude-terminal-shell From a73eece7239ecbf4901d40ebc3382e1e8c5e553a Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:20:07 +0200 Subject: [PATCH 008/538] Register terminal as s6 longrun service --- .../rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type | 1 + 1 file changed, 1 insertion(+) create mode 100644 claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type new file mode 100644 index 0000000000..5883cff0cd --- /dev/null +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type @@ -0,0 +1 @@ +longrun From 120c1743c53819f5a49b4d67757d8fa65fd8e0ee Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:20:13 +0200 Subject: [PATCH 009/538] Enable terminal service in s6 user bundle --- .../etc/s6-overlay/s6-rc.d/user/contents.d/svc-claude-terminal | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-claude-terminal diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-claude-terminal b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-claude-terminal new file mode 100644 index 0000000000..e69de29bb2 From 3f91c73f3341e7d4435155dc69a24e1c0c98a90c Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:20:19 +0200 Subject: [PATCH 010/538] Add persistent tmux terminal shell --- .../rootfs/usr/local/bin/claude-terminal-shell | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 claude_desktop/rootfs/usr/local/bin/claude-terminal-shell diff --git a/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell b/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell new file mode 100644 index 0000000000..fed12dcd7f --- /dev/null +++ b/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +set -euo pipefail + +export HOME="${HOME:-/data/data}" +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" + +workspace="${CLAUDE_TERMINAL_WORKSPACE:-${HOME}/workspace}" +session_name="${CLAUDE_TMUX_SESSION:-claude}" + +mkdir -p "$workspace" +cd "$workspace" + +# Reattach every browser connection to the same terminal session. Closing the browser detaches +# the client but leaves Claude Code and other commands running inside tmux. +exec tmux new-session -A -s "$session_name" From ecafc2c6c1470b03059703e9c8d48ad3ddbbd3ae Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:20:27 +0200 Subject: [PATCH 011/538] Add Headroom Claude Code launcher --- .../rootfs/usr/local/bin/claude-headroom | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 claude_desktop/rootfs/usr/local/bin/claude-headroom diff --git a/claude_desktop/rootfs/usr/local/bin/claude-headroom b/claude_desktop/rootfs/usr/local/bin/claude-headroom new file mode 100644 index 0000000000..90a3c905ea --- /dev/null +++ b/claude_desktop/rootfs/usr/local/bin/claude-headroom @@ -0,0 +1,17 @@ +#!/usr/bin/env bash +set -euo pipefail + +if ! command -v claude >/dev/null 2>&1; then + echo "Claude Code is not installed or is not on PATH." >&2 + exit 127 +fi + +if ! command -v headroom >/dev/null 2>&1; then + echo "Headroom is unavailable; starting Claude Code directly." >&2 + exec claude "$@" +fi + +# Headroom's supported Claude Code integration starts or reuses its local proxy, configures the +# required routing/MCP environment, and then launches Claude Code. RTK remains active through +# the persistent Claude Code PreToolUse hook configured at add-on startup. +exec headroom wrap claude -- "$@" From 9aeafab4c72cd56c92c55d2cc9fd8970e7513607 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:20:33 +0200 Subject: [PATCH 012/538] Add direct Claude Code launcher --- claude_desktop/rootfs/usr/local/bin/claude-direct | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 claude_desktop/rootfs/usr/local/bin/claude-direct diff --git a/claude_desktop/rootfs/usr/local/bin/claude-direct b/claude_desktop/rootfs/usr/local/bin/claude-direct new file mode 100644 index 0000000000..9b16e20c3f --- /dev/null +++ b/claude_desktop/rootfs/usr/local/bin/claude-direct @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail + +exec claude "$@" From 6c7b6161dc7f667a1a1822de191f992195230c9b Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:21:36 +0200 Subject: [PATCH 013/538] Ensure terminal launchers are executable --- claude_desktop/Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 3105605c15..770ba767ce 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -42,12 +42,13 @@ RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGL # Add rootfs COPY rootfs/ / -RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; +RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; && \ + chmod +x /usr/local/bin/claude-direct /usr/local/bin/claude-headroom /usr/local/bin/claude-terminal-shell # Uses /bin for compatibility purposes # hadolint ignore=DL4005 RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \ - if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/bash /bin/bash; fi + if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/sh /bin/bash; fi # Install Claude Desktop, Claude Code, browser-terminal tooling, and Python tooling RUN install -d -m 0755 /etc/apt/keyrings && \ From afce010c4eb0db9e9a9f3a7ba5d080669668b057 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:21:53 +0200 Subject: [PATCH 014/538] Keep new terminal options upgrade-compatible --- claude_desktop/config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 64099bc88a..dcbfda427d 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -86,8 +86,8 @@ schema: ha_smart_context: bool? enable_ha_mcp: bool? dangerously_skip_permissions: bool? - enable_terminal: bool - terminal_username: match(^[A-Za-z0-9_.-]+$) + enable_terminal: bool? + terminal_username: match(^[A-Za-z0-9_.-]+$)? terminal_password: password? terminal_workspace: str? github_token: password? From 945267fe4a97fe9d9bd8afaf26b7234a1e78922d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:22:06 +0200 Subject: [PATCH 015/538] Handle terminal defaults on add-on upgrades --- .../rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run index 5d4a188b9d..d21b396c81 100644 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run @@ -8,7 +8,7 @@ declare username declare password="" declare workspace -if ! bashio::config.true 'enable_terminal'; then +if bashio::config.has_value 'enable_terminal' && ! bashio::config.true 'enable_terminal'; then bashio::log.info "svc-claude-terminal: terminal disabled; idling" exec sleep infinity fi @@ -18,7 +18,10 @@ if ! command -v ttyd >/dev/null 2>&1 || ! command -v tmux >/dev/null 2>&1 || ! c exec sleep infinity fi -username="$(bashio::config 'terminal_username')" +username="claude" +if bashio::config.has_value 'terminal_username'; then + username="$(bashio::config 'terminal_username')" +fi if bashio::config.has_value 'terminal_password'; then password="$(bashio::config 'terminal_password')" elif bashio::config.has_value 'PASSWORD'; then From b86091072ffb1d92eb2e5bae172835006f79a465 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:22:43 +0200 Subject: [PATCH 016/538] Fix bash compatibility symlink --- claude_desktop/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 770ba767ce..f46dcee1f7 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -48,7 +48,7 @@ RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -e # Uses /bin for compatibility purposes # hadolint ignore=DL4005 RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \ - if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/sh /bin/bash; fi + if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/bash /bin/bash; fi # Install Claude Desktop, Claude Code, browser-terminal tooling, and Python tooling RUN install -d -m 0755 /etc/apt/keyrings && \ From 4bc32f79153ada8d0219a2594edd241c1e179009 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 11:23:28 +0200 Subject: [PATCH 017/538] Default terminal workspace safely on upgrades --- .../rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run index d21b396c81..bf0ed53d3a 100644 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run @@ -33,9 +33,9 @@ if [ -z "$password" ]; then exec sleep infinity fi -workspace="$(bashio::config 'terminal_workspace')" -if [ -z "$workspace" ]; then - workspace="${HOME}/workspace" +workspace="${HOME}/workspace" +if bashio::config.has_value 'terminal_workspace'; then + workspace="$(bashio::config 'terminal_workspace')" fi install -d -o abc -g abc "$workspace" From bfa13257ff6b6fa43b6b29e50e85fcd249bcc057 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:19:09 +0200 Subject: [PATCH 018/538] Fix Claude terminal build and runtime safety --- claude_desktop/Dockerfile | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index f46dcee1f7..873fffe11a 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -66,11 +66,24 @@ RUN install -d -m 0755 /etc/apt/keyrings && \ git \ gh \ ripgrep \ - tmux \ - ttyd && \ + tmux && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* +# ttyd is not packaged in Debian bookworm. Install the pinned upstream static binary. +ARG TTYD_VERSION="1.7.7" +RUN set -eux; \ + case "$(dpkg --print-architecture)" in \ + amd64) ttyd_arch="x86_64" ;; \ + arm64) ttyd_arch="aarch64" ;; \ + *) echo "Unsupported architecture for ttyd: $(dpkg --print-architecture)" >&2; exit 1 ;; \ + esac; \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o /usr/local/bin/ttyd \ + "https://github.com/tsl0922/ttyd/releases/download/${TTYD_VERSION}/ttyd.${ttyd_arch}"; \ + chmod 0755 /usr/local/bin/ttyd; \ + /usr/local/bin/ttyd --version + # Install token-optimization tool prerequisites and binaries at build time RUN apt-get update && \ apt-get install -y --no-install-recommends nodejs && \ From 9b1ddeecda77c1903d82ecce784091450341c316 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:19:25 +0200 Subject: [PATCH 019/538] Harden Claude terminal workspace handling --- .../s6-rc.d/svc-claude-terminal/run | 54 ++++++++++++++++++- 1 file changed, 52 insertions(+), 2 deletions(-) diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run index bf0ed53d3a..afd56cb69a 100644 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run @@ -7,12 +7,20 @@ declare port=7681 declare username declare password="" declare workspace +declare canonical_workspace + +export PATH="${HOME:-/data/data}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" if bashio::config.has_value 'enable_terminal' && ! bashio::config.true 'enable_terminal'; then bashio::log.info "svc-claude-terminal: terminal disabled; idling" exec sleep infinity fi +if [ -z "${HOME:-}" ]; then + bashio::log.error "svc-claude-terminal: HOME is not initialized; idling" + exec sleep infinity +fi + if ! command -v ttyd >/dev/null 2>&1 || ! command -v tmux >/dev/null 2>&1 || ! command -v claude >/dev/null 2>&1; then bashio::log.error "svc-claude-terminal: ttyd, tmux, or Claude Code is missing; idling" exec sleep infinity @@ -22,9 +30,11 @@ username="claude" if bashio::config.has_value 'terminal_username'; then username="$(bashio::config 'terminal_username')" fi + if bashio::config.has_value 'terminal_password'; then password="$(bashio::config 'terminal_password')" elif bashio::config.has_value 'PASSWORD'; then + bashio::log.warning "svc-claude-terminal: using PASSWORD as fallback for terminal authentication; prefer a unique terminal_password" password="$(bashio::config 'PASSWORD')" fi @@ -38,9 +48,49 @@ if bashio::config.has_value 'terminal_workspace'; then workspace="$(bashio::config 'terminal_workspace')" fi -install -d -o abc -g abc "$workspace" +if [[ "$workspace" != /* ]]; then + bashio::log.error "svc-claude-terminal: terminal_workspace must be an absolute path; idling" + exec sleep infinity +fi + +if [ -L "$workspace" ]; then + bashio::log.error "svc-claude-terminal: terminal_workspace must not be a symbolic link; idling" + exec sleep infinity +fi + +if ! canonical_workspace="$(realpath -m -- "$workspace")"; then + bashio::log.error "svc-claude-terminal: unable to resolve terminal_workspace '$workspace'; idling" + exec sleep infinity +fi +workspace="$canonical_workspace" + +case "$workspace" in + "$HOME" | "$HOME"/* | /share/* | /media/* | /mnt/* | /data/* | /config/*) + ;; + *) + bashio::log.error "svc-claude-terminal: terminal_workspace must be the configured data_location or a subdirectory of /share, /media, /mnt, /data, or /config; idling" + exec sleep infinity + ;; +esac + +if [ ! -e "$workspace" ]; then + if ! install -d -m 0750 -o abc -g abc -- "$workspace"; then + bashio::log.error "svc-claude-terminal: failed to create workspace '$workspace'; idling" + exec sleep infinity + fi +elif [ ! -d "$workspace" ]; then + bashio::log.error "svc-claude-terminal: terminal_workspace '$workspace' is not a directory; idling" + exec sleep infinity +fi + +if ! s6-setuidgid abc test -r "$workspace" || + ! s6-setuidgid abc test -w "$workspace" || + ! s6-setuidgid abc test -x "$workspace"; then + bashio::log.error "svc-claude-terminal: workspace '$workspace' must be readable, writable, and searchable by user abc; idling" + exec sleep infinity +fi + export CLAUDE_TERMINAL_WORKSPACE="$workspace" -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH}" bashio::log.info "svc-claude-terminal: starting authenticated ttyd terminal on port ${port}; workspace=${workspace}" exec s6-setuidgid abc ttyd \ From 61e7d6d312218fdae2c85aba27bcafc66dcfba1a Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:20:34 +0200 Subject: [PATCH 020/538] Order Claude terminal after service initialization --- .../s6-rc.d/svc-claude-terminal/dependencies.d/init-services | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/dependencies.d/init-services diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/dependencies.d/init-services b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/dependencies.d/init-services new file mode 100644 index 0000000000..e69de29bb2 From edd1153c6448cf11f35787a74b719662f84a6ab9 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:20:44 +0200 Subject: [PATCH 021/538] Fix persistent Claude terminal shell startup --- .../rootfs/usr/local/bin/claude-terminal-shell | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell b/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell index fed12dcd7f..daf449397e 100644 --- a/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell +++ b/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell @@ -1,15 +1,24 @@ #!/usr/bin/env bash set -euo pipefail -export HOME="${HOME:-/data/data}" +if [ -z "${HOME:-}" ]; then + echo "Claude terminal: HOME is not initialized." >&2 + exit 1 +fi + +export SHELL="/bin/bash" export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" workspace="${CLAUDE_TERMINAL_WORKSPACE:-${HOME}/workspace}" session_name="${CLAUDE_TMUX_SESSION:-claude}" -mkdir -p "$workspace" -cd "$workspace" +if [ ! -d "$workspace" ]; then + echo "Claude terminal: workspace does not exist: $workspace" >&2 + exit 1 +fi + +cd -- "$workspace" # Reattach every browser connection to the same terminal session. Closing the browser detaches # the client but leaves Claude Code and other commands running inside tmux. -exec tmux new-session -A -s "$session_name" +exec tmux new-session -A -s "$session_name" -c "$workspace" From 9e87bf012d3aa479969549e20bb464e7d68a6adc Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:20:51 +0200 Subject: [PATCH 022/538] Reuse supervised Headroom proxy for Claude Code --- .../rootfs/usr/local/bin/claude-headroom | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/claude_desktop/rootfs/usr/local/bin/claude-headroom b/claude_desktop/rootfs/usr/local/bin/claude-headroom index 90a3c905ea..4c8fa247dd 100644 --- a/claude_desktop/rootfs/usr/local/bin/claude-headroom +++ b/claude_desktop/rootfs/usr/local/bin/claude-headroom @@ -7,11 +7,15 @@ if ! command -v claude >/dev/null 2>&1; then fi if ! command -v headroom >/dev/null 2>&1; then - echo "Headroom is unavailable; starting Claude Code directly." >&2 - exec claude "$@" + echo "Headroom is unavailable; start Claude Code directly with claude-direct." >&2 + exit 127 fi -# Headroom's supported Claude Code integration starts or reuses its local proxy, configures the -# required routing/MCP environment, and then launches Claude Code. RTK remains active through -# the persistent Claude Code PreToolUse hook configured at add-on startup. -exec headroom wrap claude -- "$@" +if ! curl -fsS --max-time 3 "http://127.0.0.1:8787/readyz" >/dev/null; then + echo "The supervised Headroom proxy is not ready on 127.0.0.1:8787. Ensure install_headroom is enabled and check the add-on log." >&2 + exit 1 +fi + +# Reuse the s6-supervised proxy instead of starting a competing proxy. RTK is already managed +# through the persistent Claude Code PreToolUse hook, so Headroom must not reinstall it. +exec headroom wrap claude --port 8787 --no-proxy --no-rtk -- "$@" From cddd2956ca6591a37fd154f5ed0aae4c6d340232 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:21:05 +0200 Subject: [PATCH 023/538] Run shared Headroom proxy as the runtime user --- .../rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run index 941b6768d6..fa912f0dbd 100755 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run @@ -1,16 +1,11 @@ #!/usr/bin/with-contenv bashio -# Headroom optimization proxy — runs ONLY as a local backend for the headroom MCP tools -# (headroom_compress / headroom_retrieve, registered in 82-claude_tools.sh). It is NOT a -# traffic router: no client's ANTHROPIC_BASE_URL is pointed at it, so the Claude Desktop -# Electron app (which force-overrides ANTHROPIC_BASE_URL — headroom #869) and every other -# client are unaffected. Without this backend the MCP tools cannot store/retrieve compressed -# content and no savings are ever recorded. +# Headroom optimization proxy — local backend for Claude Desktop MCP and Claude Code. declare port=8787 declare host=127.0.0.1 if bashio::config.true 'install_headroom' && command -v headroom >/dev/null 2>&1; then - bashio::log.info "svc-headroom: starting headroom proxy on ${host}:${port}; dashboard available at /dashboard when the port is mapped (MCP backend only; no client routing)" - exec headroom proxy --host "${host}" --port "${port}" --code-aware + bashio::log.info "svc-headroom: starting local Headroom proxy on ${host}:${port}" + exec s6-setuidgid abc headroom proxy --host "${host}" --port "${port}" --code-aware fi bashio::log.info "svc-headroom: install_headroom disabled or headroom not found; idling" From 69b323a16ba8198a8375604e78eb79022f599e72 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:21:28 +0200 Subject: [PATCH 024/538] Preserve Claude tool settings and ownership --- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 79 ++++++++++++++++--- 1 file changed, 66 insertions(+), 13 deletions(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 71bbdbe6d3..9484a20c04 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -2,6 +2,9 @@ # shellcheck shell=bash set -e set -o pipefail + +PUID="$(if bashio::config.has_value 'PUID'; then bashio::config 'PUID'; else echo '0'; fi)" +PGID="$(if bashio::config.has_value 'PGID'; then bashio::config 'PGID'; else echo '0'; fi)" mkdir -p "$HOME/.claude" CLAUDE_DESKTOP_COMMAND_FILE="/tmp/claude-desktop-command" @@ -138,24 +141,66 @@ PY else bashio::log.warning "rtk is not available" fi -elif [ -f "$HOME/.claude/settings.json" ] && grep -q 'rtk' "$HOME/.claude/settings.json"; then - bashio::log.info "Removing rtk Claude Code hook" +elif [ -f "$HOME/.claude/settings.json" ]; then + bashio::log.info "Removing the add-on-managed rtk Claude Code hook" python3 - <<'PY' || bashio::log.warning "Unable to remove rtk hook automatically" import json from pathlib import Path + path = Path.home() / ".claude" / "settings.json" data = json.loads(path.read_text()) -hooks = data.get("hooks", {}) -for event, entries in list(hooks.items()): - if isinstance(entries, list): - hooks[event] = [entry for entry in entries if "rtk" not in json.dumps(entry)] - if not hooks[event]: - hooks.pop(event, None) -if hooks: - data["hooks"] = hooks -else: - data.pop("hooks", None) -path.write_text(json.dumps(data, indent=2) + "\n") +if not isinstance(data, dict): + raise TypeError("Claude settings must contain a JSON object") + +hooks = data.get("hooks") +if not isinstance(hooks, dict): + raise SystemExit(0) + +entries = hooks.get("PreToolUse") +if not isinstance(entries, list): + raise SystemExit(0) + +changed = False +filtered_entries = [] +for entry in entries: + if not isinstance(entry, dict) or entry.get("matcher") != "Bash": + filtered_entries.append(entry) + continue + + commands = entry.get("hooks") + if not isinstance(commands, list): + filtered_entries.append(entry) + continue + + filtered_commands = [ + command + for command in commands + if not ( + isinstance(command, dict) + and command.get("type") == "command" + and command.get("command") == "rtk hook claude" + ) + ] + if len(filtered_commands) == len(commands): + filtered_entries.append(entry) + continue + + changed = True + if filtered_commands: + updated_entry = dict(entry) + updated_entry["hooks"] = filtered_commands + filtered_entries.append(updated_entry) + +if changed: + if filtered_entries: + hooks["PreToolUse"] = filtered_entries + else: + hooks.pop("PreToolUse", None) + if hooks: + data["hooks"] = hooks + else: + data.pop("hooks", None) + path.write_text(json.dumps(data, indent=2) + "\n") PY fi @@ -170,3 +215,11 @@ else bashio::log.info "Disabling caveman Claude Code plugin" find "$HOME/.claude" -maxdepth 4 -iname '*caveman*' -exec rm -rf {} + 2> /dev/null || true fi + +# Startup configuration runs as root, while Claude Desktop and the web terminal run as abc. +# Return managed persistent files to the configured runtime UID/GID after all writes complete. +for managed_path in "$HOME/.claude" "$HOME/.config/Claude"; do + if [ -e "$managed_path" ]; then + chown -R -- "${PUID}:${PGID}" "$managed_path" || bashio::log.warning "Unable to set ownership on $managed_path" + fi +done From b1536c4a6a96066dbc6509930830fee390abd1e1 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:22:15 +0200 Subject: [PATCH 025/538] Document Claude terminal security and persistence --- claude_desktop/README.md | 87 +++++++++++++++++++++++++++------------- 1 file changed, 59 insertions(+), 28 deletions(-) diff --git a/claude_desktop/README.md b/claude_desktop/README.md index fa400a3495..14bfb84e81 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -21,9 +21,9 @@ currently does not include Computer Use or dictation. ## Architecture Claude Desktop and Claude Code run as separate clients inside the same add-on. -They share the persistent home directory, Git credentials, repositories, Claude -Code configuration, Headroom storage, and RTK configuration, but they do not -share or hand off a conversation. +They share the configured persistent home directory, Git credentials, +repositories, Claude Code configuration, Headroom storage, and RTK +configuration, but they do not share or hand off a conversation. - **Claude Desktop** uses Headroom through its MCP tools. - **Claude Code** uses Headroom's supported `headroom wrap claude` integration. @@ -37,8 +37,8 @@ share or hand off a conversation. - Official Claude Code stable package installed in the same image. - Optional authenticated `ttyd` web terminal on port `7681`. - Persistent `tmux` session shared by reconnecting terminal clients. -- Persistent `$HOME` under `/data/data`, preserving Desktop and Claude Code - sign-in state across restarts. +- Persistent `$HOME` at the configured `data_location` (default `/data/data`), + preserving Desktop and Claude Code state across restarts. - Optional runtime Claude Desktop updates from Anthropic's apt repository. - Optional extra apt and pip package installation. - Baked-in `git`, GitHub CLI (`gh`), `ripgrep`, and terminal tooling. @@ -49,15 +49,17 @@ share or hand off a conversation. ## Claude Code terminal setup -The terminal is enabled in the add-on configuration but remains unavailable -until authentication is configured. Port `7681` is not mapped by default. +The terminal service is enabled in the add-on configuration but remains +unavailable until authentication is configured. Port `7681` is not mapped by +default. -1. Set `terminal_password`, or set the existing `PASSWORD` option as a fallback. +1. Set a unique `terminal_password`. The existing `PASSWORD` option is accepted + only as a compatibility fallback. 2. Optionally set `terminal_username` and `terminal_workspace`. 3. Map container port `7681` to a host port in the add-on **Network** section. 4. Restart the add-on. -5. Open `http://:7681` and sign in with the configured - terminal credentials. +5. Reach `http://:7681` only through an encrypted VPN or an + HTTPS reverse proxy, then sign in with the configured terminal credentials. The terminal opens in a persistent tmux session. Closing the browser detaches from tmux rather than terminating commands that are already running. @@ -68,9 +70,10 @@ Start the optimized Claude Code path with: claude-headroom ``` -This invokes `headroom wrap claude`, which starts or reuses the local Headroom -proxy and launches Claude Code with the required routing. The RTK hook remains -active through the shared `~/.claude/settings.json` configuration. +This reuses the supervised Headroom proxy on `127.0.0.1:8787` and launches +Claude Code with the required routing. Headroom is told not to install RTK +because the add-on already maintains the RTK hook in +`~/.claude/settings.json`. To bypass Headroom for troubleshooting, run: @@ -80,28 +83,55 @@ claude-direct Running `claude` directly is equivalent to the direct path. The first Claude Code launch may require its own account authentication; Desktop and Claude Code -store separate client credentials even though both live under the same +store separate client credentials even though both use the configured persistent home directory. -Do not expose the terminal port directly to the public internet. Prefer a VPN, -Tailscale, or another trusted private network in addition to ttyd authentication. +### Multiple concurrent clients + +Every browser connection attaches to the same tmux session. Concurrent clients +therefore see the same terminal, keystrokes, and resize events. This is useful +for reconnecting to one long-running session, but it is not an isolated +multi-user terminal. + +### Terminal user and permissions + +The service drops privileges to the LinuxServer `abc` account before starting +ttyd. The effective numeric UID and GID follow the configured `PUID` and `PGID`. +Using `PUID: 0` can provide root-equivalent access inside the add-on; use a +non-zero UID/GID where your storage permissions allow it. + +The configured workspace must resolve to the persistent home directory or a +subdirectory of `/share`, `/media`, `/mnt`, `/data`, or `/config`. Existing +directories are never re-owned by the terminal service and must already be +readable, writable, and searchable by `abc`. + +### Terminal security + +The direct ttyd endpoint uses HTTP Basic Authentication without TLS. +Credentials and terminal traffic are unencrypted on the network. ttyd also +receives its Basic Authentication credential as a process argument, so it is +visible to processes with sufficient access inside the container. + +Do not expose port `7681` directly to the public internet. Use a VPN such as +WireGuard or Tailscale, or place the endpoint behind an HTTPS reverse proxy. +Use a unique `terminal_password` rather than reusing the Selkies `PASSWORD`. ## Options | Option | Default | Description | | ------ | ------- | ----------- | -| `PUID` / `PGID` | `0` / `0` | User and group used for persistent data ownership. | +| `PUID` / `PGID` | `0` / `0` | Numeric user and group applied by the LinuxServer initialization. | | `TZ` | | Optional timezone, for example `Europe/Brussels`. | | `KEYBOARD` | | Optional Selkies keyboard layout. | -| `PASSWORD` | | Optional password for direct Selkies ports and fallback terminal password. | +| `PASSWORD` | | Optional password for direct Selkies ports and compatibility fallback for terminal authentication. | | `DRINODE` | | Optional GPU device override for Selkies. | | `DNS_server` | `8.8.8.8` | DNS server used by the standard DNS module. | | `auto_update` | `true` | Upgrade `claude-desktop` from Anthropic's apt repository at startup. | | `enable_terminal` | `true` | Enable the supervised Claude Code web-terminal service. | -| `terminal_username` | `claude` | Username used by ttyd basic authentication. | -| `terminal_password` | | Terminal password; falls back to `PASSWORD`. The service idles when neither is set. | +| `terminal_username` | `claude` | Username used by ttyd Basic Authentication. | +| `terminal_password` | | Dedicated terminal password. The service idles when this and `PASSWORD` are empty. | | `terminal_workspace` | | Initial directory; defaults to `/workspace`. | -| `install_headroom` | `true` | Enable Headroom MCP for Desktop and the local proxy used by `claude-headroom`. | +| `install_headroom` | `true` | Enable Headroom MCP for Desktop and the supervised local proxy reused by `claude-headroom`. | | `install_rtk` | `true` | Configure RTK's Claude Code `PreToolUse` hook. | | `install_caveman` | `true` | Install the Caveman Claude Code plugin in the persistent Claude home. | | `install_github_cli` | `true` | Enable setup checks for the baked-in `git` and `gh` commands. | @@ -110,14 +140,12 @@ Tailscale, or another trusted private network in addition to ttyd authentication | `github_email` | | Optional global Git author email. | | `ha_smart_context` | `true` | Enable Home Assistant smart context support for Claude tooling. | | `enable_ha_mcp` | `true` | Enable Home Assistant MCP support for Claude tooling. | -| `dangerously_skip_permissions` | `false` | Expose Claude Code's dangerous permission-skip option. | +| `dangerously_skip_permissions` | `false` | Reserved compatibility option; it is not applied by the terminal launcher. | | `additional_apps` | | Comma-separated Debian apt packages to install at startup. | | `additional_pip` | | Comma-separated pip packages installed with `--break-system-packages`. | | `data_location` | `/data/data` | Persistent home directory for both Claude clients and tooling. | | `env_vars` | `[]` | Additional environment variables exported inside the container. | -Standard SMB and local-disk options from the repository are also available. - ## Headroom behavior When `install_headroom` is enabled, the add-on registers `headroom mcp serve` in @@ -126,7 +154,8 @@ Claude Desktop and starts a supervised local Headroom backend. Desktop can use Claude Desktop overrides `ANTHROPIC_BASE_URL`, so it is deliberately launched without proxy injection. The web terminal instead provides `claude-headroom`, -which uses Headroom's supported Claude Code wrapper. +which reuses the supervised proxy through Headroom's `--no-proxy` mode. RTK +setup remains owned by the add-on through Headroom's `--no-rtk` mode. The Headroom dashboard remains available at: @@ -134,7 +163,8 @@ The Headroom dashboard remains available at: http://:8787/dashboard ``` -when the `8787/tcp` port is mapped. +when the `8787/tcp` port is mapped. Treat this endpoint as sensitive and do not +expose it directly to the public internet. ## Custom scripts @@ -145,7 +175,8 @@ the image. ## Data and cache locations -Persistent state is stored in `data_location`: +Persistent state is stored in the configured `data_location` (default +`/data/data`): - Claude Desktop sign-in: `~/.config/Claude` - Claude Code settings, hooks, sessions, and plugins: `~/.claude` @@ -157,4 +188,4 @@ Volatile cache data is redirected to `/tmp/cache` through `$XDG_CACHE_HOME` and [aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg [amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg -[maintenance-shield]: https://img.shields.io/maintenance/yes/2026.svg +[maintenance-shield]: https://img.shields.io/maintenance-yes-2026.svg From 66f9da648aca21b0149e7931a4a1a31b24a14259 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:22:31 +0200 Subject: [PATCH 026/538] Label Claude terminal transport security --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index dcbfda427d..f545094a26 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -62,7 +62,7 @@ ports: 8787/tcp: 8787 ports_description: 3001/tcp: Claude Desktop web interface - 7681/tcp: Authenticated Claude Code web terminal + 7681/tcp: HTTP Basic-auth Claude Code terminal (no TLS) 8787/tcp: Headroom dashboard and proxy privileged: - SYS_ADMIN From fe3a04d3973392395de9213fa78a2000e2588df2 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:23:18 +0200 Subject: [PATCH 027/538] Document Claude terminal review fixes --- claude_desktop/CHANGELOG.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index fb5e509dca..04ba951d2e 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,10 +1,13 @@ ## 1.13 (10-07-2026) -- Add the official Claude Code stable package, `ttyd`, `tmux`, and `ripgrep` to the Claude Desktop image. +- Add the official Claude Code stable package, `tmux`, `ripgrep`, and a pinned upstream `ttyd` binary for both supported architectures. - Add an optional authenticated Claude Code web terminal on port `7681`; reconnecting clients attach to the same persistent tmux session. -- Add `claude-headroom` for Headroom's supported `wrap claude` path and `claude-direct` for troubleshooting, while retaining the RTK `PreToolUse` hook. +- Validate and canonicalize `terminal_workspace`, restrict it to supported storage roots, and never re-own existing directories. +- Order the terminal after service initialization and start tmux with an explicit Bash shell and workspace. +- Add `claude-headroom` for Headroom's supported wrapper, reusing the supervised proxy with `--no-proxy` while leaving RTK management to the add-on. - Keep Claude Desktop on the MCP-only Headroom integration and remove the ineffective `ANTHROPIC_BASE_URL` export from its launch environment. -- Document the shared-home architecture, separate Desktop/CLI sessions, terminal security, and configuration. +- Preserve ownership of Claude settings for the configured runtime user and remove only the exact add-on-managed RTK hook when RTK is disabled. +- Document the shared-home architecture, separate Desktop/CLI sessions, direct HTTP terminal security, shared concurrent sessions, and configurable data location. ## 1.12 (09-07-2026) - Minor bugs fixed From effaf6e211990c6a94ff94a2021a36ca4dfb8e45 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:23:57 +0200 Subject: [PATCH 028/538] Fix Claude add-on README badge link --- claude_desktop/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 14bfb84e81..69d75b8ebe 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -188,4 +188,4 @@ Volatile cache data is redirected to `/tmp/cache` through `$XDG_CACHE_HOME` and [aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg [amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg -[maintenance-shield]: https://img.shields.io/maintenance-yes-2026.svg +[maintenance-shield]: https://img.shields.io/maintenance/yes/2026.svg From d86b8924d99c01ee5df836fac0c90938e3ab8826 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:27:18 +0200 Subject: [PATCH 029/538] Clarify Claude terminal secure defaults --- claude_desktop/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 04ba951d2e..efcdbffbba 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,7 +1,7 @@ ## 1.13 (10-07-2026) - Add the official Claude Code stable package, `tmux`, `ripgrep`, and a pinned upstream `ttyd` binary for both supported architectures. -- Add an optional authenticated Claude Code web terminal on port `7681`; reconnecting clients attach to the same persistent tmux session. +- Add an optional authenticated Claude Code web terminal on port `7681`; the port remains unmapped by default and reconnecting clients attach to the same persistent tmux session. - Validate and canonicalize `terminal_workspace`, restrict it to supported storage roots, and never re-own existing directories. - Order the terminal after service initialization and start tmux with an explicit Bash shell and workspace. - Add `claude-headroom` for Headroom's supported wrapper, reusing the supervised proxy with `--no-proxy` while leaving RTK management to the add-on. From 9267f4278088ae173258a8da03b6674221a6ccec Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:28:16 +0200 Subject: [PATCH 030/538] Clarify Claude add-on description --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index f545094a26..ed3320bfdb 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -2,7 +2,7 @@ arch: - aarch64 - amd64 audio: true -description: Claude Desktop and a persistent Claude Code terminal streamed from one add-on +description: Claude Desktop with a persistent Claude Code web terminal in one add-on devices: - /dev/dri - /dev/dri/card0 From b226abcb8aee3198de9b831801c9ac74effe83f0 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:34:36 +0200 Subject: [PATCH 031/538] Add temporary Claude add-on build diagnostics --- .github/workflows/pr2841-diagnostic.yml | 52 +++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 .github/workflows/pr2841-diagnostic.yml diff --git a/.github/workflows/pr2841-diagnostic.yml b/.github/workflows/pr2841-diagnostic.yml new file mode 100644 index 0000000000..ee7d777daa --- /dev/null +++ b/.github/workflows/pr2841-diagnostic.yml @@ -0,0 +1,52 @@ +--- +name: PR 2841 Build Diagnostic + +on: + pull_request: + branches: + - master + +jobs: + diagnose: + if: ${{ github.event.pull_request.number == 2841 }} + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v7 + + - name: Gather add-on information + id: information + uses: frenck/action-addon-information@v1.4 + with: + path: ./claude_desktop/ + + - name: Set up QEMU + uses: docker/setup-qemu-action@v4 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v4 + + - name: Build aarch64 and capture tail + shell: bash + run: | + set +e + BUILD_FROM="$(jq -r '.build_from.aarch64 // empty' '${{ steps.information.outputs.build }}')" + docker buildx build \ + --platform linux/arm64 \ + --progress=plain \ + --build-arg "BUILD_FROM=${BUILD_FROM}" \ + --file claude_desktop/Dockerfile \ + claude_desktop >build.log 2>&1 + status=$? + tail -n 300 build.log >build-tail.log + printf 'build_status=%s\n' "$status" >build-status.txt + exit 0 + + - name: Upload diagnostic log + uses: actions/upload-artifact@v4 + with: + name: pr2841-aarch64-build-log + path: | + build-tail.log + build-status.txt + retention-days: 1 From 4d9407c258469bcdb89420e8f5b4e24804f25a02 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:36:43 +0200 Subject: [PATCH 032/538] Capture Claude add-on build context diagnostics --- .github/workflows/pr2841-diagnostic.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pr2841-diagnostic.yml b/.github/workflows/pr2841-diagnostic.yml index ee7d777daa..a3aa6fed51 100644 --- a/.github/workflows/pr2841-diagnostic.yml +++ b/.github/workflows/pr2841-diagnostic.yml @@ -26,10 +26,19 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v4 - - name: Build aarch64 and capture tail + - name: Inspect context and build aarch64 shell: bash run: | set +e + { + echo '=== claude_desktop listing ===' + ls -la claude_desktop + echo '=== symlinks ===' + find claude_desktop -maxdepth 1 -type l -printf '%p -> %l\n' + echo '=== template candidates ===' + find .templates -maxdepth 1 -type f -printf '%f\n' | sort + } >context.txt 2>&1 + BUILD_FROM="$(jq -r '.build_from.aarch64 // empty' '${{ steps.information.outputs.build }}')" docker buildx build \ --platform linux/arm64 \ @@ -47,6 +56,7 @@ jobs: with: name: pr2841-aarch64-build-log path: | + context.txt build-tail.log build-status.txt retention-days: 1 From 0303e93c48100a1609fec5f0d0bbebe6aa6b31ce Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:38:44 +0200 Subject: [PATCH 033/538] Fetch repository helper templates during build --- claude_desktop/Dockerfile | 37 ++++++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 873fffe11a..e9a1bf661d 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -31,10 +31,15 @@ RUN \ usermod --home /data/data abc && \ if [[ -d /etc/services.d ]] && ls /etc/services.d/*/run 1> /dev/null 2>&1; then sed -i "1a set +e" /etc/services.d/*/run; fi +ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" + # Global LSIO modifications -COPY ha_lsio.sh /ha_lsio.sh ARG CONFIGLOCATION="/data/data" -RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGLOCATION"; fi && rm /ha_lsio.sh +RUN curl -fsSL --retry 3 --retry-delay 2 \ + -o /ha_lsio.sh "${TEMPLATE_BASE_URL}/ha_lsio.sh" && \ + chmod 744 /ha_lsio.sh && \ + if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGLOCATION"; fi && \ + rm /ha_lsio.sh ################## # 3 Install apps # @@ -105,27 +110,33 @@ RUN if [ -f /etc/s6-overlay/s6-rc.d/svc-selkies/run ]; then \ ARG MODULES="00-banner.sh 00-global_var.sh 01-custom_script.sh 00-local_mounts.sh 00-smb_mounts.sh 90-dns_set.sh" # Automatic modules download -COPY ha_automodules.sh /ha_automodules.sh -RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_automodules.sh +RUN curl -fsSL --retry 3 --retry-delay 2 \ + -o /ha_automodules.sh "${TEMPLATE_BASE_URL}/ha_automodules.sh" && \ + chmod 744 /ha_automodules.sh && \ + /ha_automodules.sh "$MODULES" && \ + rm /ha_automodules.sh # Manual apps ENV PACKAGES="nginx" # Automatic apps & bashio -COPY ha_autoapps.sh /ha_autoapps.sh -RUN chmod 744 /ha_autoapps.sh && /ha_autoapps.sh "$PACKAGES" && rm /ha_autoapps.sh +RUN curl -fsSL --retry 3 --retry-delay 2 \ + -o /ha_autoapps.sh "${TEMPLATE_BASE_URL}/ha_autoapps.sh" && \ + chmod 744 /ha_autoapps.sh && \ + /ha_autoapps.sh "$PACKAGES" && \ + rm /ha_autoapps.sh ################ # 4 Entrypoint # ################ -# Add entrypoint -COPY ha_entrypoint.sh /ha_entrypoint.sh -RUN chmod 777 /ha_entrypoint.sh - -# Install bashio -COPY bashio-standalone.sh /usr/local/lib/bashio-standalone.sh -RUN chmod 0755 /usr/local/lib/bashio-standalone.sh +# Add entrypoint and standalone bashio compatibility +RUN curl -fsSL --retry 3 --retry-delay 2 \ + -o /ha_entrypoint.sh "${TEMPLATE_BASE_URL}/ha_entrypoint.sh" && \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o /usr/local/lib/bashio-standalone.sh "${TEMPLATE_BASE_URL}/bashio-standalone.sh" && \ + chmod 0777 /ha_entrypoint.sh && \ + chmod 0755 /usr/local/lib/bashio-standalone.sh ENTRYPOINT [ "/usr/bin/env" ] CMD [ "/ha_entrypoint.sh" ] From 44f2c77daa1f217f206b0cdd69aae0f954412982 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:49:10 +0200 Subject: [PATCH 034/538] Run native Claude add-on build diagnostic --- .github/workflows/pr2841-diagnostic.yml | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/.github/workflows/pr2841-diagnostic.yml b/.github/workflows/pr2841-diagnostic.yml index a3aa6fed51..03048d6a2c 100644 --- a/.github/workflows/pr2841-diagnostic.yml +++ b/.github/workflows/pr2841-diagnostic.yml @@ -20,28 +20,16 @@ jobs: with: path: ./claude_desktop/ - - name: Set up QEMU - uses: docker/setup-qemu-action@v4 - - name: Set up Docker Buildx uses: docker/setup-buildx-action@v4 - - name: Inspect context and build aarch64 + - name: Build amd64 and capture tail shell: bash run: | set +e - { - echo '=== claude_desktop listing ===' - ls -la claude_desktop - echo '=== symlinks ===' - find claude_desktop -maxdepth 1 -type l -printf '%p -> %l\n' - echo '=== template candidates ===' - find .templates -maxdepth 1 -type f -printf '%f\n' | sort - } >context.txt 2>&1 - - BUILD_FROM="$(jq -r '.build_from.aarch64 // empty' '${{ steps.information.outputs.build }}')" + BUILD_FROM="$(jq -r '.build_from.amd64 // empty' '${{ steps.information.outputs.build }}')" docker buildx build \ - --platform linux/arm64 \ + --platform linux/amd64 \ --progress=plain \ --build-arg "BUILD_FROM=${BUILD_FROM}" \ --file claude_desktop/Dockerfile \ @@ -54,9 +42,8 @@ jobs: - name: Upload diagnostic log uses: actions/upload-artifact@v4 with: - name: pr2841-aarch64-build-log + name: pr2841-amd64-build-log path: | - context.txt build-tail.log build-status.txt retention-days: 1 From 613f283d886b8bcb4803b0070f282372239ab6b5 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 10 Jul 2026 12:50:40 +0000 Subject: [PATCH 035/538] Github bot : stats updated --- Stats | 258 +++++++++++++++++++++++++++++---------------------------- Stats2 | 256 ++++++++++++++++++++++++++++---------------------------- 2 files changed, 261 insertions(+), 253 deletions(-) diff --git a/Stats b/Stats index 102b232aee..c4e9388669 100644 --- a/Stats +++ b/Stats @@ -1,127 +1,131 @@ -2026-07-03 2026-06-26 2026-06-12 2026-06-05 2026-05-29 2026-05-22 2026-05-15 2026-05-08 2026-05-01 2026-04-24 2026-04-17 2026-04-10 2026-04-03 2026-03-27 2026-03-20 2026-03-13 2026-03-06 2026-02-27 2026-02-20 2026-02-13 2026-02-06 2026-01-30 2026-01-23 2026-01-16 2026-01-09 2026-01-02 2025-12-26 2025-12-19 2025-12-12 2025-12-05 2025-11-28 2025-11-21 2025-11-14 2025-11-07 2025-11-06 2025-10-31 2025-10-24 2025-10-17 2025-10-10 2025-10-03 2025-09-26 2025-09-19 2025-09-12 2025-09-05 2025-08-29 2025-08-22 2025-08-15 2025-08-08 2025-08-01 2025-07-25 2025-07-18 2025-07-11 2025-07-04 2025-06-27 2025-06-20 2025-06-13 2025-06-06 2025-05-30 2025-05-30 2025-05-23 2025-05-16 2025-05-09 2025-05-08 2025-04-11 2025-04-04 2025-03-28 2025-03-21 2025-03-14 2025-03-07 2025-02-28 2025-02-21 2025-02-14 2025-02-07 2025-01-31 2025-01-24 2025-01-17 2025-01-10 2025-01-03 2024-12-27 2024-12-20 2024-12-13 2024-12-06 2024-11-29 2024-11-22 2024-11-15 2024-11-08 2024-11-01 2024-10-25 2024-10-18 2024-10-11 2024-10-04 2024-09-27 2024-09-20 2024-09-13 2024-09-06 2024-08-30 2024-08-23 2024-08-16 2024-08-09 2024-08-02 2024-07-26 2024-07-19 2024-07-12 2024-07-05 2024-06-28 2024-06-21 2024-06-14 2024-06-07 2024-05-31 2024-05-24 2024-05-24 2024-05-17 2024-05-10 2024-05-03 2024-04-26 2024-04-19 2024-04-12 2024-04-05 2024-03-29 2024-03-22 2024-03-15 2024-03-08 2024-03-01 2024-02-16 2024-02-09 2024-02-02 2024-01-26 2024-01-19 2024-01-12 2024-01-05 2023-12-22 2023-12-15 2023-12-08 2023-11-24 2023-11-17 2023-11-10 2023-11-03 2023-10-27 2023-10-20 2023-10-13 2023-10-06 2023-09-29 2023-09-22 2023-09-15 2023-09-08 2023-09-01 2023-08-25 2023-08-18 2023-08-11 2023-08-04 2023-07-28 2023-07-21 2023-07-14 2023-07-07 2023-06-30 2023-06-23 2023-06-16 2023-06-09 2023-06-02 2023-05-26 2023-05-19 2023-05-12 2023-05-05 2023-04-28 2023-04-21 2023-04-14 2023-04-07 2023-03-31 2023-03-24 2023-03-17 2023-03-10 2023-03-03 2023-02-24 2023-02-17 2023-02-10 2023-02-03 2023-01-27 2023-01-21 2023-01-13 2023-01-06 2022-12-30 2022-12-24 2022-12-16 2022-12-09 2022-12-08 Date -508490 295538 187951 202857 207298 140475 196724 195429 192371 161135 168787 147551 141128 128014 125333 116609 115189 108264 102680 82287 69115 77528 69094 60852 63855 80968 76650 76368 76680 74263 72911 76740 86290 85365 84859 - - 93916 89227 85492 81733 82398 80928 80058 77828 76925 73054 77998 74436 75347 75004 72775 69407 74365 76109 75314 73044 68415 68003 74989 75413 95755 95280 94242 91014 90233 88789 86207 85170 85194 86915 84812 82572 80743 84366 86769 84305 81481 76240 76908 75990 74319 76488 77734 75851 75809 74807 73967 74197 71724 73990 73372 74249 73736 71352 83606 88312 89846 87690 86596 92746 94295 90039 80926 72882 71830 70159 69833 67653 69012 69005 70922 69934 66029 66168 66686 64308 67070 65017 73318 76478 73677 74019 70426 62241 55701 53744 52326 49500 48175 42473 42336 39905 34679 46033 42786 42795 40675 39766 38360 36480 37779 40026 39455 41790 43334 50337 49386 48913 46173 43611 43648 42982 41225 38304 38828 30434 30232 30051 32193 31615 29210 26192 19917 20377 19409 19253 18223 18044 16127 15701 14436 13970 13610 14133 12886 12065 11500 10919 9777 7647 7966 4937 3908 3691 TOTAL -59486 31480 20032 18566 17110 15635 14159 12678 11315 10091 9013 7413 6046 4639 3399 3376 3356 3341 3313 3287 3254 3238 3225 3206 3199 3184 3170 3144 3134 3116 3099 3086 3568 3559 3559 - - 3510 3489 3470 3450 3439 3431 3418 3399 3389 3354 3338 3329 3318 3304 3292 3280 3272 3263 3253 3239 3232 3231 3221 3199 3186 3184 3132 3113 3091 3082 3062 3047 3030 3015 2994 2980 2967 2950 2932 2911 2883 2859 2847 2835 2818 2796 2778 2774 2759 2749 2737 2722 2711 2692 2669 2662 2632 2619 2604 2595 2582 2566 2561 2548 2530 2517 2505 2487 2464 2450 2440 2423 2407 2407 2384 2349 2303 2264 2222 2190 2150 2095 2068 2031 1999 1974 1910 1883 1845 1813 1780 1736 1693 1612 1574 1546 1469 1429 1378 1343 1321 1301 1277 1260 1239 1223 1199 1191 1178 1167 1122 1079 1036 1001 959 915 841 787 778 647 635 622 618 589 527 451 353 326 313 300 289 277 262 252 240 227 218 193 183 168 142 126 98 88 75 39 30 29 arpspoof -55582 27559 16050 14551 13058 11558 10047 8509 7130 5849 4717 3063 2295 2074 3473 3399 3345 3289 3011 2747 2690 2651 2608 2568 2536 2501 2472 2435 2402 2361 2327 2296 2281 2251 2249 - - 2182 2149 2107 2083 2057 2022 1996 1960 1919 1875 1836 1793 1749 1714 1678 1639 1607 1577 1530 1482 1446 1442 1412 1381 1338 1334 1152 1102 1059 1005 909 2227 2184 2140 1274 1239 1181 1123 1055 992 924 820 1466 1428 1380 1343 1299 1253 1210 1159 1113 1074 1036 976 918 884 824 767 700 1735 1699 1661 1626 1581 1534 1510 1466 1430 1381 1346 1303 1266 1233 1232 1151 1091 1008 940 880 806 732 628 530 5291 5234 5190 4304 1538 380 500 412 312 700 568 509 427 424 348 333 387 322 281 232 254 219 228 196 161 198 208 770 723 674 621 571 521 431 363 343 205 187 172 156 104 338 263 152 113 92 74 54 35 14 - - - - - - - - - - - - - - - sponsorblockcast -44486 16436 4822 3168 17372 15885 14386 12788 11218 9779 8500 6664 5074 3427 1945 1845 1723 1625 1548 1376 1277 1218 1121 1059 994 925 842 757 674 569 488 289 600 578 568 - - 564 573 510 442 208 208 208 208 770 719 689 651 624 601 566 530 479 391 324 1576 1538 1538 1514 1481 1459 1455 1363 1335 1309 1289 1260 1230 1211 1177 1152 1122 1097 1068 1040 1011 975 949 916 892 868 847 825 796 773 751 737 714 689 658 635 613 583 572 552 525 493 466 450 412 377 348 319 329 391 371 347 309 545 545 497 462 405 354 296 526 480 424 382 330 245 238 396 346 299 223 157 343 297 200 167 221 124 183 265 228 194 181 163 150 136 131 125 118 251 241 206 152 191 146 356 314 243 184 171 129 114 99 384 352 293 226 130 111 95 88 100 94 82 146 138 128 117 112 100 90 70 56 44 39 34 11 7 6 flaresolverr -44263 15879 1533 4760 5035 322 12978 11060 9266 7616 6058 3740 6494 4683 3030 2664 2247 695 1615 1136 615 1559 1153 838 1869 1609 1327 803 1332 909 797 1006 1342 1335 1306 - - 3567 3472 3370 3281 3162 3045 2935 2826 2734 2609 2516 2387 2255 2155 2075 1983 1877 1774 1677 1572 1477 1473 1343 1230 1116 1098 1353 1227 1106 985 838 680 296 5 1024 905 870 1718 1609 1501 1373 1252 1160 1060 949 815 1013 878 776 1206 1143 1069 1012 935 843 730 832 733 895 806 691 762 652 5900 5837 4452 2213 814 726 627 609 775 652 651 2399 2319 2230 2155 2068 1983 1896 1811 1727 1643 1565 1462 1259 1167 1071 971 860 768 660 460 351 344 358 373 330 692 630 570 487 426 1712 1662 1590 1542 1500 1457 1373 1302 1234 1154 1075 995 896 818 788 619 561 523 461 375 261 205 495 448 409 353 291 331 285 274 254 173 262 268 268 251 193 193 225 172 181 156 201 196 jellyfin -41574 13233 6367 4500 3735 1912 1879 5209 3682 2341 2132 1882 1707 129 2857 2626 2425 2131 1774 1711 43 1161 57 1377 1236 1062 870 1920 1759 1541 795 496 2233 2125 2113 - - 1840 1761 1661 1575 1480 1381 1246 1115 957 1098 950 333 974 808 1338 1287 2120 2043 1948 1862 1734 1731 1599 1428 2508 2501 2125 2029 1919 1834 1695 1528 1352 2305 2193 2085 1974 1860 1743 1602 1417 1234 1629 1492 1349 1150 1438 1316 1117 1004 883 693 1119 1246 1081 1383 1270 1149 1019 1952 1865 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1787 1711 1640 1561 1508 1417 1321 1214 1112 981 1255 1165 1165 1059 933 801 647 1201 1063 887 1843 1734 1654 1540 1439 1180 1009 832 615 803 787 557 181 428 826 472 819 643 582 819 712 590 485 894 828 739 638 1466 1404 1300 1216 1123 1019 916 817 672 526 610 384 352 1101 1049 963 847 694 481 709 627 556 461 359 363 504 363 293 364 340 340 325 323 323 337 312 407 266 240 225 qbittorrent -38416 10433 9826 8389 6967 5524 4069 2603 1251 16 833 658 478 290 109 101 97 95 89 83 80 78 77 74 73 69 68 67 65 56 51 50 50 48 48 - - 42 34 34 33 33 30 28 25 73 66 65 64 63 59 57 57 56 53 52 50 47 47 44 43 41 38 32 30 29 26 54 47 45 41 39 34 31 27 377 377 376 374 372 366 364 353 344 342 342 342 339 335 333 331 329 328 321 321 321 319 317 316 315 312 308 307 301 299 295 295 293 293 293 293 258 244 209 185 152 128 94 64 48 184 162 146 103 79 54 40 97 70 41 121 98 76 28 105 75 48 35 34 29 27 25 22 21 20 17 52 120 87 50 390 359 327 263 214 211 90 87 84 81 56 189 129 38 26 20 17 17 46 43 40 34 28 27 23 21 20 25 25 24 22 19 6 3 3 mylar3 -38165 10023 608 4057 2526 116 2420 2304 2356 488 2549 2328 1739 1143 1295 1205 1020 1035 1131 658 559 455 439 693 653 586 464 642 595 525 621 546 588 515 497 - - 511 507 515 491 705 665 619 558 494 230 503 204 489 473 479 637 583 518 505 522 537 532 677 613 546 535 596 529 586 522 518 533 581 518 528 598 523 654 600 523 509 484 496 479 602 534 469 467 513 446 457 527 463 452 515 447 449 461 435 433 427 471 411 417 415 415 532 491 433 489 410 503 436 436 450 449 532 449 461 554 457 530 443 443 398 475 384 439 446 549 461 535 441 495 425 504 337 376 385 374 343 346 385 324 367 312 232 316 413 358 352 353 348 339 437 364 400 303 364 260 310 306 404 326 354 432 288 279 250 254 307 243 252 236 226 196 225 281 231 243 288 288 237 181 298 226 195 195 plex_nas -37756 41777 24666 20162 15315 1256 16250 13204 23749 20942 18923 16185 13117 13099 14344 13274 11743 13667 12086 8907 6058 4539 4066 3568 3045 9930 7365 5640 6404 5642 2945 7502 7128 6676 6621 - - 14629 12198 9690 7034 6552 6090 5414 5364 5520 4076 8230 5640 6309 5852 5180 2206 6224 5295 4448 3405 242 6 5682 7272 6290 6205 10604 8139 7186 6648 6146 5424 5515 9115 6697 6111 5412 7159 11125 10594 8800 6024 5941 5275 5828 5119 7030 6671 6207 5639 4939 4263 3415 4999 5472 4814 5539 4890 18272 17557 17232 16970 16729 16499 16274 14119 11142 8709 7725 7470 7186 6864 6583 6582 6246 5910 5512 5013 4412 5496 5045 4389 12880 12601 12221 11881 10434 7402 5947 5571 5139 4655 4160 3131 2395 2557 2129 5838 5509 5176 4858 4541 4136 3752 3228 3684 3192 5490 5246 4979 4713 4452 4159 3836 3472 3016 4488 4238 4010 3585 3255 2851 3665 3335 2880 3319 2766 4137 3852 3527 3207 2848 2476 2542 2400 2836 2366 3080 2786 2538 2238 1987 1630 1327 1176 847 588 555 portainer -25575 9600 337 3 1775 72 1894 1785 1604 261 2012 1275 1781 1782 598 581 537 536 718 334 263 297 249 163 146 289 248 291 311 306 300 305 298 294 291 - - 295 294 288 297 296 305 295 305 301 295 285 288 273 279 291 296 293 279 295 280 306 305 294 317 303 293 285 304 286 294 292 298 295 296 288 285 286 294 289 304 272 272 301 272 274 270 265 273 261 262 261 246 263 259 241 243 230 242 232 243 234 235 228 238 233 230 242 234 235 245 253 239 283 282 275 275 287 267 268 279 286 253 274 272 234 222 2600 1318 270 257 258 211 268 250 236 241 215 229 237 221 205 203 187 195 195 194 195 195 192 237 231 219 224 219 233 244 241 189 247 188 193 187 220 184 239 253 183 177 181 171 169 161 159 154 148 110 134 140 111 129 118 118 94 106 136 104 95 95 jackett_nas -19966 19356 9643 24812 22468 2430 22305 25659 24171 21797 23876 20636 24120 21748 24134 21638 21185 19921 17876 12032 8215 11110 8649 3807 5314 11483 10156 10195 10314 10172 10081 10076 10043 11067 10951 - - 11537 10765 9557 9367 11692 11023 10227 8929 8833 7902 8340 7762 8427 8277 8285 8229 8228 11416 10904 10325 9669 9633 8767 7401 26982 26925 25607 25173 24774 24363 23957 23559 23174 22845 22434 22023 21617 21190 20760 20328 19788 19317 18902 18464 17966 17528 17159 16773 16375 15944 15536 15163 14735 14288 13905 13564 13225 12882 12557 12187 11830 11475 11150 10830 10519 10206 9880 9545 9204 8880 8509 8102 7701 7701 7265 6739 6139 5257 6152 5411 9957 9569 9181 8879 8506 8131 7318 6854 6384 5921 5304 4283 4406 3468 5309 4756 3599 6078 5712 5363 5001 4643 4144 3597 4034 3492 4252 3817 3241 8250 8000 7767 7521 7293 7034 6803 6575 6325 6136 5808 5613 5426 5247 5029 4775 4482 4212 3978 3759 3498 3263 3035 2810 2532 2229 1960 1569 2036 1730 1356 1359 1359 1070 888 727 477 285 264 filebrowser -11304 10999 10101 9699 9262 8852 8362 7977 7565 7246 6833 6473 6031 5642 5248 4976 4696 4487 4257 3947 3753 3627 3492 3384 3252 3077 2936 2821 2718 2574 2440 2299 2166 2023 2013 - - 1647 1511 1387 1298 1172 1037 893 733 1262 1115 966 805 646 418 573 250 141 262 184 95 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - postgres_17 -5095 5038 4944 4896 4839 4760 4713 4594 4402 4181 3971 3725 3475 3236 3002 2914 2858 2813 2772 2711 2672 2638 2601 2568 2535 2483 2450 2413 2377 2344 2309 2264 2246 2214 2208 - - 2118 2080 2042 2013 1975 1942 1908 1868 1833 1785 1733 1648 1578 1511 1400 1243 991 1479 1387 1225 15 3 2846 2726 2630 2610 2068 1946 1842 1719 1577 1441 1293 1076 1394 1227 1053 792 705 965 1370 1168 1005 861 372 3232 3124 3028 2943 2844 2744 2647 2554 2460 2359 2274 2169 2067 1973 1894 1793 1709 1611 1513 1435 1394 1345 1310 1255 1202 1163 1115 1071 1071 999 950 886 831 764 708 633 537 467 399 322 243 341 263 170 690 629 561 493 376 313 252 128 164 254 194 158 130 95 69 51 37 72 29 289 274 226 183 141 102 62 16 223 166 163 31 18 5 - - - - - - - - - - - - - - - - - - - - - - - - - - postgres -4502 3948 7706 9960 9417 8697 7732 10309 9774 9165 8442 7216 5738 4860 3040 670 6846 6020 4442 4315 3305 4492 3804 2138 1145 3090 2566 1 197 192 3312 3150 2996 2728 2664 - - 1748 1512 2499 2397 2271 2122 1970 1840 1626 1374 1366 2482 2332 1872 1220 910 759 587 1229 1003 842 834 1184 1069 955 943 656 980 874 753 595 456 517 405 207 353 239 0 64 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - netalertx -4039 5006 4366 3910 3918 404 2609 4234 3827 1790 4213 3922 3508 3514 3524 4060 3798 3402 2324 1903 1445 1310 1172 1000 67 818 1443 974 131 1731 1589 1436 1571 1397 1356 - - 1318 1364 744 1299 1547 1446 1274 1264 558 551 549 1137 1170 1035 573 9 1987 1940 1898 1856 1777 1773 1746 1687 1637 1633 1372 1268 1129 1338 1246 1077 1325 1202 1073 640 1084 959 821 195 877 711 567 446 951 1051 904 793 660 1005 889 704 303 574 571 1153 1041 920 738 1030 951 831 1064 978 889 765 799 654 690 629 718 632 730 730 641 477 327 627 716 622 809 705 595 554 648 583 619 519 286 6 972 914 853 732 689 641 533 485 421 347 289 233 808 771 732 710 680 660 631 607 567 520 468 415 372 330 258 197 168 175 142 230 203 153 169 321 231 185 129 606 588 562 542 501 465 434 404 373 368 328 276 192 142 7 90 53 38 35 mealie -3518 3129 2362 1976 1428 85 3567 3099 2595 2110 2218 2226 2123 2131 3075 2788 2439 2121 1669 1114 768 1620 1480 1340 1195 1009 720 1234 1098 913 725 1035 854 595 567 - - 1005 842 794 652 451 24 708 433 621 901 742 688 1137 1026 903 781 642 830 703 489 30 30 1015 889 774 743 224 681 870 766 598 37 423 40 698 575 549 649 505 823 697 483 462 307 560 418 441 427 423 498 405 506 405 402 462 368 359 333 391 346 369 301 290 288 301 304 336 251 270 459 397 343 279 278 323 255 250 398 329 263 252 221 205 207 188 203 315 250 552 495 442 380 314 208 145 138 62 160 147 149 105 137 90 92 69 35 105 98 82 111 103 87 97 92 94 92 35 205 194 100 80 54 74 74 174 124 42 34 46 58 53 70 60 48 21 23 29 22 29 28 2 2 0 - - - - - immich -3143 3079 2959 2879 2781 2693 2607 2462 2382 2340 2273 2215 2131 2061 1930 1815 1753 1699 1625 1527 1441 1366 1253 715 4301 4238 4201 4177 4123 4081 4033 3997 4042 4001 3996 - - 3910 3884 3861 3830 3802 3772 3749 3718 3683 3640 3608 3575 3540 3511 3489 3454 3431 3405 3375 3351 3328 3326 3291 3269 3249 3244 3165 3132 3089 3058 3022 2992 2943 2902 2863 2828 2793 2760 2705 2656 2584 2546 2506 2462 2415 2350 2292 2252 2206 2173 2135 2086 2023 1966 1914 1871 1820 1781 1730 1681 1633 1576 1525 1477 1447 1412 1357 1314 1258 1179 1093 548 2125 2125 2052 1970 1870 1794 1714 1654 1561 1466 1383 1282 1092 910 927 1710 1628 1527 1419 1289 1169 916 951 831 477 1416 1310 1145 1001 874 811 755 653 860 797 726 640 511 860 753 639 533 1392 1321 1240 1163 1124 965 939 910 887 836 761 656 515 492 834 803 755 709 672 607 450 490 416 365 279 254 504 397 403 272 289 35 59 39 myelectricaldata -2837 2831 2809 2795 2779 2761 2751 2724 2693 2681 2661 2647 2624 2604 2546 2512 2504 2490 2460 2421 2368 2356 2337 2331 2321 2309 2294 2285 2279 2261 2247 2232 2695 2689 2688 - - 2665 2646 2630 2625 2615 2607 2594 2585 2572 2555 2546 2533 2532 2527 2519 2508 2504 2499 2491 2482 2476 2476 2468 2462 2450 2448 2411 2401 2394 2388 2369 2359 2350 2345 2339 2328 2316 2303 2291 2280 2266 2252 2245 2239 2232 2214 2201 2197 2187 2179 2171 2155 2134 2113 2106 2101 2086 2085 2079 2066 2059 2054 2049 2038 2030 2021 2007 2001 1990 1986 1979 1967 1961 1961 1941 1909 1872 1828 1796 1762 1724 1676 1650 1626 1607 1583 1534 1508 1483 1463 1436 1401 1378 1297 1259 1218 1156 1117 1083 1054 1037 1023 1017 1007 1003 1000 994 988 982 977 946 909 867 829 785 747 679 628 617 489 480 472 462 432 376 310 215 189 177 170 166 158 153 138 126 114 104 89 87 82 64 52 46 43 37 19 13 13 teamspeak -2806 2806 2788 2780 2774 2767 2750 2686 2525 2351 2172 1986 1793 1610 1419 1401 1382 1376 1353 1338 1310 1288 1269 1254 1228 1205 1172 1152 1128 1107 1089 1072 1056 1035 1033 - - 981 959 944 929 917 895 874 852 832 812 787 773 757 724 710 693 684 673 653 629 603 603 584 551 527 521 440 395 2286 2265 2238 2206 2193 2162 2137 2101 2068 2043 2004 1976 1939 1902 1878 1857 1839 1815 1791 1763 1727 1699 1680 1659 1632 1614 1591 1571 1549 1532 1515 1488 1462 1433 1407 1382 1357 1322 1297 1271 1246 1234 1222 1207 1194 1194 1182 1154 1128 1100 1076 1056 1026 991 963 948 924 898 859 832 807 779 758 723 695 627 599 566 516 486 450 418 402 386 377 357 340 328 318 302 296 283 245 207 169 131 308 280 226 183 166 562 550 541 522 477 417 348 242 221 209 196 186 180 171 145 144 133 119 102 103 150 132 119 99 73 64 33 27 27 overseerr -2503 2191 1238 930 2191 1773 2108 1823 1776 944 1860 1527 1457 1620 1327 1467 1178 962 943 764 568 423 298 145 67 70 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - filebrowser_quantum -2490 2842 994 2391 3288 3074 2773 2428 3448 3211 2892 2483 2488 3587 3334 3078 2724 2368 2280 1424 1181 1004 801 708 524 1379 1220 1067 950 788 552 1566 1377 1246 1225 - - 1242 1060 1321 1181 1003 458 1277 1125 954 1399 1296 1183 1064 895 472 1266 1141 985 1340 1228 1118 1111 942 23 1246 1231 898 751 580 953 36 926 1126 950 1404 1262 1130 950 1463 1335 1198 1054 886 875 652 537 1001 838 1113 996 843 1139 1018 849 1000 839 830 959 816 31 1019 917 752 1073 986 897 740 488 538 352 732 65 65 65 45 31 9 1160 1016 883 730 1132 1001 867 625 1101 836 665 798 653 479 339 619 457 546 315 302 760 579 750 620 443 453 545 403 455 342 211 353 203 429 700 576 419 500 653 653 545 456 558 499 404 758 649 497 310 481 367 209 298 299 359 394 249 365 269 316 429 325 238 468 468 405 328 283 193 124 94 nextcloud_ocr -2090 2045 1925 1848 1798 1744 1673 1613 1551 1496 1414 1331 1238 1141 989 1095 1010 452 780 685 621 571 539 495 444 397 332 5 911 880 836 797 757 717 713 - - 607 561 528 496 424 287 280 788 740 690 637 553 236 1242 1210 1194 1181 1148 1110 1075 1052 1049 1012 976 947 938 835 803 768 733 688 640 605 574 531 470 413 1174 1128 1087 1042 1010 984 951 925 880 842 798 760 714 668 609 497 1584 1539 1501 1458 1417 1384 1358 1332 1307 1273 1233 1208 1185 1155 1136 1099 1064 1037 993 962 961 905 860 809 756 705 652 582 506 412 1111 1054 1013 923 877 835 789 732 687 631 531 490 453 322 357 547 492 453 420 350 302 247 242 199 169 137 415 352 660 606 554 506 456 367 281 404 279 291 215 394 345 272 137 235 373 337 306 282 232 284 228 298 268 243 201 170 122 188 144 176 150 131 91 59 57 guacamole -2055 1950 1700 4641 4392 4168 3939 3677 3414 3198 2982 2728 2451 2210 1956 1824 1599 1080 959 798 656 2480 2442 2410 2355 2311 2259 2215 2172 2124 2078 2029 2015 1948 1940 - - 1808 1765 1731 1691 1651 1612 1567 1539 1500 1463 1433 1394 1359 1323 1274 1246 1212 1170 1122 1080 1041 1038 996 963 917 909 749 704 656 605 550 480 425 0 685 625 538 455 776 724 622 539 429 1945 1874 1825 1770 1714 1640 1587 1524 1474 1433 1384 1341 1287 1237 1182 1137 1082 1034 990 948 903 849 800 738 648 1184 1137 1102 1061 1015 1015 941 850 772 679 593 499 716 602 499 390 82 1556 1399 1331 1255 1164 1085 995 885 673 525 412 1073 989 910 836 771 719 668 628 572 513 452 380 354 285 267 265 291 272 271 280 283 234 316 313 246 225 233 263 271 321 319 216 211 213 221 274 203 206 277 145 202 333 260 277 254 254 294 218 282 205 204 195 transmission_ls -2009 1989 1901 1853 1815 1792 1751 1695 1646 1583 1536 1468 1408 1336 1286 1208 1160 1112 1049 982 925 874 829 779 702 560 171 2012 1793 1577 1438 1390 1351 1313 1308 - - 1227 1202 1171 1146 1122 1097 1067 1036 1015 983 947 920 888 862 835 808 780 747 702 657 593 591 634 583 1170 1164 1051 1027 999 965 932 887 851 816 790 747 714 672 633 587 537 478 753 711 670 632 595 554 505 452 488 436 510 446 472 436 495 461 412 409 666 633 612 594 558 535 521 488 461 424 393 344 476 476 414 347 512 456 403 355 401 334 133 119 576 541 447 410 358 295 264 448 389 299 251 302 211 414 353 302 262 247 217 187 157 192 166 135 498 476 419 364 309 262 199 143 296 229 207 53 47 28 41 - - - - - - - - - - - - - - - - - - - - - - - - - portainer_agent -1823 1795 1724 1714 1688 1665 1649 1573 1396 1216 1023 832 644 450 260 224 198 162 123 99 79 65 49 24 4 128 119 103 84 63 40 14 6 72 72 - - 71 67 66 66 66 66 66 66 66 61 61 60 60 59 59 59 53 49 53 78 68 68 61 44 57 54 50 55 60 45 57 48 55 61 52 59 49 54 56 53 51 49 57 50 55 54 51 55 47 51 70 58 54 61 150 145 133 120 111 104 96 76 61 65 71 59 60 77 67 67 75 68 124 124 96 140 105 85 114 20 120 103 106 98 107 87 129 102 99 115 114 116 115 118 107 134 67 146 115 82 82 83 89 90 79 90 82 79 76 106 99 97 95 88 87 110 111 72 111 79 71 64 84 105 116 143 79 70 57 58 56 71 65 60 59 49 60 48 54 62 52 52 43 39 65 49 42 41 readarr_nas -1818 1782 1729 1699 1660 1606 1570 1519 1487 1457 1421 1381 1319 1278 1234 1203 1181 1154 1142 1093 1056 1040 1027 1002 985 968 948 923 892 869 848 830 808 793 793 - - 747 725 710 693 672 658 638 618 600 573 548 526 508 491 467 447 417 398 366 335 301 300 251 507 491 487 390 361 336 292 258 577 554 527 511 481 440 413 373 310 257 310 269 266 111 1733 1703 1673 1645 1616 1593 1563 1543 1515 1500 1480 1464 1444 1432 1394 1359 1346 1319 1296 1275 1249 1227 1205 1178 1146 1126 1097 1076 1076 1044 1001 951 907 866 824 788 736 696 664 617 574 498 466 410 364 311 262 202 369 317 245 129 224 169 715 685 653 621 597 573 553 519 490 465 440 399 358 301 255 196 146 77 22 124 40 26 37 6 - - - - - - - - - - - - - - - - - - - - - - - - - free_games_claimer -1738 1484 2297 2238 2164 2089 2009 1891 1730 740 1734 1723 1739 2236 2147 2049 1915 1739 1730 1006 692 1379 1318 1262 1208 1143 1081 1016 947 824 785 1031 983 927 921 - - 730 827 742 715 750 415 755 756 570 471 738 681 615 568 518 454 481 448 409 683 583 575 360 1121 1073 1067 842 750 737 743 1101 1049 911 537 481 547 475 546 455 475 669 609 553 486 412 469 403 571 533 480 424 363 530 492 463 424 390 358 313 440 404 378 341 310 270 684 651 634 620 603 579 560 539 539 482 438 384 335 282 31 352 279 329 271 362 305 334 268 162 250 468 419 374 272 215 216 336 289 234 187 151 116 251 233 218 208 189 167 223 193 452 411 365 320 266 209 196 150 240 99 176 145 179 407 339 251 259 232 211 194 169 139 200 167 150 123 143 132 184 157 93 114 94 73 52 44 34 32 tandoor_recipes -1719 1703 1665 1653 1630 1605 1589 1523 1355 1171 979 787 601 413 219 195 185 167 153 137 132 119 107 95 39 159 144 132 118 108 89 123 112 98 96 - - 99 143 137 125 116 96 80 186 174 159 151 142 131 122 117 106 95 88 142 132 117 117 109 101 93 89 103 88 141 134 128 118 111 100 87 156 141 134 118 108 99 82 146 126 117 103 95 88 77 94 85 74 111 102 93 86 74 117 112 99 92 84 77 74 174 163 156 149 143 138 131 122 110 110 215 188 147 110 365 330 292 248 216 185 148 120 385 355 318 296 262 234 199 131 334 295 228 191 150 120 94 81 105 97 94 91 84 79 77 110 116 111 104 101 110 139 133 77 205 76 55 71 141 109 224 150 82 76 66 64 75 69 60 60 62 50 67 58 43 65 58 58 52 42 68 51 45 44 lidarr_nas -1695 1514 792 1334 1460 228 1628 1473 1478 805 1642 1415 1623 1460 1423 1408 1331 1441 1687 906 2208 2146 2105 2049 1990 1943 1908 1878 1849 1804 1769 1733 1709 1670 1665 - - 1562 1534 1500 1474 1447 1413 1402 1383 1355 1317 1294 1267 1226 1208 1188 1168 1135 1114 1092 1057 1029 1026 936 896 870 867 782 763 749 728 714 694 670 653 635 611 590 567 538 517 484 464 438 420 391 361 336 196 327 577 563 532 508 482 466 449 415 399 375 343 310 278 240 374 361 339 315 292 268 236 474 439 416 416 377 340 297 256 202 345 307 259 205 274 229 645 568 541 501 457 433 392 345 256 218 180 100 274 230 196 166 484 470 453 438 426 419 404 385 371 332 300 271 242 208 179 124 79 503 411 391 371 363 335 289 233 159 131 131 266 256 237 225 203 184 171 150 150 136 113 91 89 71 43 60 38 22 20 scrutiny-fa -1675 1612 1514 1466 1390 1329 1252 1182 1109 1062 992 921 839 783 728 651 581 514 432 364 249 312 267 50 370 339 298 269 215 334 291 232 448 427 424 - - 342 311 293 262 215 578 551 532 505 483 468 443 423 410 390 363 348 329 304 275 245 244 171 1001 983 983 911 890 876 862 843 824 799 769 746 718 696 670 648 623 586 890 842 794 767 734 703 679 643 605 563 519 475 419 394 355 310 274 237 196 156 116 142 58 86 24 473 439 402 375 347 312 273 273 202 148 158 878 828 762 702 625 552 493 419 359 224 128 46 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - whatsapper -1482 1460 1396 1362 1307 1254 1215 1161 1115 1077 1024 974 923 876 823 751 674 572 1284 1241 1196 1171 1142 1115 1092 1055 1026 998 970 944 913 883 851 825 824 - - 766 733 708 685 669 647 615 595 573 543 518 498 465 451 435 402 371 337 302 259 83 73 112 136 118 115 102 84 71 65 59 61 52 8 54 35 16 25 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - webtop -1453 1364 1020 847 653 470 275 2403 2072 1791 1474 1145 798 482 162 149 138 138 130 116 110 102 93 233 222 211 207 200 197 179 176 164 160 154 154 - - 134 121 107 105 103 96 87 77 71 54 74 214 208 205 199 197 189 182 176 173 165 164 158 158 153 153 142 137 134 128 124 116 110 102 100 90 83 69 63 55 9 109 102 86 91 470 458 449 438 429 424 418 412 407 397 390 379 363 356 350 339 336 327 323 313 303 288 282 279 276 274 266 256 256 235 206 172 134 92 179 136 95 682 655 626 589 513 481 443 405 343 302 269 198 160 125 46 187 128 81 57 112 109 99 90 87 75 71 67 66 29 187 150 115 74 644 571 518 510 386 384 376 374 352 301 240 145 113 107 106 101 97 90 84 74 64 67 61 56 51 29 29 20 8 44 28 26 26 webtrees -1450 1208 1393 1 1489 1245 1371 1635 1485 1313 1404 1384 1432 1449 1435 1425 1406 1394 1489 1059 946 879 809 712 1061 981 898 809 682 298 646 606 751 660 640 - - 679 755 670 673 657 977 931 887 843 758 678 672 859 784 695 1578 1534 1494 1451 1395 1352 1350 1304 1234 1175 1167 971 931 877 823 757 658 998 941 870 797 701 1156 1089 1007 926 818 696 1054 981 926 858 811 737 645 862 807 742 650 701 602 894 846 804 740 661 573 671 579 781 718 678 590 1025 970 921 863 814 814 718 619 84 839 764 687 562 586 584 595 501 501 511 773 675 579 696 583 782 539 522 543 1171 1097 1007 918 855 785 726 673 615 573 503 447 463 659 583 485 623 537 452 622 531 441 492 465 567 496 392 596 490 620 472 711 651 561 472 692 642 565 495 397 374 437 353 493 407 393 377 98 359 91 321 313 epicgamesfree -1431 1334 958 760 524 52 694 513 459 217 524 636 417 620 445 370 332 302 274 220 416 396 379 363 348 324 299 276 258 239 225 206 188 160 154 - - 256 232 217 202 184 156 130 182 158 133 112 173 148 136 122 106 97 73 49 32 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_power_tools -1191 910 473 1110 1221 1066 1082 1079 1219 1025 1315 1156 991 1036 1028 1133 952 974 989 591 287 565 502 287 916 853 811 769 725 668 629 583 524 442 423 - - 470 467 495 434 585 539 492 437 485 413 587 531 458 369 471 389 542 492 418 494 458 456 383 514 458 452 377 390 474 435 366 438 378 345 279 208 803 749 706 654 584 450 653 533 312 434 378 337 287 348 321 270 262 272 304 257 434 380 331 226 205 285 252 193 254 217 260 195 230 204 217 185 129 128 264 200 9 723 668 606 559 501 456 409 340 279 152 171 104 367 326 275 212 270 230 185 86 219 164 288 244 203 164 112 128 171 134 676 654 633 590 546 509 461 418 380 301 253 230 133 113 87 413 377 330 266 188 158 126 109 95 79 119 92 66 42 277 270 243 225 193 164 139 109 97 61 43 40 browserless_chrome -1172 1112 1003 907 990 825 1037 914 912 466 955 822 866 867 900 867 804 790 392 309 248 418 347 112 540 514 492 475 457 406 400 397 399 395 382 - - 402 459 422 392 372 411 370 367 427 392 350 380 341 388 349 338 384 347 351 352 398 395 351 349 428 425 359 339 375 334 359 323 333 344 382 361 327 347 313 342 295 293 328 284 379 344 314 271 286 316 298 279 349 334 315 291 249 275 244 287 259 228 175 128 216 126 246 221 264 249 225 201 117 117 279 227 215 211 257 212 298 250 222 186 261 229 156 244 195 154 186 143 168 177 138 109 80 102 91 38 99 65 50 48 31 36 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - changedetection.io -1156 1073 367 1479 1425 1374 1321 1249 1195 1145 1047 951 957 433 972 900 830 782 717 623 580 538 480 440 188 616 580 548 512 476 413 552 522 495 491 - - 589 555 518 492 450 389 664 640 622 590 553 533 493 464 447 420 371 434 411 366 394 392 493 459 431 423 438 387 371 463 425 386 471 444 395 528 493 456 393 481 423 368 484 452 421 368 444 419 366 404 362 446 420 380 472 450 417 388 352 434 419 385 341 496 473 449 411 369 544 519 497 454 409 409 559 510 449 370 804 758 706 644 594 543 440 357 863 797 756 703 643 582 497 590 518 447 387 513 443 343 442 386 414 362 299 519 481 451 420 376 704 640 567 497 436 354 599 529 491 341 286 291 291 267 503 411 280 382 347 322 281 250 86 290 257 222 235 191 186 208 200 200 128 95 91 47 31 29 radarr_nas -1074 1051 995 964 934 909 862 819 799 765 739 707 660 632 606 569 517 491 457 424 402 389 360 339 317 304 276 254 227 202 181 145 243 220 219 - - 147 112 192 184 169 151 129 107 83 63 35 7 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - omni-tools -1042 1198 1026 1246 1186 1107 1012 1320 1295 1239 1167 1082 980 970 1179 1112 986 788 641 519 39 583 530 477 199 465 686 655 612 579 535 499 447 425 418 - - 699 668 644 626 592 559 527 499 464 387 601 577 544 515 492 459 404 403 768 741 719 719 688 655 634 629 512 465 405 408 457 414 482 440 488 426 409 419 421 423 408 404 400 405 398 427 383 396 387 454 426 373 392 388 360 420 376 374 373 364 409 370 364 385 1510 2162 1045 382 370 378 394 388 483 483 417 416 460 379 428 23 433 430 436 426 352 356 403 457 460 457 474 485 468 454 518 439 377 430 422 336 384 391 65 65 65 65 65 65 65 65 35 1424 1360 1294 1246 1191 1107 1033 1008 865 829 803 773 722 639 546 425 380 346 320 283 247 246 288 248 191 243 192 192 217 146 146 121 90 88 55 37 35 sonarr_nas -1028 988 916 872 820 769 687 607 514 248 823 786 748 705 615 563 501 457 415 344 306 279 242 195 204 852 832 815 796 760 724 700 673 650 648 - - 574 548 519 495 468 447 424 399 376 354 331 303 280 259 239 219 193 175 152 129 110 108 88 63 35 33 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - librespeed -1020 1020 1018 1018 1016 1016 1008 1006 1000 996 984 976 976 958 948 940 939 939 939 939 939 939 939 939 939 939 939 939 939 931 931 931 1390 1387 1384 - - 1384 1378 1378 1378 1378 1378 1378 1378 1378 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1369 1369 1369 1369 1368 1368 1368 1368 1368 1368 1368 1368 1368 1368 1362 1356 1356 1356 1356 1356 1356 1356 1354 1354 1354 1348 1348 1348 1348 1348 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1334 1314 1280 1256 1228 1194 1169 1143 1123 1101 1085 1071 1036 1020 1004 988 962 947 923 875 853 831 783 759 728 704 691 691 691 691 691 691 691 691 691 691 659 629 599 569 539 508 446 398 398 278 278 275 275 251 203 143 53 38 31 31 31 31 31 31 30 30 120 110 99 91 68 65 53 42 35 16 11 9 papermerge -980 931 837 772 659 68 407 654 669 286 793 717 644 628 685 605 582 572 559 360 314 270 212 241 15 432 372 448 403 369 421 368 373 372 359 - - 327 317 289 251 416 378 342 300 410 367 343 301 261 293 247 277 233 247 280 238 243 241 204 230 253 252 280 247 251 208 452 401 403 361 369 490 426 493 431 445 486 417 567 525 475 405 434 594 560 511 475 443 391 597 576 548 512 478 430 391 343 108 77 532 498 469 425 357 335 456 420 382 597 597 530 477 392 553 489 405 471 388 469 383 556 496 347 437 359 443 367 374 343 448 388 337 179 395 316 336 271 357 302 257 238 270 232 244 329 281 412 348 283 272 442 382 286 222 293 262 224 340 313 251 386 287 220 217 217 249 224 215 226 214 395 371 339 300 287 251 207 169 163 144 110 68 47 47 fireflyiii -953 905 835 799 766 735 686 641 603 556 502 414 868 813 765 707 666 623 567 457 922 876 849 811 793 761 739 718 703 667 628 598 575 553 550 - - 496 471 446 422 401 371 326 436 413 378 354 336 307 285 259 236 217 197 177 160 135 131 0 778 753 750 664 638 614 602 590 572 563 544 528 509 492 476 459 439 420 392 370 342 313 276 556 536 506 486 475 460 434 411 376 362 334 301 280 257 228 296 279 260 221 902 886 873 860 841 828 813 791 791 770 738 697 656 621 587 555 518 485 458 422 400 329 288 249 217 182 385 335 256 219 193 116 155 113 143 274 252 238 215 201 185 172 156 129 137 149 139 46 139 144 154 152 108 146 111 101 61 103 46 111 99 102 84 21 107 94 84 101 105 88 51 23 66 10 86 22 22 73 72 81 69 73 69 calibre_web -924 818 713 569 310 38 762 655 888 844 768 690 604 307 603 699 645 562 468 338 297 261 200 148 290 259 186 360 344 318 298 271 264 226 219 - - 231 274 251 230 170 213 202 241 205 192 173 144 142 197 138 286 268 258 249 208 180 179 138 83 231 228 82 81 130 84 118 103 85 25 87 72 56 45 9 97 68 75 143 129 114 100 86 75 59 48 32 63 43 33 157 151 142 133 126 114 104 96 77 64 55 45 28 34 35 46 2 49 151 151 111 70 68 15 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-go -909 889 847 825 803 772 743 721 699 677 645 593 569 541 511 477 447 423 399 369 343 314 299 284 279 263 253 235 220 194 170 134 3428 3412 3409 - - 3367 3355 3336 3324 3312 3306 3294 3274 3258 3238 3216 3211 3182 3175 3163 3161 3151 3141 3133 3126 3114 3113 3104 3085 3065 3063 3019 3008 2989 2968 2959 2938 2925 2913 2899 2874 2853 2838 2818 2788 2765 2735 2718 2700 2686 2666 2650 2639 2627 2617 2589 2576 2558 2537 2521 2496 2472 2458 2450 2440 2423 2414 2404 2391 2381 2367 2357 2342 2327 2310 2299 2289 2268 2268 2249 2215 2165 2131 2088 2053 2010 1967 1936 1903 1867 1837 1767 1733 1693 1656 1626 1578 1540 1468 1429 1388 1314 1285 1253 1208 1183 1176 1163 1152 1141 1134 1125 1113 1105 1084 1038 995 949 907 867 827 759 707 700 577 568 557 544 519 461 389 283 261 249 238 231 219 210 195 189 179 166 152 133 123 108 98 80 66 51 23 15 14 xteve -909 801 412 749 778 103 900 788 785 428 898 708 899 789 765 751 744 709 805 463 866 823 790 756 726 683 663 628 610 579 558 523 504 478 473 - - 399 368 335 313 289 246 225 195 158 127 1041 1022 983 966 943 919 901 883 867 833 808 805 666 597 579 575 509 499 488 475 468 445 432 416 406 382 366 353 335 317 298 283 270 249 234 213 189 104 182 321 314 300 292 277 265 240 214 194 168 59 191 168 136 230 210 201 187 167 150 126 353 337 326 326 283 244 205 167 125 237 209 174 128 220 164 606 540 497 460 420 386 345 308 237 200 150 70 220 177 144 114 797 792 778 770 757 751 740 732 717 684 658 631 603 575 545 497 459 442 348 335 320 313 290 248 188 112 91 104 158 144 132 119 103 81 130 127 112 97 74 81 81 67 48 84 58 58 58 scrutiny -878 866 828 794 763 731 709 657 641 608 594 570 545 515 479 433 417 391 371 340 320 299 285 276 271 247 232 211 191 178 166 142 296 284 281 - - 263 236 221 211 202 185 170 160 144 115 88 403 391 377 360 345 332 312 286 268 244 242 230 204 182 178 411 401 380 358 343 318 307 296 275 260 251 240 229 218 203 183 172 151 138 112 308 291 276 257 250 238 229 211 198 190 177 167 159 145 130 105 376 368 362 354 340 335 321 304 290 279 265 265 213 182 133 618 576 545 508 446 410 382 351 324 260 221 163 127 83 13 32 267 223 186 112 78 36 1065 1044 1031 1023 1011 1006 998 989 982 979 973 937 897 864 827 789 750 685 633 623 498 489 483 471 438 383 317 223 203 193 190 183 171 165 154 149 143 132 122 118 104 85 76 67 56 49 24 20 18 baikal -863 804 674 678 2414 2372 2296 2164 1964 1749 1515 1309 1090 891 694 663 623 585 553 480 422 405 370 323 401 373 351 319 290 339 312 266 276 1242 1241 1222 1206 1193 1174 1156 1136 1120 1104 1083 1074 1061 1039 1025 993 974 954 938 922 894 873 848 836 814 814 793 784 769 767 712 694 685 662 646 636 618 603 577 562 539 517 492 468 448 426 405 388 373 348 326 305 281 261 233 1015 996 972 952 934 919 911 896 882 861 848 837 830 809 797 778 764 745 721 700 676 655 655 609 571 512 451 399 344 289 208 645 601 560 524 450 404 346 289 228 147 714 624 564 521 419 380 323 270 231 200 173 144 218 200 177 158 140 394 350 301 250 205 139 466 376 315 298 149 133 531 520 478 417 328 216 186 170 155 138 121 88 303 282 266 241 221 198 168 148 125 102 87 80 45 21 19 addons_updater -846 818 706 664 588 509 451 357 301 327 266 182 168 94 16 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bentopdf -772 981 872 758 975 918 833 740 940 862 758 841 721 838 760 829 727 719 579 471 395 643 605 550 507 457 415 362 368 438 384 231 362 451 448 - - 230 4 362 466 418 352 380 325 311 202 485 428 358 340 466 414 353 530 511 479 450 448 416 364 457 448 365 355 346 541 512 462 433 365 332 446 419 374 329 428 383 327 420 373 330 409 368 318 378 338 291 391 359 314 323 287 376 334 284 371 326 278 335 292 261 315 278 382 343 317 275 257 374 374 333 283 360 293 325 262 366 314 261 24 215 324 212 332 286 237 300 249 343 234 307 262 129 193 127 252 196 189 125 181 171 151 172 976 968 953 927 881 841 800 757 718 666 616 598 501 477 453 436 396 350 291 219 187 148 161 186 150 145 86 127 83 155 124 112 127 115 115 125 98 112 86 107 69 calibre -766 756 726 704 682 648 615 548 510 279 268 623 532 573 551 521 478 444 408 363 340 331 318 296 276 232 215 253 394 374 361 340 324 302 301 - - 294 268 239 291 273 254 221 246 212 250 226 207 205 222 216 204 283 268 253 234 212 211 187 146 269 263 377 354 335 317 303 277 261 248 235 207 173 127 201 284 253 233 211 187 147 221 185 384 359 336 316 301 277 262 237 227 191 173 147 121 161 142 116 86 289 258 243 228 206 192 168 149 135 135 102 73 254 220 185 143 111 53 21 3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - linkwarden -764 742 694 657 608 580 539 507 473 428 364 467 425 393 328 327 316 294 275 226 193 163 117 217 204 182 163 137 232 214 203 192 175 156 154 - - 275 261 247 240 223 205 182 164 150 122 97 86 56 74 54 42 45 55 34 14 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_frame -759 713 612 539 442 345 778 722 702 662 632 584 564 542 496 441 413 375 351 310 274 244 206 169 361 332 297 275 254 231 209 154 267 253 252 - - 179 143 272 250 231 211 183 157 145 114 91 303 286 268 245 229 216 198 184 156 138 138 115 91 61 59 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - emby_stable -740 786 324 0 779 80 753 739 771 314 757 728 790 699 703 693 800 679 704 389 303 370 322 323 149 367 290 412 380 333 334 341 386 337 334 - - 322 319 313 312 316 309 286 309 316 306 343 304 299 298 307 349 302 294 303 317 315 312 312 321 336 329 323 329 316 330 307 303 313 317 311 308 297 307 303 324 293 294 299 295 280 283 271 281 283 282 274 270 281 265 260 274 281 303 280 291 266 259 259 264 256 255 275 267 263 266 268 269 303 303 310 296 305 298 304 306 309 296 300 302 250 250 284 311 311 331 344 340 352 323 299 308 270 300 296 290 272 257 264 257 252 244 244 245 235 268 254 254 253 230 251 261 253 214 256 226 212 201 237 241 244 273 183 186 177 170 168 173 168 157 146 123 148 151 120 138 129 129 120 114 142 100 114 113 prowlarr -712 689 614 584 511 48 655 591 515 255 698 652 595 553 519 457 404 355 354 308 274 241 206 187 161 122 254 303 260 458 440 427 406 388 386 - - 325 294 255 321 265 367 324 267 368 344 327 293 262 519 505 492 476 456 436 419 407 406 379 361 342 338 241 330 318 290 260 250 256 768 752 729 717 685 666 645 627 596 578 558 536 518 498 482 462 443 430 412 394 376 363 347 331 314 303 272 245 216 186 875 860 841 822 803 780 765 743 725 712 712 686 665 634 607 579 541 504 467 440 410 382 354 285 250 203 159 266 227 185 247 218 187 86 213 157 166 129 173 156 140 117 450 433 421 409 386 344 306 257 215 164 272 199 129 331 194 184 171 153 247 177 97 203 180 151 138 120 104 108 150 133 116 96 159 149 130 105 85 69 74 81 48 24 23 joplin -696 676 653 625 600 578 558 527 507 479 430 387 340 281 209 821 793 765 737 684 665 656 637 626 618 604 587 579 573 559 540 520 515 494 491 - - 461 443 428 419 408 396 385 379 366 350 327 312 303 295 282 267 250 239 217 180 1708 1708 1693 1684 1671 1669 1624 1602 1571 1558 1543 1530 1522 1502 1493 1483 1465 1454 1437 1421 1399 1373 1357 1331 1311 1300 1276 1261 1237 1224 1204 1190 1181 1166 1156 1147 1132 1113 1105 1087 1073 1062 1054 1038 1029 1013 992 977 956 947 938 918 901 901 883 844 798 763 715 683 638 586 546 520 485 456 386 347 311 272 244 198 133 218 170 135 372 325 281 228 200 182 165 157 144 135 111 83 1008 994 954 904 863 824 772 735 657 594 577 444 422 414 397 360 297 222 109 95 256 245 233 216 204 183 162 148 140 117 90 72 145 145 126 80 97 67 54 54 transmission_openvpn -681 681 655 649 623 608 594 566 558 546 528 508 486 475 456 439 433 400 388 374 360 356 346 335 325 310 301 292 289 280 275 265 262 247 247 - - 226 213 211 202 192 186 182 173 164 156 146 131 123 118 110 100 93 73 214 206 201 200 193 184 176 176 151 145 138 130 118 98 87 257 252 243 230 218 212 198 182 170 158 137 133 116 103 83 1597 1585 1579 1569 1560 1548 1543 1538 1527 1521 1514 1511 1503 1496 1491 1481 1476 1470 1455 1445 1443 1430 1423 1417 1409 1409 1396 1375 1355 1326 1298 1269 1248 1219 1197 1180 1151 1132 1077 1056 1025 1010 991 968 935 879 858 832 788 764 741 720 706 702 698 687 681 676 670 662 659 649 620 590 559 529 503 478 422 385 376 292 279 269 260 232 193 146 76 47 61 49 35 39 31 17 9 - - - - - - - - - - - - - binance_trading_bot -670 668 660 648 642 637 632 628 618 608 592 582 578 570 568 560 556 556 554 554 551 550 549 544 543 540 537 530 528 522 521 519 513 512 512 - - 505 500 496 494 491 491 488 488 487 482 479 477 475 472 471 471 471 469 466 466 462 462 462 462 461 461 452 450 447 447 447 443 438 435 429 423 421 416 412 411 409 409 408 405 402 393 389 386 385 383 380 377 375 373 370 368 362 357 357 356 351 350 349 345 339 332 329 326 324 316 307 297 290 290 260 236 207 177 148 119 89 57 30 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - comixed -635 623 599 585 565 532 508 488 463 443 423 411 394 371 349 323 291 277 261 237 224 213 204 191 180 170 160 149 143 128 114 311 298 291 290 - - 272 251 239 231 221 210 204 194 174 156 144 127 112 142 131 115 80 20 265 252 242 242 232 225 220 218 179 172 150 133 524 514 499 478 462 449 431 409 394 384 370 354 331 322 307 291 278 272 260 253 241 231 213 193 171 145 132 107 92 197 186 172 160 156 151 142 126 111 96 75 143 128 113 113 66 1929 1888 1853 1821 1790 1754 1705 1684 1660 1631 1603 1532 1495 1457 1431 1393 1352 1310 1240 1202 1168 1107 1067 1033 994 976 971 962 952 939 933 928 923 917 906 870 837 797 757 719 680 615 566 556 435 426 412 406 377 323 259 162 142 128 117 108 94 83 76 61 57 55 45 39 31 37 37 19 11 28 12 10 8 resiliosync -605 605 589 581 581 568 563 555 553 551 539 527 519 501 491 483 483 483 481 479 479 477 475 474 473 472 469 464 462 458 458 457 501 501 501 - - 498 491 489 489 487 486 485 485 484 475 474 470 468 466 465 464 463 459 459 458 456 456 455 454 452 451 450 448 447 447 446 441 441 439 439 437 436 433 431 429 427 423 420 413 412 403 395 393 390 389 387 379 376 371 369 367 359 358 356 352 350 343 333 326 312 307 297 294 281 270 262 253 238 238 196 168 130 204 172 133 456 408 376 360 323 302 249 218 188 156 120 469 432 360 332 296 227 188 156 121 101 94 88 77 66 87 79 72 57 70 84 88 88 83 83 107 104 47 184 54 60 60 79 94 198 131 68 52 46 44 41 55 53 47 51 44 53 44 37 56 59 45 42 33 63 33 32 31 plex-media-manager -600 591 583 571 561 552 541 533 527 509 495 487 473 448 434 420 412 400 398 379 371 368 362 359 356 353 349 346 344 339 324 316 312 302 301 - - 287 274 268 265 258 257 248 243 233 226 217 212 206 198 193 189 183 183 180 173 165 165 162 157 156 154 140 136 134 131 127 119 116 116 109 101 96 77 62 129 107 76 87 82 76 75 83 80 78 64 917 912 905 903 899 889 876 866 860 857 852 846 840 835 830 819 811 804 793 783 780 776 768 768 753 728 686 654 625 587 552 507 477 453 426 399 344 322 292 261 239 215 189 115 79 43 194 166 130 93 78 75 63 58 49 831 824 821 819 806 767 728 695 664 632 599 534 485 474 348 344 335 328 297 248 188 88 71 62 59 54 51 41 31 27 79 70 63 56 46 29 25 55 49 45 27 23 22 spotweb -595 471 691 653 583 74 695 642 540 258 716 682 642 587 514 462 433 387 362 331 281 245 341 331 301 265 237 293 272 235 287 267 242 241 237 - - 310 286 265 244 219 297 281 257 231 222 271 253 227 283 264 243 212 217 277 256 241 238 221 294 272 270 212 193 240 224 191 214 198 219 194 242 228 218 197 246 223 194 180 221 194 282 265 252 241 221 205 178 225 216 194 179 157 270 259 245 229 217 202 192 175 157 218 209 197 182 159 318 305 305 276 253 221 180 252 218 166 142 140 171 127 32 170 141 167 129 209 183 148 134 56 133 65 83 160 130 109 97 84 85 76 91 77 133 113 94 129 92 132 101 85 117 61 310 299 215 209 203 189 163 114 134 102 68 20 69 62 94 87 74 59 45 79 72 63 53 39 57 38 45 32 21 14 12 gitea -584 464 1035 827 637 404 341 329 299 136 448 405 381 341 309 248 292 215 247 201 178 153 117 351 336 322 308 294 285 269 261 243 233 221 220 - - 184 161 143 130 165 146 126 224 204 187 173 154 138 116 331 309 301 293 282 271 260 260 241 218 200 199 1298 1291 1282 1272 1261 1244 1236 1222 1201 1182 1161 1151 1135 1112 1094 1078 1069 1051 1031 1016 997 981 969 955 934 921 911 897 889 879 866 858 850 832 824 814 806 788 774 767 749 733 720 707 694 683 678 678 665 642 612 585 564 538 510 473 451 431 414 393 346 318 295 267 231 207 188 126 100 138 74 98 53 267 248 234 214 206 195 189 186 178 171 162 129 94 50 548 510 485 435 399 395 307 304 293 290 274 236 184 115 94 81 76 66 52 43 169 153 143 138 131 119 111 89 75 65 55 46 29 17 15 wger -581 532 539 497 546 461 499 473 528 251 380 497 581 567 357 303 512 459 535 303 181 283 225 158 291 294 361 335 293 305 510 483 461 435 431 - - 362 322 284 292 297 285 401 374 350 321 281 279 324 293 289 547 528 515 495 464 437 437 410 380 353 353 470 452 428 409 386 353 330 301 266 314 281 406 374 348 322 308 272 342 302 265 262 253 257 440 420 411 385 359 334 316 293 266 244 245 275 233 305 285 260 225 409 393 366 350 331 315 287 287 241 339 293 239 290 246 227 232 231 453 408 373 307 250 230 416 383 352 307 231 221 217 146 216 171 125 213 191 229 206 161 201 173 283 262 235 175 334 278 228 176 484 413 357 342 215 204 187 164 467 406 331 227 198 174 147 114 147 130 184 179 157 135 114 107 114 102 102 87 72 61 33 22 20 cloudcommander -565 536 216 480 501 46 486 438 415 200 414 372 364 377 380 310 287 262 242 151 106 92 61 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - brave -551 537 485 461 431 391 360 323 295 237 590 567 522 488 448 420 358 291 257 210 157 201 183 166 64 316 306 292 271 258 241 234 228 218 218 - - 193 175 144 320 314 304 293 288 277 266 257 245 239 230 226 220 212 208 202 186 172 171 154 364 350 349 316 302 285 278 264 254 248 244 229 219 212 195 171 153 146 266 254 245 234 218 207 197 182 172 166 151 140 155 134 276 265 261 251 238 230 220 208 202 195 190 179 172 163 147 614 608 597 597 561 521 484 447 413 385 350 308 270 241 187 153 173 473 435 404 374 338 302 217 176 128 120 259 214 172 143 183 160 151 144 128 359 352 343 331 293 251 201 145 154 253 174 445 441 311 299 287 268 227 169 206 101 158 140 132 122 117 106 98 127 120 117 107 93 80 84 84 49 103 98 75 69 68 bazarr -494 456 412 394 363 343 288 247 389 359 323 284 249 208 240 167 139 10 122 88 53 80 66 53 35 15 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - social_to_mealie -489 477 448 440 421 402 363 348 335 318 292 270 258 238 220 206 178 163 153 140 131 122 107 85 156 114 2612 2594 2584 2569 2555 2544 3008 3000 3000 - - 2975 2963 2955 2948 2938 2932 2920 2913 2908 2897 2887 2878 2870 2863 2856 2849 2846 2842 2839 2827 2823 2823 2813 2797 2793 2789 2742 2733 2725 2722 2711 2698 2683 2675 2659 2640 2631 2611 2602 2587 2575 2555 2539 2532 2520 2495 2478 2461 2452 2440 2431 2428 2417 2409 2399 2392 2378 2372 2370 2364 2353 2344 2336 2324 2315 2303 2290 2283 2275 2262 2252 2241 2234 2234 2205 2180 2142 2105 2076 2030 1989 1939 1910 1884 1855 1830 1780 1737 1692 1669 1642 1605 1564 1494 1452 1414 1345 1318 1279 1245 1213 1208 1196 1185 1176 1168 1153 1141 1137 1129 1084 1045 1000 960 919 877 805 749 741 608 595 582 577 541 481 414 313 288 275 263 249 240 231 214 200 190 171 157 148 134 110 100 85 78 70 37 25 22 organizr -489 461 400 370 484 434 376 698 686 653 612 577 528 490 440 383 392 156 332 279 249 229 209 187 28 195 144 207 190 205 284 268 259 240 238 - - 507 472 450 425 411 392 375 361 343 312 282 260 238 215 451 440 430 409 394 372 351 351 323 282 251 242 291 265 242 301 263 216 791 775 762 732 709 690 665 645 625 594 572 548 526 513 465 443 419 388 368 348 318 284 243 426 403 383 369 353 329 311 296 268 230 320 304 285 249 210 245 226 251 251 1141 1107 1059 1018 970 922 874 815 776 738 695 669 599 560 527 494 466 426 371 284 235 168 163 186 254 213 180 137 423 406 384 371 359 339 332 318 288 255 197 135 398 350 288 246 235 126 269 247 228 191 133 207 108 121 278 261 246 225 214 112 170 152 126 96 91 87 143 143 121 112 103 78 81 81 photoprism -482 468 432 400 362 330 281 573 545 499 475 445 419 385 343 325 287 138 286 257 236 221 208 193 169 148 195 162 142 158 130 139 741 729 728 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - monica -417 417 399 383 370 352 338 320 304 294 280 272 260 252 229 211 185 175 173 173 172 165 161 157 153 147 143 129 119 110 103 95 86 76 74 - - 74 60 261 260 256 252 247 245 237 229 226 226 222 221 216 212 207 207 204 198 192 192 188 186 180 180 157 154 153 150 148 146 136 131 124 111 101 95 89 81 71 66 685 681 675 665 657 653 650 643 638 635 628 623 620 619 610 608 602 600 596 593 583 580 577 574 565 560 558 553 551 548 544 544 533 513 487 470 449 430 409 385 365 352 335 318 281 259 240 215 199 178 160 109 91 71 26 85 54 68 53 49 39 36 27 584 580 579 575 572 549 525 503 477 454 429 381 342 339 255 254 250 246 225 192 150 88 76 68 63 60 58 55 50 47 45 41 39 33 29 20 16 8 24 18 5 7 7 fireflyiii_fints_importer -402 388 365 349 336 316 283 249 233 124 351 308 266 336 310 274 256 248 234 204 193 189 176 161 139 180 172 164 155 136 220 214 204 192 191 - - 153 93 78 148 510 506 495 481 471 450 439 429 420 417 407 398 392 387 383 371 363 363 353 343 330 328 289 275 266 248 235 226 212 200 186 170 143 298 280 267 250 241 231 219 209 197 177 165 146 179 171 160 137 1162 1149 1143 1132 1119 1111 1104 1092 1085 1080 1056 1050 1043 1038 1034 1019 1006 998 988 983 983 966 938 903 873 833 791 748 698 661 629 603 573 520 478 440 412 382 346 305 237 201 164 87 184 138 196 168 156 147 133 124 117 109 96 91 767 725 685 650 613 579 539 471 416 406 278 270 249 242 215 154 75 103 76 54 259 251 240 232 218 216 204 199 180 168 148 135 119 97 82 72 41 32 29 whoogle-search -380 291 492 464 426 402 357 333 315 289 270 253 232 199 165 130 104 213 367 290 201 319 145 493 398 308 212 9 149 81 218 73 100 28 61 - - 217 151 244 187 72 155 269 177 126 182 164 203 80 448 380 370 352 342 326 302 276 274 233 198 162 159 118 106 56 107 49 49 121 88 9 72 206 639 409 87 207 190 180 163 150 134 119 110 96 61 111 94 71 58 57 76 113 104 95 82 15 33 77 68 58 55 65 36 37 47 3 28 33 33 34 82 19 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pi -380 291 492 464 426 402 357 333 315 289 270 253 232 199 165 130 104 213 367 290 201 319 145 493 398 308 212 9 149 81 218 73 100 28 61 - - 217 151 244 187 72 155 269 177 126 182 164 203 80 448 380 370 352 342 326 302 276 274 233 198 162 159 118 106 56 107 49 49 121 88 9 72 206 639 409 87 207 190 180 163 150 134 119 110 96 61 111 94 71 58 57 76 113 104 95 82 15 33 77 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - battybirdnet-pi -377 375 373 367 365 354 352 343 337 333 325 309 293 283 273 253 249 243 239 229 228 225 222 217 212 207 207 206 204 193 184 176 179 173 172 - - 163 154 151 149 143 142 141 141 139 130 128 126 126 125 123 121 114 110 106 98 96 96 91 88 86 86 75 71 65 57 52 43 37 32 11 146 140 136 130 123 120 119 114 107 102 89 81 80 78 69 65 59 54 47 44 42 31 31 25 13 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tor -365 347 315 286 209 188 159 619 589 559 541 519 487 461 440 399 343 287 236 183 164 147 126 107 79 171 131 301 294 280 264 246 240 220 220 - - 163 1013 1002 991 981 970 961 946 934 921 906 890 875 861 851 832 819 810 792 767 752 752 741 723 710 710 645 619 595 574 558 540 513 488 464 447 426 402 382 354 338 321 305 278 270 246 222 196 175 149 360 346 323 304 282 262 225 207 181 147 2203 2186 2174 2158 2129 2107 2080 2063 2044 2032 2009 1985 1968 1968 1946 1910 1853 1801 1755 1702 1655 1599 1562 1514 1484 1460 1380 1342 1298 1260 1219 1173 1125 1032 995 957 869 825 766 723 687 659 636 619 608 588 576 552 540 529 477 415 364 306 255 200 119 864 836 693 659 637 621 586 516 434 302 271 235 212 178 144 121 76 188 170 121 148 113 223 174 119 117 123 104 45 19 14 zoneminder -364 362 350 338 330 323 317 311 307 291 281 269 257 241 223 211 203 197 195 192 190 185 181 176 173 165 160 155 151 141 131 121 117 111 111 - - 91 79 74 69 66 64 59 54 267 255 251 249 246 243 243 239 234 229 228 217 213 213 212 206 203 203 189 186 184 182 169 164 163 153 149 146 143 132 128 125 123 122 118 114 106 95 85 79 74 65 56 70 65 63 52 1817 1807 1801 1801 1798 1793 1784 1779 1774 1768 1764 1754 1750 1739 1730 1726 1723 1721 1721 1711 1685 1649 1621 1589 1559 1524 1485 1448 1430 1407 1382 1342 1313 1288 1264 1237 1209 1176 1106 1079 1048 994 970 929 903 889 885 883 878 869 866 858 856 853 850 817 784 749 711 675 645 580 519 509 385 381 372 366 335 287 227 136 119 110 106 98 89 82 71 67 62 56 49 44 37 68 68 57 41 37 19 10 9 ubooquity -358 338 128 360 346 302 331 293 625 605 569 551 527 504 470 450 426 401 389 365 341 325 303 291 280 269 258 247 237 228 204 182 170 159 158 - - 205 191 184 170 156 144 127 178 163 152 146 132 123 108 223 215 208 203 196 181 175 175 168 158 150 149 124 167 152 145 137 122 111 95 73 195 185 168 159 148 132 107 112 247 231 221 210 202 194 184 171 158 153 143 132 123 115 106 92 5318 5316 5304 5295 5289 5283 3973 1822 130 118 105 97 150 145 145 113 103 273 250 224 200 167 142 107 212 192 175 130 104 196 171 149 122 356 299 277 256 213 188 166 135 114 105 93 77 105 99 94 85 78 104 81 83 84 77 72 94 85 58 103 50 49 47 61 82 94 120 49 44 31 33 28 31 27 23 20 16 11 7 2 - - - - - - - - - sabnzbd -357 323 276 260 224 196 146 122 149 129 303 264 224 201 161 117 79 98 60 77 58 48 34 20 21 18 37 37 37 31 31 30 37 36 36 - - 36 30 24 24 22 21 21 21 20 13 13 18 18 18 18 18 17 17 17 17 32 32 31 30 30 30 27 27 27 26 26 23 20 20 20 21 30 30 29 25 23 20 29 38 36 30 23 24 22 24 23 27 26 39 38 38 32 29 27 26 39 37 34 33 31 134 133 133 133 129 128 128 128 128 110 86 344 320 293 262 227 201 175 155 133 119 92 69 43 24 1 319 287 213 184 145 75 95 181 145 122 116 105 96 77 71 60 50 218 212 175 138 88 130 87 628 556 499 491 367 362 353 343 314 260 193 90 63 50 51 207 193 186 167 160 149 140 133 119 103 80 64 50 39 26 7 4 4 vaultwarden -345 332 314 300 273 265 253 230 196 188 166 132 116 102 80 64 36 28 20 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - netbird-server -327 325 319 311 291 278 266 236 220 208 184 164 128 206 180 168 148 128 112 96 89 84 69 54 50 40 26 1874 1865 1856 1848 1845 2325 2318 2318 - - 2298 2288 2283 2275 2274 2268 2264 2261 2258 2250 2245 2244 2233 2222 2216 2213 2209 2205 2201 2198 2190 2190 2190 2187 2177 2177 2155 2152 2149 2145 2136 2123 2118 2105 2101 2088 2076 2057 2043 2024 2010 1997 1988 1985 1970 1951 1932 1928 1916 1909 1903 1899 1890 1884 1875 1869 1861 1849 1847 1840 1837 1830 1824 1822 1818 1812 1808 1806 1804 1799 1796 1793 1785 1785 1768 1739 1693 1658 1620 1596 1555 1514 1486 1467 1441 1419 1377 1350 1328 1304 1279 1236 1209 1151 1128 1098 1035 1005 968 931 912 908 905 900 895 893 889 888 879 874 843 810 777 742 708 676 615 563 560 438 436 431 427 396 344 279 188 169 150 143 139 133 123 105 83 125 117 108 92 89 68 53 47 38 29 13 7 7 gazpar2mqtt -305 285 251 227 120 195 488 450 398 190 383 410 372 428 373 367 239 38 245 222 201 181 165 153 83 280 257 245 229 216 204 187 165 174 171 - - 133 84 137 121 156 147 126 155 137 118 97 97 89 188 181 188 188 178 186 166 154 153 141 125 108 107 184 207 183 278 268 256 242 224 196 3 194 199 207 212 238 221 216 196 174 199 174 237 228 210 198 188 173 161 146 202 181 163 135 152 133 105 200 190 174 160 140 247 237 227 211 194 173 173 128 317 274 219 267 215 150 2 314 281 237 181 190 241 197 206 327 287 225 307 267 228 147 243 197 136 225 212 198 184 162 151 135 127 122 328 285 239 194 141 222 180 114 253 243 110 427 419 414 382 327 256 156 134 120 99 86 95 177 156 131 132 118 103 84 83 77 73 62 51 47 23 16 15 fireflyiii_data_importer -283 283 281 279 276 266 262 254 244 234 218 212 200 190 180 170 166 164 152 130 111 99 82 74 47 0 98 91 86 38 358 351 345 341 340 - - 324 313 313 310 300 293 291 288 283 272 270 266 262 258 253 249 239 236 234 224 219 219 214 208 202 201 179 172 167 165 158 150 145 135 122 112 102 94 83 244 233 230 225 221 216 205 198 191 182 172 161 158 155 151 147 139 130 123 118 110 105 94 77 1046 1036 1032 1028 1021 1015 1015 1008 1004 1002 1002 975 959 924 889 859 827 789 750 714 694 674 648 607 577 554 528 511 476 442 377 348 317 248 216 180 149 128 119 110 104 98 92 85 75 64 608 570 529 482 448 410 376 307 258 250 118 109 91 82 341 287 220 121 103 90 88 84 80 73 59 93 92 87 81 73 65 50 40 39 30 24 9 4 4 ombi -282 304 107 259 281 22 315 295 308 91 288 360 212 245 202 224 191 208 228 151 39 81 28 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - chromium -278 235 134 0 294 232 302 273 295 162 425 284 256 216 178 154 134 344 303 174 146 218 204 184 167 142 106 149 132 132 130 149 134 119 115 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - grampsweb -259 247 203 382 366 342 325 309 276 104 789 757 731 698 664 609 539 691 1326 1242 1184 1143 1104 1069 1030 997 941 908 879 835 793 751 718 688 680 - - 591 564 532 493 454 426 383 349 292 357 328 270 264 372 337 307 265 267 506 475 455 453 414 379 357 356 226 270 231 225 400 373 341 305 288 262 231 197 243 209 449 427 394 369 340 305 151 211 189 164 135 243 226 204 192 164 140 127 112 62 284 268 245 235 220 205 184 154 131 148 129 362 340 340 284 246 205 159 1035 987 951 900 859 829 801 754 665 629 599 568 529 493 443 376 342 313 239 204 166 130 107 99 88 79 66 52 57 44 37 610 561 521 480 440 399 357 281 228 223 88 78 65 55 102 45 26 - - - - - - - - - - - - - - - - - - - - - - jellyseerr -242 200 162 754 715 657 569 504 433 190 429 318 612 560 516 464 394 335 275 164 99 224 206 185 167 148 130 107 152 138 121 102 248 238 237 - - 203 192 176 170 156 144 131 121 108 95 79 108 95 82 68 96 90 82 76 61 112 110 94 87 77 77 30 24 45 39 65 54 43 24 71 64 56 44 49 35 36 147 142 132 117 96 83 72 63 59 49 39 35 24 18 45 23 15 14 7 79 74 69 60 50 44 31 24 17 3 4 - 17 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - navidrome -233 213 140 104 47 0 196 167 135 111 124 93 93 113 213 179 156 126 101 66 32 127 104 91 76 55 27 75 56 39 28 45 25 33 29 - - 49 29 16 10 6 0 19 12 12 23 12 9 27 22 15 8 4 20 12 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_noml -227 225 216 209 200 191 187 183 175 165 143 139 125 111 98 82 74 67 57 43 39 36 34 32 82 72 57 48 44 37 27 21 136 133 133 - - 118 108 102 97 89 88 87 85 85 79 78 73 65 62 56 53 46 44 38 26 38 36 28 19 34 34 22 29 25 31 26 25 31 26 25 46 35 30 26 102 90 79 72 58 45 29 25 56 47 36 34 29 23 20 30 20 34 30 23 17 15 22 39 36 32 30 25 28 25 20 69 64 58 58 35 80 53 36 34 37 64 39 37 56 30 48 31 50 33 31 34 32 79 32 36 31 29 40 38 31 31 17 21 15 29 13 14 18 22 323 299 277 251 229 206 184 139 103 94 8 5 14 33 42 52 70 28 20 13 11 17 13 15 17 17 10 19 17 14 27 43 38 34 30 24 7 13 11 omada_v3 -216 210 204 198 190 177 170 154 149 147 119 102 94 80 62 54 42 40 40 38 33 32 29 25 6 49 41 909 906 901 894 889 1101 1099 1099 - - 1097 1088 1087 1085 1084 1083 1081 1079 1077 1070 1069 1065 1063 1062 1059 1053 1051 1050 1046 1046 1041 1041 1040 1038 1036 1036 1031 1027 1025 1022 1019 1012 1010 1007 1006 1000 999 995 995 995 995 994 992 991 990 981 973 971 966 958 953 947 946 940 937 933 921 918 914 909 905 903 900 897 895 892 887 883 882 875 868 860 856 856 834 806 766 728 695 659 622 585 560 534 511 489 436 405 371 339 300 276 242 169 132 99 33 98 59 531 500 488 476 476 475 473 467 462 462 461 431 401 366 336 304 271 202 153 152 30 28 19 334 306 256 194 101 88 82 76 74 71 67 63 61 55 55 51 50 48 34 33 31 32 32 20 18 18 joal -215 213 192 178 175 165 155 140 132 116 84 68 167 139 120 115 2 160 156 146 139 135 132 130 125 123 117 114 108 94 90 84 83 77 75 - - 71 65 61 57 53 49 48 47 44 39 35 34 29 232 231 231 225 223 220 213 210 210 204 199 195 195 183 179 176 173 171 169 167 165 159 158 153 151 143 137 134 132 125 117 111 103 97 93 90 82 79 76 75 71 69 68 62 60 57 52 50 43 55 49 36 281 281 276 269 258 253 247 241 241 222 204 179 154 131 116 92 68 50 24 138 125 95 74 52 52 80 58 35 197 179 156 118 94 72 53 41 39 31 25 18 22 16 103 100 92 67 41 60 38 213 191 145 112 108 21 213 209 205 188 153 111 47 37 30 27 36 35 28 21 29 26 22 23 17 25 32 32 21 22 20 11 9 9 unpackerr -207 214 226 222 295 284 266 240 309 256 306 270 279 261 265 281 267 264 166 149 133 197 185 175 167 156 139 142 153 205 199 185 162 147 144 - - 160 176 169 163 157 164 153 171 175 163 169 8 172 180 205 183 199 181 191 194 200 200 205 217 219 217 0 322 287 248 241 242 324 295 250 274 237 291 249 311 249 260 224 298 273 221 252 218 548 506 472 436 401 368 331 296 240 185 271 217 175 198 166 165 269 215 179 165 151 144 157 142 188 188 179 191 185 177 170 240 181 182 153 211 147 114 109 197 177 173 170 164 158 164 200 157 115 135 142 134 128 120 124 82 107 115 126 102 100 129 136 555 509 463 420 380 309 250 239 105 131 108 127 228 159 181 112 108 90 105 286 266 248 221 200 179 161 123 107 85 150 150 145 127 99 60 72 66 emby -206 193 189 185 180 178 176 175 171 171 171 169 165 163 161 157 157 157 151 147 144 142 140 138 132 115 102 94 83 72 60 48 554 544 544 - - 526 519 513 508 507 503 498 491 487 481 478 473 463 460 451 444 442 438 433 425 416 412 402 395 393 392 375 372 369 365 357 350 345 338 328 325 320 314 307 298 278 270 255 243 229 213 203 192 180 162 154 145 138 133 128 116 96 85 67 67 66 68 63 77 73 75 78 73 79 72 78 81 97 97 89 99 92 96 90 92 95 86 80 85 57 76 87 96 90 86 91 109 143 92 105 69 103 148 153 149 165 134 160 124 332 332 332 332 332 332 312 292 272 252 232 212 170 138 138 58 58 111 119 128 142 166 110 109 112 105 103 97 108 95 115 76 82 75 79 84 127 105 93 88 78 53 51 51 omada -199 189 157 140 119 86 70 272 240 224 204 174 140 114 92 74 56 36 92 74 61 100 90 80 67 48 75 36 242 224 210 185 177 164 163 - - 133 120 106 95 85 1664 1660 1649 1637 1625 1613 1601 1593 1584 1572 1553 1546 1541 1529 1514 1504 1504 1499 1478 1470 1468 1428 1419 1401 1391 1380 1366 1357 1350 1343 1338 1331 1313 1305 1292 1278 1258 1251 1239 1233 1220 1210 1201 1197 1185 1179 1172 1162 1153 1147 1135 1125 1122 1113 1105 1095 1090 1082 1069 1061 1057 1034 1028 1024 1014 1008 999 993 993 978 952 909 877 844 809 774 724 693 673 641 614 554 518 482 454 424 384 341 276 236 206 146 106 73 35 11 8 6 1 546 535 527 519 512 504 467 436 404 365 326 285 217 163 157 30 59 48 44 291 240 174 77 51 40 34 32 54 46 38 29 22 38 34 19 25 61 61 50 49 43 21 17 17 seafile -182 180 170 162 152 146 128 124 122 116 112 100 92 82 64 50 42 38 38 38 37 35 26 3 281 273 271 269 266 258 256 252 262 259 259 - - 254 246 244 244 242 240 239 237 233 226 224 222 221 221 220 220 219 218 216 215 215 215 214 213 212 212 206 206 201 197 195 190 188 187 186 184 177 172 169 163 158 157 155 148 145 136 123 113 109 102 100 99 94 90 85 83 76 72 67 66 60 55 102 95 91 90 84 82 73 67 70 66 446 446 413 391 350 322 293 268 237 184 131 113 77 55 50 86 81 165 136 112 85 83 161 119 53 129 91 132 105 89 86 73 64 63 57 58 52 93 116 70 74 73 73 331 269 216 203 80 77 72 61 263 211 144 49 39 99 87 78 72 69 63 54 28 17 20 17 22 69 62 41 28 45 18 7 5 myelectricaldata_dev -182 175 133 164 138 116 134 143 208 186 146 193 163 72 148 66 168 147 123 84 64 113 100 90 84 75 64 79 62 93 79 61 98 92 92 - - 60 55 76 68 59 98 88 82 75 51 70 55 94 90 86 79 71 62 105 91 86 85 74 59 87 87 88 79 66 78 62 96 84 74 61 50 82 69 54 52 44 47 50 51 58 67 54 55 60 48 59 51 82 72 63 48 61 50 77 68 59 54 42 82 71 67 52 42 149 140 130 115 108 108 72 157 117 83 161 117 80 149 128 106 59 98 99 62 61 54 218 186 145 70 89 55 30 92 52 35 30 24 40 40 27 40 186 173 163 154 113 73 337 299 262 222 151 99 87 68 64 52 47 132 76 133 36 29 21 14 22 13 1 - - - - - - - - - - - - - - - autobrr -176 158 124 120 94 12 322 290 264 224 217 233 226 230 295 258 228 179 184 118 83 162 151 136 121 100 69 127 118 103 79 77 63 5 71 - - 93 73 70 9 36 4 54 26 48 64 50 39 76 76 68 61 51 62 48 35 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_openvino -174 158 66 222 192 154 188 171 145 84 168 144 32 148 144 174 132 116 127 88 80 92 79 43 107 95 87 74 86 103 93 80 76 118 118 - - 81 111 97 83 76 91 78 96 80 80 105 82 65 97 87 69 58 89 70 60 589 588 582 576 569 567 541 527 517 506 497 484 467 457 441 426 414 405 388 374 361 345 337 322 312 298 284 277 261 242 235 225 209 200 189 183 165 151 144 135 126 111 99 93 80 72 58 49 34 27 19 10 20 20 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - openproject -165 144 188 156 169 16 170 202 175 78 166 178 166 172 154 183 158 74 92 78 66 57 49 38 33 26 15 111 98 87 74 79 122 116 115 - - 84 83 122 113 95 81 147 140 130 124 117 112 100 90 82 74 64 71 73 67 121 121 102 88 81 81 71 60 94 87 76 69 0 65 63 67 57 175 170 155 149 135 128 119 113 105 86 79 68 59 32 1532 1531 1528 1524 1520 1512 1509 1504 1495 1488 1485 1482 1474 1471 1463 1455 1450 1442 1439 1434 1432 1425 1425 1407 1381 1347 1316 1284 1250 1215 1176 1142 1118 1094 1069 1020 992 966 940 905 877 842 775 750 723 667 634 594 564 547 540 536 529 521 516 514 512 508 501 464 427 391 356 314 277 209 159 153 29 287 280 277 248 197 130 34 39 26 55 46 42 37 29 22 26 55 51 43 37 44 44 40 31 30 12 8 7 tdarr -157 153 151 128 115 104 90 186 168 152 133 127 125 109 91 79 73 72 64 60 55 53 51 45 33 57 49 42 33 34 47 40 36 127 127 - - 115 103 100 92 85 83 77 72 63 53 46 35 120 118 117 114 114 111 104 100 96 95 92 89 84 84 55 48 44 38 47 38 0 98 93 87 83 77 63 54 50 40 76 73 66 56 42 53 45 35 127 121 111 102 93 88 81 75 69 65 57 49 44 35 266 264 261 258 251 250 246 236 230 230 189 163 117 73 256 216 183 147 122 100 58 157 98 64 186 155 125 102 72 70 594 563 494 459 429 395 377 371 362 354 351 347 341 333 331 325 286 248 202 160 120 82 300 250 244 115 113 107 99 67 267 201 100 84 67 59 47 39 35 25 17 15 38 32 23 26 32 32 22 19 53 33 27 26 piwigo -149 83 354 273 201 135 48 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - nginx_webserver_proxy -148 144 66 155 0 148 150 150 154 74 144 148 166 146 203 169 160 182 166 99 69 82 101 85 109 95 81 83 83 90 86 86 83 83 83 - - 91 82 76 74 81 74 94 84 89 82 84 86 79 74 78 78 73 79 81 70 77 77 61 85 86 86 77 74 73 75 81 79 0 78 69 79 75 81 82 93 80 66 68 71 75 81 71 67 69 73 65 70 67 66 62 70 63 59 64 61 64 61 66 63 60 58 66 61 62 61 60 61 92 92 1885 1858 1824 1786 1759 1714 1677 1638 1618 1595 1565 1544 1494 1456 1420 1392 1360 1322 1283 1219 1187 1156 1111 1078 1048 1018 990 984 977 968 957 952 950 944 941 936 894 856 819 781 747 711 645 594 584 458 449 443 440 405 352 292 194 174 160 154 150 146 138 129 115 112 109 100 94 72 62 62 76 61 84 57 50 50 nzbget -148 128 183 163 144 111 108 104 138 108 90 76 72 80 56 42 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cleanuparr -132 90 50 171 110 5 156 135 143 61 314 267 194 157 164 242 187 135 169 102 102 84 48 47 34 82 96 81 152 123 95 110 100 124 124 - - 165 127 92 124 93 162 131 95 93 95 108 93 123 98 117 184 134 119 109 104 742 742 722 698 677 675 602 575 552 533 507 487 463 431 397 356 265 647 625 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 592 553 513 477 434 349 314 326 325 375 318 605 568 518 475 433 401 352 255 896 872 840 821 805 771 744 723 707 679 654 630 605 577 554 554 516 473 423 377 325 274 125 1223 1190 1165 1111 1075 994 953 910 868 824 778 728 640 600 553 483 438 378 330 281 252 224 200 169 152 118 96 65 115 85 55 109 80 984 928 841 778 758 610 579 562 544 496 427 342 226 183 149 140 143 130 137 156 125 97 113 118 152 127 122 122 120 86 122 79 67 65 webtop_kde -126 90 310 298 285 285 276 243 234 196 167 127 201 193 177 171 157 147 135 180 180 175 169 164 155 145 142 139 133 124 117 113 105 100 99 - - 76 111 110 107 100 95 86 79 68 169 166 162 155 148 142 136 135 128 123 110 104 104 100 95 87 85 51 182 178 170 166 158 158 151 147 136 131 119 111 107 104 103 98 93 88 77 68 62 56 52 44 38 25 57 50 48 40 34 30 22 13 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - kometa -125 103 186 174 152 134 117 105 294 290 266 242 214 186 171 155 135 111 95 74 53 48 44 36 4 109 105 93 85 71 90 78 78 72 72 - - 133 119 110 88 77 75 67 416 410 405 398 383 373 366 359 353 344 339 330 320 311 310 301 297 291 289 257 252 246 241 230 221 214 190 180 167 162 154 149 139 125 120 118 112 100 86 77 70 54 60 215 209 199 195 191 182 170 166 166 162 156 147 136 134 129 123 119 113 107 101 92 87 75 75 240 225 190 167 151 131 101 72 282 266 246 226 182 158 132 114 97 72 301 254 227 207 154 125 100 72 53 44 39 266 262 256 247 239 230 219 182 146 108 67 265 229 163 109 103 58 45 126 114 84 236 170 75 56 42 35 30 13 9 42 27 98 87 73 72 65 45 38 55 48 43 21 10 9 grav -110 88 112 88 54 14 83 44 54 12 8 58 66 32 42 15 14 10 28 9 7 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pipy -107 103 91 301 290 278 267 248 232 226 220 208 198 186 168 158 150 144 142 139 135 131 128 127 126 126 122 115 108 101 93 86 84 82 81 - - 68 58 54 41 107 100 97 93 91 81 77 72 67 64 64 61 54 53 47 184 181 181 178 175 172 172 164 160 159 153 148 140 138 134 131 129 125 120 112 106 103 95 93 89 88 76 70 69 62 56 52 49 48 42 37 369 362 359 359 353 351 347 344 342 340 337 335 331 327 326 324 322 315 315 276 248 213 181 150 120 82 39 1349 1322 1284 1267 1224 1197 1172 1144 1119 1091 1069 1019 994 973 921 887 856 829 815 810 804 802 801 797 795 790 787 785 751 715 679 647 613 579 511 461 457 335 331 324 322 298 247 184 91 75 67 64 63 60 60 58 55 52 51 49 45 41 28 24 25 22 18 4 1 1 requestrr -106 106 102 94 93 83 73 65 65 61 47 39 31 25 15 7 6 6 6 5 5 5 5 5 5 5 5 5 5 1 1 1 1 1 1 - - 1326 1313 1307 1301 1288 1276 1268 1256 1248 1232 1220 1212 1203 1195 1190 1181 1176 1170 1159 1149 1139 1138 1132 1122 1117 1115 1097 1091 1085 1077 1067 1054 1046 1031 1028 1017 1011 999 993 987 979 969 961 953 948 931 913 909 903 893 889 884 878 868 861 854 836 824 817 813 805 792 788 781 776 769 761 752 740 737 730 712 698 698 679 656 614 578 547 514 477 433 401 377 339 309 264 230 206 175 142 106 47 386 351 321 249 212 171 134 107 97 83 77 71 568 563 556 551 548 505 469 431 393 358 324 260 206 199 69 63 55 407 373 323 255 157 137 126 120 114 109 104 98 91 86 79 78 74 71 59 46 40 34 29 12 7 7 inadyn -98 90 74 500 486 475 467 465 459 447 427 397 391 381 363 349 341 335 326 315 307 299 296 292 284 277 271 269 265 258 253 250 248 244 244 - - 236 228 226 224 222 219 217 217 209 203 201 199 195 192 190 184 180 178 173 172 165 165 163 162 160 159 142 139 137 132 122 112 110 104 93 82 5 93 152 143 139 135 134 130 125 114 95 101 108 101 148 143 131 123 109 128 140 134 121 118 128 127 124 153 136 152 141 150 177 162 225 215 195 195 191 318 292 257 218 318 287 238 339 282 381 465 478 403 378 402 375 445 370 350 352 319 150 1274 1214 1155 1121 1094 1070 1043 1025 1003 979 956 942 922 868 814 764 709 657 605 511 433 400 238 311 284 252 227 137 301 244 187 351 322 301 262 236 202 158 111 176 148 152 108 134 134 123 84 104 57 86 80 paperless_ng -90 72 521 495 475 447 429 400 372 338 302 276 238 204 170 234 210 193 167 113 82 56 40 101 90 76 64 67 130 106 93 80 69 56 54 - - 61 44 48 31 12 43 27 8 23 4 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - collabora -88 80 44 84 70 6 64 66 68 74 61 38 6 60 28 52 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - maintainerr -86 74 109 107 99 97 95 87 79 73 56 46 34 22 14 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 566 558 557 - - 537 526 510 507 501 490 482 480 474 465 459 454 450 443 434 428 421 412 405 395 393 393 388 383 380 379 357 352 345 343 339 336 332 328 321 310 304 294 283 270 254 248 246 234 230 219 205 201 189 180 176 161 152 148 143 138 129 114 106 99 90 82 66 36 1348 1341 1338 1327 1321 1315 1309 1303 1292 1292 1282 1256 1231 1210 1188 1166 1142 1111 1092 1072 1043 1026 976 956 933 912 896 877 853 810 793 772 730 707 680 663 647 641 637 635 628 621 615 610 607 597 571 545 523 498 474 449 404 369 363 276 269 263 251 225 189 146 83 70 62 59 54 49 41 26 90 85 86 78 72 69 52 47 45 31 31 13 7 7 elasticsearch -86 52 96 68 42 60 48 71 46 60 34 68 54 44 20 18 0 24 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - manyfold -82 78 72 76 76 74 74 80 78 74 80 84 84 81 78 90 81 80 84 43 41 40 42 38 42 45 50 48 48 46 45 44 44 45 44 - - 50 44 38 44 44 39 38 40 42 41 45 42 42 42 38 32 35 38 55 38 45 45 42 39 39 39 48 39 38 40 45 45 48 46 45 36 43 43 35 40 39 38 49 47 57 46 43 43 40 60 50 42 57 49 41 41 58 50 46 40 38 46 42 36 37 55 48 37 35 37 37 39 80 80 54 73 62 69 117 96 64 57 58 57 61 41 55 64 64 52 54 60 45 48 43 50 35 626 592 559 544 540 536 531 529 525 520 517 511 511 474 437 400 359 325 283 217 167 161 35 35 31 106 73 86 111 52 41 29 45 32 38 32 33 32 30 31 36 26 37 30 23 20 24 38 22 26 26 flexget -82 78 20 6 66 60 74 115 76 34 99 67 46 93 69 38 34 36 43 31 11 53 45 36 24 36 58 48 39 27 18 26 33 7 7 - - 31 13 73 67 60 53 43 39 26 16 15 1 13 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ente -82 66 97 74 97 6 102 101 103 100 86 87 136 114 92 82 23 64 55 43 26 33 28 31 61 53 42 36 51 41 57 49 46 43 43 - - 46 40 38 31 28 31 30 54 51 34 27 32 56 50 43 38 38 71 65 64 58 58 54 50 47 47 53 49 47 45 35 97 87 80 77 72 70 68 66 59 54 53 49 44 39 28 27 30 23 25 21 25 21 31 30 26 46 41 39 37 23 20 22 18 18 22 19 19 27 41 28 18 122 122 93 61 36 46 27 28 28 21 42 21 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - codex -70 74 75 68 78 4 91 79 71 28 81 76 88 68 76 78 92 86 80 52 45 48 43 38 54 51 41 59 54 57 47 59 62 57 54 - - 61 62 56 60 65 59 51 56 62 63 55 52 57 62 56 63 55 60 54 73 68 68 61 72 62 61 79 74 69 68 90 81 70 86 81 76 70 97 96 91 81 70 115 112 104 88 81 83 141 133 130 126 119 97 123 116 106 97 84 124 123 117 109 94 89 108 102 86 95 155 152 146 134 134 123 220 179 137 133 265 223 192 159 178 158 292 171 233 167 389 342 290 229 265 209 154 102 290 227 169 120 186 155 125 110 326 306 290 267 244 195 144 202 143 305 255 166 208 176 195 181 152 128 371 305 232 118 194 161 140 119 88 98 146 119 104 139 121 98 75 155 155 134 110 95 82 17 17 code_server -66 62 50 48 38 34 26 16 14 8 6 6 10 14 20 6 4 2 2 1 3 44 35 18 9 5 53 37 32 22 8 8 6 6 6 - - 9 4 4 2 2 0 6 2 6 5 5 4 9 13 11 9 8 13 9 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_cuda -64 52 20 30 18 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - aurral -32 61 148 144 132 98 109 95 75 30 92 68 50 96 74 53 31 4 50 29 25 31 19 22 12 29 27 26 26 20 14 8 22 33 33 - - 32 19 18 17 22 19 16 22 18 16 26 25 24 23 19 17 18 16 41 37 35 35 31 30 29 29 22 17 19 18 15 23 20 18 6 21 19 23 21 19 16 12 35 32 30 20 46 46 43 43 40 35 31 28 26 21 17 19 17 32 29 27 24 20 13 7 2 50 31 13 12 8 38 38 109 87 54 34 32 105 76 45 19 25 178 160 117 92 75 51 22 172 146 94 68 46 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - signalk -14 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scrutiny-original -12 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scrutiny-fa-original -8 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - zoraxy -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 11 6 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - test -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 43 35 23 17 8 22 11 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - overleaf +2026-07-10 2026-07-03 2026-06-26 2026-06-12 2026-06-05 2026-05-29 2026-05-22 2026-05-15 2026-05-08 2026-05-01 2026-04-24 2026-04-17 2026-04-10 2026-04-03 2026-03-27 2026-03-20 2026-03-13 2026-03-06 2026-02-27 2026-02-20 2026-02-13 2026-02-06 2026-01-30 2026-01-23 2026-01-16 2026-01-09 2026-01-02 2025-12-26 2025-12-19 2025-12-12 2025-12-05 2025-11-28 2025-11-21 2025-11-14 2025-11-07 2025-11-06 2025-10-31 2025-10-24 2025-10-17 2025-10-10 2025-10-03 2025-09-26 2025-09-19 2025-09-12 2025-09-05 2025-08-29 2025-08-22 2025-08-15 2025-08-08 2025-08-01 2025-07-25 2025-07-18 2025-07-11 2025-07-04 2025-06-27 2025-06-20 2025-06-13 2025-06-06 2025-05-30 2025-05-30 2025-05-23 2025-05-16 2025-05-09 2025-05-08 2025-04-11 2025-04-04 2025-03-28 2025-03-21 2025-03-14 2025-03-07 2025-02-28 2025-02-21 2025-02-14 2025-02-07 2025-01-31 2025-01-24 2025-01-17 2025-01-10 2025-01-03 2024-12-27 2024-12-20 2024-12-13 2024-12-06 2024-11-29 2024-11-22 2024-11-15 2024-11-08 2024-11-01 2024-10-25 2024-10-18 2024-10-11 2024-10-04 2024-09-27 2024-09-20 2024-09-13 2024-09-06 2024-08-30 2024-08-23 2024-08-16 2024-08-09 2024-08-02 2024-07-26 2024-07-19 2024-07-12 2024-07-05 2024-06-28 2024-06-21 2024-06-14 2024-06-07 2024-05-31 2024-05-24 2024-05-24 2024-05-17 2024-05-10 2024-05-03 2024-04-26 2024-04-19 2024-04-12 2024-04-05 2024-03-29 2024-03-22 2024-03-15 2024-03-08 2024-03-01 2024-02-16 2024-02-09 2024-02-02 2024-01-26 2024-01-19 2024-01-12 2024-01-05 2023-12-22 2023-12-15 2023-12-08 2023-11-24 2023-11-17 2023-11-10 2023-11-03 2023-10-27 2023-10-20 2023-10-13 2023-10-06 2023-09-29 2023-09-22 2023-09-15 2023-09-08 2023-09-01 2023-08-25 2023-08-18 2023-08-11 2023-08-04 2023-07-28 2023-07-21 2023-07-14 2023-07-07 2023-06-30 2023-06-23 2023-06-16 2023-06-09 2023-06-02 2023-05-26 2023-05-19 2023-05-12 2023-05-05 2023-04-28 2023-04-21 2023-04-14 2023-04-07 2023-03-31 2023-03-24 2023-03-17 2023-03-10 2023-03-03 2023-02-24 2023-02-17 2023-02-10 2023-02-03 2023-01-27 2023-01-21 2023-01-13 2023-01-06 2022-12-30 2022-12-24 2022-12-16 2022-12-09 2022-12-08 Date +626324 508490 295538 187951 202857 207298 140475 196724 195429 192371 161135 168787 147551 141128 128014 125333 116609 115189 108264 102680 82287 69115 77528 69094 60852 63855 80968 76650 76368 76680 74263 72911 76740 86290 85365 84859 - - 93916 89227 85492 81733 82398 80928 80058 77828 76925 73054 77998 74436 75347 75004 72775 69407 74365 76109 75314 73044 68415 68003 74989 75413 95755 95280 94242 91014 90233 88789 86207 85170 85194 86915 84812 82572 80743 84366 86769 84305 81481 76240 76908 75990 74319 76488 77734 75851 75809 74807 73967 74197 71724 73990 73372 74249 73736 71352 83606 88312 89846 87690 86596 92746 94295 90039 80926 72882 71830 70159 69833 67653 69012 69005 70922 69934 66029 66168 66686 64308 67070 65017 73318 76478 73677 74019 70426 62241 55701 53744 52326 49500 48175 42473 42336 39905 34679 46033 42786 42795 40675 39766 38360 36480 37779 40026 39455 41790 43334 50337 49386 48913 46173 43611 43648 42982 41225 38304 38828 30434 30232 30051 32193 31615 29210 26192 19917 20377 19409 19253 18223 18044 16127 15701 14436 13970 13610 14133 12886 12065 11500 10919 9777 7647 7966 4937 3908 3691 TOTAL +86665 59486 31480 20032 18566 17110 15635 14159 12678 11315 10091 9013 7413 6046 4639 3399 3376 3356 3341 3313 3287 3254 3238 3225 3206 3199 3184 3170 3144 3134 3116 3099 3086 3568 3559 3559 - - 3510 3489 3470 3450 3439 3431 3418 3399 3389 3354 3338 3329 3318 3304 3292 3280 3272 3263 3253 3239 3232 3231 3221 3199 3186 3184 3132 3113 3091 3082 3062 3047 3030 3015 2994 2980 2967 2950 2932 2911 2883 2859 2847 2835 2818 2796 2778 2774 2759 2749 2737 2722 2711 2692 2669 2662 2632 2619 2604 2595 2582 2566 2561 2548 2530 2517 2505 2487 2464 2450 2440 2423 2407 2407 2384 2349 2303 2264 2222 2190 2150 2095 2068 2031 1999 1974 1910 1883 1845 1813 1780 1736 1693 1612 1574 1546 1469 1429 1378 1343 1321 1301 1277 1260 1239 1223 1199 1191 1178 1167 1122 1079 1036 1001 959 915 841 787 778 647 635 622 618 589 527 451 353 326 313 300 289 277 262 252 240 227 218 193 183 168 142 126 98 88 75 39 30 29 arpspoof +82801 55582 27559 16050 14551 13058 11558 10047 8509 7130 5849 4717 3063 2295 2074 3473 3399 3345 3289 3011 2747 2690 2651 2608 2568 2536 2501 2472 2435 2402 2361 2327 2296 2281 2251 2249 - - 2182 2149 2107 2083 2057 2022 1996 1960 1919 1875 1836 1793 1749 1714 1678 1639 1607 1577 1530 1482 1446 1442 1412 1381 1338 1334 1152 1102 1059 1005 909 2227 2184 2140 1274 1239 1181 1123 1055 992 924 820 1466 1428 1380 1343 1299 1253 1210 1159 1113 1074 1036 976 918 884 824 767 700 1735 1699 1661 1626 1581 1534 1510 1466 1430 1381 1346 1303 1266 1233 1232 1151 1091 1008 940 880 806 732 628 530 5291 5234 5190 4304 1538 380 500 412 312 700 568 509 427 424 348 333 387 322 281 232 254 219 228 196 161 198 208 770 723 674 621 571 521 431 363 343 205 187 172 156 104 338 263 152 113 92 74 54 35 14 - - - - - - - - - - - - - - - sponsorblockcast +71957 44263 15879 1533 4760 5035 322 12978 11060 9266 7616 6058 3740 6494 4683 3030 2664 2247 695 1615 1136 615 1559 1153 838 1869 1609 1327 803 1332 909 797 1006 1342 1335 1306 - - 3567 3472 3370 3281 3162 3045 2935 2826 2734 2609 2516 2387 2255 2155 2075 1983 1877 1774 1677 1572 1477 1473 1343 1230 1116 1098 1353 1227 1106 985 838 680 296 5 1024 905 870 1718 1609 1501 1373 1252 1160 1060 949 815 1013 878 776 1206 1143 1069 1012 935 843 730 832 733 895 806 691 762 652 5900 5837 4452 2213 814 726 627 609 775 652 651 2399 2319 2230 2155 2068 1983 1896 1811 1727 1643 1565 1462 1259 1167 1071 971 860 768 660 460 351 344 358 373 330 692 630 570 487 426 1712 1662 1590 1542 1500 1457 1373 1302 1234 1154 1075 995 896 818 788 619 561 523 461 375 261 205 495 448 409 353 291 331 285 274 254 173 262 268 268 251 193 193 225 172 181 156 201 196 jellyfin +71762 44486 16436 4822 3168 17372 15885 14386 12788 11218 9779 8500 6664 5074 3427 1945 1845 1723 1625 1548 1376 1277 1218 1121 1059 994 925 842 757 674 569 488 289 600 578 568 - - 564 573 510 442 208 208 208 208 770 719 689 651 624 601 566 530 479 391 324 1576 1538 1538 1514 1481 1459 1455 1363 1335 1309 1289 1260 1230 1211 1177 1152 1122 1097 1068 1040 1011 975 949 916 892 868 847 825 796 773 751 737 714 689 658 635 613 583 572 552 525 493 466 450 412 377 348 319 329 391 371 347 309 545 545 497 462 405 354 296 526 480 424 382 330 245 238 396 346 299 223 157 343 297 200 167 221 124 183 265 228 194 181 163 150 136 131 125 118 251 241 206 152 191 146 356 314 243 184 171 129 114 99 384 352 293 226 130 111 95 88 100 94 82 146 138 128 117 112 100 90 70 56 44 39 34 11 7 6 flaresolverr +69221 37756 41777 24666 20162 15315 1256 16250 13204 23749 20942 18923 16185 13117 13099 14344 13274 11743 13667 12086 8907 6058 4539 4066 3568 3045 9930 7365 5640 6404 5642 2945 7502 7128 6676 6621 - - 14629 12198 9690 7034 6552 6090 5414 5364 5520 4076 8230 5640 6309 5852 5180 2206 6224 5295 4448 3405 242 6 5682 7272 6290 6205 10604 8139 7186 6648 6146 5424 5515 9115 6697 6111 5412 7159 11125 10594 8800 6024 5941 5275 5828 5119 7030 6671 6207 5639 4939 4263 3415 4999 5472 4814 5539 4890 18272 17557 17232 16970 16729 16499 16274 14119 11142 8709 7725 7470 7186 6864 6583 6582 6246 5910 5512 5013 4412 5496 5045 4389 12880 12601 12221 11881 10434 7402 5947 5571 5139 4655 4160 3131 2395 2557 2129 5838 5509 5176 4858 4541 4136 3752 3228 3684 3192 5490 5246 4979 4713 4452 4159 3836 3472 3016 4488 4238 4010 3585 3255 2851 3665 3335 2880 3319 2766 4137 3852 3527 3207 2848 2476 2542 2400 2836 2366 3080 2786 2538 2238 1987 1630 1327 1176 847 588 555 portainer +65589 38416 10433 9826 8389 6967 5524 4069 2603 1251 16 833 658 478 290 109 101 97 95 89 83 80 78 77 74 73 69 68 67 65 56 51 50 50 48 48 - - 42 34 34 33 33 30 28 25 73 66 65 64 63 59 57 57 56 53 52 50 47 47 44 43 41 38 32 30 29 26 54 47 45 41 39 34 31 27 377 377 376 374 372 366 364 353 344 342 342 342 339 335 333 331 329 328 321 321 321 319 317 316 315 312 308 307 301 299 295 295 293 293 293 293 258 244 209 185 152 128 94 64 48 184 162 146 103 79 54 40 97 70 41 121 98 76 28 105 75 48 35 34 29 27 25 22 21 20 17 52 120 87 50 390 359 327 263 214 211 90 87 84 81 56 189 129 38 26 20 17 17 46 43 40 34 28 27 23 21 20 25 25 24 22 19 6 3 3 mylar3 +25511 38165 10023 608 4057 2526 116 2420 2304 2356 488 2549 2328 1739 1143 1295 1205 1020 1035 1131 658 559 455 439 693 653 586 464 642 595 525 621 546 588 515 497 - - 511 507 515 491 705 665 619 558 494 230 503 204 489 473 479 637 583 518 505 522 537 532 677 613 546 535 596 529 586 522 518 533 581 518 528 598 523 654 600 523 509 484 496 479 602 534 469 467 513 446 457 527 463 452 515 447 449 461 435 433 427 471 411 417 415 415 532 491 433 489 410 503 436 436 450 449 532 449 461 554 457 530 443 443 398 475 384 439 446 549 461 535 441 495 425 504 337 376 385 374 343 346 385 324 367 312 232 316 413 358 352 353 348 339 437 364 400 303 364 260 310 306 404 326 354 432 288 279 250 254 307 243 252 236 226 196 225 281 231 243 288 288 237 181 298 226 195 195 plex_nas +24950 25575 9600 337 3 1775 72 1894 1785 1604 261 2012 1275 1781 1782 598 581 537 536 718 334 263 297 249 163 146 289 248 291 311 306 300 305 298 294 291 - - 295 294 288 297 296 305 295 305 301 295 285 288 273 279 291 296 293 279 295 280 306 305 294 317 303 293 285 304 286 294 292 298 295 296 288 285 286 294 289 304 272 272 301 272 274 270 265 273 261 262 261 246 263 259 241 243 230 242 232 243 234 235 228 238 233 230 242 234 235 245 253 239 283 282 275 275 287 267 268 279 286 253 274 272 234 222 2600 1318 270 257 258 211 268 250 236 241 215 229 237 221 205 203 187 195 195 194 195 195 192 237 231 219 224 219 233 244 241 189 247 188 193 187 220 184 239 253 183 177 181 171 169 161 159 154 148 110 134 140 111 129 118 118 94 106 136 104 95 95 jackett_nas +21558 19966 19356 9643 24812 22468 2430 22305 25659 24171 21797 23876 20636 24120 21748 24134 21638 21185 19921 17876 12032 8215 11110 8649 3807 5314 11483 10156 10195 10314 10172 10081 10076 10043 11067 10951 - - 11537 10765 9557 9367 11692 11023 10227 8929 8833 7902 8340 7762 8427 8277 8285 8229 8228 11416 10904 10325 9669 9633 8767 7401 26982 26925 25607 25173 24774 24363 23957 23559 23174 22845 22434 22023 21617 21190 20760 20328 19788 19317 18902 18464 17966 17528 17159 16773 16375 15944 15536 15163 14735 14288 13905 13564 13225 12882 12557 12187 11830 11475 11150 10830 10519 10206 9880 9545 9204 8880 8509 8102 7701 7701 7265 6739 6139 5257 6152 5411 9957 9569 9181 8879 8506 8131 7318 6854 6384 5921 5304 4283 4406 3468 5309 4756 3599 6078 5712 5363 5001 4643 4144 3597 4034 3492 4252 3817 3241 8250 8000 7767 7521 7293 7034 6803 6575 6325 6136 5808 5613 5426 5247 5029 4775 4482 4212 3978 3759 3498 3263 3035 2810 2532 2229 1960 1569 2036 1730 1356 1359 1359 1070 888 727 477 285 264 filebrowser +11758 11304 10999 10101 9699 9262 8852 8362 7977 7565 7246 6833 6473 6031 5642 5248 4976 4696 4487 4257 3947 3753 3627 3492 3384 3252 3077 2936 2821 2718 2574 2440 2299 2166 2023 2013 - - 1647 1511 1387 1298 1172 1037 893 733 1262 1115 966 805 646 418 573 250 141 262 184 95 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - postgres_17 +7594 4502 3948 7706 9960 9417 8697 7732 10309 9774 9165 8442 7216 5738 4860 3040 670 6846 6020 4442 4315 3305 4492 3804 2138 1145 3090 2566 1 197 192 3312 3150 2996 2728 2664 - - 1748 1512 2499 2397 2271 2122 1970 1840 1626 1374 1366 2482 2332 1872 1220 910 759 587 1229 1003 842 834 1184 1069 955 943 656 980 874 753 595 456 517 405 207 353 239 0 64 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - netalertx +5131 5095 5038 4944 4896 4839 4760 4713 4594 4402 4181 3971 3725 3475 3236 3002 2914 2858 2813 2772 2711 2672 2638 2601 2568 2535 2483 2450 2413 2377 2344 2309 2264 2246 2214 2208 - - 2118 2080 2042 2013 1975 1942 1908 1868 1833 1785 1733 1648 1578 1511 1400 1243 991 1479 1387 1225 15 3 2846 2726 2630 2610 2068 1946 1842 1719 1577 1441 1293 1076 1394 1227 1053 792 705 965 1370 1168 1005 861 372 3232 3124 3028 2943 2844 2744 2647 2554 2460 2359 2274 2169 2067 1973 1894 1793 1709 1611 1513 1435 1394 1345 1310 1255 1202 1163 1115 1071 1071 999 950 886 831 764 708 633 537 467 399 322 243 341 263 170 690 629 561 493 376 313 252 128 164 254 194 158 130 95 69 51 37 72 29 289 274 226 183 141 102 62 16 223 166 163 31 18 5 - - - - - - - - - - - - - - - - - - - - - - - - - - postgres +4533 4039 5006 4366 3910 3918 404 2609 4234 3827 1790 4213 3922 3508 3514 3524 4060 3798 3402 2324 1903 1445 1310 1172 1000 67 818 1443 974 131 1731 1589 1436 1571 1397 1356 - - 1318 1364 744 1299 1547 1446 1274 1264 558 551 549 1137 1170 1035 573 9 1987 1940 1898 1856 1777 1773 1746 1687 1637 1633 1372 1268 1129 1338 1246 1077 1325 1202 1073 640 1084 959 821 195 877 711 567 446 951 1051 904 793 660 1005 889 704 303 574 571 1153 1041 920 738 1030 951 831 1064 978 889 765 799 654 690 629 718 632 730 730 641 477 327 627 716 622 809 705 595 554 648 583 619 519 286 6 972 914 853 732 689 641 533 485 421 347 289 233 808 771 732 710 680 660 631 607 567 520 468 415 372 330 258 197 168 175 142 230 203 153 169 321 231 185 129 606 588 562 542 501 465 434 404 373 368 328 276 192 142 7 90 53 38 35 mealie +3273 3143 3079 2959 2879 2781 2693 2607 2462 2382 2340 2273 2215 2131 2061 1930 1815 1753 1699 1625 1527 1441 1366 1253 715 4301 4238 4201 4177 4123 4081 4033 3997 4042 4001 3996 - - 3910 3884 3861 3830 3802 3772 3749 3718 3683 3640 3608 3575 3540 3511 3489 3454 3431 3405 3375 3351 3328 3326 3291 3269 3249 3244 3165 3132 3089 3058 3022 2992 2943 2902 2863 2828 2793 2760 2705 2656 2584 2546 2506 2462 2415 2350 2292 2252 2206 2173 2135 2086 2023 1966 1914 1871 1820 1781 1730 1681 1633 1576 1525 1477 1447 1412 1357 1314 1258 1179 1093 548 2125 2125 2052 1970 1870 1794 1714 1654 1561 1466 1383 1282 1092 910 927 1710 1628 1527 1419 1289 1169 916 951 831 477 1416 1310 1145 1001 874 811 755 653 860 797 726 640 511 860 753 639 533 1392 1321 1240 1163 1124 965 939 910 887 836 761 656 515 492 834 803 755 709 672 607 450 490 416 365 279 254 504 397 403 272 289 35 59 39 myelectricaldata +2851 2837 2831 2809 2795 2779 2761 2751 2724 2693 2681 2661 2647 2624 2604 2546 2512 2504 2490 2460 2421 2368 2356 2337 2331 2321 2309 2294 2285 2279 2261 2247 2232 2695 2689 2688 - - 2665 2646 2630 2625 2615 2607 2594 2585 2572 2555 2546 2533 2532 2527 2519 2508 2504 2499 2491 2482 2476 2476 2468 2462 2450 2448 2411 2401 2394 2388 2369 2359 2350 2345 2339 2328 2316 2303 2291 2280 2266 2252 2245 2239 2232 2214 2201 2197 2187 2179 2171 2155 2134 2113 2106 2101 2086 2085 2079 2066 2059 2054 2049 2038 2030 2021 2007 2001 1990 1986 1979 1967 1961 1961 1941 1909 1872 1828 1796 1762 1724 1676 1650 1626 1607 1583 1534 1508 1483 1463 1436 1401 1378 1297 1259 1218 1156 1117 1083 1054 1037 1023 1017 1007 1003 1000 994 988 982 977 946 909 867 829 785 747 679 628 617 489 480 472 462 432 376 310 215 189 177 170 166 158 153 138 126 114 104 89 87 82 64 52 46 43 37 19 13 13 teamspeak +2837 2490 2842 994 2391 3288 3074 2773 2428 3448 3211 2892 2483 2488 3587 3334 3078 2724 2368 2280 1424 1181 1004 801 708 524 1379 1220 1067 950 788 552 1566 1377 1246 1225 - - 1242 1060 1321 1181 1003 458 1277 1125 954 1399 1296 1183 1064 895 472 1266 1141 985 1340 1228 1118 1111 942 23 1246 1231 898 751 580 953 36 926 1126 950 1404 1262 1130 950 1463 1335 1198 1054 886 875 652 537 1001 838 1113 996 843 1139 1018 849 1000 839 830 959 816 31 1019 917 752 1073 986 897 740 488 538 352 732 65 65 65 45 31 9 1160 1016 883 730 1132 1001 867 625 1101 836 665 798 653 479 339 619 457 546 315 302 760 579 750 620 443 453 545 403 455 342 211 353 203 429 700 576 419 500 653 653 545 456 558 499 404 758 649 497 310 481 367 209 298 299 359 394 249 365 269 316 429 325 238 468 468 405 328 283 193 124 94 nextcloud_ocr +2814 2806 2806 2788 2780 2774 2767 2750 2686 2525 2351 2172 1986 1793 1610 1419 1401 1382 1376 1353 1338 1310 1288 1269 1254 1228 1205 1172 1152 1128 1107 1089 1072 1056 1035 1033 - - 981 959 944 929 917 895 874 852 832 812 787 773 757 724 710 693 684 673 653 629 603 603 584 551 527 521 440 395 2286 2265 2238 2206 2193 2162 2137 2101 2068 2043 2004 1976 1939 1902 1878 1857 1839 1815 1791 1763 1727 1699 1680 1659 1632 1614 1591 1571 1549 1532 1515 1488 1462 1433 1407 1382 1357 1322 1297 1271 1246 1234 1222 1207 1194 1194 1182 1154 1128 1100 1076 1056 1026 991 963 948 924 898 859 832 807 779 758 723 695 627 599 566 516 486 450 418 402 386 377 357 340 328 318 302 296 283 245 207 169 131 308 280 226 183 166 562 550 541 522 477 417 348 242 221 209 196 186 180 171 145 144 133 119 102 103 150 132 119 99 73 64 33 27 27 overseerr +2785 2503 2191 1238 930 2191 1773 2108 1823 1776 944 1860 1527 1457 1620 1327 1467 1178 962 943 764 568 423 298 145 67 70 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - filebrowser_quantum +2373 3518 3129 2362 1976 1428 85 3567 3099 2595 2110 2218 2226 2123 2131 3075 2788 2439 2121 1669 1114 768 1620 1480 1340 1195 1009 720 1234 1098 913 725 1035 854 595 567 - - 1005 842 794 652 451 24 708 433 621 901 742 688 1137 1026 903 781 642 830 703 489 30 30 1015 889 774 743 224 681 870 766 598 37 423 40 698 575 549 649 505 823 697 483 462 307 560 418 441 427 423 498 405 506 405 402 462 368 359 333 391 346 369 301 290 288 301 304 336 251 270 459 397 343 279 278 323 255 250 398 329 263 252 221 205 207 188 203 315 250 552 495 442 380 314 208 145 138 62 160 147 149 105 137 90 92 69 35 105 98 82 111 103 87 97 92 94 92 35 205 194 100 80 54 74 74 174 124 42 34 46 58 53 70 60 48 21 23 29 22 29 28 2 2 0 - - - - - immich +2176 2009 1989 1901 1853 1815 1792 1751 1695 1646 1583 1536 1468 1408 1336 1286 1208 1160 1112 1049 982 925 874 829 779 702 560 171 2012 1793 1577 1438 1390 1351 1313 1308 - - 1227 1202 1171 1146 1122 1097 1067 1036 1015 983 947 920 888 862 835 808 780 747 702 657 593 591 634 583 1170 1164 1051 1027 999 965 932 887 851 816 790 747 714 672 633 587 537 478 753 711 670 632 595 554 505 452 488 436 510 446 472 436 495 461 412 409 666 633 612 594 558 535 521 488 461 424 393 344 476 476 414 347 512 456 403 355 401 334 133 119 576 541 447 410 358 295 264 448 389 299 251 302 211 414 353 302 262 247 217 187 157 192 166 135 498 476 419 364 309 262 199 143 296 229 207 53 47 28 41 - - - - - - - - - - - - - - - - - - - - - - - - - portainer_agent +2170 2090 2045 1925 1848 1798 1744 1673 1613 1551 1496 1414 1331 1238 1141 989 1095 1010 452 780 685 621 571 539 495 444 397 332 5 911 880 836 797 757 717 713 - - 607 561 528 496 424 287 280 788 740 690 637 553 236 1242 1210 1194 1181 1148 1110 1075 1052 1049 1012 976 947 938 835 803 768 733 688 640 605 574 531 470 413 1174 1128 1087 1042 1010 984 951 925 880 842 798 760 714 668 609 497 1584 1539 1501 1458 1417 1384 1358 1332 1307 1273 1233 1208 1185 1155 1136 1099 1064 1037 993 962 961 905 860 809 756 705 652 582 506 412 1111 1054 1013 923 877 835 789 732 687 631 531 490 453 322 357 547 492 453 420 350 302 247 242 199 169 137 415 352 660 606 554 506 456 367 281 404 279 291 215 394 345 272 137 235 373 337 306 282 232 284 228 298 268 243 201 170 122 188 144 176 150 131 91 59 57 guacamole +1870 1818 1782 1729 1699 1660 1606 1570 1519 1487 1457 1421 1381 1319 1278 1234 1203 1181 1154 1142 1093 1056 1040 1027 1002 985 968 948 923 892 869 848 830 808 793 793 - - 747 725 710 693 672 658 638 618 600 573 548 526 508 491 467 447 417 398 366 335 301 300 251 507 491 487 390 361 336 292 258 577 554 527 511 481 440 413 373 310 257 310 269 266 111 1733 1703 1673 1645 1616 1593 1563 1543 1515 1500 1480 1464 1444 1432 1394 1359 1346 1319 1296 1275 1249 1227 1205 1178 1146 1126 1097 1076 1076 1044 1001 951 907 866 824 788 736 696 664 617 574 498 466 410 364 311 262 202 369 317 245 129 224 169 715 685 653 621 597 573 553 519 490 465 440 399 358 301 255 196 146 77 22 124 40 26 37 6 - - - - - - - - - - - - - - - - - - - - - - - - - free_games_claimer +1837 1823 1795 1724 1714 1688 1665 1649 1573 1396 1216 1023 832 644 450 260 224 198 162 123 99 79 65 49 24 4 128 119 103 84 63 40 14 6 72 72 - - 71 67 66 66 66 66 66 66 66 61 61 60 60 59 59 59 53 49 53 78 68 68 61 44 57 54 50 55 60 45 57 48 55 61 52 59 49 54 56 53 51 49 57 50 55 54 51 55 47 51 70 58 54 61 150 145 133 120 111 104 96 76 61 65 71 59 60 77 67 67 75 68 124 124 96 140 105 85 114 20 120 103 106 98 107 87 129 102 99 115 114 116 115 118 107 134 67 146 115 82 82 83 89 90 79 90 82 79 76 106 99 97 95 88 87 110 111 72 111 79 71 64 84 105 116 143 79 70 57 58 56 71 65 60 59 49 60 48 54 62 52 52 43 39 65 49 42 41 readarr_nas +1735 1719 1703 1665 1653 1630 1605 1589 1523 1355 1171 979 787 601 413 219 195 185 167 153 137 132 119 107 95 39 159 144 132 118 108 89 123 112 98 96 - - 99 143 137 125 116 96 80 186 174 159 151 142 131 122 117 106 95 88 142 132 117 117 109 101 93 89 103 88 141 134 128 118 111 100 87 156 141 134 118 108 99 82 146 126 117 103 95 88 77 94 85 74 111 102 93 86 74 117 112 99 92 84 77 74 174 163 156 149 143 138 131 122 110 110 215 188 147 110 365 330 292 248 216 185 148 120 385 355 318 296 262 234 199 131 334 295 228 191 150 120 94 81 105 97 94 91 84 79 77 110 116 111 104 101 110 139 133 77 205 76 55 71 141 109 224 150 82 76 66 64 75 69 60 60 62 50 67 58 43 65 58 58 52 42 68 51 45 44 lidarr_nas +1715 1675 1612 1514 1466 1390 1329 1252 1182 1109 1062 992 921 839 783 728 651 581 514 432 364 249 312 267 50 370 339 298 269 215 334 291 232 448 427 424 - - 342 311 293 262 215 578 551 532 505 483 468 443 423 410 390 363 348 329 304 275 245 244 171 1001 983 983 911 890 876 862 843 824 799 769 746 718 696 670 648 623 586 890 842 794 767 734 703 679 643 605 563 519 475 419 394 355 310 274 237 196 156 116 142 58 86 24 473 439 402 375 347 312 273 273 202 148 158 878 828 762 702 625 552 493 419 359 224 128 46 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - whatsapper +1677 2055 1950 1700 4641 4392 4168 3939 3677 3414 3198 2982 2728 2451 2210 1956 1824 1599 1080 959 798 656 2480 2442 2410 2355 2311 2259 2215 2172 2124 2078 2029 2015 1948 1940 - - 1808 1765 1731 1691 1651 1612 1567 1539 1500 1463 1433 1394 1359 1323 1274 1246 1212 1170 1122 1080 1041 1038 996 963 917 909 749 704 656 605 550 480 425 0 685 625 538 455 776 724 622 539 429 1945 1874 1825 1770 1714 1640 1587 1524 1474 1433 1384 1341 1287 1237 1182 1137 1082 1034 990 948 903 849 800 738 648 1184 1137 1102 1061 1015 1015 941 850 772 679 593 499 716 602 499 390 82 1556 1399 1331 1255 1164 1085 995 885 673 525 412 1073 989 910 836 771 719 668 628 572 513 452 380 354 285 267 265 291 272 271 280 283 234 316 313 246 225 233 263 271 321 319 216 211 213 221 274 203 206 277 145 202 333 260 277 254 254 294 218 282 205 204 195 transmission_ls +1668 1738 1484 2297 2238 2164 2089 2009 1891 1730 740 1734 1723 1739 2236 2147 2049 1915 1739 1730 1006 692 1379 1318 1262 1208 1143 1081 1016 947 824 785 1031 983 927 921 - - 730 827 742 715 750 415 755 756 570 471 738 681 615 568 518 454 481 448 409 683 583 575 360 1121 1073 1067 842 750 737 743 1101 1049 911 537 481 547 475 546 455 475 669 609 553 486 412 469 403 571 533 480 424 363 530 492 463 424 390 358 313 440 404 378 341 310 270 684 651 634 620 603 579 560 539 539 482 438 384 335 282 31 352 279 329 271 362 305 334 268 162 250 468 419 374 272 215 216 336 289 234 187 151 116 251 233 218 208 189 167 223 193 452 411 365 320 266 209 196 150 240 99 176 145 179 407 339 251 259 232 211 194 169 139 200 167 150 123 143 132 184 157 93 114 94 73 52 44 34 32 tandoor_recipes +1641 1453 1364 1020 847 653 470 275 2403 2072 1791 1474 1145 798 482 162 149 138 138 130 116 110 102 93 233 222 211 207 200 197 179 176 164 160 154 154 - - 134 121 107 105 103 96 87 77 71 54 74 214 208 205 199 197 189 182 176 173 165 164 158 158 153 153 142 137 134 128 124 116 110 102 100 90 83 69 63 55 9 109 102 86 91 470 458 449 438 429 424 418 412 407 397 390 379 363 356 350 339 336 327 323 313 303 288 282 279 276 274 266 256 256 235 206 172 134 92 179 136 95 682 655 626 589 513 481 443 405 343 302 269 198 160 125 46 187 128 81 57 112 109 99 90 87 75 71 67 66 29 187 150 115 74 644 571 518 510 386 384 376 374 352 301 240 145 113 107 106 101 97 90 84 74 64 67 61 56 51 29 29 20 8 44 28 26 26 webtrees +1569 1450 1208 1393 1 1489 1245 1371 1635 1485 1313 1404 1384 1432 1449 1435 1425 1406 1394 1489 1059 946 879 809 712 1061 981 898 809 682 298 646 606 751 660 640 - - 679 755 670 673 657 977 931 887 843 758 678 672 859 784 695 1578 1534 1494 1451 1395 1352 1350 1304 1234 1175 1167 971 931 877 823 757 658 998 941 870 797 701 1156 1089 1007 926 818 696 1054 981 926 858 811 737 645 862 807 742 650 701 602 894 846 804 740 661 573 671 579 781 718 678 590 1025 970 921 863 814 814 718 619 84 839 764 687 562 586 584 595 501 501 511 773 675 579 696 583 782 539 522 543 1171 1097 1007 918 855 785 726 673 615 573 503 447 463 659 583 485 623 537 452 622 531 441 492 465 567 496 392 596 490 620 472 711 651 561 472 692 642 565 495 397 374 437 353 493 407 393 377 98 359 91 321 313 epicgamesfree +1537 1482 1460 1396 1362 1307 1254 1215 1161 1115 1077 1024 974 923 876 823 751 674 572 1284 1241 1196 1171 1142 1115 1092 1055 1026 998 970 944 913 883 851 825 824 - - 766 733 708 685 669 647 615 595 573 543 518 498 465 451 435 402 371 337 302 259 83 73 112 136 118 115 102 84 71 65 59 61 52 8 54 35 16 25 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - webtop +1515 1695 1514 792 1334 1460 228 1628 1473 1478 805 1642 1415 1623 1460 1423 1408 1331 1441 1687 906 2208 2146 2105 2049 1990 1943 1908 1878 1849 1804 1769 1733 1709 1670 1665 - - 1562 1534 1500 1474 1447 1413 1402 1383 1355 1317 1294 1267 1226 1208 1188 1168 1135 1114 1092 1057 1029 1026 936 896 870 867 782 763 749 728 714 694 670 653 635 611 590 567 538 517 484 464 438 420 391 361 336 196 327 577 563 532 508 482 466 449 415 399 375 343 310 278 240 374 361 339 315 292 268 236 474 439 416 416 377 340 297 256 202 345 307 259 205 274 229 645 568 541 501 457 433 392 345 256 218 180 100 274 230 196 166 484 470 453 438 426 419 404 385 371 332 300 271 242 208 179 124 79 503 411 391 371 363 335 289 233 159 131 131 266 256 237 225 203 184 171 150 150 136 113 91 89 71 43 60 38 22 20 scrutiny-fa +1247 1156 1073 367 1479 1425 1374 1321 1249 1195 1145 1047 951 957 433 972 900 830 782 717 623 580 538 480 440 188 616 580 548 512 476 413 552 522 495 491 - - 589 555 518 492 450 389 664 640 622 590 553 533 493 464 447 420 371 434 411 366 394 392 493 459 431 423 438 387 371 463 425 386 471 444 395 528 493 456 393 481 423 368 484 452 421 368 444 419 366 404 362 446 420 380 472 450 417 388 352 434 419 385 341 496 473 449 411 369 544 519 497 454 409 409 559 510 449 370 804 758 706 644 594 543 440 357 863 797 756 703 643 582 497 590 518 447 387 513 443 343 442 386 414 362 299 519 481 451 420 376 704 640 567 497 436 354 599 529 491 341 286 291 291 267 503 411 280 382 347 322 281 250 86 290 257 222 235 191 186 208 200 200 128 95 91 47 31 29 radarr_nas +1237 1172 1112 1003 907 990 825 1037 914 912 466 955 822 866 867 900 867 804 790 392 309 248 418 347 112 540 514 492 475 457 406 400 397 399 395 382 - - 402 459 422 392 372 411 370 367 427 392 350 380 341 388 349 338 384 347 351 352 398 395 351 349 428 425 359 339 375 334 359 323 333 344 382 361 327 347 313 342 295 293 328 284 379 344 314 271 286 316 298 279 349 334 315 291 249 275 244 287 259 228 175 128 216 126 246 221 264 249 225 201 117 117 279 227 215 211 257 212 298 250 222 186 261 229 156 244 195 154 186 143 168 177 138 109 80 102 91 38 99 65 50 48 31 36 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - changedetection.io +1195 1042 1198 1026 1246 1186 1107 1012 1320 1295 1239 1167 1082 980 970 1179 1112 986 788 641 519 39 583 530 477 199 465 686 655 612 579 535 499 447 425 418 - - 699 668 644 626 592 559 527 499 464 387 601 577 544 515 492 459 404 403 768 741 719 719 688 655 634 629 512 465 405 408 457 414 482 440 488 426 409 419 421 423 408 404 400 405 398 427 383 396 387 454 426 373 392 388 360 420 376 374 373 364 409 370 364 385 1510 2162 1045 382 370 378 394 388 483 483 417 416 460 379 428 23 433 430 436 426 352 356 403 457 460 457 474 485 468 454 518 439 377 430 422 336 384 391 65 65 65 65 65 65 65 65 35 1424 1360 1294 1246 1191 1107 1033 1008 865 829 803 773 722 639 546 425 380 346 320 283 247 246 288 248 191 243 192 192 217 146 146 121 90 88 55 37 35 sonarr_nas +1106 1074 1051 995 964 934 909 862 819 799 765 739 707 660 632 606 569 517 491 457 424 402 389 360 339 317 304 276 254 227 202 181 145 243 220 219 - - 147 112 192 184 169 151 129 107 83 63 35 7 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - omni-tools +1081 1191 910 473 1110 1221 1066 1082 1079 1219 1025 1315 1156 991 1036 1028 1133 952 974 989 591 287 565 502 287 916 853 811 769 725 668 629 583 524 442 423 - - 470 467 495 434 585 539 492 437 485 413 587 531 458 369 471 389 542 492 418 494 458 456 383 514 458 452 377 390 474 435 366 438 378 345 279 208 803 749 706 654 584 450 653 533 312 434 378 337 287 348 321 270 262 272 304 257 434 380 331 226 205 285 252 193 254 217 260 195 230 204 217 185 129 128 264 200 9 723 668 606 559 501 456 409 340 279 152 171 104 367 326 275 212 270 230 185 86 219 164 288 244 203 164 112 128 171 134 676 654 633 590 546 509 461 418 380 301 253 230 133 113 87 413 377 330 266 188 158 126 109 95 79 119 92 66 42 277 270 243 225 193 164 139 109 97 61 43 40 browserless_chrome +1063 1028 988 916 872 820 769 687 607 514 248 823 786 748 705 615 563 501 457 415 344 306 279 242 195 204 852 832 815 796 760 724 700 673 650 648 - - 574 548 519 495 468 447 424 399 376 354 331 303 280 259 239 219 193 175 152 129 110 108 88 63 35 33 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - librespeed +1024 1020 1020 1018 1018 1016 1016 1008 1006 1000 996 984 976 976 958 948 940 939 939 939 939 939 939 939 939 939 939 939 939 939 931 931 931 1390 1387 1384 - - 1384 1378 1378 1378 1378 1378 1378 1378 1378 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1369 1369 1369 1369 1368 1368 1368 1368 1368 1368 1368 1368 1368 1368 1362 1356 1356 1356 1356 1356 1356 1356 1354 1354 1354 1348 1348 1348 1348 1348 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1334 1314 1280 1256 1228 1194 1169 1143 1123 1101 1085 1071 1036 1020 1004 988 962 947 923 875 853 831 783 759 728 704 691 691 691 691 691 691 691 691 691 691 659 629 599 569 539 508 446 398 398 278 278 275 275 251 203 143 53 38 31 31 31 31 31 31 30 30 120 110 99 91 68 65 53 42 35 16 11 9 papermerge +988 953 905 835 799 766 735 686 641 603 556 502 414 868 813 765 707 666 623 567 457 922 876 849 811 793 761 739 718 703 667 628 598 575 553 550 - - 496 471 446 422 401 371 326 436 413 378 354 336 307 285 259 236 217 197 177 160 135 131 0 778 753 750 664 638 614 602 590 572 563 544 528 509 492 476 459 439 420 392 370 342 313 276 556 536 506 486 475 460 434 411 376 362 334 301 280 257 228 296 279 260 221 902 886 873 860 841 828 813 791 791 770 738 697 656 621 587 555 518 485 458 422 400 329 288 249 217 182 385 335 256 219 193 116 155 113 143 274 252 238 215 201 185 172 156 129 137 149 139 46 139 144 154 152 108 146 111 101 61 103 46 111 99 102 84 21 107 94 84 101 105 88 51 23 66 10 86 22 22 73 72 81 69 73 69 calibre_web +936 909 889 847 825 803 772 743 721 699 677 645 593 569 541 511 477 447 423 399 369 343 314 299 284 279 263 253 235 220 194 170 134 3428 3412 3409 - - 3367 3355 3336 3324 3312 3306 3294 3274 3258 3238 3216 3211 3182 3175 3163 3161 3151 3141 3133 3126 3114 3113 3104 3085 3065 3063 3019 3008 2989 2968 2959 2938 2925 2913 2899 2874 2853 2838 2818 2788 2765 2735 2718 2700 2686 2666 2650 2639 2627 2617 2589 2576 2558 2537 2521 2496 2472 2458 2450 2440 2423 2414 2404 2391 2381 2367 2357 2342 2327 2310 2299 2289 2268 2268 2249 2215 2165 2131 2088 2053 2010 1967 1936 1903 1867 1837 1767 1733 1693 1656 1626 1578 1540 1468 1429 1388 1314 1285 1253 1208 1183 1176 1163 1152 1141 1134 1125 1113 1105 1084 1038 995 949 907 867 827 759 707 700 577 568 557 544 519 461 389 283 261 249 238 231 219 210 195 189 179 166 152 133 123 108 98 80 66 51 23 15 14 xteve +910 878 866 828 794 763 731 709 657 641 608 594 570 545 515 479 433 417 391 371 340 320 299 285 276 271 247 232 211 191 178 166 142 296 284 281 - - 263 236 221 211 202 185 170 160 144 115 88 403 391 377 360 345 332 312 286 268 244 242 230 204 182 178 411 401 380 358 343 318 307 296 275 260 251 240 229 218 203 183 172 151 138 112 308 291 276 257 250 238 229 211 198 190 177 167 159 145 130 105 376 368 362 354 340 335 321 304 290 279 265 265 213 182 133 618 576 545 508 446 410 382 351 324 260 221 163 127 83 13 32 267 223 186 112 78 36 1065 1044 1031 1023 1011 1006 998 989 982 979 973 937 897 864 827 789 750 685 633 623 498 489 483 471 438 383 317 223 203 193 190 183 171 165 154 149 143 132 122 118 104 85 76 67 56 49 24 20 18 baikal +905 863 804 674 678 2414 2372 2296 2164 1964 1749 1515 1309 1090 891 694 663 623 585 553 480 422 405 370 323 401 373 351 319 290 339 312 266 276 1242 1241 1222 1206 1193 1174 1156 1136 1120 1104 1083 1074 1061 1039 1025 993 974 954 938 922 894 873 848 836 814 814 793 784 769 767 712 694 685 662 646 636 618 603 577 562 539 517 492 468 448 426 405 388 373 348 326 305 281 261 233 1015 996 972 952 934 919 911 896 882 861 848 837 830 809 797 778 764 745 721 700 676 655 655 609 571 512 451 399 344 289 208 645 601 560 524 450 404 346 289 228 147 714 624 564 521 419 380 323 270 231 200 173 144 218 200 177 158 140 394 350 301 250 205 139 466 376 315 298 149 133 531 520 478 417 328 216 186 170 155 138 121 88 303 282 266 241 221 198 168 148 125 102 87 80 45 21 19 addons_updater +893 846 818 706 664 588 509 451 357 301 327 266 182 168 94 16 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bentopdf +886 41574 13233 6367 4500 3735 1912 1879 5209 3682 2341 2132 1882 1707 129 2857 2626 2425 2131 1774 1711 43 1161 57 1377 1236 1062 870 1920 1759 1541 795 496 2233 2125 2113 - - 1840 1761 1661 1575 1480 1381 1246 1115 957 1098 950 333 974 808 1338 1287 2120 2043 1948 1862 1734 1731 1599 1428 2508 2501 2125 2029 1919 1834 1695 1528 1352 2305 2193 2085 1974 1860 1743 1602 1417 1234 1629 1492 1349 1150 1438 1316 1117 1004 883 693 1119 1246 1081 1383 1270 1149 1019 1952 1865 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1787 1711 1640 1561 1508 1417 1321 1214 1112 981 1255 1165 1165 1059 933 801 647 1201 1063 887 1843 1734 1654 1540 1439 1180 1009 832 615 803 787 557 181 428 826 472 819 643 582 819 712 590 485 894 828 739 638 1466 1404 1300 1216 1123 1019 916 817 672 526 610 384 352 1101 1049 963 847 694 481 709 627 556 461 359 363 504 363 293 364 340 340 325 323 323 337 312 407 266 240 225 qbittorrent +823 759 713 612 539 442 345 778 722 702 662 632 584 564 542 496 441 413 375 351 310 274 244 206 169 361 332 297 275 254 231 209 154 267 253 252 - - 179 143 272 250 231 211 183 157 145 114 91 303 286 268 245 229 216 198 184 156 138 138 115 91 61 59 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - emby_stable +804 909 801 412 749 778 103 900 788 785 428 898 708 899 789 765 751 744 709 805 463 866 823 790 756 726 683 663 628 610 579 558 523 504 478 473 - - 399 368 335 313 289 246 225 195 158 127 1041 1022 983 966 943 919 901 883 867 833 808 805 666 597 579 575 509 499 488 475 468 445 432 416 406 382 366 353 335 317 298 283 270 249 234 213 189 104 182 321 314 300 292 277 265 240 214 194 168 59 191 168 136 230 210 201 187 167 150 126 353 337 326 326 283 244 205 167 125 237 209 174 128 220 164 606 540 497 460 420 386 345 308 237 200 150 70 220 177 144 114 797 792 778 770 757 751 740 732 717 684 658 631 603 575 545 497 459 442 348 335 320 313 290 248 188 112 91 104 158 144 132 119 103 81 130 127 112 97 74 81 81 67 48 84 58 58 58 scrutiny +799 584 464 1035 827 637 404 341 329 299 136 448 405 381 341 309 248 292 215 247 201 178 153 117 351 336 322 308 294 285 269 261 243 233 221 220 - - 184 161 143 130 165 146 126 224 204 187 173 154 138 116 331 309 301 293 282 271 260 260 241 218 200 199 1298 1291 1282 1272 1261 1244 1236 1222 1201 1182 1161 1151 1135 1112 1094 1078 1069 1051 1031 1016 997 981 969 955 934 921 911 897 889 879 866 858 850 832 824 814 806 788 774 767 749 733 720 707 694 683 678 678 665 642 612 585 564 538 510 473 451 431 414 393 346 318 295 267 231 207 188 126 100 138 74 98 53 267 248 234 214 206 195 189 186 178 171 162 129 94 50 548 510 485 435 399 395 307 304 293 290 274 236 184 115 94 81 76 66 52 43 169 153 143 138 131 119 111 89 75 65 55 46 29 17 15 wger +796 766 756 726 704 682 648 615 548 510 279 268 623 532 573 551 521 478 444 408 363 340 331 318 296 276 232 215 253 394 374 361 340 324 302 301 - - 294 268 239 291 273 254 221 246 212 250 226 207 205 222 216 204 283 268 253 234 212 211 187 146 269 263 377 354 335 317 303 277 261 248 235 207 173 127 201 284 253 233 211 187 147 221 185 384 359 336 316 301 277 262 237 227 191 173 147 121 161 142 116 86 289 258 243 228 206 192 168 149 135 135 102 73 254 220 185 143 111 53 21 3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - linkwarden +752 712 689 614 584 511 48 655 591 515 255 698 652 595 553 519 457 404 355 354 308 274 241 206 187 161 122 254 303 260 458 440 427 406 388 386 - - 325 294 255 321 265 367 324 267 368 344 327 293 262 519 505 492 476 456 436 419 407 406 379 361 342 338 241 330 318 290 260 250 256 768 752 729 717 685 666 645 627 596 578 558 536 518 498 482 462 443 430 412 394 376 363 347 331 314 303 272 245 216 186 875 860 841 822 803 780 765 743 725 712 712 686 665 634 607 579 541 504 467 440 410 382 354 285 250 203 159 266 227 185 247 218 187 86 213 157 166 129 173 156 140 117 450 433 421 409 386 344 306 257 215 164 272 199 129 331 194 184 171 153 247 177 97 203 180 151 138 120 104 108 150 133 116 96 159 149 130 105 85 69 74 81 48 24 23 joplin +738 772 981 872 758 975 918 833 740 940 862 758 841 721 838 760 829 727 719 579 471 395 643 605 550 507 457 415 362 368 438 384 231 362 451 448 - - 230 4 362 466 418 352 380 325 311 202 485 428 358 340 466 414 353 530 511 479 450 448 416 364 457 448 365 355 346 541 512 462 433 365 332 446 419 374 329 428 383 327 420 373 330 409 368 318 378 338 291 391 359 314 323 287 376 334 284 371 326 278 335 292 261 315 278 382 343 317 275 257 374 374 333 283 360 293 325 262 366 314 261 24 215 324 212 332 286 237 300 249 343 234 307 262 129 193 127 252 196 189 125 181 171 151 172 976 968 953 927 881 841 800 757 718 666 616 598 501 477 453 436 396 350 291 219 187 148 161 186 150 145 86 127 83 155 124 112 127 115 115 125 98 112 86 107 69 calibre +711 696 676 653 625 600 578 558 527 507 479 430 387 340 281 209 821 793 765 737 684 665 656 637 626 618 604 587 579 573 559 540 520 515 494 491 - - 461 443 428 419 408 396 385 379 366 350 327 312 303 295 282 267 250 239 217 180 1708 1708 1693 1684 1671 1669 1624 1602 1571 1558 1543 1530 1522 1502 1493 1483 1465 1454 1437 1421 1399 1373 1357 1331 1311 1300 1276 1261 1237 1224 1204 1190 1181 1166 1156 1147 1132 1113 1105 1087 1073 1062 1054 1038 1029 1013 992 977 956 947 938 918 901 901 883 844 798 763 715 683 638 586 546 520 485 456 386 347 311 272 244 198 133 218 170 135 372 325 281 228 200 182 165 157 144 135 111 83 1008 994 954 904 863 824 772 735 657 594 577 444 422 414 397 360 297 222 109 95 256 245 233 216 204 183 162 148 140 117 90 72 145 145 126 80 97 67 54 54 transmission_openvpn +709 980 931 837 772 659 68 407 654 669 286 793 717 644 628 685 605 582 572 559 360 314 270 212 241 15 432 372 448 403 369 421 368 373 372 359 - - 327 317 289 251 416 378 342 300 410 367 343 301 261 293 247 277 233 247 280 238 243 241 204 230 253 252 280 247 251 208 452 401 403 361 369 490 426 493 431 445 486 417 567 525 475 405 434 594 560 511 475 443 391 597 576 548 512 478 430 391 343 108 77 532 498 469 425 357 335 456 420 382 597 597 530 477 392 553 489 405 471 388 469 383 556 496 347 437 359 443 367 374 343 448 388 337 179 395 316 336 271 357 302 257 238 270 232 244 329 281 412 348 283 272 442 382 286 222 293 262 224 340 313 251 386 287 220 217 217 249 224 215 226 214 395 371 339 300 287 251 207 169 163 144 110 68 47 47 fireflyiii +699 681 681 655 649 623 608 594 566 558 546 528 508 486 475 456 439 433 400 388 374 360 356 346 335 325 310 301 292 289 280 275 265 262 247 247 - - 226 213 211 202 192 186 182 173 164 156 146 131 123 118 110 100 93 73 214 206 201 200 193 184 176 176 151 145 138 130 118 98 87 257 252 243 230 218 212 198 182 170 158 137 133 116 103 83 1597 1585 1579 1569 1560 1548 1543 1538 1527 1521 1514 1511 1503 1496 1491 1481 1476 1470 1455 1445 1443 1430 1423 1417 1409 1409 1396 1375 1355 1326 1298 1269 1248 1219 1197 1180 1151 1132 1077 1056 1025 1010 991 968 935 879 858 832 788 764 741 720 706 702 698 687 681 676 670 662 659 649 620 590 559 529 503 478 422 385 376 292 279 269 260 232 193 146 76 47 61 49 35 39 31 17 9 - - - - - - - - - - - - - binance_trading_bot +681 670 668 660 648 642 637 632 628 618 608 592 582 578 570 568 560 556 556 554 554 551 550 549 544 543 540 537 530 528 522 521 519 513 512 512 - - 505 500 496 494 491 491 488 488 487 482 479 477 475 472 471 471 471 469 466 466 462 462 462 462 461 461 452 450 447 447 447 443 438 435 429 423 421 416 412 411 409 409 408 405 402 393 389 386 385 383 380 377 375 373 370 368 362 357 357 356 351 350 349 345 339 332 329 326 324 316 307 297 290 290 260 236 207 177 148 119 89 57 30 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - comixed +669 595 471 691 653 583 74 695 642 540 258 716 682 642 587 514 462 433 387 362 331 281 245 341 331 301 265 237 293 272 235 287 267 242 241 237 - - 310 286 265 244 219 297 281 257 231 222 271 253 227 283 264 243 212 217 277 256 241 238 221 294 272 270 212 193 240 224 191 214 198 219 194 242 228 218 197 246 223 194 180 221 194 282 265 252 241 221 205 178 225 216 194 179 157 270 259 245 229 217 202 192 175 157 218 209 197 182 159 318 305 305 276 253 221 180 252 218 166 142 140 171 127 32 170 141 167 129 209 183 148 134 56 133 65 83 160 130 109 97 84 85 76 91 77 133 113 94 129 92 132 101 85 117 61 310 299 215 209 203 189 163 114 134 102 68 20 69 62 94 87 74 59 45 79 72 63 53 39 57 38 45 32 21 14 12 gitea +658 565 536 216 480 501 46 486 438 415 200 414 372 364 377 380 310 287 262 242 151 106 92 61 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - brave +647 635 623 599 585 565 532 508 488 463 443 423 411 394 371 349 323 291 277 261 237 224 213 204 191 180 170 160 149 143 128 114 311 298 291 290 - - 272 251 239 231 221 210 204 194 174 156 144 127 112 142 131 115 80 20 265 252 242 242 232 225 220 218 179 172 150 133 524 514 499 478 462 449 431 409 394 384 370 354 331 322 307 291 278 272 260 253 241 231 213 193 171 145 132 107 92 197 186 172 160 156 151 142 126 111 96 75 143 128 113 113 66 1929 1888 1853 1821 1790 1754 1705 1684 1660 1631 1603 1532 1495 1457 1431 1393 1352 1310 1240 1202 1168 1107 1067 1033 994 976 971 962 952 939 933 928 923 917 906 870 837 797 757 719 680 615 566 556 435 426 412 406 377 323 259 162 142 128 117 108 94 83 76 61 57 55 45 39 31 37 37 19 11 28 12 10 8 resiliosync +617 581 532 539 497 546 461 499 473 528 251 380 497 581 567 357 303 512 459 535 303 181 283 225 158 291 294 361 335 293 305 510 483 461 435 431 - - 362 322 284 292 297 285 401 374 350 321 281 279 324 293 289 547 528 515 495 464 437 437 410 380 353 353 470 452 428 409 386 353 330 301 266 314 281 406 374 348 322 308 272 342 302 265 262 253 257 440 420 411 385 359 334 316 293 266 244 245 275 233 305 285 260 225 409 393 366 350 331 315 287 287 241 339 293 239 290 246 227 232 231 453 408 373 307 250 230 416 383 352 307 231 221 217 146 216 171 125 213 191 229 206 161 201 173 283 262 235 175 334 278 228 176 484 413 357 342 215 204 187 164 467 406 331 227 198 174 147 114 147 130 184 179 157 135 114 107 114 102 102 87 72 61 33 22 20 cloudcommander +612 600 591 583 571 561 552 541 533 527 509 495 487 473 448 434 420 412 400 398 379 371 368 362 359 356 353 349 346 344 339 324 316 312 302 301 - - 287 274 268 265 258 257 248 243 233 226 217 212 206 198 193 189 183 183 180 173 165 165 162 157 156 154 140 136 134 131 127 119 116 116 109 101 96 77 62 129 107 76 87 82 76 75 83 80 78 64 917 912 905 903 899 889 876 866 860 857 852 846 840 835 830 819 811 804 793 783 780 776 768 768 753 728 686 654 625 587 552 507 477 453 426 399 344 322 292 261 239 215 189 115 79 43 194 166 130 93 78 75 63 58 49 831 824 821 819 806 767 728 695 664 632 599 534 485 474 348 344 335 328 297 248 188 88 71 62 59 54 51 41 31 27 79 70 63 56 46 29 25 55 49 45 27 23 22 spotweb +609 605 605 589 581 581 568 563 555 553 551 539 527 519 501 491 483 483 483 481 479 479 477 475 474 473 472 469 464 462 458 458 457 501 501 501 - - 498 491 489 489 487 486 485 485 484 475 474 470 468 466 465 464 463 459 459 458 456 456 455 454 452 451 450 448 447 447 446 441 441 439 439 437 436 433 431 429 427 423 420 413 412 403 395 393 390 389 387 379 376 371 369 367 359 358 356 352 350 343 333 326 312 307 297 294 281 270 262 253 238 238 196 168 130 204 172 133 456 408 376 360 323 302 249 218 188 156 120 469 432 360 332 296 227 188 156 121 101 94 88 77 66 87 79 72 57 70 84 88 88 83 83 107 104 47 184 54 60 60 79 94 198 131 68 52 46 44 41 55 53 47 51 44 53 44 37 56 59 45 42 33 63 33 32 31 plex-media-manager +520 494 456 412 394 363 343 288 247 389 359 323 284 249 208 240 167 139 10 122 88 53 80 66 53 35 15 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - social_to_mealie +515 740 786 324 0 779 80 753 739 771 314 757 728 790 699 703 693 800 679 704 389 303 370 322 323 149 367 290 412 380 333 334 341 386 337 334 - - 322 319 313 312 316 309 286 309 316 306 343 304 299 298 307 349 302 294 303 317 315 312 312 321 336 329 323 329 316 330 307 303 313 317 311 308 297 307 303 324 293 294 299 295 280 283 271 281 283 282 274 270 281 265 260 274 281 303 280 291 266 259 259 264 256 255 275 267 263 266 268 269 303 303 310 296 305 298 304 306 309 296 300 302 250 250 284 311 311 331 344 340 352 323 299 308 270 300 296 290 272 257 264 257 252 244 244 245 235 268 254 254 253 230 251 261 253 214 256 226 212 201 237 241 244 273 183 186 177 170 168 173 168 157 146 123 148 151 120 138 129 129 120 114 142 100 114 113 prowlarr +511 489 461 400 370 484 434 376 698 686 653 612 577 528 490 440 383 392 156 332 279 249 229 209 187 28 195 144 207 190 205 284 268 259 240 238 - - 507 472 450 425 411 392 375 361 343 312 282 260 238 215 451 440 430 409 394 372 351 351 323 282 251 242 291 265 242 301 263 216 791 775 762 732 709 690 665 645 625 594 572 548 526 513 465 443 419 388 368 348 318 284 243 426 403 383 369 353 329 311 296 268 230 320 304 285 249 210 245 226 251 251 1141 1107 1059 1018 970 922 874 815 776 738 695 669 599 560 527 494 466 426 371 284 235 168 163 186 254 213 180 137 423 406 384 371 359 339 332 318 288 255 197 135 398 350 288 246 235 126 269 247 228 191 133 207 108 121 278 261 246 225 214 112 170 152 126 96 91 87 143 143 121 112 103 78 81 81 photoprism +510 1431 1334 958 760 524 52 694 513 459 217 524 636 417 620 445 370 332 302 274 220 416 396 379 363 348 324 299 276 258 239 225 206 188 160 154 - - 256 232 217 202 184 156 130 182 158 133 112 173 148 136 122 106 97 73 49 32 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_power_tools +504 482 468 432 400 362 330 281 573 545 499 475 445 419 385 343 325 287 138 286 257 236 221 208 193 169 148 195 162 142 158 130 139 741 729 728 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - monica +501 489 477 448 440 421 402 363 348 335 318 292 270 258 238 220 206 178 163 153 140 131 122 107 85 156 114 2612 2594 2584 2569 2555 2544 3008 3000 3000 - - 2975 2963 2955 2948 2938 2932 2920 2913 2908 2897 2887 2878 2870 2863 2856 2849 2846 2842 2839 2827 2823 2823 2813 2797 2793 2789 2742 2733 2725 2722 2711 2698 2683 2675 2659 2640 2631 2611 2602 2587 2575 2555 2539 2532 2520 2495 2478 2461 2452 2440 2431 2428 2417 2409 2399 2392 2378 2372 2370 2364 2353 2344 2336 2324 2315 2303 2290 2283 2275 2262 2252 2241 2234 2234 2205 2180 2142 2105 2076 2030 1989 1939 1910 1884 1855 1830 1780 1737 1692 1669 1642 1605 1564 1494 1452 1414 1345 1318 1279 1245 1213 1208 1196 1185 1176 1168 1153 1141 1137 1129 1084 1045 1000 960 919 877 805 749 741 608 595 582 577 541 481 414 313 288 275 263 249 240 231 214 200 190 171 157 148 134 110 100 85 78 70 37 25 22 organizr +427 764 742 694 657 608 580 539 507 473 428 364 467 425 393 328 327 316 294 275 226 193 163 117 217 204 182 163 137 232 214 203 192 175 156 154 - - 275 261 247 240 223 205 182 164 150 122 97 86 56 74 54 42 45 55 34 14 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_frame +425 417 417 399 383 370 352 338 320 304 294 280 272 260 252 229 211 185 175 173 173 172 165 161 157 153 147 143 129 119 110 103 95 86 76 74 - - 74 60 261 260 256 252 247 245 237 229 226 226 222 221 216 212 207 207 204 198 192 192 188 186 180 180 157 154 153 150 148 146 136 131 124 111 101 95 89 81 71 66 685 681 675 665 657 653 650 643 638 635 628 623 620 619 610 608 602 600 596 593 583 580 577 574 565 560 558 553 551 548 544 544 533 513 487 470 449 430 409 385 365 352 335 318 281 259 240 215 199 178 160 109 91 71 26 85 54 68 53 49 39 36 27 584 580 579 575 572 549 525 503 477 454 429 381 342 339 255 254 250 246 225 192 150 88 76 68 63 60 58 55 50 47 45 41 39 33 29 20 16 8 24 18 5 7 7 fireflyiii_fints_importer +418 924 818 713 569 310 38 762 655 888 844 768 690 604 307 603 699 645 562 468 338 297 261 200 148 290 259 186 360 344 318 298 271 264 226 219 - - 231 274 251 230 170 213 202 241 205 192 173 144 142 197 138 286 268 258 249 208 180 179 138 83 231 228 82 81 130 84 118 103 85 25 87 72 56 45 9 97 68 75 143 129 114 100 86 75 59 48 32 63 43 33 157 151 142 133 126 114 104 96 77 64 55 45 28 34 35 46 2 49 151 151 111 70 68 15 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-go +414 402 388 365 349 336 316 283 249 233 124 351 308 266 336 310 274 256 248 234 204 193 189 176 161 139 180 172 164 155 136 220 214 204 192 191 - - 153 93 78 148 510 506 495 481 471 450 439 429 420 417 407 398 392 387 383 371 363 363 353 343 330 328 289 275 266 248 235 226 212 200 186 170 143 298 280 267 250 241 231 219 209 197 177 165 146 179 171 160 137 1162 1149 1143 1132 1119 1111 1104 1092 1085 1080 1056 1050 1043 1038 1034 1019 1006 998 988 983 983 966 938 903 873 833 791 748 698 661 629 603 573 520 478 440 412 382 346 305 237 201 164 87 184 138 196 168 156 147 133 124 117 109 96 91 767 725 685 650 613 579 539 471 416 406 278 270 249 242 215 154 75 103 76 54 259 251 240 232 218 216 204 199 180 168 148 135 119 97 82 72 41 32 29 whoogle-search +400 365 347 315 286 209 188 159 619 589 559 541 519 487 461 440 399 343 287 236 183 164 147 126 107 79 171 131 301 294 280 264 246 240 220 220 - - 163 1013 1002 991 981 970 961 946 934 921 906 890 875 861 851 832 819 810 792 767 752 752 741 723 710 710 645 619 595 574 558 540 513 488 464 447 426 402 382 354 338 321 305 278 270 246 222 196 175 149 360 346 323 304 282 262 225 207 181 147 2203 2186 2174 2158 2129 2107 2080 2063 2044 2032 2009 1985 1968 1968 1946 1910 1853 1801 1755 1702 1655 1599 1562 1514 1484 1460 1380 1342 1298 1260 1219 1173 1125 1032 995 957 869 825 766 723 687 659 636 619 608 588 576 552 540 529 477 415 364 306 255 200 119 864 836 693 659 637 621 586 516 434 302 271 235 212 178 144 121 76 188 170 121 148 113 223 174 119 117 123 104 45 19 14 zoneminder +396 357 323 276 260 224 196 146 122 149 129 303 264 224 201 161 117 79 98 60 77 58 48 34 20 21 18 37 37 37 31 31 30 37 36 36 - - 36 30 24 24 22 21 21 21 20 13 13 18 18 18 18 18 17 17 17 17 32 32 31 30 30 30 27 27 27 26 26 23 20 20 20 21 30 30 29 25 23 20 29 38 36 30 23 24 22 24 23 27 26 39 38 38 32 29 27 26 39 37 34 33 31 134 133 133 133 129 128 128 128 128 110 86 344 320 293 262 227 201 175 155 133 119 92 69 43 24 1 319 287 213 184 145 75 95 181 145 122 116 105 96 77 71 60 50 218 212 175 138 88 130 87 628 556 499 491 367 362 353 343 314 260 193 90 63 50 51 207 193 186 167 160 149 140 133 119 103 80 64 50 39 26 7 4 4 vaultwarden +384 358 338 128 360 346 302 331 293 625 605 569 551 527 504 470 450 426 401 389 365 341 325 303 291 280 269 258 247 237 228 204 182 170 159 158 - - 205 191 184 170 156 144 127 178 163 152 146 132 123 108 223 215 208 203 196 181 175 175 168 158 150 149 124 167 152 145 137 122 111 95 73 195 185 168 159 148 132 107 112 247 231 221 210 202 194 184 171 158 153 143 132 123 115 106 92 5318 5316 5304 5295 5289 5283 3973 1822 130 118 105 97 150 145 145 113 103 273 250 224 200 167 142 107 212 192 175 130 104 196 171 149 122 356 299 277 256 213 188 166 135 114 105 93 77 105 99 94 85 78 104 81 83 84 77 72 94 85 58 103 50 49 47 61 82 94 120 49 44 31 33 28 31 27 23 20 16 11 7 2 - - - - - - - - - sabnzbd +381 377 375 373 367 365 354 352 343 337 333 325 309 293 283 273 253 249 243 239 229 228 225 222 217 212 207 207 206 204 193 184 176 179 173 172 - - 163 154 151 149 143 142 141 141 139 130 128 126 126 125 123 121 114 110 106 98 96 96 91 88 86 86 75 71 65 57 52 43 37 32 11 146 140 136 130 123 120 119 114 107 102 89 81 80 78 69 65 59 54 47 44 42 31 31 25 13 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tor +380 305 285 251 227 120 195 488 450 398 190 383 410 372 428 373 367 239 38 245 222 201 181 165 153 83 280 257 245 229 216 204 187 165 174 171 - - 133 84 137 121 156 147 126 155 137 118 97 97 89 188 181 188 188 178 186 166 154 153 141 125 108 107 184 207 183 278 268 256 242 224 196 3 194 199 207 212 238 221 216 196 174 199 174 237 228 210 198 188 173 161 146 202 181 163 135 152 133 105 200 190 174 160 140 247 237 227 211 194 173 173 128 317 274 219 267 215 150 2 314 281 237 181 190 241 197 206 327 287 225 307 267 228 147 243 197 136 225 212 198 184 162 151 135 127 122 328 285 239 194 141 222 180 114 253 243 110 427 419 414 382 327 256 156 134 120 99 86 95 177 156 131 132 118 103 84 83 77 73 62 51 47 23 16 15 fireflyiii_data_importer +374 364 362 350 338 330 323 317 311 307 291 281 269 257 241 223 211 203 197 195 192 190 185 181 176 173 165 160 155 151 141 131 121 117 111 111 - - 91 79 74 69 66 64 59 54 267 255 251 249 246 243 243 239 234 229 228 217 213 213 212 206 203 203 189 186 184 182 169 164 163 153 149 146 143 132 128 125 123 122 118 114 106 95 85 79 74 65 56 70 65 63 52 1817 1807 1801 1801 1798 1793 1784 1779 1774 1768 1764 1754 1750 1739 1730 1726 1723 1721 1721 1711 1685 1649 1621 1589 1559 1524 1485 1448 1430 1407 1382 1342 1313 1288 1264 1237 1209 1176 1106 1079 1048 994 970 929 903 889 885 883 878 869 866 858 856 853 850 817 784 749 711 675 645 580 519 509 385 381 372 366 335 287 227 136 119 110 106 98 89 82 71 67 62 56 49 44 37 68 68 57 41 37 19 10 9 ubooquity +357 345 332 314 300 273 265 253 230 196 188 166 132 116 102 80 64 36 28 20 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - netbird-server +351 327 325 319 311 291 278 266 236 220 208 184 164 128 206 180 168 148 128 112 96 89 84 69 54 50 40 26 1874 1865 1856 1848 1845 2325 2318 2318 - - 2298 2288 2283 2275 2274 2268 2264 2261 2258 2250 2245 2244 2233 2222 2216 2213 2209 2205 2201 2198 2190 2190 2190 2187 2177 2177 2155 2152 2149 2145 2136 2123 2118 2105 2101 2088 2076 2057 2043 2024 2010 1997 1988 1985 1970 1951 1932 1928 1916 1909 1903 1899 1890 1884 1875 1869 1861 1849 1847 1840 1837 1830 1824 1822 1818 1812 1808 1806 1804 1799 1796 1793 1785 1785 1768 1739 1693 1658 1620 1596 1555 1514 1486 1467 1441 1419 1377 1350 1328 1304 1279 1236 1209 1151 1128 1098 1035 1005 968 931 912 908 905 900 895 893 889 888 879 874 843 810 777 742 708 676 615 563 560 438 436 431 427 396 344 279 188 169 150 143 139 133 123 105 83 125 117 108 92 89 68 53 47 38 29 13 7 7 gazpar2mqtt +327 278 235 134 0 294 232 302 273 295 162 425 284 256 216 178 154 134 344 303 174 146 218 204 184 167 142 106 149 132 132 130 149 134 119 115 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - grampsweb +322 282 304 107 259 281 22 315 295 308 91 288 360 212 245 202 224 191 208 228 151 39 81 28 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - chromium +292 242 200 162 754 715 657 569 504 433 190 429 318 612 560 516 464 394 335 275 164 99 224 206 185 167 148 130 107 152 138 121 102 248 238 237 - - 203 192 176 170 156 144 131 121 108 95 79 108 95 82 68 96 90 82 76 61 112 110 94 87 77 77 30 24 45 39 65 54 43 24 71 64 56 44 49 35 36 147 142 132 117 96 83 72 63 59 49 39 35 24 18 45 23 15 14 7 79 74 69 60 50 44 31 24 17 3 4 - 17 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - navidrome +289 283 283 281 279 276 266 262 254 244 234 218 212 200 190 180 170 166 164 152 130 111 99 82 74 47 0 98 91 86 38 358 351 345 341 340 - - 324 313 313 310 300 293 291 288 283 272 270 266 262 258 253 249 239 236 234 224 219 219 214 208 202 201 179 172 167 165 158 150 145 135 122 112 102 94 83 244 233 230 225 221 216 205 198 191 182 172 161 158 155 151 147 139 130 123 118 110 105 94 77 1046 1036 1032 1028 1021 1015 1015 1008 1004 1002 1002 975 959 924 889 859 827 789 750 714 694 674 648 607 577 554 528 511 476 442 377 348 317 248 216 180 149 128 119 110 104 98 92 85 75 64 608 570 529 482 448 410 376 307 258 250 118 109 91 82 341 287 220 121 103 90 88 84 80 73 59 93 92 87 81 73 65 50 40 39 30 24 9 4 4 ombi +283 259 247 203 382 366 342 325 309 276 104 789 757 731 698 664 609 539 691 1326 1242 1184 1143 1104 1069 1030 997 941 908 879 835 793 751 718 688 680 - - 591 564 532 493 454 426 383 349 292 357 328 270 264 372 337 307 265 267 506 475 455 453 414 379 357 356 226 270 231 225 400 373 341 305 288 262 231 197 243 209 449 427 394 369 340 305 151 211 189 164 135 243 226 204 192 164 140 127 112 62 284 268 245 235 220 205 184 154 131 148 129 362 340 340 284 246 205 159 1035 987 951 900 859 829 801 754 665 629 599 568 529 493 443 376 342 313 239 204 166 130 107 99 88 79 66 52 57 44 37 610 561 521 480 440 399 357 281 228 223 88 78 65 55 102 45 26 - - - - - - - - - - - - - - - - - - - - - - jellyseerr +241 551 537 485 461 431 391 360 323 295 237 590 567 522 488 448 420 358 291 257 210 157 201 183 166 64 316 306 292 271 258 241 234 228 218 218 - - 193 175 144 320 314 304 293 288 277 266 257 245 239 230 226 220 212 208 202 186 172 171 154 364 350 349 316 302 285 278 264 254 248 244 229 219 212 195 171 153 146 266 254 245 234 218 207 197 182 172 166 151 140 155 134 276 265 261 251 238 230 220 208 202 195 190 179 172 163 147 614 608 597 597 561 521 484 447 413 385 350 308 270 241 187 153 173 473 435 404 374 338 302 217 176 128 120 259 214 172 143 183 160 151 144 128 359 352 343 331 293 251 201 145 154 253 174 445 441 311 299 287 268 227 169 206 101 158 140 132 122 117 106 98 127 120 117 107 93 80 84 84 49 103 98 75 69 68 bazarr +233 227 225 216 209 200 191 187 183 175 165 143 139 125 111 98 82 74 67 57 43 39 36 34 32 82 72 57 48 44 37 27 21 136 133 133 - - 118 108 102 97 89 88 87 85 85 79 78 73 65 62 56 53 46 44 38 26 38 36 28 19 34 34 22 29 25 31 26 25 31 26 25 46 35 30 26 102 90 79 72 58 45 29 25 56 47 36 34 29 23 20 30 20 34 30 23 17 15 22 39 36 32 30 25 28 25 20 69 64 58 58 35 80 53 36 34 37 64 39 37 56 30 48 31 50 33 31 34 32 79 32 36 31 29 40 38 31 31 17 21 15 29 13 14 18 22 323 299 277 251 229 206 184 139 103 94 8 5 14 33 42 52 70 28 20 13 11 17 13 15 17 17 10 19 17 14 27 43 38 34 30 24 7 13 11 omada_v3 +229 176 158 124 120 94 12 322 290 264 224 217 233 226 230 295 258 228 179 184 118 83 162 151 136 121 100 69 127 118 103 79 77 63 5 71 - - 93 73 70 9 36 4 54 26 48 64 50 39 76 76 68 61 51 62 48 35 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_openvino +225 215 213 192 178 175 165 155 140 132 116 84 68 167 139 120 115 2 160 156 146 139 135 132 130 125 123 117 114 108 94 90 84 83 77 75 - - 71 65 61 57 53 49 48 47 44 39 35 34 29 232 231 231 225 223 220 213 210 210 204 199 195 195 183 179 176 173 171 169 167 165 159 158 153 151 143 137 134 132 125 117 111 103 97 93 90 82 79 76 75 71 69 68 62 60 57 52 50 43 55 49 36 281 281 276 269 258 253 247 241 241 222 204 179 154 131 116 92 68 50 24 138 125 95 74 52 52 80 58 35 197 179 156 118 94 72 53 41 39 31 25 18 22 16 103 100 92 67 41 60 38 213 191 145 112 108 21 213 209 205 188 153 111 47 37 30 27 36 35 28 21 29 26 22 23 17 25 32 32 21 22 20 11 9 9 unpackerr +225 149 83 354 273 201 135 48 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - nginx_webserver_proxy +220 216 210 204 198 190 177 170 154 149 147 119 102 94 80 62 54 42 40 40 38 33 32 29 25 6 49 41 909 906 901 894 889 1101 1099 1099 - - 1097 1088 1087 1085 1084 1083 1081 1079 1077 1070 1069 1065 1063 1062 1059 1053 1051 1050 1046 1046 1041 1041 1040 1038 1036 1036 1031 1027 1025 1022 1019 1012 1010 1007 1006 1000 999 995 995 995 995 994 992 991 990 981 973 971 966 958 953 947 946 940 937 933 921 918 914 909 905 903 900 897 895 892 887 883 882 875 868 860 856 856 834 806 766 728 695 659 622 585 560 534 511 489 436 405 371 339 300 276 242 169 132 99 33 98 59 531 500 488 476 476 475 473 467 462 462 461 431 401 366 336 304 271 202 153 152 30 28 19 334 306 256 194 101 88 82 76 74 71 67 63 61 55 55 51 50 48 34 33 31 32 32 20 18 18 joal +219 199 189 157 140 119 86 70 272 240 224 204 174 140 114 92 74 56 36 92 74 61 100 90 80 67 48 75 36 242 224 210 185 177 164 163 - - 133 120 106 95 85 1664 1660 1649 1637 1625 1613 1601 1593 1584 1572 1553 1546 1541 1529 1514 1504 1504 1499 1478 1470 1468 1428 1419 1401 1391 1380 1366 1357 1350 1343 1338 1331 1313 1305 1292 1278 1258 1251 1239 1233 1220 1210 1201 1197 1185 1179 1172 1162 1153 1147 1135 1125 1122 1113 1105 1095 1090 1082 1069 1061 1057 1034 1028 1024 1014 1008 999 993 993 978 952 909 877 844 809 774 724 693 673 641 614 554 518 482 454 424 384 341 276 236 206 146 106 73 35 11 8 6 1 546 535 527 519 512 504 467 436 404 365 326 285 217 163 157 30 59 48 44 291 240 174 77 51 40 34 32 54 46 38 29 22 38 34 19 25 61 61 50 49 43 21 17 17 seafile +210 206 193 189 185 180 178 176 175 171 171 171 169 165 163 161 157 157 157 151 147 144 142 140 138 132 115 102 94 83 72 60 48 554 544 544 - - 526 519 513 508 507 503 498 491 487 481 478 473 463 460 451 444 442 438 433 425 416 412 402 395 393 392 375 372 369 365 357 350 345 338 328 325 320 314 307 298 278 270 255 243 229 213 203 192 180 162 154 145 138 133 128 116 96 85 67 67 66 68 63 77 73 75 78 73 79 72 78 81 97 97 89 99 92 96 90 92 95 86 80 85 57 76 87 96 90 86 91 109 143 92 105 69 103 148 153 149 165 134 160 124 332 332 332 332 332 332 312 292 272 252 232 212 170 138 138 58 58 111 119 128 142 166 110 109 112 105 103 97 108 95 115 76 82 75 79 84 127 105 93 88 78 53 51 51 omada +206 174 158 66 222 192 154 188 171 145 84 168 144 32 148 144 174 132 116 127 88 80 92 79 43 107 95 87 74 86 103 93 80 76 118 118 - - 81 111 97 83 76 91 78 96 80 80 105 82 65 97 87 69 58 89 70 60 589 588 582 576 569 567 541 527 517 506 497 484 467 457 441 426 414 405 388 374 361 345 337 322 312 298 284 277 261 242 235 225 209 200 189 183 165 151 144 135 126 111 99 93 80 72 58 49 34 27 19 10 20 20 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - openproject +198 207 214 226 222 295 284 266 240 309 256 306 270 279 261 265 281 267 264 166 149 133 197 185 175 167 156 139 142 153 205 199 185 162 147 144 - - 160 176 169 163 157 164 153 171 175 163 169 8 172 180 205 183 199 181 191 194 200 200 205 217 219 217 0 322 287 248 241 242 324 295 250 274 237 291 249 311 249 260 224 298 273 221 252 218 548 506 472 436 401 368 331 296 240 185 271 217 175 198 166 165 269 215 179 165 151 144 157 142 188 188 179 191 185 177 170 240 181 182 153 211 147 114 109 197 177 173 170 164 158 164 200 157 115 135 142 134 128 120 124 82 107 115 126 102 100 129 136 555 509 463 420 380 309 250 239 105 131 108 127 228 159 181 112 108 90 105 286 266 248 221 200 179 161 123 107 85 150 150 145 127 99 60 72 66 emby +186 182 180 170 162 152 146 128 124 122 116 112 100 92 82 64 50 42 38 38 38 37 35 26 3 281 273 271 269 266 258 256 252 262 259 259 - - 254 246 244 244 242 240 239 237 233 226 224 222 221 221 220 220 219 218 216 215 215 215 214 213 212 212 206 206 201 197 195 190 188 187 186 184 177 172 169 163 158 157 155 148 145 136 123 113 109 102 100 99 94 90 85 83 76 72 67 66 60 55 102 95 91 90 84 82 73 67 70 66 446 446 413 391 350 322 293 268 237 184 131 113 77 55 50 86 81 165 136 112 85 83 161 119 53 129 91 132 105 89 86 73 64 63 57 58 52 93 116 70 74 73 73 331 269 216 203 80 77 72 61 263 211 144 49 39 99 87 78 72 69 63 54 28 17 20 17 22 69 62 41 28 45 18 7 5 myelectricaldata_dev +184 165 144 188 156 169 16 170 202 175 78 166 178 166 172 154 183 158 74 92 78 66 57 49 38 33 26 15 111 98 87 74 79 122 116 115 - - 84 83 122 113 95 81 147 140 130 124 117 112 100 90 82 74 64 71 73 67 121 121 102 88 81 81 71 60 94 87 76 69 0 65 63 67 57 175 170 155 149 135 128 119 113 105 86 79 68 59 32 1532 1531 1528 1524 1520 1512 1509 1504 1495 1488 1485 1482 1474 1471 1463 1455 1450 1442 1439 1434 1432 1425 1425 1407 1381 1347 1316 1284 1250 1215 1176 1142 1118 1094 1069 1020 992 966 940 905 877 842 775 750 723 667 634 594 564 547 540 536 529 521 516 514 512 508 501 464 427 391 356 314 277 209 159 153 29 287 280 277 248 197 130 34 39 26 55 46 42 37 29 22 26 55 51 43 37 44 44 40 31 30 12 8 7 tdarr +184 132 90 50 171 110 5 156 135 143 61 314 267 194 157 164 242 187 135 169 102 102 84 48 47 34 82 96 81 152 123 95 110 100 124 124 - - 165 127 92 124 93 162 131 95 93 95 108 93 123 98 117 184 134 119 109 104 742 742 722 698 677 675 602 575 552 533 507 487 463 431 397 356 265 647 625 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 592 553 513 477 434 349 314 326 325 375 318 605 568 518 475 433 401 352 255 896 872 840 821 805 771 744 723 707 679 654 630 605 577 554 554 516 473 423 377 325 274 125 1223 1190 1165 1111 1075 994 953 910 868 824 778 728 640 600 553 483 438 378 330 281 252 224 200 169 152 118 96 65 115 85 55 109 80 984 928 841 778 758 610 579 562 544 496 427 342 226 183 149 140 143 130 137 156 125 97 113 118 152 127 122 122 120 86 122 79 67 65 webtop_kde +165 157 153 151 128 115 104 90 186 168 152 133 127 125 109 91 79 73 72 64 60 55 53 51 45 33 57 49 42 33 34 47 40 36 127 127 - - 115 103 100 92 85 83 77 72 63 53 46 35 120 118 117 114 114 111 104 100 96 95 92 89 84 84 55 48 44 38 47 38 0 98 93 87 83 77 63 54 50 40 76 73 66 56 42 53 45 35 127 121 111 102 93 88 81 75 69 65 57 49 44 35 266 264 261 258 251 250 246 236 230 230 189 163 117 73 256 216 183 147 122 100 58 157 98 64 186 155 125 102 72 70 594 563 494 459 429 395 377 371 362 354 351 347 341 333 331 325 286 248 202 160 120 82 300 250 244 115 113 107 99 67 267 201 100 84 67 59 47 39 35 25 17 15 38 32 23 26 32 32 22 19 53 33 27 26 piwigo +160 148 128 183 163 144 111 108 104 138 108 90 76 72 80 56 42 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cleanuparr +153 148 144 66 155 0 148 150 150 154 74 144 148 166 146 203 169 160 182 166 99 69 82 101 85 109 95 81 83 83 90 86 86 83 83 83 - - 91 82 76 74 81 74 94 84 89 82 84 86 79 74 78 78 73 79 81 70 77 77 61 85 86 86 77 74 73 75 81 79 0 78 69 79 75 81 82 93 80 66 68 71 75 81 71 67 69 73 65 70 67 66 62 70 63 59 64 61 64 61 66 63 60 58 66 61 62 61 60 61 92 92 1885 1858 1824 1786 1759 1714 1677 1638 1618 1595 1565 1544 1494 1456 1420 1392 1360 1322 1283 1219 1187 1156 1111 1078 1048 1018 990 984 977 968 957 952 950 944 941 936 894 856 819 781 747 711 645 594 584 458 449 443 440 405 352 292 194 174 160 154 150 146 138 129 115 112 109 100 94 72 62 62 76 61 84 57 50 50 nzbget +147 233 213 140 104 47 0 196 167 135 111 124 93 93 113 213 179 156 126 101 66 32 127 104 91 76 55 27 75 56 39 28 45 25 33 29 - - 49 29 16 10 6 0 19 12 12 23 12 9 27 22 15 8 4 20 12 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_noml +145 126 90 310 298 285 285 276 243 234 196 167 127 201 193 177 171 157 147 135 180 180 175 169 164 155 145 142 139 133 124 117 113 105 100 99 - - 76 111 110 107 100 95 86 79 68 169 166 162 155 148 142 136 135 128 123 110 104 104 100 95 87 85 51 182 178 170 166 158 158 151 147 136 131 119 111 107 104 103 98 93 88 77 68 62 56 52 44 38 25 57 50 48 40 34 30 22 13 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - kometa +129 182 175 133 164 138 116 134 143 208 186 146 193 163 72 148 66 168 147 123 84 64 113 100 90 84 75 64 79 62 93 79 61 98 92 92 - - 60 55 76 68 59 98 88 82 75 51 70 55 94 90 86 79 71 62 105 91 86 85 74 59 87 87 88 79 66 78 62 96 84 74 61 50 82 69 54 52 44 47 50 51 58 67 54 55 60 48 59 51 82 72 63 48 61 50 77 68 59 54 42 82 71 67 52 42 149 140 130 115 108 108 72 157 117 83 161 117 80 149 128 106 59 98 99 62 61 54 218 186 145 70 89 55 30 92 52 35 30 24 40 40 27 40 186 173 163 154 113 73 337 299 262 222 151 99 87 68 64 52 47 132 76 133 36 29 21 14 22 13 1 - - - - - - - - - - - - - - - autobrr +122 125 103 186 174 152 134 117 105 294 290 266 242 214 186 171 155 135 111 95 74 53 48 44 36 4 109 105 93 85 71 90 78 78 72 72 - - 133 119 110 88 77 75 67 416 410 405 398 383 373 366 359 353 344 339 330 320 311 310 301 297 291 289 257 252 246 241 230 221 214 190 180 167 162 154 149 139 125 120 118 112 100 86 77 70 54 60 215 209 199 195 191 182 170 166 166 162 156 147 136 134 129 123 119 113 107 101 92 87 75 75 240 225 190 167 151 131 101 72 282 266 246 226 182 158 132 114 97 72 301 254 227 207 154 125 100 72 53 44 39 266 262 256 247 239 230 219 182 146 108 67 265 229 163 109 103 58 45 126 114 84 236 170 75 56 42 35 30 13 9 42 27 98 87 73 72 65 45 38 55 48 43 21 10 9 grav +117 107 103 91 301 290 278 267 248 232 226 220 208 198 186 168 158 150 144 142 139 135 131 128 127 126 126 122 115 108 101 93 86 84 82 81 - - 68 58 54 41 107 100 97 93 91 81 77 72 67 64 64 61 54 53 47 184 181 181 178 175 172 172 164 160 159 153 148 140 138 134 131 129 125 120 112 106 103 95 93 89 88 76 70 69 62 56 52 49 48 42 37 369 362 359 359 353 351 347 344 342 340 337 335 331 327 326 324 322 315 315 276 248 213 181 150 120 82 39 1349 1322 1284 1267 1224 1197 1172 1144 1119 1091 1069 1019 994 973 921 887 856 829 815 810 804 802 801 797 795 790 787 785 751 715 679 647 613 579 511 461 457 335 331 324 322 298 247 184 91 75 67 64 63 60 60 58 55 52 51 49 45 41 28 24 25 22 18 4 1 1 requestrr +111 110 88 112 88 54 14 83 44 54 12 8 58 66 32 42 15 14 10 28 9 7 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pipy +110 106 106 102 94 93 83 73 65 65 61 47 39 31 25 15 7 6 6 6 5 5 5 5 5 5 5 5 5 5 1 1 1 1 1 1 - - 1326 1313 1307 1301 1288 1276 1268 1256 1248 1232 1220 1212 1203 1195 1190 1181 1176 1170 1159 1149 1139 1138 1132 1122 1117 1115 1097 1091 1085 1077 1067 1054 1046 1031 1028 1017 1011 999 993 987 979 969 961 953 948 931 913 909 903 893 889 884 878 868 861 854 836 824 817 813 805 792 788 781 776 769 761 752 740 737 730 712 698 698 679 656 614 578 547 514 477 433 401 377 339 309 264 230 206 175 142 106 47 386 351 321 249 212 171 134 107 97 83 77 71 568 563 556 551 548 505 469 431 393 358 324 260 206 199 69 63 55 407 373 323 255 157 137 126 120 114 109 104 98 91 86 79 78 74 71 59 46 40 34 29 12 7 7 inadyn +109 98 90 74 500 486 475 467 465 459 447 427 397 391 381 363 349 341 335 326 315 307 299 296 292 284 277 271 269 265 258 253 250 248 244 244 - - 236 228 226 224 222 219 217 217 209 203 201 199 195 192 190 184 180 178 173 172 165 165 163 162 160 159 142 139 137 132 122 112 110 104 93 82 5 93 152 143 139 135 134 130 125 114 95 101 108 101 148 143 131 123 109 128 140 134 121 118 128 127 124 153 136 152 141 150 177 162 225 215 195 195 191 318 292 257 218 318 287 238 339 282 381 465 478 403 378 402 375 445 370 350 352 319 150 1274 1214 1155 1121 1094 1070 1043 1025 1003 979 956 942 922 868 814 764 709 657 605 511 433 400 238 311 284 252 227 137 301 244 187 351 322 301 262 236 202 158 111 176 148 152 108 134 134 123 84 104 57 86 80 paperless_ng +104 90 72 521 495 475 447 429 400 372 338 302 276 238 204 170 234 210 193 167 113 82 56 40 101 90 76 64 67 130 106 93 80 69 56 54 - - 61 44 48 31 12 43 27 8 23 4 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - collabora +100 86 74 109 107 99 97 95 87 79 73 56 46 34 22 14 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 566 558 557 - - 537 526 510 507 501 490 482 480 474 465 459 454 450 443 434 428 421 412 405 395 393 393 388 383 380 379 357 352 345 343 339 336 332 328 321 310 304 294 283 270 254 248 246 234 230 219 205 201 189 180 176 161 152 148 143 138 129 114 106 99 90 82 66 36 1348 1341 1338 1327 1321 1315 1309 1303 1292 1292 1282 1256 1231 1210 1188 1166 1142 1111 1092 1072 1043 1026 976 956 933 912 896 877 853 810 793 772 730 707 680 663 647 641 637 635 628 621 615 610 607 597 571 545 523 498 474 449 404 369 363 276 269 263 251 225 189 146 83 70 62 59 54 49 41 26 90 85 86 78 72 69 52 47 45 31 31 13 7 7 elasticsearch +97 88 80 44 84 70 6 64 66 68 74 61 38 6 60 28 52 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - maintainerr +92 82 78 20 6 66 60 74 115 76 34 99 67 46 93 69 38 34 36 43 31 11 53 45 36 24 36 58 48 39 27 18 26 33 7 7 - - 31 13 73 67 60 53 43 39 26 16 15 1 13 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ente +80 64 52 20 30 18 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - aurral +78 82 78 72 76 76 74 74 80 78 74 80 84 84 81 78 90 81 80 84 43 41 40 42 38 42 45 50 48 48 46 45 44 44 45 44 - - 50 44 38 44 44 39 38 40 42 41 45 42 42 42 38 32 35 38 55 38 45 45 42 39 39 39 48 39 38 40 45 45 48 46 45 36 43 43 35 40 39 38 49 47 57 46 43 43 40 60 50 42 57 49 41 41 58 50 46 40 38 46 42 36 37 55 48 37 35 37 37 39 80 80 54 73 62 69 117 96 64 57 58 57 61 41 55 64 64 52 54 60 45 48 43 50 35 626 592 559 544 540 536 531 529 525 520 517 511 511 474 437 400 359 325 283 217 167 161 35 35 31 106 73 86 111 52 41 29 45 32 38 32 33 32 30 31 36 26 37 30 23 20 24 38 22 26 26 flexget +76 82 66 97 74 97 6 102 101 103 100 86 87 136 114 92 82 23 64 55 43 26 33 28 31 61 53 42 36 51 41 57 49 46 43 43 - - 46 40 38 31 28 31 30 54 51 34 27 32 56 50 43 38 38 71 65 64 58 58 54 50 47 47 53 49 47 45 35 97 87 80 77 72 70 68 66 59 54 53 49 44 39 28 27 30 23 25 21 25 21 31 30 26 46 41 39 37 23 20 22 18 18 22 19 19 27 41 28 18 122 122 93 61 36 46 27 28 28 21 42 21 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - codex +72 86 52 96 68 42 60 48 71 46 60 34 68 54 44 20 18 0 24 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - manyfold +66 70 74 75 68 78 4 91 79 71 28 81 76 88 68 76 78 92 86 80 52 45 48 43 38 54 51 41 59 54 57 47 59 62 57 54 - - 61 62 56 60 65 59 51 56 62 63 55 52 57 62 56 63 55 60 54 73 68 68 61 72 62 61 79 74 69 68 90 81 70 86 81 76 70 97 96 91 81 70 115 112 104 88 81 83 141 133 130 126 119 97 123 116 106 97 84 124 123 117 109 94 89 108 102 86 95 155 152 146 134 134 123 220 179 137 133 265 223 192 159 178 158 292 171 233 167 389 342 290 229 265 209 154 102 290 227 169 120 186 155 125 110 326 306 290 267 244 195 144 202 143 305 255 166 208 176 195 181 152 128 371 305 232 118 194 161 140 119 88 98 146 119 104 139 121 98 75 155 155 134 110 95 82 17 17 code_server +56 32 61 148 144 132 98 109 95 75 30 92 68 50 96 74 53 31 4 50 29 25 31 19 22 12 29 27 26 26 20 14 8 22 33 33 - - 32 19 18 17 22 19 16 22 18 16 26 25 24 23 19 17 18 16 41 37 35 35 31 30 29 29 22 17 19 18 15 23 20 18 6 21 19 23 21 19 16 12 35 32 30 20 46 46 43 43 40 35 31 28 26 21 17 19 17 32 29 27 24 20 13 7 2 50 31 13 12 8 38 38 109 87 54 34 32 105 76 45 19 25 178 160 117 92 75 51 22 172 146 94 68 46 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - signalk +32 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - claude_desktop +30 14 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scrutiny-original +24 12 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scrutiny-fa-original +14 8 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - zoraxy +14 66 62 50 48 38 34 26 16 14 8 6 6 10 14 20 6 4 2 2 1 3 44 35 18 9 5 53 37 32 22 8 8 6 6 6 - - 9 4 4 2 2 0 6 2 6 5 5 4 9 13 11 9 8 13 9 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_cuda +6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - spotify_to_plex +4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-go-dev +1 380 291 492 464 426 402 357 333 315 289 270 253 232 199 165 130 104 213 367 290 201 319 145 493 398 308 212 9 149 81 218 73 100 28 61 - - 217 151 244 187 72 155 269 177 126 182 164 203 80 448 380 370 352 342 326 302 276 274 233 198 162 159 118 106 56 107 49 49 121 88 9 72 206 639 409 87 207 190 180 163 150 134 119 110 96 61 111 94 71 58 57 76 113 104 95 82 15 33 77 68 58 55 65 36 37 47 3 28 33 33 34 82 19 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pi +1 380 291 492 464 426 402 357 333 315 289 270 253 232 199 165 130 104 213 367 290 201 319 145 493 398 308 212 9 149 81 218 73 100 28 61 - - 217 151 244 187 72 155 269 177 126 182 164 203 80 448 380 370 352 342 326 302 276 274 233 198 162 159 118 106 56 107 49 49 121 88 9 72 206 639 409 87 207 190 180 163 150 134 119 110 96 61 111 94 71 58 57 76 113 104 95 82 15 33 77 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - battybirdnet-pi +0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pi-zach +- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 11 6 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - test +- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 43 35 23 17 8 22 11 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - overleaf diff --git a/Stats2 b/Stats2 index 271a85d493..be622bb0bd 100644 --- a/Stats2 +++ b/Stats2 @@ -1,128 +1,132 @@ Name Total amd64 aarch64 ------------------------------ -tor 377 223 154 -plex-media-manager 605 385 220 -papermerge 1020 525 495 -paperless_ng 98 68 30 -overseerr 2806 2262 544 -ombi 283 201 82 -omada_v3 227 141 86 -omada 206 146 60 -jellyseerr 259 167 92 -code_server 70 44 26 -zoraxy 8 4 4 -zoneminder 365 256 109 -xteve 909 638 271 -whoogle-search 402 255 147 -whatsapper 1675 1280 395 -wger 584 212 372 -webtrees 1453 200 1253 -webtop_kde 132 94 38 -webtop 1482 1093 389 -unpackerr 215 119 96 -ubooquity 364 212 152 -transmission_openvpn 696 418 278 -transmission_ls 2055 1353 702 -teamspeak 2837 1638 1199 -tdarr 165 107 58 -tandoor_recipes 1738 1146 592 -spotweb 600 418 182 -sponsorblockcast 55582 54450 1132 -sonarr_nas 1042 728 314 -social_to_mealie 494 305 189 -signalk 32 14 18 -seerr 162 88 74 -seafile 199 96 103 -scrutiny-original 14 2 12 -scrutiny-fa-original 12 4 8 -scrutiny-fa 1695 1141 554 -scrutiny 909 554 355 -sabnzbd 358 268 90 -resiliosync 635 346 289 -requestrr 107 61 46 -readarr_nas 1823 1588 235 -radarr_nas 1156 780 376 -qbittorrent 41574 40174 1400 -prowlarr 740 511 229 -postgres_17 11304 5660 5644 -postgres 5095 3710 1385 -portainer_agent 2009 1346 663 -portainer 37756 32734 5022 -plex_nas 38165 37805 360 -piwigo 157 81 76 -photoprism 489 286 203 -organizr 489 319 170 -openproject 174 130 44 -omni-tools 1074 642 432 -nzbget 148 80 68 -nginx_webserver_proxy 149 66 83 -nextcloud_ocr 2490 1489 1001 -netbird-server 345 207 138 -netalertx 4502 2855 1647 -netalertx 4502 2855 1647 -navidrome 242 161 81 -mylar3 38416 38404 12 -monica 482 281 201 -mealie 4039 2592 1447 -manyfold 86 58 28 -maintainerr 88 52 36 -linkwarden 766 474 292 -lidarr_nas 1719 1541 178 -librespeed 1028 673 355 -kometa 126 84 42 -joplin 712 430 282 -joal 216 115 101 -jellyfin 44263 42235 2028 -jackett_nas 25575 25385 190 -inadyn 106 59 47 -immich_power_tools 1431 378 1053 -immich_openvino 176 176 - -immich_noml 233 144 89 -immich_frame 764 520 244 -immich_cuda 66 66 - -immich 3518 1700 1818 -guacamole 2090 1473 617 -grav 125 81 44 -grampsweb 278 165 113 -gitea 595 342 253 -gazpar2mqtt 327 220 107 -free_games_claimer 1818 1050 768 -flexget 82 46 36 -flaresolverr 44486 43706 780 -fireflyiii_fints_importer 417 243 174 -fireflyiii_data_importer 305 187 118 -fireflyiii 980 619 361 -filebrowser_quantum 2503 1669 834 -filebrowser 19966 13265 6701 -epicgamesfree 1450 1030 420 -ente 82 44 38 -myelectricaldata_dev 182 107 75 -myelectricaldata 3143 1804 1339 -emby 207 141 66 -emby_stable 759 536 223 -elasticsearch 86 76 10 -comixed 670 310 360 -collabora 90 58 32 -codex 82 54 28 -cloudcommander 581 413 168 -cleanuparr 148 102 46 -changedetection.io 1172 709 463 -calibre_web 953 562 391 -calibre 772 514 258 -browserless_chrome 1191 792 399 -chromium 282 159 123 -brave 565 403 162 -calibre_web 953 562 391 -vaultwarden 357 239 118 -birdnet-pipy 110 84 26 -birdnet-pi 380 261 119 -birdnet-go 924 695 229 -binance_trading_bot 681 425 256 -bentopdf 846 536 310 -bazarr 551 347 204 -battybirdnet-pi 414 259 155 -baikal 878 509 369 -autobrr 182 94 88 -aurral 64 44 20 -arpspoof 59486 57888 1598 -addons_updater 863 554 309 +tor 381 225 156 +plex-media-manager 609 387 222 +papermerge 1024 527 497 +paperless_ng 109 72 37 +overseerr 2814 2266 548 +ombi 289 203 86 +omada_v3 233 145 88 +omada 210 148 62 +jellyseerr 283 181 102 +code_server 66 42 24 +zoraxy 14 8 6 +zoneminder 400 283 117 +xteve 936 659 277 +whoogle-search 414 263 151 +whatsapper 1715 1302 413 +wger 799 235 564 +webtrees 1641 212 1429 +webtop_kde 184 127 57 +webtop 1537 1125 412 +unpackerr 225 127 98 +ubooquity 374 214 160 +transmission_openvpn 711 424 287 +transmission_ls 1677 1104 573 +teamspeak 2851 1648 1203 +tdarr 184 119 65 +tandoor_recipes 1668 1106 562 +spotweb 612 428 184 +spotify_to_plex 6 4 2 +sponsorblockcast 82801 81645 1156 +sonarr_nas 1195 832 363 +social_to_mealie 520 327 193 +signalk 56 24 32 +seerr 270 150 120 +seafile 219 108 111 +scrutiny-original 30 14 16 +scrutiny-fa-original 24 12 12 +scrutiny-fa 1515 1005 510 +scrutiny 804 489 315 +sabnzbd 384 286 98 +resiliosync 647 354 293 +requestrr 117 67 50 +readarr_nas 1837 1600 237 +radarr_nas 1247 835 412 +qbittorrent 886 404 482 +prowlarr 515 353 162 +postgres_17 11758 5857 5901 +postgres 5131 3736 1395 +portainer_agent 2176 1501 675 +portainer 69221 61061 8160 +plex_nas 25511 25149 362 +piwigo 165 83 82 +photoprism 511 296 215 +organizr 501 325 176 +openproject 206 146 60 +omni-tools 1106 656 450 +nzbget 153 88 65 +nginx_webserver_proxy 225 114 111 +nextcloud_ocr 2837 1678 1159 +netbird-server 357 215 142 +netalertx 7594 5026 2568 +netalertx 7594 5026 2568 +navidrome 292 189 103 +mylar3 65589 65573 16 +monica 504 293 211 +mealie 4533 2923 1610 +manyfold 72 46 26 +maintainerr 97 62 35 +linkwarden 796 484 312 +lidarr_nas 1735 1549 186 +librespeed 1063 694 369 +kometa 145 101 44 +joplin 752 456 296 +joal 220 117 103 +jellyfin 71957 69572 2385 +jackett_nas 24950 24761 189 +inadyn 110 61 49 +immich_power_tools 510 268 242 +immich_openvino 229 229 - +immich_noml 147 64 83 +immich_frame 427 305 122 +immich_cuda 14 14 - +immich 2373 1505 868 +guacamole 2170 1529 641 +grav 122 73 49 +grampsweb 327 202 125 +gitea 669 387 282 +gazpar2mqtt 351 230 121 +free_games_claimer 1870 1078 792 +flexget 78 42 36 +flaresolverr 71762 70937 825 +fireflyiii_fints_importer 425 249 176 +fireflyiii_data_importer 380 238 142 +fireflyiii 709 423 286 +filebrowser_quantum 2785 1839 946 +filebrowser 21558 14322 7236 +epicgamesfree 1569 1118 451 +ente 92 52 40 +myelectricaldata_dev 186 109 77 +myelectricaldata 3273 1876 1397 +emby 198 128 70 +emby_stable 823 590 233 +elasticsearch 100 84 16 +comixed 681 317 364 +collabora 104 68 36 +codex 76 48 28 +cloudcommander 617 436 181 +cleanuparr 160 110 50 +claude_desktop 32 26 6 +changedetection.io 1237 756 481 +calibre_web 988 577 411 +calibre 738 506 232 +browserless_chrome 1081 710 371 +chromium 322 189 133 +brave 658 478 180 +calibre_web 988 577 411 +vaultwarden 396 260 136 +birdnet-pipy 111 80 31 +birdnet-pi-zach 0 0 0 +birdnet-pi 1 1 0 +birdnet-go-dev 4 4 - +birdnet-go 418 326 92 +binance_trading_bot 699 437 262 +bentopdf 893 565 328 +bazarr 241 175 66 +battybirdnet-pi 422 263 159 +baikal 910 522 388 +autobrr 129 71 58 +aurral 80 52 28 +arpspoof 86665 85063 1602 +addons_updater 905 580 325 From d87bce3757cd21648894bf650068c19c0d53b26c Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 10 Jul 2026 12:51:30 +0000 Subject: [PATCH 036/538] GitHub bot : graphs updated --- .github/stars.svg | 338 +++++++++++------------ .github/starsevol.svg | 1 - .github/stats.png | Bin 1763 -> 3870 bytes .github/stats_addons.png | Bin 5121 -> 11400 bytes addons_updater/stats.png | Bin 1597 -> 3449 bytes arpspoof/stats.png | Bin 1210 -> 2715 bytes aurral/stats.png | Bin 1270 -> 2498 bytes autobrr/stats.png | Bin 1460 -> 3114 bytes baikal/stats.png | Bin 1602 -> 3315 bytes battybirdnet-pi/stats.png | Bin 1598 -> 3861 bytes bazarr/stats.png | Bin 1434 -> 3269 bytes bentopdf/stats.png | Bin 1405 -> 2617 bytes binance-trading-bot/stats.png | Bin 1765 -> 3807 bytes birdnet-go-dev/stats.png | Bin 1515 -> 2192 bytes birdnet-go/stats.png | Bin 0 -> 3319 bytes birdnet-pi-zach/stats.png | Bin 1848 -> 1910 bytes birdnet-pi/stats.png | Bin 1848 -> 5074 bytes birdnet-pipy/stats.png | Bin 1286 -> 2514 bytes bitwarden/stats.png | Bin 1428 -> 3096 bytes browser_brave/stats.png | Bin 1262 -> 2563 bytes browser_chromium/stats.png | Bin 1315 -> 2756 bytes browserless_chrome/stats.png | Bin 1552 -> 3273 bytes calibre/stats.png | Bin 1592 -> 3483 bytes changedetection.io/stats.png | Bin 1479 -> 3138 bytes claude_desktop/stats.png | Bin 0 -> 2247 bytes cleanuparr/stats.png | Bin 1410 -> 2676 bytes cloudcommander/stats.png | Bin 1443 -> 3108 bytes codex/stats.png | Bin 1509 -> 3057 bytes collabora/stats.png | Bin 1503 -> 3086 bytes comixed/stats.png | Bin 1325 -> 2715 bytes elasticsearch/stats.png | Bin 1703 -> 3592 bytes emby/stats.png | Bin 1402 -> 2958 bytes emby_beta/stats.png | Bin 1376 -> 2858 bytes enedisgateway2mqtt/stats.png | Bin 1614 -> 3273 bytes enedisgateway2mqtt_dev/stats.png | Bin 1710 -> 3766 bytes ente/stats.png | Bin 1585 -> 3324 bytes epicgamesfree/stats.png | Bin 1596 -> 3472 bytes filebrowser/stats.png | Bin 1567 -> 3521 bytes filebrowser_quantum/stats.png | Bin 1352 -> 2888 bytes fireflyiii/stats.png | Bin 1555 -> 3285 bytes fireflyiii_data_importer/stats.png | Bin 1685 -> 3700 bytes fireflyiii_fints_importer/stats.png | Bin 1797 -> 4026 bytes flaresolverr/stats.png | Bin 1318 -> 2661 bytes flexget/stats.png | Bin 1363 -> 3039 bytes free_games_claimer/stats.png | Bin 1696 -> 3550 bytes gazpar2mqtt/stats.png | Bin 1549 -> 3406 bytes gitea/stats.png | Bin 1286 -> 2791 bytes grampsweb/stats.png | Bin 1430 -> 2825 bytes grav/stats.png | Bin 1617 -> 3395 bytes guacamole/stats.png | Bin 1436 -> 3075 bytes immich/stats.png | Bin 1357 -> 2991 bytes immich_cuda/stats.png | Bin 1429 -> 3189 bytes immich_frame/stats.png | Bin 1352 -> 3134 bytes immich_noml/stats.png | Bin 1376 -> 2819 bytes immich_openvino/stats.png | Bin 1419 -> 3205 bytes immich_power_tools/stats.png | Bin 1421 -> 2964 bytes inadyn/stats.png | Bin 1584 -> 3585 bytes jackett/stats.png | Bin 1225 -> 2487 bytes jellyfin/stats.png | Bin 1344 -> 2555 bytes joal/stats.png | Bin 1580 -> 3499 bytes joplin/stats.png | Bin 1594 -> 3588 bytes kometa/stats.png | Bin 1581 -> 3269 bytes librespeed/stats.png | Bin 1590 -> 2887 bytes lidarr/stats.png | Bin 1434 -> 2873 bytes linkwarden/stats.png | Bin 1435 -> 2949 bytes maintainerr/stats.png | Bin 1504 -> 2992 bytes manyfold/stats.png | Bin 1426 -> 2759 bytes mealie/stats.png | Bin 0 -> 3079 bytes monica/stats.png | Bin 1497 -> 3110 bytes mylar3/stats.png | Bin 1232 -> 2489 bytes navidrome/stats.png | Bin 1436 -> 2951 bytes netbird-server/stats.png | Bin 1369 -> 2477 bytes nextcloud/stats.png | Bin 1431 -> 3064 bytes nginx_webserver_proxy/stats.png | Bin 1424 -> 2788 bytes nzbget/stats.png | Bin 1521 -> 3402 bytes omni-tools/stats.png | Bin 1472 -> 2726 bytes openproject/stats.png | Bin 1580 -> 3290 bytes organizr/stats.png | Bin 1565 -> 3397 bytes photoprism/stats.png | Bin 1540 -> 3199 bytes piwigo/stats.png | Bin 1392 -> 2864 bytes plex/stats.png | Bin 1228 -> 2603 bytes portainer/stats.png | Bin 1428 -> 2773 bytes portainer_agent/stats.png | Bin 1547 -> 2849 bytes postgres_15/stats.png | Bin 1364 -> 0 bytes postgres_17/stats.png | Bin 1381 -> 2722 bytes prowlarr/stats.png | Bin 1384 -> 2962 bytes qbittorrent/stats.png | Bin 1612 -> 3543 bytes radarr/stats.png | Bin 1450 -> 2992 bytes readarr/stats.png | Bin 1333 -> 2989 bytes requestrr/stats.png | Bin 1531 -> 3313 bytes resiliosync/stats.png | Bin 1610 -> 3533 bytes sabnzbd/stats.png | Bin 1255 -> 2649 bytes scrutiny/stats.png | Bin 1765 -> 3606 bytes scrutiny_fa/stats.png | Bin 1387 -> 2876 bytes scrutiny_fa_original/stats.png | Bin 1279 -> 2467 bytes scrutiny_original/stats.png | Bin 1333 -> 2561 bytes seafile/stats.png | Bin 1605 -> 3659 bytes signalk/stats.png | Bin 1709 -> 3745 bytes social_to_mealie/stats.png | Bin 1491 -> 2497 bytes sonarr/stats.png | Bin 1377 -> 2789 bytes sponsorblockcast/stats.png | Bin 1226 -> 2710 bytes spotify_to_plex/stats.png | Bin 0 -> 2170 bytes spotweb/stats.png | Bin 1758 -> 3787 bytes tandoor_recipes/stats.png | Bin 1398 -> 2983 bytes tdarr/stats.png | Bin 1552 -> 3481 bytes teamspeak/stats.png | Bin 1405 -> 2839 bytes transmission/stats.png | Bin 1615 -> 3381 bytes transmission_openvpn/stats.png | Bin 1744 -> 3555 bytes ubooquity/stats.png | Bin 1642 -> 3468 bytes unpackerr/stats.png | Bin 1688 -> 3742 bytes webtop/stats.png | Bin 1435 -> 2905 bytes webtop_kde/stats.png | Bin 1579 -> 3244 bytes webtrees/stats.png | Bin 1385 -> 2990 bytes wger/stats.png | Bin 1632 -> 3672 bytes whatsapper/stats.png | Bin 1668 -> 3532 bytes whoogle/stats.png | Bin 1714 -> 3673 bytes xteve/stats.png | Bin 1581 -> 0 bytes zoneminder/stats.png | Bin 1605 -> 3448 bytes zoraxy/stats.png | Bin 2156 -> 2510 bytes zzz_archived_code-server/stats.png | Bin 1385 -> 3041 bytes zzz_archived_jellyseerr/stats.png | Bin 1643 -> 3386 bytes zzz_archived_omada/stats.png | Bin 1495 -> 3340 bytes zzz_archived_omada_v3/stats.png | Bin 1497 -> 3217 bytes zzz_archived_ombi/stats.png | Bin 1544 -> 3189 bytes zzz_archived_overseerr/stats.png | Bin 1591 -> 3294 bytes zzz_archived_paperless_ngx/stats.png | Bin 1576 -> 3238 bytes zzz_archived_papermerge/stats.png | Bin 1420 -> 3087 bytes zzz_archived_plex_meta_manager/stats.png | Bin 1352 -> 2857 bytes zzz_archived_tor/stats.png | Bin 1491 -> 3018 bytes 129 files changed, 169 insertions(+), 170 deletions(-) create mode 100644 claude_desktop/stats.png create mode 100644 spotify_to_plex/stats.png diff --git a/.github/stars.svg b/.github/stars.svg index 743d712425..bcb208bd9a 100644 --- a/.github/stars.svg +++ b/.github/stars.svg @@ -60,27 +60,27 @@ -\njokob-sk +\nclaude + + + + +\njokob-sk + + + -\nthor0215 - - - - - - - -\nclaude +\nthor0215 - + @@ -124,27 +124,27 @@ -\nelmerenges +\nSuncuss + + + + +\nelmerenges + + + -\nelahd - - - - - - - -\nSuncuss +\nelahd - + @@ -316,19 +316,19 @@ -\nproffalken +\nleokeba - + -\nleokeba +\nproffalken - + @@ -428,35 +428,35 @@ -\nswiergot +\njuhenriquez + + + + +\nswiergot + + + -\neliassjogreen - +\neliassjogreen + - + -\nzagi988 - - - - - - - -\nAlecRust +\nzagi988 - + @@ -468,340 +468,340 @@ -\nakrigator +\nAlecRust + + + + +\nakrigator + + + -\nRiza-Aslan - +\nRiza-Aslan + - + -\nRolandColored - +\nRolandColored + - + -\ntasomaniac - +\ntasomaniac + - + -\nsanjay900 - +\nsanjay900 + - + -\nttocsr - +\nttocsr + - + -\nShonP40 - +\nShonP40 + - + -\nSiriosDev - +\nSiriosDev + - + -\nnkm8 - +\nnkm8 + - + -\nnathang21 - +\nnathang21 + - + -\nnwithan8 - +\nnwithan8 + - + -\nMicroNateId - +\nMicroNateId + - + -\nmiguelangellv - +\nmiguelangellv + - + -\nmausland - +\nmausland + - + -\nMaxWinterstein - +\nMaxWinterstein + - + -\nmet67 - +\nmet67 + - + -\nwesleygas - +\nwesleygas + - + -\nuSlackr - +\nuSlackr + - + -\ntdn131 - +\ntdn131 + - + -\nshennig84 - +\nshennig84 + - + -\npullaf - +\npullaf + - + -\nnovisys - +\nnovisys + - + -\nmxwi - +\nmxwi + - + -\nmonkey-debugger - +\nmonkey-debugger + - + -\ndm82m - +\ndm82m + - + -\ndavoloko - +\ndavoloko + - + -\nbjrnptrsn - +\nbjrnptrsn + - + -\nacervicius - +\nacervicius + - + -\ntmcarr - +\ntmcarr + - + -\ntkurki - +\ntkurki + - + -\nstefanroelofs - +\nstefanroelofs + - + -\nSpand0x - +\nSpand0x + - + -\nigorsantos07 - +\nigorsantos07 + - + -\ngieljnssns - +\ngieljnssns + - + -\nEpicLPer - +\nEpicLPer + - + -\nemmanuel-ferdman - +\nemmanuel-ferdman + - + -\neroldan - +\neroldan + - + -\nenter360 - +\nenter360 + - + -\nChronoRadion - +\nChronoRadion + - + -\ncasperklein - +\ncasperklein + - + -\nbvhme - +\nbvhme + - + -\nayushtiwari134 - - - - - - - diff --git a/.github/starsevol.svg b/.github/starsevol.svg index dfdf0619a8..e69de29bb2 100644 --- a/.github/starsevol.svg +++ b/.github/starsevol.svg @@ -1 +0,0 @@ -star-history.com20222023202420252026 0.5K1K1.5K2K2.5Kalexbelgium/hassio-addonsStar HistoryDateGitHub Stars \ No newline at end of file diff --git a/.github/stats.png b/.github/stats.png index 859eecddaa5ddac85593621446d4910bb227d62b..7b9a2019b22f147b2a47fa47399dd869093aa81e 100644 GIT binary patch literal 3870 zcmai1c|4Tu*B@I*BwLBemZd0BA;ORn*`7*~^~siHm~4X?W>l6+_9bCRB$6e+%nZ$t zC5BM;F=K|3X)rUg4GHgE&+qejp7(wJc>lQW>$BTTXp^G>^{=-xrUI{jcM;MMq-!po1MZGHxh#*Cq@-; zDzi2-ix86R>~fYh4X^A@mKj*^g6G(16+R`Jh{ci&3+uh)<3<)O!dTSsUc*faURh$>^ys;a7ftj~nLw?*5^;`M>I`KFqAnhNwnEt!A( z35+Ar1rcu}_~1l4ZZBarD`e9~Sfqv0Emtx@VrnH4jIUKt^%LPnexU6NT)vpw$2?t) zQUV=e$+MwPj@fM#Li1_DBjFj1fqFc8<&3|;`fW!2YJyR#xXM3pYz(YZ{>JyM?M?bh z@lM%*38gvp>pi2^gsi=kEWjwmziH5RaROI>eBk>BA9@8i*A4wUUj~7|cmE&c&D;xk zIrq(EoZ|Ogtu-=*+B|o?&)3m0!VN1+@Rjtu(nffxA0%k-ayeo>oEh<+rmNF6&l0G{$<6whFQBreYQ--+BU?1)D5rcn$0mt`LCSW6jD zU6#Nab_+1mwi`MiBOz+o{&@)gCP0A9TY}s+zqk3V?a$l+f!)#u)YH`X&`vhKK%GzO zXh-+f`?K(Ud!^JZaC@;nE8ghP1R?GxS_}sh-NiV|lipG0eug*w(SqYbglhAB8L!Sf73VoKIHuKkTQ zJ1@*F_b>OY1yWyD4Q6C|-+uk5hGBve7AMoUbK{l^2oJm4Gh0BlJ;Lx~Q6-A;ZIeLU zuA{aBf3QNh$CcCKquB(>DmfXxx|a|YxcXHdcLBf=p`F3KW#yN)c?(^HRk&+$HoplZ z+KlmLdJaz(q4}M^&YVgz5QVEw)yMd%BkB@-F28@{6C>z$V{a>&|6pT9JuC#F3qaz0 zHB7-R4l)4NxU>KZ8Fbw_s9{%9sq0^TOobf(x#J+-V;&!f;}bZd^cz9vg`xRnEV1n8 z_cEHD1Rq>6$Ek}X@s!^m$(40?QHy9|0V2(T+6D94N)hFr9Ni<|{aq&4iaeI<+_(sF zbR-n_;Dlk8^@%Lz>{%{Tn1Xy8ZYur6@^ug|^*RnvWgwOvU+n@abi%;~ko&Tx^k}S%_obT7k9!7#=F0))L0LX%hKPX)inBpV{=Fc6so)vn&d*NQ)D!z9 z4PKr*u9fw=_86Z-I;?%|)B*N!9f6+9<~S^hH#w?AYF~To)b0`XU<#?z0unX-mtL

War5}rHW#r!1Guhx)>v5P@&JGY(`m76TcDOp zouXR0tX3GAMmODwKexVGJH(||cx(l53=@4!o*vbRSN^$p?#EZ{y#)(_dy<+H1kuX; zEK-@K3fG%;Lh|8|cAbw18)@r^SubI4W z)xnq132v+?Xz=k}rE1%^`cnD3t6O3AwT!D33g4DyZTnQ5^>~&vPf{8EcTd&sGRXfp zZGuz{KqSmjFF7`EVxMu?PjjLDu>oj`*xM9DAOL>aeg9r%U73$am9Oz~G@>ns#&YX; zv1-eV!@-+rBGybyB1@Do7G!sLDBcQ#xopjx{*z;PA;LwmHx&kT?52guQ`sneP{r-U zL>rYbmkSQOe}bEpvU=Y{vwf9$Kgkn;^&_&bdg%Kn@vn+1l!m%ZU1r09u*+?)RID&e zIc^;n65HKM_&y<*ZGX%b47L*}(ETeAepOM*&}u=%VUk$KVqQy`Hu0hdvK|hm;6GKF zesb=S%-J2p3S#`>vcbUX(~~bvtveFj(E&no<;JW9sfHo8Qq(v?>mi4E!0sBO+mCpO=Idbde&#H-Zb&sG zet2x~Y7bO)YNwx`?yqIn_zCfXx6qL+nx6<0ym^GEG?YBl^D&p_@`Ist|69EvDXihR zbQ?Ii)OnbjhN3p7o)c$7q!L-+Hn7msx94MPABIT`3Oj1ts9t_?O#N#79sh1uads=| zOq!tuj!)fh+yt2XX3x$g8>lN4IV4C37^h7b_6U#A9u)$$bVWKkZ1{d?;--(`Sj428 zV%&E%h)1QqWzntmUF6rof>~K3TeZkUs_{onS$hL1^SgW5njIg*suct(RUp}bXHXWX^etp zGW|JY>6D=>RaGk^*S{8;^_|C^v$nTqvM8^X>thGk=3mxcc5C^`xl@~zl&3*e{JtM4 z25=uz7+PLV@$-LB8<_X>xFYq)fKQc)ad}eGC#36HCnB=+ojSC|1bNW|ML64i=+Iy@ z94m=3>-OD{4?uZWKkoJOci;E0BVR5UW5kCk9!lD)?ePluK9W zDR(+5+|ASU_J!sP?4*);UT6PaA+8&M-2@azlBjWGwW1ET2;)D`!3UQq# zZ1TQ1=uIEGVaFR)atokB{-SYW=sF`KZ)J zsH$SS=Fw)SwkM5iIrPnn0!#O6q>j5G4kQ9S>&PZOgyAFDGLHyN1Get(L>^C*S>Sr_ zz-p_iYUbB?hiS9p+kGvgwKWQFH@9h(nfC?hC7I1cbxAIL$~Zq_5z(SPme%qWp-aew zZc|86i=s#IzomK5qjz8&!i1)FoXzRz+?mzMU7Dnb#bcWJZa zMIZIoWR5<|>^*ojba{E!E=OLO+LdW+iy#ldF^(jkMmy7fVh)vK%-j;K|ANrPN&uRo z^g>h#eC&11hgUN-9Mb2z+AqC#9zKpyu)bpQtmdaVox0JJpNF literal 1763 zcmZ8i3s93+77nB&$RnWgSdd_bqWA!$qOn4#37|kRV3CC)1hKXv?^j45F)@J^7T1F4 zDvOZh=b@|{Nu)?LKms-bVk`aw3lT7prL2T!iv1zm#E|`Ex6@9~%y-VY=iGD7cW3V0 zTX7;P%+|`)3V}e_MudmPAP{B{3~x&$95Mf@O%EH#6USqZnoK6xH6f9vj11GAJ0=3b zG&s0YaQrD8-IN=iP=G*Sp1g-k*`iZ7b_PlI1DdZ)F!JivrhFEj0Fj7%5Sq z|Cf$;zB9Rsxf!A=n!KsgIyeX%SA-BUD|xiD9@xw>}HQlqY+$l2?ek*koGo7DWoFhgyB3K?sR|uhL)P1ax#0g(G9Ok;g zPJ6?{os1WyL&Iypnkri2X9VT&g{wQ z=~G~CJj6HQa;GM)7@=O5x{rc#`%#RPA2Ez%^8=a+e>{jx%>>XWEl|3CAR7=D_0u}G zT%t%mNzGJxtM+HM_~Q+8Tz@<_Y3d4jPTM=B@}2B2rGw93KBB|X`Y9{~rjGpa%J=nc z&l{V*_;S0yL`o%Uag}uuVYQ%px1qa37kB%MnX#I4qNX(GTh=ppS>L%DpXGl!MYkRk zJw8>xDXH@0`CYl!M9rU1T_CUY_JXRh^b`lLtJZE{0%MBfOWBhxK`|~ZiHe2!=j~hY znJMqpD;o;LPuF+{fnZiE%C*x`N(@Pz5FKcUenh{iZi26jxvgq~2{aUF zxn=B*N;jRlWyANqYJGqTB5kn{F$4{_Aw>^zEM#x@r;w^>%K$n+$NWd+-NWs9v+U@; z@Ev{lJ%*nu7B$5}7O$x($p!;2t)F>a+|RQy z_EZc^&^@U;`6ymRIVp8I53DV6gG>vVI4_ckx?qncIZIb9Sy!d^XPMBU>crDvnA2yv z2jesWcwIsyg%P#{z%|bwjQ~Bt?kH6_ABA1<(?|w}fyA({OZYX{>urMYUWc6m=<*27 z(onYar={Q{qP=71$b%EZH^?2yj!-m`E^G%fRGX=%+W#uRd3bnOQC_7TEHW$D=H!s0 zK;$$Rj{dvqCxa+~rL32WdHhUcxo&1{fxr2_R`|~DPF87^!emTX_+ezERjgyRw$F`S zS5n$V%pELctIi-l^fA_VdL~)YP7m=O?erP%^m)m6yudF&&+a$9^(bdYeS&Fun{{_g zkm{5!TP)nCWT1Fmi|?Ln7tkjwFAPD4a_+6J%5zL{RUPYH3&{{aiNM+ieR$R-&&yC% z-fr0Uc~`Ff&X{t8;5~Uw_wrGLXi~ouKFE7%>={0S=Q=dD@$P59pAsVCXjG^uIHlyj DO;T!S diff --git a/.github/stats_addons.png b/.github/stats_addons.png index 8cf94b3f58f1c5952a661b3cc0eab1675b47d5e8..e0038289d049adcbb565b72231718c73ad3d17b9 100644 GIT binary patch literal 11400 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 literal 5121 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 V5#`Bf2NeJS002ovPDHLkV1h}HDmefE diff --git a/arpspoof/stats.png b/arpspoof/stats.png index 18360f8c4f47f601fbbf7e2ecb63420cb7626190..00b6cf11818d74fbdf715dd723b4d83a545875d9 100644 GIT binary patch literal 2715 zcmai$dpHy98^@nDr^=yM3Qc$^6=GDBIkgl@DI*Ibq63B~bGEl~D2FJ=mz-Y5<{aAI zjX4+7C~rwNLYiT#y-zoiJkNdI*K2)__`K1<*Hi~}jX*qogm`hmUJs={(*c{(j>NH zq-W^v$zS||Q^#2Ox7rGKbu|x@>=Tx8_Jz3uyB4&r7$~B-7ViXL#hM7kBOf8aVXOaZ ze7%bjl#*D_rVF2WRI z>y|zH)sBWbP~;b%##}#NZ3xG4{IFN2Y!oJlplH`2M~LO`o%?};2IGGkg_8w7xjb3R z>;!=Cpu~|4PTOj~%B@!22He5|XlZn?3mP~{H#G%`34>K>C@ln41LQpRd_NabgLx6{ zTRl^w8fxxrNN%cNkrSq!p7Z2!h5X&aS|xQI=N+xpEK8>BpLOgBeu2Q} zeuz$2os?DA87E9U z6s+=CrO!G5`u&7|mla$VZch}=cn%*5U{1Jiz&R~;(L_1)Y1aFJIaqs`$*b{^-Pqc| zx&z}Ofo>#z_^2+SmH|<}vg1-^OS6x!KJ1D0Kr_U~<-jEOSuoa_hUQd8GI}0Sa&o`C^;%R4q)WK(&El<7y~TlG)QlmSFBy*%Z}qo?;C=RyIR@tTG4hC ze^#7iyVBHlTz1B>E+(h@N@y~ejidk{Lx-GCBZVKjyB0r+*$<7jBH!5U*X_#rTNwjsG zsw|*-xsn8G7H}Y9D%EQdF_C)57M%2>*{B2>1=6|C5}h|creh%D6R|?n@3`_`XE!f1 zXhfsm+N&!`GS81+jMMdck%_>sCf2aHovgPWz~;~Lpg=#G^lTq-09GU}re2glHAnnh zB^MKZmh*g-8-9?SyZ#hK&4Kr|_frRow&lOOj>itZxF?a;lwe%2|700%#@&tJ-g>(g zRj}|4fmb-Cq zbA0Pb_%Zh`Z%eT;2F46b#P2tW*~3?LJ&a%eSGMV>(dX%OT%|k_+(U&MIhjOqLD3lH zDi^?a8}J#JU0m>eep&9Rh48y@$SJw=7V(&vC!9b6zgI41^zZwt>1*+JwVX#UKjX$z#;LS3ghSi#m#Xruj>2Xh z&EdW4K6Q&q+`z_Q6tkkD((AC#GXHzlLZ?WDf7jFm48TVZvUk61VnUh(JVv3$vw%i{ zip5uVNs-*e_{049?8dw|bgo&*((PH7_z>GugJ!ttQ9$?ka~KTR4vH* z_fB;*wVt`(Zvxt{jJprs5E6dK#_1iZUn@Xx{J|aD)>bY?)Ocs{(DuboSB<&V=GR=A zCqtHI^Yh?NOWWPKecj4D$})I$pT9Ott!>>1SzlmAu3Fk@8zpBnd-KxI62gu zxXV39MszWmr@=s^INO=d4@0O@gWo1@;0al)yy`Ek6`(ufSBrN zS123{P~mv8*E4uVp+{~mXii6OKBRh9YfrK&Lj%{^Tumal<0$jUS9yi^Pw-zE*AWBt zt0)bNh{cCVY{n)&W!hBNEJ^LgjW=FeCk;9F2BXHwP6wY0Rl-N9*@b_ZBh&=-E6mu! zl=&{R%_jPsB)qL9OTXFnlR&$V{?0dvN8H?iA+CBgH*h=~wEr61sL<`5L-{AAtL{8Q z5b`HJH^?im)+b){!2Q$Z<@DGt7_F6*4gbYR5h}{jHl<&Pqp=KXP7hsBQLe95a6Z|q ze_s8`ktav86_#OIVFw*njh}pD9ri!?A-`<5!f@Ebg@5ZJ&G;Wts78Lc9w7yrRCUvD zQ%F>tcIc~2=vg`8HPtnRmY#sWD4ZA8D+#2-(Ed8gf_mxk&3do$7|lwa{6DNcRWo_S zkZHOZY|#DQnOg_IQM9uq zz&{d+@8j(}036 fhO;0*d;|L6s=o6Vws)N9w+U>|Ub3o1UVrc(h4?=5 delta 1181 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 TFsx!6|G>oHntu5em&gAC6+`dJ delta 1432 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 delta 1572 zcmV+<2HW|S9=;5a872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&DD^sqwTDsrl5 zks%j<1=2}GK~#9!?VXE~s~`|W>45+L%eQV4jq*}_tOBQNYd1y~gl2|e2EiBr00000 z0000000000U?1dtly^hXq~1m38dOZW*+@F5iFE1v`~B(j>;KPqH!SVg3h9cgdq{6v z(xa9gq&F?;5%r!R9oAc&EMUm>VaVZ;>(G#6o(}1dj(Ugm9z1f8-UI2V_r6G%*}iNN z(lO*fLt}dKT{cK>m~^6S9gwc%QXfcv?`TXX%GS2^9vbgN+1ih?i6|R}98t1L?iR(^EU0;GF621x9@DorP8*{dsWK4ljF|At#9_ z+tVn24c0nii)b%1o>s;)2Ej^9%aLjs{n&dUErK)6`pWg3+e519#QsxZ?lfj zYCoJ$W*wo`X3cg&tNohogjTyW+X=1qXtrPZvIC?)*MwtChx7AZc3|Cm8=M#J7|Cl* zRZrFS@kMC0>Z#gJ=M0iw^Hgom$qu~0c)MzMm%qTM@C9`Yx!P4bCp&bg+VRMJ)|d_B zfkuOMrd2Q8-jf|#B;C!K{?Gq^Q;C0>dro#}kn~}Q3I5=k=Dg@+hsH?%Pj8%EcfG*7 z#X)&%z0AJYl;9LoIM1sqUQB*O!?m&&E7}ma5$8;aljGz@&u8b&9xfYVO5*8_MA-_R9QHh8ev5{G`3tv!%+BM# zYbD*5J2~7*0(Y7lwWH9g8;oHjJV8!ithI-vc-m@sLfb>j*6=}?~)N8q#e;VbF zCw-;ChT(>WFEc9K<0#L6@uj;--!g`}EzR%Fm$l8r4}&pPZ7FtZl+A6Frq!-thl}P) zqZ=jpoar#$b0z)OC|i+)BqjOXBd%`usMJ4sJ;p=h>BUx;y}8+E&eIB3UOmx}+cg9) zIDWL8)wcEbUqsmsSY4C6LHK!Zt^UC_q4t3@oX$^nxR&&bmneaM{p$T9(jB94WuaA_ z7DEFMi?W$3qHGx2El=5ksVs(e)1+J2?TvJ1VV#lAEUY`=}as_Ua@-LxXYY;H#+TFuX^7}I&Sout#|DrJ*M1sc$m@Qaq9Rp^iU0L z)%^l>f#V#2VawNl-iLcwhjh@qZa*~QgL-*SAL248gIOvqR#g2~)oD2ml%K%(3A{|r za;6Xzx-8+HBz!Doi-=SsTgci|e(I@oJ*8y>$Ey*3rEC!~HnN47a5Jg+AujT!ZCW;k zpF)ciW=u3+O25o;(b?n``DyLteTB~urdTOrOBPCJQE@eY)~)wN(J~9M*0fsIBV9pj zrFz?#K)Es&?Ui~4uj8q#h*%b3HMCX@vr>)Xrc_xG8`xNt^q&U#RCxNY+2we1{*{?u zj(XAC!Df+Qws~P##UrF2j%$YfD#HMTg0qh^}FwWxB2+;>u- zltB}E3T2`Ra;BoBocR*Z!W_w>(rSd(I#V`6Z~)dpC%zc~0KRvCdIv0_0H}BHEc^p2 Wn-XOv82EPp0000OW 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 Zzcx}0ro4uYdH)i?#=`zet+`LazX7NiZ@~Zn delta 1407 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 delta 1378 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 Hwy*vNTMm}p delta 1741 zcmV;;1~U2I9pw#>872b&0019Did_Hz01{A4R7L;){{R30lmXMqfa&44^Rr3dJA#g^ zks%j<26;(DK~#9!?OkhwqaX}qK>q(j3EeuAP9mW z2!bF8f*=TjAc!bn_0RQ%>;J&nW#G3fn{<;#x*_Q*NykTH@#YBM-{+q`AI#USKEPIN zdq0qMxtjj9)BoAV@2Bt23u``Kav(O}4`%UyKZIn`|LDR@>q61LpZ#8h@7wTWch>YJ z>7-q@d0#TM;BjH2f4aL+cFan?Gw)P& z#wdmeTJ2+$#1MH4ko4h5UuGRi`Y;*F0O=sKAUZ)AbmUO9j;W21^r0#~RPkG}60>N3 zQ65Pjuo9D`4_Jvw(g&=>#Mwt6>DnqWZ4kFf2TAX-5)-FER~%iPb;(v8lmEQ;ej2zE z6DGpG&u`mda7H-W&M(-0aqqaacpiI)Z2k6bqug#-+HpBA?PBkMGSc6SA6j!~N&59i zm_tSfq|0R8oz35N)C_qhRm4kI?< zVw;Hem2lZxcl>60iH_V8;)YW7eu6U(ljC+G=?Rrt(CERL5fd-SM$^5T$mMMV@oj}tbIFQ{`_1D6Rkshb_90)f*(TsgJD z8Rv`ajv(oRN%u}%qOMm*P73K$shrptu3VfWCxmq8MdsvtD2x=V>As*k4&ln_o6}v< za)%*YIixQ0_LcxDiY2J(DXG<9;X8B`OHkEQQmdi%Qqb(c4du$k7e=;!({x{DJvG3p zEq>Q(m~<$1;6_q)XmR8!Hht^gm4nH<=Se-~Be-%JHapaA?P$5#p*89CyLonR-=%MM zXwks6d;2ar4BM(zvt@9m73r>7Q}*8NyV#Q*S~liZV&5nCYGGggWQSVo^wur-HQ4u; zA#`pkf3m}>?@YNctZROM*oOR2>?1>n1c|Z<7ZC?8Sm_6oxOyi$%vQe?>645zHUz8s zv_F`n{5rj8!o_>N9SCJLx6XF5Lup6O$!Yu|RMqo*LxP$T$T~gA_U65bjK~Q)FiW1Q z=W}<&Y<3W*S+>8)JgFgYLDJ<}Q(3B>)!mViPZ!zQ$@VvyOPbSvoyb_X6jje3lSZmc z#wD8<8VRxD50I?9!zE)xPHb0J0jgeR8QVVgE;!6>yIG_?COvelGP+A`G|sCRi%F-> z>A7O>vNPANWg$ngX%CGZIqB63ZCHQjPD_>)AfF9Dj}r>-ht7SD^Np*R(Y5nE8mA326!?0?06x5j3OS^6|PF2=) zct&B1`yt#-{qI_JsZFQ0B6C0z7>Zux)2nH0j)5-!1Gl`+CW zhhGOQg1&f(?t(L}kJcXlo$n1+leIv$+mP=2ZpSz+Uj>0|H;KKEbV#{jcd4-sGu7N1 zHZ$que7K{u9XapCk;BbfIqUdk>oD)QR|J1`tJck;h{r9(B1oSarjm$K%>&O#zri+Y zW{LV63N0#sXI7*WTA=DwT|(qpAB6hpo~)B}qI=t(Va6vk@_y2a0-*z#kI!R15L&)f zCqgD=BojH(N9yFV@K76}n?uEZe@S0o!b9P*EON1ITizH4KH#BH@E+^J+t95egsw)~ z6@NuNRQaJEjAY`N0?tb#H~mPCe|;>3NWVSWh4_fQpJZ#8tTzVCSoKm*_eVO$T~4pY=$5R#@-2< jcY-Ax6a>vXAqD>cW5yA>UBoX300000NkvXXu0mjfoDyBp diff --git a/birdnet-go-dev/stats.png b/birdnet-go-dev/stats.png index 104f0bfc595b6e833c21f2621f530bb83e1b1906..2f434a429a90afa9bf507ced935e5da209479f48 100644 GIT binary patch delta 2171 zcmV->2!!|R3y=|z83+OZ005`|?KqJ?7k>ysNkli__VC%FUMkmL?qoBa6^(izzs?605>GL1Kg10&IP<)uY-TAYEaeexbPi91IeAMQWgmcB!73V z;q`hgd&JATpBqtIH=lReez$SqZuz+&kmSxayx;Hl`#opIq}%>_z2>c-+sg*)t<#?* z`?)e({v)6n`>uF00PH>3`)v0p<4drccXU<77XzPXw`i)u3cKdIJ|CxdYsg zVHtoMlH37qNOA|bA;}%!h9q}@8Fnyq6tw4^O7c z)3cx34I?=K&(V|jO0#A9_a4RQJn&4-*>C$ICYcoA(soX$elrvRqU@YdmEQrbNZ~Mm z8_JHkyXqIIZ0iGtla9IC-*VfBlRSoOw;{#7~ zO5w1f*3%dy41g~SD;zd=rCr1Xa9wF~AF9I+K%2+~vH=*xcKLzP7V7|@N_MtPGOrPU z3n@*7Y$y+Kytd44V*r|!7RZjh&S+U%X16f_Jxaqe=hc>(41f3loGG&8Z*6TE08Wy< zh^f|kf_&^{P^R7kPZL~Q=DpAn)y8husb6gwfSmZ+GNaLL2cD@p`-PSK1z;S(Yp4P+ zg0K^+0E}a!w#;&TN3I9BqU-|Mn|A@Y1SeDhZfJ;-zh*iD#QJ^7U&HzU;et#4*3xGO zI74K~-!{sPaeqbsy#D=l2v9Oa$9eZC5?g}|;1YULUujrosNS^94m?dy-rG*@^Wow< z`CZ}$h?OlrU?c?Ky3*vnUULJ0%gN4``Encp1S*ZW4|PHnfaBD22e_eZa&H)R|6KQU zaBI0S06oIS+&>3{-0aC@Yq>E1ox%!-9hqj6q;i=Z;D02gVVQ=JlU!%~^Y=OLCwBpe zm7Oi~{^Q_|);T>nHgvA>q?->sO;6t2UaX^`XFd1XbB{{4)?NXtn-4rq&xy(H4F2Vn zn06V%0iLNj`(=CXeenSBODwPgUtu{{;CK~-&;-7B5|=n*+AGaariqvsBAs>orP^ zGDjvg0x+_jHBna|yO zg*D0|&m#r%att z1^Ak5MJ(44L{N5 z=W2UYZG=6~)$ovUe!RIyo%E^oH$E6x;E#8^aM~DTg>eib_|gzVp*@02op=@oLnd}d6 xIXkmuWOjfn+8A@+on;BY;L@JEVHtoM_#ZdzsDWj)y?6is002ovPDHLkV1kkvP%Que delta 1489 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 delta 1824 zcmV+*2jBSi4!91G89oC50019Did_Hz04h*SR7L;){{R300G@M`0@Fs0oUq~3%7E$O zy7Na_p-;P?vPa;CeZzmxxs0yD0Fwffks%j<2DC{;K~#9!?OoYogdhw|5O4ke->r6a z*8^Bs4-jS^+O?*XIwXW7AQ1on000000000000000005ix?)>-p1scP$6Rpy@n)o7m?06VLZv17Vf}Vj}%@$sguvR{yuAgY>A(`^@ft zTixe7tI3^V-_v&Z000000000000000=>G84J4%IUMPjk)cTNgOB^n9RK{}8^+Cf1& z1J8ncu4(Vc@iplxj#Jb@*8hVgBpxHF(*)@W)@g$D1nV?GdV+PDY`VoD{b_ZYnHJWh zGf0oIPSZrXwW@>kXVqykonYTVdc}9Sd_hkY|~2owoTIvN6uI2(dRiX zes<5MX+C2_fOJ>Vd1W%!Wb%>t_atr2v9qV*L zYBhP%Vcydsoyopz5~Rlzh6U-#&*|E|Y#=>i(vf9LfOOUd7C?GJb2_qYaeME3=N(zL z_yd59EE^m-EZI_+(-E9W(UC*K1>QSIPoe}Gnhr+}q$9No(xVK{fb`Vz>AHOt2+pLp zff2Fy#8RsuJs`A|6#eCn95W+-%N7jfLUw&oiSBYoPN(T${ccop{vb}wvcZuH8SA9%;qItd6s;a~} zF|b1@MM>V??2rWMwQRDcct7Q`mA-i|1l_rTF*(w6DcYjk2f~KR)BJpk@_}g@sRRxs zxDcI?E$M5_&!t^f?|Hg^EZSijQJe5y^w_m}Ddm}A?kqA{pK4Jy^R^UKp|A#$uxs@~ z2U%ucT;ySAL4J~9uUh4(+x}QqC3!y(IO5=p$ShVxMJ3NQ?0W<7aT@p5z{~L?@n+cy z+lBD3nJ7Q1=B+tYVxcu5aCek9y~)an#P`z3@{IC^M< z&n161?ew_)=@jM$#)0vP?awEN?Vs)gMgC^xbJ0HSJwc(K_r8dmj-j-HcZcn}zxrnS zm9uMJLBi%Ypo+92P&8v=58#?$^JoURj$gN=pRN&k3ni&02rTaSZe}HhZA_ z*vh-Jcd^e|?Sb@v*Hc$1+o4+{X+sL|D^^b4o59nK1c};2A+#}I)8*Tbgu??ZBRBrDZ2xXi?yi4zP=$_9I^^H`F`-4)gy$B;{$>Zi zqz}ui8kBo6?|w)h&ANnn4k@*IG3!HQ6^whzveDgHw(^xct0a8xsF!TBpDiq_!hvU# z{$Kt7ilj7uC76ky^l{d%vgLjvAX?I=S$oV%z=lU3doMrrO=DUd({?z)ne$1XReLdO zcL=z|q3Pw$9h=zR&e}O*Y_YsbyJ;3CJj+yUzW}@bEJu#@jbyeyI4BR$yjz|!w-L+i zGuGp?TLD2*B-uV~OGwZ+iP0_EZ$Mr6Mdd;$k?|8Grige&vz~ONK;mFt2 zr+cst(t+r0`=J>hcrNeym$;~2y}Z0sh%QIb>aJt6+IG$q)%~VJt5eCi&HrUDsS-6m zSi5Gm?)h}Q6t9+T>Pw~QqBqOCJ6T>W33tu%X5nb)!2waS>wvzm4n4T0uTGscdGEYz zhWD3$w7sjpw;prbV9%y+t6ycyW_O}&FKXGUxvvh-!2g5QF2rYB@-iqqA2Im3T>clz zdn(b5?7MH8W*0{r8k^mVnmYSitH!=gnq<@LUef$v$>G6Tc2<{K<@IPVjWU%elWvsn z=Nip`?FjXY}uEIp|KN6c9LC0+1HFETlSx#>}y0Olr8JnM)nbnB16WK zJFOl_0R0_ZEfWC9_DDFB znw-?WCvGZ`UNk~ep#7nQY`9&pYW^5aM?OXj1a!u}!jl0T>i;YJJgLN!GAJx3QRFH!{e>c%3Inl8xZf*a z=0<+1=10}P8>Dn51SMWOr7E}Rg=bi^N8S=Z__XN?uq0|V_lQ1G302}Dm>+nblh0e^ zaM2X}&9k29E^$GFfa!ZAQvNi4H+P5oniq4_YAClwqR^1VfEwX?{O9e7@tf$x;emkn zHT0gSfFZf51L3}8YEc^BscI;mssA%)S{4Awm_-IKr=d&uU!j&b zDoM;+x_B}qyNwDs&^uz3{U{FU&;n^k*8s?l_i3VAenbH#$WH$GDB%&t-efp1U>X3Q zy(M$jbrkJjsi=h^TeZ8LgYo2B|HKeFYCvX`5_Q5{!~>j)YV}kDWZ>LJfY0EU-3=?; z_x5bUlIu5!Flo9-A^b32fW*xKLISe?4}51gLq$(;F_3|Y7=D6F2gZNsNL#^ByN?xr zwJ_jhx$s&gc1xigG^aNI`uI%BFI+5b)@-F|lG55#_sQVviA=(?8=>MHFQeIMH2kQ* zbM68Y>Xb}hLKFZ@s|7Ur2hS^-cf~}vDW90dUI0ZJ@~9*#MiJAFdWmpq0G3}H5Nwd+ zC;k^vT%Es*&&BQ&lWcYbE2m)1BP}c*$$&gnn8v=TfbCORWwJUW#dv+gLRx|-LB52LX)U~npA%wR-`#!h{KKf z=^`ca-PMNz9+Ro)GyXC-!)GXiatGk^(zx`~&Bkqf+kbZ1)FjqgQiQL$VPMCC+Uup% zV2q?_G!de_06Ks7RN7);D+#i)Ikq*-m^dhrGqxdQH{FbE`k0BdrFCViF&{-P;ue{v zw{Evs3u#o>&;f;9NNOC!v4~_1M28A=qKe1-5%Y7Th%+_fWteF|CuNKT;{1>K-Vgu^ zX6dQuwcXYr7P9DyR{*5HYKyOMF!@jvPX$pSCB5-of)#76<_8!6%_%0or1j}Nt0t4r z7=T)VG|IoyTb-?@Y+yNneG>8Oi!$nm9CNjSp>C%Of0iPS`XOzI_+W+4srlQT}NqPKSz>2`kQ<-Nf zNs$Pp0+Di$)=_#YWOK6mN#;mDo1PIaXNOP{{=>V3RuyEBaHl z_)ru;_fPueHe##r7UK)E2go^LHeq2zTT@W2vvK)*IPc($ONx`YGyrZ&f|P~N&R_Vs zJmy%=*jFs%S*MPP9@lcF|K|Y2PWt8g6!FZB|Cpz433~rJ_0EH&W*F_T1Dn+YcHAjz zmhiEonPg!BOzFLH*#3bnQrlVZ_u^ON)4ec?NY+YxjlUZ)owDw`TxEmj=5xeX9vWNJ z6BDy5rfZq%E>xgDxVr7P0~S+B^hGB>#pUNV`1A+PUo(C?CK0W|34AgS2lKAvODG;} z817egI2eR%V93y(m4aMsY@bS;IrdN#ktHATHFY%|_<@9d<~k?d8HKRp!gDogQL7kC z0oQq13D#CAfJHEZtn+FUx>==5x@Br3|69^LaesZReREi=xLCJ%Q3^(FqVtO^_A2_u zF)a|MJuz8Lx{ zJ(R68-!CVysjP{9+@~v)u1~OnKj_(gGx2zlM|(Q=#Fj$M+rP15>K&=?J$zZm>^k?h zYQGB9X(5*b6Vr2o=PY-x(IyOB0(|9-&CuUcvB)dGZG%=~{#qDhH-*tsZ}s%3|B_x+ zK6|T8#FU&Hl^h8c!hU3Buk9jTLQN|f>3Zyf%1%%@@L@@`N{I2vdo^q@gF*ZD^=fFy-7CwMHByu@-s9@9_UowV^0T*n zZG)b!5;GX(?q@S&!KVG?<&X!aW2n-PLiKz24l;>SgoO5gO%FVMSN`jm;?2*nOMmS& z%tJgnu+Ov&Um0S>TGqi87q@z}WV%Tc1`{Uh_Z>$qyag7^#djr)Ovfy(@yGEEKPb{p z((pYfHEc9 zkw6f<1HMGU+v*9Oxz~6A6V;mCz>U_^wd^yLW&1ledp3rPU7x4p zbJtG_TKMxb^JIVZGa4>P`3Q{+pEs?zjczM$Qt8xBbES0%xPN-RFuJ@o_yM1}m^4|? zg#QB{*@!wMgQBwTfG zJ2+!XGJM>hXgVrO%euGkTtE|mHuqobCLp6lJXs}$PTR^E@nLy8tNaJgHVWh;y=E}_546Pt2~ z*n2uVsAzfey=CG6krKY=`bF42V&;~RxYt*U*yyQQ<*N$p9uTg^?uTcihS+J?`AcLx zt=A^6p4i1Y?Js4sRY7b7rEAAV!$`0vbp*7#(h196Tkj;IU5$=xnUL1Z2nHU~$q zLD8P3Xx!jc`Ot^O&VyN%pyF{}Y@ zdCQ99WLhuD<*(1`6Dyh3ukoLtW)jI18;N->zY`L3&3_enZ>_txu2hR4^D}lK+_~ze_hqlWn|O2F=gUm*v0WfM*Gv$K)#Sy_XroDa08YA zU&R7QjZFw{UQK~RfnEG#b=f5~t~F zq~TjAd7%>dSjb49y*P%w`y6%?E>!Ku)h$g*ROIEIrwzRYNmU&g1=)8OwUw5GJ-WZb z7AiayZier$at(6`uQ4zVg~Rrbqt<1&O4%Y`p5R|<`ZaODZ(N_sBgqo7At=6$SScTY z8`oC%;K@+!5^MbMlLes`j%v`Fz9A^ymRjoJh8_&_P3#g zNuD8X!rx+OTY2D(aH?Qf~AGTX+ zRyKVWnF*>t{{dH3>DY6%A|nNT%wKFDgix63$mGem=j*TM#L|RrxsxsxH6CuMy@Aih z%x0d=8(}d>YpenB*;rflo}gvg9s0~_34(Y<^^LsQKP6S1x6}Mypa2AN%+!-Un<^fZLUuH5KPuM z+_!H$WD6DNGVl7j#K~)L^&Eph9&+VC zCG|~buL5T;jeV+mgg>Bxa@ge z^^q2R>!1B>)J9myyISJUzrtKN=Pc`-@#6{R%%x#rhQpW%Evyi-Ow2C)*d)wlfY)t< zvZ{;KY$<^CQnLIyL0k zJiYtM!g~RX^)2eSsfETsHC)C4T0hKb;Y4`(dxe@>$5~`^Pf4=Ep1vdb!r-m}@1Mpu z6A^v9ZuLK2u@oK_(%%W>5r?z>*WC!Ch5Ctpo4LTnk&PEdmK3szG3g2;!m`XM3-()R zJ66^9EQ=m8c#CeK4Z(IuftUR2!Pn*L0?kOm4qj0ot z{rW9g13H-rUzVA?g8RGk5Mlb{H!2M6S{uPg7wIq9*T=J}sP2r@KGC4gI&%&RwjAlM zD({Bm6!h{o4k>e5g;c3P>%H&jc@6fQy|(0iUzE)onV1^iQ$Rdr6K$3Mj?-_(+8%Sh z^I))$Rz4~2=5(Ry7C&BL9rz9IUtNCL8dM8E@srm)GPuW=DDkZ~f+Qi%JB6n5~l!&lS()i{}r$gkz> z!1wwl8J;L;hB0HS%t- znY-O%4bN~3<4Wq0iC`dy+~z8B;_NiGVSZk zr-)Y4hrlFl1psq4UA_bxQ;26E04pqwcz)RGRDS;gb3R+TAxjVYI3zN@-=V(o7WIW$ z3vcR3v-+_Vz<_TmCJGYpqT$6sX(bh zK1&e9v258bwd7v8vh^hhSXsQbzUNM7#s8wE>gbL>ui&Sof4sh9XnBSx{nKbJ>7fng9rh?4;yIeZ(L;sn zfYhZQLS{lHUA*;hvF}XX-EpKHK_b)ZT^K@lH@3UpE9rO{{*cHN(JSa`HSq!n;2Kme zs+g=;oCkXFL~`0wRO&P1;ET zpFgazXDS_X(DAKpWt5SvCaAYT=BYmWmk56wIQ=9Jwl$L|q|fC>u7d5Y$Yc&Pulq|~ zM+~b8QO`tQ*-Xw!F#}Mfr&)IufP4+tIJXN+R3vogH%|rK$s-b?fk=`5@CaC2$3<^2 zf;k0a?Js)(|LZ*c~|W{yav5Te-@t1DMYDxATc+Xh-y8V=9@ E2P#dqvH$=8 delta 1824 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 U1j+*o{{R3007*qoM6N<$f&s*Cd;kCd diff --git a/bitwarden/stats.png b/bitwarden/stats.png index fee821178a923b38a340f29020b6db6e9dffc127..168ebe098b2ce7fc4d4f986f32468dbdf70abea9 100644 GIT binary patch literal 3096 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 U3eioPoL?OPVs2-Kzu}eiU%bQ=6aWAK delta 1234 zcmV;@1TFi66z&O-86yJ#0019Did_Hz01r@1R7L;){{R30l>*ehWaZwl@=+psnvo$F ze*}d|L_t(|+U=duma8BPMLE^~|K@u;?aZa2qA0lM@guaA%7r*L;q*Awy!_6xe8?g9Gi)32w4+(-BRrv4t}1$KlG zLI@#*5JCtc6s!_ff2AmrRIUn-T4bn^e*@?Oy2IXGK=)X9j6oL~OIHMPGFqf0yR}hP zw|q(4VriMb6?{MkI?z2V+XTA9Wt+NUzz2HkWt-C@v262^R5o-0y~kynPvk0CwyC{b z4A6Vi{Fo{Z$3X8<(-er_VScTrGp2W^$6VJ*75NdUMj967Gq0YUQOK;P1AQpwf7{Xf zSNHzw=s+Kv`B7d1y5Ur&`e<$}|F=DTa{2(vt=}jhSmBP1^izounYy0?rC!d4i zrZ}xDt6~vFUEmFfACBHro(}b4fbZd2|C2y&bl_y<`Uuq90;jZU>fTSa2fm-20s4L1 zJFlLOr`PapGxugpKf|g_lR0Xjzq{F?SP{rwfclO+3FM-<-J*6D$j#FOf84Id^m&4I zacOm!G%WsoO=)$Ut;+cKWrqh2Qcs8Yr3)kb_w+{V5NT|J#djKAaz0lPcs1nlmhGnRXUPWa{y zI^ml?=!9?Hpp$R4gDxBBJE z_or8cPWaYum95et|AcSd97?c;UZtK+zP0o2{qiXrdrsYDZ z2c6WLH|V6^#>%~40G)u{-RV+9Z|*#u%ITQ9R!g80zKtKq>DZUdgm2>?G_?GuaC09= ziXDQ^EbShL2OfaFe;2dMCdr^+m*22$`*dmb13DT@yj2&49$(FZS`PP62Rgca-(EE0 zqj9-Mx40SgWE{8#46F+Xise$^4|$&!;@=vZkYLhmy979=G-`J+W0;N#D$Q`0EZP zWSB<`mDxp}el${p@e_UUJ8sA~&DpSlfD1$WI zn%lfLQ5?8(@Rdl4DJi1Y@5lXh&$;)<^N#1wd(QKocRX=+x+Dow1OWg5$;VzWPAtOSGZFv*cl`~4d>yb7004@*Y-@#xE?J#6%ao-nh^#fb6>CcM z;;rW&cO-)^qNzxsqG-WVufxN4?-LrJ-jH;ZHyzh|38S@cu zio4+>{$X}Wi763ggj_UsIm~{gL97^9%~Mw@sBhW5+qmvZ`<`zmq;w(mY63wp3y=@D zOiukD5X8kT6}Pc*fKw-KHqa}YLdhBcIoVT;6;v32l)siwomBRVY!xS0G=)H1Tj8bv znW~3(ND;(0wV9I**YEU17ATFsJa*@boj&cU{Uz1!q{wWr`B#5tP#J--fKlBX28!NF zRO~8)<@SV^!L#01=O%#X!K^giGZA%0lFD7|hI8?iYPs39zCAl2Yh;;gguNSW6bT8u zlEDSC>uOC}aL^q&h1?WS2`N^gjO<>rRH%(5yXMd_uCvkUKSP`P0#K6Nkj2H%wOiWq zTf0<1q*#75tx*L7Q@*_yOzcoCiJe$^b(zF^{_ zUk`8{z1~O2y86}N1Pb*k>iJUHrUETLvq=U%-WsxX9^dv(3U_o269h)$jSxhMDM zXibT~)RE}QZiCGaffqL!D@?ymp9vvS*2iI8U*(x;6YBcf=xSY$)I|fv09RAt8A}EA zgANsBS*fn{1Z*uv@3SX{>TuGI1`HjHg+fckPKQ4r4*!w9;jzC_k3>RXq_VWaZVfWe zNWjJZb@PnoIHH%tmz!4dQ$IqcGf()tH)KwRCv4rUd>VHug=mKx|7&aKhYlV?u6G_pfA+^lpX*DH3n3L&P zWStpTjDAia#GzK+D|kR=s7O`>csARE_*XH=B#PqL_%*zi&sPBm!N!z?k(`e$l)-hc z7~nQI_1G9(=x>5Q&O-rz?fhOI!6yD*olPNpl=89gt16p}XCb&dTc3lU_BUg2%XFaZ zKA*Wi)4IFFA1H6#V?(ez1L6A=Rhps()1QnkA2HN|+z7H9z~Ce9CT@;w6XluiR$EbA z)^cgRlFRkas${M%HgTU*aB6^Uw#T9U_~n_zaJyw>u5A4HC1Th-d_aQn>}GHtXZHIv z@=^Li5)Rb!pl`;!b$5MYskz5@I&OCf+REpTbxw3Inlb|Z0m59M9ly`S5-?DpEw;jR z3~JiEr2jesW|e+2=EiN!9r1j<${S`M5e?xv^&NbDJNF#o^K&~_|JX%8=iM~|$+0*0 znj>Hhi+U)RO?P5%7qK->O-^`6Q@t}`Qf%}=YTO@AFUap3zsc_X4kGBjw=8!YE=|y? zacJ#BPAm>rP>LL84&|;MW5hAdi$O&-u^FtIkXQdq*rR-G9)YhQ9*f8uGgflPaGB3n za}e&;RaR6}|Mb<;^ApW2YxCwm635bQjK-nw#6z7MVU|@kP52sykvfAp;)v5{eFKd;r}C5!8bgF8{PTbjq7M1QV5|)< z9OS+4S+p>_Lo@?ioK?%E7k|}Q#NS8qgnK{H@kP!}1%wHia^*OB$fdk_4mJCGjZKZ< z$3Tup`Ps+)PTIbsKg6mV`d(>BICJf$7Tbp(>kdO=i<;!Kh1M3 zE5^#=vIj;$tMBTL9zyra9DUh{9+oyS3T@RxMV-WY`;cb;Glqh-{!UU+n~WZfIP;8e zZO)#XI4T&FVa%IuQvDs$rQ_KQTlwa*~gay9VR1FkU%Y-@o z87Xw}cIoNd5#CJd_SrVa(XzO6N(s6D%DPPisv~r`85t%HdeB3nmG>!*OF(>;pNQa( z?~R$)zBBJxoFMp#B(HeNqVr<&3YZimvMM`S#lyO{-}_D`XMG4J3@2q}<-|xZfb>n zcbePWV%abH_1#v4DWi()uyC{V(by!jTP=@YzYl8rWb?Fe>jFty+~k`|9v|5(;N`4-n1U<@5v>V1~nHOsMK(NpsddU3ubC zM6oMXg8}^Z5oGb%Ht^{NisRk1)h?&O3xOck?0YkAp8+onuIE%F_@?Npf-bU=xuG>+ zw5n7%33rTg5C!Nw%S|14%bcO+d7P4ASzeF&RK`ox98Wq*c4JdlV~LmB!L~Jx=mM4} z{y@6u``%q2uC>5F02U9n32Ld#6E30VHDt!M6Ayl9()RTees@T&VZ!HKljHcbp!3)$ zUO>&&8*@WyUE227%m2E4;KcTm*r})~s;Cvs0`h=VwX}AKX;|tk>@hi+4+rS{^~w6$ zl!}_G92jWtym_qZCBnTP*!9M%QJ&lVj6&^yD%>o76w#s>u^_fAVa~!#>b!h0hEZLB z-{g=WC!3Xw%u95?V$$gGz1^F*hh=5F>O711nb*3iQQ^LO*}vHFbKTN|3cD|U%Giy! zU(%;NIQ~;*5PiJdgvIu))SMZ&F$BYZn{={=-fH@6Y`4A`non$Mv6)%>2}2cm>BYk; zz$bF|DM!hjNhwfxVNpuC1+8;#qT1h=X>uHDzMQd-DlQ6VxwQU4jSa}0j)_%$V2BtA@KL7v# delta 1287 zcmV+i1^D{J6{8A}86yJ#0019Did_Hz01r@1R7L;){{R30lmXMcU*z7e@p`96X^|lp ze+0ToL_t(|+U=czvZEjjMY)y#|K{D-b$zX3i-H2lxidRc-%g747ziO~2nZpB5JCtc zgb+dqA%swE>A+u+Y3RrWaalq@cR8jf zpbL$q8iAY|6)LG+eN?NTT%~PMUgob_6X*`BHG%H1S`+9Ft2I?)zz2Fa)tZl8WkVOx zEmmvlW71XIH0(Uh6VPpjhimAsx7~YkhU;i}PVmpufo|E;w`2M$x&XR0=qchaf5GE= z$rTN?LY_}uiwS|8QBN0BHUc@Iy9nff?l6#}dj~qu>E3}(Act%~SIYI7r<;YY?L1wt zNjcK6UIIAG6ibnD&ejPs{S`Fle9-{Un4g(^f_mJm0!;2YkmFC*p@Y)FAYZr`_~&;Ks-FCb&zw`&)n?<~2yU)WxHB{ZpA|0@Gb*d}L{L zh`RT?M(>)5pS#cZ;L>W(&|^3L9oX#9dFTZ6&pBF!&|TeoM+3Nxy7%-T-%%jf1w_YUzppm!C>T~kE@^e=CA2<o4d=% z;pV~JW(VB7g9ifN3w^@Py{)H{fO9vdN04`wk-MWtj={XQ9WIxbe?Swn_vh(XL&wei zLC4KUfnJaL10;QIb_myRc7SX3q5`3FfaF)oWafALC4Mg<=$~~e@~af%~@qb>{>-#2XX?s ziw6zu{U^{ZKT-_nz8@Y~5xPQ?B!fb`{6^chb^d`gTD`ar4I@Wy)kPPr#-QPcd#D2) zneW?+Mtn3b_vE7}wD;;|eV_Sn%#~w)+OYhr6UMLJaM@38f7G@zYUA|!HLJrc^OrGX z-~6;;`C0EYUHFsFw;i&7_Q|UzrKjib*K7B1Z+5RwKVr|ktlf>Z4p?uERrHgK+Ah7^ z-%fqc=d?UnaIsq*e!TfknWqf5-;>|$^HZL6S<}h3LrL33ms{UXUFqk&Yu7h(F8;QI z2^r=ILuGamS*2%P)^wTq>FZVH)ZcD{O=zHR-^ao6a4gfAklzadH002ovPDHLkV1mK&pkDw0 diff --git a/browserless_chrome/stats.png b/browserless_chrome/stats.png index 3609f61101f75a903c59d15a54c306d8acde9e73..84608bb95d3e180f51902cd313801fccd6109aee 100644 GIT binary patch literal 3273 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 delta 1526 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 Ql>h($07*qoM6N<$f@AC>RR910 diff --git a/changedetection.io/stats.png b/changedetection.io/stats.png index 2914ded13c6fe5e4fa91bf80926318ff040bd3b5..185cda331b298eb9541323c8664b6ded65fac374 100644 GIT binary patch literal 3138 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 literal 0 HcmV?d00001 diff --git a/cleanuparr/stats.png b/cleanuparr/stats.png index 80dd6d65fb7725352237b04cd403768fb44c298b..51f3552dbeee9be90e891a341a9cbbc2246c0c23 100644 GIT binary patch literal 2676 zcmai0dpHve7vISJmhif5QLCsKQgT`DgmT%dAt5qSxh=QF%9dzJMY+sfUKNJPeM>_w zuU8no-h^!xh>=lst3HmHMc@+OFzBmL{^d&5x zs2OX{zis?5ZiX%xy_5piqRTIhe@6ll`J-Gz0DdzKZhPnd<3-KVYw{AU7GElZIg9Ez zRGkKwsJ4;WN&NMNE93{Q7t?O~3qy2udP-5XOWW&%lQFeEn~9H43quWZN2NU9L{W}T zPA*{80oP2oJ_%gc5`>V7aqnf&cvsXKgWmqi$O`kA&Gd`TDsORiDT>CfMcFLD-CJ=C z4v7#WM_ma?zx+pu!`iBZe)eTeyqFB;f1_WXCzyAii2=GCx=1l&9DBsB4D~;ZA90k! zKm&oR%1OhlL=eE@K6NgpF4QbueC$Gg?R(4VyVy|7Y)Z)X@~2&2TSZfSTcE{1Xr>q! zx4NB(J9#H+-H2d6FnjvsD0uSG1y5&+IOB%t+K4nJ7(%|%`C?|uWF*L%r{m5pmcJA* z+0}zTPM{QRjc$Of}Yuijq6t2!)$cGaT?cWJG+sT*5dzs#0aGpzbM%hC^ zNAH%)qPnbndK}AOC+56X)Rz`-os!1rK1p?etVR}YD4oaEYT_Nwx^qp>cvh1&b1sfL zi**+r0G|wcz~rQJbBGsvrTM zJ45_@dS{kF2r`T~HcignZOmoI`B20OouEq>HB7Zbkp4JL!3*e_p7 zd2@Sfg*7B(b?$6(<_3;{y0%lItY7Bnk1-As_?>BR&^bLK(KMF#wiK(xVcz~#{9lEx zk{J;t?jtqFso#O<37j&-Xzmp8;_H};RfPG@mpJLUHTAmi3U^QWMp>2L$x zvCQ25$ifS0@HARyl5n(G*x8x%Sx{kX2Z`> z`k~j2c4}(_N6#4g3nY)U$zlF@Wm#VPbSS^8r}X~Arw$_bpRzm&jJsz1aK#g}@_4G{ zG2#?T3miw$AB@x_PC+ceaRrBo$9ei`*rXzAh8XyYYwIq)4BlK&EPdm}59+c#MJMyg zZ!UU7H4)BURslV0@QOuR@W@{S;ixW`C-vh}%oA>0bu{WGg7q{6ITr1wUa&F)e>Nw7Ws5vwk?*L@m>BL+Ey=47R<-3!8Ptwi`s12oTy zMo)|L6E$c{w5CSmbAQ^FdDSBVnTu03FLrzLM#%BjH?F^gAlhaw7w$;CBi@)*rR=M4 za?>V0EmEoK-q2uEeI3qaKVG`F`!3`Bmt=VY_HWzIDZ>jQ8zGPOHY`CrvNmttJ?K5C z7*O#ZhBG5Wltr{^M)_%?(2}$FUG7jd$J*CfbW)xHB)%bfZ^&uT{QhXJQR%hfl!}3T zzo9+Dd7k$8*(g?=RIoU?LKdO>5h0B$~VDu=gHY4^*?0R zz;HrBbVuD>yabX)i2e12rE@3GG+ref_dX~ z;{r560fkY0fo}{y6~O*eVtu(9(gF?Lyls867Ofl?18<+(kl0g(=Z;o^RNC?1VGT8x z-x89U;Rgb27kp7!lSN`A8CI=erC4n&CTXtrFrv4w*XxbC;eKY)i87r=%Ba2R7CU=g zx!}{yuDMMVQ%b3gY6mQ}vEU3n z!{wk`f!}2dHn{<7ss`B3#G1=>U*9z01)nvn&7HK|jDn37&NNg^pEO%CW#PW2M`(3K zZMw>~v{CRG>@0AX9dH~P5a6)j9=l?9Utkbm@J#5F;om)TNm6dQaHEBuEQ)wQHxQJ* ze3dVDZ~69$xY-5w1^SP3(2AbG4JxeR=$F~IY|oCy>*H$1w7ERf^{!HX^lP!$o0{uN zj|Hj*H#L#|G)2A?uZ#8U9zCdZG0b=cWge)Nmi1wOS1b;noo7v8G0Tt zn>uESgrZCU1EF6ep4nDnhfY4X>7EHFfI+5!kFN#~@6Lw00Zcx!soMEK{ca&}D#To4 U^3;fl=#2!pI(ayf?SoVQ1?+x11^@s6 delta 1383 zcmV-t1(^Eu6oLzo86yJ#0019Did_Hz01r@1R7L;){{R30lmXMcU*zGo^B|rr@R1=G ze+3yyL_t(|+U=c-cH?4q&v*hRINzaCEHt$ z9Jn@5^Q(w%(zW$4qOcsK51OZ`suQV_rbGJ3{++@e`;MkN96cq{Vckp|K-)Q8e>ifs zHC-&(9GZ7Qx<5_t-j0EEhsyv+H)P(4$a!?+@)0?LGoDCaR_KuK%DgL=E=4~Qkpm-V z<`9wdrRidwjw1)@7h#^JLfXSL%>-v`a$Tl&84lAtL%IRN_o(qaPp2xsb`=&*twQ=f z^*&DBPX&3s|1P>JB1gK^AE|eTf8HPU094y!Qy?ODFTy{OM4{geS4ba~@Iw)~kkfQn zFEV~N!W(ocpCgAOw@1b2Fj{a%EZOYXbRu&8Z2Ix7RY-5K{fM6ha^#r7hax?bIm6cK zXfycU;0&i$FAl5TZa=-C>5x8(zjkqO27k>s=?ZQma>KKIG)FGJOwNs_e;Z-@kR#`7 z$rj}?Sz-H-BjtS9sOdK&9fN+|lO67<=@|4&pX^W~T^MxZ5Bs}^BZoo1 zD)xTY;0y-c(>fi4?(E497<5-pc9_`$_Z5*tzdwCyH9pVw7wdE!wwqiCoVim>sJQX{ z^vo^)LdA{G>6b_3P;qY&IaJ))u_jd98|kRHGtyCUccjm#_yDAzf9uFi6D-_@bXC3g zbJpqKb{!?Z)lC$t^VK`kH|5Z zj~$WA-109bbI!7Df7G1G+}o*D)ZCw@!@0jxtC)66iIIIvwlBKa!bL-wLczK5E5-JZ z4(C=b58R{a?@T8OpRU&9=Tfij7Z?lfAI1jW&zc0IPxr76>A<{ge{04E`%m zc#e8RHyykA8|$~~5Dn>H*@~*vpqgm2)^d9qg_*HkY+Y~9Y8z@V-SDs1#e%O&mTa0O zcAFDjt|VNwf2<)YRb+o&MZa2UK_r?EyJ`#4zIy9(<=WFB8x&T?uSi0>u?4=0TdPW) zdZiwIQkoG}G9Z(dRYcR$Tnh@ryd~P**h+J9jjgq{*q(NG)f&4p7`0kgwywQIdybca zV~~{QL=*398Rm7-v@|Q5H-mN2J&ldo>1(WdYwfExIkX!aa-1|o*QNWCC;%B20M^0K pu^9jWv3G!Z2c%E{%saRj{sDs^5ITSta!UXJ002ovPDHLkV1h4(uYLdk diff --git a/cloudcommander/stats.png b/cloudcommander/stats.png index 246f72521aef47fecf295bee15dc2fd3f9bd1139..94fbb7a09ada59437e963907ac6684466a76eafc 100644 GIT binary patch literal 3108 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 X&iJYO>x2AnKe&A1nlZ)5@!`J#7mOA> delta 1416 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 Q?jIi5TRU1kx9~~&4>mH=ApigX delta 1483 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 delta 1477 zcmV;$1v>hU7~cz!872b&0019Did_Hz01{A4R7L;){{R30lmXMqfa$SC-{QLSIZYzR zks%j<1#?M6K~#9!?Vag*gCGz^xl!N$mD{G8xS)XIGH~vXeo0Cu=y8T&5uHN_A%qY@ z2qAOqggdrzH{g%CmrA%qY@2qA=j+~re`)2S#_!zlG+JQ`I1T|loex(n#_ zg?B%6AzR9k$SFP}I9lXVJK-`mk6igOJY;35CeSNfstNQ8mudpN!ljxDb<2TnYN_UH zRngD|^b(h9Dl`@Y^is#u55{+(mjj(du0~I%O|K5RJQsoX55poOZMut_PX~HAo<0wM z?}MWQy{<$~KrcR#i=I#CM4DUbxV2^?+k84QlD*Sqt3JE~oe?>pmkFKlUKeyZF$_y0 z2XxwWpaUHh0-Y`!Z933zP}j8Yb&YM)U68#e-17wV^MDVq|6X@DETR|>yEFEFI`MYl z-EDJ2BFB9CWolln$FH0A`b88D=vN_sU-9Yg)tnvP<+}=iejDK7q@ zxAo15izqz*B$2xt`F|Nk#$exbyMIu*CW1c0zlgODwek{O~$k{}GD8SRE8%6&6?dH0Fsa1wy zAA$UctEWw^a;x%P9rLWYT-xS=%%|VhG0&OHB`%D_({JmTXAJOcN?@=tKbXsjM9wbq z-LB5f4u+BMc6Gb#-obu#9}Ct1AaepkLE5&*kb2!&>T?XL5C(>~PUNY28`I zU%8=^$mO|1sp(EM-|%FI8nU;4qpr@A9ZnAG&H0yALn8N}bp6z@e!$gvvV*mBJ;P*M zQa_!s_a~(5$LG}(pX|WYYSNw|4|VmFl{3tz-`+pV1GExHYM2H z8K}AKr}HeLkoUnoJfdr(A@A<{{TK7;RW#%W251-k+>IY^4k&6KNe?L;A;O-B$P1hNZ$1~R zGgk4a2(KjQRm`Vbisw6jAMK+Y+f=9|_qGeXUu|FGh};mGlVzNCeY0#`TOqp&p?A&5 zrCUH34gLGXSzNk!=x01$80gQ0{>jULeF^kCXW2e2Hmom&e);ZFcG;dz0DqFF zpSdZ)$g5#(Cy`T{k*=+D_{&^)kKAQWF^x2kZG`t!==F|f7nHq!>!7EnHY8886E0)( z$ahbzPM{-O;tmJo*j1$V<{s)mN5#kXLoGhC%iYt;kFNzyTYi1M6)5B@;$rN$upMuG zmY>cG`71f@y=t>S|+}8Q)uZ-ETeoJY%-ZZ}ioi^>vF3eRs z&TGdlYdL-EDYJwgGP1NHUya@TLdaq#sy;qkp^msF8w-9eo$uQ(yve6p6q;;MDCaBU zDfA6vt9F(}KCV3d;^b|xjC$(h0=^p03jMp}+~^)VE^H@%;>bO?LQ|`9i}@4#-e|;8(HuIvz_+|8wyUiodbq44BV(qw diff --git a/comixed/stats.png b/comixed/stats.png index 7c718f92d8d0f74536d8ee801a066d774ccb308a..8fee32c2b2999a171112818f78987a1cb5629395 100644 GIT binary patch literal 2715 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 delta 1297 zcmV+s1@8Kr6|D-886yJ#0019Did_Hz01r@1R7L;){{R30l>^kgVC3Pr^9_{(nUNtE ze+0xyL_t(|+U=c-a^oNjMUmnEzj?b!LP$WILkJ;+5JCtc zgb+dqA%q%BPOg!`n*fafRpkGl*YD?%`#gF-i$?6oFUs#9_eTBt$9#>fKz}`O^z^aK z`!8gf&HL}YfDl3mA%qY@2qA=!yFF+ne~XAEvJ;|~`42LamH;}?k&XQ04!R&+`umch zy(1@8R~(6ZqB%8P%#{iWs*z}Y4 zAKp_^+0X^(-7nbuL0-`^i#VY7t^a1-*By?5-aT+1n)_fPmx42>1K_7UeKV$ue@lg7 z!Eh_`E5J`3xv04Z`or?xHJoBg)UyNn!*)HmhR`Kq-V@NFeh=}hcD)1_j@*-0eX0RG z!;vE**Aa4eN0LUW=W)@UAsC>mrTrsc&8}nKjks;3R+Z3x_3z-GS$KhYzu%a*qi32pm#ZR zGT{=;gvd#)V#Up+R$tR?Xd7|laLFIu>~Je|jJdHf9b?|lW`}#$y$6Ej&-V1(9WHe7 zfgQP~sa3jor@@(aJw4FHe>;JG-!Y-y!=j4~jI!UL-pG*)6TQ5bh}>OMHoCdFh#cL# zuh{z?J)Lge^*p@^beQ)xrniTVX}7m>W`ck@M-JxpcCEs^yA6zyGsWr#XNbEh$fsA% zvf;NY8Ph954=}fvT4g|2vOnF`+rY?x-es1p>3Q!A==SF64Cn@-e>0%lgHFV~Q|QtT zI!;`_M~bz|vN53d+tXWR*#ZN)y?i>%?KyG`=*sq|SIDwq+?DNGt#M2!vo&p7m9Im` zb608JuR+JS50hFIjQglrHg`G8hUac?%Eo|h4?43ogV14a4?0eqz1TZWoV{JEIC1uR zI!>IyU8^u3!jY4|e^kPNKEy#o%O{0Z?&FyETF`Og^d25q41H>{+g&;?rnhmDYx@Q1 zlJYNOLyzWN(ICS;)PatMx9yike599q`b%75U%mXfEHAda(dK9WP+j!(wTdMhms#D? zNvd8f{mGqIcj%tWg4OpVlHKK%V&Au&U$rYIs~O{}I@!!Ae-rOoSS-~ziERzg)3{Ub zU6$2|ljY5^xZD+!ykha%*5zEJ>2r0G*Eq>*oMbjm@*3CgCwDjz|JaeYF_~Yrxr`Kx zy(+i1O}V-0k?Izw9v(GrQ!LfEoZ2?!jv6Q8@;*72_sO};Pwu>NhpAOr-wmld>_Rbd z`&VtsrS4Z*W6wB_-nFn;s&TTaKwsmskC*yZvUVW8fxbikAyrJ=uJUcUL?eFh-n_<1 zUgIRQaiY3$Ws4{fD=ZMyk?PnCLWtNq!n`AvP$0}Z>P!Cs7{L$Af2!jn00000NkvXX Hu0mjfy}Y5J diff --git a/elasticsearch/stats.png b/elasticsearch/stats.png index a80b56e783c05dc467b60479e7ef8d8b8071f14e..39c0000bfb5a4a190d2ba1b5663bcfcfd6b4a609 100644 GIT binary patch delta 3582 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 delta 1678 zcmV;9266d_9H$MC872b&0019Did_Hz01{A4R7L;){{R30lmXM=w)3+};L3pMC)-{2 zks%j<20KYaK~#9!?OltO;~)qXAOHW$yVLZMq-r%$6uI~8nQ2O|SJ(vUvW1);uW0-6cwy-9-sh6ujfp_JP!ZqQ zeE$190mvOffB@;r=JXip1V}-3G%{(( z(XC7+Sqf!s`xt}r(fq$|wL1nCNMGbuYJkS;AZ(?xuXwDfJdeUwTeARRI^=%>^X=+v~H7 zx5T1sxSbNc{RQhvI)~aI>5Cb1%X;Ko@YXw!9?y+hl5}T%aK?G-K)M#vz5jj%(wA26 zZZF@?f^@TfX!RuA&V%$jJd!jqe;@>ZkbVfPE*Dx25xG`q#H%vod{n9}NWZ?9jl`*T ztqPv%_p%8MxP+w1WECypni&>eJL_Hj=8^)tPc+E)@`r z`C&J>1x!W&f zg#jh{of_|Xnq&tu^!w^_`dI%4Z@CKnUVpN~G@(^z!z7XTl{PTa)S=aXPBq{(=y$0n zJGfre9yRE9p&q%8r5-I#c9@cM*R!ar0{u=?9^2YGnxvwsXGu`WT zub(O>&XBW9{1@1@IvXK9O}YOk3p~*FbO$gtj1l1|GQ)oo_= zzbX8;wHEx`hw%+H|1>D*;cal{r_&XKAGrU;Aw>YeqcUmV? zzuSSE^g(G2MKkSP5g#(G3y7x=3w8c_*qWZl&G{|oH{=FpvRDQYAED1K>`&)SfgXD9 zv1JhP0hUXBl#RD|VDPgQA#5(<{0jckR%JfY{pi%C6Tz;Bh_fsBE9FP{LaTOsI`UJM zKQmss^1^1lkhvOvZ()eC&60xNRlfNZJY9{aa~N{^jytyMmu$)oOJn@X^OElL9cIs^ z+@>Yndt<=5D$;{>MkhEd#wmU8!3LuiR^_f$rCo7>tyCZ;yu~nKsq1=iyX!VjNIJ_ zNH0eN)-~Kf3-5f* z;p(q)Q}N4P(sXhA>gLq3`BqV{s(YGg@TR(bp7ULysmNvIfTyzd_01n2^=ZyA_-@Us znJTFmxj(Hd{ru2zDe&ugi#5-5Psb;;r1$gZV+Y?|ulFcZc}dU4+0W*|d1OTA!gG{r zaK4N-PjVgAc9T4rC0RRBLcL3@gKneu_^$yH} Yf4k%nf|mB+J^%m!07*qoM6N<$f)SNWNdN!< diff --git a/emby/stats.png b/emby/stats.png index 31d4a629363bd484e3a880287127c5c69a6d41c9..4e8467807a297da56d05653ea0b64830986427b2 100644 GIT binary patch literal 2958 zcmV;93vu*`P)005Q<0ssI2r~mCZ00009a7bBm000ie z000ie0hKEb8vpZb+Y+Zzk^(9Enwyq+zQPRnsge|;Lp#TXKz(~myw3+b?XUO^DeDME+VMs^k@Vq+G zc{qAG9Cm%*3jjb{KFeJI03bfX9RM0cxC20g2zLNz5aA904IjIw+NP%z%g0MOh%0#%MR`QT}{8+z5xzVyIc?*ZAeN%4z_TIpkU<#wSp#3z$i-p=Gb$3F<K^#y8fCdrn0MH=99RM0cxC20g2zLNz5aA90 z4I=T*N#h!W}>oT*N%D=>w|rMI%=(2tYHMyomW> zckcaI-HZM~#I4Duze#29x^!FCmtOzWvK@9RKm)jldARroR9&~o@&f=A{YT={B<&^R zjYBJZ%wL&)XMKb6|C3!Bd0Mu5rp_m+59DW?>w; zi>axN0MMAXuYY~}`nSfCU06o$E7t)4>pS`GN(fO}Hztai1FCD50sw0|dU*NeH-CHb zpWWPrBr$V9m6JsQH0iKAfA-^E8?zoK#k@eaK6_Fb`}3y&fD#O6Dm9$!!W8bqY#FCv z`{c>QEI$CCG%cN}WMRC_o?kbHHV%N26?mpnA~V-eC9DB7qs%jv5>dlFq_Eg~$f5zJ||Kvfvu309w}enMxM6 z1FAH>0n}?~vNu1U-Nbf=s^8j>0FYg!P49kyN~G#!kUZ6VeN(ZXGyicYu#o3fojaTUDtaAM)GUJ_gwfNESE-yC-5eJ@`04@maf z8P{{4{1iZ|-aLCJgxK<8ERBh_*)Z*a&~Zi*q!g~-+p>@H+L>FX6Ei+z^X~kjyL?*{N2TnJ| zHWiYYi$J}I^^Kbj_aWBleFHUO6#)p-HBC>aT_xA7Pt_Y2oj#{}J;}`KFAl%sjplx!XbG#IG-gy{5M#D$$ zgge?ppu$=~n;s*K!GwTt7M%j4fKj&BHb zgo`|K*N5S2BHU30d0;NzesBNI-u`V4jUtMIdhX!}cVuS@ZW#k}tblL_9L#1n!Hq%? z?!W|7h?Cu@1>ug(p>u*QC?edMErS#oePhe=hkM+4?u2{8mW;S%ggCY=f4J+Vv>NWN z*)(ZPtKG--1y{Ty6u=1&flZh`Pg+7NLf$GFueqh|(X!+VQ`a^0wpel!8A*ULeLf;9&4b&)p&pl(p zW_fDX0|8K=f)1#LTP@rR9Haw)EXl}SWNLh;4tECW0BXUikn_e&XOIq{7KFPInGT>{ zrL<-2(_>biEpu^v^XAz*G95s@yz}sL(-%B8r_7=Bp64FLn`iHY5HI=%D?Aqfl*SnD z9+d0zWid8ko*vz0v<_giB9EhUEk8hG9YB*xndcrW+{LoK5Sb33VUd>~2&_Y_vitxC zO95;_`~#{U^a_+)V(mycSPB4kpP9ap{m|&7vxDoy?tE|m_S2)gxoZJ{a!rSOfh(#H zvEKLMMgM?43;@_ow`JCxkiNuWcmC+*4t*E^Sjf2i!1!_P%MSoRy&@k_O`5G_HvptI zb3irvVbyWAd)&w40Eoyqa%X&PQN=4$evwodqU72JRG8P=S7KVS2tnJg zH~=`wzx=?`r{sVt03=r8HBshl5`aY7O6irMUfsAT0UK&!r9+v zrzZ`pFr>CDKVR2ZZ~Zs2Q-!(S$m{>0r+e&rU zMS4G%-=pjmhFr5HR)r$j%i>yLNNx5ve0Xh^M-~1?7LF;L<&7-diwt?Lm?L-PvGN{L znRugb-09AN{3_HplCDDUBIP}Q>LSa38RcJNWmuHG!jRhhzL9k*%<@Kds!-oZx(dCE zjPgb{US@CHoYOa~ejte6>El02$fNP*uAA0DxK;XUhy9FmeZg8qs(GfCd@Y zmKl-$08pKo*)k+M0Muxr=RP~X5&%#*b>vQ41^^oHCkw+zaly#T(f|Me07*qoM6N<$ Eg1>s5qyPW_ delta 1375 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 Hu0mjfDLtxf diff --git a/enedisgateway2mqtt/stats.png b/enedisgateway2mqtt/stats.png index 667c80259b35cee1d00bed13ab5cb45eff69ed3c..8d41663f93350d1f314d7c2dc6a1ec2be77d204f 100644 GIT binary patch literal 3273 zcmaJ^X*|?z_y3J0WXnC4k%sKcZ3&fS46=lbC0Wvf#+oHUW8We}D5(gITj`Fd7_yE* zmO)uUmSM)2kZp{}K4v`n|KB{Xo)_nw>zvPdbH3L(*Y!Q=_O=%M$4?#y0D#}h(#!z> zK$}PBTyC}_U3$2xdt`V*EM3C@K%n!FfS&&?AOQe;F;-?593x+@l0V-e5un}cw@z$2 zn6X_mHogKev|LnP?QarU>JNER5&K1gW9jd!(GQMA^Q>Xb*(oPCeaP3yD(vSn-zFxC zW+&eWB})2f&Pt_FL9t^hFr$hK%;H-5k! z0hFDf3IHN9Bv7$Q3Jh>e3*kyUE<^|HrQ4x^irN1s30K}Ocze5D$Cl)A(9lBeDC9Id zL02lG?ORemVAa8AWl67W$7SmdQ7w=qZrI@Yoml>D9Z6FCVaWDf#X`1WA^JDJR*H_z z2y4|~G@cT9O#h|t6k08eGF}%$8o0b~caMP*(;LQAR2|c!N{1e=2r(!dd4>;8=w=a6 zPX-9v5rhE1?3aKkh&FTV#Qi^YX{xgS?^07b@U5LWHCKmc2ms)kL#3zG;umw4K75vejR}u za4C~$#QU2BGMhoo{d<~}Wb>QcHPz_j9U8%)S|&5IxOP^JUdEAn-};+3uwU<9?Ws5$ zYf{V5nV9*TEl|8(_MdR#4eN8>nS02?bdP{K?1<21Ut1b<0nQgJnkcLYVz|Sgt7T|g z7<1&+tPSyIU#~BQ<#)JZ;^~DVPKW5M*N9*Qlh<90mgm(s-8q$pGTopX`Iz_)PrCM` zOhS@=U|33%;WW4$TjJ@nD0dF<5Sb2nj4_ydDI?bHdo1yTRWBY()T)sPTD2ILNP~V` z*f9gHYwH@F%Z})abIY*huz+&_mh0Oje#L$eVsE=}?T|Shk#I~$7j6{2N%NzYdtBA! zYva?w;aqU_NBXf5b4ep%hdwxyt1%c{seUJYmzc89DB(>;wL`CB$W}&rFatxFt{#k! zRG+mQ>*DE*V96*@%)Kk@9gbC9pkg+y^7_y1Nm`pXOkv^}v9uY^&zG~n^tO$U>UZ3W zC@)MgTCA=S+15nBfHp)2212FRT8CO zs)mpsEo*3WOr$)Z@Gm0HD&pQ<9HkJ^D*jzgem@jr4^_l(xvd{w-A0& zvReX^Y}B$(@lA+oKuN2^O)oa)N~Ni_cOo9&s^iNx8T_6noWNqPxF_t@pzRE=;j*Qc ztWYJ?6n|PLN*&4OGZI^Hc8uIFm=L{DIe55NQOg@;;Z!ZL4ld7n6HYjbK{nWKrlQ#GHf0Q;C6-K&V?^yjds3~LnjRz6YDk%3-#rs^>@!_h5nJNVeG zh~nel+~8%Wc}BISzVrNeTu-=K_F7x6qAuZRb{3aqtQ&$=h*>lqC&oC}I%2_;O&%E; zmwF1bWAYR(zay7-u-ZbuIBL_kL7&ai{`u&~nP$VnKvA&*nwp3;OFvl;TOkCD`oU;? zm4gZsQ5yQhD?J)}g~>&i60O1~%+pdrIeS}JIjyeB%Iv?ec{dgw$_crM)idx`dY3O> zs4hHJPrOo_qE8j5t*e>a-*6aieB`BblK!edgeri6B=!2E7VrgLI{EGJx}k|B&A!|V zjgtZ}*)xs(X-fq;WIssQU|b=*9UA@ZmOCPF0blKQcJ@$qfQd%zcLO4~KIg=Uw0nsTZJvS9DJ@qm}_9_al8d5$rW>Pf_hUiH?4 zw#tl`6~aWW~^=Zp`Q0ne+e~l8gz_khko@m%skJGrLSU`4@la%0Iwegdi-I99{=El)xkP&sIIU zlQ%I>?!K--4DgN^PWNoXvZCpKF0*>_>jQ`i=wi=c?%fuEqZT{R9C})6%^Z=at1iYS zdW8_e)uA5bD<#I2X6$?9y^<%D&<8#T<`erXC1!sx)Hp?;{NZgV`mhWyNUld4N>UYk3b%GHGE%?CjlTu zVjuV`D>{OTg;#b+AmB%8H)-nQ*^VPFsIiG{}#crt{ z*5yOO>=1iDnOKI8zfvpqqccXeIO=eCtZh6R1%HZ8`(QDeF=Es-BZ%|Tz#lHxWGO@FrNW?(B&3L?re4~4Q84|%dVhz#+oo#iaGqP!M zFUOkD+bf1q4P{v+%S4L1N$n-Le+Cw3Bfwv*@cE&(qaX>-#Mku9Wl5 zTC-a{ExWT4ya!(Z;G4oH9S%ULXF{ZW!1y>&EDY9JDP9l&>u*i>*^Tci y_MG5%--`wuJ92Jx}yg9e+b{tujoohl8u4oJZ0000000000 z00000kOm^#L+{JAop?`z-dI05I-Y^_PA&WI&*QJW>67OddHj2xU*CIvF`GkK&w?Hd zTg;o;H<|Lh6uvHj&x!Sac{km?13Dr7e`T$2nm?BOK5fi~^xehrxn>NO-p>^N=1`7b zR`dNjVYaWn`hfI)V|D-l0000000000(@Q-|*7XMpQnM7Y)*3Zs$XOOEJ|${MpT*E+ zU2KH(ndbB$=>mFzeqnNr;bNsmF+!!jnol+OLR}%r%qq!*^a&-IkUpU#6VfM?e`Lx< zS`O)bNitm!(WHxy*HqCvlFV9?Ou3kZj)9~E^K^*qM3N~c-oJ~1^a1mRm@+J+4^6sw z=kze?u-^X^BZ0RFE~=Iz=D zw6QVF}iMZcA~d z;h9|JvK^$)F_V`ybx9i9gB0s1j*8s4=~*>Xm$NlCEd6%m=6*@IT~$l>f5!Sm?-7*$ z_Wesk8o6DHPH`p_y8YUT(^dg;iYQRSmXW}y`dHK#neq-7EIr#qes|r)>I=7;=>5vQ z3ln*=&Z3FDQL7h~a)veE$O&rLd`X(xzq?$k zY~oeUL3)lPP3hlV9$}>CtQgd=+5LJHt*%(~CB~qJ&6cET{JSf*@6Bubk;%)j))tEz za;Yr1KV56)X1VQr0{>hh?gQ_7`?*|VFvt8uf#oTS$=a}UX`!p#nIN}z2eGe6LrY)2Y>QZ|_y z);e4D=ezX&Ml{8l!&3VAf!tD=@-NmC&M~?tJIt1{S=+!Mp1X*qoMTi^c9@LxrRHRw z=C0@8pX@Lh=}nlqe_{KP7It-O#fUqpQU%LhP6IwC$aAcqC6V{o8Hy1 z)>#84(#R#*^@-w4N2Hg2@EN3cxF;{9cTD<&a2TJ5bO=wGf2a2ly)%g?-HD48)W;<~ zB!?Ah<|C(Uf0BiC3aCxH_W4{tb5Nzy5nFJSXHFyqtpz4Lt4D%_U>==Z<=+?xm%{8+H40&R@^g{ybNGd+1S3 z$F0>DZlZfPvAq`=e6HR<1|8Y`9T5dUVF6$rbX}VP n08o1exOaer0^r_3EBFWJLlDm#zU1Bj0000<2SrXqu0mjfHv>9W diff --git a/enedisgateway2mqtt_dev/stats.png b/enedisgateway2mqtt_dev/stats.png index c8563d8d9b16754029443192bc9c5285ca340058..ae3214d4f6805d73e81550051312fc41fd62b23f 100644 GIT binary patch delta 3758 zcmaJ^c|6mP|9?v#$H!S>DpykZ%8?{Vj^s!=vxK>0gfeo(*jtK;vLch4v|L$o&l=&Q z*)&J4T*)!2v9)2C>+AFV{r~&>^?baZuh;AGI-W1QScClY!$SK204UvEy70mn0*VJ% znO%lH$XlAU3sNBSk=di^%{GZkTgMVqh4IynH!9|5zBMYPDkKyqu6q^6T-BmoeiL%} zD=fLc%?Q_*5s|Fa_v6Y7GrJEn*OdqC$5q=t{Ec}c)hT^vpo3f8f3{#Ue=d_K$?0w;F%~064=bX*mr5)fj|eywCwAAbG4^9#A%G;x~CL6a^$p zPKyHvlqdL5eXov998e}+SJ2gZhQmsV zwaXjLY4~h_bU~X+CxV_n^rjcP4L2?ma)dSVPIcpLk-J2tP}Bo3{q3D}mC;?Q`zXuY zy!k(Ca6O%w>MD)KrcBZy7PXNUf^~8x+#-}Ojue$uEQmO>&8DP3$x0tL>LuRbAv4K` zW?LdV=GOv^vR$Qz<_`0@_l2R2!}6qIZP!Aqc3Q(ixNS@3eEdLzu%I(Hv1@~(a&wY0Ou*G&q4rM}>cSIpE{YdGNMc3YJRW@-XTzPb!Tm>4Kz1SE3mNMhEYI3Cntuv{qI!V&O^Ihkp`6Ch(uj%;qxjA7eQ+e z{{;wKlV2z()h`+3^J*Hz5@Rpp8YmuehIgW3Re+*mYHCECMp@JFt1wD1h%XWYzC%6W zTDydyM7C_F5OAzaPUCiDebCrEAh~bSzRSt#uHL}LV*uFfmJllGKU>cbtKI^DI-flB zFm_90(riQQg&2Tx_TWGO$posEH4s0o_6zF}Losv`0K69u$jV5O5IJoIrk5ibk;d_j|{2uq7v zL=~?I0D0=heYk@h{hL@tz^A4$0s$_gL7rs`;-1>3o{llS^q#}no(>L86uVWww=5Er z1$ke#pao;RDvk}eL0mJq=O7!th(?~T!DT%^G4W6moNyU$C32VY>$m40deFD;6SXw0 z^IdWpU>(|sgG_hoQUXFS=A}QcJe6$caVhfmOz7#(@6H8_cjZ44w1aSU>}omY>yd{~ z9~=CzESTkJEy0@?cjnu8?M$DG{-n9&QHeE$158QNe|b>93bu0f@T58A(9af3lc=oO zo8Ue7xb+|NV2^t?yMbJM{~+_O2;E1%`b6sL9uT^D{ipQ!{G>sjK{I!3GV!!dZ$7Ff zizH#Y8^`Rld0AUSv-^6GdAu=a5vu#OcK*^7<9amnwl??2eALkpmOF3VcS`!OK+rV) zX||r~ON1q)l45%|QZM?;)s=CwPw?^*NLsMnUAYCuzGbC|##dsISuv8#fXe7VjQ$kO zA|DO^0=79NTqt%O>$oSwOpqpjE?pwV1^@C29gG$-B5V!qEU`SnwT+h32kSJw1MVJl z%=l|Uzc@ur;MC~nGfbZ%lBU=;oeu6WI|>zzBi^u5_S1$$Z?>ZF(PgKX#@@Xqs$ZFdFV_CL&oBfcof(zMbP35Q~7A8aYe0=Y4XTa+|Hxr!osGwI#$Y-7t$~6c654N4c9#j zZyH>%jPt(qF7J>$Gy5h%5MH+&vb$3X%7YtSm8?tSA-a3*_1(A;3BSWz40Eo`CAh*Y z`WD3fgA+NDr#gLWKg=+1gy7dO3rm@ltfPXE^H=rj0=FpiDyYXq>S`(3~hk zRdt7p-qiZCyO`Nn!1QA=M2I@ej>Wp)?qluBa#jft|3>(n+Sg2p=^`92KT{7_q>`z6YAEyYYyk7suUHkcJ4nCueADp8RFT|T zR^fQWE!2G%$8F|V<0&nLnL6!VE)OkB2Sa?eu<6id8Eb ziV?`Of7bhbxNWamc%6H2)bGy3@}u2SrO5saq?d)krw>&nr%$3H#qq)rY?h2!J63n9#qtxY`^=_eSj z#ea=!Em>(gX4;h6@v85=bj0oG8q!%|;~C^(v&CJ*F94b8wmT${wbh(1y zJ`T2t+u7srxtR4(-8jrjhPz|dC7d9n&z@5$U)@oRAmy~@_ ze;B5XOPwphJsG|5vol;Xk4ucT_&~n=k3aTpZ6{1Fv-hbABdzcvXRzD&1JTykb4niR zuRoE=cb=E~JOUI>dd>=aheq6B)1Hm4CQgzxx;J{Bszjl-dvppt8qR|Q7iNUZ>VuPz z+ElugwYqVUH{-;&+bw7r2B9;YS%RZ*Q}WwhxU9v*+vyxR)uXsQ&jr_5&abMDtnD9k z#UdLCCJlUyN&0u*6kR%qKSXizf6FmEPwx6!v!avc`y)SGRCUgyO(Q8z?IaCLt+pXw z@{FXF{y+37iJ(q!Y%^DoAyQ@MR67@=b+JY3wN<3I_Jo10XN@$|XMYCNy_fOJ=x?J! zQ{8uxBSGJIX&i#Y)yOSci;6jRvHhIr-f`y8=IJu;S;c1h48p?4XEds^hw^0(e zzA^S=CnI7hn$9RM6Q_)Pg@x6*Dh{bC;OKm^MP*O6YKD6gF)2{%*wN4?GLOeEcjueF z6x*PCNEhlN{q=RSCm3(Ar)p4nHzru>?S|o@tvf(z#pert3!i6E{)yi-j$@k3j~F}F zd;3n?f;If|e)^giAz4aZjig?*elvO|4beON z@x&;ftVk$jYNbyIB9d{d|2I(+_}t~)6h&E?Mk!PWDgm%&m1!v%Mse5p;zm?TQc!nt zo2Gh3{&aD@_@@+2Lq+ip_m_SvCXO(<$RZHpA5jyi6c2o8uqLSw*RE1iMbe-8Ys&yT zgq(i{Q;XW;zGVH{*Jm($Nu7ng^Icy-FR6@Qwv5w%)&+t}SLu+i|0+)r_i9puF`1G2 z$*lb<2Jx3Gs5kAqJdv#A!8DPXY z7mv47s9Ybkb-?!3K}!tpr-LFX;P>q2HEXesNv7?dgh_x&*Mwy~j61W>B-Zp}k{VD{ zLY1m0aj${^%0CbkPhd|oSy@Lr=ASnJM6<@idbJ9Do$_jYE-&p9;P_kNxotSTrQuSF zX6!Jzmt8(dU1r~D5s@I1d75DCFnTQu1#xIW1@b0fxLD2uySN)8p@o->ay(jzbL{de zG0eNrxWK4sf{{X+-I7xQ#;($RUEhdDS~oVLF=m&y{rn&WjM?e+Z~%}gGhnm%bV3%waNfkGgc|k=XBnij!hd)3rub=e5f)0euI-V4_Ij>H#JO6EKj^ zm|m}|!2F4b{YbalX!jOiRaV?x&gD4ZH9ihKf(@NA%riBQOIdx9duhtx~i97xd8qtz1-M#ip1tJSjm`g;sx){zM5 zC70ffd$9d8s*T;xYVTlwXi6OugsoEnK*(kQegN<+ZU8h8vtO!71fBr^000000001B z?n-Y7d8qO7THlm47-jC_lW>OgQ4C#VF|i27>C+vg3up`R^OUkv3&|zL66I?zpRW>s zl$gatd5}J!5);w~RANHv3oswM~Qi_5>pO3r+t7aj&V9v zH>JcB6Yk%|KzfJciI6lbq<2laIQw)L>9F2Q*CU>f2;{o9bjIn!kscm3LVCY}9Hb8s z$U*vW?md`INbi_*@u*=TyCeW2*w@7`g(n}ryA?@k~`Mh?=4m|BJO{*yD1KH7XbmQJ4z>0^?P8g{&YKu%D@ z4jIS^YS`fdIWeeVhwIagK@B_DemL^o!Hz&K0cJZbw)~n|pFRTNlU))$*;=PoA^ket z5A$9V{(zkjMs{o8UOzr7n-X+r;tu;>K}o~rfqi(_xwu0Q`aiY4#SR^aD6HBS59Px1 zm=>n($fcU$Ty3$}8{p0FVm)$yu|wmeuWU~5_vS8FWGh?j(7FVA^FpRKI@9X6GmP$=sVv;kE7_fk;$DHiY zH0gR6*~&Fp7?;!bvGmUMsT zeT6iuHh(%HJl&LUoZh4w_Q&At^tdg9UqA6on*C%45!0p`_Lu3Li{Ne6IUCIz^F?n; z(4rdlcgL;u`1ROOP77@a+@KovK%5Zm;AgdW#hqzH7jdgrrA0ODVSpYvM4G1Jvjk}e z9ul)5uxU~a8_;LRbkDYbjBHg?{9J8n$EIZLj9!%rZhg=~Dw; zU|_dCtGzv&lp>Q@FX6wFtxv@?%7;&+eF`J@Mit$O#dN>N-TGW|4axzp z+NT;;FNdp<-R}{lMa}%c)V1`%J!M1`dezwCBd(v0#1=O5pVVr9@tr7&Xyo*wy`2iO z{f@*I4B(DUUCSTQRf2TAl7;${s@a6YyNnYnr(T2R?2hF&()Ik^i&C|{Be7){!yKEs zX5NWHf=QQhnR54!{a)&Qm7$HX+q;b1`;%&3HLQ5ju$cq7fDnCS%!#DOJ7d4kulr41 z3uxrZ57~kS(iYb1y%k}AMfVZqImc2ki$x$uzg7Ug)RRBnEBT2M;vlkDHXPxQTM8u zZ{BmpA%~R&u6>4GQ}urDlA81h*Iqa24ms?_G%RLb@!qh1`#q+TSUP4t$Z;O;&D{PH zs+f6Aq-V>$e>ZbWoHqv#074^5x1)sP7lh7C2QG7|z%my}O5XNC(~f_DelJXqR{A zT4ix;8|prPiP=%!81LoD`b}j0Ca(S;1wzW-{(fSf-mB0Pg+tNc;@F)i6u{_f|`{(ig#T%>zu z*tda!Y@SJE(`+_@%J$n2%OBNmBI`Gi_2+*6?Dd<_`lCb?0EGpBb8A=rQ=uTJQhUyWTHnoe%r0{p`KZdCq!jm?`iiI0G#Jp!9rGC0UyXVy?Pp zplcbNyE#Mf<-SAPxf4>zaIrw0Q$&g%Ev}p7^<#vWWc=eY%(3Y2k7Hv+I&+BFQ&~|I zY^`ELS4b%ozW{_}eX&&leAI+K^8HB% zLgWzv-b|~*Yvq<MAJXy;R~>G-@3nCNKZI{7Z4zAJ&6#`ThxW`#g@5wwYFhqnusd{+J@9e^TS?J z73pBo(exj8Lb87<4Kbnt+?8eTU|4?4_HLocWst2=8QH2h>1U-c{AF`Ks-4h1l~{TV zQx?;*1m7wWX1!hpZ~E8okd!uEb7Ok^$$i{F=t*UNkd?jGKSm7`5OL-0tUv8XOEV|a zN=H8cM2jlyOP=er(&?b4?8#$Tf_@4CLyHdGrg7%$(LzTH`P^3BrB=k=litD`-pkFe z0@z<2XrW!NfHx(4(i}l07ejr)M=?f>Od0D`ptsE1sSB5)mlb|g(1CBF1-)sR+52Uu zY{@KO!StXh2FiYT2{@ZfqHc`S2svu*HU+qF0CP*} zk-^aVCko!Hw^V;(J}I4Q94+Rco0uCGUrh_-A$(Kq4Xg@!H<%R1SE!zn(Orcw;jqRG zsfT5rQCtCg?gT4*LE~wDxQ-9v>WUP{zo5$r%P)U@>2Ve=pd)zV(e5QW9m)BPB#CG>9D#(8iT<@26&F#p30JMz>Qz)fk_)cnrjyat=Q7U>Q$wv?U4L8#|8975A+FWJ53d-(&|1a1cKEY% z!caYFcm$P^v*xA=x>^alyYy(HYB>2WDQ?enV1@YW8Zg3_9-cQe9Ir*25E&hl!*2zZ zj}EhmdY{alnN+l$t`U`ZZaDX}1BG&--t?nME7ZV~` zTE$l((t>6i>->1oe%i~VkfD{gV{L1XfR6TL^K*Gau<>|5-=JC!GH^q+Q>ObDJbcfH zW765P(i`uj$zR|*RB^3`?GQz%p$*bAb>HFR0K%h_CKKm)>i$+HWhRhAUSgMAG zKbZ`L)5WfO{Rycr*a#KWBq}-L_3ZxnD@Wa>hE?d1yT#0=l6g#zHKpqsEV?>=te;>NIloYzw8;7oWAVmW}`Rg5j-p2+ykg~gM# z&hIxoX4Rl|>{gW8H>@y^Wn?*rCy3YoBZZ~f##V4P46124`?sHfg`0kTj%WGt-eNLZ{Gs9&2 z7g}TmW}(yTI5+gTv_)W%BE}LFxd*t*;>VkN62=q^g~|QilN)aP3!5|h8D`g85_rFN z)lJi2*p~Adg{!3VSsjyiD0R({ug^NAl4He}p!tk4|MTk&>W)9?snJc@g=zg4Qgf`| z#7|tP@Ymb7i(sjaH}x3u-pf?yX|J;duUwr4QR>4?WA1kL(&MigQTQ&Mtei_#G)>fFGQ||dp>*|xHbqK0V z=YfflN=+A2c0LOt!pK4OI1|2()Hbf1>ah!_mId^WdP3mR7PVP}d0*ACr_U;Tbn|=0 zpgmW>EP2bx)H__yD5UYkC#qQ9ho^E;$Hd>1USo%ge4y$zj^YV%?2_gw<|}2io@vod zd{Ad6TfjkjjB0v#CxFE(W{yaK%vL1InUuc9Od~mhc7hqMEX#2%T)}nJG9GTmoFJTL z;#}g`j>QP?mEidUcSm9DBsmUbeoKwU=P+;o746xL*@v1O%_42x>ho5@#yF8DSd0TT zw!CJP)POE4+~9ejY$7Eet5R#w*jdQ;+wP(7fPug*_b>UmnraG|y+vrlUIBmSnxMXf za$i#h{b;lwo9x$|2SF2TLE~&e6A1DbwTJ;-g~rV z?Bq`d!E^tb!*^O^x;aP@te-XGGi7t_P%6Urbc#qa|K0?ME#0fi+oV;iFrTm!b}yy^+ITp=F2tZ(2hszle5$mo5~JqsDUM}FI?SYywKTXcOt5G^1|Thwf&lpmzr=}FlD zzl{ix-9;vr&y<|Q^OQ@fj;WT4sz>ZhiWbz`cQ^%FS$}}Yg~MBZiKR6N)_CDbn)tzz z7c)dubw}Sf>{H?7^U>g#1*9``gh9xMzq0Er#n2Zbtb3Sn7GB=|9#3k`IOl`>Bi-ne z#6O=ZquzO_IxNYazzN70JsEavS?h&AN6K#PQy^gI<6b0c6?R+$gci`m7XN+ci$71-u{|SP#PN<+xrMIf7_&XK2;%A z)FD$1tMk-_$8QhAZ@j0Bn94-lIb@1pRw1Xuh}`4b1Sk64=QI(d%%AARP?b*_2w=LF zts+$!E7%N(3^wt*;;vZppDLGUi;J9~IJui&DNqycS4eXL(-Frh>6}(YB1fweb^( zC?}%_Ex=yu9X(fPBup5qHpJ_;+6>|ZNJa{BAv0~WW`Berhk2u`5%=*g`LFh-y()-( zomUpe-acs6No83Q**mO;3Ox@Fl+xSB_9zi^MEoYY?nEs#a?dP$~alFkn z{xB!R>w;UwQ+@8egae0T3m?-HGd?XQ++fv|Z{Yp%FwwQAQu&wjJjSj(hP2`ylZ!A& zd_XZG&H*|dwZ~MQnZ>rR^p7^lix;0f^u%!M54;IiieIlr6i;6G?4c#svsL<>(fzq2)z%8vnj2CPyr<@F{8zv8#V&XJZdev)kv6~Y5NKe2 zsMYV}Ul8^(#=5&Cm53~dHf?veyoUaG6ZHa{fZCgd)bBtzgZBr{M=&*4wa6tuh9U5vbKHYN8SJ! zKbt9-qM&HNUA>7bxF{_+xXZyWOC11~rscUt1i_n81-qAS^bwr(drgO|H5Y(E6%kcx de+kHMLr%o|3Th@-i>R{=xMyf=P^IS_^?%PPc@_Ww delta 1559 zcmV+y2I%?x8L2qA$ z&p2~aypI&nmvaDtj@J+LC0aUt`f|`k-6vd9!?0+aKHWW9uu`i)pQokU<{jt@I&wgN zU%-)zg%0)MVtV(_gSgyz9J#r@cZO`3cc2rI1NxNEG4E?Z7bS#YapZtbpAK}Oqe-AM zWTQ_9`t;s=!kQ~*p&e2Gf$#0=Fb4VOKtU6xX{u&*Rj|4-d)h4 z-jDX9Xnp$4A93WyHts~^7BudpR@XCs?!n*;&?hwR-h4VOeLQJRmTe@n{N6nvrdKX% z=s@oQxIWIL|MNfe-pq@`k^4IAN7J?tKOTd0@KIhIj@&nq2eAHtZ`06m2g+#dTf@zN14WTf zZ`zUD*sFSRd8t()pWe13&uYW_(Q?%)`E-@lTyq01k<_<3n-bv2RYa~;+dPWaEOzM3 zd(*{rgnEXJ#SY_pZ+0!Zk{8Efhfi4cy;4O-9WO3#u>;UQ*qL8?iAv#G!mw?}Xj*+@ zTFl0q9Y&44WmDhkzRm+j?z`T9TNK|-@n(mqytjx1%*LA?X7k=cmFtb|M<(>%eAxFx z&+}#neSWu81Ba;32zxSiojGwfXPn+T_HJ0P%vpkynRQpI(4Tm-!w1%<-+cF-*p0j2Vz0u59i^zd| zJ?J>?>p_S4a?mx*SA&iRw;1#fEapTl*RrJ-+(~eb{wnR{k_Rz=*R@)D!8W+4qgQE1 zSHirs=^VLGmW_^lQ1c$S%bburoyWWvKqq-Rs`oD0&`sw}in|#p?y1UaD1UdMbWp&b zJ(XD7FK8^Wc^oQz*9RKDyN5c^(e$>xsK-a+a(DFd=V!tB(fsP{8$5=Al3d_AJair7 zI+jrWb9fa|{$rSbB~CTkRi+-{5e2b+Bi;h`jq=tIxCrNqvn66>%jI`ZU}g!qlrWy9 zaDnU63fD1AAY#`b!LwB64fkBf^LESqMTC#wz7K^3a$rPw@7Beh9**}0qSn=!r)u6W zk=p{wf^Htecw%2Qnz19R1{J&x^Q%i8$-g&$AYvAfP=Qc?4G|Y{OYeRlE|-l3-#HSrP zkKniu!5bB3zLSYCqQbgP&%oST)a!m&fxu7!5sR5|jCb2JsxUfv37%!3#9tj^9nyBP z97j+k_aU-C5)6m4&XA219D+JpBsPN(BKD3j?}#ZB2=k8m(m&`b5b>)P4od(4002ov JPDHLkV1lIv88ZL? diff --git a/epicgamesfree/stats.png b/epicgamesfree/stats.png index 8cd1e64d777edf5d0a9af163d782fbcff23e476c..2bbe946b032502e5d8e3adce2c57bb93506ab4c0 100644 GIT binary patch literal 3472 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 delta 1324 zcmV+{1=IS-7RU;a86yJ#0019Did_Hz01r@1R7L;){{R30l>^kgUgY4k^2ziO(~%(; ze+1u2L_t(|+U=cddxIbhMoIDi|K>ewYYP<=xhRnHe%RKnDb8a;s?hS!%CSK>e@81iHeNm_S#!5)dPwAe?q{GtR|H*x!?13rBS4?e(@l7a z%|s?#IGYoAdLX!QHnkqPQBlHTCO7CH`@<5SB#llHRM(F0wPVsxPvqe+An1jggspm^vP&vEsPWue?@aC( z&1MH^v)KXKd7B-Eg?`1@CIx|eb8m<%d9nlUodRmR2J7A5EoIxc?AlO6hjj*DNif7wC0DN2Bgw^&3W z!G)31Ln0SjLX2jePba3U8=N7gtAlPI7GkQPFCfiLhNWZ#5|oa}rQ0e#LwL+)Ed zb75soCB=N`L~<3y0|TCZaX)iUt7ErZIJN3QN27>`v7vb$f69U~ofzssN7Kjl3Ozm= zk$b$a7l}Q9S&p_#ZLKB2I@hlJm;<)1Lp1t-?`ipHtAlsj<{pXcmnz#@I~_^XI@hlJ zm?JHh{lD2Qo1*{u_>AoqnKS+wi@r>=_75exi>_*`l5V}VmAhIlJkv+VE&ET@{*)K| zSpU4NZ5^`Pett}PtIwa3tn0UI3R*5X({gm&(L_%C)c)l47qS*}Y#p$ZvDe9iM&j(mIUiat0uqI-$X8+w^naiN?JB8TjrLHDL4dmq-tyiA;j1_ iBD^D(P$0rP>P3IQ;SZdKqLlCe0000Xf1~ve& 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 diff --git a/fireflyiii_data_importer/stats.png b/fireflyiii_data_importer/stats.png index f7ddf5dea1e16259fc07d36af0f541da2fb95157..2530a42b3bdf504068881c687448774e43b84e29 100644 GIT binary patch delta 3691 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 diff --git a/fireflyiii_fints_importer/stats.png b/fireflyiii_fints_importer/stats.png index 25edf0d7c2bbd6c3dffc47194ea9e5a17337fc00..89306311602cf39b03df686a164bfda48e866dfd 100644 GIT binary patch literal 4026 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 P00000NkvXXu0mjf8a0H{ diff --git a/flaresolverr/stats.png b/flaresolverr/stats.png index d04a803fd4ab6525a85dd3b4721887064acfbf2b..cf9c331949fd39ea95bf90fabd7b99b5629cd13f 100644 GIT binary patch literal 2661 zcmZXWXq=7vk=Zn&VJ;}R&Q3;{CCynLP)_uTL2eC~_i@1FZP=cb?ZJi1LyPYnQo zZSHP|PXhqxyPR{kD##;E_RT@Qsa|nAM*sjw>pu%bv4-dafSR`Z;e(i)PrpqxSFqZ& zfa!DSV>YPQ+gmC@y1T%QZfs;^J|>cUC{fh~z4H(($Ue+}ES&3uR#Ub#_^Hy^I7`Fb z^Lw@BaNh5K$q-Ot^^}U%j8@Es-{R!Q>W^$T`{w>FfFL?-2>^ccidN~!;y|)YIt`6o za~u!cg~lX<-Fbj+4hsZ_)++|P{d>R@0wKDJ_}rd4e%0rW?fINuo*{%dyXsp!!5udX zYi%XD@q(Y*uI=2Fc3G^T1hFZ z^F#@l?R!WbWYz1E1nhDHuT3;<=C(pN(ec5RbQ{63c?0$Ka#vq=`+4rNxy;&;#`5o=z_1LKBit1j&-#(JN z$fos*yJJtsnnGiY6}+sxPOODfXT-u)6`h&*0!-r4l_){P62l?U;A&0PoGe4oY1<>= zwJMgD(vuveC4R}ZS|mz4DKAhbJe_fs*p`%E4Tb$D`z%wF82wk>Iw9Jr%rEbdf(=v< zPF1~N2*aHJg4=>mDA&f&dOR#&rtELc#{~vPh*Pw7{Gm|1KsySXx+&Ji9o>C=B%J#C zLb=~t@k79dGghR1c50HbKKzurIE)gC2Bs)WuZxf>Bp1Y?rIeKyZh*W&DsetRzp7K|xFA=Ld6yy(P>k6M^A`DX z2jS5$7h3%Nn*cKRy`hK6jA9i?koDeF_<8rdGuzob8O+&jJJ5ig!!%j5QwZdC<)Mm_ ztRf%go*m*iCeTPGa03EsoLg5vgn38l;xh$xzw1?V=|kiLTcR1iV|4W|X3 zy#nuS-xc^(>b;1KIAuw`!(&aR+d?pzTy?*dI>28#&y)KDxWfkYj6JvIOW`0b~=H=1-8?KpASa1vG^%Kl)j{&)R zan87@5OuC10vr0l{emY#w^MJ_2T6bzUU=j2Xe0}akEyD^ZF#N6XvNoTnpKRnMI0qC z1DEtt5D&e%lMUEVt^0@ug$1$35c=@S1X8za}v4XoED*c4$m+wNQS$0)%!R=!^3 zOEwpWPc@k*&Q_`_-)znvi{`!joM+`S++8`Lo-WfN~I@*uhGFmF3g_sZg0~YE5Y1=28vfXD> z$d@`NlpvMfBFZ-tUX90R2k>a2#GK{&9VN6!G@=ZQ?*->|weoEdsNV$kXXI7$ce{ZN z^~{Z^OSUTqqTP7 zVB0Yim8$2QuK7UanlVt7w>&gRjVmZr%c@l}YSBdZAuuCgWqe32L@4h~P1iN={~3Gt zl?1}En(f}Hmv^Z5)VU+5iyFoaDlrA|vYx&qc<-`F+Hm~7pi&R685&l3{#Wiwj|rda z0f1v<8?$t08Ly2N#Sjvo$u1lA8#CPA5!?!E4bt5h!LtZIJ)9K%9hY{ za`RXSk^KZ9JJqd0Z+APllV~A;UV=D}D3k14qmY^#cqjc4kmUbv{%B7!$Yl3T#aCW8 z){m%Q^;}YHBw#x?X>^xSrrrkH-a@F_hgKN?AtPCB_xXeoLg6qVoC2Yqg#CbUA1tp)=aC zPc?Mm7mWl-r;A;Y>FTXP2W+B?trLOQUoBy;k4apoIGgNsE#ZU-B?j^lBIV%Y+MiVt z9uq_GE611jBOYmyJcPKi4Ml`i&QN0J^9&=d@KVS0aiiS2S@p4cRQt$v() zp|y(`5^9%-j|+AcTvJgN+AHPz}7#>1$DH@KxYPc7FMc_ R3-W&>;Ewh@TyY4W`Zq?_NJjtw delta 1290 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 G5b_@wulYs* delta 1336 zcmV-81;_f|7t;!m86yJ#0019Did_Hz01r@1R7L;){{R30l?2qhVC3Dd@z}S+kC7o4 ze+24DL_t(|+U=c~0GLy2}ll5(@Ztp!YarWc9G`7iW-N=*tO#gxE4H*U<}fiLDa=f8DdC zZ$@@NcWvn#?mYq>>VAWN0=W?aIacHb4CI)n10CqNcc723A_w#lpyS@hf-WI_+a%Bl z)KVZCx{)dF;#mvc8LRt)6sgM4G?YsNVEx`ABG(l4a0Nk2lT z)?bVUa$C+E2k(4wMvvopzi1#=(0|t!n1aQU9sc=-`d1fBQ|XYJPV> zodUT`v=ZdLUIqcAQ-}^zZMrOUz9V43_Ytk=2N9TC8OsyWy z$}sgxi!%)^T?>>z*-v(8dVn!u`2|xiaDY+P2h`gIaw$_XOx@X&9W-leH1e<_m&OxQ zFaBhQme94>7=W_o=?$SLe`e80wiSP}Lqq7PCX9b~v~xy_4*fvyA&^UV+nBnWQ>$8h z8~}Ri4S`!N&Sb=AgmQ)R>CLiiIp&LhFYcM!K-W560qBNPt9j!zre64bdT4ThQELSN zWZBH#?>#plCxCY_PuJ>S0J=5k`G$+B_YVEc5RIvy!uj8hyt-arV z%lS%wX&C>_#H%#V)Tz~Kzhw&k&;NNfieA>P3;LrOOK%=;-5RjNcrTVJstYcHfm5sZ z%Q=w(?_i!TXDVsbwNaTH4ZVNJ^V1#OlmO`5Jg^va%G)h3f2qD-P+#idVQk21-W53+ z?x7BJ$ksd`7B;rsnyk(Agi~lQxKBj8MewF)t}Ro zx5~F}fA#AVEwBYWl3`y42C`_A$fDaU0+r?056d6bA2RC?nf2FhfA#u9YW-Q8C=fd= u5Y$oEYcmKT*4`2B9kGQ1;ogxg{Q%Rn4sUP4=)V8}3IG5}MNUMnLSTZJMxtl{ diff --git a/free_games_claimer/stats.png b/free_games_claimer/stats.png index 1bd0d3ac4303e66d4b3743bf8e1e32eeb7c1d2b5..d16c882a5a0bc5a3126a5ab16db57e9524c6222f 100644 GIT binary patch literal 3550 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 Jy5x2De*iD!38?@8 delta 1671 zcmV;226*}28=wu486yJ#0019Did_Hz01r@1R7L;){{R30l>*ehWaZwm@<=&L+mRs` ze+D;6L_t(|+U;H2vZNpkB$5CB=H0m+bq186KoYtiPVJT=qisS=8VCUZ0000000000 z000000002wpbJguj;jCzIHw^m3^3TxU&IsbjF%q&eEgy3;rCJ69u2gf7dGb+-Ui*A z|Izhk_e1N4yY&!l--yjg@AqbZ9$43Jf9b!5{xb6QeW2YazI!uvq!YZpA<|cWzBxo6 z*Z+3(zs~>d4`_ED9;-!{zw_m(qW}N^000000000006|SI<1aC}{sFw_F}KADl$d7X z9i-1$k_PE>>5a0a6JQ0xn$$rcN8Myd{TgZSs^d)s$jD5KF+uu-VoZ=ep%@dSe@`gJ zB#~>PL|P7{YZ7B}7R98~Z)owImILYb#F%s#JyOonLAqrzCW%5%Sh_MqZXbOelMdE< zV_7aH05Y*>Di}o|XPNVpKn|a5x?Ov0GNyxce`bCby~{>vkZy!?WaNyZ+O?m$cVy($ za^5Zt8`2p$Bxh`ME+c(q8l)TMe_Za~DKD1-8#XvcMs7yVN%Be{Bj0UV( z267VEmf&$R6j?87^)o;}| z{Ydwkk^4`1yN_V~oC`~<9!QT#%AW@&;e5J`T>SCt>ODMno}Zpj&e$%k9`m}yDL6k# z&N!R3dK#m%+jM(rJw0RTc1b^X-|B|-HY3iR$r%T;fRqjEjed@tbP6Uja)r-N)3Dwu zVN~7U{ zRo^&vX=)N$I=LxUj576H)wgSMCfJrsaZps+Dk}Si@r%&g7ExSDf3u7*^?rT&l}lZF zhTLDz6UT2iAzzu6e5|ZD!qgY;nh|okV&rws*jxB^jj5boid@y9yP10AMbU0T8QptU zFGaqleX+Ojt#W6FWHMGC>1>9LuHjql&JHFlor78#>d^45c4voU(#e-(xN%{9;brKK z=$-;ORyiYFL-Fp<) zvJbzmo%HxvvbD@edOTP*R4q44`isb-;joV}$%|r<7p+T=Qf-@-f!vnr6HdDsleGM; zdD&4472@c&$(gUmdsKPuDnuw3x+o0Ti&vtc13gVM(i0r#sO_#ji6y*0PFi%YDNR8- z+abHkKebD&f29m(jNItGD?pOf*Re(ajsZ3G^qi$r!^GP6%P>@K^vC@k2I#IQs$C$* zrCARBTQQim^xkvX_%uBFAc8q3vsM{&Oh@_x^PSGUW0;;#BNxHBNfCwaN*QpCsryNX zZ?{lzxtDZsu6|4pcW31A*{wYzmtEzb@O|##ldX@4e*&D(H)|D~&u8i2e7;$$;M|}v zlCE6pe^nX`m{@2idkQts9sxR*6uXCXFs?Ovr&gq|`ZnsBJNDNVjVP_|NC&LI>t<{~ zN7W=?eYgkfARTb;+iw{00gJpJ%wVM42F&UGm=le*Z`DDgP}5To_VjFZa9X~ruSSJk zNuOWUf8(pTDLNHPZ9dz!7p6oEm~522#$Jw>yR@LuSx-Nb5YbJw@9IKNLBl!^zXy2&gO}!0F)~cq> zYUstSvVk1!L;JF~F4c%aK_jtyNHsd`spCymS#?$4Q~tEPf5=Wy-^T-A(L!SD^;Dw} z3L1r)o`S5WjyF}+)uo<-peKB?p#%qjbzrL83;+Pgy#sLX03;Lu+&iEJ{{UY75GnO& R)R+JO002ovPDHLkV1gyNII{o% diff --git a/gazpar2mqtt/stats.png b/gazpar2mqtt/stats.png index 65fd7361cf8ba017e1dce8113323ad96034e1263..3641fd94f67f4cdf96dfa3dcf2d6ac7652e24217 100644 GIT binary patch literal 3406 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 YH}cuVYPNbT?SllE8d(~`^dH9k3p8iYivR!s delta 1523 zcmVa{!z8q33p>emV2 zPxj>8gwo%n&RTvk{<;^Y7KCZ@hABAA2~M`pQC2XZ${{2{3$)H2-p zoZi8OKOf6A268@0@1*Zll)%XuC;EO$>LmTk*>jCj$9*)ykhsS$b|?CD58{4K>Zq-; zIZ^sk;(ko(?vp6`N9OXR?mUo-LKq(_b>B%852Y(TJuTAScbP50Br`^l5b;Inb^vaq9KS860dLSlmYr4A_-8b%c7B z%#qR+lO9u)d_zWwJ{`4v{K%GL z(C{!RFpyJAx&qTa(!K`|f0Hvg2OSt=k35jBMdrioyZxnAMU;=S@79-Abx}UZzS~|} z)kgUs`)+w@RUhSp?7QJWF6N*RBka4~Vuu`q&g@+JbXTT*lzlf^?2vQNiUAhNWU+%@ znU6`Dx*%rht8A(%AL7)TCTE~vqao##4{_>kZ*~w*x_-(>IQ6zSe>(^#-2&w!oO;`v z9Uys2F&mT*aO#cgXmYm{lUl$a(y3c`vqKb9W3I%h>wivUx(}J8aDB#i`@wJ)&8As=&T0-4NKICm(3vRj#MU6isv9+rBIG>Ea^_<~e>q*G`;d9}P)-%;PGsIalv6~yADQ>I@3^oUTi8@({jRO@)?B zdd|T&(%IKOCo`n`micF?UoY&DOL_`K>QmSwmUMDnmHJn%Pble;oR?kP*M&VIYuO^* zdGS)*QP?A|YSn0c+Sj!_@%5T_b5*OxD$Q?`!7tmWA&`Iyg{%H@DAFCP&{ny9`)`{H2*mGN`s^BH_bl|zT2f~ z9ellP6-(QX^_Qp5@S**3AlUtohVJJot5SETnx7bae`p(gXc&CA-rra8O0b9hkFey)9c^WTs9G#@eeZq1vS zDle_>JOg%zyX%1Smf@&*rF*RJ&@;VnKYw=c{dzxSs;>0vI{P*}*p3X?+&r6TW&8ET z;bHS)Mfc0yP)_$A&h|cJ@V$C}3;JaDSCS|QW>^qpolreDLl6Y#-U*s_f+-XP%{w6l Z{{WH_5CP-qSgim6002ovPDHLkV1h=r29*E+ diff --git a/gitea/stats.png b/gitea/stats.png index c59335d620b85905dd724f39cf1297b8ac5345b0..67370335ba9b14b4bd2112175861b56aa6ea1015 100644 GIT binary patch literal 2791 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 delta 1258 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 diff --git a/guacamole/stats.png b/guacamole/stats.png index f4f698d4d0300eabc9fec6d3a66f2a923f72255f..23c6652613fa8e33a5665d6c5f60786c110b5570 100644 GIT binary patch literal 3075 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 CkL~;b delta 1409 zcmV-{1%CR27@P}`86yJ#0019Did_Hz01r@1R7L;){{R30*Pri{0MoTj;p$=dACVy! ze+4s1L_t(|+U=duma8BPMG5-<-+b?kQ(F}fEGQ)VJakQ4%5vN$#00@Pgb+dqA%qY@ z2qAlGl9gI(5XeTV(rrr8UNOp!UZRa0#)!fvE7LTP9)H~koQfaFL6oeP=AE^ zTsgHbp?f$2xuFO26e;08T`Tj_Ko01m2XQ243=Zf(w`u5UQp}N4Y3PjU=AyV{^j;dg z1AP?cOrkKzoIuVXb0$$3WX=;Vf3|Mch~5p}tX(Os0$qcl6UZ4fbSFjMCfAVz`Vdjv zX>vvaiw8#6kpub|&OKRAk6Jp=hj#AQYAVc;8``;FfSy`M4jdym_p&*1uI@T==o#l; z7|3zUrop+F268|j-?@{VvFO}^Zqd*wtr|3RN~`9gI7+MfA6BHailGz8e;GA&9(FiJ zN1!e|l=S5PeIEWz&4x*sCUsZ13z)fYO&|>6YYPo%_DYv9rUy zW**7jD<^q5UB_O#1Yl}GU|);)ySsPoJ)`rBe?xoq+P;~3y8qg# z=dnK->>tj>SsK%u0l#B(o*d90_UX4%pV*hJ7oYwGb^kPT)zE#P^Baqz_=z1D8zx!r zz8W(dI-sjSevB+*m6=whJ-JYgjjSmqgXh&Bh&TT9uFPz&1b_QptK!m&4IO4t2xi{k zO1KqzG&K`lQ%peae@5R`Iq|fEbPOHjE$ZpfHN|?EBM0*8bL7IisP|*(AUF4XI>@b6 z*}8nn6zJ`q9q+89f_raJEL-c>omEYBKzDtlVPp0^x6WYz{Tb+ZZd1^^Ui$^;HM_bc z^$he*x?+U32AzSs_uPAB=!9y$C1+Yg=O){lrDNhfT6)9Bf0}UWBL{MFsVkg%$L?Lu ze=ZlGPn`FD-FqYGFz-2fmqwO;N1WI=3RQdX8FAbOIvPc6=YZHT*Zgn~b)X~lzP-YT zk4EGkAM0gvul9L?$UeXew0AE0wzPXmcbC!p^xzW>Lf!A0pB{X(Q&W2I>Bm;()A!5v z$IEwe(*E;6f8_9w6mEK;)`!w^#bF9DJy$w9lp4Yy-`R`Y4n%{Bo&6*dJikDUoBZC~? z9?pa0dxlW+MEA12LUVfGfB)>kx9dGfDsAb>I{Q96Q`jGw$nN6VMJxNCf4mJgk9PmL z8cKHWF1Pnv4!%|It3hXWe`OK{Vul5RIvP4RgAgM3j&SdYDHI6zj(X8QdioE8bxNrP P00000NkvXXu0mjf)$hi? diff --git a/immich/stats.png b/immich/stats.png index 10c3992e28a398cfe5484afc45dea0f52b42f644..6e6a10886aff64d211268b25587cf1630d45fb90 100644 GIT binary patch literal 2991 zcmZ`*YdjNd8^1l1p*706Y>rVhmJX~n#3UU?g_2Vg>%e0uYYsEVNGfFH6e<-W=V?wM zk&NeId1%a%@UW4?oZIVp-}l4&<^6E|@B8=v-M{Pl--qkEuXsCx^)~69(g1*MHYf1s z01#W)oYN(L+r*b5zRBhwMLOXW2mrkG9}`Q}hwlPltA`E#nEjnB{!pWzqBZj4&jD?6 zGZFFQk&pHXLb;E>)kN0!KRqs7xAZW64&M@vw+IwPBs_y}GssPN<&&oLjU`W1aoWyH z@;qgl)xQ6pJYOL}w`F?z;XwA#lkBj@Xw8|H(ILaFD@R9XSS+3E8PdSqW%#En08O}N z1kl7YAm-7MWDqCIgM;mw95Ho^Xe_|Tk)Slm?E)aH@t;LkZY6797kL+DgAFat{v(c4 zd&`!0NZccRWN6!HLWkyVuDIVmA5y{Dx9Y0CCmP#kwJZMR^$cwrq5Eh-C{Y-EoLU;H zE4%Z*&RiNaU_G0raIV3$_zuyki{MH&9$rLnyqZ zF-w;ptCGJH6OpFdT!Q{SXq0%jI#2Z8h$q?tCZ0I#lds3D`&@U?nCFPWcE}ttv}Qn* zk;q$a@gykv=+TL~f`u`Uz76l7e_Bl#7UC%{%@aPG_LV!6o>Uti_I z7xWT3#wjWBI*lW zj5aLqX4hpgAk@*~k873h0(E=pEFGrKv9+-nt2fHPT;{XZ(z;LHN!L;~OGXT|6`T<$ zz>9X>XUzA%j=3ItJ<1Zj4n-5PKhry+9~DMpY5q5|s6TSBHqs!<(Zo5n)&QVg6qM{c z$Us?B5e}hADhN3(P8TJ><)T>~9Zv*^Ey_n-VFz}*M^z1q14jN`=IS1~uUGp^-qTCv z+nPN<4+6)jdYRJ4Jv(w!6Vmj`e&5Q?%syC~n7TNtz#=GnGSnL=XA%_QazdQq*VN{V zCNS^`L*0?GnqI%U_Niv_&0#T6qU_!IO3u689h6P|Bd;m#3aQ0Fo3lWN2N^F7~;6g17r=?z0y{ST z-}DYqQbyf0M8?gvG0aA?jB!NnW(FS=?5Pf;5$;Y;fJwMAWgAz57{7Ar)0#_Lb9O;wOYxjmmy7J9mf2 z1RO|JtxlN%k#k%>w~f&Rvu4~E*8LTo0`K!)eTN^+pB}gT%{;^`j2y(9V;)EdrB>kSF;uHX>o zz}X=0EY!+Y5V6Ml>Rz%wZ>VI@SX7UkZm&;lhF&FJ#KO$&gvNxN;(9yx+Uld(8}EVx z->ru%A+uZ>aaY#gFekSWcgG&<7KDmSqezzqsuycH1Wsfd--93)oXoo9hPP@9y{lIS&kfHc z>*&M2BKC%w2X)^D%C*F$hvW1D@3ewYr5*9*6anu(x8=3Cxi#a#jqktU4z=9li+~n0 z?QPF>z`sCqGQ(WjWgw&HtDQ_>=EGmIJMOywN{qelY!D*2bn)gx`_wncQ5~9paFFPt zLdkK>~sK_V}3u*CwMSA(|@P425I&0kpMr#v+k~q8%%1(+E*3aLyd1J z?ldvK%80x4`ivm;jr4#IADzdM+C7Y1Hl~{Ew}h)35gZo~5MsAoDpO8)X8zN7=^V`w zL?*ndN8iPkZOzqk!Sk(oTiCD-SpYxt&l{3i`{RUV-d${Ox7e-kll3iX#>O_TC zpYHDc-q4Xxqp48`6*liOOvy-50Y{!gn1@Vt2*xw#`{^$?In7PZc`OC7%Qi+F?Xqua z!s z-WKAuPH~d}=t%#swvPG4r%T3!xWzo>`LcyN!->N~{tasAOq zy;XeBl?e;gS}dN?5;uK(L6VG*o0d58L|TQABjEu1`)24NBg-I&>rktFT+iPs`E<-z z*d(m7wH@InA7g^q3QJl`Vy+*Fw%^S;rOMAj2(l3TI#Uh?JBZP0jYx;BMc(jQjArgZ zCU+a0=|Y|9GH^|I&d6}hm~%kV3~sUMlNt_Fs(Z3XrPD5*XXn|OK@g&MENGv4j*=rY zjG0XrpS%rtn&K;Pg!VY`laA%|%I0nPIBTO0sQL8L_nw7?l<_paDK%lUAitQg3E00}V=_sDS7&sl$x&HU)ruOb>DjVHggB2P#X(5Oy4cHuZ5iI_H#NX z($SM4F8;XKc^-uD`({C(_ZN+2*oVo--36lRXW8C4e!hlH6`(1Cj0$y zJaYF;O>m&nSgKklg^~(g3=#TtPAyEU=zo9eeo&W`OYG(y)8|f)SW5u&YZ;{KS@f1jN6=Lxi~=aBAkH9{cWrB6?iF2D+|3*_Xs zI;8ss)h_DBiwe|{nJ(CbbcY3-knXTx6Ve^l?#bS?9MVmZ{z~F7=>q937HrC9B!OHV=)0>mU6``fj;yPyQ`allS8+7S=fgI)?(jmQxI1cmf(4`Z|*|zQ_ zNSB!EGfy|}($h@IdY-;a#*v1#>C%;foCHWWpPErKg{C(U$EldwGw-l&#HEYo8$lpf zmrH+zKyrpS?rij)*YgDGcj>Ake+o!%!ljdugLH~0T)1>PT>PbGl+ioQ4o$>ys-;z- z*`W!Su1~|#>|oxd>y}o(Y7Xg^UHVRPMq-O>yLEU?Wlkri-`(mU={s`%hCtwD9-*x5ooT1sF!lc_fm_Oyx zbzQ3x0(I}t=U?8__R~l4=#KLskTZ~IJrTWAE@gB@g=Pnb$#t3?Fzz%vxHs;kVI3NG z>fT#xNWFk`0y%R9aF?I#e-LPPuph-KPj(nPTxfQ%9mR37gGb}8J=sBMcCa3~>*wi0 zvx9kuu0PpvJ{M)7|A{@ac{@&sj)g%4Rlf z&+c%c1ln*2m#gWJZk=;TuY>ZN!uA5B!+I{|-L3MJGjW<7>{GtUf0Qs~Ym@TrohSs- zOE026LHVYplZGv>}<4%X^v_0^jFtod@Y9~ic9DCJ#$laDnp@ais_$b_ zHT*WI>0j0Ddg%1fwOYeU1%cdhypZT@!o16Y19vk?-<%kmPjnhK@7IyOj-zK>ZvGKe zw|QWk^#1rNvfQ~~(4HuHqH^YkbYKM(#sT`2+`D^Nhjh@qe{H|O;{%JlZ)`{*sRNiL zvD@To(EMAqF(~9n3Q9@i4%g|or9~|U9TcU#e_6LLgDM{a?_x3=e!J2k|j$059VH!?xydx zu79={{El6`f4peW@P_h(ZoH^T!E~c?#{4Pz;ZeyzPJToCW8b>iAPENssm()d(5|E# zFDgq^zNGZq()J;>&b|ml7SV#NT}5nA2nPm*97#bZ>Bfu75_L*aP)K6R#u6NWb>J#D o0{|fR4lwV45(IPeEtqYXYeJUEl4Ve~LX=)JLSuVLwx)zvwqz%yVr(-+ zWK2kfFhjhC*I*Q;!Gv#mzQ4ckk9+R9_c_mfe)o5N=RD_uy{)D20qFw(0O5;Ba})rO z4X&Rpz{9l_dn;$To8T>^>m2|@-u+&XEHx1s0ECn;nwvRBc()pw1tFyS6 z>{VW8IkQBZPTUt)E46Brn&h09H!^WoASH$`wephXQB+Neuaq{UvR8KC{Ldp2vT=L@ zJ%VYM8ixIKI8pwX`2i}MxBFWGhF!>v2rZf#{4kjE+#bZX|B}OSf$Slf05A905cnp~ zi2y127GBe&|9$mIJ8yuBI1w%ee+1+nQ6CjL9F%W}6hC^H41JJ0;O|8A*zwr$in$)_ zVI0i)+$&iPyVdt7?q502`q1SeJbOHoG^7HUFX~W$Nr#-?2w{&&T zcX8~xRBHF5eu!!Od{Y{Fs9+xzVwyZZ7h)qP)7R?15Dh@MM$2%3WZ5|l95N@#Rs_8H zVI+al^<#Ll(#aD*%p%CW_X-07@M6x1e6d2T5B6pCJm6H|N=xP_L>6s)Q!0`xCHdE3 z0rKL&xAO(HCd5YHO)0_%08ux1rL@V0R!F&%FqI3tNMgG zBA52Z!q<0FC2N!ku$ViXA7k9OfSrf9XiVhGy9PAjD&^Ug6V;;#2}4qdLk>gWDP$1%h2`4{~8zx_*3 z$b4=O%|)LI54ve_D*VlzqpB({8ZDYQ>%W?WfTjEEZp*f@`Z^6^>e=G?G(wY2cr#<6 zN*hjw#-=uq4Ql7pxVeI=U)Bv+PT+}s;QC~S%yle>c8s#xIcA$__^C&0*s$*L&< zvMD|oQfuqR(p2L6h|k(N|_C^%Fm)8Ry>)`Q`}eEWy^BknZkYWre!5A6H+U zC59Wbd+*a2xdl#gkchddz%g~_FhcJ~X^^>=H$D>2KO@nlPBaYM^ zE~KJ2+wZG_P2C&*F0KSxUS=D55(v{~WcX{yFTT?5O60Mnx&qs#6i-GBl zPu#OdW?M^>O_kM>BNKE@lA?|WH?TY=nWwi7nr7#S+MZa!&=w}z=rTEjF}v747olf0 z>KE+xn|kx-Rk$$W!tEoCa5aQRfnN?aZ&HgsS2FV&4?1bld$T#T)KzwT_KND~el8Q( z)WWEHl7qq^DT>?B=%jKAf@H9_WisQ1MG0#=)|laaw4)Jw? zl8su9>qo1MK&}XAdsSV^HfE1XRrfRERm%)w8{!9C0$-bEMfpXPW5|p7qOplb!bqq* z6WmTBia`+VuuLm{w4fMMlaLYk@`-L6Ns>##zegHI>M~v1IUZ|c^ki1hOW&IS+BM`7 znCUfHkk}309r7cgWOB3GQs*z)SS_*e(~tO4oXgSoTX(JLHMTTAtDCp9*SpM9AoIK++Xr`a&K zf1z~4wje$$FBwK=xcg%Ntt_ske`iF=sTg9<{A~Oh7u{=cA=36mq-CU1X?c%{d4c0xa@aTgPWxgx>1aeJYDNP}PG z+vr69=h;DGI>n-Rx8ZiHuA$L{{=wr3D%@5zrxkUo0;2tcL))NURlmjW-)zAgIUZb? z;&v$biOW)G*^Y*505bHZlx(RA^zWIYO)l$eZ^>C4>j(arEEoFJ$Ly=lstSf*jncoy zNrenY>e9)}Q@ws*~WD(`-9{kw>21(p}bjTYKm7C znQNI6i_ek46g*YaJnYf}K0a$*V)5F=mS=%ERHtP~j#Je&f}vMZL$gZ2+lKtrUBwDy z4q4GS(sPaQ>uujEG0K9xe3{y9#+BG~Wjo4B^>%U2dN+GkQp*9Qip>+?wzM-)Pv(Tr zl}gB&ShxbaxC#O3c7esjyWJ6gM)bUg~ob`jHP-kLyo?l68M4=p%<7#WiXG&;Gi%L*IsUlZ( z)6i2Uvcg+y24!~{IQ)`MU2HO?br-X{KEi^@tO6+)5iYSQHT@o6kp8i3XES}FuMyz#VGPl<0b1PaxxcvT>a_L6>BgDQ9m1)uz!nLWxEFogsD z+vI1T8i+l;>7w^3hDaZ;2D6_eri9rj%z#uEh1Zx#+0 z16p5mCNyo~FzlTnBDIzSca9-Xpie7gAaU# zcrTC4`QF;W;Ps+}z_+{tb+r!iZ=wh*GHX#cy;@}485QO}e_z_MFVVvUNc!%`@+5q* zV_i#l0aLKSGuC-5xdhFO@1VQPk1bgntM+Z1DG7fvu!T=A&Ck`r>i)UHYUcmrOrVeD zsG0O+s<74rEK2e;lKy?3Z?n2ab7mi>zwhBoPUBp3RhD}`GqikXV|bhFJBnB(_lfu* zm{YjtviJASTMC6O_d?=zJS*AZ^!Cip`%dj8WW$PcWO<{ji0||_?}Ep$AA?1kDOieuj{z~>hZYx!aT(&54o5gV-t iOwYdl-KK%mCVbQ)Eq!bD#x!?)2Nx}D&Fjv4$NvYfsvS!J delta 1402 zcmV-=1%>+c7?lf<86yJ#0019Did_Hz01r@1R7L;){{R30l?2qjWaZ$r^4-*agOMQ@ ze+4W_L_t(|+U=c=ge}Avd8#}UmN6@ShLI@#*5JCtc6z-R?px)#* zUyYpAnt={<wR_D>?RYbG6hvAwPuPv7G_O`toRrwMe2^E83(aGs{* z-V&hSe4gg;`zgb!ilGb8Z#_?QIKHJ9Gy)`t6#6%8C&Y&xqf9G5J zk4uqd`v-c5%=3X<(%l2Scjg;?dMdI5dhg8h(fiW9FQ7xcL*@i>?wD@{a%AN0$vmD0 zy(GB{^b0h`0CaE6#}IJuz7)rBCiFmQ^@hxca58kmW|ir&DF?J&4Ok@5|twDw}~IZUdT7WiuGW zk&$y4#MMrs0J?!7jukErgE%sB{(?A4s~&?m0y&349Hmu)dMtxn)a-dUwt}1C2n=e_r~PvG6f45Ww}6|K(6bo48QE)Fe^hw&S6$Y z@yiZCw-Ciuj?;l|gL&02e>(u(26JZ4IAl&B=a4z8R)eFgjOu~FE|N2GeE%eEBLqi2 zzW?}oy8S9!9LEXj7yf4K;}}A?VV`ap`hUh_3h>(Nop$JyR?|(q_U+D?SFTSFCKoW4 zHRZ=%Mws)w_lh=rBK9~m{L0?P>6IMM^75_XcA!7n*Qn?VV&}|#e?wPZ>%$QZjS~X0 zkEe9)*<(8gagPwL;E`gct8Dv%vLi#f=FD>~-EfudfZ^9sA>G)XxyyR`LA;I_xSu@s zCy+bgI`8|ecn$K}_38ar*^a)>TCdS0v3tm>)$Sh?dPdVy)MJ{Ja1L3j+&A=imN%_x zw(-Iyu6FO;LO(a{f3?lBb$R~0(yC~tq~D6 z=HE^Ox)qU=N&c!+)9;gKEj`_e?}Nv5BSZu^qbbxBcv|~ z?x7BJWZt(c zdwkS8_gViwy$hC`NxyKM*)+naF$-m8nU7DKrHr;uF=17DJrrh&la%ZOh8CNtxG!Zk z`Q#ciQJBrYe`D22Zkg#$vF&A4o#cF5g3PbP&t_Q7->vRfV>U?@m74wB$$7I-eUd7p zrB(4|R2(dIxcqfYZM`2U__^1no3c8lU+kwalj@^=pcj~l)ShI@X!{g(R=P7x+vTsL z{5F~&&+zLgR=(rXp@g6@t3O(4OHUqc%S?Ac+FnNOOm&>y0Qrz05$vbUg3he^Xs=Dt z9W8IBJH@t_QFAzkY?R;-)RFnz3_^(9JHovqrcfZ{8nV&Ku>b%707*qo IM6N<$f>nLc4FCWD diff --git a/immich_frame/stats.png b/immich_frame/stats.png index 03f8613838919df15c128b0ae1be07d6a0723e98..2480838d05c774317f8cabe42176c9749d40585c 100644 GIT binary patch delta 3121 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 delta 1324 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 Hu0mjf08FYV diff --git a/immich_openvino/stats.png b/immich_openvino/stats.png index c65a9789b451cd9d63de7455162cf023ada308be..c381919ca118819f873f865635db0be1bd843b7f 100644 GIT binary patch literal 3205 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 delta 1392 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 delta 1394 zcmV-&1&#WY7mW*$86yJ#0019Did_Hz01r@1R7L;){{R30lmXM%pzpLy;V4xGz>y&r ze+48-L_t(|+U=c-cB3#1L_LN7|K>g0q&yNouww|a?wqsRCc!mf7+IEt9RdIV00000 z000000000`55-@qwY|8cqudL}4}^3B`g1wpan$c|e|N~D?Ddeaf8061H0e^7;56(d2Xmf{h>>bj- zfS>M4mtwJZ3DWO^dFt-H$KOgS9oDbLG`9v1j zU+^3%xG2`tqCu5jmSeZ;Hr4f4XgmuAZ%dP8b8S@;g=MugsyT1_o41?fhF-cT5c(u2(+sZX9-O_L7mw=RStVhnNdv`aWv$KOs&MS9zV4iN? ziL2h(VYluKVOX03dJ|I$BwS49)>?OVSgk&!TOH7w=IJC{uH^jZq-`OqS;vtxt#cM7 z@aDr2k-NKTpT4p$8%qD8%;#|VW_-fDe|0cFP3Gj&?>RG{f95INe`ecFNWVbh^E8D! z?X?BQd6>H9OH zaO6zt`v_BF$~Kg~53WQZNU!k9ubgw8r*y)wC4&EGo{W79^{sbdf}XaNep)`=SI~1jM^4p$>XK(TK;MOil7|R=k6_-rf0B;AZFukMs`QS-%e}kO z&A-y8l`}iiffY~~2iOqZ{csQKkPe2o?HxvZV3GIaSiij^-d{#+L{pujvGpe_v#7_orSiPxQ9S9F=So>1sW%V_m)6(Alm+E*7Zx)Y2wIdXP=8kN6NtXcl@B^^2KUHh2Ph-o6c zo0d?zS7WVeyE>@!Xjl1Gy)MLASFi2z8>>Xg<0VNaw^A7HUf0aTH0m0o7+W-In07*qoM6N<$f-RT4 AqyPW_ diff --git a/inadyn/stats.png b/inadyn/stats.png index 3381916283c8d8216528371675fa0bcfd15f2e70..108be300b3bfd221e48014fccfbcf71cb685cece 100644 GIT binary patch delta 3575 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 delta 1558 zcmV+x2I={M9Iy^kZP2u3Q^2&kgYgbum zks%j<1;j~2K~#9!?VZ`O;~)$~C2aoxmuGHP+wmrB_R|lk@eM^W?x+!x01*HH00000 z000000000W4)ov|boe6x4RWl1JnQ3M`uuqP1@@b^Y<+P&`+)VvNq?F4>*H(gpjCO- z3GZ)Jhx9Jzc>n+a000000000fCFivG03F1Crk)>@ASLJ^9RcYbCLUEGy~{a$jdTUI zz?yj6cH}f}B~nq%yBfSuPS!xdCZu;*unFlM7HmR#hXtFu_mx6=Z3UZd6Q@a6NN=%V zQ+MYPNN=)WQ{^^&hx9gG|4+i@j^GR^k@TNALkNNN?HF#g=g4Z8l(k z>A&fiNxo$*%f{<$(CvS$7MH0uEd3bc@D7m-WATn05xIL9|5E+`!58kxu};5AxF3Fu z+h?a8(&L)AUz2n1koWdQ{fG6TmD7_TeNWWq$m`GPeLOOhgCtC-6sVSGG8 z_|w!qj$9M)mQ}c`D$6Eh*)}LQ8L#($m5{#J#zyR2F2r11p`@#<#@->_=&P6J%h~31 zNDp`23R<@5UXIOZ>57S0A@FJ{qPTZ2Tel{j-IpUGm%+rdo4Top0@80W@!YdIJ6w#E z-&qEcEAK)?&SsnU(&R|3Rxp#_tjC%39Y-$tOrGC=C$)ODAmUob1qNpz{kG+QSxJ++ z%3(rneX9TcUJ-Tsr0(mO(>FJ>DWYD9zH8`Vp>2~MSJZRsyWNp%-_oOtdhSJ=-I3cS zU5U9>q3?<#7dPfsq`niJSqOV-xy=!uf%N3QTLJn`YV|#n`#gd03_mndt6669y!uXR z^^D0!l3E>IL9WGE&IU$pIJN4B zqLOF)R9l(7}g6YBfkNfgCp*<4uZy03!sgr25~eYZm<(l@v} z+N9#07a=WBWj=j}yFJIe9?BEydnJzCxXaz9FxEtQ!uU+U{`3qb&_@&Z+A&~%F`Swx zPq=8aXW5b;9(d}=r^SJPDbN3_Z&DB1s+^8=OUU)F?HfaNgr|&u8ipJ{k}9=Yr@2<3 z?<%4Bme^Ugu~Ks_U*9z}pB~+j8wQaMFY)Ym$rj;?9G2>3lRkDflcyK>@<{Je*V77o zVWf|}>UvUvFDUk&=@{k?1-_JBtKF^1?-BU%6_2XW(nm~OjCq$A+hMOQ`>s_)-8`*d zeq~oDV!hNAqP{+Vt^2sI?BYQ~(6HZ>DRu|xi25Pz%hz+`E3+RScmwJF zp-^%C#K>M~{LzfxMDf#S+ZJ_Ad$YrgbWjVpj15S8_hN$NXCWJzKWT9;ZK- z)%MeY=+A$|(EY0nf2+Gw%})$oY=alW;G^~ad5b6CyybHB_i`V7xIWpDd!E?IRVEMS(e6#y$8UE?sV$1y#wSOP(lHacTfuc0hwA6Tt2~Yj{pDw07*qo IM6N<$f}Sxc+yDRo diff --git a/jackett/stats.png b/jackett/stats.png index 382e9a31d5392d4ed472deb10c20ad4db1694229..b64e70921ed4a56092f25e76280efd0fd3f9ec69 100644 GIT binary patch literal 2487 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 lJV@xU#_>N{0)RiXo|ni5sf& delta 1196 zcmV;d1XKIB6UhmX86yJ#0019Did_Hz01r@1R7L;){{R30l>^kgU*zGo^RQxG;eN4UP%_`qF1_lsW8AloyW-&LRo+@1;a zfZH>H9&mf6GMxbWSlcsin<|DbpnKe&soe)Opu60jDQi5x1Kq*z3+S<+3!5Gef4Y)x zSS?o<0=lb_z7b-x-GB@Cbm)Oj9%x0VaJ!o-8G3pX1<-v%w-j@r zJBOaM*J2Ze4IWvo39Y6#!m^MXE#87h4(NndV?&n+t;U1SNH?dERcv~|cni>h&O$CW zbQW?Ep)=CWX=D|f9?j9@Zfr{O!7}s0te7J>;QBQJH&?0VF&XXS*<(l0CX3wcigZ*=gkg4C$t(5I!XS` zWn`5%I|OvSvycNiZ+3_dUAD7_3g5fek)90Ca8%g_kE~WEB>=hy*ZYAtI{@7|^dlo3 z>fHy~suBW|l)(K+C!TITemBGoZ$J;|14GwA zen7Y09ddgkedDx4CMyBZyZ6o1#nWfUl{X?TK=1yE?Es@pRsx`RZ_a?q?-{dG{v$*!0dL+t4N*k6b{L4)k~?9q18Fe>%_unslHCH0eMO zXwnb(-hn>4NhiBhu(OMd^q7--^{cdj-p?BD_OMIWT>|Y z8rb(wIJZwJ);;v+AZd5ozKi?AfqhQ$zz?8ncMfZ%C+%|@KUpQXbwOx#1|9V;+;E7U zPr;cpf`N_#%xV4gyEpFuM?8{d9x_Vvh zpN~$hu9~jb)UNDHbbAs^>gpbW_b#Fes#ZEBrLzoq;&G0)@1qYGF>~DA4%s83c6{+Bbs`!uO7t-Vs|U5Ys!lUjG2Ymkt)rTf~0=0000< KMNUMnLSTZo$dGCAfx#wm&JKCHUlM@2~0H+bQ zmbU-^;5R#@}(I$Bt8NgDp zuL>M5DVkvkvujaJwR&UnN##f^FfT*dRPeiaA#*|M4+TP}P=1*gva$ zt+tle(9zk!;jX03u}H=f`(wo7iOE_g#;!5I8E@1M2BdsbL#KccEPzlx9Vn(o5s~juT-&M`o~_GvVGM zfOB;_+zO_cJujdzWauFgo)L9*nx$2%Z}^@O>on~4NX03Dq0@|B4rWeEh}W!aWdFkr z3Hd*ywQ$@xy&8f8Ajl3+*D2yno{QEu(R7#a)_e?!f z{gsY|t5~+uP2m}X-{8kFjRYmLN@Fg^kG1|4whv({`^~xJDZT9TqoLw2=A(sfW z9&dgLXficCfm)PINu!(gc5{8XQ{K9TU&e})?j3eUo1w)I;4OUS2Ty#o_l2eAJElnqkqjgxdjL=@ra5wViayf$=&WxQXc$(iqCjK2LoivpzZN<0 z{i_!%p}3Y+@+8gzIIJ`BP^&sWY&K%=^oAD%NgR7jsPV#vcD+5Yhbmg-mslCB`M*tba41B5i&q04F-QGss@kdo!j*`eyo-k@d*teBGVQX5Og zwJpHZSh1KuzG!Qvb1< z^s+sHhz3D<2REU8+f8k3@*K{-qdp5;Jk4FV9_9Ykk z;7MUnoYzUsXuhgQbac`JK>inLK|r22lnvR(j5yf0bCES6mU$+ZOd zq;iYMwYvJ2EGyn;*mFD`e(KZcKFmu5qP5xxV&j3R`sUCiTLPUA_Zpg0|A8`5DaWu_ zr3(I`Y=T%Ax3P_|D;5_M#^@9Kc%p*kaY;QtC6`x-GdFe?V7ux|jS?Tcg@=3+_;Mzu zg~iQfYkvlMc(?2A%WAvVxmC+3oJvvEj9FW_g^wOEU2+EN#*&9N`o1rij$iU$Qmp?q z9n{=&zIM}ZOR;_j?%aO_rd@V6%0o;beAlJkVI_@#YDxQx1G)dC{jQp0oP6{Fr0oEi$gfSMJ#qe4~XFEt}hF zp1iZ-p5QbmWdyd9&ERWVc5;%z>*9XuR>HW-OW=PXs$HV!!P6X8EekXj?4q3h4SRqV%m;&*(oxZp?oGXf929Ca!{6Je;P5q&Fgk0Mn8%%q;> z9Wxk<$65xp?&BK!^)n+J>zg)^+Ysi zT@`olXr}i^-1%*@FonjhMg0BZq#Y=hlWf4#ccq(Sux~L~TXyNd?>Efhg#PW|jS_|* z1ac$^w-IiAowtsCG@0zDZq+i&)ubLE7Hk59eK^fk3Rv3MCiQryx&N==kgoQ!qS;mb z#KM)Oh{k?3dF;_xUY`AI!WTcH^dMn-T0Cg{MvbtPwY|7Tws|sR$oBQ?j0^T8=H)~W zbt_3XV`xKlQ8z)HhAd2)j&X?UaOixvgCPN5-{OQYtCq<)#j8E$?AN z`Azk&mEo$Q^OU=3z9x~a?z|48nCE#NFfM^n{BrlBZ&NJuAo}xz%*?Auwlh-Ya>21 zI&jbSlTd|4X*cp>i+LYQ{5d{v2Dn#Oy=L}1Oge>T5X>5e0fY|BJ2C0Cqikg!|2GFf MSUFlYUH47>8x9`@<^TWy delta 1316 zcmV+<1>5@j6Tk|P86yJ#0019Did_Hz01r@1R7L;){{R30l?2qhVC3Mm^4%aFEs-G? ze+1V_L_t(|+U=c-a^oNjMWxvP|IO_*FKnFeGTm)bp5;$6zVRa>vDKk zefRXR*CSW`{6+cmBOKlp=#Cff;Zs0He+VIj5JCtcgpjnAkXQt#2~oLc9>k$F{DB6D zO#^+Pjvk~SfIiZko`J5YeVNlxx?00&HdAFxY*j1WRPm16<%SAL_2zw=51^0d(**i} zK24yH=hK|)K|i(`1N!wo&3XC`^qVS%uA6g9t<^iK;L{AC|GTG0T|E_yi}vZzf4bbK zSrK}IC(xTzP3Y+`EYO?NRI{fi=ky$OsJ9MX)i$NDkZTh9Tysum%QhNxb2}+p|BhX zEVyCCgNFi-+<-|of-^t|I?#bG9;2{8A8^NZWS`FJz4OuCei8*9xxt`gjC3)j?=VuJ zJDt*ZPomI6(4pS^=&oY;v;%Hf7o)o^pU#%e#pupHeZ0|~&!+>Oe=OS&Q##Q5WIa9p zX7giH`hnp+V}}L$`5#`Jeqqnk<5yR$yE1lIptomvt^j@C4h!_=+)>r`;y~|dxn5&< z--QnK=9%l!*RYVgVLE?En*lVSpND+9fDy6xwl->4bWEkEyV|JH({GQcJvEiZ)aDu+ zHO_l)1oi8=4Ew6xf4mwa?F#z0^*1$5bG^TouXBt2>-kx(gRZ3n!-9GhI18I4=7Lu( zUSNF(%!~Jw;l zrIn|O=W5@%p1Ac@>08^S{LYJxnA30u&}9|RYr0=NyqncSd*yqz6%^0kx|nXgnaZWK z(aTovafPyK$jCjnbv-U_EB*J>sm0ZD>z2~Sdoka+sTs4YI9-e{pBh#VW9xKLaa-xn zrPGR^eCw9Vb`7PijIycKXnxS>;kqfbcwk7C&QxxAN2iM4dF$u4%jWeI^!(~RS|qIh zGr`s1h|%Qr#lv*zOyyEo`9|?OZ~ffLrLbL&n!dQoI-s`=->-+D!&L8Jo&+}a8+~+yxx}W zagfjJyyZF9+xaWggJB|MNZ0zwn?sWDTfD6z!st_ZbZi2z{@Da|Q9&p97T@U$Q+|e) z3qF+$&G>uq7v2~s?*q=SPND5;vRvjORkWR@Fw!4qRZ`6KeR<8(YtZ*8TFvy_TrzV6 z{nU);{_#oICv036+|CUujKEKqvjLT0pTRT-04yjFS-zMjzyXh>a4vxN1P!<<*9rmD zEbG|fA8{jrNUr>^OT6^X3{|_ibnl>c*ETc&(mK(rY1=gW6jO&2RqpV^y03`b- zqSmgtYuw`io{Xl}fAZ%7t`EHnoe;__7?J|2vovi3V#eb@b~NV*!@|=2FVR05ZWI9+ z9Qs;@gd4`s!&oGsHQ|A5?qgZ%#+i2NcrQYtBV`+NNJ29LO7^kCT}x`|rFz zwl+>){}gbbidjA+v5a~))x-{XWqP!sr)w2y>MABp51*wy$F3gavS8gx&hv3xT1G-Z zT_H^spE~lAU?P4Q1DjWsT_jEWz2b08Y`ksq6WZp~V4vUxMLS zq%?W-ASr(jYk&Bg4Mv~b@Q>Bi;atU2S13fExOL4KHc?pNTxl+S=~iBnd)L!PZQMw+>`9q>J3C(vlf{psM8*EL zYHXlJEZO%|Vlo-Ga1G&uPRFn6jNDy&VBl`#<4`-OAv@}omFw{O^6MQgULs+4ZKwexbU-3H@?$s z`j%mZZC&W5J4ZkAo>Z+g@PbwMKZmDjaNaP-3DHze67HNpRxoz9I&4;BW6Y3p2D1rg zu)>6To}wnycEJXoKR@nIq+C{44jjuzsCT|h9W;e8R%FADteIAuIyM3aIWLofi(Mbu zequ2tP&D%akG<(4L|e4P!LnXFK2RcRwildI2i`K8L>CMn+EW^}CQN$7;!_x`gc z#-EL*#=WezM0yA&qVPYzpZ}$5X%Lx*m>5ulEJPOLBw*T;4Tt^8`~;pgc*Cti_MGdRzx9tZ0Ow_V>2w#*Mr7NV)1S$J}y4qia^C{VkAk*m#)k8&bjP1ueb$VrZo)W7KjS^eh8@@h~utt( zcrx4uW=ofpC%X9=Bd=S3oDgoK;S>{5>#8~Ng|>7fsbGU~@tP=iU-eGnOTHd&#OwY7 zq?in~y!BGAI6vF9^yL=__cI|LiSU(kCo&*1zr70Dzw3OYeeUWv5;XtV*42$Mx>0H_ zHiOdZt@pI)k9Z^W;1_X>qCH610Sj^>O(Aq&FD=XT)yL2nnsZ`6odnOhGTuZL>p+oX zn$lv<#ryO^l~Rz5h*!%~E!gkVJlypmnrhE7q)bd+{HkMydieEs&bd;b>b}AY3X4j@ zk0}O5NjKi!kRjN_3|q7moGRLS^r7SZ_}V&)X)hyeH=?mrnOf1I91-Sm0bM1@BciAB9E3B(?d>E)%RgWIfkbPQh z;Sm_?OC4zSOAdqOEjTpGxR(gM7xVC$e2$o~&VzG+cmCmK1LQz`uygidol*VJiV+m< z9PZ%uNXCy=VpPEg4jRcYVPK-A+?5Qxi=-urWO|X;!&DZ(4!6wi2nYr*v|pv}Wu^;1 zWYU;Tnwy-{ja*53$)`RpyccPFsk zyoJU8GP)kQT-~9%-PBN5#I_p?V#Q@GT%5u=}*oe4;_(* z(ucpPAcIuo2dC>?JmBg16ku;r7xXG>J$tseXLiCb$b)t6@Q{pBQ04^p-}x+Qw5uh+ zy{~#|xQ;d-(Tm2nl$(#J)COMdl&|lxWnzwAP&h6Hfs1_9W_)`$BlRv;wkOqYs;agE z1jA<9@&=>CuO)}qp@Ic$Jw6vqu7cCoN=&nae~X(O10DxepB=bM zbKcSIjTUDW>FCB-8q;20Vt;3L;R_~mvK{Z>h7`@V{X>ANKk6L%iM-k#HukVIBRQWp zu*UvrZM%YQuWxRixNPWjT-iS=q zcmvUv_+{-?NEtm=P7Q`j@84A8lDddnrre&Y1l$h|4H zT17NooH{>Zp>+Ih>BT3hb%_P|W=D6oJzleNO_RN*i0k{L4SdRK?@@?kk&Ka1=Efm= zLuC!dxY22=D)1rR?$zRBpXWg>VZx-)W7cCVGfX~^A>KBKxM4Umva%B*PgKP?MW5<9 zSf$x}Oa4R@gQg>&8mpq=ae3U^cE3$@b#VO9JK^(`;rjmfAciM&wMgd!aq_Ov?x%oT z{Vs?Fe6+r!Dk^nT077Yw-W|FuyKFZz9GrDiN7&l(UR~z$(vC81W#=n*3G>L?177>P z6>-_W_svU1vSLnT!gfPlwPEZwW2&)pGT#*G%hw^`CB@y~zMZ2GbKFHeVs0tF?E+sT zd$Tk8;`<-UuBeM)adliM#8FE0Z8D3aUC$4l2Nw*)ppmCWTBpN$7!}|0*c{LGR30bM zlC5Ftu=q$7&p|@|BRM{SZ5UEr@^9hw}?)fE9e8&f!$5LuX7%=>a@*cjzI%ZrBA0@SvmCs(-F*&U?( zrdG`UY&K;I-K6-N>on3>9^HK@%}LWCDr~V)XKr7U6r#WowDQik?|8aaLlQspzVP>q zfpI61_if|;(j;LjSY;+QIxhAuOUn}o37jxO8XF6wSIfNi&i^%}cvu-A=F&R#mh5B~ z7tx;L#Hd-9wfhd{{7e(;OhA+B+m@_ypC~&ZNWJyaW$op zPS2Dc*Tn9_KIYmbvN1&Zezq1>uKlcr2j=zfkoi@gN};g|`?uGmx5A_-Xj^cm4zoqH zKyAo!`fL}X`#wj!z1yIv`EuAft*V24O7`)wap5w%{S-e}?G_ysrAvR&EEY*eCxN|LbG&<|ysP5cVQfLe4jnttK7Mf39*m zGU?t{2|-V9lgnmd^{-y3S~A#4L8Xq*gNlsPbLj4dh?Z;6Cc~`C6Af)<|p{Ap3O{DdyN$kv%7M+ z(`Jv&?C;GSb&HQoYX_!&J71ay(7IBG2=d?r)YeP`Uf&P=JiwnN$!x}e^HvU)<>pr( F{0Bk7)TICb delta 1554 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 delta 1568 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 b4~Ng3uh;r0baHP0lLFXST)I$U?wRy|DSSYh delta 1555 zcmV+u2JHF88LbSE872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&78^RY$WonKKb zks%j<1;I%~K~#9!?VX91q#z7Md4>M}FVC5_7Ewe|l(l$hw%%esjRgPz00000000000L=5==|2yDwTM3T=bXkd*&Xe|8{K1~fgrud*yDn9 zfw~ZD$eB-^IVz_}w-FhF4Z2BIgLpr4Qkh2Nt9p-E*^pzmJww%q^CJvJ> zNN+J`Q^5rqr1xVN#?J4M-VW)0=ZrbyoB`EH`a-A6wJ0FHLDJ>F1nG_I^x)b7(p!{& z^yAYztk;$Rg&~KepBNF4-jX55Ivvs>o#`FYd+^9XdJm*Cz4t}B%<;5INXL)^4`Enl zN8A-<^X+AW^enLBAM@j_q-$$08>HvJXy4r1q@>HQ=^?!YyoRsD+go+IjCU^^q-T)x z!T<9$>)m6#|B`NrvgOw2j(McL$kkF|;@TLE_a7#IS0%>ckLbGkNlVWK063 zt{6jZo+*VPXY%C9q)_TOXX+61*AN?HhxFPhwp3rJV%6vSPH%Dl- zS|PXNYdD)YM`*Q9!bdw?$ehEFt1a;{mhc#*t`uZKdU6pT%++Lgbb1v`zi~#yT zW(UIt#yckRi%iEW^{5jgCBp`P#>ApM4(72q+&R8BUd9LM&)8|H=Jz<~jM%`K#H%_E zCQHcu)SDf|2F9lx={IV1MZMX94U7pCxiyb%VQ%})4zmT%P0F%lMIJBerf!d%T@ii4 zeObFAj}`TpH#?L^`j&nyj(B_btR7{{DFv0vHC@`Y0gF_QvBwp8@4jR;_LfhpoBdXiA zI-J*!^L5=vZx43_JTJsXOFR%b_Xb9r_hB9o-*V^lv+;E0-PU9uHG+47V;*9wApBI6 zEfeWauX|4DiaH3dhxDO;o(I|w=_)4m8>D|3pB^{lB2&LX{p)ngyxtq>wkX>T(jOpw zfbz#lS7y?&-g0>4GDg|3-f~HLwkR9cTh4c_W|4HPx9$u%thXZHs_fa!Cakx{U%M%@ zN{<%STkE8+H?t|nu?yhA>D{xLO*QNS02lc3Y-YOi;*J@Rgo*cS!HhdRH>ib$fv)?xBZn=;+)pP#1We127!<+Pk`kbw~%z z&+V5qKB$-XolGfzxz1WS=NA0Vu8_M7)UtqC7Fbkj+?B$rQMZM^BJ0~yunA8$f{pCm z<tSwc<;^C>hxu*$8`8EjfKIX!Ln zd#&$bU1Fz+BUNa-ii*3jZ@oKB%Q#}K@0m0U(zSY8TchoNQ$V3MoaeQ54~v1PxF&p6 zth=GTZkU~JL_bQ!HF1EAT}l7VAXA6Gzcu^#`Eq{A%s+nS#rgIqr;6D__qOrP!Jd8Z ze$@JsS>8ji32zk&RN?Q2w9^gkbt7D2uL*Azo?i%uR%JW`+AN3fYPh*mPDrQ!)Pus~ z*ZF?+QQ;C|z9!b)SlvXRidwsI#4+qO)0RhzDrCsL7X{ifXx5%W8E=7*sVFIAzWA#! zSE{JA8*6KwB^x0)0PCO=-wXf%-#cJ>2c%E{rgu;l{s9*i5(b@NdLaM+002ovPDHLk FV1f~W3)cVu diff --git a/librespeed/stats.png b/librespeed/stats.png index 1803b9a749b56b5c1d93f171bc57b2a10df7aa4a..ebe2c814b334410c3484c71440644d71c8d85c10 100644 GIT binary patch literal 2887 zcmaJ@c{J4R7yl041~E~#A(@mmqVP7vEOyz6C=IfQ&|n4=MvEnDBug1f#Uxo{W{f3U zSwi$8HDk$SX&5iEFY}w<`ThTU&biO?Ip;q2JfC~+eeU@r+E|&03d;%u03dqB)X)w9 zK!14nnIIo;FXb+3@eZM2)9WDs0O|OzfwGh#asVK_b;VH6KK#WZvnlYXiB#N_Uwf<& z$Uhup1#6Fm`Pdofym{Rq)MPdHRuQSE+ggwQp&(p1Be8TAty=Ox0kTgB3k^9#WJ z!FTG+hq-H`rDfybxYnY`NQjTtgoL%DqhlCG89=)ruhRj581qmE@Jt8>6Gg;1K>G1E zc|hHe%8!l{!~l5I}DvabcfOOMyAmKSj|3cnmveu-hP+du{@MQ2$Dr8 zz>v{gqELsXT}RM)9((?>|IfTDgv$28q?NaPCmaDLlLms}8Bw13B^*nDXo76VpvJO} zxPsh_ZV@;tJs{w%AeB}5$+MKeU+9F>`yJxRr2CfLs1aW8A}MkIf;H+YHS16PI@>Dw z_*-U=oQOoktun$m`i=yj{^BI)q%<@?X8i^R$ICRNBd-~I47iJA(cKfJkByhW1 zeMIiT2|T@C1UNahvWcmv9+$c4Y}^mENJ*Zp=1Z90-d$f?ecLylx;x%rJ{`Fr;!t5iJn@4Q&&2DhL;$VJI*k2|wUk|CvWbTeIb#7(|95qo685ecMWf)3+gjc%f8Y%# z8e$42T#j+0BX&8il}k}ubN%0cb$G|=%u0bwnZK6lz0(s}c85q&w)V=#vmx~sTKYWz zjKOnc&N?0?Fh>X3Kk z02~(^pq)L&PpshcsT}Z0W&Fs3Jy$cu0qR-WgeYVPi-XUw*wA!j|MCI~?}kOLetk*t z>USv!a<5NL;@s=O9gbSE1ab_Oy-Qk?!lPgy)eZ&v2(Ch@pdz zulog%=wwpj3p2p*T7dG$*LZc_)1Pz~IUSqto&HSe)$n_rqe)I@5IpWc+4-pp57}Wr zPU5xXgU@#Vg4tHTlX2a)cE=W+;|E5}0y{T{G_Y_h^~X*k#G!ooz!=20p~rW5^yd@# zojS*+*2xWIe_pql*3jjgB@Y9NzSnR8?onK~TAX(7B=H>a@4J(lVh}Q)lPK7#eTsMv z8_dhCC9`FJXJs&driDH+M9DIZsn!aXwUWh1HyHTN(F$X@918xsMG%~NdC&KGWx>5@ zZa1nqdL@F9u}pzij&oQ3!1p?D(2E6}N?pHw`BO*InR3a~KHeN!5aiOt9e9fxZ;TxH z5-r)HyJvZJjhW{94rA)B8&4lkskRypv>aj6j&OeYmS}_J8S@4^dk^~HYPqDTuV28c zcvN&}fu+=LJiSsWW-VWgBQw~s4OfF-Jl(z*S%uJH9A3s4KoN-*Nv?WrOs^I*b~n{E zF)?@`iv)Y(fpHA)pol8(J@$3CZR1x_Nu|n*DtV z$>r@&=i>7^v580sSuvx8T|=kTj{O*8?gZ3QYIzuEi^xkDpz0l+A|KEdR(CeGde!qr zK!q$-uXR&9a$4o>t-bE1y$7P*f!|Qy8p#SHb(hOjc{Amr!i|_PQ(UO1i$PsC z-mY1b_lbSte-tRRC~3`nJu&W7q$J=jA7W8{{-q~N=T2_nTq!{!FwczMC~cWj+?79z zY|at!?=4S?juh+@2vN%xxD}x$a9wf;VV$ydNo7kJ4F0MARZXbo%-oiN@MW5#`%iay ztOODjWt6FBUFea}p@7kb!)oK6o*vSY|JtHSj0RjHitfT&!yY| z1+SaB$T%I;&k%|WCQ5WAhiymsF#Y-%cB zupTw(!(T(d=CH=3^f!KSrwpANzkyQ`Y?_=u|K^+iT(bL3u{l6$IRZVbr97bAz6igX3j@XeuFb^0W zXGr^M3Y0@X?8optzy; zOc2bLH?~2*yt-QLC}bE~%a3mO{DiOeBpIq;Zpt1UX^Mk z6FYa8*&9+`MQ~k`yzvx{{Yr>n3ZIUtmPU}xAE`d-jPc4w20fXeCG{k&_J^qq^_nwy z6gl2|SLb);M>Jz7Ntfz3HL)tz=eH!@?^OML?h z0u;!)pM)QwVjHxq3$fu=_oG>4C0-u>EPK-9wSI>{qXty`Eo;%m=t=vlv&PU{)uGeN zi%r>ZE``BqSFb(&B|M?qL}EoCj(nlk@e*xCza^wef)?uGvC|sZWGe;0j(ZfiMe8g9 zMBk77Hh(wl14Mg~{%5zF-B=LdZ1FN50F}MzTw=7%kH((z?oD3+(u+x?9oDWHKn$Mg f%IE0~&q?e1=>bU91H?3*G6t>~Ss7O7yWRf}F9M8j delta 1564 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 IM)}?Q53$?OY5)KL delta 1478 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 N002ovPDHLkV1f*ed@le1 delta 1399 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 J?@svN{vRy)`jY?v delta 1471 zcmV;w1wi_y7}*Pu872b&0019Did_Hz01{A4R7L;){{R30l>*eVNZ`zb>g2!l?bM;4HK|Dj)U>}Pge1T@00000 z00000000000H8mFM*x6A#g<>)mfwF5C70(9dHn!7t+~7@f3g0u@PehcK)PFzj;3q& z+upQ0`LyhUrUL)~0000000000_obAC`-?|^10!+DztA+STheq$N7I2((glo#7LJ^B zu08A8q4#KRC|{@`v{$nU>AW(KZlPuq(hb&ZN{a~}(r;6r=+Z=eRV>@yMLOiNIxFc7xPRErqNV>>J}T+r&X-NDnxX3E963~7*PMQ~1R7OWlv;J}F!ugHK-I@3UG|D9PLNJ4R?nO+ za+psi?J~CazMEu|qb%Fol|$9X%(6*;#a=dCIg2}7aOJcVQDg|Af@V}lu40D^uAH@q z9Il+X)GDr=-L1;Fa;8$NMCFDK&eV`jh2)6&bhiz|9_(eqz8lW6;mWDnwVFdZs;irS?JWuyXt)l8z@jcIfKHTf@ zKvex^eD_VQQViXZ@p8WVrdFNBw95}0JE-AjH>puumel(|U>g-QKgRY+Z;1W14e?K- z9d!H#>X=!japS~q0V zzexIx)@?=!PxB>x-kf`Xlt~7&gdZI#CSA>b$HwF=O5U}D!Q7jwmo;o2TFL~ndLv+F?xBS>0E~~ZLO6qelC&}g?bH=*)PKRZSa~)!zkkhtg zG!gmPgU^xga>t+i!cp&C7W%(@S>AWNq?<24brb3R9O$aW*$&Z9s246r-*(kp`pVCL zI0pmT_2OiCu%Il=%vMZh^Vc8$clh6;O^3a<+pbCBkN+iqzHPmHmnT2-;YfNwyQx)K zIrRsczSmq_@>SkW00-~>&WsWHgq^mMv^$xjX(2z=A?Lf64JeUe|F94*Pi^TbNUFKS zn{PX81fJ;-`-F&2+0A6ygpk}2Oclb>5e0VtIPunvZf%>V$1y#vfUpo9Wo-od@_ Z4}UQcyKA`)*i`@k002ovPDHLkV1jDW^Vt9Z diff --git a/mylar3/stats.png b/mylar3/stats.png index 6a60eafe144213ca7a9f8714f92bb38797033f9e..4edf87ab27e01e19ba31af9d58b1fc24553b9eb4 100644 GIT binary patch literal 2489 zcmV;q2}bsbP)005Q<0ssI2r~mCZ00009a7bBm000ie z000ie0hKEb8vp+n)WV{8jbW zhvV@W0LaU0YX<;8e3Cmrh9q}@3`y<)8Is%qG9(tzyohzw4l;-SnhX*4_?(A22GJZZcFa9p( z_)UYHJ{Xi`NQ!qPgiy-kYX<^xNbUd`QkDV8kmL@KA;}#eLy|i{h9q}@3`y<)8Is%q zG88SjA4%H! ziE()~W^%8nG)f)xu;=)310F4%VpKYj1i>^*Czy012`L4WP9$N%L^h$HVUVQGK9H0_ z4V)A2_B=Y*sksBWaewn5xdWTy{^os1?!flAzj>$n1=Zq*&+pR=$V|@^Up_wcn6rO+ z_~N7Ed$r#mAM2Ugmx!Wcw~YJ_q^WX$^Ke$5Dc94RJ^+gER}$Uj#q(QtU$1@L`OrYgjm+xtBMd ztIPm9l*i1yqvh|Q`^=vA8q*aL*qjVjQ$yUXkjIx!4|RnEwkU&5?x8)o4^6d0d(i+S zDCe?FvB|xEvM#3W@;k6;c`m3Hv+vUvgKF-PLrd=!fjvlP<{q;vWO29Ip<88ig#_}D z&Vp+Eu8`yMrmm1c2J%=?ZM@B1@wJ=_>`FRinJF4~%baq$%ns~L=E*%wEB63wR35u! zwEPA5-qq6=A%q*Zx7`vlX!#3JmdCU`X!#3JmPf%o)VBOxB@TcTWRu)$X70z5p~FpS z1L<=GSX~~Q+(S!0_u7Z;&XcvSkifR2b9w4S(N=^? zfr=XaV)J*OB0zLWCHI(JA;YWLdCJhbLIRtU)Pm}imB^S2s+~{Q6%t6C1yz6yB~_N0 zLd#!(@8!Q+M$2Ddhq9TuYxxUs?YpmEyng%e+Kn9Yo|eA=*Rokn4O;#J6tbzwg!ZzG znhdZjNo{hUs6M$DH5vIG*pHlN?nT#u(-%X#LTdR7Y*)_7z1$*ZXl6e>Wn7P6Eq{U4 zJ-fKNc{h^<)%vo`h}G27Q#AeswkzkE`^o6$y=LFQcICgITIiptm(S@wMS!?co4HTP za*fG-L<8Q+8myMTz_z4z5z~|`7p>+V>egVj`~@~7o33F&<1m0iYGs)z8vg@Q)OzH1 zU?*}~P;KnzE~f*#^3|U&-}&{ewWElpvF2_s3a~5x`t0dXKDfPh6w!3-bC=?Qo%rgr z%XdE5!OXp|a6ka7*u~7fVCD|&MCLX3azSQjX4e%G*r+FuzJ2rE8*lumW4^l~HC-W# zFLZ?jb|SNyOz6BqwSRtBod>onv(?nlS#uxC26gGxzfrkA0jcYh59M#N}FZkGaoX zB?s7+&p&zm{>S&$j$#&VH^{c83gqqc-#>o;cY8|iVff8DmZydTO!4Z>GG% zJ&CT6q0|`i^iWqwAZ35~0CRC7ax(exTMr|Mb6q{PFtF{Rek`@!-ez zAKY0xsPRVUy2j*Qtf@-woze*=ok)UUnxzv=I+292!4z}z;yXY6%@2R};q{*-BbiC$ zUICBSJqL}wk1t1X`hXG`$y3f6ss++R|Y*%&W zetc=Zm#lO(=xlOO{=6x49$fn{VlaKiA9`@Ir={~L^Bp`Tn7PkP^zlc(VFpFw_o#NX z{N61cHTURQ{_tuw|Ik(3KfJo*zCEP!!J*%&A015R_#+NZ^R)B~evX4D2D8AKX@7~u z-Y|nAS?u>H%J@-!kNONg_i2ecexHNex^!VCn26)|KX_s! zgAN{gS_XyDXZ$6D8T6E)!Gs!JOyT{^Lv!W=bTpo|ejgBNjd_6NB-F>3nYV(^468 z#nUo0lDSXI=<&w|v-E|am5-o4pGYll;?9FRN3OhjQ5}mle$RuaM>6Ya>3oTqPD_+v zykTkwcUo!(pZm1L9l!nH2>)dOAT@nwKmcq=+ZC#nvIziN(YRaY^o5x_z!oXI0A#4K zw@g9y2iTmB-7+#ez!ufi+&g!M0+6`s%w1UqAOrsgAdcW7?pV?Q00000NkvXXu0mjf DWijes delta 1204 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 P00000NkvXXu0mjfe5%sI diff --git a/netbird-server/stats.png b/netbird-server/stats.png index 0efe038d8d74ed4ceb96d901a1c6134f9c66d7f2..af1af73179e6d9ad4b1f13ad5af838308514f6a1 100644 GIT binary patch literal 2477 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 I*U;Pl1yI)WBLDyZ delta 1342 zcmV-E1;P5Q6WI!o872b&0019Did_Hz01{A4R7L;){{R30x?1DjvGSAv(_H|C!db1s zks%j<1no&gK~#9!?VXKwq#z7N6B*zCmDl;vaTFF%v_S56PPesoIgD3ANQjCcgb+dq zA%qY@2qA2a3c9|qz45)i z=5P7|`^5eJgZJO*{Ok20YRsm8h{{5FVZWSzns1Nq3^3m*5N{RwY}LQ!T~}vve1P^7V-^>3^anZT|JbbGrFgp{&D^S*a!V$9 z`}-0$q?j@4u|IAY9>p@t6^pYPt`Be(B!K=MXOj9O(7$%^b(!F^;Z( z?A}bE*SI&+jl=kOY8;#^zc*83w!Jn z0D8l~<8%6daxOqWL3`3)0grm`$>tq@>h%xrqquP7&JnKwc!DEGM6TozcT&?-hxq2fe}8maV;MJT>Tlrv6;3 zl4Wbts1uR1OFVNE1<-pSPKApN$Bl@bJ;#mIs$HXwBWIU5sa1o-qrn-Vcj35Ytpp8?%};QEZzs%4{2YSqY!oYbnp6*;L@gDY|zIkVpS$zq4D zpqug5nbQq=>!*qxq?ZCl%fxe^7^x~f6fio|#Itz?UdE@a&pHmyX!8Y(_SR?F&^54k zrp?r<&GlJk0i*8s$hBL*Xm)*O_RS8CA#N-p2k|p+c4!eg#81E3p)KftIBsR$?9dQ& zhvQ~$=L{hjYmOWt7;9Cl_-oT(&Al4&v6<=@7RD9pc8IGfsVAZ{(64sm0S z9FE%`*Qa}m*%ZgE^Qu*UmEHDe#i;iVeP7I`5byu-BYFpPh*#vud5YP}XW1ZLO_pu< z)b~q9I+cGEa~LxZ1)2yqB>4?_npxlO=lY|q^+!{-!RmSzcppR` zO?S45a6_`bIB5+9`Xfd9bD$yb$0~Jw5-zlAV12It>rwnR^fVDV%xp*xHMDO=>*`Oj z>m$(*romVDEKe4HT>j_gF#h(RO%wYT6Yu5UhF(AAHgsu!q)dM@FLAIx(GM1QG27lo zNY-uWX+pD&MW`FO;mAul81^ZT0EAL_BbY#q6ThOX_87V3}O z)gP8@q~H+Lk(JmCLWtNq!n`B4P$0}Zs!IO=Rk{x`uD(hQ)c^nh07*qoM6N<$f*07S Ang9R* diff --git a/nextcloud/stats.png b/nextcloud/stats.png index 2dd06d9be16c7f17b2b10d8cd7513f04d10f394c..a2400c93a70678c6049a35ef31c2da8190de3c6c 100644 GIT binary patch literal 3064 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 delta 1404 zcmV-?1%vwd7nci=86yJ#0019Did_Hz01r@1R7L;){{R30l>*e*q3^a&;gFd(CXpc* ze+4c{L_t(|+U=cmQ(C#RB=x+}Wv>GF%Tigb+jo0000000000 z000000Js^teA4JG&@1Tz>HU(dlU2X|slG3DB6+?seK$+M|E1Co8YTVB-HY6r>DjV% z>J`(U}|$LhxLY5$kSQZ`6oDXom#pw zWy6t!bQ6voq#JbPkatLjbmSeI(zGe;GT5KAC#< z&<^R%x^bTy&XslKAiX9x?kxcqCT>}d9HdvK?*FDf+?p7PrB|=+7iVpZ=}oKq15A-F zRhzn(Us@&ay*_n+Vrdo9J5YBvI~Y{=yj`m*Lf(4^>aN+xdEm&kuI{38=bHsV3+m2h zhh`Vp*zACzv)KVdCk%_Bf0Ora-OxGN!Jwh%o$MfNcId&-vrcyS92!O5d)tQ2$qu$6 zuvboYP&PYsVCb3ibY-(c4~Cw3vICnPr0Jy=UP@q9-HFH(7Xm|iABN6) zy0Ks!W4giV+SQCGrfiSA4^%24T}gqyQ@+R5k@n+8&E4Rnrc;$6fBhTDj?=uk=R_dA z6RJliZJwWQezU{IBz=?hHM|z8FA`;Yv%{po9*6Vy&hHzebJEgF{*@_P7J=JQxjy?& zd=rJ5Cw=0vW&&@vbjxAbn3NkhYt^Wwznrf==_U*tXIwZ{*$(Lz7&o!Xmg-eIBaB}n zJ-XXL>m=KsKZmGwf1MBGU&?!Qw}ZCgiv@0uqX;K3o`>bCB;6&>tQReR|G){P=bWuv zob;pxi?Eg_#o0tSYc=<5<#G!yp4Eov?=)yu&w@+%Wuav({n(eTZ@H4-%nc(mWcEqA z3tDUUK~U4N_hp*2OCy4np9W_NlI{k`HD>8hUaO^-TTh4bf2JKdy;2p!cFppx2?y@x zlkP^Id%f~ri1dNSUa|MCWk`QyMp$^h*=^$!{J0J2pcRl92Y5%A`QaYcAsuwD?Kh10 zpheyfUPz&V7lMb+V-A!TiC*SbugBFT6hCeJL4i>9yW*#fFZO718-L)KFUeAyY1`&< z-Ccs^*9}qce?O8@{gk~Gt1hW{LgOW`@siQ_VztjtG4aWtc<+8yvU`kv|A`d{l+P}% z1&hDmsFzi}*3@{(E`QAVTRG<6?k)qV@@eJsi@$D_DgH#`ixtmiD!#PpjST8tde1@A zl_6C8pnBc*(3INu_kY{?a0ue5u-JgHEjeN)iPi!verMXgW3n03h}bkas`|1wh_GE%*c1whwRZytiop0000< KMNUMnLSTZSuES*j diff --git a/nginx_webserver_proxy/stats.png b/nginx_webserver_proxy/stats.png index 0c983a50d0ac3262b3a928afb69bd1f694bd4144..888ef4a37c36036c19976aa65ce7a4b073ea5cf8 100644 GIT binary patch literal 2788 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 delta 1495 zcmV;|1t|K;8u1H|86yJ#0019Did_Hz01r@1R7L;){{R30l>yY%obI(w;aJ$WQIR1R ze+7t1L_t(|+U=czcB>!^h6(!q&%Cbf)~cYOB8mC_du~sijKla%2qB3f0000000000 z00000003mn>{Y~)uo4hE0 zKLOyjq<^XRf94T&SLz-B0000000000e<0}cRm?ts3(xfA12}O`L%O%n0!VilPLd^E zfE85Pai2rRgdryfBa$pNcQyEnx&lpO_aGh8A>Bj3CZszI*p!XOE3sue%a8*N0ybk7 z#iYy94Lf(sLAt$wP1)2bNlAxv%K@7bYVRlk+pQKm1dm#Ouh8(2dU%lgz^JvJWJ#si_Jdyrk8q!^5&`aIK00= zdwmeaU&y^B(kDz05z2RXdxPel*sQWZpTZr18Gi}~UwX!yzu7i(L#aVYy4 zq~FFPm$BPe*5$lB3Q@1xQSf*7$mP{|g!E9E0&nAJb!|)TUewo}GiI|^$JL!#g!GLq z`LeZo(ziTs-bMXP=Ztm>4pHAtx&-AOxq^+jZ@*l9jNGD_oH9u-J5-5Ce|o7QXJE@# zD8tT0y~>bNPkOPB)wMJBR?eB4^YRGkwbr}FHN7rG!n3GX9<8ocfi^_BZ&BY-JWwU+ zzF>3f3T92@XEiV~1r! zMY2aoFG+S#M*6|z1-JU$e{jXf!}%(1^}8H@`DQ25$K#YmNH2_g&&ErMDKYn~->cs2 zkaWg&A$=S#Jcsq=dr#g~AnB)NpGHV8)9-oG#TeyYBP7M1A$Mwyc|_8;-t3@Z%NF}Y z+OSXWNP6rNQpcMedXgU1cgUL^y2U-B-*4lQYhY}<)bCP#H(TXjf0V?uquu3fE1ho+p7w5FEg7$IFH z=}oOIhx*+D>5VmTgmi_ZM{9n*80*`+Uk-RtZpd9Ff)PnqQ~LWdE}V&aP@J`Tq5MTi z*FpM~M7R=l#p?Z9;fs*2;Al0ftS?FsMazA9R9aQm?SV^s(tErq(a*Wd-hFyg(mTBq z)eY+s_WEX;dF1-N1~=l7TTgsxX2^{l*Vc%ncgSUXyy(2Ee~wkm`tX>WlNKOFS*s`h zRR>sCxUfIw<$>|xKl*%|OxqZ3O8S%VLB|Xay4YSkhr{G480+UvMb@eY5m#bWe5g*a zeU@fCs*`1ZSEYYkkK&`LfeoJlH%0r|s4p~>Z6cMEYG7MDp?SQ`p-g>AvE!siUR!Uj zc;InKzrs#ze{6-`cJKvu+=O&s1?FGI2Kq-$0_)2?tV24uy>35Y#RnF7U&&yc?A5*> z5SbfziS{96FKfG(_3jFqZw`K?L8|*%^Uc9Go0{6euV*#Mx9*qeFTd`|M*Hu9$l?#F z=>8qDm+P*mdBNaA-QYvT;G6aSKZ}JkzhS*Ey9yH0f0thYR>keBn@hvyuZntA-HWEd zhwAq0oPQ;-CN2|2Cd=B_H-Fx0)BK9TH)~$aRQ_mnu`I9yWbN; x0Vq8MDPSF#_RRnQ@Vx`nJ0OGtpx%KN`~XqG4<@+f=Y{|P002ovPDHLkV1hno`<4Iz diff --git a/omni-tools/stats.png b/omni-tools/stats.png index e0519ca354cda5e93c07ffb65f077f1eee5685eb..ebeaaf99ca1b7cad041e407cd93d0682baba2f40 100644 GIT binary patch literal 2726 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 diff --git a/openproject/stats.png b/openproject/stats.png index 73a95b64114348b976f7e454723573deeca4d655..80154b152c64e4613d3fa66230699e0d18c89229 100644 GIT binary patch literal 3290 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 Eg3nA2?EnA( diff --git a/organizr/stats.png b/organizr/stats.png index a81e3841d33bfa50fe23a917a3c2d8e358cde32d..a972c11a3f0b256e7cd5038b1c103ebe2cc0cd85 100644 GIT binary patch literal 3397 zcmaJkc|6nq|8MEDxpLH}G{r(uN^;8_g<8rLIWv$M28dAFuoQc;3hB8DnGsKfxu$1pvSa-FrI50Km4*+NW_G zW6gy}>nf~;6MfIp2LO26{uykkS9#9?0MDMT&h1D3+3PcgPenQ*otran!=$;3+McCI zJ-m?mHsW~U_o}LV+jFSHDJ|s4171>FRJQRlag%uI=F0c;uT7XX_dQGbYOW~cCAzq$ zXy1Bw$vfN;F6!-W`5~+}syb?O?PzlHpmvT=V>#8lVW1(HIXzU_P`TnDrwagHn2u*` z0Knkz1ETpUynuihneBpBI1JE75?8q3aJG})RVXZF*uwJGZ_^s|9n~e+4e$4$ zjT4fOWUVa~7)apZznQFZ1pZ%6Uv#4h8J4<1CYH0`$Jl_da`b@VumVQQ<}I2_62Mt@ zw5W4?VV?6k%>sZq&mOtm)|zL!+Ycxkm`G{<8XquvYR%;n`5PX%a4o<#3uLza zh|a8Yx9iw9IFb~V^Y>AZ%^dLIxf6il{;mZh)wgVYbK=>V(iuZae zoTdpLkAmeg&1Besf|SU>;Fej`=u(|4@)*E_ueT}~jl~ZH1Av>9hRE6(BS-ATqkPRyOR(C$diz)_@nHzR&TwUtd7 zK(4Mx9e7wHDKuStfHCNMw&YEl$ROo@i@GJ}zcxfoIsJGt&oBR3@P};8Tw|F0@zy$B zHoyqQoZ9nHtM~R`taUyp<&Fs#RQGd?#cpC3^USuk$Zf|j4!27_S@h2|oITo_O(2~T zJYy|*l6{Y2vu~U7`&f0HDd9W^g3=zniBJmOA^&`754OQDEXN~`6VlP+k6k9&Q7pn~ zWVaZZ&K~O^EOQ|uLcEi={`y6?rfqT$XpNJSNQwD0`7SiMcqX&a>TYn+o3#i-{Q60n zdmNivg-@pux}tSDGcK-_o6|IXxfnvMl@=4vHE}e%rxRa}DS60eZ3JlO z#B!oimOLVZPK+a9@0qp;r!5j(p174J{L~X9WgG2C8Z(QIZ$i4NV?2hkhko{q%BgRD z;0aG0i`7BgP6It9+!-d3a>3!%Q!B>E}Z7z;!!&p}mm zUQ|_HC_aIl`Z@#1UG$_nXVWSdhpeA(KSOj~Na;Ugv|r(bkfvMBOGqqJ#`11?>3;z2 zDa%&B@x&1w2hSv=a|~v>^!(-=t>Hj!JG(dftgM0leOX>0L2ek};`H@hS-bn{BG2CZ zXGQrjwfBt%xnn27s z9Ge#myWMSvmD6Pf&DYB^a&d)DO4l{fh&yNN7jlGXU+b+RJpa5fA}MVN#eS;2ZpVzG zt1Z=wWz_lyIQ<}m2hzFj(s0;GBP=#3#6{u3r_S~K5&2vJ8uO|~-s*HpbM(Xx!|!Ob ze+K%ScGDn}w~g{1EaJXS_gFU^IM-mshshV;yEdZxd>iiZN&XS^Z&mp-kE$Ijd~(L_ ze?jw8**kBVa>ur+$344l73JmnL)cC@o-A$q6*Y!z)(0lcdDt{Z-1F>yjrIi zFRg6|DnP?d{%tKkQag_pWWZk0m!qd&8b$Z(&BYc%`H@xb{n7t*n{poXH7`sYPF8V^ z<;pf$fBZ!lKQDG~-67rll9|}ged(Z>41Vg<`3BD*#t2`NH{wp!eL~uhh4~*M)M0Os z^^}OFo0<-g9w@{;fgNb@x2aB9sVP=sT|NC==bnjr;WHoKg=Hl;tAaT_1*n4^-$_}N zDSjuqnxvXtDs0Z@KQO);el34{gMaq6-=WFeffg(k@XZGFELth)*v9hJ|D>}#cJ|sjr-JzM8ogi*f*I9x_32K<0cr@b zYq7dGL>_*c=B1iF%`)LZ!gO;zajl-8e%7_8%kPDRv}bVN!1C3(NGs;aF^BSgCVb=T z|MH%64H4dwZ@pZTQkWQ*Tt~srHy#6x?LT0>_)HZZfvy}~5-Xi5WL+AgNQ=xpF}u;s zHuQO@RlZ0dwtYlC_16VDY1t)yq7|sf5{^yK5g9HrM#xQH^{Cnj77;&u$pEQ41L)c1(-i13o15IjPx360Vv#fUSql{q8~xM$uflPx}JF z%zkVxG>J^eZ4NyA+KRNsPCgUGsVmP-|Dkt`Yhw4NOS!#zH@Xn4u)Ad3UiPLOBN(D_ zK<~aNIw`AQy)pYRNqqkIMsrV>I%M|dtQ%-I7m3M)&ppY|z#R1iD(@OtTa*zW9$;Gf z>3g)3SY{1uE7eP@TD1SoG2K`HQxJCRPv0EG2IiENJAeG;VnoR~F)?6my^v_~eKrAZ z-tV5n^zYu!!t(k;C?cGoHQf9vv5!?p8n=E{&X}LR|F(x?57!M<0j=Gdy#q;AVlN?1Bjfb;7HpIM&!?%dM$c~14b_UKH}C)(CcTo6*npBc zD3KkAr|v=U03aFLDh%*fU0JL?iSAg$%KO%E zX<@g-)Yy;F{%%5FuKGw2^Nfa4hw_l)Qk7IkOK0Sfk>k$9(ZsiHGOQrzmoHtT#C5UI z5Q#)0aE<6;f28ZUNkdG{j(@e!)??*;C-*b<6nm3~(><_4j4U?9t?hw0wbn8|A}L`~ zU%|3Yg9^)8+Qe5F)CLx~|07Dhn-(D_*z<%buZn)6=4mK- zDx!Ein*a|g`~}bQe7DXLK(@|@>&OMK{KRLVN}7eC{Z}A!qRbgjm2F@Y3o30~Wd}Yh z>%+AH9PZIf9$taf>f~J}SxFp*y@Ubb(H-1?&PQJlNa!{g_x+o-v~~sit!SVw delta 1539 zcmV+e2K@QO8l4P~872b&0019Did_Hz01{A4R7L;){{R30l>*eYP2u0O^2>qh>=%Xh zks%j<1+hs)K~#9!?Oo}b+aL^NY3nHOdW2L>k{&Qs z6GuM+Nw=1&Iql*!=^*JIQ#En;OG&!RR86F6_MN1=RPXD38IW{$q_6ku);qB4ZCHMP zoAyb^_CJwy-!uIv=0eha&UC4HC+i*;0~B%*gdBI|0tz{<(`zHo%dOE&(j!nkzwkWI zH19#EUN)HuI#A%ac`!c@JvTq>=-^-gu}$ZbsSL1FH0zn7uap_6-zfTxhVDf6shAQMBY!5Hr-<&HOhXS|cH ziSdq89qGg2VSZDfwK0B?az$s9%}a$#QO9^cDJMU?$_43VNJ65PRhvx6`6yugv+G6c z%Q&kOa!AR3EnC)T*SktNNQB&5rj$h?H>kcqm6Qv%Ia8*bl)E019z(wMmU3Z2tCzUA ze#-kuxgep{+%Yb$U&_S@ttwZ4Z@uk%gwU#b_0~J;;$O%W6Ry0gen&kTLCTFdb>BYS zAmu%rx~SM8*(zW(NqG;aE;=#t|6$Yy0xm`=@8Q%@?=n8K}^|(&yfrjBR& zVVr#}57r}616D83O0BFvzIfbhzT5q>p7M0>>1^*^2H&dp=Y&4l{WnPz1T!oMvQC)Z pn;{5-d+!9zJHZqRg65sjf`1=}5daO8p~3(F002ovPDHLkV1g#o7j6Im diff --git a/photoprism/stats.png b/photoprism/stats.png index b577b0cb3dca7b6a0d2dd282163d508d3dcb6c2d..95e5bf5447ca73ba2472ac9d4345628c0e41d31b 100644 GIT binary patch literal 3199 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 delta 1365 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 O002ovPDHLk0$_qX^;i%9 diff --git a/portainer/stats.png b/portainer/stats.png index e5b29bfe48eaac5096bd4371afe3ef192f95a321..8d3ae8df7a6fa85e1198c89a4d8d151c49946328 100644 GIT binary patch literal 2773 zcmai0dpHwp8-JL{p_THYS12M9LXtF7R*20+MLy@Ua()d{+U%9g`H(}-BbAh6YAp*( zh#1j9#;lc+(|9u`v-#Hd$M@&={qa1{{XF+|U)TNn-M{O(?-Vr3Zj0QXasYrW4)%yM z07&q}cEM&z@m{?#e?)x9M%a5`0f2V?UK05RP&EMLNDheOZn35FtoBS6Lh1ECCfh`N zB@xGo752OJrni|#9lGn}oj@WU>ui(Kx6OrKxD(|m{kM{0&wZOc7a>fY`w^za>6p1D zObFRhM9A}B@bY0}%UEPg*3>{KlVT2lm-nX@0Bo)%S^+%-6+%4m{|#qzWbSi`-7*~L zUH?70Zix}33kU8Vr&HNmS0t^S@s!ukt!ovETo-oQphF zu#Oz$cXKADLvsl`z{l!d<>`LCKA`c?%{bp)HgX0K8CT@^^q$seCzjWMX?E#( z5aNiXPQ7S)p!xAP7OguUHG14adVQ>sYBuwTI#_nilj;wMDB5C3&XYvT&mH-UhdVXQ^xQ6kKxU@nkq zXzMIZN9oP>7P?c%$`yV=eYfU$AXJRo%azxnMqmi0LQ>aeJ+fW}E?wToB`8=|qNm%?a>v_H@*+1N0 zk~p(|O~{eCy`snsvkeS-EY>)&Wj#{Zu+_M=Df*AJ&9!n@+I_|Rrn1_XSI2LfVc2N{ zn;V!tR&MW>$_~SbEqY4SZe8lSB zo|ETpmYz?HL*}2|BawWz>)!jHk4_92bVM%jC=TtipwH!)>|=Z5ouVRRIEuzE zj)7Ske*R^K0nX?;fh#mF7mc;tkqpF?!6W$-=0Vf}*$Qck`f-y}@y$A36^5=|J?fxV z{QvbW7!j`jV${hi?rnJ>*$b_ZlVR+EthD_IDY{C2|MFor_=tG?8Uat~_55OT5?<@^ z$9DRO7Ke@sb;-Q}mJJj=KyI&sM6P!d#)7gEX_8!x;rpN6a6@ev|BF8R7@HB^T`XWMnQ=*u zkrs!qkO(m*RRVHTQ~#@5?(5stFv`sxIXeld9|*p>XCE^cTylgezhI|Fe+`rF&52wO zLrHP`#-SO^qW2ixG2_ZDj6-Ia@`3xGMei&IYA+6VyKe2fYkFp-JzBSe=8xsccL7SFh1#T}+ zE@)82?LwGPRG-}qjrTp=(8&{JC9Z3PdZwgcrscX4U$IzT|Kw%q#J#~HnXy48!Vo0e znP6g>f8d(?3%K?<>jOnyix9K5PhUt~V^c|_OF=r0ngyc*^7(#dxYRQ0xIX6Y-nX{tQE6@1uPWN7;sVv`{W;|~>80>D|%u?pP@ b(4XUD3Pq$D3M@xFrvitQC`A1U--LeyPgziw delta 1401 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 delta 1521 zcmVYn+0#G>0Ynf&2qA{zzG9$r6X{X_p=)%U9( zC6*UpZqCwImi$lo&3^gi|7-HL^zBuAf0oAja9xa5Wz}TAh^lTKJbhdIrgcDFI&P}} zoj090LI@#*5JCtcgyil3=KDdG2QF1#rrY0Pw1CeR1W$^`m=S(%y~oRLs)2Iy9@GBx&+dj8>+!_YPIMFqOqtW1qI=IXf`=wdx9Qzfl^k3om}<#JQ*yjfCk21l+T&2xE6PqSU1 z8(|)I% zb>vv=P>|+49cZ~Hxe|JC$OiNh#HaZ|{PDwG&pbUiBShqins~g+o}>-vkqve~d34G4@F=-{MMh+I|#8?zidy_3{Jsti(v5pF=*U%&1ft zpl4030{v8Hp5(E)xsk1>$(*ScSevfu&{G#XDBFbA+au=Vis_!cN<#}6fnFzmzPV_+ zWrJGp0WUx==(9(9eK*~;E3t~CL5F&p&mO$Cp5LAUip-h9KD!V5e?v~>K1*lF*5G7# zb?5|VZrs=L9_UI$u0u0VJ=wv3W)si@Gv-dZISekCI->(li~Hw94kpF4Y3Ula^ns!O zB7NwY`SN_~zLR3a=IKF-r3dqzzW%tVao~9;JA|R@2%~N%9UKUlzA3@Dj$E_uIEx+X z_2f=QfX+DGjB_Sze+W!ZUN}c?v_8F;p8RBRW}I<)Pd)iL=%WN@I_t?#LDwOIGj5)` z1YSD!t`IjLoQap|){$#{wuIme-8j(C;kGebQk9hU2z@gjw$T{4_jjVuV~d+?Kp)AH zPguHkl0*US67%Vnpt~8|MS?SGA~=JA7hRtovUF|ASp#=gf96aiVX84l&RUY1y{Xj} zhHM{0FF5zS{m3il7|NYQ2BW4YS^}ZWA*re-a^6m*k)#hf8IKw&|Xbn*#Sv6RllkeHAxyN z)!oyT*NfZyzn(6n7ZrN$oR?9RW>uB^59Z!f+K0ZkbY0iW+Lrbv{7>f<(&a4YnuRXB zsh5GJmC7lz82aH-K}SxvuKlrZov)C}fkMg6gRjtTO&8u&R#o{mg)a-Y55Z-tTYuog zTksvdL+&Xga-fjp)Ff#&U3gPjRh_Cy5^7?|#uOZaIvOfAgAgM2j%eNyDHMq29krq# Xd$JF-abCj+00000NkvXXu0mjf0-X4x diff --git a/postgres_15/stats.png b/postgres_15/stats.png index 1c0cb389fc52155d6de78c4955bf6f6345eca640..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 GIT binary patch literal 0 HcmV?d00001 literal 1364 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 O0nSi&dx9P8&;I}!aD7Pt delta 1354 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 delta 1357 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 Hu0mjf(}W1L delta 1587 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 a4Vb7j>qnfygC~3n4w##ujVp{i9{vZg%fdJS delta 1423 zcmV;A1#tSX7pe=886yJ#0019Did_Hz01r@1R7L;){{R30l>^khVdUSk@>sO!3Xvff ze+5BFL_t(|+U=d&lBFOFMTzkL-#l~fsDMDreeH*?v74e8mkA+6Q3@f15JCtcgb+dq zA%qYrBH+0vx0nlCkYMSa->^?E=DI?z`r(ggZ~MVfN;*a3a0BF)XKXy^j; z8H+UK!q+&T#Cw)(s8x}ss09E1^C`~c3|OXI7X)+fK%W8n*_pi72?F$Kp^G=VfArft>HGIFgA{gIzZH}tHG9MHQ6 z-ShWdGPYKM-qDV#+4P-TtFG)!7&_Fe8+ukIR^)O+jh7uJDV-oWGwwDzf6y`X@-=cm zpTW=*13942VCX6-kOTS@hR&S6prPlG@)f=Vy)<*v?EQ3a;XBYP=VesIj|cibF9mc} zai^v3TdP=l8|Is8_|~c)I@AXU;xa)I$PGQAUy-6*YPJf0IvkV4Xe#^R$y4oac-HeKh77q(rgdGB)$XlO29uAL!#U z&se9Aw&C*sWv|cCWcuy}@1V>j{ec)Lkb3~PNIx&l>da^UD8T{v@7JSnHya-WP9z@i z<-tFyY4dQCzwB^r%&i^0dBqvNAv}g>8hiy>hIQ{c^6lLwj($(ue`xy%+}|$?JEF<< z)1MZcHVc@#la9$Y|E1@2pKJC+Zk=%NY2_d)`;_ncOSYFOJiz|`bwhAgo_lAZV{Tz& zgN)o6jh%Nf-BRgqkvL55U2nQd<}QYh^{}0!Pcd45t3$~;y1h1ZQylp*nhGl96h03` z&xwHCIlX4?-E5=ff6Udmrz&?6$Y~9yT9z(7EZGXDrhxvp)Jy^BW8}!^vh=oTSfiQA zo1C@U%F;*M_vWnCJA!qHFLtUj!TNINryGLxE}@sKk;BaUbnnH!Im4Q~>p-pmbk^j9 z=H6M8&kNmmta9Fl3v2QbHe9^NDhq3Jk~0MBKvxC7aEpe?f4y(q{vMMvMWMrdIZHP% z@6yss?xz#N4IIcxURN;h*S$+z5qv6ia_k+u_d?J&%)I01T?$!xjTK?x_2#sLkBH-T z(9tO3E5L{Y(U+g@p$>F3y>Gu^#z!M^4}6MZw^p+s5IF{Tj`m7r0%7s!K>uGE_RB;GT)ng_a<{Sz9~Vf*p#Z3kbjcPFW^r3d%fkKw^_ zWFp5e6N#_E@zUAc+r3?!8{NB#?Y+w2OZEOW=*aGKiYO2j76|HS=-doKh}=8Ey(3B} d5bhoIqJN~c51MhrR!sl^002ovPDHLkV1hO})KLHc diff --git a/readarr/stats.png b/readarr/stats.png index d967432beca10eee483bfd7f34041ad8fe422de0..4da543f0690bef283730703c82234ae28aea8b5d 100644 GIT binary patch literal 2989 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 GdHcViiN|^X delta 1305 zcmV+!1?Kv#7qtqI86yJ#0019Did_Hz01r@1R7L;){{R30l>*ecSK{2O@dV2LgOMQ@ ze+0})L_t(|+U=d$cIzMvMWxvP|IK%B(>gX_L`;g%J`Y_h38mCK8Y~8jAcPP?2qAes-S!@uz?pA` zzT^Cat^0QRBo6i|BKYREUyMBk{fj%yeaardkySNxJ(ppRWjUbxTcN2J9w%ezK=-^tQ^n%nvGgIeK6++fe`V-U z{~hGZ(lS|^_a})rNaV)SvaGje@7%JDug5Ak$8?|%&;0i6-4>;R?u0oNxq!^e?wyL< z;5ppdp$seOiX6q6QSQ~`1JHj+1KqE4Z*cFLUoHg(7tWoETtMf31&WH?gwDM{O1V#; z)X=So9MC6-=oDundUv1)^zLO+f60oRkjOdr?)Hit%cb0V_d@obO5Ul+&EVaQizxIt z;RfZ-A~sMb5c*H?NU99VUmRe|z)pwnUCw zwkf>3F_8oM1m2zEOhoVAn!OX#CxxCa&IsF@yodCb!vlftJfz!qtpa^&=($4)*udyL zq^t4FLJ~RuA>Fvyfm^m2ygSRKfd1C;vq1L|(m63QVn}Zxm0K?b^a-G6*1c!fO99B$b%bhb6c zGjyOwG<2ZHOXGkZ(a@Vnk;wTr^a3d@X7AjmyG`TDCsAl&Jq^(Pe;Rtp(sO0l+$sM+ zcVg&G^XWNDhq{Y2t_>84oNq(t=DEg zDWE$}-QSpS0lHs9Z;I(cMb5XOH^lVZDgQ9D2K6W&J ztnyjt1MOP<``^E6e@kfB<@ml)%Q`giUc=M-eqTEQPQlq4E$?2Hbs6yM@inN9f6;!> zP_~J70z8V{eM z(e%FkhKP?maxd&)e7RTKe?jz^;3e9NWM5jl*K&6i%`XREe`t{E{?Pn#@ZBzrb@1g~ zO}h8}`ufY;XL`|oKM+0rBZlt3mh9!at7={`c(Dy$41@31`}b9>yz&>>`?)JoNx$4J zu&QovZmu1hZzt-Ry4R5gFXr}T=DQ87iI<5(ChOYUoB#i)PxDU@+Ty=O=@YcF)Kuiwy`-jARE?%@0No+MSa^x{1GF+DhrO!c^-U2_eNFO$u)-S3y| zRrfBny?ZNJ^N9|iq~Mc# P00000NkvXXu0mjfo8YKw diff --git a/requestrr/stats.png b/requestrr/stats.png index 5e27308eeb2ccfacad9a5c3464942b412a8aa6ac..40d830e076f879b3b86689e2378baf7b08175e6f 100644 GIT binary patch delta 3301 zcmaJ^c{tSV8vZf*sBtW1O^PhZQlzp>qM;;PgzO~yI(A0pH%0i!p6t{o#**||XAD^; z*^MQfVNgaG42{NaICHM={C)m?uIGKO`@Qe?dG6;ufYL?NM7h`j0Kgp6)YG+vLGBU* zy*m~W1+kr!uOo?2_Zd+*C(E*WyrodYqQ3lk@eO@zDM2xT`sYpS=a-1 z`~lrFm4Naio+$q-^}e7A9EksD^jt;S0e$9T>`k5rWZ%T(n^n=dg)@buNYVypY)9rB zJh9NUP3$%dCe{_G2mnv^{-m)3Ah6HB4)95IiUaI=ScndqD;(hB`@sXST_m$f=)}SR zjsyfJ8u(w5r$pk#X&K$oVX1%XK`KLMu6jmQFTO*11wOd@~ExUPz2f&9G?k*Vgb>y_B;APB-q1UIs8qfGpV z!B27c+s0Oc2KE_VFQ+J+=veSImjN& z9iaWMO@!&yQ_H96$jrh&ctG?!>g#sdO*OS&S6gqr+kN=i0|fz;b*jf|f_mqK9xJ=4 zeYD+ryvYZ=HFUF+Rhv8keCHS9fuMn`Cbt4x>py^D3pZk+H75X$*Sjs_An4Rhsc@?k z02)}(Unga)Q3n7t#{117tybQ3?7v7uOkOIwt5w0-(So&z05GqmJ`iZ(EUCByjXmGhIQK(!r!az+UH_llhnpCy<5X3 ztBk5OToX249*lb$q&}UJLb3M!l9b^p3|I6U^81n$sMuISneBr}`1E5{9m6oExg=8> z%dYac?|g+Cg9w=BY=W@yYmV3lzk9Sgd_@Il)kR1h8qo)en=Sab0ClS7_zO04|AloNO*7TX#OmL7aG2_qKKP&ICkb$-37cjM@9 z`%c4+`S>h_cG0&Qpzwsu8C9hy$V2(#+=oWN!f^wy$bMeY>-9o|qB<{!(xVDSS`~%j z7>~1qF%AA3_6D|EfKjO(O|Xr#O-E|>>F&B zMq6b5%A@Jk)7L!!n)PNl!na}arzbcBAT3kKnNA#@aU5U$qa4=1#w0m`N2b%3!1Hq4 zV3E|Izkc7ZLP};I(FAq4IWz|z(60Ikv#aX`6I<0sPJ9l&MS966{ITu0&gqbWuR(os z;NoMqv5Rx%jXUTq+TDstJ=)&$VU?3i8+`M_*IQ)U%5>wrh|QrPzAAhOWUfvh7Ze_P z;`!R6vg+J8nn=*jk%irjbKXBdn0vYs7+$z)w!CHN1|ZZMT!MJiknR(#7Y`Z`EmjAxzh z&GzwO(`D2w4P~^U_7;;SgVnUT6Cr2ML5Ohfiq2)G)Q&|{r}Ko4d1?o2*kaJ*g_N$l zejkV!)XC6NDZd1LU!P2_GlYA4;aRmMDF>NZ`o9~imWi$OPD<7zmVUExHiFlfWe3hU zk)IztIv?Gl`IiPnt`Y}tpiDs+=G+=sZ5#2?Pg;SiKgcYhf^OA0aD9KC z_mZGF+R!Xr3vYEa=$eUn*=m`ms-p!`SPr(UMI%Uq8Bua`e#u9zkk)wUqJ@f8+M1F8|plpJAEWwan-36k3`;ha{qRt;ql6BL`RZopfI7; zJ0KRHSZG>QeLK&?3a`ZQW|ufF-i`Rlpp1`H#|JZo#&gm^G1pb&uyP7gW|cL&aE)Oo znC4=qT$>S(hrZod>-ZRLd3S0mvbXzpD;<6=2`wyoBfq6oJk09lhptGAaOKz?xaN)* zD)My^%xteCn?jmhsi-?9H|rI5Ac#ZR#OnS0nYc5R8q#>5jL)>u#e##jPF~|Ys>4TH z#NnaPBTy1@rxv!_yU6hLdGN(9o1Cn$HySE4rRLOv+G5Q4Unw)jMg;_^N43na*TmnK z<|o?c9X0s3$OVNhs{B}QV);)}45^j=f(C#4#a`+*Owq3?zWt5m@MwhD!lJ;9&Y7oC zRhZxXC8fqF(vHDs!bXOAsm5%ywXOXXd}jA8VB=H1IdnQU$j^5QsZ^)WC=tOh327E)^c| zNkr2AQQmGd_IJnPfBTIQC2T&vgHTh6gtqhTM#CE#k*0(h#)1;ip*sGCDrsrSvjC#7 zW7ZtbFVY*ie>isiRCNd7F0PG6+Wn!p3+r8S$5p$O3t_0Go-}fW>FvaHMCJL!ig^o_ zP7+MzvgKQ$^|F2dP<#0dE(i=KFw=}Jy6raV}J)Z z>Psb4nnJ`Sa3f*kgi%_ZT_4y)WM=hony(@)ct+~av&Q25EIHEc+s+(e`rd(LbBlU% zBK3zKLA$&Xxerc%V~}BG&lvt2w<~>q>Te9yWDBRwSj)9dRIgTO>5U-^kb#N%le?}5 zie>Rl#xye|D)3v93bWDRf;R~)?qd9E9Esw}O716U?Wts4lE{t%Wiu{W$(R?(RMgsd zX(4&veGcq)IqOHR&$;JTzSc%`Im^7C)Rg>CNH>pR03M$OL>+<(< zz-dqI*k_by#8$5p@g)vxy%Zu_)j@$uaUB%;$ zM*hWNPPt`WIjHFn4Lv+^!0~L}LA%-BVR}oTkJ_6JoVDrxrOgXw+InNjFrgB9*JY-Y zl(t@RjnSA(#Pt2`0EQnyL8?Z7BkAg#HKB$Z04B>*;sA5te7eKCJfHUf@XSoZPIfPj zCE{+vS17IZayBj~}{6uavX=ML*b O0~p*j(fbH@e(@iCB8(jX delta 1505 zcmV<71s?kG8T$*6872b&0019Did_Hz01{A4R7L;){{R30lmXM$p6<0y;bQ=eYWf)- zks%j<1&>KYK~#9!?VZt<<0uS75qSRpm!~_4JGKK3U@!u1J@h%*5QcSGLZ}270{{R3 z0000000000007(v;SoSO7=zVcUgi1c@jB1+4ZBWmM-rGU>yJb zB3O2Oo7Kt%KR@K8Eq`|XH1^fAzy1@X6Se_=00000000000GLMk%KaZOyfCr;L3EnQ z(w|I2`dp+VFV8xs`$!ki3)1FvISJ&XuAHT+`BZ~9Xp#eHzmN{;kUm45CZtbTrzziF zI7siRPSXYvO}aq(h;^Fs#mhkYfOVQ;iurd)AM-_$_hfTDIRiA3{*kW}Stk^48kVPj z*+1zL3^5>mU`tOFTzHxTSo)_Nv(a08DjScppIVqCl}(OP8!*(6VsKn{$fvKdsisYpL;V1Kz50dlggQbS(VvMy_-O;=t|2%dJnr+ z3$Ly%q$eH-+#)$+mG?Kgp59_FTX~tpLb`I5tw!q9LVD6YUAL=jRrFAQ3+buX?3x=@ zwn`d_MPG#s`!~G1rE7#NSuVS2mcin+po66N6-W~hXo0ULY z&F2xCwkKX+7-71~cH`lHfi3;4V%ptv3d$d0)>h@4NN-%#v@A+Zd|4k%?v)ie$B*13 ztv26^qR`mgKFZ8|L}GIFmg*{-Rdc7OkTj$b&{^>RxQ^$TXUK(%6TVslCEq!@%KgXD|f%ga{T~*g@}HZ^nXSr=?e3p zp^)y3m!MCMn!lsp8kZbyD$Kp>OpCY;x$bS)UwCnesr)~-UCqf*->%hV(VhKF<|OJj zd2ElNvW=^CIPbK-ng89CyH?#KYPRWKT9raw)K`-d;GB%)ZcO&S1x`%a02gCdJ0y947k@xUi zFT1tc_63n+fahs%Oz>lB_j2A{MDwqMKWX6W{?PpE;Hy2F)WM$w=I;XN-Lh@>ar?S> z+iwRVAO9l>-M`B4L)}F+j~Kj38@x#ve6`;Ho?_&aPq|!weLZf<|8Y|^9o;^;xm0Za zJW(&Hd(kv_lidEC^UXn1o{ydjp5of4H-CIpr}-U&uhu-7shATZx3_hL-yhj81-`v+ zzUC+0%l-|G>HYY9+riiC-OJRurJw5T$ME1dGLhrKa}sKB{OD~S?0#E@AKkl&?fsU) z*XsSxpd-65&ncn+R9FC52VLi80089P0qz}8LIH5^Knwl@sACUMsOy0y00000NkvXX Hu0mjf$s+w= diff --git a/resiliosync/stats.png b/resiliosync/stats.png index 124356c0c6b122975adc99547bfa33a87888abb7..011011813d3e672f882df25c90134d6b31f37609 100644 GIT binary patch literal 3533 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 F|2L@GK<5Ae delta 1227 zcmV;+1T_2E6z2($86yJ#0019Did_Hz01r@1R7L;){{R30lmOGZTI1lf@++x9nUNtE ze*}I>L_t(|+U=d&qN5-TMTzqN-#jx_J8A)eB9&zAho0IarLs&2SDix$A%qY@2qADP5TWUOV{e% zSG;fg-nn-y9U+7eLI@#*5JCvKU-VA9f71&xFygrHnufXo=mK<;gHS*>=iXD$1&yM1 zft)m$ne?L@_3(z&r)|9Kh z7@(_<3BU30K-U1BK+dA2Q>UAQE`ggsT6e>u$JObsWIP?{8Z7G}+9%cc9ZF2Xvj#aqqUEixawG3FLrIoep%M16>Jp znrzhRKvy5Vmj>@ZS2>B|quZUncLRYO4r5nw8~Otb3?0+ z@pO|DBe8TgB@o8bwT-6}$g$XgCL4<#fX-qEple<10Cc)xfo`F52IvN$6Uf=?dnbD5 z$qqm#kOMkTb^yB0cDjbXcmH}wnFqSdezL>xL#y+={{!^PnKKH;)88iUen+wdv!_bfA=<~gVf%sp-^m?TtquYGZ?Sw^?)|y1v~%vb_l+@o|C8uTo& zxF+7Uhrw_78rIhxHX7QWB0b6`sip;Y$~3qtD(`1?`oZ0{6l)FL&krh_t6w&c+KKn& z=7CwzeZE2D6{Ga4f5;x5mHc98^#C1>A~ughJe0-!7IRPsI#Tc38`St{MDFprUL^Ja zW=X7$Ih?h>s}hM^O-`;br&p@PY4NO1i88Y)Ex)SbtGFmhx&58*Uk=2D4^xSv-*McR zH1^d6iLP?`n8sgpQTJ!{MNY1alt_Ac)8Pli4!=$$of0iOf9F+XB~@7!|G?UdDl7D> zrR&@Fg737a!$yf-C)}T?<3+6oR+g$J&3{ABP8AL0~>ImJ(l`-j*#`za7PMGNv-RfG~bmyyWTUdFAS$&n0E69l^8=K4_s3TK- pGYBF2-VyE{9WjLh;oi|x^aq`=4aA_X9!vlL002ovPDHLkV1j;bW%>XB diff --git a/scrutiny/stats.png b/scrutiny/stats.png index 4195b648e0b7fb57b9643cd2c963822829950630..9aa29df390277895595375e8d912af705910ccca 100644 GIT binary patch delta 3596 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 Mj)`uC&ZEfx0o}Jhw*UYD delta 1741 zcmV;;1~U1U9OVs=872b&0019Did_Hz01{A4R7L;){{R30lmOG;~)$~!ug^H4q(6>63pzryiH75nn4Fb2x9;M00000 z0000000000005u^X!i;%MLIAq!9=f@$Dh~V=SPNK|9*c4OvU-1WFL5c%lqy#U^3e2 zqtoeM!2c(}OY(uawEJ7Vzgd4zfcIwvBfqYH2><{9000000000005D^>olY;n3cC_y zKHE-UeI-c;=^!0gm2?8MpeVb<>&Q{tWF%3|mm0i5M%e_Znjn3_R85e+V5%mWYQY(h zt|e8IVvoo_4hnehAZmQ7CI^vBI(eoDNLQb#N!Jq%q|cVBNhV9bM@a|kGftIrTn3JR z+K?~D2O{3$W%@!$+yl)!)^m$R125z4p|u$w<@DoT3(L0FJ}2kgJsu_9u=I4G0V!1ntbUd7E@A8)RHZ#J0&Q1 zzA=MYP8~T>CtSGlDZasfN6HS-WENB#R#HUng4N;cHomcM#G-3z}SYP|9QOtD|1kQ`Q*pB|N(Aw3IZ2|+FXw_PfAt0j`AaX zqXgHpFq5Y1tWqGnIFL$?t1=@#o?vAe|+ZGic%*2qT@wliuhnF0t^Hy#lcjx$xdhoPn~ZVM5xK77bts}A zsi?nzq(^fo8V6^FWVfbieD$0com%a1KHY8xSgibr%&Jj;3#<3`q&xM2PDJFgH>yFo zOz*v&P2XV67dzHe;|?=G(K>y`*cV7&WVZ*z6Aznnko$o z6Rv5O?QV0&(CAVnz16WM1YeX#-Gv3AJE8qBz5MnR@+YyIy-ot_QnL?=5|llexB{(ZDA)Ll~Zgu$D18%AodPG jy#q)bp#Y%X0V((axUUiPh-XJI00000NkvXXu0mjfRL5XO diff --git a/scrutiny_fa/stats.png b/scrutiny_fa/stats.png index a336f1fd39757549d09f4315641132bb9b0b53f2..6987a226df1623ae1f843aebee920541133be76e 100644 GIT binary patch literal 2876 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 N002ovPDHLkV1fuzZpi=u diff --git a/scrutiny_original/stats.png b/scrutiny_original/stats.png index 746b946fd24e849bd416bb41a63fcc8e3dd17f9c..ad83c71b04250572b79365227bf53ca72dff4175 100644 GIT binary patch delta 2543 zcmV$}Nkl|>rQd@Z$HF=0650OR>k!P^m1nQzTol{7F-6T-DO|cO}@n^^-XNEJg-v`6kdoMXW zcd_^I=x{i^T(8#-fVO;fb^rjxC%FSONOA{gkmL@~Ajut|L6SQ_gCuu=21)J!4S$l{ z0U9K^12jl-r%IR0W%WDhj-(};AdB!x%beq8G~k(1=kX)d2lza0L5 z`eO9c?#rS$yzf#Nv-@_Fa(g!B@V=^bP9eE-j$6vRUaz-$_HwygKkGNRUazy6@wUyd z5FQo9fqgFn!{ZKf^zh5!$o;QOBeNOKd`W4d*KHFyx?AyN{?zoz5 zr^j6yDtz3fm?009JLl+Y=RTPRni#jAPE+=<%Xn#=5W#dsIrw@b?`jUdqR2nK`}F?p&+p&<^sDclzIgrg#p|cP{@pM4 z4HffY9n-h3mN#^_dVj%sBY*E|4!+*VyM=NsUEU0jy#2Vf^akF){ptPNpS!Mm`R1G7 zUw?Ca!1GUN6`fS!!BzU#T5Q<={Ndj}e*eG!UcUME<(qGwy?Qd*W`D=~^xwJI_Z^xv zdOYm#%YORuX!6_Ab7hB}*zmqfVa)D3`sq^4;eAKD7m{Q?zWemy-G8T#@BZ`Q-KUT5 zKJ~qq7q6c#?IO7Y>!wL_`XIp7EI%4>lyGPF9X-Z&_NUVv9XR^N+<}L6aIVX7NiL`!j%r&3k~>hC>3=c+Nz3zq-5GLz`GIWn zAOVUJeHnnWgl5a!Xv+X?OE=f$I2Tj_wmRj~=su|~sNOZ`=&pqR`{6+(cOZk)FOBY# z>VoR_akt!09NrNit~^uGlR7`SkM`X@lTvaA;wopZ%W+9&%XIf&P3_|-WIZ{TOxl9fEy<)9uI9d}ynOWaTkcZxPN<()91V@3*5_{qHUXB z&wc63O@AZancQW6$i}77>Xg!RpFU|%a))!7ie9xMlKX7c?-{C)nYk{_DD)Ys8+TW^ z!*Tj8t%~^!)zKDiVuAuG&mTnO2V@@~_l^i8ci2XG{(y?;x$h&n!xH5=k~=g)dCrg} zf1zS#E3(9rzfcqX7B;fvFO*Kdg&i#U3&l~MbAOx*s!#;wIdLUP?t1R9N_kFFdhU>q z@|Naf>JK14*NO%H?8MRE%aL`O%XRS4QEf@wN|j? z&RLY_6fRYA@9u27Pb+upxlfbJ-mkSmR%q^mqV#kk~>t7B=_x;DLrP7 z6o2$vXh6cp?Cpr78?@cGgr#yP7X235lWJ|5&XT_rOnFZ8%yXw%qYOU$k@B48rRupK zi)vd0k~c@9;GncVk}_2mNY8z1)}xyNON7HCQ2J5+a% zINVEe&qK!?8Wy>7AAY&}8LEt=`DH znuD)5@~-CK>y7+~giHQzTonE>-*Mq00!W-W^@(%ffkM&z*i+uYb@&w;+ zx%6?L{Y^`F+wY1zuvz)RM}PlQt@i_yA^4?z`)|(o+;7{3KV+*bj;&hS`1r`HvIXD2 zld(QAsUuHuDjgkSV?47qh8O);$QF5u_di?kJ4O!6`GJZ1ciJTmeoLJDEBEP^qcdSR zj@6BqM&1(DMj3)nQ4u7KJjMGQEBMhMs~eZ|ff)@F-uSjby}?KS2!CaWJkj52m+{j+ zHJ{vv!v)3~y%9^VXN5Noj2uh0;G;_vdFrrdk8)S=!+r1CIEp-xXGk$!%C|lGM<`q5 zDV!Vp{?E|#WO7-%?`d=rTiSTX$oHx@_;iua{xo_C*1z5td^nh4{WUt!LD?eTxcyyn z24C8z{jA8l#KBLC?_BBj^ZQ5t+W;V^m6LhYPk;V%^ zgBI78>B;^8)mfP>BeMh4Xr|{LeZD6EnN8-sYs&!C@4w-a@2Odx@Z|si002ovPDHLk FV1jk5AG~0ssI2 z0000000000002-AO@61(S)M2H{TU|xj$m*N!N1b{{q_6r@8|W_OS13x-ZFl@7lu<5 zzb8ny!TCQ=5$}U!-|y+~x_JFB3^Bu*(Rq-6ZiRM@wydde$DjZE^mu4EeU$ca0Hqsp z_rcx=)+dZAOfHDg-rsRS)AJNvA;A7EVAlZv0000000000fN=e|6r~D>!xoV4PU%AF z4oPRI!TUX3z#HW{jTnM~`wUQn=q&GGz^LrD;qzlsR&B}ak3A~8(rPLQ?SV(Vb zR_3;&7fW?Py5f`r(p$o6%65i7FDr6<*-h|WB=9n&OSy^yq#F`=St1u!N7*9MVcm|v zi%8Q(kpX+RDe$uFoi1C$gg=AL!6I;fm80)TaEb5qaNcB} zjN%NAUY@-dt$BiU8;)Kxi2~9s3!I9aLxD4i!lA%f;o?x>H5EBQdh30%Gly1x#ej=d zN2d(y(9tW0Rw3Q0zzd5rdD3Csj==Mzt!)lD?x=v$Eef3Cj6Z=xdf$DrQxiEzx9aE> zi5#R`b@bASktn@0fpbrHC~zur4h4Q}Xm!}b%wIpf4}l*XTJ=c!vm1d|46QmMy(34j zShcz&T{wC_8x>x&$v*;bFMD@?I9;k^fwS1bNy^4z2hWbqVh4wgP8rszz?t{%P~g6w z?BG=32cPV)=-Uf{_g0ZxJsS1oM4!w>A{V*7aP;nK@5&i~aC9&IbeS1&LEzO-cCeMm zA#h)t5+HDA6*&a%Y_S77|-4BJ3O4uLyU zIs$j5boyj1kS-j(^TiIg**lJYk$!rL3IL`-B~}qHompFRJ7Ou7{oR8deHM|3^0GYhjmB?-Fy47J3cVa`|OFE z@r=m#%lXmu^dK3Yy2L)-cq+UgI_ztF`caizTb7MhUE{NG&8=R4afL>kN7wHZ>F~s7 zFKb-kBjF`~y7o0b`KW(Q*F^9AiJC=3r((W(ni(w2_S+T1dHVzXJ&>!M4-XM-v8 zr7YTX2IZ3de0XkXI>%=lPkZEcbk^S2!XuwZ(^e3jn-P%?SLV@t+v&{W=%Mg%XX6Jy zc{Y(-51-Mp*?K{AIsq@zzhoj>%eqv1^__q9boT(DHH&E2QA_Uc8?P3zCB{L P00000NkvXXu0mjf%rAjv diff --git a/seafile/stats.png b/seafile/stats.png index 6cf809efb518a8cfc524c2c7c58ab3fa42a447f7..e7bc59eb5a4ece8eef0c56fc9cd3c87956ac8006 100644 GIT binary patch literal 3659 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 K^xx~cME?g9NGSyX delta 1579 zcmV+`2Gse>9K{Tf86yJ#0019Did_Hz01r@1R7L;){{R30y<+5+1=QcN@+3_WACVy! ze+Ar0L_t(|+U;G7lG`8*M8N-lbDPV{cECoMhlF;gbJI*XO1(%HixAEM0000000000 z000000000$f6)5}5gvva&S^(Kuq4Y5izfQ~&3%j<=DsfHPxJn>aC#E|_3;GOm!HA$OKnLnlOHzRx)uf;)ZEkAtgSrB`W^00UgV~xO-C(vRNH>_RNkyInq-)96 z3|SPDP8=B)q-)96r1L43lwmW997tES0x0(HAErV2s-&kCIm#+>c$zC%IuTEXf5qd} zvmz*-4{c>wK;}CgOEznyv$tdLG?xtIK)QiI4y4~i^!}lS`KZRdGkFB*Ka2jw6okhohC+t^sQ6>_2@q6RpcPUUK5^vhexl1^pqmE-SGkGxwm){ z-U}z4QtR|@#)g9oTjbLZtVabhe=H?8cM-^OP5grZab^|x;)S@3*E&dVL3w%O5T%n2 zMXt!Nv)TtJa?6KqB4ar^+hc>J-w)j+#&WDA3S`6HFmXYPb!u0XfMDWEOr4iRK|3+l zAnDQH-zJ@J>bw&!=ZYMhx)M|8Z>^HED8t@%>Viz2m|LqKMcz~(7k%5@f0qD7&WKZ& zWa1urO$n048MCDKux~lC9J#C7CiX~g8MKMqY{NUfbI>NyzgNiX3(K%$ z7@xkw$_nHTiLh&lGo4@KlHzw>Ah#^({a@pfw$*uo+@hq%@#l_$u6H^uSCn9eubsJQ ztEdgTSRnV`vBxR@EY7DJe{$>s{JZVqffIx1ss7y=PK=znTAmrdTP{ivtj;*YGHjR~ zL25eekV}UpW#>}tPCEWOJ(~_os~$yKE|jY{?2s!(p@?)5r9kF|a>V{>0ZR|Y7Z2oW zuj%?Foxr(@P>w3Z8SQ~wFh3IB%?>Lp*@B>OG78k*S5)KzRAA=Ke-7$Nj{&2xrpS5k z;C8q-J18ez8t1cK>il)O-sn9xzN9ml;f0&h2xy(}{&WPJ$5i!P^963FtYv6o>sgvVxvXK@UR^GOnj1AVa zN)%L7nn11$8=OPh9xogA*nCV*jOZNB$}d8Cg3W|YD>L))f2>!y_jySaNjBrr%WLF( zEbA>#t#&UY5HG8`<{Um)zipl~NWZ8Z@w|p%Y=Kv`tk>?c4JJJX@0Lf9yvyc>%dp-6 z<@KybX3-?7$$QV-(M1De_ElN;{37Ksupf^CMb3zs7gfFbt7W?jTx*Kk3fJBhN8_#6 zDEs;U4qW4)e^aZ&NFROOg6zzXhVx&nrAHqO68?TmAC0)}{1;j8edrxJvM+#qq3zS4 zcE3+>>Pm34(9pIC!Kv#fojQ{KN`&|U7*|j{u!{7TM&370>>PzIJNSY)Zbv$x1-Mlg zSmJg);EoZ4b&w7$@7o)^@d1szpPW_Rt<|;@gpL7Tf1Absw=9hy%X^`sv z(EM`n-5w2h@b2{dB5i#??SJ|C9bL5F4upRGBaH4}d78QIikcS;-th+S7=!QD`{yYZ zKKaWcbH}b6x%9_PR$Xy>c5~|3{8>?t)jdfXykoaN=X`TiJ@GM7L%6Ixzxm%+eVUIL ze7ELoeWqN&QRQtx==}Vl{Zim+zNMO diff --git a/signalk/stats.png b/signalk/stats.png index 961f768251e3854ec590dfc1a2dfdc06e9b10f0b..890c00dd65bb51847a61a03a87628730c49e737a 100644 GIT binary patch literal 3745 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 delta 1684 zcmV;F25b4D9jy(J872b&0019Did_Hz01{A4R7L;){{R30l>*etf$FhD-{ijZ=Wz^n zks%j<20=+gK~#9!?Va12>L3h-NrCr&U_G+G|7#Lcf}(&2qX&KFuOZsvU^UEq9N+FzP} zBOOg2-@4BlEia8<%mFaIr3U~2000000001ga7WyEoRe1II=QMvf)ZRy(;@w8^#o`- zq~A88z?o21UGlEzQdWINoAzzQHTtZ5Isv;CY(n}43pOGBf(4t9e!+rG+4_?}`q>IL zr&Xv)7hM__($7_}DVtMF)&j4^zA345S|)-rt#Tv!9NppNI4L7e4(8h~fQrpBg!eD2^4x zeZ6QM$h`_-NzNR~xEr0iEs%rsgBkZJL4WH&4$_adTKjVDeSErbD8bR9IHOa4FE|^v zFp&F88yWLPAUmcpt@THFKK+kz|CcxNFx4Z9GdlIX4i9`7AOE2Jf8y{z(ES$6HLFwK zsW9?24gHPmd5a*R`i&Ib^2BzLlaIoO;2-4&O&nNR6VuXA?oGq8psLnEzzgbcNl4 z^?J^mknZ%POO17h^){TVBRMHZ&X@x^)eMC7TF&*6ob6_ZGIKFid=a1zfz+Xq>1KyA z(zO#1)|GL4s2xGu%??GRtCI$>uE9oHLmSEMkdf1;2Vvc~om!aYvfb=|P(-?cO156B z^uqgI>vU`MZYs|8&|aZH+M%}J?2x#lOWIiX2klT>oVlEORn8<1hn1#|8rF;VD5h>1 zIWeVSV{owEJ8U;vRr^z`#x$%iaMCz-W7uvRY_S~(ToA~Gk{Su(xia&o)UfU~a)q|q zQ&3Ydj7neHJ2?}J3nT)6r4@G7nGQj^_x%Zb8C&M6rMe&OwM@UKO+I>RwXN`ku#7UV*lJDoLifVvv0DAJ`Fpy*ky=t z-qs&(okStIqY1Kkz1T!eue)NmZ#imA>qgdm<7o$VAlJw?Uv$NPUXqMf1ySM}_k$4s4>0?c^V(5RXoH@99}!-t|Qk&4)L)cvFp7tQpn5Gbirji`qQ3 zx?A)WR|dss!ENe)G!wo2gcv^GX`8ofJFn9H#eCW^ zlnoq-qGeyfkXW}4NbZtHZp$OzCfwf8(ffZRL4yaP%o e0OlPW3;zJvPZBsEb%)yk0000fN>iqeMCSVn2p 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 LVqJ48;OBn<{>VA0 delta 1350 zcmV-M1-bg=72yhy86yJ#0019Did_Hz01r@1R7L;){{R30l>^kgU*z7g@~0LAypbUn ze+2kRL_t(|+U=czmZKmHMG5-<-#pW5TSY*yLV?^jXM3h2WvLfJ3=xe%2qA~ZAelG*69xT?listQ$@rGXA~ppTuT33P=? zni9Px2YPQwnl`9p=mPW+lQiY5(*b?FBuz25*>|Ahy`wIn3v;?U=)y?XIMRWxe{ZB? z-f`rBuEUY@{^72rRn(> zj@)1)UARuikpnux8K46l=)*uKM~*oi=)-&O*$G)dCy4^#$RUy_P^;#hIUVmE=qi_1 zfsP{w^bw(p$KnU~kpub|!5Q&ve;ydzM-J!%tfvP@I?z?k=@Q#V4(P)|kL@GJ=^QUd z&fL3?9O}Z6#L_BaX%(@wig4r*H#;Eabi~aLx-@V1^PXmI zc2J;c+Vz0R&Q;daS!Mg7j*Kr*&kD{68x8%M`RUmI9=a!83h0e7f6Velf1m6C^ah#d zQ_p*{gRrGogUoMEm-0VX21l-I<~-R!BXh3P6*A|^4xQ*)=&kR}nI-l(8@;htqi$(+ zjX&gvA;t~F)w^r;N6_D2`Q8rS(LkTnZ3t`&`7=7bxIWg?ZOQMi&x`9~PPb)yy*e+h z2k5r=DNyFcbpYKK_iD6xe{t73XWyZaA=(du*>n1%)0rcRIwlJ?tD!8YZ)ceA> zPjmkXhS!rzOPcn%Zr;0?_+~?gEDAC89GF{A#y|0u_UE^|y3toXsZ`iGwiAU!GbxHg zw^h6wm-8Lm=V@Ds5C7+HuS19b^jdcFw?8c(e}1k0*DMkEbY%2D z`iavG=HJ}48r@dx2wiH1n{83A;lW`3W_X)^w-k$frm!Pt%ZDt^>}Sr5dfhm1e|pY1 z{>sZq8kTdy$Zgc^?{SsQ-mvzxoh3I#7fOl4GJtebb(hh>CZQ+J*LI50o(`lhQ*wRn zsq;W^gXTT`a%?(ae}9_oNpCJ)uVL7%xq9o10lZh}*@4HkkIVq?7WxI3eD2qw0{WGJ z2gmIN_(;s6jY7$8RW|LduJx^)sd5{RYAN}^DgHfmrKww z>&=??QqV!(^5Z7-{w{?@#+$apEf>Hz*oIf{Iv1KPEBs(Cts|*FA7sCgOA+$6IkfzIp2{9;|-58%lERCbjk| zjW1REdq5{veyZ`_I07*qo IM6N<$g35EVcK`qY diff --git a/sponsorblockcast/stats.png b/sponsorblockcast/stats.png index ea5426802b23c5719b6c271573370d21b07aabdd..a744730407c05b300eec4721c32a66ebed099198 100644 GIT binary patch literal 2710 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 literal 0 HcmV?d00001 diff --git a/spotweb/stats.png b/spotweb/stats.png index 6bfffbbf0f88b8cac425f793e47715fe28d9e375..7a9e15ff5bef932cf4e290a36c06fc5fb02e25a0 100644 GIT binary patch literal 3787 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 delta 1734 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 diff --git a/tdarr/stats.png b/tdarr/stats.png index 23a4ffd8d6362eea5641bdc507ebf814b967a1ca..7f1e9f16ad2cde99a868d53165afbe0d94002ab0 100644 GIT binary patch literal 3481 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 delta 1526 zcmVyY&p6<3#;c|-?8Id6u ze+8#WL_t(|+U;G7lB6IEB*Fjx=9?Yo;R77-1e2!ws%FoXp;+65kOUF}K@bE%5ClOG z1VIo4K@bE%w1TXD5G0+z_CH+nG<3rvb1T^WgC7X;7BI@#{pQIB6 zK@bE%5ClOG1VIqtUT4+UNkvc95D}<1f6)v+4JGL_(;RV%M zC0RpG&gCV!Y(CWBJ9R}gP2VHwB%P#>kh4kB2h7=&aF`)T(w*gOY8J($3rR=J*_1=4 ztE5_AwPYi1HVDh~yLgT>3^`eaU7V7xe;2nKAj%fJN7;(G#1-{=(j~YKxM+oscEo_oUc1X@ zrgv({RYg;jb2`G3txkAxMg1tohUT29ou!pY6z)l{&Wb@b|NfZd2!|L~8 zcDS744>XW_52f90!QoilZ$ z3m)f?`d#E_K+XMT2fgvzbk2C>98=WMN!PA18bm|RAL-gXN&{!exg%YBhhx1bMgmB> zn(2gddN7zKGm@yw*=62d6Nu|HnUO@jKD3%md>7woG6R`%Cqk>azDx7ncq zLty$HZ?i*_gFcmRSj(iV7wy5kck3dFrQg9SJE*&k&H3KbckQmz8=mD0rQfS6JFL!~ zG3SPjEzfF)((iJrWROMD8z0ZF!&Y|qYJGF0tH0I1qjkE?fQ$NbfAcx1>|oZA>rstC zc_@LUC0p!LZ3k$tx_^&c>{Vb%x!J)A>HVrJ;fQ+Gfxz}ik3H+CDdXt|NRNF>=fQ}& z<2gNcua>9-lWt?lc0;K|6j48$7G=J~r-kf+j<2HA##w#^hKY>r8_%De|{@W<^>zIym809Ej}xkc#eKf62MI?uwch3_jEiK2!|8S?`~x zSoq|BSnvC;f`s(tB9*eZeRXqb*nB=wuc~{oH26^6{+RQ{NhFEOL|uTg_Vvx5x7sxC zG5BW9tC`A&R(CUl>@IiDLCQ5ls`)|pvVKELdf(o^cku0cPcn5Z>4$Olt$DB=naK8J zBFQz_NM0tJXS-h}=N9)KN_+1z_*T7t1iG;MGf5N#&k!ZZI^o(kLl6Xg?*!F5!4wLD c>YcEHe`Kx?8Ri$Bc>n+a07*qoM6N<$f&gd!X8-^I diff --git a/teamspeak/stats.png b/teamspeak/stats.png index 5a8a8ac72eb51a24be5982e03ee1fc0401205470..b3fe935fe021698ce47e57a4b3f848f27bc8cd27 100644 GIT binary patch delta 2823 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 Que^Ybg}r&@dEW>B0n4LvmjD0& delta 1378 zcmV-o1)chr7X1p4872b&0019Did_Hz01{A4R7L;){{R30zh&i=0n^^G@=*YD-q;r6 zks%j<1rbR^K~#9!?VXE~+aL@@k;DG~FLyUd9Y4SZ8wg0}wzIQt2t#us5D0{G2qA`}OBV`u+I-1%bIH=<>Gb z7vQ(4zbMQ4D}hv*y3BU|e3%h0UjRA|9zqCzA%qY@2qA=!YZ;iBS1dk1koNVd_j=^w z2Qm_k0=hk82RhyRVk-g~L**PfsT;!Ts<^4fJK~TEw(J2N=s>ryPZQ{)@6+^tdOV7e z%AJt`z5PDTpI_jU_n)^uqDqD?K<{^-rvD}W;|ur6l4GZ2mgDUcVFvdw$=gwK7e*GNOZarT<%YZm?$+XjdT(2YSzF5DWAEf5EOEPIdZm3xKv#VR5Jzq(=-zO@Zq<>SCg;d# zVaky!eO81q9rsNo^r4dyfc#Q_Xmyd+YPcvH$Zv#J$4pA#L4J8-qzsyr0GHieKeZ}D zCMCdSzjGRS$fN`e=H?DNfZW_+2auaP>;Uo-haHB34svtLuuRPD-R!``{5teO9XTfE z=5BUiFgJIz1IW!eav(Q$v%~XvF+_{c(>qQ|;0>KXY9}sz7H2%Jn>FZ+DAH{s2?6qy#blJ(iUK=Bm5*mQ%I~ z=GIo^h^U!^PDITfbS7%%ptBxh4?1RU4m$fD`&xT%03Dy*T6QT9a$}b6+1=dVRoXS7 zb24odM@~vqW#P_pMTv%%MFjh{ky7jqbnJW3sInI-PHE#4{J0f# zG>Qz}s*8%>^?{TO_fQ8qQs1{181d1F+~Z@tNZJo~dHvXVM zsQOLu)5cf(XmT5W;Fy1Qy|1QitHaF0b(}qw&>h zpFhRKPyRH?+_oxzxA_?N-=A24K>6(AQnC0eqh40^(o^GIcKKuGubyLm@8&UZ<}s~& ze(~o^b&9uWe6`})q~f8~-N+!j$KB^3={-ZJ_(Aou{)VR1zJ2|>jjvaGkkqlIAI90Y z?!mTYBAYMI##`CGeeoD99<6?PTt2yWms)$1#@DKSHt57L>aT2~K(^b07*qoM6N<$g6{{!$N&HU diff --git a/transmission/stats.png b/transmission/stats.png index 2f4c20320e553962138001a05fafe04b46b49d24..669ab9556c80d7b9a5b49cd50b9ae7fd95d83a90 100644 GIT binary patch literal 3381 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 diff --git a/transmission_openvpn/stats.png b/transmission_openvpn/stats.png index edd9753d6bdfc2e53e170f353b1dc6b0a685ed95..54e36c2fa189ce3430f18637561cf28c91bee2e4 100644 GIT binary patch literal 3555 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 E0gqq+X#fBK delta 1720 zcmV;p21ohh8_*4q872b&0019Did_Hz01{A4R7L;){{R30l>*eYP2u3Q^2&kgs@aCA zks%j<24qP@K~#9!?OoA=;vftpvHbrppSM~|D2F>(!ah&I`&~dgg)9f8Z{2{~o`Cf= zFk(}ukp7LX_e%;pa9Vru51F)85Ii;O;{wv{>4B}+he8AZ00000000000Kko4V!O?Y z0_@vU2WJ|r&(zXE`fLjqXz3t*w>AN2fII{xCFH1W5Yte_r@DEENHhasm>_+^Fient zK4BOpNS`nalUz2O5Tq*$!{j82NhgU73(~cOVN%v~rKk;?aO6O`mM~0mlKy?CD?s`j z^9yo;t^ny4Nhczi4U4Z+&0=Z!^HA4@1%_|5ZXW>2Ty? z^6mFz+&|#R%^=?n#k^AWE?s1sfOKDMxjh!WE!`m+wphL?5_429DFGQD%tc*)w)bX& zDClbo#w?_ZU3J#ly^|9;a+YUl;xT&UQC+^YN^UY6*7F$x2cE2xaB219$WJ5WJf9q$ z8IGJ)_f4ggql(&oO7~4;Q_q_-QX^J8BI#yx&9E$ z`fS)lY6_D=Zs8WHYfveN{pn5jBe8*{RimUY&2}D++0+pj*>>9@BPqdL&3xFVKD`aw zdUr9~*zAxBhgC^>^E?70Hg)-!o(zZ8NIIMN6&*G^q*753I9KAulK7H;otEAwZNz|H zEV;ACbbXUfkZ>yccRFFt*bs6{w^UH$Njcfc4tAz&J$DncD(~H{BiD5=@o-X3cCv#N z()(ul8&1ki>B#kNdaU|n2OFe!S5}RG;WNmq^*mj@dcUE!<))HUEKuYpJ0#EOBG_>K z$CFb5+w#a6a<|#A&wlKG39oN}J=3|o{@DLmY8y;+#?QIOhFu@(YY~jBp?BG*8cs5M z)?kwFTD{AL4eS)p+Jv-7%6+98PAn3fHJC`25cozRw^u8yZSus|)&#h!!K5Wd?%0vB zvI%qHsGi&{%QX!qCFabxL}g_rNkLzn-7Q<^snor|w-maUT}<4lZPU($1mjkT?99y**F&9*A(l(pphkNY}uCJHJ_P0-ke<;!h&tiv^ybs6Qpvsp7lWp+Ds6mopIz~Dz~j29z! z`;?8Z7V*4*WL@)gzBn86jApKFe>z|DT|l|QRW`olu!3@hq)R4RU!KKH6JWdDd!HZ* zVf0t9EP3Mu*sPH2vQ_zv=>AXky%S*5>b*7T7>>syy{-3uj^TJj(o<)2)v#d~49BD8 zh7I>X)E9CPV6!=LwT{pLw0Q66)JM-QRhe{j>QlA!*A6{&>eJ+VNBh<+g?&Hm zKm58zKgx$ULSKJ~p!#>5W~#cP;srPFWH;{wH{Y!G&$n3k&Hqd?cdW{hi@yz`>Wa&Y zi&MkmuZ()4>S?5#cjEGS&V#M$k++c?!e!;<#s4mUwJF}?=9?84Gvx}lDu)T7)6Wm> zrvks8w^;E^^|XINOKLw}zxU?b)gEOk-_o<|>_>TUyfdO>>IzB~IKGV*PgWnsX%^S+ zN^9?O^Q~(CH0Z+W&je8bh_C>_I-uH{0RRBrJAm#TKnMkZ?j0Bf{{Y4u5&yOWQ^o)Q O002n`MNUMnLSTaQD^`^N diff --git a/ubooquity/stats.png b/ubooquity/stats.png index 22822d37aa8e1b685d51f2d6032057461bd17d83..7827068a856438119ea42e51f8f2f8bbef46bd01 100644 GIT binary patch delta 3457 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 P00000NkvXXu0mjf{F5|B diff --git a/unpackerr/stats.png b/unpackerr/stats.png index bb1fdd675cc928b367d421222e4efd5104b93d6a..75f350cecb4359e2248c4d50e65f4c59907c6a41 100644 GIT binary patch literal 3742 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 delta 1663 zcmV-_27vjV9heP}872b&0019Did_Hz01{A4R7L;){{R30lmXMVP2tOf>fpBXU^9|$ zks%j<1}sTLK~#9!?VSmZ%l{+ws8ke+c(E~NGX{bn2!bF8 zf*=TjAP9mW2!hl_XaYcohGI+4e}?G6`T6(phhE>kzkmIKMuJWYvTwXZ->>LX1R4eU z$Ep{Umv4jleuPG%zI5MTPycc61n7v|AP9ngAP9mW2!bF8f^HK1Qd3A|%rrHDDW@3| zm4H6!g4(Q0p z0s4^8;oj$hPKJ<%MIZ<0=+glm(4j$~W5|X+9ngo5-ZS<*0s6gS?L`z4d)XjSS+5v_ z#docu;ct|;>We4|OGYb-n>LVtV-YVI zh!AR0FMnC5?9;bVwe^=hyO-~IwVZpwuGIk!CD@w?D|F`Crhef~&6-*zG9w&Huy3v_ zLo3ftDaclG?gdk;{U1sYB3y1Z)@nLpojUUtM$!m}60o4%_@q>;f~jAsGH=%^4R9zy z*r>}grm5Wmw`J&=hy3?{D1jA!98M>{Dc-hZ=+kX>h}vcWmyB67>)SE(={7qYpv~sO z^(YAk36pJhU^y;aZGb*nH=i<0tE=9bqsnW0~Skv3mv8!#Jmq!}i-0bkb z^2j=0%|cSSu&dt>ORmgl`DO?ISb5}~+M|#2IjR1B1G#nPgDVYlPGh7i9csF% zb2zs7|IeF&Z+6%=5LX)7vS#4S7s@^Sz0|NTZ=7E5Py!YXgIFX?x@c%=F_`WO+T5ER z3{~5z9Por(Cxvz7gSke3R>fM=*3AypptEd~vj~_PfrYQI7pmZ9hZ@ks=2kpbVhJ!J zUiZwwJAE_H-t0h?4kchgQ_D}8vZB{LcJS((-%fB*aA71>3FM;vYA*Fh$m=BDIVa|I z`DWMN?0h;)q#&PToWjICU!Pyeci?qgd#lNr1GEYGjZXse(oD^NVo2;QyBh1&>$vu2 zp&#{oCxafbX}MSKQ!*oR{7P4I?X5!R(l4DTA>n!5LzA}Fn5m(=!c9VsoiSam*>W|_ zyiMp_^nEwT_nT&`KY4r5&ttWKUG#)}P2Jz{ z()NdZF|hQett+~J(pggV9k~7zr%R8b&D_^{#CAIbP9>llmhr!j=(8RSb?4Jp+m%TJ zx`Wv^8OQ}rC7@RJ>p*(9Dw7s;3qx;nmMw59fz*7uw*YeMe0n^7-=9iAjcm+=6y3Yh zkj=r+r_0EBL~+wWhn>#{9fA9F&^;rDn+>{!Yo83d)Lu+~NH6y;0^RXX7@fD3kyC>1 zFdaIZrF$T6*wS?lB|y;DaUfSV%jOWYweH>%Pnk=H4$t1adzXg}H6Oi`5_FVrw>+i# zeuDbaT({~%vUhzzgLLRcR#;+`$P+bphsrdw}AmpZJvo}^V)0zmF>?@%b(S6GV3>) z^=m)Bdi^G~{;Wk55LQ?~pbmANn}Hw*xpxTe9l{a{2<{zfOMft=5ckAgC2Rly002ov JPDHLkV1gZ(PU8Ro diff --git a/webtop/stats.png b/webtop/stats.png index 43d364d16c840ad297198783bbe9fac5d026f5e7..cbdf9767367c71859c4f2e3a12d5cc65d24d2c9b 100644 GIT binary patch delta 2890 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 delta 1408 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 BTm1k4 delta 1553 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 Dn_R*H delta 1358 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 RsiPvGbKgL-@}7Ofe*nET5)J?W delta 1607 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 delta 1643 zcmV-x29){C8-xvz86yJ#0019Did_Hz01r@1R7L;){{R30mIlGv40}!e01_p58nyz{hH6^f1ouYJfMak2!bF8f*=TjAczEQPQbKS%dn)g zVF_1qt)33(OF>6Z2lVT16{JJCn~?rMjukS(2vlDj7QG*sy^9dXlE8@9B?vcN^B@$N~D>Nt(vikIB!I>2wAHf4Vqr zw#!7!pZ*W%@?^Ib(HAr4*|0e9Z!$MIo2BXJLlYYo>LWu<)>)Yp0bL36aP*$J9fKpU zgE<_z1(`P2>>@wpK$mwPdb7n>6fW9E}Fex~4Q!+YhE56vlmktZ)B;1KBpVPhRuz)UofnIU3gYQ-p zfG*s9ExgzPJzaeeS4PSYe;w2{Oz5$j5=r)2K|l0Q*LDH^`9F!^+eYsBPj=7={X2-qd-E^&xuduR9Jzw-D-63C`!GJ; zTdOvyYm3Kj#y)|OgAu><=zXi=CI-71{n$+o{8qF%^E0N`24tJDf3q?#$edvkZo{^U z!MANv<|U3Ci?(4K4$QApH}nQ{)@H-nrgO1oK4kS@ zZ`hh@+;+R|{gp~`!&l#$&o=obdv6s(Ct2SG;inramc?|DfSMdz@8xZBJIXp*j4ZEGn$JG{ipPZohr zS8=NVlrVm}0W*^$HIO5u{N zvMNl&`k-@VRU0Ps<$5}TIF&uU>ZSx1LEN-~9Q&#QbFITWr)5bxszMN_b$Bm_jv!8L z^vt(c?K`E1Lp?6;Wf?a$AQmvR;JH7&8WbC?u39GrG+Iqj&$YfHIo^+e%FqItYb zE9NY9e73hTzN{B7#rU?Obbn^Fl)EyDf2O*orQc+ZZk${%AH|&SDyfVd%|ALzytYRv z_I)O&e>IKMnnp=YqqL?qJZfo|uKx}ur%Tn30p{HNdoky`N-8@J&$HO+&WFC*o~2w( zNUZEuEYvjSl&0NE`I?qc*{ztjX$f1ad_5<8r&(GtS1G1gWxjKkud9y0XU0o8i+P&H zm-lOHT4rYCQPnkyIPAV)6yYhwM3KroP1w)iJ%pyk;u~*e6f35$X*Ed{5Hc(vP={1| pGY|y9dxtQ*Lr9^3FuX%j^bamY5a0p5vl0LR002ovPDHLkV1lD6C;tEd diff --git a/whoogle/stats.png b/whoogle/stats.png index 636f9bb0d8f0cf94b282a19952769c48081712a4..50b6ca3b94d4b61f6b6f834c953d1f637fa8ec7c 100644 GIT binary patch delta 3664 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 B*E|3K delta 1579 zcmV+`2GsfZ8pRBd872b&0019Did_Hz01{A4R7L;){{R30l>*etfa1VIo4 zK@bE%5ClOG1VPXZqTox&Ab&^!&X?YQzQK~4UwvLKKU=+pR9NxElRi+te>wNXKhvi9 zJ4i>*{WanbR=0${2$(qpK@bE%5ClOG1VIqw?q0n5E?`Yd zQ&^ue5}2U*B|=VyxYI8p0qB-e2?)?F1|fsc36i2yLCByZM{P5Zx+-p}@eXNZ3X(Jd z-C&X?pc_om1ayN*nv|TA1G=;%O^zxXIsv-IBuz@Lv;(?1PY}@I{sX!ROUIaQ4m!bq z(oK%(fNsvx(Y?cw19TgXT=0Whp;f3)M~+-@T{x0Nfvc$yx&w5B-Md@oL;|`6M~++) zI;hLpzL0%O?DjdpkyB>rgn2p~IY7ta44?zLQ0U|EP9z!u{WL~#&_^CVyoUkMt&Hja ztVag)|D9=yE#0qrbp~|(Nfe&_`U3`kbmflRxJ7P^y2T`lpyM_UfUbClOJs`X2S8Wr zy+`};!2^16*o^f z$J3*hE*1K5WW|W7pYhd%=E!lSG6tci&XE((+=i(a<;c0Z=g4))+=!_cIdX!3r);?} zZJ2tIBPSL*Hz(l`C4DAvp&PT{BjHwhTRxE+qr{MPE$0D_8bp2Px1m_s@(cJ7hv9>2ozB zqk3T+O~#R8HFl+`cHk90*`dy!G{!t#4)n3oxj~wJIc-mNsJG#mkvSs-dd2O=icMWr zXmzZ5BwSrnAN?>t|8nr7s9mdlL$7?6L`4Vwbx7eq>NoypCkKiS1g?F5l0>b!`WRsR z`fNlz{n-dhv;I9{)eoL_qGn9z?iTPr=a44G@8?c7(gK}3tn}#2*~d;N)dAgecd@#x zQJVq1+L@nEn|i)~&VXL+%+E(n-IvV78PFRHoOhdgX}7~7phwRXqsI^Me%#bw1GyKl z#!toHM9&l>MT7Y%B>vogLK}B=5(OnQDV~OY#;RH(Ie!OoN0uI6hNWAfN0u?~TE6Dy zci`>0S>^Hc=$T?Ia^&X8&-7HKne*KN3vSh~KNZD211ff=SOeyp$4lF{XB`hF?~^o@;# znuNp;_n;2wkovy8!iWz^hQ+57^@^&eo*M6p%cq%7J;(32o40{2?Rn+Pi+{dqQ~Zv` zH!EIDDjr&T-Hi;id%L?1l;1OiiYKb4^&Og1`}X^18{e+>AgQ#aC*$l}_h8#HqRq{- z@m97!U%U+#k5<1t4JEsFms|TSjc--^&!97_Ka)fOA;SU!bx8Eu3u3Z2C002ovPDHLkV1mfn5r_Z) diff --git a/zoraxy/stats.png b/zoraxy/stats.png index 2664bc121e48a6a5fee739fee4ca74250bb3dc02..ba8fe9982115bfdc9a357ef9a5e9e7612a5b87f3 100644 GIT binary patch delta 2480 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 d6u)NDuy1G?5T9 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 IExd037dal+p8x;= delta 1358 zcmV-U1+n_!7wHO+86yJ#0019Did_Hz01r@1R7L;){{R30lmOG%qVKdz;UFk+ERi7> ze+2+ZL_t(|+U=c#3O)o;FW0U{xbP*`hgyu;qm&u1g$IgAC>o)Kh`xc{rnp~dtU-4q)Q`3 zPp?Z2f|E<&#JoQZxJK_kUiI!CLd_lbe*-}+000000000008-t7O9GOS!c}RsJON_p zIi!b-OGA3dF+D@NKwCJ%k&|(167tu|C-TeM&)0)=NQd+YNt%!zFiBJ2rsa^{RFY=5 zip``8(mf_=>SNGV%P{OP%@d@zo203<-M){!hgon2f*j8dUUmo4y^@|WE}CgPf22Dj zJ;(SkYgokId62EGkZ)&Qudm?9In{JAWy6t!^bn35qz825Fz=8K>6mv&$B_d*NLNnv znWwuYUCVj8rpx@09>bASg7kP}I+`Ah^mX$N>uwfYmew6dj^GTWd-L8460{)QZxRKh z6On^-k|=-=^Uj!#_fD}xz@=4Df9w!63`?;?u%*?PnnSwd;EZyMY{cH(#@;jgLTa=} z0*)NP835_Pks}A`@f+>p}{Tj6Yvb1^`=}Q%!ywNW{pWt?b>1K)@-nyMpf8nv}f3x8X z?rCq;s!}>H?|sEu@5K$)chNP@pRji1j(5O%O#CLku1lA)7=$tLbr(Ar(Stu%aj}Eh z_=~bvTkK#NO~Ie5GYo6%apBKZnfKn={$fmgg(o|7=D#_-KUZ|JLpq_@p*!J6_Z_5f zw(nB1E_OJHjtK0Df zFB{X}8F1I9DED2g6<4J_r+oiDWxGG-A(^#?2mU#OnhKXgQlKl0e}cXfs@>CHuIWdR zUU%esT1w-v7hFPmYpWdxr{FswUH(_Np4#t1=T$hSA5rYka+aD8o!1dIK%o*++xPT8 z?L;9P(jDY4G_LSU2UI&KVh(aeQHEo48ou1f6I!F=6>Qd&URh-zf^VaYv!b9svSfHp%M4FX~HN<+@EFMGt~~l zx^J+|A9l|<*+3HOj4*bX7@#6ySE(PfUH61@LVAU$5x9!O7e+tgv$2GUn(AtNb*5r9h zF-VWSdEhUkBVVt)w%UGyw!i_aAaN{u^x+=XAsx84?LUq9pk3axTTv*p6?pz6=8Sww ztCu_5PlfHLvi3g+Y>~hG`IOv$`grK(WZE{l9Cwtg{P-5O$bV~py}@nr8}2_9-hWl? zr|r*w&3j)qf0Aa;aM^R#1dfrHwY-ewjqktw`LA*Qv>C5&%`P)Z@^S9dL;&PEOsRGN8lmFI!Nl(tnUw!}P&u3L2NBYVN``j_m?4G1qx0yLA^RIuE z|JHsgY(EvYZ+-vf?We8n7bQ^uGAsbBgQjCM003g|AOQ0YNTC3jcTgAp0dLX|Pf+n> QHvj+t07*qoM6N<$f~|9~zW@LL diff --git a/zzz_archived_jellyseerr/stats.png b/zzz_archived_jellyseerr/stats.png index f7762b7b3f79ddc23b7b21ad0dddd34bc5182af6..839ac34a4ebe5cca6e71a1643a9e849cb64befe7 100644 GIT binary patch literal 3386 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 Q;s5{u07*qoM6N<$g6%If00000 diff --git a/zzz_archived_omada/stats.png b/zzz_archived_omada/stats.png index 279e73a8209d52cb4d82db3960dade3691349f73..16d482174dcd96b5a9d993ad6102ac33493e6d05 100644 GIT binary patch delta 3328 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 delta 1469 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 gLZmO_`5C)P(9)@^qmH9T_+B5lYtii#Tj~ zks%j<1#L-0K~#9!?VXEu+$s!3B@F-n%S|RTsUKj2W8V98-Lz>K>g$b!K*AP52qA+8SQ*UgtVa21#jXxIAl>;0$Cmo;>#j|*Kt zzsttbaqnZg_cdPqweOFO6Ufao7!=qDA%qZrLI@#*5R$g?5=#1EzAfri4gyVrT@~mP z78fYc=X37|=!*JMY9RN{G3t3mS!x9u?OSf2uMUbK7NCy=UHyN5 z1@y5k{VeAK^f4_x-n~P;x3wUF9F~4#L;!uHK#p}f(1DJ72l@;484goUY@_S+?=AZ0gUo zDp@vmJuYXg#(Ozuhwqx3cQRD==}t7>6ui^=((Q)-O`fHxLY;e7<$J$a-R(ew_xZc-|SEm`v3pi#bW41-|SEg`f71%7Yx1Z zn;mLFH&500Ml({Y4P>ENI9Z^>D<3eZi?8!%7lL|4$gQ<inK^g5L*wUbjVm|2Rgz9Sl!k6f z8bFzu+@6#G7IE&a=hH9d?angm_9A8rV1GV%X*-ZJQZ&G+;ny#*XPCv(&!>A1vuU+l zVn4xLWX=AenKLas0&Z>cb0Tt%X!z% zn;oU}v~F4{dcFR(Aam1> zHXo1syfZB>Fj`%*nMW4D-G zY+=}-&x;wRM;^QdPS|E3C8`c@_dE@Rq@+otg__QF@ zuzP3&k{w1-0N$dZlK}`GV_b280eZF0PA3m~Kwr##$4-{|v^(Dl#zv@5SVO;x& z>zBmqZ>oQZzyG1={n&}@?%{Fdgc>~4UURqC%AAo8NZ*}ed{?6ldt{j zXBpe)zy7@KlX#s!F>>V}Bs_9-y9l@(X}8~C6HGVJ@nKzG-q zx*ImTKxO~&%l23OOJe_$*njTp&)&bp_McQlfvB)RP)A+w%^-x>dq=o;L1`?|Gg3zUREp>viwB=iIwyXUW4U!3h8W57f%c5dc`W zm~sgRD|5yiuU%p;rz5OxL<0ct$A1P(@gKaB0Kk0?YIfy%eC66)H+-H5>W|d4@?^i0 zs%UZIdae&gT$&KH^Tn96RXI0&`{t`5A-=Rtb*nwmGeLD2|KgKLT$iCHn5(}F27^#4 z*LeC>*4bm9OYr5i5XRFqu53<5U!DhbBX&~c(yRJ~7)Y_7grvNFKZ7!xGk~${yjU9m zpb|2`0DE@CDHI?;1NdcoK>({6p3NA=fdDx8DZBuS{49&C@&AD&YJ%%`m1KD+yfK6r zn{`%7-c(I+xgK#7-9Z1di~XbgtN>Qq_FUnBzvh4fcwaviv-c*Q%o%g#AB&D|^4T8q zCiY%BOAqLQ_3&R=Y?Ob!%xV6=j!}R(@6NVz$&5EEV51>UtMOMK!e6hPvc48qHH^o)))L30KRkt!^tNLpUg`Fqhnl-g{suCMc!XK55{Xm^e|ONV_huS z^;y2<*(yo`&U}5^0x+AgYUvv?)%Tj`czQyxkL0xin;U#9!GIz(f?&*~>2v>JbU6cz z0yb7Q_eM1tY8-SnHe;EJAJ0Buk(!L2g_-+57u#b}-ZzKER^9?)go)L|*zq@!mEdtU zVBKvTvWdN+tUA8mK#%65N3$AVmr$>}#jqP>L*>u31vJTgLICS_ND@TG{7;=}u)t+$Z15j+ps5fi8 z|ZkFrS{uB16t8Q9d$mGR?a%QDKs-1yTH(<}nmhcEFN!SlDT>FE&g?RSj*e53WT| z;?#6h*9Vr;hqgunpeTQlB+vTy`QOu5LcHr6IU^n6#p5ZKH=D=bZ1{lm*UFm~luAdP zFdbc3aB3=J>NW%=Dq%@ldZIPcpypLf_Bt&;i9KtG)83>Fem>g!ia%eJ#6AsrXGWIqz) za085nK(&LtW&5r~AGjdO*yCE?!`YbZ<82x^_3)r|?G^BR3Yn?0*;?H3lxUexfapU7Rcw}B<2Zg)kXePut= zo(S%QZA;}Mc5Ccu*jUmQ{DR9cKQ}gKdMDp2Pr5T^n(P(DAWkbn#WwTAwDU@!8IW6i zEK{w~O`0C>A*PF*)p= zk-Z&f!F(yI+{2vEg5Jhw7N4{e=+(Gx#<#3z4Zwxl)MyL=WO1oW9M%UnY+J{vr%1JN z_Q?Moo#jb`Tfj7!m+afXvDZPm2A#v%4?jMXdz9HG4m**H$jCKBxGKJC=*$jBWDMCM|&kMXIj%wCcHTM$?eu_d%M( z&7!Q>jH|!?MVi(cw(12qTge^%Z8B&q*sb<_f^$JZ)~e;!T}4L?nAp2`Bz25H#+bUW zh-uXfgMvgYm}H}VZ!;93c`f!?YU~#Y`83|P0Dn%U>1Ya4e)mfRj{73)p}y5J_Z^Dm zgU2Q9_nDajjyv}J>55O>KPdidxykTU`W>6?&rG|z+hR{G!G{MNw!NKm1M|B_zaqo( zmhYt^sRb{4I4@0WeMmKq&xpvM{6Ji3f3opvjG@nUzFHHh!d#E3=wge28U@P`W-`E4Aw)|7dx9&dfUh7}g)LImT~1I&aK`fnx1 zM+bIM<>FHryK}{5cd=jI3EMXXN;gWWHx6+!xN!9|x|6*4MwUm%uj90O3w)nib8RSP zy3_hfJ87x5<6{z6@2X7L;$42qYF$_)8$yR7i6sRD@LI%XoI;*Y_}@G{?kj3j$q-ig&vhkg5xiQ!rh4-Yh`p7FB(cE7dDw4V8?|p1x>(T{it<{vusz=K^rUDCzXwk`vj@ty>osPo_SUwTTr_8DhKj32SWXXemvKT z%7fj@U2OQEP<{$cCh;apUdA%cKsGX5Jl#xq+=)9K2R!zr^1|d^kgL!4%JBoApMN)e zJG0+C5D7ra;H}F>)>g0q$`^A7U^@u&wE{~wuyY)ko>OZ-|8qb2Ezs*ELxYwoOD09N z$fe`Ya~k7Y!o~HO|I1!0nib{eY(c`8i8-d=U9>zu4Jesv*qR9!ay0x`qHH7%diO=( zJWm3jmNr23V|K;BLOaEs1^|ombx6ICtIKmtx%^96sp*wtU zvjvxn3=7tjVo9QSwlsJJ5|c)u6YF7jyh=XE#v*w%Q%u^mf#&SsTC{eNfp3G*SqWO`gn>k50$kE z_k%4v#s12&JsSJ8_peT){dDnNDgm;uQ_MH=dJF1i=vsI^q3Fe+FZTE2xs1JD$b%ov z5tF_K#m|~jO8a8=gmVc>4nb$){@a6wO6xNAg#UQg8E7C}IAs)?1AmUB?6n4HA62>) zO_X$BpzXY@pf*Qf5|!SBKa+SN{jN`_!br%e5#vf;09#(y=+iu3>z2Q*wDmK%;!-2E zt$f0%VpS!C*8J82LcR&}&VQ7+C*+sBeBH&>mR~qsl;Bgn+fIC-{3?11GLHQx7PRdO z*>7iJWbCx%_k;1M1v^hXa)_Mx3o(;wjuiA1rQOK+@Wg4qyA~;^wqrBtdnwdy0{;80 z&v5gkU)(ZIJ#^s@Ho#bdJi!n2D1;&EN(`8-L06EJYT=Z<6tH|&&sULj6 ze3_5k50c^p_+QUPVcbswtm~<6zg=$xrHV;0`v?GPZfEw|Epz86yJ#0019Did_Hz01r@1R7L;){{R30mIc(kVdUPh@|2?0{gELT ze+8dOL_t(|+U=c-dZZu>MoHxTpLsi%ZPif*P?V7K_uF=7hq8{xgb;2aAcPP?2qA&3GXju3D{P}k8P)7(Mgb+dq zA%qY@;kHqyS9(K0=la8(baM~u&9ZuT>y2BZKl6p&kZVkHbDjT{0eZ*;-lB^u)?jk^- z6ZQk$g{9M`yMr!af57F8G%V_~P2Y$cXJakv0T=G(0G9sg-hu8gkOR7dK&}irf7I<{ zcar(Ojc}eoZtUotE*tJ0=w#%8J|uM9yD#VxgfuLH9MEagfev(_4+5Po8*Tbv(Bt%& zFBpNoTA4PmrB6CNc~2A2Gv3{H(wX3bYcAJNja;vL#_+t9Vx?*rXBbgh1qK+Y<3tqJi6tLUg9fn};A(R_A zkgHt5pq%Vr7kaIq9^b#$fArIB#E7Ag&I>NPWGOhDH=e8jlhkBAtU zL~+PkmBkKU4)y4A62-AqsDqoj)NBZBAdow_-dq_^x7TGmYO14~dKfV|qql|xKsU*J za0fpkbnT#l0J=TqV>@_T(Bos@<|)lXyLxtje$IAaahei6GVP@Ye*pAzc5aT}CpBs7 z9p}#6Yd*toT?}3Nf<7&FZvJufvAIuff#Xg4uj+^2s{4-~zxiM1?L;9RLDwn65GU<1 zBwP^R}!+cWnKw-(7yxsoO4p zPTO5TF&)Xa^2rxNe@_gV{aR0}sO#XPRM2AQ4h+WQv0u%p$`?7CsgD!fiU3x3!_r7= z`*x?e_shC$QK!C6?)#Qd`QHn#hLdpKCqDl@XXLtFOE^o5f4uR2$5(P`Q{$#Ku5#- z_7hrsWRZJf%g9AvZT^7BI>6f~AHwd-(&{B$T}JV*7oRAwRsE{?*NbmB({Sb$GD8GLiKT!m?Lj{c^MT zZuRq3KvvnchuqpPx%gJK{~B~=^)-_y5Hl)~uO|v5s|Qe?q1t;vw4%k!@^G_8~lB zc*rhWW{jQ046;32b>;2=L`@TQdxz71qpL3u4ob$@mM4z8Wj0XS!enSI< z82}vHV*9Dw9PGaEXzeE3oWdB`_yGW@{oi&hBY#TAQkH4kwuTg;rT;TOYxMwEt>{@0ZoZETcRbX% z1A@P0Q(^vp*j0+s^JP<$x~1UcotCr>ny3=ZaKV$L&3(zeZ5x_IU;k)3MPFzgH6U1 zl4%!c#}Fu)F2b_Q*J_w0di)X0L4v+qdjJ4i8iXgvj71W5*{`C{s+TVBrA#m^01%=U zm2$>2<$WB=0yH=A&m(kTy04~ghY+$B(p(~9KIf6{75fmTU~I1fD1UbMrn6S?E}>Q` zMI8%Vx2qf7k+8pF96130UxUzW7&FgX^46g-Ev9-@Zda`FsTwcb^|h(vsl8@$y%Jt# zH1IiR#u3o4_tUm6g83cQT(X>tq}wzK4fj-$i3y2gfZZf*Z>5iRw7;b!u&?;URkhDl zHsaXvweOiB{j5N{yTv4BJ*a5Pi2>tf)eH9auU-A{IL+$(2XIk+4f;&X!+b`faZp3rxUXxL9ld^!<3R)3)V<0KIMw5N9`+P#Pa zH$t0g{xxT%_kD)2+=ho^fj=@lBqYL_U)uVkv6e)IhL|?%8bR$Gy(tf*o6FZTay8OvRg%q-zfc-D_Zrm$6`!u*byHU7XV=9qcjd# z2R~`M_AxH;?DtjcSRi7liz^H~Yr~d(NL_<(&{*K_3W2Hdki+dy zyInHO;zZ9z<17eN@+R<%IhL)3Oq%D?iWtXU3>(|p@%Y1&y5D2*$f zn3CJ|r(Q36n|W5vqJw-JsQ;B65z6Y<3JX726{N-Bl;`dlZGGTm8UHtD^Q1zZXG{-W z4z~=fYAfFwUe{e%Ef3r<;KnwiPUqrlSmN&4^wPEdZ1~4qJC-?_^<-{3|2}eXYE^0L zr|-9wtZ?-ihfst8kw>0Wxw@+Mh)zmK$cFi@u3mx^v)Dnh%<~^Z59#;gMn}8Vz9xa+ zFNK1g(`zvAUt#pM8)O3x!!XZSmz&h6hzSoQH}>xe=ZfHLc&e7-Dx4Iw{LRdx7dhta zSu00xwf~<*E)VV!u~j5Zyobc+(1oHD9)0Q2XCcmY{Y}*|(dM$0i^h`<+m>GC=j|LQ z@#gWpDF(G&FPr&IzN#V+o2)7}Q4V!JORrO?%v3{BZwbQp<>%i@g5v zE8b-l1(Th9@Y!8Tt{>xk<5nww!UNLSLO)3#TK zdl!oH(8^T1mZ1I75hbu<&%Poe_1%F9inK8GxQpg?hZ-oc8mZki+U>7S?W>#*4b=JO zthDDkvmI9#2A2LOD5+_``J8P#IfatE-#9&TlCMZdEI@jwIR94H!-pLMEgr7ya^iR0 zR?p;Pck%H-({x25m!7xzhtVe<-Y-}a*Qrd3q@dZ!*$aPJQ3phx9ir#+D0%mG+NqnI zI?^ea*t5?|c^Tn@;%n2y-CM=Y*5alXV_ohc=`ihU>J=*IukmY4BtHO^v$N`cTC!M{ z@}u@@%3%EPLX)Og|MZHh`0DFqIQG`ND}_SGW$1Rea61*oU14>(5#D{5BH~;ik!xMA zuPfiAsa~^=q`7S$BTN-9x{5gyE9WaNMMLjtDz;s{w;aFA4Jm9`{J21%B_%PhqXU+_bgLEf?<9%GTY;ZkH((x|yOR zBlJaDnbWpjIf6ASS63cB^XX;U=(=F*BKfv?)Far?4#$LH{$!K?dO;)e(y;G&&Vnyn zY6sI->{rS^5uiF2MqF$_!>GCBfmg#f`{bb|I`@o}>`97*PX^C6dL5i#6K3DDko-@}; zNl{2jl$R*3BL*BwB86j~`-~~)h(gZdFtMio-|m^(w|*GEVU;;(0A?c>$kP`_bw7AY zNo39_DjS|ijegYQb$pdwEd;9xa z93Fkyp)XBJL>rg!oNkl4;29W@SG7tw@IudItlYlA&HD+28wnChPJyQrJR@+rrJSwm zFGG&(EPDetVUYIQr=yveeyCCKVkOmRNxT(m2?9>CZ>R36r`ODA{KVKo{~xlyuBynU zHoO|JY4!zFA4gu?Mn4{l4N-sJSWI^aj{Yb0P0HvWm>89Gyy5QMSs6WTQ0jSYrBV*= ze-QPZdg|Hk5pGu_&>uNl1?e0ARK({bc%SXQ@~*dnboY`ZH(U8vwePD;RbUgpk6O!W zULo0_;Ea^=&tx+<;cUIzr=|C26t5t4&!TvZ(SWKA2#bDvrHlY4jT>a~Dgc8SE{lX%vbj&-{F=?6v4Lsx6|ZAo%6c zc+avQBYpD+D{S{iY5Bp{;odfrrL=4(!x8w{VFYYW?+anQ`7 zj#++o-%RS!pqnDqt$Pzt`2;xGI>L|0RSLnKVvyHAsZhp(Rq|2HFqiM==9sAACHaPt zxt(tVL*Tbvy9tX?P(KvwUCDNl{#Ij}mhL2*Bx<9#m{mBaMNVWGO*;P`cYVv)LbXBj zDmv+z6}0iz3O)cp8`<6kA|sdkOceq?0)WooO;IphPd^|2f0E~o=kM+}z%@8`PfF#+usnV`_xt(vli9i+ z>36E1;{Ou#`|n`x@!jMkPhirU#AJ_6Ry*gqgw*${jbyXF@)vy z-DMZqqzk0?y-w4IC4}fJN_wHFL%KEm5`1k#4C#F%2E6y#5TXWCf=%xji`NiONjeyR zkI-#}Ff3>z=ih94I>qL85-u=d=)(o4LV7A4BhPmSNN+6Y-pu=wZBiZ5hjQFA9J%De znf-h^WSDtze~YL4)f_qdV1o2!>8;m z(G8~EvFWAybz4Ff&1jDi(i>Rvw0@1tP=bylS8T}@9V{D*jw5%@lB+3R1J@l#?z|<} zl0tpuj!n;TpR(S|mSL3pi4{?^ZAy^qn`@i(n*A50Rz=)gn-Y|~g)6hZ*lZIj$<*pZ zn-Uc6*cCLLxvHI)EsT_zHYEsup`F#$RU>6pt1`=`1h+tpZ>oY7pQqAI{-@ZK;I{YX zsRUZoGV7H)rr4p@-kXXF-Y;hRz0Xp1jg z>&vO+Z3)BHo!+_%-s`05IoYA|0+^bOZRy3o;A97XBgU&K_^7$$ za`KZMyu#d8=uvsu-Q13xj?r9t@h>>p!Om#@LBZQBr7wF=zs#ltx|4gBb#GKOQ*yF{ zlZ%upt55E^z+4Ef`B|%pIP5h@H<;XFEpjfGYj(23;G}z-$z4oxxhBO9GWwGw z+pODHK^_n#$%T6VmdnsqbRZPMV3G3DRQx~c0nBk8tP z15e%+?Tz#6f2p4ZSxJ z?DrMayB_J-?{2+!(INe@AXwK=RQ5tIJNOJg?t^qN3OI}nT=h^Ekbm+XvjFMf>bkvx z#RntuzHjSA5+|^x&tp!scW(Exw0k-3E~EL^!5=h8b-!wV{&nzbQ&T$l1IPS#)%(Y5 z+sEbm*_b7;-PWUTK>e|1Rq{kwPo=%y0# zp#aci=);WT7AHd6SQ2L;PGO)C9Z=GfL<54bq^m$I7fA##h+5_ZByRlA?`CG9M<%Dp zsYM==h*7#TD`k8869fq13xArJMn(*`WFkyPFFP8fjgr}{C#*!?9~rp0c6`KHThgPf z@NW7ShPFL4p51mdxmDcI`*F-UH9Y2q<8gjX#rllD8KnI$kSKBcR!DY=5Bi7IThk%Y zEMC9BoA%L_t=4zh$}#NWeInJe0$pQjF$_-^Ezc6ZHEMVabKj8dIK`4K7~Mc)F}nXX z{YvY)S}bF9S^+~Ff-L;oQJov$6!w36^LaI!`cMYLb_AM~%xxX1wc$wN5qru5*pdi`TG zKSA5f1pa)Oo8MSm?!v#)#caCoZ&kknlo#M|$;u}my-U$T14{|xH18~Jfb$92#{(>y zg*3Ixll6-$XN3_)5Zz0Ow)jm#8eSrW<|@o-c(D|@KpoO#J;;t1(rsE7^&lFQg{Xp` z_C5Wb=l+Z+O0l|;VjdJ(LL;hZ1Ay>~%X^!K4F^@lvO~+i9Li}w;%!5G;N{S-ov#!^ zrAE8?OE#^k1XfO}Htozyc&g4Blqm4M$FIS7qS|xl z{wW~L+L72?QY@h<$pPFm&z+6oJw}g<3)(U;$?G~oc31ZpU|juQm7JRguh`7+}K zi&L-GG68KYMXAAo5yqM-0GAAH2ig~k*EE5W_MpJ`PHJ(&*z7=A0-(fV;j@_;=s^K+ zT!k+>ipn5j=Bn=G6wzLp?u@JKZJ(QR`D+}d%jb(bv^XSd^_XyXH@^uOjz|)r>C!zG z$K!+DoIq6g?xPG)i;z485i=;XfN9vC2E@BkJ|ypc*(d+lnmE(r*oT-UsYOIH<1Tui zFIvWx_-@zET&c}sR;15@TN|MQ=sranA#EA0%i`!xW+9d6eH4t_Zt2Q}Hx3~u{Mix~ zAg~~JMEz>caj*WP1S)OZ1TPiQpCd^!ZK%$5IL*e21AW)s^)@$R*9|K#(+}g2RC*sa z=-`{{Px>Pw_2cKwwkk=7PRq^$txwu06~0HWyoRjRz`*_W#@)xT56}*ualH2*$k}B# zn2tTh)(*3gGR6D1if*0O{B>32#w$6+PSP%B!>PPSn6#-I`&uJURyO^soe0)p&dz4a zZhdbToNAw5+nq%j0q3TcTQd8!FIGpD6w1Hxo3vG%jR{9R&uAK@9h6y5suLFUl|$u z;tn^1d^ZWMeYsQ}wv=h%6?8Souf@M=ym_F{?rS$84jCvWbcewt2n-KGXmbDK|Kd~eF{v2j`AAGR2Hmtqcu|f;Z+{8U8 zY+%pOb~xap_1U#n^mC3^aQ-4^B;s5Pr|nFs3h<;mzo|1w?N(wy4=Te&&9H(kE)gU| z#4fE3x1bdfe>zmmVF>gUE)c*G(0 zq%mxTeKGa0*6rKU0m5@TVQ}wkykljAoy35UuC&F_oQ|SEJ&~&ZVC^S;X>Tr%l)b_( zmRu}v(Q?zFF+Y3$1xY&Th5CZ6>s^pXow)j75YU+{(4hs=cTrv^`QLOwnqSf8;~k>oDraJ|Rc-T3cqZ3lbu5G`xhEwM_3DezQ>? zTAw=bHXrJ-Q8_x(XnO@2PbX>V;Sx0#Y~L@~YXx|(9>+M6o9+II%ax}@mrhBUJ@wxY z^!Jr{{m-_|O)*RxyhDys51xG)JD7JtwDi}w!e@%k@(zK>iCVe9W`7mS09asUl)V+5 z)fa|=|57h$kEAGWI$)1N(5e;dtPE=NIAx+VZu`mdg2bDBiJF@s*OG%NqxewcshRSu zo=WS@LGcY?+4)U{lUXPTXi5Sl9)SZrxb1srsp?fa7fD-S_`=j_nG5*n>xJ5!tDOvv z^kp3^cydvGy?4+;h|Flf3j+L<5zRk0c5=b7>xHx~bJ@gMLoe*p!~16q)2ec{x_mV` z{G!D}Xe7qm6yld$PweXebjIwd`{vJJ;eM@+``gP;F{;5<6N54amAz|f`tMBnx|%5$ zEl~zL*DRHuwamS{8(brY`Q;lm>akd|H4I`!+@fu`jDg0dRW}I^u%Mt=@ z9;-Nt1Z@Y^lbc9dgF@;39VL41;bkqL^+Ew>(OFQX;739)t)LnM-d8Mu4)!_RXdJ+^GpLHf82YKkRD>kb`x_{9ORSIR&|YIDxx!>d8sXkhbz% zKgH#)W*=*5(de5jm`WC)@Qn^J*%Kn>Io+4-Ij#E{4-*tIYnS}E^sk)!u0wt7`FV{+sN%~0Kf6Fz_dTjq)`vbX#_p8`>7HbnOY zqRq9;Lh2AJ)q}>MN)3=ND%Kz9u8SbEto-5(KX(_uly)cAi6Yv(C>VYHOAL(9fubQdDRBk(^T#B4iwh!HE znVBqm?Wl!S`8K2-Xq z7O~YrS9>JntL1g2HPD&aQ3wD=>dGSkfcuhte#vEX0I2?yBcF`OJ7IOf;Q$DZdt^}F zLhKN#>vwJt537ah#(D)seI~B(CpKC_Jk<;wR5s|y0BgZ-&=s?H31D!lQ&~-q^yx$ADnB;Af+)W%gq$kT} z$g*Fb{6^u7>`M_u7)0FlYY#9 z#yS?h`BG=1l7i9l0>{>!^Ew0k2Rm z&9V*c$oWnAf-|Q$I1_T(aOU(v507Y^IjyPHlersbPHAfO6fDl1&eW>SH2rAa)ati* zE6$ukN6r=(KvMacr``h{XHMaqZu3|1DDPp1?h(1D3@Qe`>WPt`M^$%7xY*)F9m>n6 z_e-rtZk52m*AC8z^h>SU%H@E69{Fa6j;Yn?Jy8VavL9fS(Ne3nI1h(rd$U8r=0|)v zEfG0eCH;!h-t5p9dYZ|`m#eu>?*%>8Vne;sn;m*Wx6OY6=%ekN$?(UaKDi^8<&Ikx zZc{(CYAbJ{1bX6uz#W1!x%8BV=2lx2eagtEcX*a9Ki1+Dn)t^d3~sT1+OupW{aTrc z|DnB>1|22mecxAS*~*NxCKK;=c0K=lN#^fdnq{-4cS?(iUzQp+Omd-L>ByC*%oYWM z-L1>9^XA@|3D)T~P8M;qA3*hE*H>4|1db2AQkHb?bH@UvDs!k058c_yr_N33u)C^8 zQ0g(1@f`R0u|H<=@OaLDw1Q_RQ4Ek}tG&oB3}szE#CB`4 z#9f<(&B*!mRtv4c7jQqcABy6cH>nTn$h91i?wi#dbPBIEsb@T&-gpaiN=L65>F7`U z@vT!kqrE1}*7oo~cb%s-hLz8yT{5X>J*wOe`lTRTS69A}cFClFo^$+2v()N(waIl$ z2kv!fmrUwna`P?Kvuu4rCs%QQqOL}}U{aUde0pt1ZrdB6kGosyqb?ijV=UQR??Bo2 z*w?7*kepe42&>lW>nL__ZaEd&w7YgX#>65?*siN2Mz6u09}Q7 z2RerbR)#JU7uVbP2tV!vI+{h(yo?QXKSLC$o$jFybfn(4SD5k9jNHR>y?m_I_8mly z4xXpHF~N_i)ysKx5yihY{-l7f`a|)rjc;~qQX7Bbn7=oFKz}UTK0fZdi?{r~A@b*o zBvk+0h99afs(3`>O7$_1AGz{*Sv&)6wOVi%Y}ezbEP?RWBno z-XxblXTCdV%Jb3lf~UCh>BawFYE%4*#y2aTOe*HY$o<>8!u>}+mjd7Vo3Hpu_43(6 zV`@KM@7wrYcC~v+osaa>Jp0i-IJQjWc<`Kr3LHOriwCRUZ^MtS-Ne>@N#k49z76Qe z>T@^{pt9!$ zAWn8)$@+DcJ@AHF-?#?=0=@q>j(jx%DF8VB$;QIWG5W@59IS;Eq^a(|0kXd5XKTLzXNZx2FqRRtyP-|y8rVq%%!exC?FtaQaI-YZ0H!v*ue>9LBh z$6!aXOc6}MNYtv7(e?pmJ98@0&XGcuvhq7Y2HkE0&7#67h}gNqEzBxVkWTBz6)t;f zJV>lnUOdp~OAqC7)X7(Gg+y}m$eQd0YmxW)SF2m!;<4k@KpJ;xc>44-Wld@$89c^x z0wI4$75}7)Bq<=4R##_sxc2S}skIZS4U!8B{ZfU`TgME7r?&yE>`SFRZY*NDT8V9r zx(+O@HFgq9o{Oc1kKgf%+pSS<@)N(MCik+x*~9A!UD=#seXi7vcJRqnD=m42Kj|1U zw@+DWKFbxad9D~dgz3Tm!jay;|MguXK-U?9a4yrpel2ry)wJz3IF;lHdnHVFcL6tPmR%F!RT)cbyJ@{w0Hp~g5*lOVuUb4 zj33ca_-B;0D&+ndO_R&yx($cw?O(p{C92Io*R%bc$4nQ`DHBAf<TC5S4gIWF0YoNv?t7sav{ZoDH(?E>M+)%ug?sJ-4f1MzCQ5GH^P_pbx0QCGm0BLmOK+|xz<)@a zLl~~+)u}Q)X^eXdGntFWAZ0LVyjOZU4SPzw`(J+X-}I?5F>ZDhl3r|~EzQ;+&}U`p zJjHZQ{!?HkZRb^1!RBtIWpK_Tcyv2ZqFt-dNe*M&8=;*U*TiOBwmJTS_tUDQH4IZ- zSoI9zX_)2fob4X`ExB0z8O0;I3!28X^-!1Ax3^1uD75g$&q*{vFk0#n5#G`t&x;h# z*~}@|o2xb;wGfOGTdP|`o%a=gW)NdVA4RZZ-bo6;_A4nZM@P|iL$}99NpqRvYn!w{H%%<2F{ zf;L4A%n_;jX>r#uzxzb3I92IDwN*@`5~e#6aXO!%!)5b^&!zk%*X}nXW_%U1uA?Kx z+ETgM6Kye(jFJ65=0-^K=u*hxEMO!;)Wx_IEoIuDtgNM7=gWEd>_bL)N$$`rtuKzU zQIwFlity^(^gNI;UF`m$5NF74ea*|_3PU@2&NqkDp{trYV^ z3$4e_Bk=|C^z~D!F^Yjg!qObRmob%RweQx|QP|TAlQvXX} z=&wNmyBl7kZab&}I#izUFtu6`IpUrrIVkY5adm`&%atc^q_nG=lPj8alJir zyUm$$FyCchEEl0@l+$WmM^H^xAn|ES%qa&}~JM4z~tWB%EHe*)T;X3@u!@ddc59DNr_ zKJ@D_z23_2ZIyU|mrD;yjXdQD9Bm53adw=3e~w7JJ75?Z)6Bl9UAF$62|fM9sSkAp zlqZAMqRo#~0UqjN0TLV8f(BlNT(S__HMwQc$WMWmua`ZUVOu`!E|bO>qq(W#xw(>% z3FBB)r~>!vNZ^rmIrH1}5!+gOMO~8g+{)U6{S~uuK~B?m><{R$=vGtMnq$kk%ZBq^ zw`wj42LDqm0CZ6uOs?HLdQ9>(&{rO|$1(D*fUSjp0tnVNt6IEf(BVAQ3yRkTae6jY z;$jsaGC<+__$CeA2nirZX%t4!Y1(_sjkf58v~vL+Qoq4f0NTanEFYlrW~3k&9@)1E zXuGcubncE!a#Xbv#v$K>5u|S&oqwJV^IWB%0tLoeO5eCk$A$dt(AhZ<{QY4o9#kk+ zc@4@jtIrU`J6_stwZAw@f-d`-?2vtfY8eE&f9~f6uZoY24e_f%* zv7m!Yne?B{VUwPQ`5y0CIk<@ZTyTh#2UKwr^qZMCfsZPv~w^SKiNqOEzu`CUfN=ws8XRR-n5I{g+uYEDksYaVR@<*u19feG^()$ z7A08-d3!kK+g@M6oKV6Hml_2TUxQ&Tzvzp9g9|-7uxIxLXxxp$o#M0l1tuGv;yz_z zh~hdNAM-=lIrj0SPCduH?#4X^v?J`Mfj;F%y;XcaLt!U*?PH@C6pVN=&C*+eKfdqt z@voklz6O@roPLMS3X0LSyOIfG3<7|4<}W`GpeZmJSwm I=C>361Dfpuz5oCK delta 1393 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 delta 1324 zcmV+{1=ISe7RU;a86yJ#0019Did_Hz01r@1R7L;){{R30lmOGdW98qn@<0!RkC7o4 ze+1u2L_t(|+U=cHtvXK|))jy&BJ$?E^f9I<~r-M3q`TUp2_L6vAFmF@T{bW8z=S6s* zaL-P>ire}E{|*52wS$`vp21bU2S5lRgb+dqA%qZ;R%@B_>LUvj&I%V4nB1*q0v+hc zL)jt$UC~&&P@vo;a@x4&h5fzu!rrp+_hSOx;eJe@JKT>6bcg#f_0u5*`e^$xe;XZat4u~C34)S8$=FthsX)sVq!^!*tuftw8pbs*cUx7}Q?RGbh(i*y^O07U2 z+s(`8bgFE(Ie7?m-27wqzE9q%vfY`!h4_ozc1o4aT3lyEu8WAB;lHt7T)(i10_b&6 zzuFJ}BKG=I(lSK(vi6?6tYQJW(#tlvco>*?VIrrCCntD> zK5#()CXqYxboJriQH(#=jzrGP6wczz&9!Wxi^E!W?@yv&ai-=TrBNO~;=AB7{;e6M zRkz7HrPb`tA+y9u?qo+sn$eGjk_vBH;E%f9nto0SS5JY%lWM+p8z5a$1 zIm@M02Xpzw#Tl!f9vvYsd$WVt21Xz0TV4aB?i@XJe=XRGj>D2BQqm|RD_vzz6-vCeUY_wZBt@>t%QJ|mEfBethDR7%RXI$NJ zlgK>A8Us<}F^v*Y)$> zBh201rw4A&-9d-BKj@DL$tt{b9Oz8v^&TlUN|g=f^*nu)DjUrG)ze|_FOh?J>;Clq zs%$WC-L=}?V?qPWf7`bz_XVAeQ9ldsy+Ds3zqhoiEWBE+vdK@YZ0oldtu`!sZBnp& z%Qo#x-*8@D0RiN;poa%Yok1rf_Xa(J+}GN>wP&i+wR-wmQIa#;p6<9s*lX7+F?{Gm zPOl6?qBit{hL#6;*Q%lL4s;$KSPeS%{n~48>{m3Fc%1_he`jygMAzFL5YW-6vHhzV zAC1dBHOuSjUTt}4=r+Mi*oz!~yg0rTjxS~7e=x|gzy13uIe+>1UWe6f+v?-;LP^>$ zPa((tZ2aQ^^XxOuUkcB^tMMiO`#;Lw_k+mhJKSG6M+SB5wY9xAwr_m?<=_7i^Zzkp z{;$o)?HJn9e*Sr^p?&-FZ);z~D^*(E%?Y~uxa)$@g2<4vKO4W~N>16|eg4hApF@Kb z^n(ifHZjo6IjL?gn@ys!{r6M*v+<>Hd?_5i_4zj+UvkGU+C+iaVS%8IhF+UN2(k8# i2=9n36o~MS`qDphXb(l^tljkh0000i#l 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 delta 1465 zcmV;q1xEVH7t;%n872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&77^Rh zmY;rqKoiSP@4z%+>892pAiceHWop6haso!2}qk8oN*7$41=7q`ttZ7 z9nvAah2%|0Z!mdNb8b1LyGh>cyT_ktEGAu$?jw1#@BR_~==$xF9*O$1kN0c>>32c@ z4!|@#pS05Bt|0Xr)(V3o6iG;A-!~`nBH!`@gV6^j&*wB(kglHo^^Wp(ki68)#(&F zG^o?9uxeFi4kI+^CvLmyy^6%e333yAK?@`*!{Nfygm$zq(J*LHUw^q^tX7|MmX!~)z99{ z>9s79oga~_I7hDc?S3Cw;ZkP`bp7JJNzyMM{Vjrrc};cC;Oi9(l0)K8+69+rv(Tb9r$fYB3(j;m-j)N>kGROKcVdC`{bTP;SGC$h zc`b(A;@}LSb=MmWP5r0~PY4D_Zz;B#bSCqvHV<4x`j>KTo@TUvd7j#S4=oHsOLf11 zFHoNhjH6jvpYCBD(n0mQebbB&{PI4NKcO&KtDvy;SKO@74b-@SjT?+EYN4kPbsF~Y zY!cs=vRx#Gk?myeE??u+^f;yP0jGx%f2C{}DK@g5jJ5g1p_>-;J8bxV6yp{OTG*%2 za7UByiowgKQJ1fOryc&T_#WaGGhHmXgr+ayco_56d(gEk5NmxmEf|rm=xI&8ZJ!3p z^$|R;se2f`cv{y*>JsrVG&c;J8OG{IsdZf}U}IL&e;VX9;O~D8K7M{2er3atAH6s_ z&oO8)*t{_A{6l_eRhD?6 zZT$L1uUn{ca&!7`dQkrT4StV4D&Hd2MLdk?CNh`sI*cWO;iQ>1-da>SL+=pxyx~6ae)O?uEZv*b+&z TFqf(T00008NkvXXu0mjf-aFVi From d93e6ebe76ad8d515e0943eead15f5e3fd8729f2 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 14:56:08 +0200 Subject: [PATCH 037/538] Install only required Headroom features --- claude_desktop/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index e9a1bf661d..fbe5e65403 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -89,10 +89,10 @@ RUN set -eux; \ chmod 0755 /usr/local/bin/ttyd; \ /usr/local/bin/ttyd --version -# Install token-optimization tool prerequisites and binaries at build time +# Install only the Headroom proxy, code-compression, and MCP features used by this add-on. RUN apt-get update && \ apt-get install -y --no-install-recommends nodejs && \ - pip3 install --break-system-packages "headroom-ai[all]" && \ + pip3 install --break-system-packages "headroom-ai[proxy,code,mcp]" && \ curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh -o /tmp/rtk-install.sh && \ HOME=/root sh /tmp/rtk-install.sh && \ rm /tmp/rtk-install.sh && \ From 162f727cf785591546ea2f168a172318d6623f0b Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:01:28 +0200 Subject: [PATCH 038/538] Run final Claude aarch64 validation --- .github/workflows/pr2841-diagnostic.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/pr2841-diagnostic.yml b/.github/workflows/pr2841-diagnostic.yml index 03048d6a2c..09e056e41f 100644 --- a/.github/workflows/pr2841-diagnostic.yml +++ b/.github/workflows/pr2841-diagnostic.yml @@ -1,5 +1,5 @@ --- -name: PR 2841 Build Diagnostic +name: Claude Add-on Build Diagnostic on: pull_request: @@ -8,7 +8,6 @@ on: jobs: diagnose: - if: ${{ github.event.pull_request.number == 2841 }} runs-on: ubuntu-latest steps: - name: Checkout @@ -20,16 +19,19 @@ jobs: with: path: ./claude_desktop/ + - name: Set up QEMU + uses: docker/setup-qemu-action@v4 + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v4 - - name: Build amd64 and capture tail + - name: Build aarch64 and capture tail shell: bash run: | set +e - BUILD_FROM="$(jq -r '.build_from.amd64 // empty' '${{ steps.information.outputs.build }}')" + BUILD_FROM="$(jq -r '.build_from.aarch64 // empty' '${{ steps.information.outputs.build }}')" docker buildx build \ - --platform linux/amd64 \ + --platform linux/arm64 \ --progress=plain \ --build-arg "BUILD_FROM=${BUILD_FROM}" \ --file claude_desktop/Dockerfile \ @@ -42,7 +44,7 @@ jobs: - name: Upload diagnostic log uses: actions/upload-artifact@v4 with: - name: pr2841-amd64-build-log + name: claude-aarch64-build-log path: | build-tail.log build-status.txt From 78f920f9875b673916c1707afdcb873524bd0f60 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:02:01 +0200 Subject: [PATCH 039/538] Document Claude add-on build fixes --- claude_desktop/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index efcdbffbba..218ad8b4a3 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -7,6 +7,8 @@ - Add `claude-headroom` for Headroom's supported wrapper, reusing the supervised proxy with `--no-proxy` while leaving RTK management to the add-on. - Keep Claude Desktop on the MCP-only Headroom integration and remove the ineffective `ANTHROPIC_BASE_URL` export from its launch environment. - Preserve ownership of Claude settings for the configured runtime user and remove only the exact add-on-managed RTK hook when RTK is disabled. +- Fetch the repository-standard helper templates during image construction so the add-on builds from its actual Docker context. +- Install only Headroom's proxy, code-compression, and MCP features instead of unused CUDA, voice, image, memory, and evaluation stacks. - Document the shared-home architecture, separate Desktop/CLI sessions, direct HTTP terminal security, shared concurrent sessions, and configurable data location. ## 1.12 (09-07-2026) From bd9f4f3d238e9b7b178a3cfa5b0ef5b378fd06c2 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:20:30 +0200 Subject: [PATCH 040/538] Build RTK against Bookworm for arm64 compatibility --- claude_desktop/Dockerfile | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index fbe5e65403..722a7b9e89 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -9,6 +9,22 @@ ARG BUILD_FROM ARG BUILD_VERSION +ARG RTK_VERSION="v0.43.0" +ARG RTK_COMMIT="5a7880d404db8364d602f2ecdc41dd790f64013f" + +# The upstream aarch64 release is cross-built on ubuntu-latest and requires +# GLIBC 2.39. Build the pinned source on Bookworm instead so it is compatible +# with the add-on runtime on both supported architectures. +FROM rust:1.91-bookworm AS rtk-builder +ARG RTK_VERSION +ARG RTK_COMMIT +RUN git clone --depth 1 --branch "${RTK_VERSION}" https://github.com/rtk-ai/rtk.git /src/rtk && \ + test "$(git -C /src/rtk rev-parse HEAD)" = "${RTK_COMMIT}" && \ + cd /src/rtk && \ + cargo build --release --locked && \ + install -D -m 0755 target/release/rtk /out/rtk && \ + /out/rtk --version + FROM ${BUILD_FROM} ################## @@ -89,15 +105,15 @@ RUN set -eux; \ chmod 0755 /usr/local/bin/ttyd; \ /usr/local/bin/ttyd --version +# Copy the pinned Bookworm-built RTK binary and execute it in the final image. +# This makes an ABI mismatch fail the image build instead of surfacing at runtime. +COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk +RUN /usr/local/bin/rtk --version + # Install only the Headroom proxy, code-compression, and MCP features used by this add-on. RUN apt-get update && \ apt-get install -y --no-install-recommends nodejs && \ pip3 install --break-system-packages "headroom-ai[proxy,code,mcp]" && \ - curl -fsSL https://raw.githubusercontent.com/rtk-ai/rtk/refs/heads/master/install.sh -o /tmp/rtk-install.sh && \ - HOME=/root sh /tmp/rtk-install.sh && \ - rm /tmp/rtk-install.sh && \ - if [ -x /root/.local/bin/rtk ] && [ ! -x /usr/local/bin/rtk ]; then mv /root/.local/bin/rtk /usr/local/bin/rtk; fi && \ - if [ -x /usr/local/bin/rtk ]; then chmod +x /usr/local/bin/rtk; else echo "rtk binary was not installed on PATH"; exit 1; fi && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* /root/.cache From 5d7d6ff334f497c87e0d33cf2b8cfd88640c2f8f Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:20:52 +0200 Subject: [PATCH 041/538] Bump Claude Desktop add-on to 1.14 --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index ed3320bfdb..5c660a8ad5 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -100,5 +100,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.13" +version: "1.14" video: true From 7b3eb17efd2ddd5cb72ed29ec492d4c322fa2898 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:21:23 +0200 Subject: [PATCH 042/538] Document RTK arm64 compatibility fix --- claude_desktop/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 218ad8b4a3..8654c92ad8 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,8 @@ +## 1.14 (10-07-2026) + +- Build pinned RTK 0.43.0 source on Debian Bookworm for both architectures instead of installing the upstream arm64 release binary, which requires GLIBC 2.39 and cannot run in the add-on image. +- Execute `rtk --version` inside the final image during the Docker build so future ABI incompatibilities fail CI instead of surfacing at runtime. + ## 1.13 (10-07-2026) - Add the official Claude Code stable package, `tmux`, `ripgrep`, and a pinned upstream `ttyd` binary for both supported architectures. From 94135b9b05654423263e7a23562aeccb21e2c4a7 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:22:49 +0200 Subject: [PATCH 043/538] Trigger Claude add-on architecture builds --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 5c660a8ad5..7e9d843c4a 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -2,7 +2,7 @@ arch: - aarch64 - amd64 audio: true -description: Claude Desktop with a persistent Claude Code web terminal in one add-on +description: Claude Desktop plus a persistent Claude Code web terminal in one add-on devices: - /dev/dri - /dev/dri/card0 From 2bbc48f7ab22091a3e147cdbd8c93a50aabc200f Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:23:30 +0200 Subject: [PATCH 044/538] Use native arm64 runner for RTK validation --- .github/workflows/pr2841-diagnostic.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/pr2841-diagnostic.yml b/.github/workflows/pr2841-diagnostic.yml index 09e056e41f..9fcbfa254e 100644 --- a/.github/workflows/pr2841-diagnostic.yml +++ b/.github/workflows/pr2841-diagnostic.yml @@ -8,7 +8,7 @@ on: jobs: diagnose: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04-arm steps: - name: Checkout uses: actions/checkout@v7 @@ -19,9 +19,6 @@ jobs: with: path: ./claude_desktop/ - - name: Set up QEMU - uses: docker/setup-qemu-action@v4 - - name: Set up Docker Buildx uses: docker/setup-buildx-action@v4 From 69458eb13d4ea6163c13159f3345047adbefec4c Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:30:06 +0200 Subject: [PATCH 045/538] Remove temporary Claude build diagnostic --- .github/workflows/pr2841-diagnostic.yml | 48 ------------------------- 1 file changed, 48 deletions(-) delete mode 100644 .github/workflows/pr2841-diagnostic.yml diff --git a/.github/workflows/pr2841-diagnostic.yml b/.github/workflows/pr2841-diagnostic.yml deleted file mode 100644 index 9fcbfa254e..0000000000 --- a/.github/workflows/pr2841-diagnostic.yml +++ /dev/null @@ -1,48 +0,0 @@ ---- -name: Claude Add-on Build Diagnostic - -on: - pull_request: - branches: - - master - -jobs: - diagnose: - runs-on: ubuntu-24.04-arm - steps: - - name: Checkout - uses: actions/checkout@v7 - - - name: Gather add-on information - id: information - uses: frenck/action-addon-information@v1.4 - with: - path: ./claude_desktop/ - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v4 - - - name: Build aarch64 and capture tail - shell: bash - run: | - set +e - BUILD_FROM="$(jq -r '.build_from.aarch64 // empty' '${{ steps.information.outputs.build }}')" - docker buildx build \ - --platform linux/arm64 \ - --progress=plain \ - --build-arg "BUILD_FROM=${BUILD_FROM}" \ - --file claude_desktop/Dockerfile \ - claude_desktop >build.log 2>&1 - status=$? - tail -n 300 build.log >build-tail.log - printf 'build_status=%s\n' "$status" >build-status.txt - exit 0 - - - name: Upload diagnostic log - uses: actions/upload-artifact@v4 - with: - name: claude-aarch64-build-log - path: | - build-tail.log - build-status.txt - retention-days: 1 From effd7f43197a1baffd92a3f5cef97d557b02ee7b Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:30:35 +0200 Subject: [PATCH 046/538] Run final Claude add-on build matrix --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 7e9d843c4a..f6f24caf01 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -62,7 +62,7 @@ ports: 8787/tcp: 8787 ports_description: 3001/tcp: Claude Desktop web interface - 7681/tcp: HTTP Basic-auth Claude Code terminal (no TLS) + 7681/tcp: Claude Code web terminal over HTTP Basic auth (no TLS) 8787/tcp: Headroom dashboard and proxy privileged: - SYS_ADMIN From 424573548e0893c2e8c330d643b45f79c71c64f5 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:36:14 +0200 Subject: [PATCH 047/538] Finalize Claude RTK arm64 validation --- claude_desktop/CHANGELOG.md | 1 + claude_desktop/config.yaml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 8654c92ad8..778672d5d4 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -2,6 +2,7 @@ - Build pinned RTK 0.43.0 source on Debian Bookworm for both architectures instead of installing the upstream arm64 release binary, which requires GLIBC 2.39 and cannot run in the add-on image. - Execute `rtk --version` inside the final image during the Docker build so future ABI incompatibilities fail CI instead of surfacing at runtime. +- Validate the final Bookworm-built RTK binary in a native aarch64 image build. ## 1.13 (10-07-2026) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index f6f24caf01..6e6b38ed63 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -2,7 +2,7 @@ arch: - aarch64 - amd64 audio: true -description: Claude Desktop plus a persistent Claude Code web terminal in one add-on +description: Claude Desktop with a persistent Claude Code web terminal devices: - /dev/dri - /dev/dri/card0 From 6b4c11cbd8341ee016f1d73664c9196cad7dee5c Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:39:27 +0200 Subject: [PATCH 048/538] Fix add-on changelog and arm64 CI checks --- .github/workflows/onpr_check-pr.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/onpr_check-pr.yaml b/.github/workflows/onpr_check-pr.yaml index 07509f023f..d13d231b36 100644 --- a/.github/workflows/onpr_check-pr.yaml +++ b/.github/workflows/onpr_check-pr.yaml @@ -35,6 +35,7 @@ jobs: git fetch origin "${{ github.event.before }}" || true changed_changelog_files=$(git diff --name-only "${{ github.event.before }}" "${{ github.sha }}" | grep -iE '^([^/]+/)?changelog\.(md|txt|ya?ml|json)$' || true) echo "$changed_changelog_files" + echo "changelogs_files=$changed_changelog_files" >> "$GITHUB_OUTPUT" changed_config_files=$(git diff --name-only "${{ github.event.before }}" "${{ github.sha }}" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) echo "$changed_config_files" all_changed_files=$(echo -e "$changed_config_files\n$changed_changelog_files" | sort -u) @@ -208,6 +209,7 @@ jobs: uses: docker/build-push-action@v7 with: context: ${{ matrix.addon }} + platforms: linux/arm64 push: false load: true file: ${{ matrix.addon }}/Dockerfile From 0c651312ab27a9939c7b68111588ec375e15271d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 10 Jul 2026 15:40:24 +0200 Subject: [PATCH 049/538] Validate Claude arm64 build and changelog --- claude_desktop/CHANGELOG.md | 1 + claude_desktop/config.yaml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 778672d5d4..9f44535bf3 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -3,6 +3,7 @@ - Build pinned RTK 0.43.0 source on Debian Bookworm for both architectures instead of installing the upstream arm64 release binary, which requires GLIBC 2.39 and cannot run in the add-on image. - Execute `rtk --version` inside the final image during the Docker build so future ABI incompatibilities fail CI instead of surfacing at runtime. - Validate the final Bookworm-built RTK binary in a native aarch64 image build. +- Correct the repository PR checks so changed changelog paths are exported and aarch64 images are built explicitly for `linux/arm64`. ## 1.13 (10-07-2026) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 6e6b38ed63..b6ef1d38e7 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -2,7 +2,7 @@ arch: - aarch64 - amd64 audio: true -description: Claude Desktop with a persistent Claude Code web terminal +description: Claude Desktop and a persistent Claude Code web terminal devices: - /dev/dri - /dev/dri/card0 From c53263a29d28820b6db215cf1cece692dd90d3a2 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Fri, 10 Jul 2026 16:08:41 +0200 Subject: [PATCH 050/538] Fix BirdNET-Pi standalone mode: strip sudo at build time + ensure /run/php The build-time hook that removes `sudo` from the BirdNET-Pi scripts was injected at line 2 of newinstaller.sh, i.e. before the repo is cloned, so it was a no-op and `sudo` remained in 25 scripts. Outside Home Assistant this breaks every script invoked by a non-sudoers user (php-fpm's `caddy` user for the WebUI System Controls, or `abc`) with "X is not in the sudoers file", which is what prevented standalone (no-Supervisor) operation. Move the strip to run after the installer clones the repo. Also drop the unused (and, in this fork, incorrect) `$my_dir` -> `/config` rewrite. Additionally create /run/php before starting PHP-FPM: it is normally created by systemd-tmpfiles, which does not run in this container, so on a fresh/tmpfs /run the socket cannot be bound and the WebUI never comes up. Verified against the published 2026.07.10 image: the WebUI serves HTTP 200 and restart_services.sh runs cleanly as the non-sudoers `caddy` user. Co-Authored-By: Claude Fable 5 --- birdnet-pi/CHANGELOG.md | 3 +++ birdnet-pi/Dockerfile | 21 +++++++++---------- birdnet-pi/config.yaml | 2 +- .../rootfs/custom-services.d/00-php_pfm.sh | 8 +++++++ 4 files changed, 22 insertions(+), 12 deletions(-) diff --git a/birdnet-pi/CHANGELOG.md b/birdnet-pi/CHANGELOG.md index 535298e0fc..f878994446 100644 --- a/birdnet-pi/CHANGELOG.md +++ b/birdnet-pi/CHANGELOG.md @@ -1,3 +1,6 @@ +## 2026.07.10-1 (10-07-2026) +- Fix standalone (no-Supervisor) mode: strip `sudo` from BirdNET-Pi scripts at build time (the previous hook ran before the repo was cloned, so `sudo` remained and broke service/WebUI actions run by non-sudoers users such as `caddy`/`abc`) +- Ensure `/run/php` exists before starting PHP-FPM so the WebUI starts even when `/run` is a fresh tmpfs ## 2026.07.10 (10-07-2026) - Minor bugs fixed ## 2026.06.01 (19-06-2026) diff --git a/birdnet-pi/Dockerfile b/birdnet-pi/Dockerfile index 44d1703689..0c5511fb0b 100644 --- a/birdnet-pi/Dockerfile +++ b/birdnet-pi/Dockerfile @@ -74,17 +74,6 @@ RUN \ curl -f -L -s -S "https://raw.githubusercontent.com/alexbelgium/BirdNET-Pi/main/newinstaller.sh" -o /newinstaller.sh && \ chmod 777 /newinstaller.sh && \ \ - # Use installer to modify other scripts - ####################################### - # Define file - sed -i "1a /./newinstallermod.sh" /newinstaller.sh && \ - echo '#!/bin/bash' >> /newinstallermod.sh && \ - # Remove all instances of sudo from all other scripts - echo 'for file in $(grep -srl "sudo" $HOME/BirdNET-Pi/scripts); do sed -i "s|sudo ||" "$file"; done' >> /newinstallermod.sh && \ - echo 'for file in $(grep -srl "my_dir" $HOME/BirdNET-Pi/scripts); do sed -i "s|\$my_dir|/config|" "$file"; done' >> /newinstallermod.sh && \ - # Set permission - chmod +x /newinstallermod.sh && \ - \ # Modify installer ################## # Use my repository @@ -110,6 +99,16 @@ RUN \ # Execute installer /./newinstaller.sh && \ \ + # Remove sudo from the installed BirdNET-Pi scripts. + # Inside the container everything already runs with the privileges it needs + # (root during init, user "pi" for the services), so "sudo" is never required. + # Leaving it in breaks any script invoked by a user that is not in sudoers - + # e.g. php-fpm's "caddy" user driving the WebUI System Controls, or the "abc" + # user - which is what prevented BirdNET-Pi from working in standalone + # (no-Supervisor) mode. This must run AFTER the installer has cloned the repo; + # the previous build-time hook ran before the clone and was therefore a no-op. + for file in $(grep -srlF "sudo " "$HOME/BirdNET-Pi/scripts"); do sed -i "s|sudo ||g" "$file"; done && \ + \ # Install dateparser and resampy, upgrade numpy $PYTHON_VIRTUAL_ENV /usr/bin/pip3 install dateparser resampy && \ \ diff --git a/birdnet-pi/config.yaml b/birdnet-pi/config.yaml index 42b148b948..d2db429e2f 100644 --- a/birdnet-pi/config.yaml +++ b/birdnet-pi/config.yaml @@ -116,5 +116,5 @@ tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-pi usb: true -version: 2026.07.10 +version: 2026.07.10-1 video: true diff --git a/birdnet-pi/rootfs/custom-services.d/00-php_pfm.sh b/birdnet-pi/rootfs/custom-services.d/00-php_pfm.sh index 0519e60bf6..76c2497cd3 100755 --- a/birdnet-pi/rootfs/custom-services.d/00-php_pfm.sh +++ b/birdnet-pi/rootfs/custom-services.d/00-php_pfm.sh @@ -4,6 +4,14 @@ # Correct /config permissions after startup chown pi:pi /config +# Ensure the PHP-FPM runtime directory exists. It is normally created by +# systemd-tmpfiles (/usr/lib/tmpfiles.d/php*-fpm.conf), which does not run in +# this container - so on a fresh/tmpfs /run the socket cannot be bound and the +# WebUI never starts. Create it here so the web stack works with or without +# Home Assistant Supervisor. +mkdir -p /run/php +chown www-data:www-data /run/php 2> /dev/null || true + # Set timezone without requiring Home Assistant Supervisor or D-Bus. TZ_VALUE="${TZ:-}" if [[ -S /var/run/dbus/system_bus_socket ]] && command -v timedatectl > /dev/null 2>&1; then From 0fc95bfe8841379fd2170c97f9ba2277085ae8f5 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 10 Jul 2026 17:33:25 +0000 Subject: [PATCH 051/538] GitHub bot : README updated --- README.md | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 56915a93e4..588bc3082c 100644 --- a/README.md +++ b/README.md @@ -56,19 +56,19 @@ If you want to do add the repository manually, please follow the procedure highl ### Number of addons -- In the repository : 135 -- Installed : 508490 +- In the repository : 136 +- Installed : 626324 ### Top 3 -1. Arpspoof (59486x) -2. Sponsorblockcast (55582x) -3. Flaresolverr (44486x) +1. Arpspoof (86665x) +2. Sponsorblockcast (82801x) +3. Jellyfin (71957x) ### Architectures used -- amd64: 88% -- aarch64: 12% +- amd64: 90% +- aarch64: 10% ### Stars evolution @@ -77,7 +77,7 @@ If you want to do add the repository manually, please follow the procedure highl ## Add-ons provided by this repository %%ADDONS_LIST%% -✓ [Arpspoof (59486x)](arpspoof/) : block internet connection for local network devices +✓ [Arpspoof (86665x)](arpspoof/) : block internet connection for local network devices   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Farpspoof%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Farpspoof%2Fupdater.json) @@ -143,6 +143,17 @@ If you want to do add the repository manually, please follow the procedure highl ![amd64][amd64-badge] ![ingress][ingress-badge] +✓ ![image](https://api.iconify.design/mdi/bird.svg) [BirdNET-Pi (zach7036)](birdnet-pi-zach/) : Realtime acoustic bird classification system + +  ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fbirdnet-pi-zach%2Fconfig.yaml) +![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fbirdnet-pi-zach%2Fupdater.json) +![aarch64][aarch64-badge] +![amd64][amd64-badge] +![ingress][ingress-badge] +![mqtt][mqtt-badge] +![smb][smb-badge] +![localdisks][localdisks-badge] + ✓ ![image](https://api.iconify.design/mdi/bird.svg) [BirdNET-PiPy](birdnet-pipy/) : BirdNET-PiPy bird detection with a modern web dashboard   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fbirdnet-pipy%2Fconfig.yaml) @@ -247,7 +258,7 @@ If you want to do add the repository manually, please follow the procedure highl ![amd64][amd64-badge] ![ingress][ingress-badge] -✓ ![image](https://api.iconify.design/mdi/robot-happy.svg) [Claude Desktop](claude_desktop/) : Claude Desktop streamed through a browser with LinuxServer Selkies +✓ ![image](https://api.iconify.design/mdi/robot-happy.svg) [Claude Desktop](claude_desktop/) : Claude Desktop with a persistent Claude Code web terminal in one add-on   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fclaude_desktop%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fclaude_desktop%2Fupdater.json) @@ -508,7 +519,7 @@ If you want to do add the repository manually, please follow the procedure highl ![smb][smb-badge] ![localdisks][localdisks-badge] -✓ ![image](https://api.iconify.design/mdi/billiards-rack.svg) [Jellyfin NAS](jellyfin/) : A free Software Media System that puts you in control of managing and streaming your media +✓ ![image](https://api.iconify.design/mdi/billiards-rack.svg) [Jellyfin (71957x) NAS](jellyfin/) : A free Software Media System that puts you in control of managing and streaming your media   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fjellyfin%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fjellyfin%2Fupdater.json) @@ -571,7 +582,7 @@ If you want to do add the repository manually, please follow the procedure highl ![aarch64][aarch64-badge] ![amd64][amd64-badge] -✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Maintainerr](maintainerr/) : Rule-based media cleanup tool for Plex, Jellyfin and Emby. Creates collections and optionally deletes unwatched content. +✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Maintainerr](maintainerr/) : Rule-based media cleanup tool for Plex, Jellyfin (71957x) and Emby. Creates collections and optionally deletes unwatched content.   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fmaintainerr%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fmaintainerr%2Fupdater.json) @@ -885,7 +896,7 @@ If you want to do add the repository manually, please follow the procedure highl ![smb][smb-badge] ![localdisks][localdisks-badge] -✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Seerr](seerr/) : Open-source media request and discovery manager for Jellyfin, Plex, and Emby +✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Seerr](seerr/) : Open-source media request and discovery manager for Jellyfin (71957x), Plex, and Emby   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fseerr%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fseerr%2Fupdater.json) From 6f143deb49cf39ca80a9fec9e2e73d5b584b09dc Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:25:13 +0200 Subject: [PATCH 052/538] Updater bot : aurral updated to 1.76.52 --- aurral/CHANGELOG.md | 3 +++ aurral/config.yaml | 2 +- aurral/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/aurral/CHANGELOG.md b/aurral/CHANGELOG.md index 540eadfcb2..486d8735fd 100644 --- a/aurral/CHANGELOG.md +++ b/aurral/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.76.52 (2026-07-11) +- Update to latest version from lklynet/aurral (changelog : https://github.com/lklynet/aurral/releases) + ## 1.76.51 (2026-06-17) - Update to latest version from lklynet/aurral (changelog : https://github.com/lklynet/aurral/releases) ## 1.76.49 (2026-06-05) diff --git a/aurral/config.yaml b/aurral/config.yaml index 4060b407d4..0dc46c4a67 100644 --- a/aurral/config.yaml +++ b/aurral/config.yaml @@ -1,5 +1,5 @@ name: Aurral -version: "1.76.51" +version: "1.76.52" slug: aurral description: >- Self-hosted music discovery, request management, flows, and playlist diff --git a/aurral/updater.json b/aurral/updater.json index c209f37ccd..959e163336 100644 --- a/aurral/updater.json +++ b/aurral/updater.json @@ -1,9 +1,9 @@ { - "last_update": "2026-06-17", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "aurral", "source": "github", "upstream_repo": "lklynet/aurral", - "upstream_version": "1.76.51", + "upstream_version": "1.76.52", "github_beta": false } From 8153a944d80fa3ce2382597cf32382618b388330 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:25:38 +0200 Subject: [PATCH 053/538] Updater bot : birdnet-pipy updated to 0.8.3 --- birdnet-pipy/CHANGELOG.md | 3 +++ birdnet-pipy/config.yaml | 2 +- birdnet-pipy/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/birdnet-pipy/CHANGELOG.md b/birdnet-pipy/CHANGELOG.md index 2819771ec2..45c3443ef3 100644 --- a/birdnet-pipy/CHANGELOG.md +++ b/birdnet-pipy/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.8.3 (2026-07-11) +- Update to latest version from Suncuss/BirdNET-PiPy (changelog : https://github.com/Suncuss/BirdNET-PiPy/releases) + ## 0.8.2.1 (2026-07-05) - Re-tag of 0.8.2-1 with no content change. Home Assistant compares add-on versions with semver semantics, where a `-N` suffix counts as a *pre-release* and sorts **below** the base version — so users already on 0.8.2 saw the 0.8.2-1 nginx fix as "Up-to-date" with the Update button disabled. Four-segment `0.8.2.1` sorts above both `0.8.2` and `0.8.2-1` (and below the next upstream `0.8.3`), so the update becomes installable everywhere. diff --git a/birdnet-pipy/config.yaml b/birdnet-pipy/config.yaml index f3497b6f3b..6dcd931f1e 100644 --- a/birdnet-pipy/config.yaml +++ b/birdnet-pipy/config.yaml @@ -96,4 +96,4 @@ schema: ssl: bool? slug: birdnet-pipy url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-pipy -version: "0.8.2.1" +version: "0.8.3" diff --git a/birdnet-pipy/updater.json b/birdnet-pipy/updater.json index b334e0f23c..89739a63ad 100644 --- a/birdnet-pipy/updater.json +++ b/birdnet-pipy/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "birdnet-pipy", "source": "github", "upstream_repo": "Suncuss/BirdNET-PiPy", - "upstream_version": "0.8.2" + "upstream_version": "0.8.3" } From 859e47772a1c6421f00d6209fdc219a5ea8333ac Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:26:22 +0200 Subject: [PATCH 054/538] Updater bot : browser_brave updated to 1.92.139-ls112 --- browser_brave/CHANGELOG.md | 3 +++ browser_brave/config.yaml | 2 +- browser_brave/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/browser_brave/CHANGELOG.md b/browser_brave/CHANGELOG.md index 8d8b19d676..b2485c0403 100644 --- a/browser_brave/CHANGELOG.md +++ b/browser_brave/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.92.139-ls112 (2026-07-11) +- Update to latest version from linuxserver/docker-brave (changelog : https://github.com/linuxserver/docker-brave/releases) + ## 1.92.134-ls109 (2026-07-04) - Update to latest version from linuxserver/docker-brave (changelog : https://github.com/linuxserver/docker-brave/releases) diff --git a/browser_brave/config.yaml b/browser_brave/config.yaml index eb6a77eac0..060a5126db 100644 --- a/browser_brave/config.yaml +++ b/browser_brave/config.yaml @@ -69,5 +69,5 @@ slug: brave tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.92.134-ls109" +version: "1.92.139-ls112" video: true diff --git a/browser_brave/updater.json b/browser_brave/updater.json index 218c3ecf7b..1dab2f51b8 100644 --- a/browser_brave/updater.json +++ b/browser_brave/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "brave", "source": "github", "upstream_repo": "linuxserver/docker-brave", - "upstream_version": "1.92.134-ls109" + "upstream_version": "1.92.139-ls112" } From 397a6eed8877f691b44e46d7fb21d3c9687283ae Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:26:33 +0200 Subject: [PATCH 055/538] Updater bot : browser_chromium updated to version-30a7c401 --- browser_chromium/CHANGELOG.md | 3 +++ browser_chromium/config.yaml | 2 +- browser_chromium/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/browser_chromium/CHANGELOG.md b/browser_chromium/CHANGELOG.md index e47e201115..4f031a23ae 100644 --- a/browser_chromium/CHANGELOG.md +++ b/browser_chromium/CHANGELOG.md @@ -1,4 +1,7 @@ +## version-30a7c401 (2026-07-11) +- Update to latest version from linuxserver/docker-chromium (changelog : https://github.com/linuxserver/docker-chromium/releases) + ## version-7148c2a3 (2026-07-04) - Update to latest version from linuxserver/docker-chromium (changelog : https://github.com/linuxserver/docker-chromium/releases) diff --git a/browser_chromium/config.yaml b/browser_chromium/config.yaml index 660bffb486..623d2962d7 100644 --- a/browser_chromium/config.yaml +++ b/browser_chromium/config.yaml @@ -71,5 +71,5 @@ slug: chromium tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "version-7148c2a3" +version: "version-30a7c401" video: true diff --git a/browser_chromium/updater.json b/browser_chromium/updater.json index 7d9ee819cf..5634b3b463 100644 --- a/browser_chromium/updater.json +++ b/browser_chromium/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "chromium", "source": "github", "upstream_repo": "linuxserver/docker-chromium", - "upstream_version": "version-7148c2a3" + "upstream_version": "version-30a7c401" } From 434aa76c2ad5f5ed478adce571fdea484ad0e14c Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:27:08 +0200 Subject: [PATCH 056/538] Updater bot : claude_desktop updated to debiantrixie-version-c55d3809 --- claude_desktop/CHANGELOG.md | 3 +++ claude_desktop/Dockerfile | 2 +- claude_desktop/config.yaml | 6 +++--- claude_desktop/updater.json | 4 +++- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 218ad8b4a3..3935c131cb 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,6 @@ + +## debiantrixie-version-c55d3809 (2026-07-11) +- Update to latest version from linuxserver/docker-baseimage-selkies (changelog : https://github.com/linuxserver/docker-baseimage-selkies/releases) ## 1.13 (10-07-2026) - Add the official Claude Code stable package, `tmux`, `ripgrep`, and a pinned upstream `ttyd` binary for both supported architectures. diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index fbe5e65403..27f0d0c82e 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -29,7 +29,7 @@ VOLUME [ "/sys/fs/cgroup" ] # hadolint ignore=SC2015,DL4006,SC2013,SC2086 RUN \ usermod --home /data/data abc && \ - if [[ -d /etc/services.d ]] && ls /etc/services.d/*/run 1> /dev/null 2>&1; then sed -i "1a set +e" /etc/services.d/*/run; fi + if [[ -d /etc/services.d ]] && ls /etc/services.d/*/run 1> /dev/"debiantrixie-version-c55d3809" 2>&1; then sed -i "1a set +e" /etc/services.d/*/run; fi ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index ed3320bfdb..75fddc0570 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -57,8 +57,8 @@ options: panel_admin: false panel_icon: mdi:robot-happy ports: - 3001/tcp: null - 7681/tcp: null + 3001/tcp: "debiantrixie-version-c55d3809" + 7681/tcp: "debiantrixie-version-c55d3809" 8787/tcp: 8787 ports_description: 3001/tcp: Claude Desktop web interface @@ -100,5 +100,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.13" +version: "debiantrixie-version-c55d3809" video: true diff --git a/claude_desktop/updater.json b/claude_desktop/updater.json index 204f59e472..1d422d6aaf 100644 --- a/claude_desktop/updater.json +++ b/claude_desktop/updater.json @@ -3,5 +3,7 @@ "upstream_repo": "linuxserver/docker-baseimage-selkies", "github_fulltag": true, "slug": "claude_desktop", - "paused": false + "paused": false, + "upstream_version": "debiantrixie-version-c55d3809", + "last_update": "2026-07-11" } From 507ea9fb8c48ed864916f1ebbc99afd4924ec87b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:27:12 +0200 Subject: [PATCH 057/538] Updater bot : cleanuparr updated to 2.9.16 --- cleanuparr/CHANGELOG.md | 3 +++ cleanuparr/Dockerfile | 2 +- cleanuparr/config.yaml | 2 +- cleanuparr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/cleanuparr/CHANGELOG.md b/cleanuparr/CHANGELOG.md index 50db7093e0..440e40cd22 100644 --- a/cleanuparr/CHANGELOG.md +++ b/cleanuparr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.9.16 (2026-07-11) +- Update to latest version from Cleanuparr/Cleanuparr (changelog : https://github.com/Cleanuparr/Cleanuparr/releases) + ## 2.9.14 (2026-06-20) - Update to latest version from Cleanuparr/Cleanuparr (changelog : https://github.com/Cleanuparr/Cleanuparr/releases) diff --git a/cleanuparr/Dockerfile b/cleanuparr/Dockerfile index c6422e39dd..35426ab6d1 100644 --- a/cleanuparr/Dockerfile +++ b/cleanuparr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="2.9.14" +ARG BUILD_UPSTREAM="2.9.16" ################# # 1 Build Image # diff --git a/cleanuparr/config.yaml b/cleanuparr/config.yaml index 068e24ae0a..186a19235e 100644 --- a/cleanuparr/config.yaml +++ b/cleanuparr/config.yaml @@ -91,5 +91,5 @@ schema: TZ: str? slug: cleanuparr url: https://github.com/alexbelgium/hassio-addons/tree/master/cleanuparr -version: "2.9.14" +version: "2.9.16" webui: "[PROTO:ssl]://[HOST]:[PORT:11011]" diff --git a/cleanuparr/updater.json b/cleanuparr/updater.json index 9b1dd8a72f..5df27ae3e7 100644 --- a/cleanuparr/updater.json +++ b/cleanuparr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-20", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "cleanuparr", "source": "github", "upstream_repo": "Cleanuparr/Cleanuparr", - "upstream_version": "2.9.14" + "upstream_version": "2.9.16" } From 91429643ef784c1693cb11b8612913c5aae6ebd6 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:27:20 +0200 Subject: [PATCH 058/538] Updater bot : codex updated to 2.1.2 --- codex/CHANGELOG.md | 3 +++ codex/config.yaml | 2 +- codex/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/codex/CHANGELOG.md b/codex/CHANGELOG.md index 0ad95d929a..60d82b411a 100644 --- a/codex/CHANGELOG.md +++ b/codex/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.1.2 (2026-07-11) +- Update to latest version from ajslater/codex (changelog : https://github.com/ajslater/codex/releases) + ## 2.1.0 (2026-07-04) - Update to latest version from ajslater/codex (changelog : https://github.com/ajslater/codex/releases) diff --git a/codex/config.yaml b/codex/config.yaml index 77825cf3aa..b0a7afc4e7 100644 --- a/codex/config.yaml +++ b/codex/config.yaml @@ -101,4 +101,4 @@ schema: slug: codex udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.1.0" +version: "2.1.2" diff --git a/codex/updater.json b/codex/updater.json index b808a8b765..668c9c8eca 100644 --- a/codex/updater.json +++ b/codex/updater.json @@ -1,9 +1,9 @@ { "github_beta": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "codex", "source": "github", "upstream_repo": "ajslater/codex", - "upstream_version": "2.1.0" + "upstream_version": "2.1.2" } From ae222402694433339fbc49a96cb3e3f8d8ee2dd4 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:27:31 +0200 Subject: [PATCH 059/538] Updater bot : emby_beta updated to 4.10.0.18 --- emby_beta/CHANGELOG.md | 3 +++ emby_beta/Dockerfile | 2 +- emby_beta/config.yaml | 2 +- emby_beta/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/emby_beta/CHANGELOG.md b/emby_beta/CHANGELOG.md index ec89972652..05d6089bc6 100644 --- a/emby_beta/CHANGELOG.md +++ b/emby_beta/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.10.0.18 (2026-07-11) +- Update to latest version from linuxserver/docker-emby (changelog : https://github.com/linuxserver/docker-emby/releases) + ## 4.10.0.17 (2026-07-04) - Update to latest version from linuxserver/docker-emby (changelog : https://github.com/linuxserver/docker-emby/releases) diff --git a/emby_beta/Dockerfile b/emby_beta/Dockerfile index 13726a673a..6e25402535 100644 --- a/emby_beta/Dockerfile +++ b/emby_beta/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="4.10.0.17" +ARG BUILD_UPSTREAM="4.10.0.18" FROM ${BUILD_FROM} ################## diff --git a/emby_beta/config.yaml b/emby_beta/config.yaml index 82e43aae15..c59e48216e 100644 --- a/emby_beta/config.yaml +++ b/emby_beta/config.yaml @@ -122,5 +122,5 @@ schema: slug: emby_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/emby -version: "4.10.0.17" +version: "4.10.0.18" video: true diff --git a/emby_beta/updater.json b/emby_beta/updater.json index ac7dd89080..43b6d05a72 100644 --- a/emby_beta/updater.json +++ b/emby_beta/updater.json @@ -1,9 +1,9 @@ { "github_beta": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "emby", "source": "github", "upstream_repo": "linuxserver/docker-emby", - "upstream_version": "4.10.0.17" + "upstream_version": "4.10.0.18" } From 839cfd13822adb371e694a7adc194a4c84856ba3 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:27:42 +0200 Subject: [PATCH 060/538] Updater bot : ente updated to 4.4.24 --- ente/CHANGELOG.md | 3 +++ ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 15c481b126..eedfa586eb 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.4.24 (2026-07-11) +- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) + ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 72d2fc618c..5bd0afb53e 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.23" +version: "4.4.24" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index d8d8dd2093..dda569692b 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-06-11", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.23" + "upstream_version": "4.4.24" } From b21ce72e0e6a963fd5ac2c87916f07ef54b78b04 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:28:04 +0200 Subject: [PATCH 061/538] Updater bot : flexget updated to 3.19.27 --- flexget/CHANGELOG.md | 3 +++ flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index fb73412a31..eb465ccca1 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.19.27 (2026-07-11) +- Update to latest version from wiserain/flexget + ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index ad1b7f6538..5c2831b377 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.26" +version: "3.19.27" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 82ed3e79df..0f5f4b7370 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.26" + "upstream_version": "3.19.27" } From 91ed6c3f460d8dce0038fb582ff2b17101a47d1a Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:28:21 +0200 Subject: [PATCH 062/538] Updater bot : grav updated to 2.0.10 --- grav/CHANGELOG.md | 3 +++ grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 06165ba207..ce550afef2 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.10 (2026-07-11) +- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) + ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 0894d6e150..20b462ed23 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.6" +ARG BUILD_UPSTREAM="2.0.10" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 540412f15c..e6d9d32a4f 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.6" +version: "2.0.10" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 3936e662ab..69642e1c44 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.6" + "upstream_version": "2.0.10" } From 6e02e611f4a9a0adf51cf96cd80210fa98138fe0 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:28:28 +0200 Subject: [PATCH 063/538] Updater bot : immich updated to 3.0.2 --- immich/CHANGELOG.md | 3 +++ immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index a8ab336381..dd765f1fbf 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.2 (2026-07-11) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 4537b0473b..fce6366bbe 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 63ac0aca0a..ade6359e2d 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.2" } From aa772493145386b3fe32711257d89771d2747a53 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:28:32 +0200 Subject: [PATCH 064/538] Updater bot : immich_cuda updated to 3.0.2 --- immich_cuda/CHANGELOG.md | 3 +++ immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 95bec50a58..d19b1b7bca 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.2 (2026-07-11) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index b7c3dd3c48..0dedd90fc2 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 63ac0aca0a..ade6359e2d 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.2" } From c8f5ec8f20ef95c79be8c37ebaba0b88a2c2b908 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:28:37 +0200 Subject: [PATCH 065/538] Updater bot : immich_frame updated to 1.0.35.0 --- immich_frame/CHANGELOG.md | 3 +++ immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 443763661a..05e864e2e9 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.0.35.0 (2026-07-11) +- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) + ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 44a6fcb111..3f400afe37 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.34.0" +version: "1.0.35.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 8408fb021e..51c107119d 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.34.0" + "upstream_version": "1.0.35.0" } From af68eece537bac2deb1b877c94659e72aeda304d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:28:41 +0200 Subject: [PATCH 066/538] Updater bot : immich_noml updated to 3.0.2 --- immich_noml/CHANGELOG.md | 3 +++ immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 0c354e8271..32213cdc62 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.2 (2026-07-11) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 42ee4dc3dd..89d9e3ae3a 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 63ac0aca0a..ade6359e2d 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.2" } From b98ae69a6cfe8864336646f2bc77835dc58cc166 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:28:46 +0200 Subject: [PATCH 067/538] Updater bot : immich_openvino updated to 3.0.2 --- immich_openvino/CHANGELOG.md | 3 +++ immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 1b604106d2..30a4dc938b 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.2 (2026-07-11) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 52c6cd1a44..2a51badd99 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 63ac0aca0a..ade6359e2d 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.2" } From 534a5261859ca731fe37cb57214b2f35dad109d8 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:28:54 +0200 Subject: [PATCH 068/538] Updater bot : jackett updated to 0.24.2200 --- jackett/CHANGELOG.md | 3 +++ jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index fdcaa4afa4..00c68e0949 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.24.2200 (2026-07-11) +- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) + ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index c393744967..b6962b97e8 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2166" +version: "0.24.2200" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0a816abd2c..b8e69d9f57 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2166" + "upstream_version": "0.24.2200" } From 481094574d87513d45b85728a2001f701f172eb0 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:29:17 +0200 Subject: [PATCH 069/538] Updater bot : linkwarden updated to 2.15.0 --- linkwarden/CHANGELOG.md | 3 +++ linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 90b6ee06ff..7ab71343ff 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 2.15.0 (2026-07-11) +- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index 33fb3c849d..d3b8505b13 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.14.1" +version: "2.15.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 18d72d7a97..8fd3d87a9e 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-04-23", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.14.1" + "upstream_version": "2.15.0" } From 22bbbfdf755986b2c3681b1c6c265061d4b7aefd Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:29:21 +0200 Subject: [PATCH 070/538] Updater bot : maintainerr updated to 3.17.1 --- maintainerr/CHANGELOG.md | 3 +++ maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6625d46e2d..716a5fabc9 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.17.1 (2026-07-11) +- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) + ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index eadb42fa43..a05b7bb794 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.16.0" +ARG BUILD_UPSTREAM="3.17.1" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index 65d02cfd17..bb266ddf2b 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.16.0" +version: "3.17.1" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index fd48a580bc..af09ec4226 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.16.0" + "upstream_version": "3.17.1" } From 682a96fc8e7c25e98ce8aaa246b9d5bdeb25fa48 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:29:40 +0200 Subject: [PATCH 071/538] Updater bot : navidrome updated to 0.63.1 --- navidrome/CHANGELOG.md | 3 +++ navidrome/config.yaml | 2 +- navidrome/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/navidrome/CHANGELOG.md b/navidrome/CHANGELOG.md index 1d3e82672a..ab3a7318a4 100644 --- a/navidrome/CHANGELOG.md +++ b/navidrome/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 0.63.1 (2026-07-11) +- Update to latest version from navidrome/navidrome (changelog : https://github.com/navidrome/navidrome/releases) ## 0.62.0-2 (19-06-2026) - Minor bugs fixed diff --git a/navidrome/config.yaml b/navidrome/config.yaml index e1c6c8bc59..802ffe3dd1 100644 --- a/navidrome/config.yaml +++ b/navidrome/config.yaml @@ -119,5 +119,5 @@ schema: slug: navidrome udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/navidrome -version: "0.62.0-2" +version: "0.63.1" webui: "[PROTO:ssl]://[HOST]:[PORT:4533]" diff --git a/navidrome/updater.json b/navidrome/updater.json index 68986b5735..97b387b1c9 100644 --- a/navidrome/updater.json +++ b/navidrome/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-11", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "navidrome", "source": "github", "upstream_repo": "navidrome/navidrome", - "upstream_version": "0.62.0" + "upstream_version": "0.63.1" } From e8260efe3755ce1153559eea6f9b15b3da844629 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:29:54 +0200 Subject: [PATCH 072/538] Updater bot : nzbget updated to v26.2-ls253 --- nzbget/CHANGELOG.md | 3 +++ nzbget/config.yaml | 2 +- nzbget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nzbget/CHANGELOG.md b/nzbget/CHANGELOG.md index 054fcb4480..a041b7d88f 100644 --- a/nzbget/CHANGELOG.md +++ b/nzbget/CHANGELOG.md @@ -1,4 +1,7 @@ +## v26.2-ls253 (2026-07-11) +- Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) + ## v26.2-ls251 (2026-07-04) - Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) diff --git a/nzbget/config.yaml b/nzbget/config.yaml index 4c2658da96..2abdc16346 100644 --- a/nzbget/config.yaml +++ b/nzbget/config.yaml @@ -104,4 +104,4 @@ schema: slug: nzbget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "v26.2-ls251" +version: "v26.2-ls253" diff --git a/nzbget/updater.json b/nzbget/updater.json index 15dca4e6a3..6a221250bd 100644 --- a/nzbget/updater.json +++ b/nzbget/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "nzbget", "source": "github", "upstream_repo": "linuxserver/docker-nzbget", - "upstream_version": "v26.2-ls251" + "upstream_version": "v26.2-ls253" } From 29ca7397098218c0ed8f01e1d6721ff0e7ae44f1 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:30:01 +0200 Subject: [PATCH 073/538] Updater bot : openproject updated to 17.6.0 --- openproject/CHANGELOG.md | 3 +++ openproject/config.yaml | 2 +- openproject/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/openproject/CHANGELOG.md b/openproject/CHANGELOG.md index 26524b7076..08ec499a6b 100644 --- a/openproject/CHANGELOG.md +++ b/openproject/CHANGELOG.md @@ -1,4 +1,7 @@ +## 17.6.0 (2026-07-11) +- Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) + ## 17.5.1 (2026-06-17) - Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) diff --git a/openproject/config.yaml b/openproject/config.yaml index 4dd820eb68..476c58e113 100644 --- a/openproject/config.yaml +++ b/openproject/config.yaml @@ -34,5 +34,5 @@ schema: slug: openproject udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/openproject -version: "17.5.1" +version: "17.6.0" webui: "[PROTO:ssl]://[HOST]:[PORT:8080]" diff --git a/openproject/updater.json b/openproject/updater.json index 9ac77fed1e..f522a317a0 100644 --- a/openproject/updater.json +++ b/openproject/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-17", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "openproject", "source": "github", "upstream_repo": "opf/openproject", - "upstream_version": "17.5.1" + "upstream_version": "17.6.0" } From 554d7dc04f9dde00f9fea216d4912fce46ee8485 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:30:11 +0200 Subject: [PATCH 074/538] Updater bot : plex updated to 1.43.2.10687-563d026ea-ls312 --- plex/CHANGELOG.md | 3 +++ plex/config.yaml | 2 +- plex/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/plex/CHANGELOG.md b/plex/CHANGELOG.md index e86cb587b1..0f82fa0225 100644 --- a/plex/CHANGELOG.md +++ b/plex/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.43.2.10687-563d026ea-ls312 (2026-07-11) +- Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) + ## 1.43.2.10687-563d026ea-ls311 (2026-07-04) - Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) diff --git a/plex/config.yaml b/plex/config.yaml index b1104de51b..155aa17ef6 100644 --- a/plex/config.yaml +++ b/plex/config.yaml @@ -175,6 +175,6 @@ slug: plex_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/plex usb: true -version: "1.43.2.10687-563d026ea-ls311" +version: "1.43.2.10687-563d026ea-ls312" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:32400]/web" diff --git a/plex/updater.json b/plex/updater.json index aaa88c7248..743c526eeb 100644 --- a/plex/updater.json +++ b/plex/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "plex", "source": "github", "upstream_repo": "linuxserver/docker-plex", - "upstream_version": "1.43.2.10687-563d026ea-ls311" + "upstream_version": "1.43.2.10687-563d026ea-ls312" } From ea3e5e425b3f36b1e6544ebb9d607fe5003de3c3 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:30:22 +0200 Subject: [PATCH 075/538] Updater bot : prowlarr updated to develop-2.5.1.5460-ls267 --- prowlarr/CHANGELOG.md | 3 +++ prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index 9c5d3a0d7d..2a0b35aa39 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,3 +1,6 @@ + +## develop-2.5.1.5460-ls267 (2026-07-11) +- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) ## nightly-2.5.1.5460-ls4 (2026-07-08) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index e6899488a7..224a5bb0b1 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "nightly-2.5.1.5460-ls4" +version: "develop-2.5.1.5460-ls267" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 6acab844c5..89b936028c 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-08", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "nightly-2.5.1.5460-ls4" + "upstream_version": "develop-2.5.1.5460-ls267" } From 8788211f8aaa75bd214a01543f9dc7153332cf31 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:30:46 +0200 Subject: [PATCH 076/538] Updater bot : scrutiny updated to v1.66.0 --- scrutiny/CHANGELOG.md | 3 +++ scrutiny/config.yaml | 2 +- scrutiny/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/scrutiny/CHANGELOG.md b/scrutiny/CHANGELOG.md index af5dfb206c..0ef2d7e352 100644 --- a/scrutiny/CHANGELOG.md +++ b/scrutiny/CHANGELOG.md @@ -1,4 +1,7 @@ +## v1.66.0 (2026-07-11) +- Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) + ## v1.65.0 (2026-07-04) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) diff --git a/scrutiny/config.yaml b/scrutiny/config.yaml index f40e1be45d..41703d50f5 100644 --- a/scrutiny/config.yaml +++ b/scrutiny/config.yaml @@ -113,4 +113,4 @@ schema: slug: scrutiny udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.65.0" +version: "v1.66.0" diff --git a/scrutiny/updater.json b/scrutiny/updater.json index 9147aef729..980c3c1e8e 100644 --- a/scrutiny/updater.json +++ b/scrutiny/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "scrutiny", "source": "github", "upstream_repo": "Starosdev/scrutiny", - "upstream_version": "v1.65.0" + "upstream_version": "v1.66.0" } From 842c23796590f574939b6012d7400b3a0b4eb10c Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:30:50 +0200 Subject: [PATCH 077/538] Updater bot : scrutiny_fa updated to v1.66.0 --- scrutiny_fa/CHANGELOG.md | 3 +++ scrutiny_fa/config.yaml | 2 +- scrutiny_fa/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/scrutiny_fa/CHANGELOG.md b/scrutiny_fa/CHANGELOG.md index 5574ab6f4d..f7b975b4c3 100644 --- a/scrutiny_fa/CHANGELOG.md +++ b/scrutiny_fa/CHANGELOG.md @@ -1,4 +1,7 @@ +## v1.66.0 (2026-07-11) +- Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) + ## v1.65.0 (2026-07-04) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) diff --git a/scrutiny_fa/config.yaml b/scrutiny_fa/config.yaml index e4d1933450..7026b4f275 100644 --- a/scrutiny_fa/config.yaml +++ b/scrutiny_fa/config.yaml @@ -45,4 +45,4 @@ schema: slug: scrutiny_fa udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.65.0" +version: "v1.66.0" diff --git a/scrutiny_fa/updater.json b/scrutiny_fa/updater.json index 4d59edfce0..f6d9eff512 100644 --- a/scrutiny_fa/updater.json +++ b/scrutiny_fa/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-11", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "scrutiny_fa", "source": "github", "upstream_repo": "Starosdev/scrutiny", - "upstream_version": "v1.65.0" + "upstream_version": "v1.66.0" } From 2aaf940b7320e8c5071d7bdca01dc916871ba841 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:31:08 +0200 Subject: [PATCH 078/538] Updater bot : social_to_mealie updated to 1.7.0 --- social_to_mealie/CHANGELOG.md | 3 +++ social_to_mealie/config.yaml | 2 +- social_to_mealie/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/social_to_mealie/CHANGELOG.md b/social_to_mealie/CHANGELOG.md index fdd80801be..b48e67a66d 100644 --- a/social_to_mealie/CHANGELOG.md +++ b/social_to_mealie/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.7.0 (2026-07-11) +- Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) ## 1.6.2 (2026-05-02) - Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) diff --git a/social_to_mealie/config.yaml b/social_to_mealie/config.yaml index 48e0476df2..e37ffbf22f 100644 --- a/social_to_mealie/config.yaml +++ b/social_to_mealie/config.yaml @@ -1,5 +1,5 @@ name: Social to Mealie -version: "1.6.2" +version: "1.7.0" slug: social_to_mealie description: Import recipes from social media directly into Mealie url: https://github.com/alexbelgium/hassio-addons diff --git a/social_to_mealie/updater.json b/social_to_mealie/updater.json index 3b9bd7ed72..b0e54ce905 100644 --- a/social_to_mealie/updater.json +++ b/social_to_mealie/updater.json @@ -1,10 +1,10 @@ { "dockerhub_by_date": true, "dockerhub_list_size": 2, - "last_update": "2026-05-02", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "social_to_mealie", "source": "github", "upstream_repo": "GerardPolloRebozado/social-to-mealie", - "upstream_version": "1.6.2" + "upstream_version": "1.7.0" } From 71c67e7eeff1a315e4d63f0e0ba2acd035044ddb Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:31:23 +0200 Subject: [PATCH 079/538] Updater bot : tandoor_recipes updated to 2.6.13 --- tandoor_recipes/CHANGELOG.md | 3 +++ tandoor_recipes/config.yaml | 2 +- tandoor_recipes/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/tandoor_recipes/CHANGELOG.md b/tandoor_recipes/CHANGELOG.md index 1c3ff56683..e27feae65b 100644 --- a/tandoor_recipes/CHANGELOG.md +++ b/tandoor_recipes/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.6.13 (2026-07-11) +- Update to latest version from TandoorRecipes/recipes (changelog : https://github.com/TandoorRecipes/recipes/releases) + ## 2.6.12 (2026-07-04) - Update to latest version from TandoorRecipes/recipes (changelog : https://github.com/TandoorRecipes/recipes/releases) diff --git a/tandoor_recipes/config.yaml b/tandoor_recipes/config.yaml index 9da84789f4..2066fcea8f 100644 --- a/tandoor_recipes/config.yaml +++ b/tandoor_recipes/config.yaml @@ -112,5 +112,5 @@ services: slug: tandoor_recipes udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.6.12" +version: "2.6.13" webui: http://[HOST]:[PORT:80] diff --git a/tandoor_recipes/updater.json b/tandoor_recipes/updater.json index e6a654fdb1..1663c9b005 100644 --- a/tandoor_recipes/updater.json +++ b/tandoor_recipes/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "tandoor_recipes", "source": "github", "upstream_repo": "TandoorRecipes/recipes", - "upstream_version": "2.6.12" + "upstream_version": "2.6.13" } From e6210d484d02378bf5accdac90a1cd7d58a1e9d1 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 11 Jul 2026 01:31:25 +0200 Subject: [PATCH 080/538] Updater bot : tdarr updated to 2.82.02 --- tdarr/CHANGELOG.md | 3 +++ tdarr/config.yaml | 2 +- tdarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/tdarr/CHANGELOG.md b/tdarr/CHANGELOG.md index 5fdebf4db7..04ebdd5ab9 100644 --- a/tdarr/CHANGELOG.md +++ b/tdarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.82.02 (2026-07-11) +- Update to latest version from haveagitgat/tdarr + ## 2.81.01 (2026-06-27) - Update to latest version from haveagitgat/tdarr diff --git a/tdarr/config.yaml b/tdarr/config.yaml index 11910135ab..0404b5fc9d 100644 --- a/tdarr/config.yaml +++ b/tdarr/config.yaml @@ -122,6 +122,6 @@ schema: slug: tdarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.81.01" +version: "2.82.02" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:8265]" diff --git a/tdarr/updater.json b/tdarr/updater.json index 3447bdb59a..aceb7441e0 100644 --- a/tdarr/updater.json +++ b/tdarr/updater.json @@ -1,9 +1,9 @@ { "github_exclude": "pro", - "last_update": "2026-06-27", + "last_update": "2026-07-11", "repository": "alexbelgium/hassio-addons", "slug": "tdarr", "source": "dockerhub", "upstream_repo": "haveagitgat/tdarr", - "upstream_version": "2.81.01" + "upstream_version": "2.82.02" } From 7ee213406d37103c4bfce08f99acf964acd26752 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 081/538] Revert "Updater bot : tdarr updated to 2.82.02" This reverts commit e6210d484d02378bf5accdac90a1cd7d58a1e9d1. --- tdarr/CHANGELOG.md | 3 --- tdarr/config.yaml | 2 +- tdarr/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/tdarr/CHANGELOG.md b/tdarr/CHANGELOG.md index 04ebdd5ab9..5fdebf4db7 100644 --- a/tdarr/CHANGELOG.md +++ b/tdarr/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.82.02 (2026-07-11) -- Update to latest version from haveagitgat/tdarr - ## 2.81.01 (2026-06-27) - Update to latest version from haveagitgat/tdarr diff --git a/tdarr/config.yaml b/tdarr/config.yaml index 0404b5fc9d..11910135ab 100644 --- a/tdarr/config.yaml +++ b/tdarr/config.yaml @@ -122,6 +122,6 @@ schema: slug: tdarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.82.02" +version: "2.81.01" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:8265]" diff --git a/tdarr/updater.json b/tdarr/updater.json index aceb7441e0..3447bdb59a 100644 --- a/tdarr/updater.json +++ b/tdarr/updater.json @@ -1,9 +1,9 @@ { "github_exclude": "pro", - "last_update": "2026-07-11", + "last_update": "2026-06-27", "repository": "alexbelgium/hassio-addons", "slug": "tdarr", "source": "dockerhub", "upstream_repo": "haveagitgat/tdarr", - "upstream_version": "2.82.02" + "upstream_version": "2.81.01" } From 0d56b4dded662cdfbbb5e8e7a67ceab49e2d06d8 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 082/538] Revert "Updater bot : tandoor_recipes updated to 2.6.13" This reverts commit 71c67e7eeff1a315e4d63f0e0ba2acd035044ddb. --- tandoor_recipes/CHANGELOG.md | 3 --- tandoor_recipes/config.yaml | 2 +- tandoor_recipes/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/tandoor_recipes/CHANGELOG.md b/tandoor_recipes/CHANGELOG.md index e27feae65b..1c3ff56683 100644 --- a/tandoor_recipes/CHANGELOG.md +++ b/tandoor_recipes/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.6.13 (2026-07-11) -- Update to latest version from TandoorRecipes/recipes (changelog : https://github.com/TandoorRecipes/recipes/releases) - ## 2.6.12 (2026-07-04) - Update to latest version from TandoorRecipes/recipes (changelog : https://github.com/TandoorRecipes/recipes/releases) diff --git a/tandoor_recipes/config.yaml b/tandoor_recipes/config.yaml index 2066fcea8f..9da84789f4 100644 --- a/tandoor_recipes/config.yaml +++ b/tandoor_recipes/config.yaml @@ -112,5 +112,5 @@ services: slug: tandoor_recipes udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.6.13" +version: "2.6.12" webui: http://[HOST]:[PORT:80] diff --git a/tandoor_recipes/updater.json b/tandoor_recipes/updater.json index 1663c9b005..e6a654fdb1 100644 --- a/tandoor_recipes/updater.json +++ b/tandoor_recipes/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "tandoor_recipes", "source": "github", "upstream_repo": "TandoorRecipes/recipes", - "upstream_version": "2.6.13" + "upstream_version": "2.6.12" } From e7a6add76f33363e515950e7d88c28081a6f8f96 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 083/538] Revert "Updater bot : social_to_mealie updated to 1.7.0" This reverts commit 2aaf940b7320e8c5071d7bdca01dc916871ba841. --- social_to_mealie/CHANGELOG.md | 3 --- social_to_mealie/config.yaml | 2 +- social_to_mealie/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/social_to_mealie/CHANGELOG.md b/social_to_mealie/CHANGELOG.md index b48e67a66d..fdd80801be 100644 --- a/social_to_mealie/CHANGELOG.md +++ b/social_to_mealie/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 1.7.0 (2026-07-11) -- Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) ## 1.6.2 (2026-05-02) - Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) diff --git a/social_to_mealie/config.yaml b/social_to_mealie/config.yaml index e37ffbf22f..48e0476df2 100644 --- a/social_to_mealie/config.yaml +++ b/social_to_mealie/config.yaml @@ -1,5 +1,5 @@ name: Social to Mealie -version: "1.7.0" +version: "1.6.2" slug: social_to_mealie description: Import recipes from social media directly into Mealie url: https://github.com/alexbelgium/hassio-addons diff --git a/social_to_mealie/updater.json b/social_to_mealie/updater.json index b0e54ce905..3b9bd7ed72 100644 --- a/social_to_mealie/updater.json +++ b/social_to_mealie/updater.json @@ -1,10 +1,10 @@ { "dockerhub_by_date": true, "dockerhub_list_size": 2, - "last_update": "2026-07-11", + "last_update": "2026-05-02", "repository": "alexbelgium/hassio-addons", "slug": "social_to_mealie", "source": "github", "upstream_repo": "GerardPolloRebozado/social-to-mealie", - "upstream_version": "1.7.0" + "upstream_version": "1.6.2" } From 8c7a43b5be2ba5fe5c4462cefac47164e794c63b Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 084/538] Revert "Updater bot : scrutiny_fa updated to v1.66.0" This reverts commit 842c23796590f574939b6012d7400b3a0b4eb10c. --- scrutiny_fa/CHANGELOG.md | 3 --- scrutiny_fa/config.yaml | 2 +- scrutiny_fa/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/scrutiny_fa/CHANGELOG.md b/scrutiny_fa/CHANGELOG.md index f7b975b4c3..5574ab6f4d 100644 --- a/scrutiny_fa/CHANGELOG.md +++ b/scrutiny_fa/CHANGELOG.md @@ -1,7 +1,4 @@ -## v1.66.0 (2026-07-11) -- Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) - ## v1.65.0 (2026-07-04) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) diff --git a/scrutiny_fa/config.yaml b/scrutiny_fa/config.yaml index 7026b4f275..e4d1933450 100644 --- a/scrutiny_fa/config.yaml +++ b/scrutiny_fa/config.yaml @@ -45,4 +45,4 @@ schema: slug: scrutiny_fa udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.66.0" +version: "v1.65.0" diff --git a/scrutiny_fa/updater.json b/scrutiny_fa/updater.json index f6d9eff512..4d59edfce0 100644 --- a/scrutiny_fa/updater.json +++ b/scrutiny_fa/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "scrutiny_fa", "source": "github", "upstream_repo": "Starosdev/scrutiny", - "upstream_version": "v1.66.0" + "upstream_version": "v1.65.0" } From 3e5649f00f0da71d311313d94d2524dad761fd07 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 085/538] Revert "Updater bot : scrutiny updated to v1.66.0" This reverts commit 8788211f8aaa75bd214a01543f9dc7153332cf31. --- scrutiny/CHANGELOG.md | 3 --- scrutiny/config.yaml | 2 +- scrutiny/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/scrutiny/CHANGELOG.md b/scrutiny/CHANGELOG.md index 0ef2d7e352..af5dfb206c 100644 --- a/scrutiny/CHANGELOG.md +++ b/scrutiny/CHANGELOG.md @@ -1,7 +1,4 @@ -## v1.66.0 (2026-07-11) -- Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) - ## v1.65.0 (2026-07-04) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) diff --git a/scrutiny/config.yaml b/scrutiny/config.yaml index 41703d50f5..f40e1be45d 100644 --- a/scrutiny/config.yaml +++ b/scrutiny/config.yaml @@ -113,4 +113,4 @@ schema: slug: scrutiny udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.66.0" +version: "v1.65.0" diff --git a/scrutiny/updater.json b/scrutiny/updater.json index 980c3c1e8e..9147aef729 100644 --- a/scrutiny/updater.json +++ b/scrutiny/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "scrutiny", "source": "github", "upstream_repo": "Starosdev/scrutiny", - "upstream_version": "v1.66.0" + "upstream_version": "v1.65.0" } From 2bc142b5fe5525aa599f79f0277b33e7a5f17c68 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 086/538] Revert "Updater bot : prowlarr updated to develop-2.5.1.5460-ls267" This reverts commit ea3e5e425b3f36b1e6544ebb9d607fe5003de3c3. --- prowlarr/CHANGELOG.md | 3 --- prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index 2a0b35aa39..9c5d3a0d7d 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,6 +1,3 @@ - -## develop-2.5.1.5460-ls267 (2026-07-11) -- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) ## nightly-2.5.1.5460-ls4 (2026-07-08) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index 224a5bb0b1..e6899488a7 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "develop-2.5.1.5460-ls267" +version: "nightly-2.5.1.5460-ls4" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 89b936028c..6acab844c5 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-08", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "develop-2.5.1.5460-ls267" + "upstream_version": "nightly-2.5.1.5460-ls4" } From 72851eea95e60f8faded1f6c12a93dc7d937f582 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 087/538] Revert "Updater bot : plex updated to 1.43.2.10687-563d026ea-ls312" This reverts commit 554d7dc04f9dde00f9fea216d4912fce46ee8485. --- plex/CHANGELOG.md | 3 --- plex/config.yaml | 2 +- plex/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/plex/CHANGELOG.md b/plex/CHANGELOG.md index 0f82fa0225..e86cb587b1 100644 --- a/plex/CHANGELOG.md +++ b/plex/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.43.2.10687-563d026ea-ls312 (2026-07-11) -- Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) - ## 1.43.2.10687-563d026ea-ls311 (2026-07-04) - Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) diff --git a/plex/config.yaml b/plex/config.yaml index 155aa17ef6..b1104de51b 100644 --- a/plex/config.yaml +++ b/plex/config.yaml @@ -175,6 +175,6 @@ slug: plex_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/plex usb: true -version: "1.43.2.10687-563d026ea-ls312" +version: "1.43.2.10687-563d026ea-ls311" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:32400]/web" diff --git a/plex/updater.json b/plex/updater.json index 743c526eeb..aaa88c7248 100644 --- a/plex/updater.json +++ b/plex/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "plex", "source": "github", "upstream_repo": "linuxserver/docker-plex", - "upstream_version": "1.43.2.10687-563d026ea-ls312" + "upstream_version": "1.43.2.10687-563d026ea-ls311" } From 22f9490b775056228806a3b7a8cad0f6f27f739e Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 088/538] Revert "Updater bot : openproject updated to 17.6.0" This reverts commit 29ca7397098218c0ed8f01e1d6721ff0e7ae44f1. --- openproject/CHANGELOG.md | 3 --- openproject/config.yaml | 2 +- openproject/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/openproject/CHANGELOG.md b/openproject/CHANGELOG.md index 08ec499a6b..26524b7076 100644 --- a/openproject/CHANGELOG.md +++ b/openproject/CHANGELOG.md @@ -1,7 +1,4 @@ -## 17.6.0 (2026-07-11) -- Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) - ## 17.5.1 (2026-06-17) - Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) diff --git a/openproject/config.yaml b/openproject/config.yaml index 476c58e113..4dd820eb68 100644 --- a/openproject/config.yaml +++ b/openproject/config.yaml @@ -34,5 +34,5 @@ schema: slug: openproject udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/openproject -version: "17.6.0" +version: "17.5.1" webui: "[PROTO:ssl]://[HOST]:[PORT:8080]" diff --git a/openproject/updater.json b/openproject/updater.json index f522a317a0..9ac77fed1e 100644 --- a/openproject/updater.json +++ b/openproject/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-11", + "last_update": "2026-06-17", "repository": "alexbelgium/hassio-addons", "slug": "openproject", "source": "github", "upstream_repo": "opf/openproject", - "upstream_version": "17.6.0" + "upstream_version": "17.5.1" } From 06e0a32f817326451ef2ede9e040ed75ea92b40d Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 089/538] Revert "Updater bot : nzbget updated to v26.2-ls253" This reverts commit e8260efe3755ce1153559eea6f9b15b3da844629. --- nzbget/CHANGELOG.md | 3 --- nzbget/config.yaml | 2 +- nzbget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/nzbget/CHANGELOG.md b/nzbget/CHANGELOG.md index a041b7d88f..054fcb4480 100644 --- a/nzbget/CHANGELOG.md +++ b/nzbget/CHANGELOG.md @@ -1,7 +1,4 @@ -## v26.2-ls253 (2026-07-11) -- Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) - ## v26.2-ls251 (2026-07-04) - Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) diff --git a/nzbget/config.yaml b/nzbget/config.yaml index 2abdc16346..4c2658da96 100644 --- a/nzbget/config.yaml +++ b/nzbget/config.yaml @@ -104,4 +104,4 @@ schema: slug: nzbget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "v26.2-ls253" +version: "v26.2-ls251" diff --git a/nzbget/updater.json b/nzbget/updater.json index 6a221250bd..15dca4e6a3 100644 --- a/nzbget/updater.json +++ b/nzbget/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "nzbget", "source": "github", "upstream_repo": "linuxserver/docker-nzbget", - "upstream_version": "v26.2-ls253" + "upstream_version": "v26.2-ls251" } From 35c3077bec4d201a9045d767de0585dfe9f85a08 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 090/538] Revert "Updater bot : navidrome updated to 0.63.1" This reverts commit 682a96fc8e7c25e98ce8aaa246b9d5bdeb25fa48. --- navidrome/CHANGELOG.md | 3 --- navidrome/config.yaml | 2 +- navidrome/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/navidrome/CHANGELOG.md b/navidrome/CHANGELOG.md index ab3a7318a4..1d3e82672a 100644 --- a/navidrome/CHANGELOG.md +++ b/navidrome/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 0.63.1 (2026-07-11) -- Update to latest version from navidrome/navidrome (changelog : https://github.com/navidrome/navidrome/releases) ## 0.62.0-2 (19-06-2026) - Minor bugs fixed diff --git a/navidrome/config.yaml b/navidrome/config.yaml index 802ffe3dd1..e1c6c8bc59 100644 --- a/navidrome/config.yaml +++ b/navidrome/config.yaml @@ -119,5 +119,5 @@ schema: slug: navidrome udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/navidrome -version: "0.63.1" +version: "0.62.0-2" webui: "[PROTO:ssl]://[HOST]:[PORT:4533]" diff --git a/navidrome/updater.json b/navidrome/updater.json index 97b387b1c9..68986b5735 100644 --- a/navidrome/updater.json +++ b/navidrome/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-11", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "navidrome", "source": "github", "upstream_repo": "navidrome/navidrome", - "upstream_version": "0.63.1" + "upstream_version": "0.62.0" } From e930e36e0dbf510acce1fe1555d1d656e2a4931f Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 091/538] Revert "Updater bot : maintainerr updated to 3.17.1" This reverts commit 22bbbfdf755986b2c3681b1c6c265061d4b7aefd. --- maintainerr/CHANGELOG.md | 3 --- maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 716a5fabc9..6625d46e2d 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.17.1 (2026-07-11) -- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) - ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index a05b7bb794..eadb42fa43 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.17.1" +ARG BUILD_UPSTREAM="3.16.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index bb266ddf2b..65d02cfd17 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.17.1" +version: "3.16.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index af09ec4226..fd48a580bc 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.17.1" + "upstream_version": "3.16.0" } From 90fd373c2c868e4f886c3cf08a51f5652ec8071f Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 092/538] Revert "Updater bot : linkwarden updated to 2.15.0" This reverts commit 481094574d87513d45b85728a2001f701f172eb0. --- linkwarden/CHANGELOG.md | 3 --- linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 7ab71343ff..90b6ee06ff 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 2.15.0 (2026-07-11) -- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index d3b8505b13..33fb3c849d 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.15.0" +version: "2.14.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 8fd3d87a9e..18d72d7a97 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-11", + "last_update": "2026-04-23", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.15.0" + "upstream_version": "2.14.1" } From 4cf79224f72abe5a4362a1c7776ad8bc077cd64d Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 093/538] Revert "Updater bot : jackett updated to 0.24.2200" This reverts commit 534a5261859ca731fe37cb57214b2f35dad109d8. --- jackett/CHANGELOG.md | 3 --- jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index 00c68e0949..fdcaa4afa4 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,7 +1,4 @@ -## 0.24.2200 (2026-07-11) -- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) - ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index b6962b97e8..c393744967 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2200" +version: "0.24.2166" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index b8e69d9f57..0a816abd2c 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2200" + "upstream_version": "0.24.2166" } From dbaa8a8a98f03442cb8d7b4c1bd5e49b6093081b Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 094/538] Revert "Updater bot : immich_openvino updated to 3.0.2" This reverts commit b98ae69a6cfe8864336646f2bc77835dc58cc166. --- immich_openvino/CHANGELOG.md | 3 --- immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 30a4dc938b..1b604106d2 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.2 (2026-07-11) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 2a51badd99..52c6cd1a44 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.2" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index ade6359e2d..63ac0aca0a 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.2" + "upstream_version": "3.0.1" } From deb51a0bedb3c685f8758ff7a17a8f7de36aca32 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 095/538] Revert "Updater bot : immich_noml updated to 3.0.2" This reverts commit af68eece537bac2deb1b877c94659e72aeda304d. --- immich_noml/CHANGELOG.md | 3 --- immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 32213cdc62..0c354e8271 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.2 (2026-07-11) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 89d9e3ae3a..42ee4dc3dd 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.2" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index ade6359e2d..63ac0aca0a 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.2" + "upstream_version": "3.0.1" } From d9252da5a3aee5417eb947f64d545f65046eb218 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 096/538] Revert "Updater bot : immich_frame updated to 1.0.35.0" This reverts commit c8f5ec8f20ef95c79be8c37ebaba0b88a2c2b908. --- immich_frame/CHANGELOG.md | 3 --- immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 05e864e2e9..443763661a 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.0.35.0 (2026-07-11) -- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) - ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 3f400afe37..44a6fcb111 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.35.0" +version: "1.0.34.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 51c107119d..8408fb021e 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.35.0" + "upstream_version": "1.0.34.0" } From 57d8edb445e1b34903d177432eb0d1c3d5b64ad2 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 097/538] Revert "Updater bot : immich_cuda updated to 3.0.2" This reverts commit aa772493145386b3fe32711257d89771d2747a53. --- immich_cuda/CHANGELOG.md | 3 --- immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index d19b1b7bca..95bec50a58 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.2 (2026-07-11) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index 0dedd90fc2..b7c3dd3c48 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.2" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index ade6359e2d..63ac0aca0a 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.2" + "upstream_version": "3.0.1" } From ca6c6a54d3e1481a353d939dbfcf2ee9c1fbd554 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 098/538] Revert "Updater bot : immich updated to 3.0.2" This reverts commit 6e02e611f4a9a0adf51cf96cd80210fa98138fe0. --- immich/CHANGELOG.md | 3 --- immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index dd765f1fbf..a8ab336381 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.2 (2026-07-11) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index fce6366bbe..4537b0473b 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.2" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index ade6359e2d..63ac0aca0a 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.2" + "upstream_version": "3.0.1" } From 382de98a9b4e4c24f7cdaffdb9a217fafd65c547 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 099/538] Revert "Updater bot : grav updated to 2.0.10" This reverts commit 91ed6c3f460d8dce0038fb582ff2b17101a47d1a. --- grav/CHANGELOG.md | 3 --- grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index ce550afef2..06165ba207 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.0.10 (2026-07-11) -- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) - ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 20b462ed23..0894d6e150 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.10" +ARG BUILD_UPSTREAM="2.0.6" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index e6d9d32a4f..540412f15c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.10" +version: "2.0.6" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 69642e1c44..3936e662ab 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.10" + "upstream_version": "2.0.6" } From c3a8e1d57b3869ee94e16ed03ead66e1c9fcbd02 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 100/538] Revert "Updater bot : flexget updated to 3.19.27" This reverts commit b21ce72e0e6a963fd5ac2c87916f07ef54b78b04. --- flexget/CHANGELOG.md | 3 --- flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index eb465ccca1..fb73412a31 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.19.27 (2026-07-11) -- Update to latest version from wiserain/flexget - ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index 5c2831b377..ad1b7f6538 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.27" +version: "3.19.26" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 0f5f4b7370..82ed3e79df 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-11", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.27" + "upstream_version": "3.19.26" } From 83b791e6c3721b74fe997e239402f08ffdab053c Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 10 Jul 2026 23:32:12 +0000 Subject: [PATCH 101/538] Revert "Updater bot : ente updated to 4.4.24" This reverts commit 839cfd13822adb371e694a7adc194a4c84856ba3. --- ente/CHANGELOG.md | 3 --- ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index eedfa586eb..15c481b126 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.4.24 (2026-07-11) -- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) - ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 5bd0afb53e..72d2fc618c 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.24" +version: "4.4.23" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index dda569692b..d8d8dd2093 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-11", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.24" + "upstream_version": "4.4.23" } From 82c784ce6eda18c73a78fa6287ca6bb25fda92d1 Mon Sep 17 00:00:00 2001 From: ToledoEM <8144940+ToledoEM@users.noreply.github.com> Date: Sat, 11 Jul 2026 12:14:25 +0100 Subject: [PATCH 102/538] Persist NPM Let's Encrypt certificates --- nginx_webserver_proxy/CHANGELOG.md | 12 +++++------- nginx_webserver_proxy/config.yaml | 8 +------- nginx_webserver_proxy/run.sh | 12 ++++++++++-- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/nginx_webserver_proxy/CHANGELOG.md b/nginx_webserver_proxy/CHANGELOG.md index cd020ea1a7..d3e20f853f 100644 --- a/nginx_webserver_proxy/CHANGELOG.md +++ b/nginx_webserver_proxy/CHANGELOG.md @@ -1,15 +1,13 @@ -## 2.14.1 (19-06-2026) -- Minor bugs fixed # Changelog -## 2.14.1 +## 2.14.1-1 (11-07-2026) +- Persist Let's Encrypt certificates across restarts by symlinking /etc/letsencrypt to /data/letsencrypt (#2828) — thanks to @crazyrokr for reporting and suggesting the fix + +## 2.14.1 (19-06-2026) - Fix startup failure on aarch64/HAos: "/usr/bin/env: 'bash': Permission denied" (#2777) - Add s6-overlay/env/with-contenv exec rules to AppArmor profile -## 2.14.0 -- Minor bugs fixed - -## 2.14.0 +## 2.14.0 (01-05-2026) - Initial release wrapping jc21/nginx-proxy-manager:latest - NPM Admin UI on port 81; HTTP on port 80; HTTPS on port 443 - Configurable static file server via NPM's default_host nginx config diff --git a/nginx_webserver_proxy/config.yaml b/nginx_webserver_proxy/config.yaml index 5e6f8598b5..837fc41b74 100644 --- a/nginx_webserver_proxy/config.yaml +++ b/nginx_webserver_proxy/config.yaml @@ -1,14 +1,13 @@ name: "Nginx Proxy Manager + Static Web Server" slug: nginx_webserver_proxy description: "Nginx Proxy Manager with a built-in configurable static file server. Manage reverse proxies via NPM UI on port 81 while serving files from HA storage on port 80." -version: "2.14.1" +version: "2.14.1-1" url: "https://github.com/alexbelgium/hassio-addons/tree/master/nginx_webserver_proxy" arch: - amd64 - aarch64 startup: services init: false - ports: 80/tcp: 80 81/tcp: 81 @@ -17,24 +16,19 @@ ports_description: 80/tcp: "HTTP (static site + NPM proxy hosts)" 81/tcp: "NPM Admin Web UI" 443/tcp: "HTTPS (NPM proxy hosts)" - webui: "http://[HOST]:[PORT:81]" - map: - addon_config:rw - share:rw - media:rw - options: static_site_enabled: true static_site_root: "/share/www" static_site_prefix: "/" log_level: "info" - schema: static_site_enabled: bool static_site_root: str static_site_prefix: str log_level: list(info|debug|warn|error) - image: "ghcr.io/alexbelgium/nginx_webserver_proxy-{arch}" diff --git a/nginx_webserver_proxy/run.sh b/nginx_webserver_proxy/run.sh index 3742218214..62085cbe64 100755 --- a/nginx_webserver_proxy/run.sh +++ b/nginx_webserver_proxy/run.sh @@ -111,8 +111,16 @@ fi # --------------------------------------------------------------------------- log "static_site_root=${STATIC_ROOT} prefix=${STATIC_PREFIX} log_level=${LOG_LEVEL}" # NPM's prepare service requires /etc/letsencrypt to exist. -# HA Supervisor maps the ssl volume there automatically; for other environments create it. -mkdir -p /etc/letsencrypt +# Symlink /etc/letsencrypt to /data/letsencrypt for persistence across restarts. +# Supervisor persists /data as a Docker volume; /etc/letsencrypt would otherwise be ephemeral. +if [ ! -L /etc/letsencrypt ]; then + if [ -d /etc/letsencrypt ] && [ "$(ls -A /etc/letsencrypt 2> /dev/null)" ]; then + cp -a /etc/letsencrypt/. /data/letsencrypt/ 2> /dev/null || true + fi + rm -rf /etc/letsencrypt + ln -sf /data/letsencrypt /etc/letsencrypt +fi +mkdir -p /data/letsencrypt log "Handing off to NPM: exec /init" exec /init From efa5ed9b59417d3d20f06e638a25215fde8d63e9 Mon Sep 17 00:00:00 2001 From: ToledoEM <8144940+ToledoEM@users.noreply.github.com> Date: Sat, 11 Jul 2026 12:26:19 +0100 Subject: [PATCH 103/538] coderabbitai suggestions --- nginx_webserver_proxy/run.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nginx_webserver_proxy/run.sh b/nginx_webserver_proxy/run.sh index 62085cbe64..452b512c57 100755 --- a/nginx_webserver_proxy/run.sh +++ b/nginx_webserver_proxy/run.sh @@ -115,7 +115,10 @@ log "static_site_root=${STATIC_ROOT} prefix=${STATIC_PREFIX} log_level=${LOG_LEV # Supervisor persists /data as a Docker volume; /etc/letsencrypt would otherwise be ephemeral. if [ ! -L /etc/letsencrypt ]; then if [ -d /etc/letsencrypt ] && [ "$(ls -A /etc/letsencrypt 2> /dev/null)" ]; then - cp -a /etc/letsencrypt/. /data/letsencrypt/ 2> /dev/null || true + # Abort migration on copy failure so we never rm -rf certs that weren't copied. + mkdir -p /data/letsencrypt + cp -a /etc/letsencrypt/. /data/letsencrypt/ \ + || die "Failed to migrate /etc/letsencrypt to /data/letsencrypt; leaving existing certs intact" fi rm -rf /etc/letsencrypt ln -sf /data/letsencrypt /etc/letsencrypt From e2bec544cba2a13d0a60426a06222012bce09be1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 12 Jul 2026 01:24:56 +0000 Subject: [PATCH 104/538] Update stargazer map & cache --- .github/stargazer_countries.csv | 10 ++++++++++ .github/stargazer_map.png | Bin 64167 -> 339141 bytes 2 files changed, 10 insertions(+) diff --git a/.github/stargazer_countries.csv b/.github/stargazer_countries.csv index 697508e6b8..859fb48d40 100644 --- a/.github/stargazer_countries.csv +++ b/.github/stargazer_countries.csv @@ -162,6 +162,7 @@ DARKNAGAN,France DDanii, DMurzNN, DUC750, +DY-hub, DaFlowah, DaJonas94, Daafip,Netherlands @@ -238,6 +239,7 @@ EtienneMD, Evel270, Everestlion, EvertJob, +Exlatis, Extrunder, F0264, F4bsi,Germany @@ -563,6 +565,7 @@ PhoenixTwoFive,Germany PhysShell, PierreNa,France PietroSpina, +Pingmin, PiotrKrzyzek,United States PiratesGhost, Pixelzeus, @@ -897,10 +900,12 @@ antorimba, antx-code, anyezhe, aorosora, +araminimichael, arbal,United States ardemk, ared469, arethefreshest, +arozoire, arpit-mehra, artemave,France artemdanielov, @@ -1156,6 +1161,7 @@ danbruno, danctrl,Germany danez,United States danieldotnl,Netherlands +danishru, dannybeeckman, dannybloomfield,United States danveitch76, @@ -1744,6 +1750,7 @@ ljsquare, llabourdeth, llewy, llfjahn, +llugo, lmalmoreno,Brazil lnrdmx, loc4t3llix, @@ -2050,6 +2057,7 @@ pedrolicassali, pedromfa, pedrware,Portugal peeetek, +peggleg, pejannl, pem884,United States pepelatc, @@ -2273,6 +2281,7 @@ skalingclouds,United States skamaleo, skavieller, skipper00, +skoducks,United States skylidefr, skynet-network, slimehands, @@ -2532,6 +2541,7 @@ williamcorsel,Netherlands willigenburggihaux, willnewcombe,United Kingdom wimb0, +wingerasc, witold-gren,Poland wonderfulhuber, wonkygecko,United States diff --git a/.github/stargazer_map.png b/.github/stargazer_map.png index 6f14c88bc33c7a2f422e402f683dfd9b64f9e39c..83c854fbb150a2e7d0e979f9e688a1481a1fbdb6 100644 GIT binary patch literal 339141 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�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

sQ;Kcj-3@WFq6?O1d*=-Iowv*I~#J<*Tdk z!?MU4so#PsKs-$-3$lTP-toOlcawtZW&(3j8K1#0Q;!~AMSXdaK*!k}WyhFLQ0CdJzH_edcmJs_JXK+l(< z(t1KEj9gpI;xNG{>4h-GFh^ERwoO*0kRtaDe3U&^UyUV@R+OQV_xyb>S{=1v`Rg4t zC|>hZPnqeU3e(|&zE2X^df(X(G2dl#n~oG^W0OSif~B5%P94r|yzE~HH^364BClQJ z>!0HO5f7Yc5UgqdIM6W7VP-s$m*q2P45ALauhpXiHo#xK^8`eN4O9R!Ll`xNqzAk` z7>K#zDoxd1@fmt!ekdODd9O0_a`HB1W2U;BE( ziczw&_5 z1-LAX3Mb{S4Hu~-nl!0ln>Ll9v~lA%PkUBuDt*xyY~tNXu@rt!X>Ta?fep&0&i+zj z`N%Y^9RHvo-)x}nnia93mP1ah3jTEvNI65j7|obWU901}u!-RO&eMvej8gJE(xGC< zNQQlf_;MDAdp<<9U0UD6donsX2^nYyiR6IXAGx)+6`UT+sLXCETT<`3@GD@3;X}xeixL+q;sa=DNCMTgY5!{MMd|Ij*CV8Z8e4 zfD&Osn+-=?E(ys}!lR`J}~WJFM~!7bFD;K>PoYxTGl zMl3?}xGhkgi#~kQujM>y%ec-JSjS$?nc$eMTQ_p}O$rrrKy5d4J+XUm7^Y=WY1I00 zrjo9D#~lS*HU6OonrkHx9ES4PK!m-M6J6%O@2%%M;`_?&ZRYw5fhu1cOO)QLyQCa? z5%y%z!nmkULDaH$q@ua=hm&K&C0w2$lm(T6J6TzG^Oa1+D_0r)@tHe5OA{DdYQ;iO z#~iyW)Q`TvZI;L38rna3e6MoS4JFWsaU9%ukPmv3mfKSFS1 zwOp@w^fXz*pm=lk6@Ndy5VYeVW5Yrj_BpEVMX z_?TidyWx%{j+pYpAepA%d!s7UvN2gC68DQOoEy%75l)@4b$6U(pgdPm>HN>6zSg7dc<*NUIj)0=1Z; z#$%xHR#i-dQmK#huuVF6e(G%vP}JlO6Vt57u=WYG=SCoTJx@lblo9of{(JwI&acnt zs0nnlo$_DQ|JZwF-qq=o3aW+eZ_V*=($NnZ3K-Ns{b(a}u)UC|5Cv3LOLwoWVVr^^ zTzr!_A2L_NtCRt2j8OFUJlK4IBX_vd@#tAbPE0Z} zQU~ma*h$r`#IqM0fmeTu7^n;-?XX-U#RPFnl0fT)?50C(dMVWC3IrL-!K4rG=LLB( zpd)&suq>}zL>Ls23ct-ps8+oPMBL~?^y)=flVR-AAK4&2JDB|m@0XIiPB{ojyOU)( z+qr*4QjV)O;|_D5=8_!N)^lZ6ycku5(`AM zyDa&#dv%#iI0ed`V!;#H6b;L}#HHv0dC?zVH7U<7M`+{~8dgk)_8+_vZ_zhW9$;}D9$DBT3d(*%H826GNwZHK!y)SV zM)1to@Ui>s)dv;K(+r0%H~QzO{nbuWO}9~hczM#aBi1lP$axyM9zQ`DF$3wu5IfLL zQ-Co)0VUy#&cG0+1$r$QCF)g7Z+6fsgKEqEa^21CF}~88&44VAy=oCRd22GG3mj(^deR5)U{rN!1r5t{i}!9$dOj#(t;txz9I9Z-!b zKe)+BwIuwUnAgHhCt8YH2#DW&rqVP6iTL#ocUST?c${*zI3Zb_hVAAx@jO>Kp~CU@ zHm1fT&g&WQf(OUZQ4mlFX=pof?1Muo`)rjf1;g~h^(~%BOyrW}vCsXjxGG|kAL9|X zS&7>ih1e|iNbG8eRm~nsU%x{PWt8vV+nRWDlOVc0n#ZO9XcOQnkdLdzm9hSFzd7o5Ywwl(`ka35o&bIqPMo{n) z@4yJx@(yK)6P$yWrB3-4QC_v!!=`ZUjH0^Y&^PE|T z=r%H0TRSv49zriz-kRZXUPX#zb_y+LU((RJ(RnCfdQh6CyJM8D_=X_#G^Wfma3uK4 zQ#{DsYORIgOhwheK1Y+5stv~W$v~h$-xZFqn)KPqq$+%j1KNg{`n2=|F_#0ILl2GF zw3usS+xq)v5CnDnw1rt^YgBc3d&_XR+%iz=bgl9f`r;Z0gx7}!6dYLy?3GoRLD)hu z*SKy!r|tDFL8C;!al>Lxbi2mr=Kgih86A{{cO5`)#V~jm zQwodfG2W9d;A~?4SmkY~Y6ke*Rv7?lGgCloGrL4QMoTG2kON1Nuk&We~W>zgWt9C1wOB*^HIhMK^=T zFf}nMj*jHj4v!@d4QfinYxpZ=WY@~PLn|Q%bt{Z2IiJ)vEf0XO3Il{|R_6D@$YFmb ztl;&|%NnKoj1Qk%YCmh^?6WkeDZX)*p$8$4-~_QGmcb!o2c*50L!ig0b^PJHs%3yS zVTdIr^#=YSaNZAuGN_?pzT=hKSnSV?eL}W{yPY)^K%?Ocw1Idm9ytua=(E^f$Um}OR<()Yg?43Gn2u-p>EQc$ELDsiMr->L z`h4#i-QLPgd|E~d`iSE@>Zn%`LqTYWifPKpS@yUa!fWxf3jrJ&@(RHe*#QOHHnSMCeO4AMd{<>!xIVNo(M6kp zT+5HN)SqdCL=?bW%SulV4O<6{g^+J;&!Ps21Bl_J-wMqbZ~kcXoLR{aF3|qwR-g5d zo`-@*K*KYy&tBh#kT<^aS=vcdu3;VU=020Er@}t!Yrrj9DwZKvdi!XWc)KXH;4o<} zdupe{c3N@+1ijZD5=4g3DREFS#&^{hKNhb6E7yMi0JP$1e)RCYmDQ&asdkLRWLKJD z=aX_+)07W~gwmAE1?G}DXngk6ewDo}65coR zrhYe9C+M1LP1S|8?b5*)MyX(mdVGWgd3rjU}tD= z)w%`@yNKy-FzvIK%^}pWeCu*3bf=F+Q&kEpnEl&x^_RMg<8q(t;j=(J(eb$J_dnED z-kqZZ-bJD^pKW=;+3D{rY(4K1<9XGrEs8682iqC7Y);pLE4VO~!o^wR=&c0~xmo$g zkP*wQiE=y7HFKEPO~;b_TtoDiDv4oV@yQ#u?@h0G4DF0`=pQM129k7I1EnYRqvV)$ z{USGSnzw~aq@-2pEczs|l|_}4qtfNB7=2upvv|aiS23H8qR3)Lt(dJDAayFZj=@GK z6ES|=d~PpWKe9(_nR183yk5MQsOR%~|IJPQd3E3Wv`gRL*R%yZ-s`+}GHkzlv})Ul zquqmQ)e1DQ;U^NVGmqJxVKtOMi{}{Da!Cqu?PDb6{Hg1>s1hR5wVYJ#RT|Ym_nt8#;vAus=IZIm zq1kYSV=418F={l>b7AL|P^Rw&eq9dr0S`(?roNj)9mjo59b3D)rUAwCC-7r~Wex;SH1?>!tdQScPq}o@n^W>bJTK#OEBkbWLBc zj&NyRIry|PTH2qI_YH9aG>Mx^vFY8*6tE`ZgH`;>>0|?!aLhh$(ioO#!w=;*D1;0d zHoPUWY^XUkQLk*I3Ut~@kf`%~MY0MSoy{K}0HE!tVK0H3L}l|mSO&goJ7Hf{qs8*m zoSMU;1V(|vn)2Mqis{i3Szk*-JOFhva?cr>-G4D0^}=kxT_-5I**BB_aL6DYSRI0Y zavjq}21EtjsI^%QGlDL)Li~9=wrz}F^*z6d!?bXe%+(1Ck*g`xPqo%amnj#6Fl7l~ELWPm8W|yd4juz=_N>m^Kv-J7Y{z}}N{W({i^Sd@taBqU zl7lMlQ*P|rB!0((2U^8F6wnR9a$@0IVt69A?oY(Y-{1rTxf$CctcQJJV3A$BXf&Ek z&wa2)>p|j6pi@uJW39ZMfc++iyCxNMiz@4f$Pil@iOSjQY_4iTz&k4GaT&(GRSe`V zm8yn)^#T+RXC9F_zIq~qgv5wr&cto&5ddUL1PhvEs-L{FrvkR))~XKj3DKCX_QUA> zQOY$Vc^m4{W1b7Y_Ro?XQ+pokoKx#?BQKX|g`+5FrYWp@uMp@2t~q${;K4u^hi=@!azR8!GP(pRU~!+bwK!{!X$hkD=Tr_EBF-wRV#p40g@uI9$nkU*IAMVwvwLJs6_a!HK8>dIy zl^)x=(-BYwRQvk0v3X|K_gbW?&!Kb-`f7hej!;Zj#qZ0cKH-LJ&9>xC@^9cYuf`wS z54bben4DJdt$u=cG2XaM`=c*n!hhNu3-ai$fY(iuoSWm$!(osVzi;}E%JmzqB5Xon z=ymdaAyOd|GB(qpp7r#``EcWpzroILA}D(Z_p?jhdXEB&KG{B^5NtO6P!kV$DpzAt zFmdt-4zUjnI`C~k2m$ylr}Etx$DLj!$dn7vojlj%f^rk@M!Sen|I-g{S5XPd`;@R= z9CwS|uOoIZya^4L#O;H(KWAz%-tP(W(FP0SpU4tWzl}8y&0Nu3)z6fTHa;Q0+t(m) zdX!7d_qu0&;o0ZM_%bM{)Ur_k?*{`F8$J!Gq0VOG&WCRtD|G`*$4e;aF#^VbcJ4u- z^8?<%3?XL%S<-`W7*zG?EoYhxkVn~aYGlv~KadI`aR#Hk5BH73eO@)~Nebi>Z3N9c z=udXK_x;cc(KYA0Aub+hct+ltnq~8vpC3neDKcuAmJh=USJPjs&3ztCA8n3CpDa;H z@6(xL=XX1_AzF5~4(vZY9zPwta+6m(`28V}3ZfX=H}C${m5 zy=839meo?T&_T1|f`JA3WJZZ;3m$98xOH(2Hx)dL_uLT}Qqpq532gux90-vJ_*FOb ze0%Rk-+j!1ha*7;{eZCg04N*ikJyY5^TG!7Ru8}LQaQNdKdUKh8$Mk-Ju%8PlF6?a z9WM20FFQVI4ivEMAN$DD%&`x83&20BKq7_S`~ZL*o__K^EFfdiV_uE+s#9Gp+aFE2 zQH#lRS1P8u;`GEm@d~~x!T8>r>o;LC-A{oxxDHTgJeEkScs@+Tg2-3ijx!1zAY8#5 zLiGRqt>M86ajm|(=!6(rzg1ZxGtGvq+S$v2mwvLK2nDom-=AwF+fQ2C>Soh;x=&y~ zR&t6pE^jgp1SOE1`)OK!yylsFsu{uXhzNMa;HuH+!P9PTky0ADNxL8KAHkcPa91k3 z#4^Xq{jZT$vjnB<>|!mWS-0 z;LNMUvc33#tzBxfw)%PM&CO&2olkkje3x+lO9PXe9h>E*cB4G8}w0wB>b*G7c4;r zR~8IVXfX5+G|PPtDDSJC^y1dP`{ASKMR-CP+2j1Jq`*vvRm-ssUBd9Y#ol`N&>DmO z9)j`SQ}(4n$^nAj)K&UX{_xXKjYi)9V|Y+SCbu3#&SColq-O_IG>H5?tx-lTAUytit?T#|Y*2QopCEaK$5hL1%E9;yGSlwl|3=r z%S?=xUg3ULy(n^3!@WZwO_&8e0rlwC`Qq0&Ew~!eJejQaAa(;Hs0NG^=y$x2r_+nE zCjD>6O}CgLOsx&yHn?!)d+(x&W7N;cSG&+M~(Lue1ZJz{xR zyg~$2+b5i6i*47tN<(KRg&&#B^rtTS$%ew~{oH=@K*Nce?RdrdW+pO44r@F{Mfevq zRuzKV^K>(aW3s#(?(la*9t29VSM%*A0T4Qb1zp58b4wd2GPLD{ku{>pVvvYoEEo$o zRCb;4+xKZ4qy_R-(2hGzv#V{^kr&Dekb~8bC*BlV2A;s0wu?jWS@t34wvOL%=5b%E zIApATFoe&E((y#R!CsaPIUfS*RYsu6ef<<$*?8Et056R zA3x9Sg>FLPd>u@3<;lZW0GOIZ!TMRoJg9QN((CY*nHhk`v(jVGY0i->o#k@obST=< z`NgN_Sb(}K6qy3=1xaT{HKlZg!+y(BRRUi%)c=FP$ppMt7Jyr*;^ChT0?RJ-rp}Gflx@@#T2E9VCiXvYsMAVY*R5orlYg$+fa$q+ISwe83Y9 zO4$RisaBWSZP5eW2Ds6_U|+D*3C*?MO>D>u}WA#Glk!qg)5loHL0W#{t;H+hR@gtyc!Q_)n3=Kqp z_-B>WX}ot{SnrOcl2%Q{Qyy*N-}mQx`qh6_EiXJtCc0jHzu2j z7Nd5ZA6|9gTa>`8=XCO){joj2VDH8H9U^yq*8HabaiJ?|OCW6r?=fkG{>u0F6k17FE?W|ohk-`!&w;=m-sO_l#&>-HUOjKJok z?B13Of6?Z{T?wu_{GN^t0{;2K<@I^^E6La3zaDgDlJ*5=5e^dD06w|TfN#f)kD5)A zlpZ`gvRdqKgTGKA@qDP_eXpr{GjT&#cPWP(nc_QT$=8SEszAqP^?Yj#zhlXh!Duea z&rdqPT}5=eS54QKzb(@qD=;4ZCDd~gXciu&&r>#?io`K~?1}N{75b^8vMu=(S+%aT ze+m&0?j|?@FUa8Bx}^_PC0-44PI-|jdXpC!$9?lXRiix!OP!c*<^>)TFvLomUcw_KYdLp^jK{*R{fex$#sy1 z92+tsz)X^`X*kB+4xWV7jq?_$m%z}m7q$yJSR;AH!2GTft$7s?BXsGnw8MntFIvqd zxc&8gF1yUxb>7A_P(^1XfMH@RVJ&C*gIR90DdiVt^6@C7HOMraQWm;mKp04u2b&vI zA&3{3<3pBhoashqn7;zE>zzdB)Sca_r3yOr zTk-^Sh>UD67*N%1+i`Lu2bzY5?Ik8Bf{zcM^$#=a(DFPMK=LLdV8Uex3XL@naVeqZ z=J|@Li~F|Cm)&nyNJ$SLvDd27OMzihH8{d3JCyfpkMYFrrtEVLU*+(ESKNU;iK^O% z2m*+OiRAswaW@3xZ(ltBXpvr1J@HTbkQeB*R^}Wrc4lqg?V!U(=yEgddFf29F4%>d zBj`b=U!oIBr6tcmWsFY+h#0yqG8Dgj)Bv=okWqb9?2s*|-Lgf=Jq**Pnz{B4H&2aqRmauSpQjfDYQZ ziI;QZNpW#lD*x2v_Ua0BU(@hkv$S8hFKB5u9x!P)9Z|76sStM5GiJX7DDH0Z=Z_qU zlRG0{`I(u}gyG0>J5I}(Vhhv+*(4cbiLA2Ec{qo$Kfpg9;TGA=uAA;kMe|AHbKWZW zkCM(T^?TJHlz<5hEyyrvaJ&|}Uh6ow9v}8Wwju^nB!82n?f;Dz_15itdPBeL@K*G7 zU2#Us(--f*QoUIQ2O!+7+U?LNRl>9SZMx{h=CIrC=@hPp5C%T&$%Lbt=Hd-{x)`zT zm)61=M@nMM(UGA`VS%_eH@U>E9tlE$z86>9C6THRIeriGll+?A3>z!*C`#mT&G6d! z?C{Fh_2IUJ-S?{9=?5>L3rPuiFKj|Er3x~=FM{7vOU}#+?-;ecq$!liDHba2f7fBQcg{XJU9In1LENKK zd$EX5qE$>Ni9;#Sd+@UV%R{=!8t6Koz;7|(8zO984mUgh7b;FKUig{zrHmXc#Z95F ztakf7>Yexyll&y|gy8MHnOVnfE37;}IZY(^9eLHCuzO{RKJyss58T$t~*(_MIzV5Gr0;YoC0pjeCwY zAA<2_e!mmisV{4=;=uq8=-T3%-4=28qwn_KvY$9Sn~X0cx=Ff0Yr}f9_vd7py~dKn zu2En;UImEe3l)!PC#zqwTB!<82e1h{WKAgU7HaqF34J>zsIk5@(ynQ7ZaSN6`e^HF za~~DBAUcHAGk1{@KQp#iiVSAo%jC|1ftpSuZP7J!?uuriIU<>#9PMmZa%84o|ALtm z;q;RxqCr`AmTIQdz0V^D zQu)W^arTU%5=JBq{+a-l4vX#;PIU zE=_up@lU^zC5BytYgJphhmnh@RJ{>YS=y5h2G-^%s#iZ1Z)!0T$f1o3+A|2*E{b>b z+=Iz84B$&}d(=}2oW}>(Lz{eCrQ^hQs$f5r= zHw79cE>lNdKRna1RdpFj?=Lqp2lL?@>4X8b{?K}-pS-_#cBHlHm?71+OEz=fhy)!S zG7^7mWW66HD;RSg2TkBt>5=S?3?0#3@kH zH}I&P%g1fw+GDCtrS{QurD282^6dnA(va`!1JHbHP1_D0cl}X)CTU2Et;4-6i2%4Y zxUx!f&&nyXxU?pg_}1Nv+YM_@F>db9H7()MiF?JG``&EY&sA8Jz-DSEILn5co{qc{ zA~1W#%AlGpOV*`z-Z2C?S4?D_Tcmp$*T6zpDk@KH(938vDy`3iEsT3NIo}yxyqt+Q z)!KwP#JD0k8FrDCOYG;C>bqdhNjX`j3`^A-yAmvlQ%Rzc@(A^=T&B@JU!`OnG$N_n zjKjytj6=4TeiF-A{|WW)4zey8NV2ADzOOFQIjn*$o`lngI3$_iW|0^C=9bbo5AD2* z!*t(ns)va2*2-+l4~j+^4nxTrkQtK3>t%$(8|`}r2KDSUB~`w7HU34k{a@ly0o9NxkWrFwOx`#S{SH` zqu$BoNjSgFnELrXZ}#GFH8RQ#hmnV?l^#{q6~s^S3Ovr!z<@wW8u`7$?o!A7Nb_}O zD_kt^%}0Hn!e>b4M$v1@x%r-xs%5iq*3%ib&4QgK?(=nbrl~*Q^()uMQHQl&LMF|w zzez05w82pg!XhJZJ8`Db8`rlV zfCpE%Bz^XE2)YODZIOaGYDs?~QHrVjk3(8j+m^Vg)zw5V(rbztK)4Os(~A z%kNbTbA3GI0_F{=Oz_&Y=+u~n6q&Y;?|+>MLL-5B?6F4P=hh^NL3gq2+qaZ|QLlx#ek4+$t#WdjPbP-fCy1-UMH z{D|b)a_5|Y#aL~At=qR9C~2biy1muo`PKl>%A>F*fB8F1`~;8Iu7ygAIPI(ZgRI+w z4t&^1yPS<1U3@Mwm!@9fsF5r2gTUZcD$yT`XlF zHbkf#JiLsp^fK2lDAu?CSCp2ujorygiW}`+oSVee@t67WVZ9 zvrma@e*xG#`1j$)6^2e0!toN6Ys$g&d+rur+*;6b3Q59E*Z!{HB2u4o{RcY*eV`1% zLL1(_+BNB^GA83(j_wMrdLhxF}0G9V}vl&3KaRoub+JW z_B57^NLc7#hhb;b-w$1IS9@0dPUDAnPm_TUnJA;V_F)Fofi=^*$B@v*>ef?`csJtV z-81j1-Ko3z9-Sl7H+&_E!u=GMg>2=3Gs{0!5heC<|AWHE1O#O}a&AU$%s%G7ara1t ziti`#?LHLi%-j@-i|o;%p`oQwp`MW(VPyc1firROgavf0++^s_UN~C2@wH^z;MS!6 zg(=OUYv*{IdfAm@0;8!z&KFrz>X(IJWCOqG>iI3zX4|4=kvXWp<|4Q~+?#}1e1uKH zQL#S@KtsE0Lfx_q<`^L~evDUigt5+O(hh-FxM{viXy}hhx62V5biTYnhk;~;DfWk@ zZ8f$tD}T>M#4@L=2U>I;d_WCv!TnH3hj93J!gFo~4l{_wbW3D@TFytEw> zY(IF}w0k=I%rL-1Y4zs~s4NJ)LK+xA>+lga6ywJ_wjs+(hbQn6|@0g2xxYyx%h+0!f zbPK0>JU+!}{%g%t{|>{E_1{Jc=DUzJ$@i=|8Nr)<68Jbc0$ZBnH9VV}!12SYfbKjE zf-x#*tF4jb9CsJ3NikhR+b|BYb3+OXE>>H8B$fBBxLOG=$OqDpg4 zn>IrqJr*x@SZ-?{m&)f7f0s*DhW`*X&9V8ThUg~zhTA3vQ9X}UGmRL$1kqqe#>mf# z#p>ojdCju!gb(N0GwitqKo8ehdBJ`o-3IvNi+x|9tlI{kv+fek z=9>+sg_Zh|oA6$d@+J``Hf}u6Jkt$gH8)E`ntKNq)JUER5q?_QV&;nJ8yc$)v1!TJXvXRw;T5;IIw$*+fnht@e$POKb!3>nK)riycf>D2tboA(`l z%QneV>wjFPXcT*y_?O&pW}|->6kL_xePXO-t74z?<89)6;uOSS=K{uJr5ViPYPq$y z&5rnan%S~pX%kQ5ZG-sOf-zHZ2H4dLlT;~iYr-S0(x+M6#- z!cIZ1t2yf+ipH*pb~g|FO9meX!PQ zbNssFjdHVJ;-*FQLN)dk@-s0S5240%OXWjf%Nj<1@N!s}6`nrFfTXEJd(pQa@%E&k z@+Np&jOGg6ph-c?lj2K03|b228^S!RTvkNUuH&UWGh3sv!#%@Es-L_jZoorhoBr^q zl%NuN6#e`1Lc4xu=I=f?80!wQCCM|zbHiiQ4v%Vb^((H#=ITwy1_m>V$wDxf(Z0X8 zBfhq~({^!%E6L|1tc+Z?ipA|?s@nm`mKXlOLFqqZv<(R=$5j3p!w#Xev^0)CgX`kW znOCH!aw8S5%P(TtZWZ@|tBcMUmvm3fcOC2M>tT6m-1DyM1J%X5+R(Tw?&;w>i8Nnt zmTZ&kk1V<0ts}Hn#FTE6&gu7Mw?@b5eu|A{jH)(DweS;@7`KiXyX;ksF5NDP1)seHXxD(j~#(L9^ z>wkFJij+kCm*iNo527oquJ>(LigE?DDWum6jAdYV^XOcS00pI*uq~|mIknh`)o_!z zmlhS6&aHk^Mr0@A7p;3UCI5t+k!a;1BbckYT<_M*75;YI35mCYb&c-tRNzb2;4j@x z7x~s$$2Z-thn)3=J{#Qa^cxIJ&(!GD?VLyEeI4fn&k04F_;`8I0@z5Kq2@-C1f>fJy&m$8cqhfotTc+ z%R&!)Z9?3!x4Cq5Px5<3)#muPWy?)~#K+6m>}rLj48;n} zkDE(kKK@c|o4u4p3_cKr{t|fBaRkb6v>WvXfPpu>u5>U(!oD5Ir`)KKT zzbkBg_4V-VpTho}^4sC{tP#FPkfc`!;a!>J%~@s2p7-g(Y1#zJra=$(l{gTkvj%9g zg;$611NQ%~zD5Drq+V~>K!<;RpLg8ivhb~YvSNwH%p&x!;jGiYTl@xR4%WcO+8CLrfP1Cm#8+U#;xWcdY$fq=dTt5f z;c1orn)MI#*_G~r>_!L8{fMM=LqFdtGNr0adEr__mEB|or{jv0fv)ZIEmUYFnsj^Y z%MZF5>GQ{B{b6;vzGQ^o^!yH6F`AW^Xw$XkmVFkirv`W7rJ;wvD*3GWm)X#=Qjw-cAKgvkRJI zSfO5B`@plKnLN7LhGx7H8I1c%aLLoml=S8Rk9otyj@iW6D#TKqY;O#21%MdCKMJ?e z?Z0Iycrr}UfvMUjd!3?M51u1V_NT<2pc3s_QJfb3;)cb~_Txhj3>GirY(8ZJqq5lB?x3(%rt6^R46gSX zw=P?2&#os~ccLhsx3NU0e5%N6GPG?u%g|Ps_O>0oh7X6&g%SIv3-l3CQd&YI?m)5b ziSO&)ug~HfnOYUF=?av7`FTP(ctCaHQ^wz1*9b^&58#c`JRg?qWH#0e+by)(b0b+C zO}rA|GqLks-j#B^ir~~Lod$Z89klk7^QAijsL=iX(!J(C);Cv>Wma7$`1dlkQiGRM z`34eB?N)oUN?tWiBYdn5CAz0MG}t}2Ll1ms8kAd~b40H< zpZz-BA+p|Y7VL4kFMjjkt6z7-s~Qe6eU7VXz#n-3J|*OL!+=Y*ZU&0o+?0h#6~mCY zU#JZl7!bs|1VFHg^g7m+r&HYx-EM&fZh4s5aBgy7?>cnps#!vGx|}&&ms*DfF&I%t zLBJsDw7JZ}Y&3{EpR5|+E*fePKySLXN|0IhE%=ZWMa{LmD2FjLL^CO`!@(XTfq0xE>r- z1$ts|XemU~!f>gCoX{4Kf*A-~e`uQ$>6t#;ebEm9`Vcr$T-`6}IojZf3U4E17ldV& z@QB|W1}5+rN_WiGmZ})6Q+}wY;OkN7m7>q(`+5iLe6A$&94MP|YsRv76f1JgWt|33 z7rwm=jM#mbiGsu4X>~6yR~bcx&6bHH^AZBb_3uXUnu&f2z;#Dqcgo3@?}67CZuWEz z0D@ghy@kq@+;~(mC`D6=kHpgzd_pr4v454w>`(g+;^KvB%qihA3`ylROdzh4c^FYM zc{;0Y_YT9X?a!J!7+O?EFWrvUMZO@{Z`fkJwm(%l+uOMm+L#dLbXu`OmcNB;df9=e zBYn1*3CN-=HtAP#wPMNZSWqcIchHbkF?CA~(dBfgK878LnUj~JBu)K$m zk=KWQtb)6XP*2^wuQXTfSita2)C-O=i-451?@VU>I3DV+4ghu!KSFeDsZ0878TfKr zX+3y|QFI*GZFhvCHKUsLCqy1l@BXJ>-()Fu-Pb#pJW@H29W^ZkB9vR#I%h~M5^U3> z5NpSx2&MIIsBvY|A>fOmkyv3ll*^ZXXF{a8mAq#{c@jzfzgfU7P=}7|l9L4Zqf0ta zP_&B%a3xH?|I}=HQEQsb=f&E?nusZUCGT~F@Ej!fYl#MgTlGuthS?aO1>DTBjE@b8 z7_&5$P3Ch9Cmz>TjrI_8W3~PETSdVAa)SFpF_X_>dvrt;oBWR9us_fLW)}T8FwNQa zKXo0ALY1%Wf4*3zt$)=_x5u=rF}qXy(O{g-HyS$s5FP!}NarTgg^O!tn96)^6wX2m zb2K_yT)3N4S7*Yl{M&)u6DvRIPY#Uuwh_$|eLB`p4nV<@T$*l$b44F~UFMp-#!6>kiABaGL2W97eWjYaZxZeo&+JI(WG>IdQK*udw;U zm1O%9TF2#qROj8*>9%$}+sCx0yFZjyQT0OiYc1%PzD7qg(`mq80v2w*UAwC-@cPwd zB8R5Y1!adNvA&(1^wTpm`?|&04h3B7PiUk~-+yCd8bdgIl6h=EZwF~LI2-t4yL(My zWxbGcIv9|2+>TNB>wIT+TSqTV-2StPj=}9g78Bh0w0O6r!ISDv$2Qfg4OLl*`o*0t z<5isv+Pr>77P5dhMDELqMfAk(-{|WVbufuVU{XtZ^R|PVwZR9Q%cJRS%Ef5_p^cpI4{XsuElCHU0E?U!26bBHz$dMv zHuytoxyeZfl6X6+P8*#589~)nrDI#@7R{Wxnd*;xWahhKLOo}Sb;Szyt>TC>{jvz{ zEqqrpV$RrMF0<#*&C!I=H>zs6N*0w_$>TBABD+qrH0CIG{@%432%14bi~h5JW2|h6 z@6yPX!KV|a1jdj<;8*An=gvC}*c%ZXD8t>n)RoYw{Du5cpC|u3ut0U|rt6 zi|zIxZHw1y0rFAp?g)zXa18hv{o~O+80(Q`#S@71H474(_He#36rNY*L);Itg zjEhWn$A>K`t+(IN0t7|qd?4%^(Sx$dHpI= zc?l`C!L}haDT$ymY=OFra zN0+A#)>ib3`j?{+b+Of=(9S2VYx<&O&~Q$xP7+Pu_cXY|1RwPCagXUF3R@6g+7tzm zqvp`iSWJ0|#kxLMVDgWcJ&gEZ>a>@a>0^mm zTPvEi+a(s`LJm{davDk3jc_%0<@r1%Rm$B^@&Kd5Z?idfw4n;wXVALSaCGj9l!I&z zm!3Bk3xGtYfdF<@eRq|XgOIL z;c87d5?g#MdOs7O)wp@)N-@l!^wegwI18z-Xy9*4SH8Ig(wj&_np)-;UMFPKzsdYF zWDB*+$mOj~E-(UE=_os;Jje){?9pG|Y~y176nL~5i9?5cfe})atczlP4^8)y1wfb? z^ttB>v*MZ5`Me_>Iv|S5g`=M}58=q9m|XGI<#-QRZBxKryR_TXH;ick{jEGDpGor^ z5zCv+X{PGy5GIAFX;AIklRVJ(It=FZs)v>tDSy~V3C1RK!KI>94Bee)mplO{fjy&O z_Gxz{Rix+VZ#YaxibL#^qd110qtn=-XG$LwD4|hI!%TmO$&PzhINe&e^>1rP!D|R-wEAzsR(3MVDPgm=(kD2N zJ%HklS;n{c&A$?Y1B(Lj(RZn;CxECTLWs<|!yu*W-v^P7 z-8o=ZEO6y3=gvNu(9owiZ4Z^UvnyrzKyx^u-?0HcL^23h3$f3TBo1dVI~W{tO3gjB z-s+6uQ9KL%GTr1^(-1PgVNoLcIK(?*{*Z2END?gv$6|@$`RHPYWnBF&Fyuy5L*zLs zc|!r6%%nrct!KUFKaw_X3c%mUv);qi9@~?@wiZ_r<&QE^Mf>cU{K`nE-D*aKK2<)0 z3EHl-A8c4?LyBcV6(Sz)-AduRM!vayyEgb+Ft;jcsxg}?wP>gD}F`^^Y zs?#}t-)LUG`CF(K`A9wYCdbCtM=G|q(-{9hZ!7ReOx9~-vjhE!V%n2fL(_WDrP(0$ z*Xsb`m&j6eVx4s*^%Y26(w~RD>rg@1>dx-9YkNAh?yMe5kT% z8@EVqhU8_CQ?b(Dfra|7xIKSb(DbKq#_j7pVR^RN@piQvrgM>nL1s^R2!AtG4V#M) z*MIIcgFZPA*2M|IENju9={GkPd|kCfdztj+4mb}?zjjG+XjS$S9F!59bG;BROeGxn ziNbhfg!PumFKqJ_KHYC%26qT>2md_cr0KY-Q55Zi&23lRzD6+*{4X!!&%}@K)4Z`L z&C^LF6fN$%+JcopKSm+LootX}ahuXDOR1Dy=Fl}oW=f~H2eJoYmXbrf;fpqOoJg4H z!^UNrDLzT!cQbO!-NefatG@AtlDxtocUN9RHf;_UM5&c8u6-tI2HDCyd(^u(9~2V& z)D8k!H!*tIZssQ?-Mqy&&HoO%?fgX9;Ka4G;m_Q2eH0dX%)fC_0Mzb}a9d~tAikfU zze6NCEgGW`s9u1uUU!7(iIVv_6=>pR6-&9~Num_@tr+F`x4<=@5pZp?1m_(qGbps`wxgv$Dx)%7k;fK|l~zc1(Mf zoQU($*V{&yK+dG|EKc3ZKR(dY97N!RVr1j6)#rSLXa>5YzIb-3_z&F5PMl?wa`ZpS z!#=XnnR{e*F8#8!Q_95w z51d`2xFu>^i4f0*oIP!_`3)v%AK90Y6*f$s5j5gwc75DblQXPz&1Q4e zH+{L%94tJaI$t1b&;RlJ-d#=77c0xYU$EY@L{O}E>O%~q!{N?22;oL(`(@)blnp5$ z1;6}$=C4?}iI2=)&*wce7w%g-l+!qMbJOCzk0?L@_@dy$DSCnWF%W>O$rMbL)(KkDT5|@7X#==3 zJv9=DL#v);9b4~wPZr`Z`Ep7lKATdrXAX1-Y_blz!QohG;_mHmyiJR&F&0W+ZZf)C zTkKV=P9TlB-xXwcQy~Oh-%ygL(CLK=|BfEbOn;{IbF(f9&U_BiVF@t|uqJ%?=D7kJK?RFxaSx z9Caxyh0DlwYMW7r9tvt#c?lN4^E24>m04-;0mC#|ujlE?$wJ~t=q07JB`=4{de;2* zJaf@bozL`l>&mb8vm&uVg@VO1U^A>g2AT+?6Uo(-w%vo<)Vfqq>t3EzK!9Va+F?b-etZDOIV_}~6F3ovf;JjQ9UUaU?i zi$;<8QX)7dfaZojMge$!j-Jxeb}bw_o2iuILF8^3u$lRr-m50`f(cM)7;Fz$NmSeb z&o7sY0|v!pz8{WKauP(Sd>?;(NEG9gr^y+s2O?K_Z&JGCSkoxPE~Y{4(xtW1}p*2p!TlX@^_*Y}@xFvxO^bAN7sM%oh#zW%Qw z1uDIqmdNb}$mnr_J?L~$;!3+)N%POWew2=T8ohQa>lIP?)t+!qYPF>;QZ7npoG04m zx&^#BX5TdK5u|Ix`$&jcaC@?bY+JbOVWc+Yp?1~wR$&?8XAv^g40jpx`S2NujqUx$xK{}`KQc#L1}$(5$^ct$YXF)%WEIN)9WU_ChqUeshE%E|uh z%pp+&a`azRN72hK#My2_aXy$w(@I!Evy6WBuNgwQ9F;)>`qiu*d)q0dv9!YTM0D;N zyz*;0t}QQgVyr9@sjfn^KS?75T8i;(UF&iP(B-j_E)RFnoBoFL`pXmE_F!Eh!)cSb zgH`UuTy3L|scg<~YWD6cz)}lVY9_n)dQpguguk|_H5GP-+qtl_t?74E3%+T{I24J% zM*b44=oZwfJq2`V+VEoD0?IXT)poC00&TmH*E3b2#NJ>!I7`{1aDvRz>q3?Bw`os! z8@RAaRFbW(&v$BMn-_J-ftRfIxzfC_{UCH3JjR>ewbWNk4`i@g#-r}}MrY}AfZl&% z!Z|+}B(7dE4qLQ3A~UM)3WX#w?+n9uao`HzXzY&#NI2ylRg!G0qDp^0VQUZD5UtF9 zG_A$sne(WE>zguDu3xUWx6)Kk(^W3`?v zOh)Q~$zxr9G%`9FlE1vo(wBB{T zhu@8LaoCw;0IFR(siumJPqh|}(6|N7DL)l$X%-*V1jL^NSyaHXxp63Y7r_D#Gq5^B z@NTfQx?8Y&;**5NULzcRZz6+CQgU)>;Toq5IHsOk>2p-aJ$Y>j3fsH2v)&32+OJhSVK4 zzHp10%**54x6y~y)1>R`sS~#C*Kc!mM3>h@n}QTTr-zdG9eAnik#Ho~*OZy|lZv?= z(2sz1XGCDv0Qbvm8b)v?kk|jkHS9P#3jSs}X=;G6L4=ZZJgX+yvD>nJiF&cLW&xt%6M$v9hkb6^TtF@ukkYaVKjW{Id_8&$FoOpK?6+gBkG?um zv=2S81y}$dOEB`)5Dq_3WR5fBv*`&2oyjq1N~Oh)e&$nuXH+gaB34P?^b)UjA@w?0 zIh_GeGm7`g{*GWG*KgC|c0Bt-Ed(hBoi{CD$D0QrS>dZvQd21|f&+y#CKVSUTwc;` zbTqN)=!@iMR`NpJkD$L9pA#Px^nZ7`BPDXVU z!`KCn>#_>7LCS40-#ODfGRVXlJv*+d;Mw@3_LEIh9zGYxrOUbgfy+Y`1b4O7Ossx?S$y0twdqOK1vp5I z=ukPbEXT3H5nAJI>sYQ%x2igP5USxTuKR*X9-ALyf z6ZyvktzVc`43%CeVhBqsnFQZ~?r@qX$ITU^67P+;mkvvr46=S1R-r6wZIpW%UdpsQ4?Xw2UBk78UOOwA(WHN zp-sg4>8pj-J%BXW-25l}q;ont9yS*xfn&9t%Q;6yx&pp%GS(`~g>>&9UlmEkq^Af$lD`1TM3VB8m7mzD zrcLu1_P!9%l_4Fi#uJy)yVEsA$ZZN+R}js@7uZW0y#z_RL9cxJG`!l$jrM~RbWS)Yf8b$rRb@32l1Gskg?*h1^i3xd2R6qcCIUU3D+1E;{dCTCUq~w!1gJK?aiL zUe;LR7$24iMTUAV_7m|%J03q{KgYzL1%-oq{h(KqNb=fs-oC+*CXytC6{Yyn2KK~E z7Iv=Rqe4#FKs5!cU%?8!;8_vLB5uXLcv?JGnu}muY5UT}q2fOe=hlbZGb<+4zQH6R zMpK{GXnZFg>9-`n;a0YZxNLRRtINv>&l6aYFT=j-^al$e(z~dd_lk2rKyQvE>QWpZ z|FyDamhX!)-*nK!5_Ege5X4VhT zADjHKfg+qn&8{@ra7MZ2H3rvbbYk$rrIGj@Po5Ba`4=4fjp3`e1XJ2(uXRyI$WW7D z_pQC6_q(9vCgPt5Mk<5xo%PP!^N4u%=4z0*YXc`tJK7uu{@uT*Z3ReiJPHkk(}@XK zPH}0}ys>y)2>kjHqRL@v(VAf3o;IZKwYzd$qZUsIAKI{L(v#gt2d|d_m|b7ZiD+6W zW7N~VqIrde5Fx5`xzJkjGw=t@7+p$lqxHHV+!izcdb%TZ!`RZN>w$|i*InMAS|K!8 zP8I%_h?&l@Ihlep7HmKH!Z({h4n17_<`{a$moANXaMw;@+A15d_!L{#{Ahz{R3(kU zPCM;c*ds=;Tp5Mi>R#{E2~3+Nsgq$n)#-y*XId4f>k&0+Dq8zD$i6=KZHRb8yFziT za^u`iq+i-+D)uYu-AF*Utg&9GlF59NRW$J%&&bVBt6q$J()ncYx3nhdS2Y#ie-COq znhYlVF4f|?T6QnM9YTZnw$f0!R`quFo=}Ww=LntZPTHT_iS&mcHN^3@pESG=+Atyw zIe8Fk#tKm)ddFS?4yoVpfHYdXLW&uHwL=?KzYZf5?_5FX*WZs`oc~nS@efkXG8_2pS4?n z=(Yxxk6uGt{k14T`w|&P8{u7|Fh1?!{;x|7fEcvhm#U+e*Bc#{sU5a)#i~l7z+$BVp0}&Wk?H4ruS9W z?sW5juWO-xG(P$_)X`y$m%hN_q5Q-UEv`Sl0W`(s|IT^V=yDZD{Wpz2B{CTQ(n9`% zCRBj%G5Mnb4->=l;`BWN$qReVRUxB)Lv4W=xT^3S{!8-y0xZx9a2&zD-h$Wu`c@3T zU!matM6T}o2i8^}?u5XwhcoOSrgkriJVoLf0_W zlm3K-9V~i!79+K>xAx0k>B0f|v&={v#GGy8I*V&(B!v-oa=Nf>2Cwv&(|+{3ML>~7 zv?TX;g-03dc}7O)Q^rS50`VR@SR1Kz zgNnH6`zBuetCPm<<5TG$1%2YcP2O_Ao5sG%+rE@w!^5;ML3m#Kv1e&53711lYAdH< zyR1CMB+~N=LPbHA;vC%mhR0a$qjBBqsv*Kw@Q7&k=*3MW{+EP2P$vZl_g!PhS@?kom8*stCZvL8-&xMbRD z=D$MS24ez4tf+%%Q+_Uv(!pZYefP`*Z-v?qTnpl!XSUjBmku3L;F@#e`5F@Bz8C9? zqCez)bzZDQfT0iu$47hb9DFwi!@Ac9PeTSmXKrpmD!91NJ zTxh(ifM3=UMYjrEWAuLJ_nmP=8>_g`^Ik#>`4?Fea&X zqS61h2g}By&}_(>Zt}}i9Il4R=~YoW&v?&(T>5&!o`vbSB(pZXY;yykJT-7!s(R`r zbye#)PXHR<7WWjvvD`>-XM+GBAThl!KI z^tD8|ay;;B*HtoJwWYUV(0LhDd>U{-ozlEX-&<@F%igs4$}H&+)>96$^MsZ5c`PNK z5WoH<^LE)VM)7+s*Q4fc-@^{(Hx#f?@O0-5TD*$XuE*Nas@eZUQ-4;r_&{M6xY`%Q z0$s7xCoeoC?Uwyc0hFZ0U2<$hkIH%g=FH>fZbJvBJmrHjbmZjbKocf-13P;8+21|- zqh|Y76c)xxjvHZt&A8wvQ1o2s?iUC3TUz%u!VU@l^Q=qn>wU@CL#FM~!jRqD+ZBAQ zW@jn4?Hr!iz0;qLFldRYko|>8VjN)CpZk8YruSkzD&GqRW)cVD!X{C!ap2&xk@1YG zv=3yR9gq1ZuZ1Y$Z#uSFq9$M8$CEt>EDgPWfCr+~ zKOzZc62G#L>bgJ0A4ct84Jl+gE}e$$de7lI1#pQ!bfR5(j#OxBSKWBdwQQh_q_ICL zbSV?}IqV_>PgfgxX1~A*Z!}geEW6ux&1xcj~*;J1DmHybKT`NJ^hX6A(9usRCzHs zBG+2LecNmma$9d7Sh1%AR@VvQ{W3IGz$@QZ_oDgtWA>smu=3w%gR4e=0w-s6r6WNO zp*o?ER;9UN?YgwV0N74Qg-2uI&-C06e?>(qWq%v9WsJg$ek+DnmC%Xq2#cG0($?rU zB&tkxRUel)nlKPlj;v~H=($kag7FqPG%Ffj=MtnUCO$KBKO$W|VD=|u2t8Di4tA#R zXevADQajAUjx%Ji)^*6X?NPv9EDNS<+1DQPB@Cs3sO2de|2M=UKaSwvLKZL8e|>m% zoSE~)%c69!2bVq@2DA{Ipbt~+@b^tlQ%HXR*cVhQ^u(EaCCeW%Xs|O~2EWE=2Uam0 z)#soaQYUZt+g|j)eZD|&A-DzWG=8l`{veiYYbVv`GI>Iq*3Il7>KpBr^TG0V;t`+6 zgO{nXIAC*b?O*qg53}V_ib&Hj-v;ofwf4U~!v`egT2d-!?Ca=<_!KMEr;g5$(w*&* zoDhlA@%N;FIn4CA`ngS0{4Ohi0kUF!9ZaTI3IG)`-%N!l>biRDr!EnIL(B&IW{Qo2 zu&N1u5)^)6RoUBSmNH(2D+v^G_TajA0WxaWYrFaQ>V_vaD(fDKLMP@iPrf*jr;-`o z*GsS$LhI4{R(73xok7h;=N>H49Fy-jBFilMetP>^kSyJ|LTL6JONc{C-%_gwu1smJ z>dfrNt)Zh6qjD2d)|hb6`T(E2`S*ob!|mDJZVl%g?n_s&vt#|OS_tMn=y6fWWVsI+ z7AdN5O_}~12uQ0jp!F=?8na<650HBV1qS@mnBiFUmcNP#f7>DUX)=_g!M+*jXKqXU z%XMCuEuH5_$iXpi$JB1X!_I1JF8&O7AW{f*Eyv&k)t(y}p?C|G-V_xkr7SQ2H2Nm% z@SN)Y#673Eqqz7zwfSP))IpqlrGMuBd4#n0{vWW9coK*J9Pec`YG@UW#%enq;&yym zwzNCiyRkt%gQ6kQ7Arjnc$DnsZoGi9p~KSr?9Wdj*eH~Wj&EH45+Ya94lo5OnPrd$ z6KcI%mF{TZZmO@Ys2pU)^fw?_~Dq@D4%E-|52l za!kk5t_2;)x{VM`z4mW~el6tC;z?{{I6(!)$6m27s+g%ly6zdIB^-9sV4*hx{{nbq z?QKXdX@l@}%z(=O?0Ub&GtbgJ9^zI^#;LU?AUA)%yh5}aYm(OLxwEMXO3>eTL6=;} z25KwTad~mQ+KRf;{oAf6cox6`$78bi3KuBLl!BH}P|!Ti2@178o0oFAn8&(4pTCcw zIyxSbYFM=Kh;gs|**WSsT50i~^#bgB>Uk9?#o-aW$=kk0hxn&;TzG6FiR!UIcnG>N z|86$+W~!#b>M%=yAI?ENN3+}ni%LG&tzXtCG!k?TOF>mm|BFQ-_0J%M$>la@>AUvJ zG^^nD^CidMm%>&Ull7*V&y0VLegAyKoEPCUfwv=Z-;8k2a~14kRUja2OUK6{F^96e z{?fVp7N0qX*iLq6NfQ7{Ktt1P_l*ACLm<<<_{NFcA651mRnL%RDK=?D^#qI6NkWA zy$c#>huOiLnQmwHNRt@S+`?x%Kwf>XUcB5w7QU)lg6B+pfM{@Eu5F$iP3-C8{!oe> zR?9k6BORgPn{?M97oz0J9DZE9?s*5+jg(s8MCvy0DAv&4<$=wCzz|hYx&Rnl zT5b zu61p#mu2a6{kdKt@>ZBt@;EB zqD`};t2+BjCN^{;KqLAUw6)g%{q|EeUaA==7Aazv=5LemehxnoQXX;ok~>=ntYw1J z6X?9r(yRIQlN4}y^;>QdH0#~19~w0}72y`$dIH0nls=m|pN_>~AFE?qVe!uGXqPkA zp=M!M<7cf;wdPGigme2vJmWb(DLBpxm*0>j(3{rcM5%SdWC~jWQZZ3+*mWt`=GZ#L z{ly5Sis1JY*`6~~Wq{e;82T8%s5@-ft%q%ao!N0YFgn~$+|*S73Y&foIYvfdCnHr}FCn<;SS#eD!zKE^8P*{dS$W?^(YT z>wpmnPKUwOA8Fwtr=uAgtVIA3u{Me{$^*J>4J1)%+^%;qGYP!|!d-zuO3yC}x%eTN z7HBUw*j=FYg}MTSPR|A}7XJapEcUYCx85;Tokls?R@~(L?mKR-2gJ%~g!<1)&!>Iu zm(>b(^8L7$Tgi38e%Q<_?Pbkpr%*&uq}|e*Y*WaOWq&gJ!u4Q0{UP4K3jnm(Y+M=o z{5zU8Ejwk7!S<)bC^{D);|DSb&f>_MX2m2O&G>Pz1@~e1p5G}KfjMJTTJmHTr==5k z5dSyf{njYSQ{+sPF_d#@e#M!rO5DR$*1D6m0rGaniLj~W>r6s76uzj`x~RvoK<}Rx zsto`^7mI{*Qd>l2kWz`9oqUt@qiqz2-Nq_3`!#Cwq!JLJ$$d3js>)?-2E8)y5U4B6 z6aE7>$&c>?xXtRPrWEp56A7!+!%+nt0lNrt(=}k6wA44r7T+&Q_ae4|94UP!V{z zm=4EUXZ9X-W}0@r4uU?jC!m+{-=r&?TB3C!K#o&AO#$G)`KsY@_ou0Vk|9p*A-cTG zIsy`d%h}%xNPVAYE&+g@@(=TJw*_mF0g`kNvGyU$z?u&g$W^9Gy!enekB6nk(UfJN zW?Jnwp6it65RA^;gBa#{GtMp+0uGO@2t*kq7h#%a7GXy1K@F7k>NSGDvwU;Pinuo;J{uzuk_qxh*w z__`}&W^+WuY5?$u3UENR%(~7E9fcLPDTLG;vKh^rQCJeO`w%b+Dq`>v3)HAOu~I6w zl}cmf6?QII`Y0ehGBw{Bfu9kBe-69X8|e9qX`xXrO6VINe}PwY@Jkg={R#G|S;Q0w zmQHcuStOss@f@WpTi-c=25OO9tAejkX#QR6O|JcMsrK(0^5Vze*`}M};=fX;5yJ=-)ssTWQb=kHZ9MHA~G>vq!F1fg`j+0(NW$p5H zeY*5QbBpk~YO_SlZhQ6jJ-%h+MeZHs;;4R_wp*4j6k zIn8#^M60nX)ZRFI-@4l$HVk3VzO~u?x~0ARIR@^ehIk|6`MNHod2CqY-jB1=;Vgcu zJ(Qx<*qw>j2_=o;XqQ-2jnSnBI+@C~ z&i3KHF7+XW?^Tcwj0EGqyu-UaObHG@B(%u@1S?kxVw>r#O|>oHh9kW&hS%|Z)qC&^ zL#@3Ao&HI8@W--~i+aPUI(>M`(xSQcWfo{MnR$G~J@a$yR-KbCF@y9WKyh)loO0%eOAAWM=FXz_ky045qu77EuNo z+v2so>YNZ+VWyyY^npEo4dIIJUeCUl=@Nj0S*Z;fr9U3yeHMD}@L5J|J~}^c`0r{? z{&?lV;fIS{2l@in@>a?8e}iwopQWHnVM&lnVTcOYtmoIsWzx^cF+3jQW;!lJnGU$f zi}f9Gk6vE7JAakY?a~gtIwobYbLISQJTm%8FSEXoV=ryFP!dpo2eZHCj>NXQOawUz zgsF&sJrJU9lRNh^rNVqeiR^`%5lBT!;HnOjo7>@o)n$PChJU}W|+<}9f; z8I5s9(gkJpxo`r0AU6;q7rD)GU}#Eg!_cjeXO{IZCZaFc_b^Np%l~_la#{XmuTUkD zcVb&sSm#7$gKWbjAXl*3SedA*V%v1lB&-_rzQSL@v+Mc=iPz8xIw8`07y>HCRqc}g zhCO_Z)H{Qj`;hJU(c)D72w_oyjZp6uCV-8af5?zhJ=+p; zI`lQ~3l!XK_)srkFGT%hN1!|>ML$2B07jS}b%d%PMkhXxoGl3*R_>2hqC&Ano*&GbTWH74 zNMNn-^=`}?)sp!|*a=5lJ^I~kNSTk}^=!$DAzuEx=J;H$OJUVONPgTT5JcZ+r$u(3 z@SW%K&lVrC=*aG887BBAdj+vcWVZ26NSlGzGD1}cJ|vE}AF0eO&aa+I(LY5KRM?AH zqMinv!*j(CZClI4H43D~IMb0~D~Ia)ZaIsX@8<$Euekxf4_8TC&;aQ0RBR=Xej9i& z{`-tH?#p&Ab+mf`>cE7pe6trWXr4#A;ZnZzY23EbY8H3|g!V&EA2_`-Ul^G>@dDf{ zISOrn^cC7wZ8#YD@E!keq#PU}6l02)r=y!V%2J1xL<(Pd{rS|)GyJhRun_G0e!R0c zvXq!sxfF4CqShWvkDZTFGVi|b{<59yURJQ?XiHp*{FssCd5fY8=HPorxUgt4p03Zl zFIQ_y#b*rxyVv=h7uFAmrHhlV5j0Ui#Q+T`F$yDwWiWzAoY1Yvtm?(=sc;NA{o~lVGUJ$jy5hTGm2xrk0Xl(l zR}_>F@&`eBgAnxBzj$9=>%VUn)DzbAKM%YeM=L#7BD}5v9Q9sv6dj@sNyAH@Ax)Hg zCO06e01>n0{QQ(}-r%4)I%7uA-zN{ZOhS1;zrPb>JM=NqP{9m(M)?u?yiQlm2;hm) zh<-O_;?#9u+~(hAAz^jv2^sq=u)*^RcO4)lGa-julQbww-UWj*L}r-=__Nr&)O;oj zr4lJ8iikVFp`cptF8SeUyBImq%C;VPU+sfKx?$k#KYR(%U;AhNA-`vgT9ZmCD;Ck9 z^h*Pt97YyC-CQ2II*}%LLag;kyT^jz1e^~wk{S%4<*qNO2}FQTJC2A&OTG?(n?811 zFXUFUBHHLd`vR%~{A5fTEH?s}w$NTgks6^81bP83j;f)DJjTcgO+scff7%z%=0>;v zZwc96^^caCm-`{fQH6o98aY$6F(22mNu~6 zMBT!GGg){8OQ=COT3my?J-5nSVXKc5etsrgcy>nZ%CnF<>B$7DQ;`*1Y@SK-`aN(!_qgE_VdrIM)7`F=NuZU&>|pk>D)J28y| z++1gq*(+K6Si~P(kLEH!?PGbd*{QWqCTYfDe?&hB7W0<1FJ32+J~#jgn|Deljj@}6 z`lT2+IfrHno-SIo*^3+ItrZ4~mJYsee7t4HxvYO+k?ZkFHeWW! z6xuGqXaJSMW`{kdV;W$o-cBp1;M zdg)x%uT1wE_gNtT?^&+g=$$;YNE|uO;;gvrpaY2Ihkgg)30y24BZP;3W-Wc|6D zx*C2!9o+>&TR4z~W@bR5I2f|8u?C2|2H!7K8;a*UA|phcXjwO%S;&V*Tw#+3LM%~o zp9E?h&@TdILd>2b-?v{xn@w-{mz`M3o?0Rq&>WV~oivlnZl&v&*sqHeB4|+TD4M6h z1;Ev>g$%ed4V4VltE8 zG*kZ8WMkOTlm>`ABV+xo+mcQm!C%0CwcnJF=SReWk--am9PYJVe6sBiN3U269O3rC zQ*(Bg+;;uVFBM4et}ujFE8vjb&VfRUB0Y@jrVC&gBm6&RfydgX^0+Ka{;(Y27dB?E zV^dW@H`s(+Kg6 z{~DPA5|7ep_*1Aw;LlN2an|E+R}FwZhp_!73=sEBeH&czYZ_$A>$>T_2^mGF!3L~I zJFC`u-4kBD2bB2ekp>+0uYp^*7`b&o5^BN#LwcDOw=wveECJukrXxjkLm95s?BIAE zp~^c}awCiR42L~NDQ3mshWOGjN*OYeC6>-Ji;SDMYxB+N%#c{$APEOBO8o?yh{p=; zwnh{3+I;dQvmy|aWlY3LdF;1udWt{(J@)mtEUrK$baaT}^-{Kb;d;OJSDoW8SSGSo ztgp&~J`8)nd9^38%b&gh(beFU(4Y(Y8Z@6b)4wAdoEH!{EIQtXqwxns&c`=G62OGq z3)EI0?tE%ZEXrpdYvfZfEHBgC^e4l`_n_jNC+86YQm6dNqPXu?UFgLp-un^+h(^lq zT2B`x@apDAr&swyI=v0hmWyxXvN`W-c6hi?e#6c|gR<}AFOW()j(1%q2Avl4mCPx& zMK10oD%g_hlTMFgI?dlnm%9X>&{+6VP2Yhb6;0elYaEL?sz=ex?1HTsVfxd)6E357 zYHeTpgtnYsK%o43j= z48>=)yq6n^c$PG;PKzMiCkGzX2UL_owCN6`VdbVZwfx$iJ~^6f_lEeN9=UX-?7T$R z_k>&n&SDJ~i}N)mli0~2fSIV#HaXk&B=Bqw*#38wlObPJzFk3GaBZ9uK(C*8&cZmo zyS+35tkO9}vuu)%yceR9nW8_;zc0Wx;Fl-rbW!x$eTgFU(MeB>DHwdv-vd$9r)^Z8 zxDFmw+!nXFMJjLb)nKo-jqfD%iy zs)rlhA0`xjHl!EY3=JD6KSGAfcuG~sYq!-};EytzIL$oy*?NWMx%@DI>eR|-cz}56 znk2VJsz1)s7zl9TAB4Or>*z>9d%3K-g?vJJfKCJ>4H3@9g93_l`uppsuamiJH*_2x z+|5F{CT=E5(?4G*a}SUQ66j%;5-hHdfyl-(>o-I>PpvvV`z7R8XZ}~K4e$Dys#lSW zm(yPQ(}Q~4Nc|@r4R(vCQF+|*ba|Rg2CEub0@kzNbO{Xhd81k4JIpoEY6Um1#L>wB zNed`WnSWyRqJ+*@P&XpbeMZ&(GEEnxOaR@K%>GkA;c6vt0N9+Q%^n;~(|OMj1~K^C zJ|l}R;hHmGkHGB?o8H=eU&s5&7}%JE48Re;zTL*`bjq2+L@m@{k`L+mH(pMnEG+O$ zz8|=q@DKv?y;_Pa*B;sH!3~5Xx52j*JAfP(3*;Eb)K!StdN0;JE}X|+cWT}vF5XER zyaAwR?@#a-n;(xr5a$3Fhj1DI0U7}tBA4?EpZ3o8=TYQaH`~XH7=#lwvAD@k^2B~8 z?_!5W&62lHpUlmwfXa<>Xc&|kua!_Cd52j7atf#vMG_K;NI6>35ULeHA!+tpw3tw!s`!cgiUID zs6eWaE>Zy)NuT~b$f|=PpfeFYr#INk_L>3Q39d_5c$~E_I2`C@;+-~ZFKg<_wBid@ zhU>8Q=RTKwxU8;qnOtroz_Qw8T$8<){a~{GDZA~Y=kSWux(f&>*gbwp=dkt%s4vs! zwC*F)#hJR5Su(pfxy{A+sO)UR7>ypf4vn=nCS_{GN(G!+bwEt=KFhD0&$}BS7 zZ(S!W33m=& z@(?2TapEa}P6I$6as`_)h?de!VG_cVJnav!S63mC3L%A%<{o)g(W?j4ia+jCok-*4 zp+)*Wm6Q7YTs8~eEvIU-{zEmy-+K1P-X@Sq8$8N>%Q9W#a#%+0b$4DW@SETTx$1!$ z@e8s7vIY!&EIMSs6P~$m4Ff-2ZGwlBMz9AQGc#Be{^h$*IV3B59MEDPux@Fr+fs&H zQP^-U1%k@zjz;zer16A+$;;JEk#X>qkRWtbO^g&AEzawfhVh7Cdv(L-W2bKrz?vTg z>I84coT3>dh{>^fHZrw&-_JF(wLO>_s=W`~rAzDwgRg?YpK;CrN~e<<-RfIzio|Wc zu4b5~O)90)Pa5fApuO@K_eZtvR`l;Y?n?xprOhro(5dLz7H>ysf^Y4HV`IOM-nKAwOo_fJj zguN7qQZwpfC2zc6xr*7Hb@Op?npx=+i*By#BSgDSUQt72Ic^gboIiO1BCC!%k1W?{ z4QFc`o=Khuo_t~Q`$hnHAmT)UcrCasyjZGAFYGiB4yo&|)(vE22Esa7;?10_SDU7X z*nMne^e}*Zs0@bx2Um(-6Cq6*koY1!S!?L5tajj9ojzO{%VI9AZ0kUb*GP)&yc<&5 z=eq`C$CNc3jQ0EpKUSMQ?O=2swiAf;`d}XaBLAYD=0jX8#Q;eQ0L!HgNO-jK-w(l5)&-bLPf)gPhmOHu{X^H~}rYNSL7L5(R%f;c0Zwc}e9z7a$)+YJn(N&no9h-Ro0c(Kv3G#AH{c+l~ z;kos~`d`YZ)$^``N40xw`I~on1ll`P>DuK>+u7czO4GavpMB#iv%Cgqw(IGyz?b1v z%7CAhKgaLS|DCKd+oiUFgJ)c{iNEIC|9E=(egB9ikDbgstK%{F`~+@{`=>) zZbHGg#_h#+K0ey|xI|5Q>m`i~4?&G9X;>MkcdQ5_rPQ?uMrGbnJ~$m7s?zKxDR=<; z*F`&m9nFh%)6jX_xgM$?75gWyu2ab1kNY9P!7Y#s`P*1F(#xOZb<)zN4>frNV42Dg zo5MHGn&MqObSPo`rqNRkx1p)#=ndp$)t7+nks7c`FIQeETF6t>UYuU6^Om(-yf*$! zc0NBG8_6DbZf*xYcic2-JbNwrZ2L)*;rLuC9*aRdJzhPaL`hOp{&(!zfCimYZj+Dh zc<_0TSh6|IQ3qG*qMFcsbBe>`bbR4T(yamjcg?mUDbTA$)kyqf^|}^jbLedXnYpjE zNm}9zXxCeWnU@X;D*78KznzaAnsN)eEwB(>7@T(?SY_f;hM>kojKhRSfWpqez#y{=b6c*Q+Y55dm`&vJ zyt>h_{%b`i!gXO$4Q>k-yK_2ZQoHF3Ng0KK`{*(KPiG;M!4B)Fuv!3gc4UyvVc+xA zP>34LN~c1;O7Cv16$r-<>_;1cyadB4qH7)v39W$&eRkKUm)^tpT#aIzxI>47*2-^a zM6876Z`oihoqi9&OIz%}Nzla=Oz$)nb<`V?UE)gks)25VGRKemWS~r9IaQJsmC1SC z#vKTPUk0bIC*G?Kx^4GZ_u4pXDq)&r@uSL{xZP?ygE2T}TCAh4`dXBu&*CPU+lC#7 z6VRr+RNy`0-h*Or!Ye+=Gw0p)g`wf9ps6`K;9Vu|-33nazt4P@1l5|Jp;p0MkCbvB z7JN3USL`4*ds<}gfvi~rK)D0PMV{=tK0tts&3X*plrn;0tyWeSb3^xwTsm8M%BrX| z_>Z#ht`*SGry`FpryIeR5UUtfnbfv&r3z>26t^Gz9;zS;KWD@y3%Sw3TU(va?i;~c z(Oc1R;rnd*ZTipW=hy1Bwbz`_&gp>TTgCH(H{jt(K;(zORD`$VA3)r(-s-YH#%@}C z(XggLtX3U$!6Ax;DsR&|{cw=5`Zp)wx@M;SB#W^4XWhom*crD>p zhNiaf8ou*W#|;vsJd)GY5QUGLQ(T%h<|OO!#jopNn&UgTmDQO5tbaID(?)@)X16`J z%N35(`4*&xH7;(tZ!pQKjr0!6dGaP5zlQgfx|OYM3~=QN4~hZW9$^3;RWg72uPmvR zPG`7wcq5OyE8$|L4#rdScLBT1TS+`+#_R64)=Qt$(!C@jEgAi+&ijjjnV?!mD+OC* z@OS6g<Xb;EgppG=qbo$VGru@ZTAc5MI-z+( z%TP9^7(7$<=l^ko+XF$GAR*#*8J7Wxj^}Q$+M5A&+7l50%FWGF<#a-jho?#_M`AGi z-87(9uzEBkhW3$>Q359;C<$vpch)rO9UN3qwWLz2R1gpxh7jQKFzb8qAiBg%v8FVQ z<8_a)ew|j$HF=R*?B&cJBVAj?*rWoMivDrZ(i`Sly?a^w$FB8iCCtK$ zf(QHJVMrG;qjDOz6q(0nqqe*X)g%}=(BWE8y!lM_iwtrDBEB*w%Zf2C4ph}Nh=_;; z5~-NJF9j}i0xf`kV0l9{{E_-cfAo2qTeha#X2s3S20lZDyYfb?|SC3>4JY#!Gt=)tiRr5-K(q6zcqPjYm1uiu5KqoX5@ zW&^wy=YH$&1RD)2VC5OANv%@@&yoA*XF{k#CjCO!C}uVPpiYOUAMRqs=FkSzTd!2NR(U$e;npvCJe+HnX}4k&I2;0%+)XZ{);WGmwdNPokTwOE zg9U`b@kyQj2W6XtGqf>syESphemHb0a1FQ{ueX0v21d{b2q+h6wSS@qB@_cnAb%hf z<2*LAOtnu6+@4?fIiQ!0+!&{mH9rB7B*W`S2m>t!^Jht zze6(m5^~AGb#|f6^o0pL%yEq>P@C&*_JrF*yHdFE^e`*ak&K^s1p#)a*_FENf=zXqglZW;J&;m~zsP8P(B7ptoz*)IC- z!<8~LG6_AZ+;?IGy05#zGR{uW25V1j3g zY*OPZK}=bsYbD~@&4#b^_d~39$mkUS3^^h*@e>pcdIviK$9UA*BOv1l<4vH!t7KL$ zxT!kqa@WH;Wsw>Z5Z7SvJB1xu2?_!-j0V_Efj)WP8g0e~IPa)6#Mx-KYVSsk4##rx zju{E0BtU}lj-4Ft4n-i-L4KvuLEba^l8gf0&B>XUEwmY({13d$T(NJMt=xxtu`Cos z$ENsS4p*%gS&>Q6kTL@jTlp(`?Z6~D-cX%?htqlZ&}i6wnYvSw6Ah56m;TXTQffg2 z!YWV#V#7$tYVmc5ckn@I>=;Hy>9OMAg~IFEsd%vpk!KLG_f&M<)$W7%mGEW9dDHTd z&pi_DBeU;#&yu0fy7-IH#dm9a>VI#RQJ!#!DBNUgHRGd zHpP71qz4hUDQ97C{6Z`A*Tp7GtKK5%iw@^-FZ=5ibKW<$14hpcG%_-YNl{h*0v^CD z$)sVHz&^FH!N0ITrCI@>Y`6hvKoHLjh+`$ElAP^m`uZ(94$NssAq>x54R|iX&QJ=B z_rPg!SuJTBI^$n5?F*QJj~`-#fAwjY5n-bdFU5XL!0vG@joIL|kD=R~4w{3b2!tY+ zAZw=|V<~KQf6IDTQw0We^p%cTFPn<>@tkDOzp9T`A$3}pw(hy)y7PC>br?@*#!bs` z!sdtr-U>;T+#8$u47gSxJ2Nwyb==F;$g+K`<=7MhWH{>q-{Dy{xO?AAo zkYp2ZP@X|Ki1MjKQ3xIJ$TU!mbVkA;J?2WdJr@P53#y{Oc@_fmzMq%2uu70<;h|h< zFdSeEXdP6YV5*UZRr5=P4#ng0_L z3YLI?!2cwM{sY(w1b~SpzpY!K=7{=6BFw}RU3Xe`Mtp~K8nk$ zaUYeWAvFB(m)cL;e?@0DB;W@2m#v zvMgDvD`@k_%f?6GHwCRs=7fy{+7)ll99=DA@1nXaUmNHA0&+Y0OtI1@EA~3) zhb!gyuFyCjtFf_qQyMN0*(+C*Tb-9n54mcu`$FPC#kpIQLL(ie>zi3m5GEg7b63{^ zSvEI+g3i2$tUE%1Y&wQk-EM2j1(js@vNMXNd=tkJTN4tK(TFdv&pCP>Yeac`Wo&6+Jeiu|$FZUMPdR1@uGC94J6{1dpbS7FWbk zsSB0s)I4)tU>b?+-(1R8A@I>{lgefZ`@7Mi$ms2~UTE){D1{!0YS-3rlu0Iwjhv9Za4pxxn6$c{(P?dJR1iUWLKQ{+OsXQ$)Xz);D& zWrQ|qhWG$^U1AoKBT7?LqV*-O^UH#BYHDgtlUmLuM@%C2Ztxj@A6kJ{&Nn(*1JNRI zhb1v{3=036pzCROifL7?Dno9 z+Pq#M)ob^@2CdWSjUarh+O;t;$95|IAX|dtSyb6;2*0ti%sED9oiFxr@k`+FFAiPH6OtDYJ z+%+^OIWE_k6Pb0NZQ{M6bW;R8HytXF{9QLgB!|OYT}#RpNNvcD_~=C{UssK*ScC(!)QcQfErpO$4(rC zg1oL_vo=I%GYO4KqYc$+t03giVdTu7$1VOzU3WBkTx2CnIT+URs>GQJ?%c@# zL*~y^%iT<&v;kuToW`jt6_m#<-s;aw(%NX<5ezU|^Ry2~p$KKr_`MHR41ygf;*beJ z``C|HLjE{y--KU$lTCZc7{zt_=r9-f!RGZERc7xGjM<$m7H6Ok(8**lbu#5_#nC*V>k7+T=`gXipsbT-6F~b*$7)kB9;HB7WS*WB*z}o{LyI02;6#nd$ zx>2g@*_3D?%Xg(IhEbCSXVwXMFSHnO+=)3!A`CgjLWHys?xZI+f-%>Zw zH1w|+z^;#G;(r_F0$yi`@WP}9hxvR9A{Z7uLqk&EHtXv=GoWFztKV{~SgKxYDjLx+ z&fqfOiO1(EqO%K+d11B@(!r#FLw3z>rlAYzirZapsR>WW{`JPwq}TLDNhX7pAWDM; z+0B4!k1DDA5!*1x_#&?!Zfd5UbEa)0t;XO;iblQahi2f8|8>$xfY-FxK(C>Jfq%3% z_mF_z*HF)^SM0KT^}uegR)dc${vAc(9#i7YA?tKz%rb$CcY>U6-@6qXM7k0up*5;e zZ@+z+)E0=OKmfhzBaZ~sbQDc!(<>|Kf(7_6fJe}MiKHO^5r0&0jU zO&oL{{Lk{zdeH}u@cEZ%VqX&A*4m&ZPF!=w3LaMEDP+>Ao8AUw(`XTC^PMR{)Ky;T zm{5O~F8W19(I#ecV>20pJi(f`&lPzsnkDGSc{&Gm(Vk4BYm{7HW;9DL=~orgS9K|M9pz^2=$o2;{2ag0zFBXKv7(ZENp*V2bH0`~}U{ks)#!+C+`R_;GPu`43#aETRGVJeP2F`sVlekGSy9lL1 zs(F2Va|n%8`<^jt_qw&i|IGpfz*WrZ3pLsPzGWoZ*Z+Q1sBIQ`< za4Iey_LKQt>0uuc{zH6T0CvvTFL#T=LsnYsJsCaM7^>W~x&9R3u@Y5D6Bm#6qd7`D z8jYuk&J8;G$E}hapPWPhe;5&v4P6rsU(+kxAyLl=Oj#l`_ky&Z9E31sjJ4~!Ztv5= zf30cedsQ}o7B~`eBh#E@tV?FR%1)(hl2A}e>6!cE^&_XMph zO9s()=xHKoE`(Hv+5hPAU=M&NVv1sNz7qLLuYBq?lA>$o zww$ZVT{V$fSh`pWdo7H%TI5VCXtmE6EeN-Dc}a1Rmm@U!dRKXqS}0*h33<6P8CqQ$nL zYv_~XAlw53-xS;>3jfI#A%*3E2{B0S9)YfCI4GDISCSvVkwQ- zHu`MSlIUjg%I{{cvceUkc-AxOpWxQ`2usX)$XKIwT~m(#0maHcWYOs*oQf zr9p*3P2Q!-MOx-%8!al3%>w}oozdoadqImtWm*kidP8pC7LGgr@(3zv_@nxg5=jMM z`3C}uy!efSfhLa!x?m(iIvS51%jwZ-4DO`m?l?@XRtFf;)inmUQ)rqjeze^gbeNjn zr>JwsupQFqcIdNdjK1W&(M2Yi!^hMP(70#Biywh3!;_IIh##1`L4Ng6ihbC{Hd? z5K{ZKKawI0sm(8u<=<>fRQsJug`U3Q;pR&fV*5&Nqc~D`2#-rWyP30eIA~#+!SIM6 z4Xp)C;&+QqmlFcKOgudsl=`K-zQJGRKk`9`s%2v7RNphctG{E$O1o|Yf^60T++&uC zAW+d8pTo+GKdxzcn{S7puD56`bcz*CP2w68Y*s%BcU{?7m>!GGudm`m*m-EQ3Md1v zUt9<_D^`8(MajtGcMeZO&%wCiMxg!wfL9Moj!7b!BQDYKV@^``b_u^>y`$!ybKl#e zV~m2&{eu*=)%fBi$vY-p6`|_Db^dWfANwaw2o{;3ctH5!)hn9;&P-5tf={F7yHbS~ zXPxzmii{@=2O+-$>gawM@)Oz&BO4oPHg9?OQ|2PN|4f!LPu;k^fsC9Goq-u?f?o*K z%#{C{Ru*^yT>Pe=O(Q^Y4-*pg5&T<&uJG3a;c{-V?FshSg04!6aU>*ha-2Ci6`fx^AMSZG_}n0&?%%)V!F`>Gp>(9k z)px|)9nOZDKlu@m?m=iY60cZ5k(j`inNWP(e}lRGTS4xer&*y?hjusVrD9G!M-Qd{ zWvvoiWVl=0x5_%i#(%^w=R57sf6blm;m>%7ABn3;Ao|yv% zEvefL-i0a7J2XOmxBMIO9IGaoy}xYmuPm2$(uXc91&=IO)G3kOYX9y;ZU_|TZ~;aEmylQB)Y^@Elp z`E0SMzfLX*;nDvVHQ|iJtAw;?Tp(N#^48-5P&`99H$GOCJlcHP&<`MDI zA>gG+aN6kd@codp30KQlA$8@&Eff>UiCUwkYI9ZDCTL|dsRr<+ikHfbck|R;{=B|y zaalvDJIdP>w14A$@jSd(^2@7iBh>y9<2}RYM7SiXWFo;*QtzxE0r!( zfP2${TXZ&@rO<;S6W~O*G5Jn%LE|MTr@hmo*u1a+st1B{Vp0FpJdSPCfn$9CQAY%DKz-BTiVTO3gNhZJc}RLlQv*AM-Frut zr5@2{|EgC87kf`mv^P1PL|;+_-Yj+m9RBb1jU%YX#e0^;b77_v{%lONI0#K~Keb5$(NP%@K7pP|a3E!2`MN4N zz)3$lw0Ow70k!+Z8lv%dz#~o!H zhnpBWHtGALQ7Z#YRI*Y~6?zF!38iVPsFLqmHl)uB_niei<-_3^w6K!l{=~B1NDGo_ z;$Z&93f6=$TWx+<7uHSCJMNZ$_~Yg?c;WoYSD@3O0ESA2b%fnJ)&)B7T%@bUWnO#p zr40zgl9YKm?u}n5?f_$sCikml@vC9VJdx(@!=b&<7i2lCm554IlFM*9xnklKPhQPJiS2qDC5@~3o~(@yuBK(( z`3$I*L}7;QhZksOk+FxX{#z1^0Og2YdU?LHVrNz(Fuz{FhNmJ~Ku zZZ_{wort1JmkEW0J(C1?Ajd43goU%2YsO3-p8nRf=8N;^Mf_kfK@;^ z3|K?Km9Q8u3Z`8bG8&9A%#~?^9WfR3`g{z*=@A$TN|TZKD;KK~?~Wx1 z&+!=d{16Nv1>HD|olSvinkGqZtHf`)1??W2{3)H|G&zBv%4Yu+@UKMzuWkQ@WN~16 znZ8)*-?o=sx}!OBx7R<_BkF_l^U{lgrZO5nq=H0l1wg@M;GB%%FlD6V&1RU4fOFphfOOg(HfKt>w_IGEq)`)_G)rO|HwAO5jQYWL%-0uYUTAF!IR0Z z{mQd?q4}3#d#&oX;{T7|N+6Z$AaA$-y-b?yuo3O;^-6M6ywluD|E;lmz@rF!ZO?4E z6WrOi?jyG8mrnKr&UjbkFHjT(E}O9IsFyJ-{hY}AdZF|h4Z_Ee{^NCcqnX_7uE@$~ z%k_%I3dG0-48TXiTjht%WN~Vgql&6OugDs!hBK7{uSWvbgaN5i#aJV5k-%cdB#UHP z8(FgfGvH1h>iK{{xkoP@J;uPoB(kLon^&s|HKu+RMQjL}<1ijR{Ei_t>PuDbm)>X# zdaQ-*(Y2g^t3d$!Gd4`2M=DYvTNHt%1LV?IehR_GNQ_UUQSs?*=4u zwc6&N7#`AvcfPkD@GIXFtVDgf;S7Y)1^L0)=+IcVumA2f1zOz|BtD+45%{N)<)?rX^`&j zl6Gs7?(SAf0TBTurAtB@q$Cy%Qj1REPR~C3yXQYYMCLo^7*B@l7&2lI&zlwI z;J+jMGES|83$C;uo$WVx6(iDe=MyoG&tCMH|qk9o?^k9*fI9bZGP_rfB0d^ z-(ay%ee-lwB^JZ~9lA=z3F(~QeI~>Xw~82XSv7IropaYBSZ}{{gZ1i*LWQWycj++g z?(Ra=WelzAOxkmnps%0=eo*h)@0i?gPPI9kfkUN=oRQGd2 z^KpB^*H0H$q>C*N*s@Wvk?Ta-k6_Tj2tEECE#do^fH(9sxGK_O-5HyJ1Tc|U2DO5) zJq9RLZGu<${mx1b2@uoA1E)^hg%cR_l(LsMRK7CGn>MNclL!3c#1t(^abP(0n-{(q zM;v6zZ-qU=JuC-Oy^;9IVbrXuNj*h*%L3DOu}viXWQryJ=R2R2;{wP2jsSw`*2hx6 z_?a=ZFMj7cis)R1>SBIS$$`-Li<|XObW??$G*}M`cdD^ooZ7DjxpYd9p4;Q!Ef9gq z0)EH7@o`Mh?*uEA00df*#z71j)L&Inm=ceM%ajmh_P@0P?5j%|+}^ePU$RTtkCMqD zb_Im?<2=;K_OFDGP#kGR@?IK@-l>)_$_1}W(?p)BKiOK?p+Q>@b zP0@{sAy6IJ-!=3%G>}iO0}W;1u{sgL>zkd!L+$-%u4Ir1d!SI*lL6oHy&WPRa}POr z5Ca~}_00`YEzTpQ_y~F9GCvrA-PixDvm-QA4pxJRdoHjMkHt7uFo?GVGG&E>(G{r`6&P!kSPT-KB-^$Fy zDcOh+k|ITHJe;jeUG$lh+h4rD-=C%>2}7G<0AXjCk0Dbm@A?|l&CR{gpZ-DKklsj3 z?qUdslxf6^v6|Zb8Zn37ig_5}ilw((gvngq6V`m0uxkwLFCD8DtHBN}>3-6cpD-52tyo(78&LK-KLaIekDxpT6NbohQ^$SpBv_)5 zeczkvHfiarJ7$2713eq>ohbFK$YSkFh7^jJU*d^w;Flz+@A|719Hc%=>i4`>OhdV+ zQyzjL!*DXrW z{q&FKjR>*0j3R-MCB(L~ziC3u>?8`4=i@8VItEc~henY{mpPkxKJ-+<(y?1XIU>qkx``${+a){v zVy<=p#(HWa;Jf!lK#^`mhCXB9l_xSXlbTU;WTxkP~-()a@Zw%D8&Exer!2^L8 z^jh@wzaB+R1|e7ebiXgCea_=LMbj%o%quc!45}O?SL;82s$^{?utr~EZlmc*qU`cy zg*WrnORFc-CRy|_>AuDssD_6E!t8sR^wJg+`PzIjcqtB^;{T#?a@G zW8Qq^&E&Idd`Rd$LP_VX)lYT5E6PMv8AdDXZf-xf8;izvv=H(nnLw<59rbboUS>9w zCtSYN9Bz5@*->`C&70Q)NF71ZB7!Gq5^d4ZjPYcK#vs`1b>nW{57c9kn~2ywKWf4p zJ(?#4FQ3O|66}-p!JkBv(e%H%6|go(chC)mLoQJi`z5(z{(Tl&*!D9OFVLITx7sJJ zw^$ozwm{rFI$<0y8YnKTW>MTNy&^21^QvqiV}ocag=im8knA81+oE8i4t9r966EwdokDwQ zp*I(mH-*uO{4z1v@`(cDawf)O!j#yit6-VvbA0r=+~-B{{v$|e<4q0-Yqv@Ssd>;- z9D$E2ARs`a0;GK_p=M_*OMq!%d&7nP?!<+7t|hVl_QS7JPy#*G=4@qw+2L^z#05U2 z)L_bZlkg(_sm;7@f1C7KVdnrG7&e27R)hMjd|Mj{PIi&*UAKi=H9Lm|yCT*?u5;9%D; zDy>>Ht-F8wI3gMa8U;u&1FbTVak=PXq-e+rrqq)G#UJUZ!%RdxVd~wSi`W~Ajf2cR z)Om+vd43CKPA21aFIvN51o?%}Zz4hGY9yh628F~6(SeG3swTNzr~I-VeYlDyp@4nj z2{MryS!!To>HCy{{DnF8gB@OG&upm-IM}GdHjGKf2)0#Z1+dalUVCj(8a zxsr*-5iN~Xv(C3u;bMIWDLGzQ;9iSFuIAPN`Fh+yP5}M3VTn|olcxH7TkN#b+5m&F zICx3I+Yc3Ef4z#NHfSjrPU(rR0&VGEcdZwtpoPe?O68ngT)+=WcD#Bej2<>TKaZ7f z-4olB-Vh&OH7k!4M?CS4SMZZwT{1;5a=A@mO5UqL?hs~Oy{A=!t(~8_CAz1;dnb7q z(p=rx-~3uhoRlgo^uZ_V%C0lU8zOKUY4b+{`8oWn3cJ-VhMVUpeCo6eZs!F6@`#1~ z_+l=vCF`()r@QPK#|lIh8h@Vgb*s>>C|J%xxedNqva3@_(9d)Y+RuMwE@*LK_!P&9 z?Z3;mq*>-AeB3()?id7L^7EUs`zuE>pqC0tf%?jYWrwYU0)}Wy?VG zxtp6CjwiL@qc)IOBy?F%6p;|H>f!6PZaZ=s)KdXra4P5p4fApb#en$TS`jgLAIAw` z%%6K{2P{_sGTAU}OM8z&jCLJQaPB66ekUyXoXRrtw@W#<7DfNAoyTsUX^PZ$@c!5` zq{f)2b}=gC+;$O&OT7-3u=^D>;NA~{AD(-v{$G}%C$$DvY-iqXytJ}17Eto>RqG+E zVYP(|sBc;v@)uczOMDp{99GM%RQ~DVW`@=1&;~ZG!N;}3qL$NYWZWyJ^0; zdj9T?>GOQ{a=zA(#R2rgqO>B`0{b`(+3bdS;yf#v5YKTo1Hv9Z_F3*Oi~5H6i4rGN z8%?Snzjr%zJNy#YmR`8q3-iGms;B=nZ%ot!bsr}u%RNa5C;|W4TWL(3Ma*Q3^xjn} zgzjMWp4A>f&NCM2Cl`6q{zNDvjVb&N-}ly+e(aI`lYNgkI`3k{2)&0)4As;)NEe@n z%up~;lIDwnKo2ARu%MjM||8Q~OMG?E$Dl?EYTQY~-egeQb4EkjM(% zu(Q_S73G!w2T9i_25@!24tunD8kdu*3f3fm)z8N`H{3#(%O!5-FBq78wD>+|C2S&D$ z^d-Lq62oxMGz|&UX3lXwx?UU~ThQ7a9?%7Kp*p|IESJ z81R@V7Ef)P-77abq(BKEztrN*poFbYx;mmK+trYcYi^DhebOWkFqZWsO;ek`a~EXdv1-A+(bTv zQ2(92VNlZB%N1_XMI`9DmITJz@Q&|k&vqYv!f)(ym|{N3qmqtJQ~urSQ=Q(VA9VEz z!$=@vGd?O8b&x%u32S&1<#=7uT93gA5Lm(@4b#rof#v@NtRym#F8#jkp6bVeawZlb zQW9T4bK-=3IJ&obX=l^#rwlHER)>j35}hABENf-1<}mLEJrNZMV6Epj9`?hTCgY6& zTs$bdJUy*7Fz5vw*9hxHE*(wQF>u7P6Z@p)hO1^oMI3 zbez}ZceNmCn?6+Nx^cP36gR+MZikMN+d;7`c$ie(4B~aZobsikgc4n+59H`G15M9+ zq=H80IK)HS^7posfbQEV$69L-ru@b@7U}qRLOP)NPoj>32Jn!=YI^YWN^gI;x^w1s zI&vb$?{jWPutkBxg)X;wR>o=A#lrBkiJY!?W4lo9ZK$oNPaH!KVvLQA5hMrP*1Ljx zFJB6}*tKglsoQKb=NY|JM@emq&WDVT7qR1wv5(7TZ(9+)yTQ6!v==@&I%2y#I6X{l zkYTXgtY_YYe&6xb+Z_BxMAJg2WXP3g^EM!FUcr=;C&OqKATS7ns;%5ul&_!xugOEpfQB&YVH0JVe)04{TP={G$+YH42FU zwmzk^Kw`llI0irUz72Q<96~}4&c*z=b%uv()`#okeh{9Y0U-v&$U38K@Y-*hTt^491 zz@UYM+$j&L#CrM%g+?|%d9}E#_WW`{YoSjUH6>|H$F-QLP#Om26a$~$BYR7uok~&* zQFh;v_dxW;ZatipuLY?{mW-;btP~0g%M_rbq;x|xwvHRzh;jwcMOhsf6Yy9Mm*dk! znQdQ0G!pTrLK3m{c#@t;8|L$R-dyZRo-H(f$hkY?mz2yU`<_83Mf;4Nh(Vy&snHj- z@zR4b+!fBe%9g3p4q@?uXEUEH6uZLj_N?jRV#T7j?2g;=EAp#$@35xiU$(Bs<K( z>7%x9)cRdyZpyhxG4e4u=+q%X9t{lgS}ryop*+_ zkwvq7`WpQqJ|_f+Ek7lv<^KoZG#HTvX*9YY;qo+?FW47U-+T=xOl~BdDB^Fg`qTaV zgs1=Ou8XvUo_}cfNDkBrYt@*l1vH)CHgrSQFtM>?tMi$8tkvt(RM=9ZZL)T_)>T9$ zGw~_G0gG=E4(YyoNh#n&eEYbACH6Mx=p~}!?DGeYyG;VEilD(yRP0441G_;CDSF2~ z*VVEd!NI{5>cxh)-sBvb9_rGE#%qya%Nlkczln4aAJo7p)ay2GU8)ZdR)6%BRnq={ zC-{GL6SC7Vdk}?GGF)%;uv|T^BI7rPh6#$u{<;P5#OhAW2>yu#tPC^zT$IT6s^!rm z)1g=vV{yHCLT_6QFxRgh1dKBni^pn)#}DhR;#AgyhXn?^}QhgNmKyzs!D?Ej1C_poacHSGGym0>1WZW&MNtR#KIG`;GTL=n>H zYnJGI){hp`AN}*%-!gOrf3zGeLxmDcFfGd#6BZV!D#**Dk>?rZC9<;X1!DX`GrZ6y zbjgeS2l!gl+z;olveMA5hkFT#x{U%oc17n#I8_;x=oP{m3e93=vkb6v5DU1YtPElH zMYUPg8=O3=ww=;`^y>*el1!IZ*{M!s>~r>W-DWK!5)pU`_hg&^ktm@X^G!??Bb-Ol z9bbvkdM{ojJBIfNvwt0yQFXLLTNiBPVPK?@!t*fH1_`OifAsCc2yHJ#L`43@C0#Oz zYy^q`NUzN7=5+1H_{#+@|02fSvAj5&#NDttDyC3j{eRV?MMwMFUaES<95YHBq*C0Vf zRzRi~*7}m!@e#7W!36CFakH9OVM#UI9A95-f8a)Lv&&yNZJ^{dqemM=#kRxR_c!3XSI8o1TjcXGKa9l8a2Q9fL)l09ts%5+g;q8bGcl z3Of4W<{fW?)o+H?%}-|kWflH+;eCU7d9tkMNGt=NFBRPW&!Qq({zfi^Y#CeoHzwr@ zGWxD6o;O-pZjNMQ5&^dv#I0;|YYQH((W11sl|}>O>B*6EzScBm#7e;&@QG#c-{HAf zSy^FsGc=O$4ms^OCO)sw3}%)jV_>A~dPwSS6KcN@)|AdfrB5TV;a}2J%9I&kJ;>%0 z*1}rS)XpRsOh>gzCl~&}r^x=MPjV*qe2?i(c~#bn7}8Q6dc)37q>7rDQxSq}JbY4z zuUS=|NV#};qS~TKoSbT3km0lW`JS%FmwjQ@DvPRLBolNYyVd`qOkzLP(@SjFdrcxb5P~?3TXDYm6vz3q`VTkSJ%$vI!eP4%YTChX#p&6fbY<_84i3~_j}*|>RGDSavHLd0#SNZaU4aY>_8vI_j*=bL zG;EIKKjl^nSo_Q0c)PA$2dXR-3nu`^wc5Lwe&YA^xU`^$2+TFsA+Am81+O@or)cuq zO&5K&xtOx`YfWFmi**dZMklq0K6eSpCL>oD3%N^oR0_YRQJeXZOv%J_`#^Jr_Ot4r z?p!iqDr{NlKZHP#KITe?JLY#{7LkjAb?n4Ff5+sv_Ci0Sx3?5hd)6oQ+wqiA^SkBj zOtuaVP|tOoSHBYgg#t`1mR+gG`K{J8Y}ur^%5MByq5NGKmgZVbntnkcv|$x=E3wWh zBi=A^HhLX{J_G>xU()}zW8YT^;EJJUqr)@ke_b(M(CT}-7NMXm+u{3elYdR>0+6`> z`Eb(QNKvrShYqZ4xq$>70TC&@opxCGmCupEbR0;SXq_R|^V{6OXMaPCx0g&n*rh|H z0n=+i7rBlrD5xOo7X{;Na_Ecn!L=QhcqW*5r5!sLb~So&{~O7} z(=EDf%KQF19U?csXNkT^0VT#BR(gmW%rK{@`|azMj(|k1c$)4kb`G`#`=ugk&j6f~ zw=#{gU0w$n7(Lr`W-?y12E2UJpf#X0WRe-z!(s z7TjkF;i}_)Kz<-{l_lSfhytx9TE@ymZ2R5cEt=bgP;4v3?vuDfoZof2OA@iq zaQ02|t?j5aFm)F2jf62PZzuOKnYk4gu9}=5$#!s0IQ(1nfpU7|_?SI1ds1!?K^9Q@ z1A$Zk7NJphf24TWnq2ou;G=h0NLft~)T;Y&PDA<9{8?!C1`0KY(t;Zi)7Zr1>}ZJ> zy0qTuE0|QwNBX6Bx%7()IX<)Ab~(>kG8OXKqLLM)XkJOxjv?tB=B{JQNc^q1k&(!Y z!RT)B;Cqx&p%99SzO(al+(!2z{iEN1kw2!vBw|Yx3hzVuG4HJj}x8i0mdz`$^x z6au(;LsS;~`ruanjI!tcTk7>2vQhWJ0x$bZ^sXSs?&HUgG(}TbfWRQ!9@?ykH%=6V ziOXbmsopHfJWFsxp9gjjsk8!kksq_Td5>MShD{M)KBxfzFg*he%5Z7>alX<45<4fE zRCpc?CI0!gu7{7)72|j({)GKLjH;T(r0}W_&^j-0$&2TI9*bTj0AK0^J5u>Y5&h86RWA`YKu0fCZwJK9>_uDMPkd zA2u9%6HK#@iK6;~j-Cr&M@WgGWNeSMEj$~s6$GSNj1H5a!kwQyY{8&pB&H0yC8;GL zI?J}7)LJ;&(rPauyIk3H%gLg70Rtq7V;zVAO}T!Co}r#{1L0lGNt0({iOyV^J^m-j}X}RPQ&nsi4Th3 z5Dh%XC>Q%-F@Ek{7Qi8tp_AKADLW9jH&HAC*(g|9RlpGnOmWH+4n_L3@abAyq0iXq z*ooU*G1SdHC8(w1!`*U$QS)(>g(;pE0P)-wfEUBRo|>7+Pl(Ys7zg@yC)Z384e0|p z$LF1iOv)_a11$3m#bz_;qSzjr&t_m>W|5n#`M-w|O6y1kds-XP|2D7FjsE)$NgPEd za!8}W*lOGM(;f&$Dp8(AMT4?rpF02}xA?hr_=-`{+`s1y!4&nYN7{hsO4nfgGjyYW zFq}nnpd|G9iOQFtRxxkSh(7T8$g=$iX2{nKIBOiu%lIC%F@hGa*Tih`ei3X518jAUzi*gjTAw<-dQkPQdN~thLNHms! z(sojmj`Moj2=NLcb69P`ONUwPP?yzlb3S1}@dxeJCJ-v%T%QIjaM{klu@!Y805@=b zQ%kgG0ApIeV0NUK-Sl@r^gjj zY2niV2nBV293C-9B>qXoDV!RsP8LB!j~0Ia2#lr!8zvPFaZQ>$sdVqTB#>uZm`vDB z%lKka3!;+pzcOj9Unz%8J5RaIeOf>n3}MC$4VAz_*i5+aJvQKREb3;~t{OO+&q;QK z@Ha}d;w4bcA7l>UP!JOG77CEzUy`!Pj3SMLp$ujpElTC09=bFzCY8TG8X*iOib9iriLgykF;Y%P7;<3Zt+s2m@g zT5h8M{JB6a zT0zC+pBGT1Rw+D!Jqc@Z&FgN0D7Qy5v9T$|5!U04F~mY1g&rRt8-IbQf#H&XIDyXr zfECn-cM$(C;}3WjdeY%6`j_|EX9JgQKex{;h_=Vg6!G^SsdsM~r(sN|%Ti=aWnA2~ z%lynWVzJ13P_IFNa!=$;t8RKnTBGtSuYDY$4PqfTDj}*}I?&a^s5mB}p5@!+0ed`p`%Fj9+Pc7y!LE?jJL#@DC%4o64;)Q2_c38D2f9JpQK-$$Xi8{=6jcWzz*Ad=$VLPQ+ zG}=CP)Q{(PDzH4rT>;6q8fDE0Kb0Dux`Q8@7hkE0_W?ab&#zwuqj1I){_aVMwkw@4 z95;k$?D<>$FWy2;y}va)14InZ{1}+%ZOCQGC94W!pUf7V@aDUZp1UNTq{BX=N9U}HsV~UH($;ip0&AiL_dSt4+*w#xA_ZH*dGy7-Ts*@w%z>0BM zTxwE_9-5CQ3@(26FHVE)e1%%Gj(l^PkYHarAxFT0xH=iKfB7%S`XAgXP8a_Ax*FO| z>doc1XxD(F#%j9x>3e=A2IQA>R!+NU78MVVw%|Q&sGS`XcpDfc%?)FxH@C}G&2Xd+ zQQ?|Jd&+=1spJ=4Ez_{Rl*<1IO>#V5XVDz>8>!K8*imfqP=rc3I_Lq*Wi@Qm$@b@P zVBd*E4jw!z|MrcSWweKt=(AT#z>l#Zt~M{bHwql4F0mhW$bBUmUDw}@NZZx^Zg&o~ zU=BJvvUxFNOV*Nu^-@4J3bp5aY5t?yOQR_+k?Mfl_KJEDXl2HxbCsdXQ3_S^*3^9HYW#~(@}u|+ibegl|{ zr2!+BASU8#UWftJt~vzNTST{i&emf595yi4O*K_KPksHP!h#81B3WQ%wb2)Wq~NWaJ2ENRNH(S8!4?aivttN8B;QmTM$BGHAXUTJ{+KAZ`2U*(=_jyD0Vii6`_ z8(ohqTtY%e@C6~i$){4FY36F-BQj(G20DC*u58c`>iyA3vsUt)9N%qD#^G}OEsM8x zW^!VMPR`C!IB~`WoTeQ(=mz73g2?s+qCWhp~k^GGy;}5qmmD7yEO#2ekq3 zXmD*#ByQ?^V=58ou&ZaZ3^YPa21bJGBtZ($RbKlUx_yuK^oiI$cRuvI!or_ac5f^i z9IYJttLV}jzlw{Bu5yPS7&qFllWso*Gjp=}Ymg*%Umq)Hh|~R)pHu%YHTpj;Yl#jd zz%dj4a+oK$8Hx5g`Dh7ghv{(2lUCu0Aa5kys)*8KK%fvp-M*IEonBZ#t{o9-D~-n8 z>XH{CwrN8yAQFlW6e@2^MfMAK>yQd#Kv>`p5sG-($}A>Vf*)fpOJy98*rI7qQYEOX z{Sk>y5p~|(Dp;pNz+Kw#Tauzx0RE(_qvU z6;T+H3nG$h1ml-)ofxZB4nXZ@T;jo$P^7IrSC{(V<&wdZg7F%zsZNRVu0$bWky5SM zn21wBll#Up?Cl~f)H@i1L`9&?{SWT^pCly%%&FF>7pGjsmQ7NRK)!sG{Y<46gtEe3Vv8#l9nc&-lJuYZs9 zubx72Fzrgho6?Ih`d;-ePZ2WkD6($+47tw0!2M0UM4R2P6^NrBaZXh2pXgiQ>%r=z zR4)7MwcvQ_@9OQk0w_lquExIqvAD;pKnPHwLx^1S{0?(WY3(}IJOI)x3ga#6b~A0| zt4sWvt-?#Jb_cSvvDqFRA?h$sw!kHjsX8B!x za)2nz!eIB)3AVw7oIfd2XY%@DeZKRi*K;z6k?Kb(@%d{woFz<~xy3#@fwr!oh0bus zL9Flt`G%sebCRn_*qtzgF8nkTlp_vk!C983i5$==NoVdRPgff$EYg(@x)>LiyC7YY zB*kJ=^bRi)|3yv>%g^^WmMa5)WMZnOWK`AUtMb8`|2a#*Wi3mp>8cBWxA~qD@nY^E zH%e$nLb9Vi1QIR=A))GiZhk{t!e$~QBDX?WU77Oai6Wl37h#*<2$Y?j-y3^Nx=gtG zRxyDFUTWcb{NI){UuT*!Jlw)1*fO>DJC|B)*>YqZ4+jT^A`euAF;6c^Ms0rFMWuO- zqrWfX9YTTGk>D2&X{obtu|o{BQV=S%2`jfZG#Cl1+hDXKq*H{$U=SMX_;~*oB?vDp zcSGZhZ4CRV6#I;6o8xi&@B+%{_ji|Itt0W)KkNQU9hF1<;`|37_2rUEOR0e|6#+A% zyIaC;NBK`=5=pm{bZXrrE#y;J3pI5quv?H$yc4RdO_pS=b@!ICpiejIM3sKHzXxm= z5hMkTqUvJ>p6bUdPWD+qJf#8$DwX2|8&w=oXoF&TNvd2CuHjXcv+HX@bSH!m`!}EG zt}YLB>g!g1j2(9?2aT~xEpGJ30$B$+Rh4RKHpxZ$7mMD;LE@EP@OZIm)1yJc9OWzB z4p*PbjI(*h(AMyLWBmdGB4GGnH6w-)tQ;1;B!k+SxFCrH8T2(Eow0YdJr~lr++W0H z&6yag3Cmr+jk@M@+)3~uZ+EQuu*2cImxi6wjqV)r2Wa^t_}w0^oymmUV1k-Gi$>%K zv{TaxizcNgOcxq;@m|-wA;|w~4M$Yfwd12xsZO6D5ddNRg1UimdK%9dq7l_3@qTdS z#d%wRz1j-+uF{=n@5fOvlFE>AU#w3r)%(x}c>Rel6m&^2y*v^j&j0q7=xI_I=^hsY z^AfsyEFy}I5?P%t{&@^jLSI!)|NmZK8R0cYNC5CPeY0W}>u?4hzA$w1tG$tZ{|CHQeD3xrW6 zRDEhUC!LFP?1W zQo#Mz*WcF{DAp{$i)^7+FZ2z-B*orW z{&$T2w}=7!14Y%eEeIChaFOCwJ+er%b04s_M{%jXiYOLo{^2;$$34D_StBdacJa-u zJ4ADW({AoFzkEtz49P`Kd6Oei`d*+2g0uhW%9SE*(FwVs`PpN>(Al~KN)Q1IScjxy z6}Q4cr6($j{E5>q0!z#R5l}YHit!T(iwuR7=WMMDz2|2Po{n9q_w!Tm^Z@e#g{dNS zU)?K^Zm0(aZzL*%8qR~z3b=^Q#@!}fpRnj~0{j}&h`z=t`udvi?_6aytuOUmEZ4H4 z7aJ`T<6LGxCJPO)ftGC=)mS~_^(`)D!;iRZA3kufkD-)gs8a)}*3rD}PIo_}EX54< z)V(%>^-yoGlu!70O$!>8F2b6~b@j27a-1RNr*fO2w_q`bb?FbZn)pPrzc@s&wU>kx zzOiYOK)-wUYLn=9a5rpY zPp^z+rp=AdX-bB$;E(;i31{@o0LJG8MG`>B!Ker!iL8~E`pkQiKV&m)GvWMYx+Gq$V*>tE<;ZkKN!X(E>Wo$#lQY`SMu4dh|`#3q{Z+aoN(R`>A2gR1- z3MVVfi3}x5zhk&~1aRlwwi}Z8J;~A$JV)wOLd+tLw}w)YrOdQnc^xkkAb7LteP*g6 zwTmYsBg2rxq7Wrk7?)7j{_b@!5EknztG==jUbnC2w!v}_6!LPNWK}4s08@^8kEAWj zu`1QL*SeAS%9aP1g$nF~1-bZeyib=KUjF@#(Q`d6B75stbX*uZbQW4pcs9KA#P5wk z%BP4g5`2zf+NCHuN;IvAv3EH#3*4tffaj#rc9^#hi%tyI{1!kjw3OdBKZEikCV+;$ zYvP;!21;_A`26%j=Ib=UF0|Jd|NmA7vKIlhkC}A2AKU%BoLI6Du2}r4NvOPBG8_&P z)C9_yBIeUPh0ylAzW;h-_~sDF{a{lV7B|x|SFbK4l``Iolatd;yyj?;&9H;6m5UR% zJ5vVYKN9hVc(D?_`T4sPG5@r5t`*mWQM=bcL^i9wWp4zc-Rk!%qT^5ZbL3C@CexTZ$4^~mif97WxhDFYrx0WJdewjd1o@S}dfIm|a8P0H$IuG}Q zYo7R#>;9J6Rkj@V*nu5`ZG#EEb>b~a+9+M}wI)B~>}8*8g)JH9m23z4&^Im#YS#?* z_bweS^jbV`mJBv_n~Xpf111jF)_gn|p?UK*qjS20s8dLIk+y$(ySvBxXaH^su9|{a zX>FDCs%E;7O1oW4Eh%rCUXZItGp#&H@ z#_@@#-qoUU7N!(Dc1~p7w%8XnWe!yIc45YwK_{%im{@3f9q~TiFXvu19WKnNYtP?* z9%}lz(EX`X`4>xq$D?ybpBzHh)Em%d#FWnB&9b;mFaDnVy-BFkv&1iT-p ziD)C4byOZZ6ReL235?0);UizucEi&}k;Au0v`O$ejPtZ27}DP<>pDWuO``ZP8edcF z?WFXdcO>=*NSToGOiTNMZgt3n&RR`orcT5)w+lX(RH5?s(SITk(2UjB(*r}u6`pAw z8Kju#Ro|Nm&Bd(NG9FFBsE^IRJVST|^4D-ZzDF|z6u@4lsar*66pS&&voSH+D9EW{ z;VUrUaK+r`mhnNcPH`Rua74Gq1h?N|jNQ}H@L(W#F}tr~uzS*4O9DLxf|LjOWZ&O2 zzM}@nLUPT@WYJp-`xFqef=Zy65d|FR;YN(I1K8VHY;SNssN_EFrwBMLhW&1FO}u^n zRSg#y8@2i;L);TglfO-&*SOmsqK|<&S?6Pz-e4KL*#QXtNBZ`59Ikg0 zK&+8H|4OX7zcy#-Ch4srw6^s}pAPw^yGlJVV!dJ*h35peTN{`U1i+sg@znWh^L;mV zoQ~bY)lt~`Ho@NQ3VVxbgSrRp1++uMnKePf#DPK=enbl%Sa9%-ZI##Gsuf2j?r}2r zB6N$l-oTW{Bo9({A0xa^bSeQ-;_b1EaI84@v+PTf+4#?mjYRJ_y?jnq;(>zADC^Tg z$(L4!kKb&z>fD^CVH0h*a=kE`n|=1DJ`jlxsfNptd0`;3cZVP?SSZdxXBav#h|G%w&L>^wy)wrL_KfGY&>xP9zNh!{rIUmfO zF{6ES&9?t7gyQ<-37$2VJ#3*Kwl(OiNU@9>C;2mgouh%sQ%XYvdvEgnP&hoYBn#ui z>*{n`eTsBJW^zLSwessuajmok>rm7Pl>pU1o`^38%AXu2Et=`}^4xv)ph_g5(F7R- z1KDsPkRy2kAxSgZ=|Y-8#q!j$0*v9P*S9O{I^&KVQWXM))R$T>gws_#BBHI~b|!&} zhhJ5yC(oNm4oTC)afa#5oFm#a4D9b7L0Gt|E6g@d_^y!YD3~v1`!b?vZHYsr*s@)F z8yZlSO+;X3(HS-g>2@&{_eE?E{muGn3RIg2iHM*-Pj03S>9#G97e4jWbdBKjdf|7gDFd)z*g@%luOXtc2F(e}ec1lQ`D#Ua2~%6w@_t5N2lqf~5Z8(F@6r&~=H>NY*{H z;Q`U_9+&TBAQrGmv8^(LK{AN)iB-Z3&>PhMy4^Y$~U43O>MxFx%2v{`U{l!FnK-9=jQ)A=H776r{fQ2Xwg0t|4r3Frtl!%YoOze z4%gcODx9M6EaprYK@$@b3A5W^P+vV$0=6ugfp21p&LvQ&2gR_k>f}4I!SIGglwE_E zmG+|0se)WY^4XwO(be@+?ths5_)9&j`)zLMJ08N7V?_@0iReYj`8rmFZwsG|;aX0< zlz5+oKFhO5;Vtg83Gr#ph*c`II9cB6i1w(ka#D=SoS>b%Om(z_t7CtvG;(oG<&g6n zQ`^6*07h1s6gZV)Zf|iuX}nc0L(pcfSXeA0=IPVpA*yAmBt~|Sb~pA!esGf;eld>u zn0(mEAtu#&ski;%0x8|x^xof+Cme_3dltP4Ayi?&Z{8W*QxoJ?3G=5Y);7Sfhj$Ya zV`HEU{6b%dG8Xkj{l+*!^jHj5^%o1lp=9Q>BXS{mA$Cx8gRKk={TFaO=>^#9@szu7 zGxz1^Iaa9*S&W+5P_PnuG`59=gu;vz>6jhT#~@;y)|OR0)M^gf>{-a!j(V~{61ji8 zWe>5xUb_ki%7RI&C7fb*=Qa-1~ScynpJemZO*5suEd{z=WeHLuz5)w!zMy zY{y&gSv{_GU>lrjQIKezb3%z|ThpQp;?pP3fNS-bxC3?S!>wPwWO|j7y5u)*3gR3(5@Cszb$Gv6$-LS9Vv9(O_ zF9mMRi$Eit(L+cFL@j@wae zmyFDXK&V=8PN{p2{^_In@QaMnjdEXuYh2=wB(7}5;)}^rnb@c{Uag=IcfDG}=+LJ- z1t;o|t3TO7s=Hv2f}nc7efw5An}jYfOG>X|CNI%VHTDvbAPs(k^e|6po!?k_G@?kG zG%clfZVq3RI~5tRL1%$J6hYbI5)Cy|Y88cK%sYm^$eQ{pB3vF@j}*_Y%#Fmr&=3uG zuSUNPE%@&4uJ`9pbdXX_0E1P_n?x^Dk$a@6shpajO$e+U)VUb9%MN3Zss>s4WO5W3 zBH33!J}l#t438rH`{#H5uy_0D#lRbGz6q_C{utoDH8(vAu(9uY=Y(VZPXEG<=1E(9 zAH*rv0)cN7A=UBgi4%=?%5Mju4Pd5kbbH!HbXQ{;8l(9mJaPR_Ebs@qdhsj7!ATVH z_K&J}e62mA_*hscYn_R_wiD)HIE4IR*$UMgDHP;vy(-dfb+d3Ymo@>JmSKcl_|dFW2$%B=laujQ|53>=4tvhlI3^kpE7ybl33jK1Uxif#M1jH{@XBgY z(#;=t#mC|3?oH&X7r89ss)6PHx6( zDtX?A^Q8cvgGiJ9-bslE()a}DSTeK2gM*EKu}qL}cth%aqsyck??ngizU`gurAQ#! zi3I*2(!J4OwP<6c&$NOK-cfxP&3jAi~h zWaZQpb}1JT!|{&HhSf@NO{1n-3s6@W#`!&9;SciY(*-q^6TbexAerTC&v)IQT#n0r z77ahWNM)wYtwEv2)CVK;(qzIzk4==0ZWvlEN#47)b1u!^JjopGW3#nf{sA7!I zAGxHdnc>eJXK2v1QJEt!suEVHf?>D2MKgG3`jAF8Cf^_xVwPZE7n^awH2@6}u1R}5 zBZ?%G*Yg-(4AaMvI8irw(>IEpnp&grW))-gG1bG$DoNn!MUiMB$$%8BWF=9B^%J}> zyq)=6WSl_O!J8aAPms++(@h8eJ%bhnrZR?JTP0_hX(^J*%i>K-MTGfdp|9&1QhEtu z49#OhXSM`w$MZ{GKhbNa^&4^g8+tk+gv!+7K>(@^6lY^08IGeqvk(T|XU)B)1@h0`U~rml~89%Z4>2f$*+2Ph=2c(i$T6 zC#+2M4R6BdMr*uxuI?dIU$?D3W}gDWska~2uaIb>cvlXEnOs_?ybGBOhu>}r#>c0@ zXgMD4Q@H~Kc?u?6AtIv=-fU}a^}+2_5Wn=?@50FS7@XAUPk9oK)CF_)DZG^v@wXj_ z=W&NEuO{q^HEXY*r^-xtlL|y}eX5TTbkTcFQfjSEw5e;++23aQ_!Bb{{ZNc+a{q$(tAE88wVTFau+#ajpz?IWH?tU8BrjLxE#brMd$=il}J(j#U5$`u;>7g zGWK#aM?1Uy{7_y_dz(b`|1ouzZ9zqgwx+wgJEc3NTe?$Px*O^4Mp7D48l}5iO1c{a zX_SUL+2`#0oDcp0VX@YnBi@nTr)47nCo9daQd91%HkTI0FiG)21?I zvvhZcD9XK_GN$sM5&3e6(=Wa^+#jJlw>`U|C9(4H~V(BOc2=FG!@>)%TrW}{jXQUj0RvIhnSAF|p;r-gu|4{;F8 zRSsj?%*9G742f=n^t+=u8U|~>%2aw>8k(B;hV6!2fX7o$Xy$GGQzD2LOpQ@Yjd9Tb zm}*@Z89`j76f4IE;<$@0UDadOgprrwsyW&`NjTtBc`$F4Lz%AMl}E}Bqz%Zhi7XB^RV;VA z4Z}YZ2GpU&vHL#Atx!@CgCvG2Oj&LeSMK>7N57`o>)Czz3z?EQ*s}GM(%!`u6 zX=$dJ+uO1ak~reXMgSqlakHgMKOrHXn^^?;{wPLl7Z7@S#HsG^qpLNxVCWHL*c0w> zw#3r0ee}^WEa}%E>7NW8C?NiT%16M|c>X&$pP%cYWhnHGB_XhHY+OUMo0e$cOH!D{ zPYpu8l@xAL7j0U|b}zz%>8B-qucd@a5e zQLqhzz48JB^05GgMfkjD+3t)Fm)E~~B`~WED|PFjR`%r4J>-v#L-roU)y!Nui4K4F z86$<&?9)>5oNYdAa?r(RMhK+hZQlJt$72@aeG2|;;1zpvk;~maEk%WOhCzT4g?puA zzH(2RfApOwKa41e(hqQYdV9N(KEUCzPxFN*=W$%qLd(frBodZP=8`=Y!!p!}7AMVw zuQ&ihwQw7DlOq5F!9>8IaQ;&7@~1Qms!L)L zeNwj1O(Z{$>#=4UO+P+j&GM^`SekK3B@U+acSuM| zcCY#DCO;jVL5EZab)V=?QocqHA(WOx-|#aW@}T`$iv~X-3a8GH;m`D<#RCEi^}e)K z#FIl<;FEwcM#TdlwJjiSJYzK;hiU!=fd~#6dCa=u7gp9Ra(`o#3T6(~;KBBG2sj8v zw;&zV_1C}JxbIAmhTLHMinab_L3mMNzFTSc;nJ_SzQ|gY&#%n5R-$_!OUU&BrVB=s zA98R}zX`fpYyZ70< zOynL5|KEMGy=)Zlqc9pvP(Aj*OY;@Ql1~w%NDnp7qstU<+fTe?r{d<;e1t#@;mReD zFv2o9Fv$~DL_+5*n#%|e4{sc)uMPiUfxOPuV?dYtc!MMS5Z`k>{iC1K-auP6>k)jI zdIEmGnb?ASo?h)Q_EN*ncQ|e|Zy&M{4mcdzE~lx3i?gIynBeEh{mI!oI7~J#<5|n2 z@M^e&Bv454H!c#z&#yAE96f~nSF5!Cj>pD*i4e*2Nw5e->$K5{yHMiQ=@bhI3Ay?jV{%@W|jG4%KwfRD}4*3I1e^+F2&`cthc{IP@Il?l}aS-u>W4HK0 zQe*l%okEWtPhHNyZw!BrvMH?s=KS(9 z1`j_U!b|$RTOp*0&v6yvTW1=_CQ#X>aDiVVTP=K7Khy5{UqNAUzf{%xz7GXF ztn@K9xih_B%mUE=t*4q{@6kvi-ptuj`bQ`hu@1PnD$`#wnu7So|JP2`vwX0dxgn!zvoJ7{h~7tLa`u5B@tE>&v+hiiwlZ`H8VwC{S85RN}B9Jm9HVv5I*JpQHX+$+Fo%)b40Gx3$HP%lh zQiX9)o{H{mz8j~ziq`Nq& z?HnkMy>aMK-U$Uw!QNM_RPy&(s_`Um-BDDYiqZaVQ*wb~L3l+l;+(c?RhdDP<0Z1N z1O!w^g!=>QS}vDM=RY?Sc!c?x(FybY8(`byG= zX0wYgJ`|`h*v--{Ag#2$DIcNr8sVbwvDpLy4#<1cxx@dFUy@WN^7e!rGFND0Sstda zY*ANWpExc>&e(eEgBS81e(TRSH-Mg!+HGoV{FL9|)V+q(nMfAfOf`TU%S0;a6FfWK zP0~2{t@|@4h{sGV#EN)YbgGQ>J)qaw4LOeI3F5PD7$7kD*d$+qFEC?|w=v>=%6`Or z^H5?wM&yq==hAYXslX_DygU2;VV7TpV;$j4Rz@GE%RxiNl!>GRT@cS zzZak+Lx5_&%P;{4&Z+VOt~zWISt^C)TC2xEyCoovZMH|v*8}?y-(|%jE~;(5m%=g#hehy5-drCt>EBXjqPj?;T8T{uTc>QKyQRum^5r*mcO zEcST1Q2p}R^00NXwrqg^_n#YQV32?5W&O>oM;NzD@8m)1Ps_I z{Tyie%ZGq8wRlyKHR4WMZSy^zXGzLPN48Qh77*WpQU(MD@c=7U3^&(aSkggLx6{7= zY5{I-r1@=5>ryA*)kkUf{(@5~g$Le>yNx<|ya9I+pR&)zBP=jspeHHcQ;}E6A>d`O z8tFq6ub#@Ld6@2%_3@AasUSp*Wb7lk?EUd*dgF-90_f<;8yS7i={(Nu)g2 zYsS)HGYSQ~M?57*rCpemRnOT9Yvw#OudL*1>52P7p_K#zt-=*HThY#>2Jx4|iEL)KR#N2l2Fi*&;!iyHT4 zop-gLZgw#T*@;{=vkbl=U16b6bNbVJJj6PFX8d>cyfHg46aGHK<={>tmwta-(}hIg z(-(oN+w4q`=zDV`me&p|qSpr?a%MA`Tg|R_P?dYIu6aLQ zFSey?{l+Eow=WZcdx3ELgus_Pb)yOh0uJdV?gg|901gy}D8ynp!X%R&DHAUunrS8N zb%A2#oWIU5P3|kl5<03tr>^WgBN?j$MS#;N|K2nNPoXm{U@ry}(oVlmE`^4Uls5&u z>fQfTy)x7VN#} zdv%JM7yc014boIK78ExJg-i_k-`VNL3F9NGj`~V{jH(`M9B~VU^i!U`wpTqG5fKr^ zJQ#ADGitNyhEl^nOY2%^M!kDeHvTb)4>YL>_&(zJ1sE`gZMLPyr*GmNbe95r$);Nh z{LK{B!t6NC-|TsrF3gVU24h)W-Rz+yOZk-D)}qc8<}Ri8e-nNLWq$>q?QVbxSh)el zBl;=E=6ry@9RqIiS$+W2*ZTGYO5)_?|47 z{fzNgto?uuPUTYV+lC!}sAG8d1+qiy{O+4hm`Y4UtgCL6V1P=k02U29?PHM#8@gkT zfDJF%*k2d04fD(LxP6R2z&P zp|V7D1LMC)h|{wExjC)0;w|cydoGJ%h=d`jT^&J~Z-^v`q(a&R8kQs3q~>%JVO5`> z=ijz&4q-ghoj)k z2fvH;)wh}ZCIH5?Xv(*drMv^!BbizZgVem+(EkWW(Q;*&o8Y4-by9tE%y?`ImA#34 zSPYiS>CszZ?zwUK(VjHg^Imt&)eapSu&&tx-#2i4_)>;4-d12z2Nm~RxjURnx?{R?m4n-LtDmb>a!h{rIe(p^c*%ZF_5Xy` zyR!O_rft1egz5*MXy($#loR-P$Puts3#vy!UIQ~)P=|l@+M(7AKbkCdW8UsGiC)lc zqc-~|o0IBK*MfOn|N42gZN$s$oSc!^awm*SUINUsUV!{#{C&}qa@n)kuM4qTWzYn- z;+Yiue(ifKJ{w$<`_bUQ-a#;ZU8$SIKsfIgmj}8Uu(J$psk*^R@Mj+NSepeKj}PV~ zt6ITzE@+wUzs)>31k`iq?^(YFcLp1nHYFGsafeY?fY}iCRb*hUN7|oAd1fk6M!=96 z%sogv$^3+^N;M}c<3Fmw zLQlQKwBE#S=fnoMhK!5#HrT*wh4%9Ds!L}FI2TnqdNxcf0}fp~#Uz!TxJz}kq~0F1 z{V8ki;a7Lkb0iB31LIt63E=C4_s>Yg0@H4xrBn~{^71wd?OU=aZ##RryTc6et#%IApfKF|K`+xNSa&>5sCGAZLSnGkFay^(pB|36RHnN z{CHyvS1_A}V=1E{|IsFSNIRP`49$lh7v)0!`_}}*AA)Mn8&n*~YdG`AX2&|(c#&B` z&(_+?P%A*h1dyZ+p$#89{U3O(wR-xrMOF`h4Kj1WB17l|G!c2*!Bnz`48;Puf39>2x@cNs3z-P!Fp4aE3K=xSlfihzDk zYjbl@doK=Dx5E8rA+P@4KwVw_YNO}IAF%7vo!E0&Ve==@-#EM>0Lqe0y44Jl8p?(L zwFq&hmQv)I37kDw##DG!#!munADm^uFF)j^M*eD$fM*@KPsX=k^yN*cxn9>$;wFzh z1YI0idHOf(cIU^gz%O=5}`NY z%|iC`m3sUhM`>7pHQs9l@j;4u>Ki0&gsx=ioggc*vw_qbMH3zBD0L)1N!)y^BE=AE zkICD&Z_$+ve8F~yN=E}xUf#OV(N7c}zp9p4$%Io0;J^FXJvjq~-| z?{yNO;?w*y?5Pk}Q01az&kEcK`#T8EBCBy_Q$fKxL)>WAJIh4ju{aXZ>aRw<3SF9lNt|jFP07RzgKM93@Yz{9Q zrYe=N9l>g3hyMl-9_^~CDo-&Mq(>UGCeup_tfM!L2E55A#nM9Zyk84O5+Lr}C{#X! z94!UCQ@x@sg|zMF=l#!(8{$syM*`xRH(t7me^9S?ivE1c4}8X)*9Aty5XgTai;9ZE zz`z8-*SYkB&|K!8yTN8u#N{#sz6jm6lAX50pu(^vX!EThDusC|EAliM?4 z6LfvNb-}2|{~u|LLY&9M%8LHzqw^D{L}=03`+MUtg+tLMe8EHy>72r!#qw4E<}fhv zC`UgrYRCu&N>dOD)W?-VLR7iqZYd+c((w2MvJ(y^nVOQL)fzV1XVto+`r$_5#_IV0 zC0*f?W%YJTS~|2xuKh5UT}s$h?jQiQv3qc3=6;dZwL& zMjor4&~SEF4-Y0(Z~Ayayj==gQc}|WWEytm`4N|Cp{6^e^h)aO=Qan*c&2V5J1iypXsFk}pG}28J^CDG1ST&<9RStf@U{a?R z!FBh(Rx;Mbn5lkO>0~p?YO)BW(_0yDlHhjvJ|N9iEy`S>Gv{pa2G~VNo&0F?=%j)) zzOF_)k=QeDF?5-WM`Ezl@pjW@f@UGX+O8L18-$!^nO-&|C;l8BMwm|_9Hk&0m0Q|` zU?LF9*X!0mYWWPpM)AY>qFqrBOC%xfhJUw9f^W#a_&~d!%#i0K4fcqCml$qyPF93C z+RSUNQkRl>MQp!fmd|zrUum#dgt_+j3S`Skn+#$S0^D>)gY~a~f5U7bdGwVM5ez9~ zU%&M_B^k!-VJFDa@(XxJi1?+qrj8r`J#XW;D?4YjEy^Ag`a? zCdTSw4s!x%b)c&MdJT{xKqYzWixWdz(a?cAb07!5)+J2q+A}_*$)|8jzVWwD=B&ya z`x$Px?=K+VT#Wn#!B<8Ek-&0eq_6K(H6cHyw~zY31fGe;^>nOmJ)Do_iF!G0^gXqq zryapmg=0~KhisQMu;5c7UcPZ@U4ZZ@O!+kLH&i;AM24Ef9pq?iQ@GNZ%7lV~(%oLN zV{(^L`mWdi7Q@#Z_tfl1U0sBmzLhDW;X)}|Ztkz3&70_*mqC4*_}65^CjCN???X9U zN)}urwy5;!f3*OI_wedycW(n=PMvqrNX_tzW#U7Mi_JNY9cJ7kBgA%z_6ZVM{<#x} zFzfyJl~aI)M?`h>3R6n^d`-1Y?{OV4^YDDM^5riS{0fYPw_tuRKK@t40g$FQ^>~P- z!$y)P4BKPb6-E1mjK|DyJBn~Rsy6)$@EU5)Ljc+*0U07NwT}c-1rhjg!j}{$s9%`R zT~PU)DHp+>R0MIJSx#|V(Vumk6(tYVC*r1K3fNzj0Ix`&mb9-cV(vHKhnUXC*u36cBa}!&?v6j0{$U0=(PM}VyuV@GP8(AFN=Cwv zM)w{#k=}buY4G#B+S~6Dh+OTMs@mn=QBi@&c&A)-ND6)`@;es~$*j#Tw8upWrfOG4 z+7r-6IzJSE0?d0{qc89Iow5JtwXvDQBeqNg^<#CfdlX?8PWb6DWO`aO(fr%N8{xo5 z3Ffee+uPb^?UdNan;~eeVQi8gDlZjkxW)9oJzH-{QP7boGlWnPtbdL@fX>Nky0l6sEDJ0N*3ojd}@GNdpSe2`wA1ed4L?x;wSG|zV6HH!LGG>5TS{b zEOLLSyf3y3YHzzwfrO&U3&m@n*60#UD}b%CDByK~vr2-WpB=wW^(b?d3!lM#R|HxX z1pMXXA4a>++Z(v1%iWOq%e=6#5B(qhnF3lvekC;rwzo58zQ<#SvjGP>D-nlTKYb3( z0uHuhXtB1+?-xuOeg+uqNR@$00j7)F!u)1hGNGG1% z@6;$oVq!k;QML8}R7nPuZxtt@b_N!Y5`#vhfR8>44Ts7K28qcp{$8 z!%kXxENtcwZ9xCm$yOy~nBAOjSkY~BhmQDr8Rm*~++gqPNh#K%1`bLxxCcdixu-PG30e*yUi}`9AhwdR4 zI*+Z+&}eDJ-pCf@hiRlHcK|KK`Yh-H<>ldQc=vecmi+#Una$$T3R2hhpC>o+)`pYl z>Z*?>^+URPgQnwC7yK^QCBsEEeSC_&#*so4uP?6BY z(UEn~DA|d6ptp2pH}CUDSd7>3VV|VZ+(762=8_$Iv>j1rfF9^B#Zeh4#E8kOz8A zB!grI9)I1{l|N15T5p=!5vV;w*@#ui{7-))e_qVno8R-P6SbqQalpx7J~nQ3>nAA( z)p@EAa0j5hzAP^<6I*ao`Bi)dGKO;0Pbtz`A3-wg)W@$Qs(!aoacPC>wv+W zgyTGbrbl&*q~_@b%N0G4JT08Kwy>9-`tn~wbefpIhiane(ZV|;3&6LnPAHBU0NL?t zV02k9sIr;>dxU_~0zuBD@H}X6&a7mgl(h%H%o&}&q>VqQqWNyZShpleG+nsdC0*wi zXhw#^Ww-FkM2!Cq-ve`(yI52Z68f1yi3@>7Sd(tzXCE(6QS_~$m)G#9ab8KO9Vw5;bz<3 zVW2vzMYp+{=^F_9oNJyRb^2iiG0|5KENh>j&6${eK$#b3uLr3o-4<8NN}n#PU7)r~ zUxAXMTAc#y`Q2#LEZR4_~XE-P(8@{^a{zX{P!q zBS9wtsP{14{ryr96)-xCB?!dA-t5433kU3<*BaKctMSoRHTS12v<5=AFXkuva|EJ3 z_LZC;dzdR%zRQsG%DjyGtlv5uXuBUT!D>}#i9bW#QOIL~?USf^rIjL$HdgDU5}u<4 z`ygK)L+6ttkK~De?t4m7FcTxG{3?k7W@daPfnM$|4l!Vgst-`-)++xmLY3w#9LOu2 zKRD$~*I2<<8g!t5QT2k{n%QQT9T*2DTAfC#NwVoDaKELlMmz!kUlM>$!kbe+!#P#m zR(_Y@6@$;lIuoD`wTB9pPYp)3gI?wF7*lF%l;aTEA$s8cuJ1QB8)VSM{S-t zz&ChVUh0|ZE|aB4s!DFId%?B<5ZLR_=J4i@U(kJ!_VMP6D`Vj=lBgoE16ie}TQe>Y z86V#QU+x_QZK*=~{a0J4?A?rQQ**`2wXa_`vA?{?;y0Ogs8*PwT8yVamTYYbnSfcb z-lMEG;ehK0oimmH)F6aPyw4HPb4YmYGj%QE_1MH!LH!W(Y4s+&dC=VzcPvd07s;b1^*W?i(^AUXx@MGfl86ZI% z^^r13|GOe0%9SgAcP)tO=+r<#SteZx|2q>2sv>SQ1+=IlVS3(Ogo7V)nCf9J95H7g zFRvfvXMF4onKUU3HIenhB1VS?CYS5OD8zmS4PwL5yhQ$U2Zu6TglxiJAdFWvFVH`$ z0O>+*m7Hnf6E!g)10|lcHA<(ZAN#{>a9$mbf;AEj&yqIBv?Cp!^EsmPn~!l!8En>j zzp-Cxs^77EwWa7Js^#R8dSho!KwN&V=;!e%?auS1h4ks8Xa5%urtnhhYQvUp$$o1X zxg?$6vA(dZhRqbSs`a-+S8~bc@o4Dv=D47Yj2ofSf9^dGITQpEqjd?`nZ}q24g7do zy`sy1%K}4k1w9n(gLfb@yAgX<@v}`1M_x#1n36Oy3aT%A+&qHdHIu4?4Lk&rbwL5H zwsAO>J~2h9BLE)NnbQKOX8MguiWU?LWayX>dz13t#REVroWBU>d$*=}6np!eG6M=K zYFZ_DQFeRH1yy}Uee+mDqVH}U(^LEqI$sQS^Q1r}m_dufwgMTy$a-xobn4ZPaP`xv z0ISEJE)?u4z9{8{UoKTy4~|+nby>4_KPNJ2?^@dcTbQv-MqB{im^#1-hTof z;*v3^Yy3yK{7;v^BX61=$?oG7)3OVP+v1tFCnHq}7lVoVn-Lx#POy$+hN>2V@{*?s7HA!tiO- z)$QVbGIY`R`ZU4)_pj*3a3uV&n^i)nsm~&IZ{BFWVcYf~Jxw4!%!zwN($NnFM)@y1pqAk($ zY#o(#{F#L4?$Icv^$aM3?7Y0w39W!io{)GR!;r0$1K-BTHTVM74xDoUI`Qu3R)8JT2L&K2_(HdO~Q~nR(vAY8Z ztmXZ2I(@mz&zj0s-sv(Zc+^c3PLu z)t6d`=V_6qe7H?of2bxX*N~o`u3JrW7lcP3W9tuKPVJ41=Q3c-mhOo$OLwZIE!$QS zIlH+*SA`-06@X6ce(KjgwQiTg3NN?ylvuxII!O}Zzg}O2%l!PB{6FO{TBtOEsJctK zg<$46v(69c3)|%;>HGfZvQz24;e47Cz8+gs+b%t!ig#a}Ye;XTn~xggFGo^09-jC^Boxf69$tr>oyAdvnXKDf5^d zn^12fX45p%f$j<~sysa{kC%=^xRLG3K_WF)2K;v77gQ zk9#C3q&J0x>PPpWvRn^`>H-tZ#cIU8?{~ABRal2zAc-!?Ye>41^n;P@T+?nRg*$xz zV!^+kxzCEcNRhAt7}!O+M7!Z%d2~udkc#ptVSpn{y`PzGKqr7$8qSvgt}+x)ZZ%k} z(3tz*dZFb7=r)RPZO=VeyNsmMiS;Wqw@W_L9BZmk-$d7E00~fQf7u|JPVJ0Q zokd>zl(R}6pRU=T{^`ZX6*$FQ!T0Cyu13%QeKru+YqLqOZM?a;8mJ*&pvm5E*2N?t zNwfZ2flE)0nmM}3%Hp+De9o8L?x#PSMl&6>VQy^i^YXx(jQ{yggf5}~^Qthp<;(LE z$Y_|>cRF|CkR#7nhX+hS#GiWGC6cWk(Dv+3RDqMqxd`Ax(;v}j4{;GlQRFFuFO+!F z`jUXHu!3RIPMJ5J3g(hXfiYuIoAHADGX)4q5?Gm5k2)K0{cMm&Q97>34Bg>pQpHY< zhm%Y1nX3m^#UOOEQuBISA0U;y(JH4wqcm-&k?%bU*Y?J(NViG@+obAgaDcx;DVz6a zI9=3=o6^gv<&7l_#%j5S+pt_nGn@Wjq)GbR;bFO{qPUT)A662d2OHQe#=)?jr~wJ@ zr)3V@RL$tZVCE$*^YQWI*Qti@`{PiuReA#BVnAq>2 zN%9CI;!$;|FwY!OuU8Cr(0ZdpDC5=f(c{O%M zMBD&`0|>%yWCclyu$|5NA7Al}zq=VgmKm;Y*U7FyJx6sfALD8$&dxZ10 z)ItyEsT9X{!6{7NgE*==VeP(q&5h&||4nbDv$JBn=C_>y*`&Uk->GF(FPdi~=OkQE zRm+W17sfHs%{4AS9v@I96-5g1r792-_4I@ZpSuJ(|0ll z)%?zgcs<1@Mc%SI&gkMWWai7~<4oW`Tp!cUcs+M&k$k5Ci`M70U;5y0Ou=;T_GWiS zTR_Ia8@vtO3Vq=gyP)pss?y}foGqtyo2T-F2OEm`R4)6IKhp600S7|UeSOf-@Mt)_ zUbS+5XBf;hp8alFWFmgIBL5CLN>uXSuYx;x*}z|e+^3ITW?;_LOl`t$5dwvD5qS*n z=d^Z<*V+3j(M~d`Rv4caXXW$tkrBpDX$`5)e5g%Y^wQI^!kU`I*W!;-W{VlTJUn0<%+P?k=Dmeo_L*S`@Osa-_qsbJx3hU}0rQz>lOY!m4 z{&1>-6ciHU&(9I0hKmfujQD5gB930vxVxd5ZUahbzf$?3gD*y`LENk!KPNY5_s<_q zwO%L2w+_?!x&n@*+Hpp)zXCsF`{)f04Z*L955RgsW$iZaoI)jwd&(`;n%?7$lefco zv970^7d;c_5EXY=y~C+eM^MiC6(y%%kYXkV(^;(1>TUzM{~fueB8$2<9W`Vui*iN+ ztBuKeug!Xz%5-nCkJ$!n0q3SB5%Jgt32t>@Oj(k~Bth$3V3SzA1xYVxFD4g0BKj}& zs-|SDj~*urh`%xvd$;4S*lq6-;&KHQnH4ad_qVdR-6_^y$C@; zeGPnUg#ASykM}7NN#*w)S6L?R?(WHQq0qkfBrIeACZkY^ai+)sv64}CU#YfaA$*9P zfa_k8M%PndRVz=jh@`LS5|{6-*q_z9zbi~yc5-+`&0rLk8zX%(62MqSkY$cv8;9N~ zhm3U3xz|h^vLMR^*f@*2#r|cU6dPCFlusOHv+PMbS=ueJ8EhD)3kfHx9s4gy92ybc zYga$YCL8Y1hBy0q1%7dOgy4fYbj&n#m<;3g+a%c>frx|W4xw$4_K1J7XVngM7Cp?b z`_TYrU_Dpu7Po49F8eDexD)0hllh4QARW?DW#qe+j?jL5~&$IjY|aJjr4*HRIU(U|Aq3OML}@lm$vAR zd40&uO7)?_|GG3#k->I;sdWiGvO*TVB>@ z4rps>@t3c|Nxs2`aEdv6ko{a@iBm<)(8|R0ii;p=CE2Xe`vC_UioKvp!2xC&puohGlWfF&WjN!CDr4%K=crp!EM-j-F)i>THFDqQk5c&?~N%%e~a~(K{b6JNRnJ zZxKzU_5e*?xo$nYE)VffoJQXgGc-u5nEkw>mXYc7XL5|Ch&5BAr!sTlSKZo@Rcv*; zVg>t}?`qy$%m!^xiz|KAzsi*3w9)V?&ZgV#ATy7nPO4 zzdWe8?EG;cAR?x6>r@nMfykNV{kn7-c*tLlDwt>kug;fb7G&OOO_<8x9XgRlr!*M> ziFtO;+d&y}q(}KRgs|6*m~!T*uhtLbLd`BE#`HznHu#UInY%csI0+c$qL^4be{Vfa zheQ>yfAbCr3F&u4acyWiUMKpMp*)y04XxU0CZF`{vn39paJi_ymt!#2UJSM5{xv%X zk9d|s>DEkpp7s%MH7wb)UWpWC-JwpcE@X1Pi{+biERXE09K>4R$?A^7)oQS!W*feb zYEWbp`;Wi*g~A$ffY)trBpfdOh`R6@AOqP~?HK-OEcF4L!F-J#n!eb2n;TPMw(7CG z8R`^OlflD2g^9{}DtwMwYrS2FJQ%<^-uK}5*cQDNiGfnOT{>V(LZ?-D3W-T)D)?|h zRA6~}cu~B2mW^yX3)slGV~DY9_Deq`yg=z`J^OPX64<7=5WAjDMDrqKhu(P0<984Mn%n+Jcc> zGtwzt`t#1O1h7>B@)W@Vp|ah58t)ZTN=;K4s0p@ZKs=!rOrN_POppfi)lQ6Muw7BD zcPM^*x^Ix9wq7Zegg;+n=InR&-tPuMb!lds%;91-D8|{X5Z*TBQ?pa$f|qxe7k*Bw zfQCHFgDz9-LRRI0OG)ku`1_sp%lT9Esw~O0kN05kn{5^^OI%_xGIg zOsoF}`$DXLev8+9D_R1#txu@|sCk301BT3&hh<@5VcWOKsk$Owv>)R0WB-ovap>C131Pz@*ysw=ngcHE|j5D!7>jrFq2 z?^)eYi#~v;pnB*hA!-N(XrI*9{Sa?e{GG(*l|KhEW|7S93tpvJe-8B&ns$#VS!+yenE6IAIb7th13qzU zJvW%SdNCFG^KQ4AnJ}tX@kN`XI#`}3$&)Hdl zCA*;1(%G3E6r;ihs)3tZ@2~+UVwYilc^&;#tLf8lhH66U5A07h?_*??h-2R9JTQlp z0oH?u*T9JZpH%J5xTfa%h2QU+0*ygFUIsuq5VrU;h z8FZ>3F4@B<8{wV`ti>D(ITKvsGxu71`}k}D#}hBWXlQ+%Ot?ZaT4Vh{fxpzKmAwV?fDUhtY@NJ~a{i5FM0QxVPpHg2@ z9^d%P9v|?Wzjc#KGI2Cvgl>n6^2RSbiHYtcL@D_?Qj0ahUge*Do*3{mjitC*+EE@e zZ<4>H&h!(pjutY*(bl{E-Wd}Ah=2XtN>>)nmPj&+uCj_m1l32zfZYu9apVPOCFl$U zZ?4LTZu5vXd)rvGy1~yTxl1)*wd)3=2I{>{+b3GP58N4$?_*Nkh?+fZBY(Sn5d-MQ zyAh7hyg&X>iVc(MksP?V*e-py)ctOOxZWYEIJP>YIDvcf@+bU9FKc|&=APwJvs<9v zn<{%iBkcd|iuPYE01}8Lni=AT2}}(2v-I8aV+QlX&odIT)Lju0$OP2a_!?mcJP|n0 z0Ust6zlY)Sikm38!DR4BTAP}iE)ge>5fIt=3;gYSku&fQ!{h47sfP<$(5cI-)@~|? zu+C|;3o|Q?=@#ht6)7RVTd`K~rLnX}65ecew=R>zN)V6vbL8MpqMnHf?VLPi z7{WPQP3Z|k0dWB55{MS=lSPwGTwj|i@^GuFw_U;NSo1aQPI@lF2UN#QKsn*9GKdBx zvXBBEY-^j5QlQ)1Srfj60WYJMVq~Q&iL<&;oCf*Sx#_&FSRrjs1fc6 z5WE#^z^Q*jpGdAGz(-JAR)6T>s*F#~`$ldmQA-yVS)#nnKQN0pI(CZ8t`5n{k z-CcB_Iy@Rl)GJy^`x|%-;ijRLl$hxu9m|hO+ce%)Vg2v}G&||ph6*+9pHvtsL;d}l zyWG6IcwpU;6SagOC0xtpkD&U!f#iGaoy$52~4hNAV7g$fRnSez&pyko2 z3_Y1IG6bfQ&%wq=TBRzKaQy_RDX7}=R6;TlGfkBT8%!dm_!}|VGHO9@s6Ydq*sNCq zL*w^AA3QooNk07Q1G-j`hz}1ZCmf`L!g{-pbSGe4oF}od&R^Brp3ZJJwgcA47Pvd< z2Q73Di|xMTY81(EB!|1h_g=-LJuG*8^n&Ew0BFhCVAmH#jdFBWyNH4}`yu*URq0^` zws=v)Rv}ULGTu4Uht!+e0jA>Sc0oAX}cOM*Gp<2WyJ; zs_g9SLZ6C%%a7vXJp^xENqDO_;$+duZFW*ChUVwt>i<~2$dM+4U_1k->o|g`jbVd6 zE}blP2qAORq7`Mib_Mec8tEdCE`7&t{Efr3==W^9=X()6Kgmp`imXan>=5kHEn*S>)*ehpVE00Gb{dnorRCT273#w%x0%B;Z^KKgqAk z%$xS`RrMQ5r9)-9Nu`edC8%CS9mIc+QW+ZqzE1DvTU==5BjTez##HLdwBcx1)>73j zJC+jVj2L+r1zkD*$1_n(A8P{Dt^oh$VPr#`1YCdvWtiFC0WfRnG}-~ADkoh!k7Z5k z#UEtLC=Qe~vRe$w&0cg^>mS&qN{WLEv=OS!!@W3|UG$y}2L4!Nex*te?Wk493qJdU zavrD8FY3Yhd!2L@*X6Nm=RBiljjL?Z3_RW-wyp-$k20GCL!Ztc+OzvzQqa!x}V|Z?_Zj6?1cmEX9RzKACgb12F?$)W6Sl3bIpYT?#0!0Q@|INWj4l#hi z!JeJ}qJPe3srVrGo`@pT&e4pb(o-qEc#=<|kNQIReCG#I$^xm>nG!Hpw3$DngIPQn z-LY9H>C58xJA#MnHOPa?Et7`ci7X-T9Otcd07LSH@BF*y%MmKN3C;X z?3RymwE@YQP$VIZWO-_ zyBh?hq`O0;q(Qn{LPEM5q)Sq|MY^R+x|Qy3KDy&9&pAJL-tf5LW9_--7~>rz%&gE1?D^8d=INmZRzTTeI8Hq#*hJ z9-tPx{v=r~cS+E@zmZ8%KK^m_+7!LF*5)y5LbZQkK|lvtXD+TxP^W;5{$KxQFR_q& z71{mi%hk`>xf)MWSNla8>g;>bo<4ltU_+OLMg)Ls7du^?1p^C91vK`!=s^`6GLO_X z0pxQpT5er(^>bm+>rZA}`9HJ{w9x@n;r8p)dd>jl8mRc3c0Q z{)$*KnT1qv0(X@qLDc=yowaNK;RAw9QPj=*wV#-#p|>;nI}g4jRSj%`^}k-Bt*CL( z3%?@o8O}k9%M%ZmL)KJsFjpQ*gIE_B9#EveF8E}l)2_$6UaD-zP|yxG z0!00mLqIQA??_%~;x7cG>pq0@^n>qR?^n6fZk`vLElsQgt7}`8OWdJ9OV&9w`gTCQ zJG=%P(@%f!l%`A7LsGb4-|kcr_)g0bq3gA|qxU?xzgiRSd<%>t2Cb=VNk8j>1=j@q zy_A&6MsGOK)ER(3uEEaI{^yn7(8c)b%f@xNpb4Qur9oSsxy_#Xpo6bF(P&mRlO_^S(@z(CfByG$q|u`m|J8Y~#p(=RjF@BAwxs)O@`2Tfk?lP7y~eId^oCxvgN z)7DUo(4AAh#nZuQy3o6$Pc2@%1hhj`_8)4to<_?1(#oP9$jv7-2S1ru)5g-Qd^G}Q z{$B1vfqLs{9DTa!C=lJDC)?zQ^4IfkvBFqg%bcB03css)5WkY7(S&D2ubWoN2a7JOrGeC%2d(;vA@bfTgKVXHyUSz>K``;8nh4lAkeJ&p>*AdnG6`H4fD7?>-w{cexH9<{Wg1cU}GbefN>>Ip_5 zs&Asj}-z~mgL!o?=Lm^;vQ;L z_E+cki>*<;eogdmKfSon7K-jap5QTevFn;4>V@)eh23KQ(iATNV%5CtErl~rAtY4( zzn*5%sgm#_zpPts%ne>X|Lv|$pPj?bk%R<2xPc9F%A=rC8q|91vv~SoryU9LTs;qO zaC_?-Ar3{jW|#fx2H-J+?!-Tu>r~tlAEse{!2QGhqa^(d*L6QSq^npxa6lYNwK5op zV-P-BZDY=wUDdJt!jj!LsO=o<#O^6W)BAS&GW_LVn}m?ZIh8^>SJa1URWL$1cwe1% z346SH>65;}21Sja(FOm^)zx+5KA#^LSb6}3xXVU$Sr=~uKc5@8n;d=$loNX(VKQKS zx|89wI+wUmeUC*Vbp++B4m~{b{2K6761Gp(2R~Q@du$JBo zEH=AbB3svcs&~OAY?O&9$TyHs4Lk@fQG$fQ2fC{_K5?;{$S(t$6z9_wUN#e@vp`|i zJEE#It2R*y!(zDc1v@{kfPjzsPsiK2NhTFp5JYfb8S}&1uZ6fCPJOU4Dh{D@J;YL)n4R5aH?#f)V6)A8z z!Uwj=7bMaB^7@q-Z481gDwJLNBKg38wNR$`X{kkIq% zWSg2&o%IyLm37mnLdkp$qV*Hx?83LFv(G{2ZX3h=Quae@6~+BB(5E1{oSS6(vXqtx zSjl7=e*|*H)d;z)=C$5}>Oq9^(7xF7PJlWbc~%<&gWnpQ?#<3%icF-XWNfol_%@~| zITA%37r=%B;6Dv4B=)^p{ozdDVrP5zORZo=M-+wVhi4JN$nqm_xIP^*%62}yG?d=f z@$&o)3W`RyH8avwQo^CCSdCPMgOjAR0b5|FB4)wzf5)5hw^q+9M$pvA@aWt$-7J^F(&VrX6I8NX zLi<6JiQ%#I;+Vw!;02Ade>9+Y@l%F~tA_46xLLq;2sH-S`~xxsm{kOTYC`(303sqH zqsNkPt@b%Y3@b8+gI+7N1Ht!DEr%NRVrFKq%gV|+op7aMDbTYxM$WdtMZ4Zj_St*q zkJLa`XG*2xe#cu7u8kp!xcA$><$ip4s4fu`T3#fCnB?|zWGuNM*mtjX0_q2dK1cx# z$h15c*u2&*u)mZRmcuW&*ZFr>zm*O!-S7w^+;kDc>Xzs}V>u`1x)+mycls2?e{5ON zOPD`w9Jl3XJGd~Dp7NTI1qOqd6YAxsK0Hvruf3d4LP9PG*1PW_fl~n69V=bN9Ri1l zxVbcc@ei9jlDZK+R-w;s<{t)SLpW-P2Gdx#mci=e} z85P&1KhqO*k3#r1>R%g~_x5>-dL?bqcy>fuq(zQ-%g(2T(rOK%)=(i=^* zzQSmrb*SMDX-le3w&Z2oLYL`@o4R$uj_u$-?}lL>fGo8mx7#pkL_aMP$CjFmCNNuS zY`y(P2p9h%(!@F=#2}oIQTsM!Y<5M;!2wHyMK=dskgovS_as=8$s6=ayPWTivwEID zcHdSwgV1(Ncz)Oh$fs|HWOxVs?=aI zGpXHDlej%s?lvp)8`-!r|K3TC5>OGsAP>7gRfsDbgB07@P``NA)*u?8SfUtcwU$YX zqtx?wdavN$ps1VwQRgMaQ&q=T&`bA{dJEPxWoFmeTLV?{#6FrV5W*j|Q z3RcIA{%NVsj~dVxd=@+^=W_2vX-C+u0aPH4s&$};EVHl-&P^L#prL| z!l6Za0)7DcPJ-dl171qqoySlH{kCem1KJEhZ)^{_9n}cxf(&AV*{V)KLE`P{KH7FV z>R4oI<~*_KdEDKAm%k=-J!LHM}1{gk1EBtv&lqkb(BS8nNbRUWwS$Ht0hz# zjmgc%lgJ4ORA%NiS@f}?SegCDv-rdOVjm*`U9@{a{gAC>6^qM$4u^cvRce*OE>*}k z!qtw$Y0?>uocn#-VB0R2X`*P=xUa=L*l)?Dp=3 zuME7b)Eq;C!q&OHxjfw7X zBG2IXk_|Wqain2it=nT$U?Yp{QAq zo<7|lC8-wAF4qk?*%Y_6HQj~idfer1fv!^%_Gn&7iS&QY(p`Ygx}XC^YhNenwVH_B zkrn{~fX#A@3_B%(e2TXEWvKfJ$RO_J;`olYM-NMS_=5cQD70!CPM!m=il-I{yBmX zr5z&wR~o@(k_bf$?D>vp`FOXR4KT(Ocycl0%Y^+|a6zDKD6$lS=@nIu#(*o&EN?0Y zn!+QOE!$a*Y_HevSY#7~#Am<41kX z8Fgwrdq~LSySb5!za9J7{rxg@LW_>MN$ya8c(n4AHuKfWz7^c|@DTh@$?WzpwGJzC z@UlT#wiwC4<|I@MlS}mMuHi8)LYr*{TMH+DdMk=Mvd-1i z!OhW+&GU_D!jq+TV&+&JDy?e3QXB!0(SfIy#%iBKDKyF{La^KKF21z=Y#JFrVUT*% zhUG%a6_V-0xYXihh#>L|Ti%p(uQtcs)uNkYK=m!~w8lCS6BAs2plMo*1J* zNfU@ISe#4a(6U;`x0}sUcC6oBSW*`L#0I}_;PEsVraHOkbb#Kw7s15WoMOk?d-6tS zV3k&$umRL=8iAF1dpa(wWf_FsC`r)FtmolGZJ9;3*8QhqwegMf)oQ(nh{Qa!s@VBb z0DvL~nPT>p8`h&e`j8CgSgr>25QP9kuf)786SZniK2+-xa(5=R-d7Z4WCZ?DewKoG zF_hMFv*m3*=oJ`v6n{gZ73jvQvq&vKK|%n)wbLFO|I61v^2R|W%Q$lE?*1-v24Ns> zb(Fp#@L{t!g?ntaAgwTH9eb^=T7nR`(mHj$B(wVd@I_k)4L zU3Lln6}BZ3M)fRlbLOJHkB~3L{fY2ASAz>0xqB~)Ia1AR(d6Xh{z0D0lyS?3QdqO; zEwdLW)Cd&*?OUnkEkUZMwdDMd)mnd(@fR7;qCg5}t3Ci~5(Ar;?6_fFej(;|x1k_O zBm_{LMOJ`p$}d3!o2r}EHPeLT>=vX0VCahHn=tfvNl52 zR)|FUU`KU$B|oR=yhA{z^pEbS{G;W4ms41zW{G~oie1N0i&`- ze-WAEf4(dA9^m`Tmu<|_H|w0n*pka&H)jHz0`$t3G0ma~91LC1}` zj(12b_VZOFm?z8PRcLsbf=)PzebG?jG|6hcAortEX-Y!(w?v;ZI=x=%9xd(tmlGjM zrftbyr4ufjNjS*}DMwk%{Z$Dqqr~ErY)bW>5Y)g{O%_8ey}y1ZxA-6$CI*Tz;X2#x zrd2N?^U!hxBRDxY!zG}_hzET_zK32q<~+{AXJLQ1zyhm&(0nHPBpugZ1X-JDG?Dj<@PJvkO(|NZIcrYoOp)bb?DX*6nq#f zj$ac4nbfVb0LE_uT&T*-Zn(Qaf8{c)r*+iP3%t=!I|&t;R$Dz_QLH|=Yuc|+etrK^ zZUc^vP0Cb0Ta;)1Q`QQ@7)4!B*^NKYIM}-S+Is!{w3v(;8#T8Ir>Vpso66#cilkjo zXwgH9(RFE_s8aSZersXWY_T%&ynB4YAZxDfTywJDdb)HS;LrOjJDyQk@bH;+@RmG% z0lSQdm^d%Ri3&e$4)wwC%8vW8nFs&=UR4H$(}BP*ACxkoXQLj7Fm3QyV_vl>RM)18ppT2<(Kw zSExV}i@p-UM*akKM~-tAv+^Fl=cjSi+&xNzZjiC-Hu_~C_rf)>e0DO@1i}P4xW9;M z)jKfXyO9L?6GBHR;ta;|3tKmTB>a55Oq_Wx{hl^1QP`5lY&d@Vr!^-hr(|2GOO^W- z3^dlwjRWqLkknRb5^N%&wfn>rsRb0?ir`@I7L7m{{Y+@-0h}+)~6m4$}?dj?-g$k zvGofG2wa|$EkKGzY~ut}w*Qc5ak&Y6x`OO&A@RnpWRIo#Gt4`gOXL%vzmN7#Mpi;` zQ_Q|qT7q^HLLT>`1D;}_t5(%C1O%C;-&BiDZoGl!citHxo}Zh~8~<+?py2UBC!b2y z=Lq-Z7iqdP8rU@BNkM_?F$PGes&ed=sz7}NCGY+nzsw?ool-LIJ9R3=|j>mdkSU9N3y!RZV-A?nzw)|km&?oGl9O*lM1 zmi)%oxa_b_C*J2IAzS$9Eh-5Oq+#?@pXvGQd7@$1cz3;l5Bke`` z8y)xB%H(6YHvE(RgUQL1Hj&5-DXPZE@7JqmB`U=NU$zI4Yh!aRqa175Odpx*%H}Z| zqL0~nJ%}oPtj0EHQ7eHyWiqnE-uT3+{l&(Y#x%3{YUWmHVir;q?-ysHgS}>cS0j2C zM+Jph8wSQ;2n$3=mwt?rvi@^F?Qk?N+o|GdmY&+%^Q*R4tiAshnaND>CH0Jk2JIl! zCA{taQtTIsdBMQY5RS*icKq$KVB_mDwMv3MC5pEO-IsW-d$Xi)$^D9CK{bF;skE|m zdU-7tturkivjzMQRrcc;6F)Ttka9UJhQ8{!Sa-X`Mc#|>psM6aS_Qx%Z}jA5x3#wa zu~3kjvDNOnVYlL4aIu9AJoigs4EMgf$a`1#1*U4;fKBaae71A>k2=&w*g^O2BjUv0 zg5RI4^R&h610*jjNC*%XT&>_KEPk*?9#koA>Qu>QBS1q}qB(s%V9&4ddwON6r-#8G z^Gr1xl~xlxBJ~^#1*y<)IR#x;%I1^Yj(6wgpgAkwX?JX{;q&)qq-VtpefJ7NH@AB0 z!uGI{(fq?pzwaJaP!RhIRck_=c>`hD`%+1xV?5MI3Q>Y71@_44pH zsNw7z>jn+FTGd7_O=ewDzf*;*1zHiKg5}(JFF#F_`UqV1U=fmrDjw1%0^hVr{LBKSiz>iPMt9G%_2Z_8s^d#*+y{V!42a0 zbfmD<>YytxA%LWswHI=85Kkj*0tiw@;Nt5L{6LnAVbLj)z1D!9Szf&9l7UZ= zy}>#>^P5sK`|(m{N;8vx^Yv*@lpgYG<(HN16q383Sui5)7*XuZv2LE&I?Pu>R*I=Y zrMDg0O$sfN-z|vt_@TDnrXap3lJUb++z)uPW4K2H;&Eq>G188rzW>ERH~!&cNrs3o zLQH06wdo(0rH%`+qp3p66w2f4;=1uyZ7XdPbt1oD}DB$5$Han7Mp`(4M6Aex@yY*tdS++s9U zcLp4Ov`Yvr0Q}Nqg7ncH+z@z@OvNk_^03 zI`leUu}xbiOFyG-jU;W>iqxZJ!q=FO(^j%VqBKvs?Ra5* z0kMd2vecoBUm~0iKy=2)2ur}54g2<<8#XBQyKav1e(q#@UR58-;ZpgVT3FC#NuZ5Rt6Pe^*45RO^V^Cs$-X3Vc5(R)U~X`H z_jMg$AsZ1!Nf`V={Si?l3m5A=>>PM69M898PmLJtrcJ!gHQ4{YukFk>gJy}@!`xEF zgWsxbsIP}F1X*~Q3_f*&PlD0XeieV%$40SCP29l#Wk6uc+e7e<18xWVak z8|>z%T4PM|4Q&3h4};Khl^CyDAP-H*3k(v%zwCMKwP@}hu8;b&^u69tq%nF#Y?Wy1 z-n8(lY`ib|SV&!lt1a!0)Xo}-&&uedtxFf>@IW+0wV;^jOboX(tjR>@Bvj{zNgGSa za26Nwm|JOx7(6ny!M+5Ob>N0*C6p!VM{w{#W`C+t)6(6esl@0-pTTCLl_DaUiTW)2 z$2tBOU5|dN1BSiHEp)0>wX@JuYs#>s&qr?&<8NGoXc9vm=5IfI0m}+^&=J;~U;E)3 zJ@)zbpEe6`yMq~!EtvEe>)2d!?$Gkg*@%kL3nrz*#7i!*w?^Z0yDv$lb#4rI@u&e;GY_bVN-*Dt%z zYuD$+vDqk;r#%m`y|tlE?LM0^wxV=<-d9uHdLn+36sKmS_i2$-#cUp-+P)VH%uDUQ zq+kS6r?iD^2B2ic8>T*ekt@m;7(?wKbid+&y2RKJT4|47Ixda3Dn7lI6bxys(16V9 zt~K0e6{WCPCh*!D0MggTR%_XKvD00(N)b=A8au6bC!awz#^u2@DsW0cLBGE4mmr*9 z1^85W<-C3)&~(*v0Q2v54C>RwJM;B#X69;LSnc%Mke>_}(0K0Y!OtlY@Mq+j0cey6 zzy)a)Gmv8F($epvnRE0>nB!haAe{OR1C!xdx1oNE>u2Soqa!x^6(Ot)^X0fN#|zw8 zRr(FK#0Z!aOxc-n+ng37P;EX>kB_exIUHfO7?WW?>+9rLw3H^?yh&zjw=7;l2{Wdh1b`W;y_V*S3jeEY+FENUiDJgEYdp!!{ z`LRq78n-w`qU#;}+TIbBm`K=g9D9&^-_A&8qO1ZJYOocw4Sp(QsytEI>h(wQYw&$c zVjyNrh8%{y%Y~SI(IhCAVRlWP+Yf{R-DG;hk8cRHa@!jU9M;9Xx5n%ys|4JM^1deu zyAx4jO1vI_Ts8lYr@aW8vnv-^(=79PXJm|$pjaQD){f@L;R=z3#=i@r>++T-LYAxi zCk;8~?a@kC*?YZY2TB714j>5Jn`*4y+^F+TJL1ik#MlLai{2Q<2F`?@hvzpWZ85{& zCMWOS-|)ZKUHpMsSv|&|uAm!YildRnaM1k(0OFmAXZ%G?kAd$mz-L`h~-(1MA;kA~gZ zZ_V?fPQ z#^T(vmsfW_MA`lNBGgs_A}Y@pvi#sa#B&2JytKZwjIQWfv1Y95^EtCX^m?(@h0_Vh-F^>+-Fi)B1GZ)AfvUY{1mvs2{MVL#d z^=^c=&7MWsaGW>q)VD3e#MngTfTGa_j2MMNmXk+&Y*qN4(FYOt`qo{v!!KPzKThG* zOD&MO>h1k2Bm{FFP8DSmwP$0T5p&bMk))0m?Ip}5rKsr}!<}pGrahy``6+H7!g0>; z@hBOYnMTkRqN1Z!nvX=?-CtfkK0Tq|Rl>q_9eSScF}U;TLNH=d1uPJR$inhI>+9yG z7<-B-xlJ6p%|9m1)tkrGDP^;h7mZ}X1-2%fkup+H&GgSx#8hDH{cX#4zm8FZK3-95 zQ*QsjKT&&imLIm(rGb_|1t+u?^`!YjBP~D%0B6|j&upQ+rSH*j$LCh>uHqtRJ{D+E zS=AKm87(ThGEc&0P*H_sZIG=EZc0-@HMvf!3i(~*2|=+I`P*c4&;A$WCft#`FfEAYxQ@U5lD0k)O334Uh4;r2d z{c!C+bVFm|6q!24r()7VKIgY7qwGSk9j9I_(;L4d>2eK(y^1b!c)~49$6-YM;A$D5 zp#{eES&VS^xIab|#e+O%fMCUCOLg8pm*1h)zx%<{xiul-JORCO4iuoBLk9}KdhpE+ zQ9&-ju&z{kCQa++m+9Xn1)k{(CiFzwg(825O zjw|e+GN%2?pwp`n(mzO3?6BRf?ttpqIqc8Y|J5!Hu73a63%q`?wnUm9*cvJpF#^9h z6_4~6U_Zx;3I4YWP&4#~5EY+#g8&~?@fFby1n(*cDoaXq@9P>0^FzDec%{A#D< z*eZWtgcIJ@(r~ktw!7a+2q_fPjXWfGtOvg7TD5C?9acIBQLnn=3~)?U$h{8sh^KDK z!kr35zf`eg)yuc$SPk2xRG=b_HqlP@z!b-1#=}QcA3Ox2!hc)jJsH^g2V%(i1PqDd zkhXs=Z=jTHypmhM_e4B*lKZU8cX!7R8wqd;Ei z=!;KeJ5%$+_5xzOs!)326~^=JJrSc8e4QqX7IRCe7Hc!pNGSU>{pg1TCS;&u2dBG~ z_6Rt>BaWnSIFo;Q>10WZFS%`}{WQ)(IHEg1^)0UE)yL4}2_`HI)HoK?=LG&#As?6} zVMG)+`x^t-QwsjxiF8DJ7fo^QViDK57Mt&{3?twBp`Ln~PBq1IOzNOp=g1z0IyfJ~ zt`@4Xf9e&B%HTj#Bb0yK&Z&?;&Hs=l0FMyu9Q4OXI{qZawPdk?CnA|XkZXTRraW?Y zJP;zS8YLser6wK_(Byj@F>>(dw~eZNH5K@*p|N#VBktTP60m(Yn2Du0AaIu5ZLk<6 z`H{~s3S(I759W|j0i86909LIW<=l6tXJ_%u*-IZrt--zFclw*dDywM%+W1CgyGx2W z2{E!kWqeBizhVu%cG@lEh_2+_X}G&$6BqlNmI&i3MsS-!jF7;W9@186F$b*2Gm_XK z!wtJrCp}ExDAcA{+@_GHrU+&}%42h0md$}MQoe_EmWnlOJ3sfLgA{iHGJnkjb%gcI zdx+>G;UhF3*fb7jbSi6#sjb z>%M33<6@2LcV(@(&_HnZ8btP=Ez0EQDP!qQo-x<>DRehSz_eu2ViNV_a|?kCF(B+O6~ktPUP~HcdY!_p6CS|ekXjBW zqgzcC#6u{GXsC45M`74!VEz^8LR>tnE^3D)H9U8DKvV=|6T5#o?N-^&bNtKCSDfwl zSURN7Af7m7PAv9gkT2^F2UxZFG`|{?#?oMX&QZmKPy1piW;yQakapq^&3R9)+r{*i zoUXx}uG(u`lxi&h#pufk^N4G^hWN_O$TN#aqA10qP3mTw3zJoc(;~~9%U-CypsSn! z*oLzBAez+O5RIgZAS(LkP1M<;UP6x1EW@CwH>H%~oHrLnC&~=uTD{M3ma>GWEcx^h zf8`hi39RwF_T=>5#2=LoYLcc%D|a0@#f z^nmHOv!&e|X&KQ#ehj1qY;z4jv%+`^dP!5Wbby?+(UZy@-j3Ib)ocy^!yCsAb4bDWqTQZKb&l0C?#Z4y z-GmL#7ecrD0td~3s>^8LQVVF*5!3e z48PGniMrIOrpM*^Rqa5XOwDc`s=^qv!ibK=xaAA>;y2W}Qk2h*r#o5{UuA@(vCWvsRynmvQm?k$ti8 zIo~WFHmgZKFs79nSwWP$g&>1j6JEOejr6l++PMFE1;E>*3N*boH8&4ID?J9(Tm7Ns zmr)QsN$CcjXrhMT;^A)uSLxHws?%&2sQ9d3qqI3o{GADcFDFF(o`nFHD+I*ALgy8S z|1zBlYWwFf2k7}C?6)Zbswa*?hc9!=9YAn{4*B;Or&Jx+NpA%psk5xG)%H)~KX65j zy$j^CVFo`Zd=MyAPt3Yv?`*7ezrisYQ{nq*JTUu4;f$qi40Se+c=D?@6Wm9({=-1p z8l?M^Wv{4nlAsFm=6sJQjV7N%o+uOI0A1VYsHosZ$m2XJAJ`XhGx$4h^z}QW5 z0TwMQA`)zt`||ZyH&44lHxPa*C%tMj{1^&>dmr+rZjH;RozwX*Tki%{&55Hq(nNKo zr7tzZO;R@mk<rSEZ(m_uz&fEiT{_fBgxP&IPFz9YtuTbHyqX>+#BOiW ztTfo@dh()DmkcKLE9^>7k}IhD_(K&Z^do4lO?WNYGZSs|28<*w{Pt8zSwd9Pcve4) zR<2WD^=115KNf?2v-5eU)8>J~8RHuTC}GJf zA8eV8p2YZjF*x|9+`wcwVPxNSc2CS>);f3tlD6Lxt-YV~cNrfakSxD>@r5q(m3Fs@ z$|=$}PETfSs5@W(zbZD{~grx6flDe^(E-~dUQ60lsacQj|g#*6&#qZjb)JOSm zjn$_I;#g6usWizrx z05*flJ?g%5rrcn_PllHtk-N+J1@rSR=I*YeXaRsjB?rs(!oN2 z2~q98TeqTTeF>UxPWkG_hZT|6DFg4A`@G!dqv`8L^qr{3tBkIQH6zO7r$uh%PvP`N z8^#0i(HS{<+j8zJ59*~nV$&LLc{Cmx=k{BUAR78*Pdb$G22Q$#9=*7;Eqy^D-aqCAK= zCP-I;LN`IR9QN^f%Cu4fS9O%n(SW#+-?RLNO72*;V03;Mrp&AxWa)QRE{((PHMy+K zhgvZ+Eu-HxNqdkrG|PVI(@Y*zB??g$LT8hFgx%_V;izZRHP~R`XEWKm*I5+e7nx~m-@b3COgyw1Rk3|GK zPLGgTH9>3l8^4?fw01Fo)vL9oHhCDYE|@e==&2>72N4=H5bE3i^1 zZxDt3((DX7YEPjtT}VO^3A3m}%&pC2v+*^OHEf^N*`v*4_GH#ir)8y0UJ=SYX5A5c z%4cw4r`OrQHL9=>33S17lWK52R{haD_|t{GrB7R2V`^!+essK2%1axYj^PP=A&uV# z<+L;M!~T5vm9QI_^&>kw#rA2E6h2%!9)`1EkcW6_a?s=e%T}-)Bj2M{A`nOZNgJWd zP}#{gR--T-LGX5~?Vp>Xv>Z)xfB3*Ys@1|xnKz1ulI>5Fxk>OT9=(~GDTH6(bAfOMN-=GM)eCM_e0HFZm zji$jdXjGWXL!^M z2ljP7x3QU&kS4RH#U>3CY;?7?+?VRyMlyrH&oB4|e!*q@HEWd#l8z^r9`TF3FCA=k z&d*<(1TlC9dR5f0P8rt-$Ava}bbA})qyPc%+o{^`o;d(EJeopyI%+X`&e;E#qFQP5 zvMfnwjE;Ww+!pWUW*?Lt{`vc?9AQCf!T=qk-}B>|u=Bd!vgHZzRs<$ZH)bP??n}v8 z6R>HmSwgplLf3xviTf0b6gWisD8iuRr*4$(ERsy%CPh2 zONU}vkH{sJV;~&z+V*xxGP7>YUf33RPzP661mVka9GyJz;bwZnHl_;0U(n|QkW~-m z+nh8E6tr%zZSJP@K0bHpX?k!a>jZ-Q8LiBdgKfLyf4hJR_XiBzFa?CWVs!j>?*SwW2WG z$TlRpM#GDaa%_)`JVyb!d zAl2yJ#nHAkk|+W1@h}viIU?xsh_pA^VmqnFcUkwFO-VC@&-1Hf`r|v)-e^)yDZf${ z85g^G^q_l>2tMb1#NsSiwmA>_L>PT2W3{c z=G6hH7@ldoUL^O|2XKKEaGtXJ%H;rbaqy`y07rv|3(H7h^WFu2sLo9ZC)*@V@x^75*8`jEb6I@&H8a;ZW=BR}DPF!*E%8u0fQ^Gi^czg|Nsu<$t|7iD?#R!q* zmF{RB5rK)R#?X=2O_1LW}A7fECd`4+1%f zbAV4v`>EGSEb9|G86VaX^J(E1X2V*sk*dxV%QPT_Mv-u%5D*ZAet1?gTzia<)Dkuo z?z>DwqEx5-HPZR^MKe@j@>Pw=5Q$Lx&HEx8$SvvX)LqPr@=ENRdqE;YPt@ABfGVwP zm@~pVnr9Qg)X(n7k%g>A6+3B_zR-VMti6AU;xL_t&F50}wv`9A*asDgmb(1p5ySN5 zd}2-$Ss^^sDETY`*P{w=_8H6z4p&EMPJB-HWdqZ1XM5i^y7_qlxCW{d!FczPB&Ryo zBrJTScRSJD?WF1D-V!S7qv615QPJ5)tR@Bo&*n~-D$b*$mK@_+1bW?SFdt4YL-;Ix z-7Lq`(BWJjF!qAdP>b_HPU4h|9SQE0BAFnQu7!faDBSCMH)r*LtzV!1*40Njz0eSr zy!Oo{5i}9%bC3Of7<=>T=_A0v1R7wld>w+Fxin=T(ad3k)%)cwX&~L6wIy>+#`O_? zB&a|hOxn~Y0eT)^KDe;($h{_uKr~Ru;KXRt_smo8-=Wu%zsVFIABbNGs&e_$>~NW< z9?po0$Mg|RHt|jWrgZazYUy8|HN|jnk_N^g053vPNS)&HeNJU0qHW7U&k*CQtWs1L zSkD&Y?Tu*_?s^%>O=U;qV4#H2noXG&hv+w3y%rq6G7vv`{Izy8uS8EyQg7=YD0vYS znUg4`lyuj6deif#SU^`+3Jz~EhGORx^M@1`<~2J28-Gonyb&X`)30PS2qhg$k)-_Z z)-Vf0()rMq{Aa<6;5Gst`1(Qsfm|l~8&caSwQCi&e6FsndC1(?-(rcZ+Ek%C9lfM+ zn*8>mM|>Q1;tC-o2V&#E3z=iH%gH(itDbf-Lf$CggA zS=7W|K!&w$-?l*B1Ct)&KQ}JYxu?Kp0{`QjgUIpmFPk#68s6&<2}r*`5Qrz~Bz5(e zOe*0l~kWTiPpV*1*%&c2kmIa*Z588PRprJxq4K`FolWw(o8z_P`@JxlbTmm z+gkY70GZ)yHkC+d3`vxBq>oCQEBDqwCM>_Y{~l!O4Mf{5@x{tbY=u}>G`F*<9Kf1zR zCCsRIbUROM7$!yO+Nrt+bBBh~+XrDLHk&@%k?a;_0@!wEN#HEe?CLB~ZFT8!MefPp zpsNyVf9Ii6@j?6YXcql4vMceTZ!!*#q-tOk!^eTN^#d`MF&c17{@^g1Aa z*eEKKi?n>fMQSm|m1v6_0XSF08jgMeO8V+45f8zm-KH(!m`+reqD04md#C55WYZd( zNdlqgH6+GU;V?%rUkAa;eip$8@mi`OLt8?@t-bR87oP`#p59T#!oY%nO3C@@>&Gn7 zpkiG=d>KFbj228N!N{giXm-n_1ln8QT*a!%3~N$!M(JC+u6k^U7>&qB4o8yGPG$)3c1bx#bB zqCg5Vr`A7Kwa58NW<$giYQe=G9S%{>0|YDnIf2ieMstjAhz#e z@Gk+%xG|t2WQVtBh_2Bmz17t4lTW91J(@rj&Pa)lj?T50D#NAw*mVG$RUw6iZ%WmF z_Spi}_mQ1o%{WY`*I_iB`11QPWzs8S+nXNdILD45=ZEw3pXwSUA5}k1FelZp z?>yFh*^MzX_=wWBvU5Ks{k`v)J*SdX3jOJ2ELH;Xdabivzsc=}2QX_$lm6VAtiqXH zp4d4r}R8TtGkHMKV~Y^Pk18X{fkhcVg;&^9?{ zKWb!BC(^YM*f}}F$}@$*W8V_vKaw2?j3`qq(+vKFSNGhRu~vq4A^8afk!Dao$sR8P zE)In~Le7k((0Bhs(^+t3*>zo;?rx+*Ksp7ar9q^-2B$61Zj}&?rtQ$ z%`?9DAHW#bx%b*@&UwsEj?LQewZZdC`#3KV(AyvakF`42ISF$xU6eu}o|~qrg4p)?M17I@!^!E>5B7jOE|3J;+O7O-5&Nxf@usBqWi7%Mh=VIbXues{AtP~9V< zt$)%JUiwTs@DQc4Bok%tFuw<{mVs zk-~O%ZJ^K9y!NWLp})xg5xNOZ8j)9-&G>|_N2)fE3p}d|!c12kG-zmOJnrY@?sS1w zRV;8Q1n2dK`b@(ayd3w{B$qIro^)?^DGKy7BU%{cSw_tmP=l7^Vuf35T1W#_8@1bX zZG*{NanSf3q_b0ypguD`;Pw60y58zW@QYJc2%w@UbL+98-rhg2Aq6_6C67O>n@B%jfL!!Q?ODxx2@krbg`ZMy>( z$EIgI`Abh*r`0=3yjUrZ9ZTb|L-PF=-^>PdSbtE`XzTScOglIGbR5O?;ro8*sw?2K z=Be{*%voZmcTc0B>g0f)oSr4UGG&haHCF}QExLSrvKmu>oNQRvh%S|5f3sCDTVPM$ zx##QX!;oCwliMuII%F1Ze^jZ_hLxYUZgo>oNh;)dUXYvhL*8!Fw8A+H`SPMtqd{q) z(|v#ux|!9@i?IX%5?R##=u|rwHA|z!@U3iK)8% z(C)RDjFd1GL-ebN<`-LTLb&o>Bfab)}to zu(`KC5T0PlL}6e%`$c!&KP3uhsFSYeJHo3c{=Uzy##vmmGY!x!LL=9F_NJR}W?zin zj|z{LQ(WvIO+MCw#@DxdTFLuZZnYP@l%aTzeE+KUgKqlGWK~efGfP zcfBdkHMDYcSL4zBDqw?z%M2loC=ik)tKQw9ir?mS_Z5j?72pAP=#xZNp*;RRw!jhA znn2)ZgF^0L(yy-e*ZV=I&#jbTr)5vH7v5jSYW0Ws%R3HOpH|)+#d=e7g#yGyuG4Qn zNxXVXQpyr*(b|1IvZ>%za9}|Qx;L~wJ@v`9+3^4=6zwwkL9J8`669Z=PCGhgdnG-3 z|8Ez-YW6eZGgp#BU96^j+WTFVbQ`0(u#p%4uVf3oNqtVf>&7~kG7neBT zAnxcuoYEYubqXO!o!6R}m;?h_35CsKoprS8u)1t<30bW_6s$vJBqmEk^EYX04n)zy zDC7QwPY#irrG`3vYND_bma^hXerqZ4MrEF~aCuV}7WJeS5ufcDrgEr0+hMLFukBJ9M z7<$GM2HkE-ykt#xA1b+4rjxOaN5mY0D*dDf?vPG`we|*3cA1;7#JV}r4Lwbm-n=7QKRbK z7IYI(z{MDrOV{LkO0yfK5lPWNg$ha=>Uq_^>JnLgb1CCCSm?nG<+nY{$_otPPb_!Y za^>+j#`!U4^_^(W*5K-~;;l37Z^cY8oKD-nyfp)O=TqYd?~p4>0L2~DrzV5@*Oce+ zyO2(GgKV2Q7I}Fln~q-RT2ZgV{lD|4(VrZAj=N)sQ0`L>2wWD&)YpfL+Wd;5CSl>1 z8_(+9UQOXd)EP% z>UyD*6MR#myXCyG+ld%Z(Nvf20H4 zE&7>ax+ws8yB{HdT_Qb+V|Q^Z!Pcbzy4)06c~8nkT{p;5(>35yHqoq$eKAF{Iji5! zLXzx}KMrV`ocl+!@XrE|rCom5IE-o#+hwCkEVS=9t7uo}l^(biTN_Vs>9aqJzXTSj z_MEkp!aA8s@iG6{8PC$++)#Y{2PA#BotI=_ynTaR>R20lSy@>v?EH3DK@`~rj&ljs zJFU*nuD1t0a%3gy!=6Uh-@hu%vr^B}G?;HwUp8#za%;d|)l=vE;n=XGy@mkP64Y1Y zK?D{YdJP0z8I^zsKG{Amvw%LDAu%jMTJgXpL_@qKr~wI@Lq4SkqpZmsa>LwUcChHP zD;4rwT^Buv*HIyr(bJ&UxZ}rBQ%v<>`otAd^S$QDUMZ1f3COe;l{>w*pxqMHXQkZ* z{Sl^7?QFRj8)SE<%)p}xNcD`MFT10o1Gt|g^KUC$3N_c=s)d2}!3L7?PgmnYo1;YM zln_UzHsP1DUhaErr@F75k`_NkN-jiTh23n{qW+6eGZ+o8-(RdGLipjx9#93nae5p8 zO5=O^J9tN!Mq;TojZ~`iaqCt5@%0}Vv>){APM4u>p*@8ao!2yhhTQEh!u(c-OmKJp zE|{Vh&UgZYTa+Z-nNS$5zXdhD1frM_6x>9Q*|ZwmjR}BN8!eTf_c=nV>+wKOa|Fx? z$)`bNS$yW+2?FmKR;G>ygb%i)ulc8k7v7pC@%mN3T4^wj0N7lTKB~Be9bTUs@ zDUmB}Hp+jkbkr{g70c<6Jnv3X1CxO=l)&_haXUkLhIL>GzP50zyY4$j-}GF+A$f%O z=}I&FtTK)`+F5OFE%XP+LisE-W{68KAs_}TrG%rep?pAOtcay^z>>&I+8)vthJCmi zGPKG_t*K!fT<9?Dg}W#R>;>nhSIf|HWUwhyOaTwE@{cCFo!t(Lm1BAv@Zqzc>yy`Id1NY+q%A>us+5j$=K$1FgLPM%rt-|c3BHTjT}YFg^qKxX-Yr(( z)#6QLY((1K9n92)ePPHp>$J7MJ%(4Z`CF`xig&@}JKC3L@Hab~TccCvZh=lY=Z{+y ztKkT12EQ*1aEMgb*GDOkftwduH7ijWG^!=_Hv~Y#8-cPODZtPw{uGzw4(fz6GBVyY z3E+y5Sm5|#GOB(=`-I1e!u-Wbs45D{8~UPsT=UxE0?4Dg02B%jNri}W`c?GKiYyg8?r0`z7!@RSHasw3N|V6)Y99A{Yy*QaDL8r zHNlD{SVh$mBuj^biL}s4W-{MVc&B?nBMiif2ghD7&=lJIUiIkkbi(+0X@bVE*=3_g z?8$b*FPwZ>tuGb++Gz3VOt-oHBOO3b58ji{l6{WYV0GKFIKtC>+rmY z>TEeD?n+55ABSZ7lS(mP15u?+6J1pDt8l<)@tI$91ia2TTHF>9i%Ca44KB36!@&e` z26nq$L57aoBX8YkpU({YAX{%vkzx!_rOY#9hvz>B%VkhU3m3=^x>(^aD{uVVy6J$ar{JL702v8Tc}AvrGy+LeQ9=4Oj?CVg!d^ z88y+_si9M5O9eOi+5KD6S)#-KWOKcOCYaYE!TY0FvzEr4jw0ab+n2=Fz^@rR6mpll z<5Y$w9~@sD8^4&`;OqWV%=TYxlsG&~K&P)JDh{lJvG%+5-W$oF6@Agp!C^NYq66WN z`*iD$v(JR=F)jDxackP*OJ#hn+vKKSNm#CGkES)->OCMdM;~WqU~|Sh845P-$|cZ9 zqkf~4l_96_#xi+TBItkMEkHkBf(7x2g&|4$tZ&Xn#>UV}HSfP>5VVE;H*)_vPJ5>R zq>CN*LaEdUENkl?l-9joFGU6%S6tuI@L0psre{qnG|5dhgkSrK`856&_eZKTK8`w; z&3)$AazrYkvFkn*;h1dgU_$zDD8hY!W-x_~)>fb;LY!~TU_4E<$@}ips*gL_X~Z{U z9Q?wX(YSePk2+`%vQ@8dY(c*__Fs%01?GaXWbWVN7Vkr>R~$7MpG=_|s^> z1TNwMY{0Sj<-oymu8hp{QxmygHzhD0{@Ln_ipU>QlIk3ar|oU)ukFWnAGuf5XtBh+ z+@6N?E=#U}6!0%l#9{EQazr3~>}8d07)cedL2Ic8H2RZxuN3rY7{>@)h5`DVV4WRC zKM?Mr$ht;)K-v~BLt|2?SHnFYr^!TRH<4kPv$eB}0koGK`7A-Os7pTom4H`dF=j6G4sSk22 zpa0ZZOy}!vnMTC|HuHDC7$hX5o|1&38v7Tcre>7STb`p6&7$g@rAs)y?Gl^Yh?yzp zch@8ylsIc~O9$^jKE2Kj1kG?-eT5 zYY92+3%N3qPKmR+E$!Zrb2H)(wejnqEHB^um=&3f7k?r6H&GLWbs0#~%DZ)a!Etz3 zK={e|0Qc8^`UR+%>CFiP;e^0ETU*<#i(0>0?0TqnGmjY0%WXvPFwNT)JN5H@0S>3A z=_2_cA1_i`LN8e0wORvKj^k#M3&OW#8N~FlM(NJ%z{BvvDCmLE>fa zp|NlTw*FoaOAuOtI=qoTIf(MR!c{jmd|mUf6r!n2i%OUqGweBBF#lLbG{wafN`X8; zc`m0gAJsGX{x?y(XHpD0<$Z`>W98ZaPt|w(YL}jxAX*a|e8J`4(0NrtiNyU({HU`6 zgJc5sD3Z4%{UOu%B3*9%Ppa#X&LF@sU+)of{ZP_kzl+smv*@;iqcAW^5(VOfc@F7t z`xCWH*NK>qt}tZaeG~xl6+=OO=^t&b#kGpx4sMpZEjihYG)Ga)Y3C>mo^i!d(@c$SVLPR|0-LS_^0$bZp z9(&B(|6cj0Fsk;j3R2;Z>-PXuvI7u@n_U+TzzmLXaM9;U5dy&$ z`tM5qHVJl~0r*Bd<9CJI*eeja+A@;7gt!uJ3qvOhG&lg)ZT@!~buVDq5Z{~>8O`KU z&Gdo*r#CFrYJMsCf8y@N1aA(tz%K7D^bc*7K zt(rmj>Z8l*Hp@@U>#cHJdKP(;K?0wxTNa%vKNuq55_18LGK&oP|-?K6eG-9T>{k zr;wj5Ow)GF<<{FEZ!DnJUf88JdvC}%Tdu0+`=R4A{%D68#w+g{wc-{bb%CdK(f=F#3IK@$PeUlL$PTl9E)52g=0T9W(;M(*-e{&|WMt>ndt~pvSP^^ReGC2>NtuIQfjkNYL_C84 zP>&)r#P>v-QwZW+b5OT8pQL6mWocvylysZDNX#nrg)1O!9JV$xW5v&r-64Nlh{hJE z4km-Um~Z&A&wS{tuKQvr4(~!25_S#y183$tMeht=3Iq|_OvW>DtMm@h9K1-* z-{D=1f|3hD#%tX`Gx?t(mRg{3ZzO|PxvlLpt~uh{f8bjJJIL@Gao$9_cfIJ(z=L*x zLD#1mu1EBP2xr3Sm-G84X0Xp?@F4gDtgXUlGJ+UNn|+f3zsp63;uu)oaaje`9dNJ{ z+J46$$N6Y6E&I$>Hf#8j0gF{6lRAM^yE_hHLBz8QM))q#VGTUhcmVFGvs{A$!m0t`xQtBL!GjNeiF0N0 zX>UAzB5mrg@hVw2!@bzQ(Y7XD1RSG4<3aYGqdV#mpnjX5FGofOQ zW+=;kuP@FVO?^~Owk}qw$7{KD?%PM~_*Kk0 zXod2^q>eZ+K=W4X*|w&|Z3n+*!68zmZ*fml>_)cgkCjH+Mls6nGUZ%nXA{wJ`#iDM zP53h?)OV6$aTDL6$aFLgcIHS8_I0*gC-B3TWR7_6VNSl&5{*Q&qinav+t8rN<4+A;*F(lL;t45AL7Yr=>9wNVH??k>c(viL%3rM40D9W_ zYzeoQ)-%U?XYdY3ob!n)mT$rk18-c@GIiyKfxFshlAbZG^~>cSwPLIsuN{<`)mpPJ z@eP3U+Xv2)xKA#Y(vm6w1tpKiaKIYRrYvExTBR>^QJK_-PDh%&020s3?Ot<0*op#- zgQ!?eG0k5lkY`b$GFsb>AWCTGfV(Jej`s~1{v5VKM;OnEo^q6=!CF{Q%OL**BDIfe z;2ITqqSp3bOmmCDvW&ior6yLCKnWm1*Jg#=vyZK-=0r5EJ89dbs@$U1AZY~Q>4Y^s#&x@8eE_7Gi4gvNp z?!DKp6rm7U0!@vBQy9DxXdN#9%&L$v_Z4oxo;i~jxA zU&NKo#c5jkxKDEXVQNz(?w(%$IB3VtchT)oiC;5WQEzogs=Y6eCW2D`i+itXsWMRB z-(gR3jN;_P0ZPzCT6TjD{UM>LUzoUD4plI~3F^t^jzD&lC76?Uu?}e+W%*HDUfT=Q z%chA#C1PO|PRKTa*gV|CHCUa3p9<;Tm;}030H){)>(sFB?r5(^(~26FzG9s?IDNbR zEzFdu7nn|&NKaNv`&_#@h>fqVOqN(l0(==1j8DO59u)-zaxgw2mIcq!scf@wS}wjD zv(%|V&gFl!e<_8A{5lXC;a&(f|_l@i#Jj%=n^R3Rl(&^VTT5=ULyZD7z&gTM| zo&*Id3N`{)_z{#$F^aQ8Qfv)GVOz?;u!Ei$#NT?E{m3_`nJll#s59r>@*}D2XfdRM z!iRMwIr{v|%{JHw(b%kKGxbd7+(MmuhmW;gA^OX}r%de52K`zh}Bui+^> zmmv&L+j{(N(xH3NxTk6xZdlFJ9A=}@$GlhB5+`saaBcn+4f) z6)+CBX8Etc@f6Brq1EkdqClJ0WHcEU@OIX_&GLs0HN`>_QG(#n2LQAkMXsWvVzNw~ zWh9*&9jqte1N236@E(|$vLV|#cZN%KRh(`f%6wy**u|!O3IA@=eW3_Ns0d-9pfnV` zDI;N`5Kj*I1$KVDH##Z`_2v0a|E*kn*$DZD#V@YSo=ia49H0Ha;cvdW@CKvtF7xd! zEVE2Y{*vgVTLqnCa8H=OgQoX!`$a8*Vsg8}aC11Z==Z-nCJ+|DWK9x%jsUxlLv6^K|x+h`&kLn@r7PmSa&gJ3P}*6%LczjEs&dURP0Ky{atC=fmy2d0f9-r$wS# zecTwRCrUlyBO61jj6=KZP!Z|@nSGD-?3@)VFf(2Kbk{(UUhi= z`-;{~VRmx4Gb{q3!opu3CCqMtelI+J(o}b*;6}?kXnoknw%%ZNa7|lAG*`L4?LdN{ z)$I76Jp~89GI{aQ-d-56y%UvA2hIBU!<&w#+6?|%mCEgto+yyiS1H%RCgeE6qwSbY zsd?1=pj?TyKY7IKP5f(TFzR;Bnc4p`6EC3Th%;$*l=7>EV`EdAeb7MTyp7Wi}>uM%>e~7rZ6AHl;87b8YtLY;G zr|k;H^^{zCH(Z_i82`d#iMph_JV9XoP~Q00pe&m|?qqJh_H+IB7FV&I*{8k(XZb%| zh;llQFk*jD@L#n!{VVjeI|`)=yQNah6(bPvO2%{(J29Ze3S)jR2gg5W$&GIg}GyvtpRA}jfO$IX58eGVq ze@c`#Qz}wPJRYh2-3S9$+%W~mGym}2A9pcH;a2;Dx|ZlC{^?y(<>HO%Ann;gJ3L>a zdMo_vz&4JmTFSDl7`t(Z_sDBzIg0Wo6|9C(tvoztVcA zPUin0EN>YJ2@N-RZx$xxOt(%2Nv9)Je@71ex*irhS*Kbdj%%uF7E|BqZ&_C0*u2%n&q4WM#`SlcR7Z=9U#ZZX8|J>c7 zPfXIha$<-hC(I9@B7zZNRUy|gIeIh{yN2+OOwr3l8~(Uw%C&kpVE zj-?=PPyQE}wNzS9ACYppu6UYSHSq++2I9>(LQyWIZ#Ou86Me%00CET#g_f%Ff(b_V=Pi8C~x z8mnQ_p?@lx)YZbLP|eg{+r@F_D=l2NXKO46@~W5HLn4oGyZW83;t)~;y$mqw2;~nY z5M1rF9tP7Xi^)v-ctJB^li-gfEN$ZRG8mxN2L?_=?#eaJ?J(ShRx7f_j}|e$?HQ~- zQz&3g5*6MNcfvQ09X4wwBoo5~dnl(oKlz(*r zZvh5Juf__1gMra;#{~ zHDPq8Y!XV^jqH~A3;p*TDq2dp#p@==2P9&zJ9u=ve+3EQ13_lvadM`2#|L}s?Kpi3 zNvw*WL2xZ7s7%0dcgV0QoFRo-7~TCHyWf@6vqVcsTRY#KarN}X+LI;K-X)Ts4l&Pz zLy@SM*A6AAn+0&Cf;Q;~Hv4tq-e;~{pAgk71GWP~gk962AN>jiU!NCKIenmHQka-l z+W`77%oh)c-6#!DCT3wVs2}^O2PkdYt7n`dZCh>Q_q{CVXm>M2k z2n?=tF#bS22@MUhzUjy6c*Xb$3lA%QCir_NZ|?kh5xLJ77yX0WG^ItGid5mByy0=f zrvVhgDN~5X5jqm5+2yteUg5!tup;@am(4Z=@>*79 z+f01qtvCvKGXCBbt2^LtU21iB=UfrBZIKY5<4OE)@Fj0O7Yp4;v(3H6etk5R4SM_1 zcB!Ev;P$_lYuIwqLgxeHh)x;Y-mq7}w?pw4hB%s@=g&}U;V}o&$DT6*PtuDG=gWIV zFtz>!1D;{OazTSgj?w#kI-niUskIgNb>`pOdxCrXsr;+;E^(PWEx5RDq%z3)Gwf{JK-Ua zGJDjf&HFV@J#A*TLUWv43$cXA^VR_`_OAOGet)I{-SuoaNSRjNxVI%LmDLq1R7MXI6_CG+HQ%m0#28Vwt6v7YfDoPF(u|RkDYfdX7WBm3{W9WodkV=eQyTPA zB}opvfAf*JK3h4gfFSzCgOt7`^6M95g6Fi93f+3sfa1n30L2sjb=BB?cA<5(9_1PI zDnX^fq;*?cCT*0qU)xsAKDONS&B%3T(%jzc9)7>cq>*@u3f=GVG5qqT>V=zSty@Mq zayjiXM`g$_j?c`NS}tB?O{d4(k8c} zHp>|sYIwV-bawcgcU@B`7dr6z?-`(ss>`9*MkM zS6hXSwL3mgN}##)_QKzFt$ft!tF5j^&^_Q&0*0HEHHKyBTz!aWvNb3dqQ4JDcHX`v zU_I6*f!6)!W|+Y!ZdXTLo66eit?XLZpMt@U?Q7A=|01*6<8jm?w`V2e` z2vx9$ugWL2rTNzP46S3LhqXQO>{5Fe>_?d`SU$JMnnRwL>oH(WCi5gqFP@u79d))+CX*=mQ`NZxk&#uJrWnugtNe%C)_HhQ42EJAGv zPG^p`q1Kw6Lav(-I>S$i<|Dn#dk2;0NfV>tl7`!u4{HNl{3HwWv2D! zQQBW_=5SXS1U_vHzOUBK`?F|Q>f?A8HcLu8ct@P2H<}tHp0J=ZkZ@qYA;fm09*GzZ z7FI+tQDNZkS!^?4%R=-6baMPBiJHjs`&I0FfeU0+AOJ9iBJg`Kn))2T! zc{>&)yCNU}BNI6t-}d()=@zTgAiuSCi>%4)!~=piF5Maz%oC`S{FcUH7AVZT6pG_X zH!V1_)q~rcneN7MpPMh0M0|3rWgK~ikT0F0)j@RQOEN9kZk>S z4_f+q^YF;(5N{%tv?vkZ8yXGKPHpEMWErq3DIp;Nns@j=R_MdpmbrnzTHIEl@ou1M zPVmxcdV_V$X?rHC;iLDHc0+FDO-U~Nap6rFDye6IY>EVE=@hKMtC#}$DyRc8FjxgO z9txzaw$*X<`gpmD9q42U&Oj0p^HD;_jeWc8=N7S3S^rB2e@hZ6b(N)*^0N&HB6$*- zp}*|AV1teNU*k9hI(p-ybv<*e!>SXK*+%?~@c)VQU<>d9gDd)?w+UX_qt0gM=nbUGXc(+~=*4^*p9YEP9 z{7ug$k5uTa0tHe*S7!3vBmAVLvy~`k7oz8OAxc6Pcx=Y0OWbGc%LiBPx7%rkJ!h+j zt_+o04G6V`a{kI>e9qQ07<`R3?0*pno1Hf@&QDtS?gl(ua-vtOqobqOqf=vVI=DfI z#qInK=^_A)+_vRkKG5qSNtZIs|I_9bnSgSK{5ePn4er&Q)PGB&*nRRp|Fug zoBvrl%`#%FFbSWoSj|-qaoT-&?Oc!w1>%5rFH}vWQHW-5#eZk4SDi^|U!@}f6vALx zjI2$i&-zTlgxRS=9qFF`kDn)s12q((ENLj6 z{`hM@J_iqP!Kahw#fvSfR_W>PV^d#bhOg?wWFj;GOvgQ+*W?ciy#JX3Cn93Q6l?Sf z83`3TEp(gEoy1Fi`EkhR>+G->FEzQQPJxYb6PgP^R9c+BJ3`#+eqP^PAj39`!M0B& zzi?k;i=P``5qYFl&}lW4qn5E|;)FZevmQ9NHD+siX8m%P8kICXyYVy`!G2pxc(lI7 zikOaP+bi2S-gqzQcO3RWg)ghijNrh>haWs!rO#4_l%Gak5wV)L_vgTBzQa02YT}4| zA}D!{3w$8Sf`Y2oO*^wA0Jso9D!^zrS4je$!RJCsiquWWkZ1_*rSh29m#hg{=Ykc=psJ3V0 zY4r-wUOMPrs#KM%vz~gV!x|oWw9#$%M&1M}MYZz;Ad@70dz4Pal5j z=#5-hS%oT7Q64_DuHp^j^}}tNb-Q%DlQ$NJN|g#jB9Qr{{5Qr(TK??Wk4TXbUQPB& zh7Ob4%R!_e8;)#42BP?JPwLBqMXN%gkp(Utdf;zi$>W83If!QDy|MMxm8C-~V*j;` zm^s(Wt>_5S=N7|}>p1h}QVONQuNQnedii?2tc{oif5)+-S2C&{FDysWYanQ&_fHER zVOh}#2=3oS;ExPMR}fw7Z$R5iA`9gIj=BvDv(nEoSr^C{7Xm9D#}0(0=VE(q<-s#j z=F8Nyv>e&HG5wRr<`z0G>p^?aW&@?mx0qA$D8MGI%Q?l};yPk*~l_Vljm!o^N{c3P}fSPI!%po7+A3L^%8t`7soZoQ3xOaZTtWg#D6G=_w} zAi?_i`DFS_DO zz9KQkIg*tcGv;9^w3pjZ5L3IS+-83e$i#&H`;t^~VJ#~!CXhYqEVa;i=YPJ#US*W@ zK-rLM#);2%|Duco3nRKWuKTUIb~mRpXxJ?KKe5M`85g-3aTu@P0fPxu z*@pCmhjvJ!n|xG_b}J(CHyrGJy~qgz;OsxBWy^jQegn>&Xu0%Fbg!;cgupnzMXp8k zjQbMWWn(%9e{#e`{(()f(Qeq9pWGt%>D`iy!NfS{WtE;tezqTRG8;D@F0^4cMaSLl zaJ^}{=9==t(fAGWuoJYdu?%@+R+C^xJxRG$U$E7d}ZRAO*DI z3?7Y#jC~G4+Soz%dlNj`TkGN7G$%wKfdmS?cORP0|9J5nWaS5usj%p^L5$-gG*1_5 zMU|RQ=WtohmQZ+aenlI@^8NHT0&_2Jd*v$$d~b}I2DX!<^MqOJqSos`La5-2^|I9a{2Amr`tsaA=QsoA6hu0L>47(af| z0HW4o6VK*yI-h&cojx&DDU!7TlP>Mo42`!@6F};m7=^23Nu@T=?x3plI+VI;YqQuN z+zT&+&kQ_oziP80wm-T_0vA{utsk?8!mK=HIugNBzATjrC%C!%<+HwnM+$1=tSDRI zofus>B{@sG>y1qh5~67WwEIN1$fW_Wln+&xO0Sk{*24HF^hw@q^oGT-ecPjj)G!4Q zHgsL>>#h!xe`!y-oVFE9r6avN`wrLr;S@*+Ao=C;rcES%zy=uOP(;CA81L&#dq@#D zHTB3yVTJe$6haPi&CC4HX%07kxU6+LHTQ{@b>KwK>QkA#m^m$Hf6R1hON~|=oT6A{ zvFHnK=qHPzsPa1P!nj3ZIPbXXE13W#kbkOb;FF?}^J(GIMsNQzxG5#fQJ9S;uG~Q= zz@m@!M}zzJ4#dM}dVM@%iDeF0n*_WVNPJ68mS4elraxIQesuy%rNLtU!LM(wm-o^cf-Vy6 z@bY325==GbFGkHptDvnFI&-C4oDAx3zBi@t=-EDaarE@|Lh~C_n{;YD0ftWPpU9W; z;h9P`U?#1BAbY$I8JUb{(7*d(@|Fq;t^;+JJ#Z>>WQ%ye7S*@#SS679ktD+7{9ApN zy(l_7p!#C|3!$cuwZdZfnW#C?`1$nMBX&XtzSwrT4s%9pPW079aK22ZA9d%0@2);0 z-5@~*fm%2k2H2`TrS)1F|L+Sz#LHICZftDy&)+t)nbUw}x2*43S-Q)2yWBpRZ^Lf1 zT~2mZp;P8i#$nWg0L^NmYXLs2|Epcmf|oI}J@!;3GRD-cr=N7tXiJU?d#jOL%o9x{;V9l@riu-uL8e&3bx#PJx(`kDUQjqhK^&<#)9Bcs;Kfy;xa}f9=po>z*vh9nv50{R;qh(<_m>gMuJf@<-HGZE19;q{lQkFg|b$;M<7Xrla4j=zPivPD|I z*;=$3PGDXzi{~G357A~H;{TSZqsNd5B^v<;X>4w9?C0a@p$ilgTMwpl7S(X z30J8t^Ze@wJpD{19wfJudDOsCU)>M7lSUi9Tb+?SHh6NvB!L z7*8!nlO^wyu1q_&pXc{w5SHI;+&3GA;4nBYp?#y(`Q01;k3x`ipL-BefcRu0M_ZfI zY6<4eOW0az1N5ltxYS0^pIL z{2~E!s~(RV+%?AgHHIZeb*L-7cJGVPTbPn1XWNhxWSXAUX88C5soT+yeloD6STlUS3_LoXyV4E%nS;kn6#>;R(J1y=~CQ`dguv zN^O_=+wxhTD@LtYbNwGv7ZHMXkucQ%mrd|abfVM)Aaf35^tqJpZAJg{eIKXevld4i zFQk_NcP&{8^AYM;i@@*2x6R=nO{n~x$dAPb#mQFG1|hx>ZVAJn5q&~-rSS4Vxi~H9 zZ|M_|!`=v>%Oxdj3$$SwfDm{bd-N>8B!1HpE+b<@-uKwpFL*rMVL0C?lUJAIteSq8 zskLZ0m0DuIzld)0&b4b{dXH+>gL;NpzkpGvJ!6B-hJk0kG&(mM0N_8Vr>>;{ro3Hyf$Th^FcPWY^}ipK6y;vHWq9z1~>(khp)W39JHT>8d$`(5@wx^!p=yxFise|F zpC@>F*+GMx-JxU@1viXXABZLqVOm+Za3OoIK;_6R)mczkIHh($4PecIx|ef}^`VG8 zf?oz1D(%nvq>EAeQDcJ7?@9EM*u6YAzHi^=Ie*~j8tDUXlHtb6oM{3{>Z&aC116rjvVW`@{3m zhX(>}HK$cnUE_US&zsn>vgCG&QJ5vruCh!bu)gzAhYsTUL5Sl^)(3&X8!wQd<(a?v zU9wg5pSvKr3^f)`v)jUGy%Tq}MSv}LD6pz9GBKq+r`a1?fjR6O3E#)l)s`?w0r<_w zB%-VtV~H_uURLu+qSCplaOxo}4u-^hAjqjaPQ#E1OV6AK@#X7sFC)i7AQryM@_Q-Ev(%4}^TNU=iBe><(13s=ugMZ9%% zNKC{B^6{D_-svT%WR7)9LyacmgMkw34MPD8v!&{>JDD4;o5^AeD+@ulQ=N$fJ*>4H z1ma5{HtTs-unm<#2equCosd7xXDVy+hlFIS^rXdog(g`GBS95@c0@|5azx} z*LL-eHmN@DMrlj^VC4Peas*u!hYcbn-|cTO(~{MeMW z@dNgJuDU9P0ywR@6Kb7{C-1Z62I)VcXe3C_SB)l5#5etl_spW5#qs8-!fpJAlt z?3N+szU$q$O4^v%UUAcu|BQkk7Zq}rbk9DsHXyMMjg*Q!?jDNc=D|fGkCI~VgMY>P zfXDjJ#4wn4>_>VST&boy_L~Nin+3~mIzpG=d3Vbcp2Udcb_QvGag5Gg1)17z4To2m z7JIQXKTLAwyf?!lYU(l0_}t^@BrI;vfjmQM4?;OlW01k5Oi?#WWCdL z$`Np{I9u!Z-Q0^Wd|oaN29Og$a72)2(RbbfF~~?*o;#A56K;5~s;_V+-C^@wTGZ=E z3{kPs!UiRsAE#DL4u8@s05cmo#?2B02G~qT2o5+ZYuJcT%@^O)e#aPO~RrTc#S$TaZc<`zJc?532yuFZ@IJ}2jxA=fCAjp)#k9hahG)gfjAcZDUbWZy)o!v zoy_H~pegqz!mF~Ga`-C6gmVV}m1i%vo=RhiU83<)CF?=Lmp+@I1C&d(s-qbw+irj!dnmy*8XFYMFy9`;M=7@;bf7-g)BA# zb?s{yfsSB`LA8DI|7bePuqwN*Ytt>=x#^G+QMx;%1PN)7Zt3nuN*VzLq`SMNyStH+ zl9u?^zMt>?4+pyU6?2U_#yS4E@$%Rrzx5o8!TCGOaQ6xQxXBY^Hq=ctOFt=oz8#GP z%Q`ARq2KT(O~SwqKZM?_%Q3{D!Bm`jGUETV00-%v_frryT-_GfuM6_5 zXX7(7_$$RD1h#Fwe0){=H~4>w0T#iG5F#qC-vsDKn`31H8y{xLo2rAB^--NK0^C=^ zQMWYu73^)7aS4i(O}K|X9X#wh9G^tj$M75H{kDKj&KC4#S*yIdbH0=6-~JKh4lxNoaF{{MvTACeP3)d95z=-f`E|) z>C@126j&J3uFJ&gPKjU-UX~K1U9ZGtcYc`q=xq>Sa-DjSylOa;fcq0X~#=2N7OJ(pL;Hwhv5dvkR zNkZ|N-=jc|PER=uF97Hgd+lK&qxPnWVuhCTMi=THwbECp8yKk^6BycxX zE+5`y2{z5pExg3hh|f;RUIna7lf0A`tLz3S{!j<*7~G8A`=uZ<9`{xcDa{z1!gl<* zoKSBL=aBXImyG_+Q7lwjzT|hS>;bsa*&9P+Zks8z?SfH>)zHyAJ$3Mgc&Kuj=GR7` zeupNerv`ib?~eL&y`sf({u?L*vD}BB*6m4GRfwYOS(!CX@RQTm5?yH+gTVIDr8ixL z%smr}YlN8P*RmO#&+8f4+>f@2^XvvPz@@Zui_+o8Q~w0SkK*s_OZ!9gI59H|RVK4u+JWO{c}$VK8xARB z<{>(vW&u={KwEzDKlgQgZ`+z`9soY|!Mx`lWK@&D3w>_bpx<|p_`NCSg@ND*TV@-vxl&e$Dl6@Rz?JA7%O?p!8970w{THDaXWa=N!x&h(dwY8j z5i0=95RgLs_)gvU?MB$jPiDXUSKn5X}+fe3`U=r%gV5xf-u4{M| z*|%@EjLSy)fhbMHyxG4=a3<8yCh0I~GS`gEG9SuROZ(Su-0@o}M^_%Sg@AqY(2%4UMjJW;y%ZaECOQqD~)& z3&+eW8<6EwnCT%le?03zq?!iSvWYg-kfX~qa0K{yU>la!THLS%S579rOKc&&Q{Ep= z;ZVo`Wvo5r=9-G>!mvSYNT>u-Ah(xyy7uMT!S!=sQW8B%<`=R*S8dZzr4(Wb;!;sT z%NcsQy23A?)udb9&nNQa@R;?hO(Se**E;+}SV~0syVgO5QeiO{`NjxD8s#6}BjrD_ z#R9{7k-x73b5uEt$zG|E(x17}x|CE+0_j^A!ObD+%NJ`6wAP#R8L_X zqyw*GY&T~aO+?AQA*hB=!DfepRAF|LFOtMm#s(}vPFo}D?k^37|Bc$ zhhii`=a_*T0OO=?_Rv@+utjUh_TOb}N4Oyr_j&5n%t)8xbgeDL;wjKWH79%wU4`q1 z3RGiajQy63!|!&&8YPFoCuh+4=T;4SFjBu6T)7kBt^=C99D?2}sufKqlnUirXPASh z{Q&xbW(zN*4Gi{}w6wIF`z{Bsux*cAd#{G)C0vL=T#jY7)L$%Dce4B=nFL9fY~Zhl zwKnI2XXHiDelBwe7JB01ZIM(Wut1tcIw_Y;;6|M)$@x^`%J$0SgnQxYIB>dP3~;zL zWK)FMyrpjq*GliSINhkn3h$0-L1>vp#Vk~-%DIL6>^ye;IfY#x39Ezjt!d*yu(dNY+=x-#IzQyRTRMk)IaAsd}y?uUDtkLn$uRHhyi{YxC z=t8osj^RBhgm;ll+=~&jH}FKwNKJ)UUzZl@3M#*&H;|RM3G6Z^{W%bK15eb*3=;OG{xS`;)FjA;*8Yv zb?^Ao%Afv4qI$__R*`MTvmsm@RIS!1klCzN{+bYi)nkx<`q(WBt5RV};r@jrI9i*l zQWgxilihGU6|2Dw%P6g$B=>jM>7LIA6>#mFupV-QGX*uYNLPP*H+^Jwnt|UYSlM3>_e`nwdjJ6$&lU;ul~Hm(3@e=mydv1HRLvI0cb5*;K^o!;dDU`*tb(4G zvfZbu(DE%1pBGyb^MswGbzkU=cYioLH(#X?aE5y?t^AMmxi5+cvLNJDKlT=|GLrar z_`Ze%EQ_Zl%#Y&v^3cI{JPj3>RG8EcEZF=x>!K^oj_C6h`u&{an-IgOSij5gpDA3- zG`D&kfGYtz_jhmfW0Q;Mrd(eIA>!0JCAPHkboJO*>Nzt1MCEM{Vo$kak8;^G)w%K%UA)mfzpVmK`bdE2Sm0wkD1Hj@Q1 zGTNeY*~}C+UbQ?bFf#zScZnTS9briUh{8FDm?wM)%0wIph)6}ErObpJ`mE~*tzn?@ zyz4ZL3MeK|efonX3Ki=lcxGE;Wi1Q;^pHJ)(SUN$&DAv&=^~Pun?R26R-}_mj>2ly z0_>o2YD58Mn=V0L4&yVif-VTV`D&sQBfd0ftwnYZ0LH)k%+^fM-jQ53At>oj9N%MMF)%hd>?;vf!}>Hjm#MFMFHiYmG+0o`&x0jwH&FTLpXjBE zk$8A`upj6ka;IzH_~J`MtRNo(C^JJUWFPDj;^h5SFOQAxWr8y+0j?sM9dL&b3+&3Z zct2MOTD<-{86-n|Dip68w-$hIlYsL5)?v&PM1hG7hi+9GAFn@WK%UNkY!ixUZHqwdSI z$)CZ$NwY<~&^WM&oNH`Rr_urMiU73~H%Go~2-+vLzxcHAq$j9uU`;tR`~73fnKPM( zOKlcdsPsUWgxzCoEu3ciywQ~WgaBqd6u1Ol=|+~8%t9FCyejQ4-S>6hxfqFaiKym% zI$SN{*gvqg!=VCRCX^}9d z9z`h;g;a-iA5*g3jXXehh&hrSM*@5ISLVbi85;1_W1~Wi{j!`t=0eN@Dp@xU579hP z`=o4kWJpsBjkK<61^+7;7^us5F^Da|d%P^qN<8@KqLU=ze>P-dqkz+IbRNGKKsYrT zL-HZ(-}dprXBzJb6SF7rJ7USSGqEYRDb|Ay0NdT5)=EH;h%XLUSIrYyX!GJhImDzA zCO=*8KxQV~xBSbTLn6(S{V9o6TkQf!>B(`2gSm_tGhsTfQT^0$8h5)Kz(fh4+2J5$ z(o_CPIg`(k@Fh`M*D{ZN7qYQ%99}2GZ-;?bsK2;Ig(LBqyO~_=mV*P7uK68!-mzd@ zQ|3LDSH*F)0cqo#a3ndOQw~tQ29nvx8YP0z-5)4S3$ba${~adAWW2#G4(ZYl3XXN% zFx31mxe;Ja-8aP*&^~BSG?noZ>>|#$=-j*h^!qfsb%G|A9-lH$oY4)yPG^@zCvExm z?)#nk5mOnS3zbGWXD$gN986#rwA{3@9}6W;B&a40-Z{sxcw9?L`qgRN(3db-ro z?0IJ`06ob1g*>r@>np9kGD^luueA$bdSPum)p}0MZ46-;p+pBTw?i6vmZB2in4Ro{ z+gbXv)Qrp!lNAX-??XSxPc2vCq1Vqe2o*2_(;UsYl8}JEfU|qYdb3fBe>X*jOMva) z@-s?a@k8v(<7s=y1<}l^HQirytBCu@=^E>gaT)2(7^Tuy)KdhzqZuiK7Hs!kN86mP zM<8ygwl@}}a=O~W2*rfns-o{_HTu;Om9;_9xY^neiBOC!`ra_Iz*go!7oM(hmR}DT zf6%zmA)+2pS}cwKh`1mg4i74XgV>qGfG2vsHT_JCp&;P^|Gjbmn{g2Bf8LX@LCsh6mLsmKO9}f=?oygKtC~=e!#{@|=T24+C zL@!0e;CH}aFd!q(t~Qr~wyCb16^yj9a6GtOfPtO19IaxLP5{ z_kUVI%DA4HI^t7SVAf!!NLzx(=w<3B>MoEo3MS>Yi1YVX6!8VxwdeH#EIK-RM3_3N zhDxw)&-bIo8^HQHz#XP zr7xI;fZ-8d9;{hJUSg$*`I=o^Ic@si9oz3tAx2x_Dxs5$c%lf>#mr{ZTSilUaYecF z8Sn;LXk0RNz^DE7cdSrfg=rpxA`ZoLokl}`OMo8|B=QX}>6ON$r$>Xl z7{S)Oc;AKga5V899v$_l027lrp(rT@ViR6v{@Z`T6YO zupq|g?R#AAZ<gJs=U*r{ zg4Va9UqK0W>y1Gq+h)eY>17Er8(K8+g#&{}2Sr|n!oIh3@*20udxT~iJ#VOJuCRW4 z%j&ndvY}u!*jK4@?YvSwpM@Y^pyJE3!)AAgco*IWAst79i3=^FKq_Kr#DfWownq>dY+h=jeHjGm?Ig2L zD5^}B86+0}{vPKX=!5+|mZ@&*1(!F!ab#)tw97UT`iqJd6^}tO1dSjE**&ezY!`Q> z)i-Ipx3aYw#7it!PvPEA*TSoJqPZwoBf= z;qhl;>I51Mw1be&z4Pton?O3O z#&6#!tmaBlr%*r(wF0Kqcg@_*tTMP*wvY9aW0`#Uu~e#p?xBAMO?WGBAU5lbcvvR~ zFk{u9hO3#T`hNXF@`UK9;zy?*#&q|g5AntdFS6)#`1<52rl}2G4gsECtIwUvJ!mHY zpBhqu@EEVhLtc9%H65?lVK1{pIzExt^*-ge&hr^e;L1$K&8@Zi+cKtK6 z$o76uF_p`N1|@5nAqbh@cb-XfummZ~PaYz3_R8v$EdW7{{X+TN}k$Y^B zUd!93r+@a?XFKePB(KeKBqMOA=sp#5$Wp#%X}e+#R{X7nwl57jT&)G(>wEL7J9(D4Z4liO!-k=0fK2=UrahWnr(4->*Nj8}fG78I4YB&jZ zF(JOT2+|W~5j%s~WX$i6I(u0ca|tID3`wX6ijx3p)4{=^GZ+=m6ce0m`hmzSroReQ znOxBTI7q4jmfn;?+;Z%)=wR2&7rrXz0&(gn2rh#m!zcT%6qz-O@e@^P`h-0T&2h1uAI)0&4s8ZL^jlsL!8gfKnN4i!3 zpr!EDhpjea@Kaj#?jGSwe)_c@!#|xSQ#kaHx-gd6DOBn_2?l}BIp5|}z3nOrrV#&D zF`BP~SH(PvawDcwKv5A1;g|ud%krXYKR8&^DP6U}a0qqD{WJRXDI^T*!~}4ej+GJ} zv~s|iLhb0PWZsD>=?Nk^Z@i8)1JlE;9E0G)>RLxPGus2$kv;R-)XAogRO%J0FuGqaudbwW zrDHnv-mpfYimRmGjLd+2srz7u_`AFP&D=B6V>S;EKeZsGgJyd~EMRk~Y%1RT2mc}? zgv^sreKGDr@rWmV+l2~6THNZf8Y1*LFz-c1*oe2{KVY8*JtsbZ_{88GtK9!4&GjX? zoz+>d`BL3h(vwHz+;_Q{w`c3fJuU`B2|&cTVpFEKr$B|KKs5U60?Ah$K?K@>0vV<5GW1%zh_lH+gzsU!+tROcj;3%Wown zzh&@e{Dp7_)`te#OE#8uG@}hn^@M9c3w2%>j1lh~?v@N>(!Xb7!JNyTc)zr|`b{+` zQ_uq!z#oD-Iy!dFU5q4E@#DN2T-$UMLuGu2`O|95LP2h*sUH2e%bN8c;C}Eh^qVQv zpg?fePG$Ar0_~Q)#P)#BkfaTnFgE)BnJzVFFEKp;(Ys@JtSooJkpD;bjc5?ki@e3z zm(6@~;_pEh!6wMnJ%9+o{zC2R=K8}gX^G~v8yfyQ(CRioYnY2!{>0Ks1jazzhZBa| zAqu{Sr<87G_3Pus?@Z5rNE?``pdcqlEnhx+21CH(>A{1Uv!PNHPJtpR!!%gs7Xw4# z`wrC5FRA`Ei=Q_~GkADi4)HNTkIat`ml1~tMVGICJQCYawW7iYt+cx!0}VBq`*g6C z@xSLgO&6SW{6rWyR)FDfy|NPwq~Aq4=@Jw0_c))V(aW@;Ei|HW7i*l8>XqX1eYg!@ z%~>YMSnqJo@e`5ai)+XJd&j2{LgEJhQCMOELvh$^#_?{Nc0R>X#TV0tlz5Txfz~M% zuSq{`@pYnGCs!ms9VE>F%1PXp0Fvmx*vx8gI4Neui;+E%5_3Obu>)r4D=af%XS}?h z;Em5P!d#;S3gUaGBd~g?U%nvWLIBruV1E9mf#Zr_K+O9BQl(^qwR7NdXGA6n;=Q4O z=r>Te)k?TFTFAz?@srEoUoxDV1A%@Kk6)*YX%TUJoq<*JWuUd!ke&Q z12qsF=>bRJGv^~lE|9G89nbbDy0`ykZ)FwQA^(+2cYC?vw9@g)tW>A^S6qPkPe4S%qQszd>e{?OC=mCg z6PFKurbb`N29G3*fR?WD^S8Ip5c`V_gpKdkj$aoxHqkD%qC%(Ve&#`^0(@-Bol z9FCKqQ%=ha5G$T34hDu=><4P%AiYr13tE9{+ih3aI07lyHmrjr^>*(&m7X)~A{CNJ z?(>ZlU-=DhVqY`bP(&NQXS7a5Y+)dnov9a4$Mw4z#;fg!oLDV4~XGS4ks8) zAQA(g!hlO0>)M;cB*;GR^d+ALgOiQV@t2Y_ffQb6=21EMqU_HdNquBCDk?YHUi74 z&2qKaqi!oG#o&3>+a}^_vpTS)k}$zf-KY?-!CpiwPVm%?0P7golGzP3!N~$;DssWX zZ4SHHa>SY!)knF%%j@dixR3Aotf&-1uQRB)$%7kR=<;0~(n<&!P?&g`g{z6^jz>$D zQ1Xl$+|cwvxkj|MrqfTJGw^JTlcT-CW1sYO@rSY@(f=$4Pn_rgH;^k&Kw-~x>Osxn z_p4VMoa#}eR3}EiTMzt@jrxp!8K@nVClc5QCAYdusyi1e2upZ!YwOU9&Sh##CNL<& z3GXDxqzX2A76(=Cy>oB_wg4jnpVt-Ood&_mO-oCIZG4x`%8Z2J^egAP-M*=L2^>6s z?0eT=O%D1%-U2m7!HR(};(#h3X218LOebI^#(P4<`OKlv)6aNoU^CZg@iI7Nz^zd2 z`6&pPqh%E+o$2DKRJ`>TGs7BQ(Sd7Zo)Sb6jMO@Jj`^y;JEy5Z@`L+T+%O#6kYLl6 zc`8i4oSI(#S%jLfI6p5Tu!2DHu>|S!9*c$**`mIFqlF_B)Mp>KwlN`0L3M5Kd$6?I zhmGE=Y#0E%krse1RJ}XGlJGVtW+ZEU7Wb}jKW*qA%YobBYzbqFF?dx8Cx>!CVuGHs zDqUyQSoOGxUKf0k0e0ib4mToQLB9`(PHdbuUx_~0Y8hd#H%(8D_o@1d#En0Comz+Q zh_Krnw(JOL`xRPqgk>F?i)6IRcALn2ksHvHLW~AmT*(h@NHuGx zZT!P`FdZ06q-X~vc8llQa4ygyN!1n=6INn;L4Mz>Ve4#oFk}TtYk^J?6A$s(lG%q=70mx)*+`>S%My& zVH^0&YO=nP1X$s;u^T{7@9a5Pc-jmKgWRURc2oLVp^jO1G-q5d2Fz8T!V^C?+OM}G zb*`)A^k;I%{ht;fz5l3DYoW^5*}u4`JqjBL7ex2)ekMK1y2|O!O3?Rm!C?^84}84^ zi?vGQMR~y8WO-j-%T2qWQe*ZG*4W}Vuo}wwN`9s6IwW#do)Dy6DD%^+Gj~*G% zUytIX$w!xGbQt2KJ%9IE5)UO7e?K_{2gq$9HRdAm%`w))E8=R8XB(=XKb^W%(KMu# zbk`V3-`b#r0;&KkMSA5)1BEF)(?J_MaO>h=Cye#^foQn_5y(RzK!HcTJw2Mei9 zHnxQ*pL{v;SYTzRXub)!VG2IH3oB#SV{z0po}4fD@fr>#aqH(m!N0 zS_gE#>KDmbjiognqlA|hwz0X$U&K`LVZGnyDFqA@m4~}Qj^f9RZqGJ}-`Wtj6RqrO zQHO-NK-ucmp`PyOOmc=701J>%pjq0F{OI>|hrC0+_i(4PKP(aI$pV6Ckw5(LU&I`} z?Yn<-B=I3C{v6;d4et^N7V19o>4h*9}xlOX3`^zm)6Bt=guUVq1p)*+$Es7yV1OSh$2JN~RJtdd^V;~sI z=^R&c-*hFj`6FZkFaU5Fi1<`kjqZUvKPC1^Oo2aa2ajL-q~<;}}A^!Axr z&oV2fb2mq3*QZ8arU<4FI|&8Iud%|nl?a>?Tbi4VK_p}Y6aVqd=Nq{S0At;o7II3V zQD6g(=rhrkxW)u7m>(vfxcVTZnRF0PphQ3Ws#d@4dTlD}@80E@Is-(l=o(SXyjzqVHcOs_TLA{$cOUXE>jht1w_1cc?t-XN~`B&fyQSAOGSr zQ_<{tM~ZnO#A;{`+|pfPy#TUl0{%Y0%_Cn@isKw)`x6Vlv{X;Mm zIyEYWVN!JV^xU5D04JKmkrhC*=i4mRT7qbjBv@tcc2@cPyAFV5Ukt+?>-Y6ZnjE+HOqDX z$}=*;r+-T~5(Tb$oF>H_(l5wfFd~~@o^A(s*-1EnP!JeX3^2B``EL zj-J|m?iv_evzV=F@;r^8y}Dunn85pe9*L8C6MA-e;L?ay)h7P8gh|wrr6+cl_IIiw zK2){PJ$CPu>=FB64g3Iytisj9-RJK~`y!pMX1-h9H{YMly<0sE+sSr+I2^81sp*W> zfwI140(F2>Vcil|c>kQi=zFR^EXA|a^7M5PCF=IY-7CSdZ45gl`~9%*vnFLerT}Mi(76`&6Q3S@e>9Y9K*b# ziu={!?1ls*m6CS7VHcdua{UX0>FAhuXQ27afs707HBo7Ic-6G&&)P-Ms7OC1Vf}?d zfZ<%3prPs_?v1Aa&WKW?bibc~&x&I7O;)%Y74s{1w(RZ!4Cq2Ihg7^&<)qWWmB6 z+jB!w8bE(x;dCP*)Y%Ne&Zdz94aeP69>cFjY!L>^lp$JZ!YrPre$k;XH*PS9%&(Fb z*Y{q0yc`@C2TLaSkRE`QD!#WJ>jT9 zbRwgY9El|h-9^My0(jESz^y;OJeHA}TLO>T9yaJG!^_JXPEcyd0;LA`(xLZ;;!tiA z*ddGbtZw|~x{A}c{QuaNCth?10pW(dzea3%XVlT&<#`M_VT@w(QmVbe=Xkv-aaQ*T z2C%{mU(%x!`<1q>m(u`Z8BrdXnm8>cAa9?Gv1NDbRfPPduoXA}+W;h|5C>w0mAFiY z0s*G<2hg*Sn4fMsSOYscL>l#`LF|bBi8-iTh+=ZS5B^0)Z9+4=U}(?Uq{dd=5s#QP z0qgO>23)pW%>*c~gx#-E`byk%v4e&9WIC2f0_f{Wj_r9iHZ}+&KixRp5Sb$b6@IfT zxMYpJ!`8u7%>nLPIN?kuT~|L~2WwR~K>meFI+Yl4ei~26rX%~B9cf>x^XX3uf_j^q z=I_-$`HydH3HagXUcZ@r`~tE-{l&W_Aj4>s!mjhnDjW5Px3FS>RagRF=WgA}DL;ac zr@;1RkQZow!?IgzWUyUwwSbSLQ%{13!NoNstCg8)Kuu*m(p~|6VVL9}x_mBmwyq|~=~-LRuC zCpWR)hokU;{VV(u9K3-^U&0+yS~=Xtee)}!9rNrc{zNm@ucz>V?O+DuH0f3(pTpFP zI^a09=kuH5P_Ou?(Ww{MipuJ8W9gKyOeKP+@SCGQEwNdT@KV-xDldYS^6_fkU>|5X zjkZp|$0*MJ{qA^vN_;CgkQk*0kok$1De9ydGiuJ;zh0o`s)0xrzMxE)iNo)Z{7-Ov z15N{HU1#KPiR%vM;Qneo(NkCO59<_1S$Q_o{(LjZiVf{S7#XW=hn_paQxR`f2LI6S zaK0-HXvKM*_2FL%NOqL&YEBK*?>9uA$fN2*kwf4Q*_qyF<`>R#){bh{OZ??s>(GDd(h=mw^uM<2VpQ#uJF8 z0ZO z7-X*z5gZv6vtxnd3E_A+S%`>5qlDgN+I#>3uAxrdp%LI+Z-1{}fQ&gL`kkV125rCw z=&nc@m)MjI%0XtO|4Rl+JU?{9%C6}>l@q@*?&Z;W(0XMnJB0dWc>dSi9O2HQ20n$B zviv< ziHMrkNTx74z8VX*_csx9Sda-uMP@G|Fz$;C0W5pe80mVOMeM0tDk@okV<30f%RzylQMbX4!aa6lEZ|HZ zy~wB0D|Gz|6#AkYW5ol3JWnC}xf_FpBIKmn73B$8=O9 znWs@W!abnhqu#+q8PoM*_HVlcL{K-TRvu8j;3`*&RresgL%XGYXIHl}iYO*oBv#epzdDm0AKe_nm=w6uAHh z;->n8kl3kdn^4coiYuU;I^S8%Aq120hmtLOQ3bq(?X9?BUdpR*+5$Lv6?MFf0k&Gbys`=HiA z?}|L-Z2hIaH(y>-w>ciYwP5KK5nGNa`gDg*Ck~?=yta~n8B2pgCen_WCE|q{rvC+$R+0>0QDoI`7MXnd6akbSc({`CAl;2u zGZYm3b?{i6Kiq8H@4p6dO8lP|5I(~1qLI_2IvrX#UukFRN@n}d^ZDf4$e;V9qec(C z{!wNUBPOThma8j&y(3Bs?SdCSV=@B#HDQfrW~u>CrwdLb)#tvKg!hWvpZ;@-oH7B6 zx+n-bc6z0lKI9Z@R#0A|*S-EZh5$QT;Zn3di8G6w?1+=rLUBPf!m++-kTIPyWZeIS zUg}cq`tRSw|8{sGPyvpmwD<~`Uf~EglBY08xFBC}(Gd;dj|^*2YUhfr2ya~o!wDYl z*n&m;y}iACSMzG)-#{OVj)agK#x{?;N3l&ru&GV!azkyhxyz9)_X>2shhI-`sOq~d z`mEaFh_0nW|4`nZ`$KgrZ_v=v648?&@!G#2PNt7{^Wd+{p_Z1GKV{WQ*6^QtVCRc< zaDy(Bz!50_8z3SFxCWuaUQW3k4yxjUZ&vihPCx$W$-2d3ed;cOA^UgMm zML|Ooy&vGzY}j)ohu}X3@xW@}CAwE09iV(hU#;JXyQ0BusGno=pGxGV`E%)_w~{Gl zx1GUbXS8>@*!{QUx8uzG-Ku!IzF_A*V2K0s-IHC4d1Drs8wQfETN+NgCdW`$mo9sY z>8%~^x(UAjLHOu>a#Wp5BDZM-etd_{@yPvV)#$+|>X86Emt zz&JyXe&&z_f@ToaEjn>)n5$TBMDwvsRiMQE6*~g=(Z*Yqi|Y_pdZ`g`Xn5suVTxT? zqb~NI(jiF_QAI9S<)?0b+-&Z4l3BHB^lK45 z0UJMBAPfMq9BZnl_&Z;NcOuAnb2MN9hl4nwSA5VZPv4 zbhKD1p{~HRD5&$Czu`Fa?F)Vsm(gLOia0I}((g#r^E?M)3y%Rp$dm1kjNIjOM#UjNQ(Y zOFV3u5g&z%w+mo`bEoym(g_1Iw->r%Iyb8K?MBF+IE#hzi`rm@$wfH(uQ!~iUt%t0 zqfO=E(pc7eb|w;n!Sw?DvavDI9jpaQW-TZ1Z3UJB{D}|nJumlR1q1|~j~6D-u%%;3 z1A{MXNd#P3QLxp3r4sJqZY*0QTQ5MjD3@_87<8+<$7W$r1~VW|s(%`fC(G*Trv^bf zV8e?BxB;2zG+!SbWK41tjer~hp#;>SFnnRtzu(hgY&IAv(?R?LLN8JHg(el!IZmOL zcfa8kMEPFOFgB|NfzfOvH2~1WeCA4$l9F~ljV9yenaA~F6@$!~Jl6A9;K)AJ08JWi zVJJynKk}YEwEex+{&VTiE41P_m)c>Rxkazg1EqO*6Aig(%L}45 z;2LGM~U&|8Gl zbhAI0K{41-f>jo87LaWj@U;@*xp7E|Qn5Ykic)1{Uh;o0dL;B<96r}$Vjw}$FK?ha z$4!3~HQ(N|74zQ)KN`uBf5Te-6Txo78%&s8%m1MZEnR z?AIW6D~%TuB&&NwS$FCH#^&#THZwav>1A{<9glM%RQ36{Qrs!0EkD_&Gn?jj)_szn zRHyH;9KMv?Ahh^iaV5snC};0u!VP`nxxu=cFME%5^?3f_9=NuHf;&q1oo<=-rDSqm z8;KvSUvY`Fu%7@!PA!2hax4s%LuQj9fqRb0PuA?920o|Vkg{)W-(y)9Uz2U=02R+v z%kZXNC?|#Y9}N~8(JpZ;3pL7c`*gl?zbNKP=Brtv7uGz|DVVMnx(&>!YaMPP^>%9v zyY%v3Z&{Q@1a#WH`5JSB*SZjFJ!I480W<}~8wlC6V=Zfb8eTTWR~{`AAfgk97S9xM zPME;BqwHo%)rd{ZPjSJTDV|Glw5+9a8L_-AU+yh`QSIJ^J6KRqzW!N6!gl}#EAg{~ z14>$cA4nfIBSzD-$&^X_R~9e;2i{qU*N)f<-6HQS=gA(~u*swc$TJZTmUse1cmYUB6SyDo-1t#%gG5%l1h8(h)(F zHe8xI$Bdl(;}De1uc-}TWLjR9uY310kdPMwDk4 z4r2aj2u_R$SUORtpP!e=QCE_g-y?xijbFgXSmpcZ=}~s)X%G4=1UX}zNd*m0tslMZ z(_&&`$bU#<-$dWT`2Cx+J%bUU#FX4fgE-$^?1~(%jgKo|WC{DQZpIc02{d$@2Q!xI zw=)%t6v*XnZ#`xSn=8(qbMaWHV~y&(eavDvR?HY>!LC^M{MMnO`q)~>8H@-v)c&A? zo#3*AW~1D89FtnUuFx!Cph}d50Q+6KV3GSYSgR5~jMX+YAbVKRng>s`Ic&!AU2bH9 zdlM)QxH_b29r08t=x!@zudQa7z&wgz@PprCu{wXG&iC;i!mCIcs@wFL#^A|&>rTLS z${E^`O&FuoJ=jH3u4LEf_{b3Uq$uqfo7@T*1Fe2H`djKZr>p&G)8bm^8w)?4v*Qe zjG~*6I>Rc7wjU0xEUAgqsLOGILF^|!7MpPC`yX4CAp>c3bHmvtuz%!1_cYLl18``i z2fiNhSOth!lGW>8%Iv;&LILyvrXmmw4_r2+|6W8@-wA?CUGPWyQY$s)%KLY2sDfd$ zcOmFRpiPusYSwBd>C9^;psi)1zzbP1jgwRc^G_HkT19FUC=u1&Iz3QAJh$5bE;R9F z)f%Ok(?i;y-25I}_}h(#h(=JLp=s1k8+WRjmX zCyW6rc@U0-tDqmK+YSzOGEd!irt#6}HG;ga6GBmDUv!i-VfT*+dRz>2Wg;X4N;vY# zul=REm$#WC7Zs>PhYMICS0KR^UVAWQJR3Rdv_R66VF2T-osAAEDaw}W4gGQSb4BAc zaf^Q-zrs4($z%r3CiuJ6JH?&7y->hUDXD`9XlQBTf(P6g9xGtnh;$7sVNVXgy)tFd zJ>Py2h{f0{=X|oFjcG_*nT&x7ooI0{e_+%Hs#e1N0sa7WZHQbYVl^^jzd_eQynI!H z(SH2y(Gj|*g&Y(_`rj7{iyoI8;O!1__!9NUO)Bkbbttt@KE+clmy<#NoW#6&ZKi+5 z^u8hRAlxvfJJn7CozGHuICCiIgsgEklujDe>e>-9lHYh;iN}0eOajL_K@LMRt7sy} z(Z@aZLi{Id8qJhOVKdm(eRaOTA2c-kDd4Wac783#s`C{cmGS5e@*p_whF`!oXJ;nc5s2Mp+=j&4kS#BNXxSE5;tnnu8)bh;M$j?|wTy%A=#Qat~HNw=1>-fpRw zeU8E?`50q!Wj{#)%V^DjDYHdgMFSX$)yn`f;>;TQad-SWSt?9N?EVx0ZZ?0O2+(E| z7^aDHHku_QfG-sgflHK@WXkk2FHEZP3-TM?Z&pblaxx9K7??=ikbuUFuMlU=^PyDB z!O;;`v$$t5r;4bQ%oz=MDzWU1w)g{P9e90ZReo0*|UD0x%<)i=RwD5&0YQ!+k1hB7MIOtLj4b2fOUg~pe62^1)j<$) zF`w79#9rxohXaJd68PE>SVgmb3*LQJh?>lGnL$hlr;{23hs;N!JfnSZ!U*=<4Jh*# z-gImF!GvR#!Q-c|Uj9Klt3u-KO510ww`J?mmWk%FuIF2QUFMFSL<-Q0O;Q5g0>+-( zTeX%MIG7R;QEo3nn@tCCL6J5b3j5suX#t}3CA|{5_^M)SUn_&J3!sLGILe4PwW@@Z z{kxe4djkirmsk_=BO=O{nx)WgM>nkvaQ-6Zb%5+2aDis5Ot7v7;YKJlXF;I3dtqlB z$w{ZSN~$Opd8ACgO^4D3iktwwUA|#;bqwp)0iYXn@Q1|GC5fZM`iXyP#2xdKB)s+j>s&WUkV%ZcKnnyO?)1(48l={?;RXO zJpQ{0qU;8Y>3geFV2VrrZNx9m$IH6`);rLkYV%d~zfwKfB}AFu?fX+@ucKpJFx6^& ze&=}f5c0ZQa08tX(G&Zljt-jNY2&Ny-8E541Kabf*ELoolhEZZSrJF%TpE~tO<>pZ z+;a#}f1}?nq5z$OBbu1oz8Hgt!Q0Rz8B`dO3F@B7E^|KRwxA_)}(DEF`!NVJBRgE#kzz;=etz! z>xdiV_=Wn*d@xyJXfXC=JktlgW|ssUSDWPkR1?O{y_gEGM!8+$JOHX^uX&fr8`0IG z#O3?m<=@DNJGKZfRdrRB@KdbzL^4*kuA z?|7l!Y(KO&%yn{%uP(UADPrhwQHT2bkwK~=_y-g2#nTk%6sow+C&V*K4b|rxDHgN5XSuHP4Y6d9kXgLCwQ*@@I#qhz4;bB?j zT2*i>dWpb~Y-R~ghfC1LsN6?|ymw%w+`z^O%21l9(-Hc`&NncaNHTGr5zM76HHHw( zrL;{YEKQ|AW7|M(o-{lCY=gk8)q^_v!(o?AAl?s@DQZ640rh>CehGyCyw~Z7#+itX ztLL2o@DQfknyv!|(8W14P>8 z-}@_T2TI_>5v{YD#i(e(|ApOm^RghlQ_bz!>%2RA&_V7yO<(?6mYx@Vw3SA)jU}iL zCl3e^)9P@AZ!V5v0M8G}t4fiwXK^XCz?B)Ea)UnLi1J%%?6At2eMyKu@s<9gS#pd79MsZ{2 z%B!RTfC_1F1~{8$#U_Bagt1rG(g3XGPL4`{-`Uq$xJ19?$$M3esgqeEe=L8&b&>}W zw}%qAc0`c{$YR(nbyV#wm07?-m-GNpCTZH&yh?vmd@0yFSCBxu4bv8H(FI$m|3}kV zhGo^Y-CDZ4ySuxkQ>437KqLjFQ$V`ArAxY78k82KySp3qt1WlE50hvpRuO!0Zp&98(G~@V+y?!xYH&vQAY#WeddK< z!-2u(G|#zy-h`lWmK4ClIfI{VyvvO{jo$F0?w;(7y#d;aWOm_F$BA{dqt$0g%x7dC zn|tU8P}15=?R6ne^0<6jAkbztz9Z<7-NOgBs$>VGyJdu}Hru;fq0)&S;nnqjP@A5- z92_zZMMnEp0vKV5^oT1#Q>)ush}z0{8fBW&!l~IJ-T~m_`_9ndutabAEFmZa^zC3k zRs%Dv#Yjcv3es!Ms``b;vCX?2?j8>(=lM%zp*Sh{x zM@U;rF|TChH>6DG+?925p6+UN{TqaB_cP!gEjDbVT@-;sd>OygRj>N^_kf$hkV6kZ4?fD_~chW+4HTS*s zfqXX}-)w(%@2nE--MEa;;Q|c|c~|w@q8drOnURR+Q4%LU?HIHCtN>vcA`T^DNh&(+ z#BHspET}{U#EP(;iH9oPx+mRGj)#Ndi*3NxTv0LJ?!ZS~rHH;SSi3bCM%-MR=f3bE zWmO25cmIH-M&c-#=S*2QazHr$eckO?b=O7F*hI4>-zy$~ch8lya*;&?2vgR2o&;*) zMSx;gU5wRLS~WihNX0P021rAKmDmXn5v#58?*85kq+=+8vDs>4Ey!~HDm@PaYBNce zE|#>JnVHpwc&q_sO0eUR%cdX!t5#^Qx}hjLAy7uz)mbkgqwY&~cUry+skG0Gy+=_D`vJ9m5KE#rGymK_douD=Iet@q#(+KgC8A;<4u_OFqXx#c2f#` zWUGMsa!!bPNgN9F^$&l4?shK#*UTE)hd$8TX7D>fX21m*8G(HBp0PrtHG>Z7WHw`1 zY2z%8&swhvaQXOxaVu|Jqh>FRMJ>_Z3ekCKU#{?g{BjSAV2I3OKyZWB2l(WH#gv@iv*HJKbQrO1}X>aH6yUc-7 zY9FY+o8Q3y?zlbe)JzE3lt&jWby`C=pKj|)yaEM|7k zePQ%X5sy=Td!tqx{E3wnG9c3kz8s5+(K-g}dnh!i5fGV*?7Qn{ZzT;h_|#7W3`YSk za-ga{A-k)w#d~ViGXY4c^BAY2eOF?k(gz5Fb3NdG{02lQL*2ycwC{UBs~^kasWn}y zuC7G91r_jvo_sfXh(6V?y)R&jY6;F(YBTzcJ!K!U7CVyqB;yP{aRx7?;YU}hImo?$ z3RCbnoYs3Gx($gUzcR+Ll)DxIS!wN?6LFxr3rTGba!Yu2$GyGMHUI$zK>W}T*z(mt zTYi$IQm#{-Z`X23pxMRM+}l}zh{ptR4j13z57!@?l?SvZkZ*T}3`u$836{2x2Zm6R8C$=ZXi)&N^U=TdsD!Ax2ed8@U-p+CQx>Qo#C z;W8EIf%-w-cQ?xwi9XM_*3S;iy6i+dW0^^e0FHC2yw|z5Igdta6gXb1jK*zkKn8<^ z2mJz6-XJIe7VIvYoVOTje@L}l?K3{bCC@6uq|#uZ;*gY4S53RuE_ZmVAO4>8TXlEI zuyxyU+508XjB9RgK3!@&CDtv*&M54S&0+-Yj zsOghtCetKo*KJUKTEb6qULGI6@pSDz`*jx{rwssj2s~gqru-jg3Zb&*OQdfE3}7%o zpR=9^3`CKRkte+B11A9%aBj-VEg!N28l32c6h;{xpNqO}ztIu$*nMZ#tp%aODGdFC zCJ9ogA2&?xu+;<~i83_bta1*9`3BbJT*@-wWDsoLZi(dwT2JRgNGPcUJXZn1VT;Hqm73`=IFzYq^k}om9Rz;o+ zWDpGim3?>MAAY=G#dyAdKtr*(-RgE`R`Nh2EeLIlLvKG{S3;!4eq|_8&wwwv`p|%fjg>LMZM2fDHys z83;_k1T>niY!e8S)h8^YE&5IwJHK5Eh;!CSV9(p2OA)d)DlQRGgE0JXnp+G6R)d*B zd}>8Xf0)a4>v6r09;kHBHz5Z-qKN~V!$0I|XOq$!7GhuOZ|mr)V&j+mphvtNljD#m zkH*vwg?Tcr5afYorZp)~{=ky{%g7twjD#s=oeT&4g8^11OhkaIsm4BbHv+nBC<+%B zmo*&FdKT1o0M3p8uG^j3KyoVJDdbnn-|QH;akovjpro&@I15J8OftW2>pD?hlMsz+ zGX-6Lfzq%maH@mb`;|Ku(;*Aevd8_~jZ1Nlz2235+npF7_@n2l;)_=YixzrtunyrV z%hqLE`oCF#_8R6W$b9fn=7ei^28i(p5b%@>sB4rUVKpSHGr5b!xAWA5#N(qAq}Iok zxtblw_Mp!@EM3g6-B2VU4`j2Se*H(7fG!UTl8L*EodTnNMFQ&SGH3+mD^-NoFeGQ3 zG6i9OOUSxfyAS{gD+U2r0C&l7XROA2GBbjz?nRdiWQuA>*MAmv=jxO1J;~{p_25CvnK{WN|DmZhXU- ztYEA{@U}zyWThPq&y(+8{T{^Ef$k)70m$y(!^$~CVXI{C_mFBQJuU@&PF;or8Mn&FKaBR}oaOv%UX z3-ipD>jr{uFA(iLs8nUa8U=%xI09_ZR?iDY${Ec}O)2!zJpX;|$q1@_tS-KNS8(POBQF-n@6yNaJAZ4+IP&^$cN@xrIIz zFkm3lM_$Qc{VzY!uRY&>FoppMB$vH$w*rf6IFD-3yTWZQJh?P1Vk)EQZv#U`x_Iwa zJg)l%-YXwn1&}>YWB3DV^6iU_S|L0Hn@oVj2J%gjQoPnE)~kP#o{0C;n>$a0aSwO* zHPEpSCeRSMH4*QT%e+68HpXEtY;>&bfI9uU=gfHyMBrT^k3wIM<@74$DB`HJjpTh) zd>@br1<|F$aFSfM%LS;BOVWIx-GK#pjprW`P)H%4Zaa_wIWvcQztnh7vUj%7XVfcO zo?eiqk@9G|=D`2O`F0#b1wXnZj?xm*Wp4)IXW;Zr?`HL2>bsjXgZAaCz~|JVwIm5buC3fU&LV6~m8&gp8a3 zXa2Sv>)RjWs_&aG$kK08y14xpFwBd(yWP>B8C8ebxgktFAcatf5lLCC=;1MJrgE9? zTTwB_le4e6^BYZ1H(_-|2J(d%W0!)VcE^tn|vG)Txq`82NnI)2gr=_Ioq`uV252&mz_- zB^`fcb6m2K1irDIH?dt~Vf|?#ML|RIECFjFp_Z!c)hk)D`g?uOfVjnZhAI5hYd0<* z$dbQ&Q_45&Y2$G;&+}U9h`kb-$?C;`GQXRI8Z4tA&~oo5p6jkvt^79`)cpOndI^xe zvHDZR!Zm`N5HNbC0%|T+BOT%LiV8bE+!ss$RKW+>Qkf7|ku@$G-2Rd-W(Ja7gb0U6 zOQ24NE@H5mvU)6UXqNWEX4Eq{FH*{g(yoL=7xgb_xy_J1|E0$BkuOG&S-<)dPT&b9 zYXlm}F@r%n^iC3+A;LmK=GxBAjp0+ZDxgSqWvWA0jAe>M(}X9PHqFwzHK9PD8MT%| z&e26>_s((c=!nP+g6@dJa-BQ13{0PKzALkyrQ|D-ivD1QJ&dcR%MiJz(hakS<$S8! zoBH7s-{MGc7(qQ0_olnc5NG_zcIR7cmic&PE7EjvRWJetrQj+pM06w3m#tAm?iA|Wsz{M zP8y4V4hK^KKVI__J_W9eQBAfHT(@pOGeIIXxx-n}*1d}ytGPF+q-`H@bAkrs<$k*d z!8W3je+}cCM>Nhr;@0v9nlm)igdZSaRG}DHNd9Z_ieUhtT{TAxVvkm7u?bVAV$vfT z83}}~ELWANEy#TZcY9)$&YAD(TMKMV8m(@sp}YF9)v{*yUR=KBe^n-<$Qb}!_Iv0B z(C~*un_gnRrPf-+pQ>NoPDnBX+WyZc&$XaVGR_a9@OXSh%4O30OJEI!zDu*}c{6HQ z_i-M!_3Lq{iYO?W{UzCCU(Gzg8WvcRT2hzIW6sN(A;jjyh{mVfbon{R{Nx#5$V0gH zM?JBC7dBO!>=3cLm@yDTz7wV`Ihg%vvR#M3xg`kD;Iwvxp|XXX>c%HdQ~h0|9pSkP zlAdTp>k(}T9#BO_KlxoBk>kOT_tqY1{PT@7KHQ_zEL`)_Yhdt_w=K$ll0jmCC|Bas zV|#r}fFBZ58Few==7e-<)b^4zVduIzlL+>nHTdAPj;jLWeoU~i)&7-Ta@pnrU@h#= z=tSAiefK8ces$aA-h5&SET<>QAdn82>P9wxgLS&$i`(5lh@BxtLdP-*O((Uusw0Q< zDO6Z42vRPvt-C}c6P>oZT6}B~SuO&zn?M!a#GS3AF&Zf zKtLc@Ir}ZX(3f(GY)cOcV@e{dU6waQXKsaG9n@$bYBAudV+`dfF5)8C6UdC-u{N$K zNP#x!b=7z)j&!P02F!#CY&7o@6IIkXdLTDzuTHQ1XN%<}Y+r*|T@L5p-FmzXENi}z zN_Cy!YAK^15Loewk)JtgDD zT`@L*5Z{%37e>?aX0*&TvU9(0AnVp%CWe76Ypq1iuQmyvWVd=c2>2LZ;Sy zkhp;`j0HKcI@EPySAv=oIl3bG4GJ`p6=1f#DW4pHi3kxS_Kh5!O5%fNJR>wV@;p0+6$aa%P$Lo?Yc`+-`TBVQIHf9g3|ZU&!>cHYY)<>mW^t)>xS zCQNOzrxPGm7ANJ>J;6QGQ} zI4e2)on-j1P734W!?u{c2KJ=qfjKl=^<~M_N9xwxghxKbP1vdo`?CRGpNXvkuN(x9 z)^77{u)0h>eq{8Pc;_g5uogJc>dV&48yX3&-CWK18MpIIn;dmO1T!GsqkW$x!5=Jd z*}Y=|q}VXP))fLY3}y=rcI0E6nSUpCAP-753#gXG=)UJD9GlAVbnlTZw)W6Z24ybr z4y7IN{0s-@hMZt|Z?|{IDTs~%tXfQSTERT^#M;TEdN)9=i~D@@W!HT-h8_{>5Y=g6 zbyYU_C`g}i!O^ammy7QgB z;M)no*Jc)V&9qd~f5oDf^Xp^6%U#Lo7>r{Huk6Upe2q;m97_pCPUT#E@?^W*oyKAz zYU~FlrD~fV+)r~&Fjh*L-GC)lZ`%r4RKi+w9sFKzNR3pa2`y3v3i!!hyJom1U?Gof zc@%Z$0EaxICpIptej9QAmf3s?WaeoUsgPRM#$b0lSij_Ru$(m7&NY1rQgH{Ny2O7L z0QdYs)UN9Dfjz+w-LmU>5f`;;H&)%2wuC+DOxX7vb2hA{)5TQMw#gN;C)ZExRp~sz zmxQor6#+Vo5}J>9CedVXyIXLG*j*#2q7FsFKh%lG}i&Bw)uKnx|!ya z<&K^ziiW`i0jxp+Wtktnp~xcwPV3NKj6@_w{A(Kn(ZTmsO8M0ak-DD^$E%#Y-Q`2e zG*h-iV+U^r2mUt;Al&k`i1h;L?<%E=@|z&pTOzBinPYl}(9qK*sh}Xtv_vyEI4f@U zT-Lxs+L_?tr1J&#uHehjJPd%U>?XEGlo)`wjj5P96Hsa98y(nEirytFmAg-oQ~c(3 z!cZ@3+BP8$=LnR^^A8M!itk1Q1h$$ept%k=o3+~Ux;q~lOSdH8mX9H`Nx8(ylGt(F z0OQRXE#pMSJaiR!dguT@zmSj+mEjl(S|3QRO9E^~qe=4LxoPy!5&?eAK{We3pFZq* zoE+O_@P8SMu?p~N`D(wC@C0)~ChE4aoT)!~eAe?Y4~4`OkuD6oz5SsaH8}?Kjz`O% z!oD22TD~RyrH&!wJL=`c|3TClxux!a_JLn-)Rvp@ce)4(FOw(oQ7+q!(;+tb|q zCoI4fc$0}yZQs2Z6cNE{F_Z?=et#X~8ar@(VMS7(0A@l!@>Ah>Y(LKE*4+Ek+hy3b zu!qs0*$sy+yA!+b_#^|3Rw)kqkG`weRML@!K&3CEOty7m@s3hfGN(D_SNr8Y>jMs* zMlYz*kF$KXX-tQ(bLJ=4-nY+Bt;~roSU*QEXey+7$;J9weYT&U9%PH-d7cC{%F(}% z!uNh3MXSs*q(IL^&-r?Iw9pusH7e@+91zBN`c{ao~2C`iFH zNg5%R^md~j#F=d|WMVe1g|-u_3l1uPF|#%!w=BiRw-6a$q0y++MS%*rOm0aK{Y~?X z6?+=OaQ-3}`AEq0SfM!*1~azaR}4zboSxSZDu7qxu5)sA4Kji#YrHLxND&PIx&Q?s za0&s0nSvlUjPEiq+~Bmp>S3lov7hlg^8I-^-3=Mt7Z;E|g^3)dho)qK)M!G*XMY2b zge%uq#16~5&&%F8_keCmcA4zu6Q!!^vi1w6H;jY`DmX%A8rkPmWA3|jj@};+cCJQt zX0yBXyW9Jz31%d=EKzfn;~5Z=lK$1c_cApKU)Y7b#pMLKNOubK-yeBVZpMF_>oXg+ zBJCpYuM9dp5WHLK`<_LF@{5%M^#+ru%JO^Eh(%l! zgLnL4ZRFgnDPa8JpADOuSpAp&l~_-g*Vh?vIuL9tX4CC`$6hvC{@3Ke)sLF(7aJ%u za@1qses1eqnNIO}=1?w87_1hH112^|0FgtYH_9%63Ge6n;m~J{=0j_duM=w0$YWzS zNNyJ$g-8n=96&?$Hi z#TfYcaa?x^_TRtkFn-ZznK-gD)lFH!&8d9<0@|#);Z!a<@V$q`*y~+lBWfI~4UKg9 z+kyfGc=f^qTdSPqRPtm{Kw?zb6a|IL7*%TadQ?ADwvSihN)XToKQn8_N{CUQ>tg(C zbLV0;?qK%UrUumAXdvzhuNSTSaIqTV{*o1~#21200GUj{^@`PeNs~)$Y~+)PA`S&I zq_uD@U9EgKhJVr7Q7#0W^6j9qGndHGNJR|ZQn_!q=nJqbflnr z4n&dNlK4ZnRD%=gVE9uq*I?P&+fUzebqGm%IaQOUHJr{@9y~CDXHcpN)9B7+DI(x( z71FagVLjIowArI)F&w9Azq8cr3WY`TX`<|%ZMi|qY2(y+zckqKs5a}_P5)exnkSq0 z#LpKYC;4SrF?k6RxYS6E*1MNN@c-GtYq9BumnFMA&f%0zi;Z?s4)KVa4>@j!qtHFaeydlSFVW?O zo)cs???Ql#q}S@qVZApP@bJ|k{Kt2j&q$wTVmX1HT!%U8i8af2$7jTA8&s%Fb5EXV z-z9?a@Zd! zmh>sL$K`Eypmw<)1nWgnp7_+gTsB9h#?ikP2r9e#H4tYUho(4QoF~44o5Jpji-^lg z`(8eT-KSTIADJZNsTEa$U=I^=V=t4-o3%K{(!BC!S!b;QG5)B?^jVQFSK~IbCQ$>) zJUBX}aTacqO$XXwN+bCW#G4@v7X5J|0L@)wmZ4tv7dbNI-M<*i%SPlpeY2G-Rn8M1 zQ!jS?%{h0*-!{yzU^skHr-(q;sdq#9X*A8S!9(~S|IhkMRa=mWl@;715+KT=fcfwM z_!yrY$`x=RC*UCpRwHFZKV20+lcT>6UtC(MPp4ce9QgfPQKeY5Oz?d356d1vFOh?I z*xlL6Z2uA0tKoY5aVz#ONB^koB2*LTHHiVbNJ8;FGWJY<&&td5GZpJ>bb?#}^f`ZF zVc}~&aG_FW7~n3->oHPRyFK04mp^Cr`#uX+l4TcU3H!#WNKoXUf3Jhz97#q48AQ^} z&RbpSg!$jk?%2WNFj*f;cynXz@6K3Dr!S*}{6tT~r=FCVW)0*Eno@wbu%66E*dEJ{ z28C{5lJPZGVW76voEA)w9|zTVStrVRKTje}Tx)z%)H?jgL3@JgKfUO#7zkcPnPIUJ zbG-}BCKi42F)_U)Fgui=7gg=>a!*M~8SL&@c|qtEByrq+u*Xv#ZBP>79m3HP{T@o$>NhhCsY6c^6?-CLv_*ud6>w&USA!r^iY+{P!m9LvlGK-z^5z9P!itoivX#%SJs)(*>d z-dpH8oX2jU(6CQ11@{+8nv4Ik1m3)_RaAE3SqXGuO~Y81shMU5yQ-Ppk?)JcQXOto zJn`w%0w2TXn8`@+U-G{S=h!7N)bgARW2r)9YDMx$jQPndIuw=)-&i3ZN${6_se$>& z4F6w|FNUNkKJ6tea|R_?ly|Ei*Tf?t`qPJXoz#=5UUvUAXMp~J1nCmT3y3xvr5Z!% zz{?r|9}CYm?5R+-RmCqpy=iCmh7!~BgOT@ z8{<=wm#LYHf*XK|^eNLcdVR@y;Z+#YspT;(Mv_oAM+$<%pPh=k3e1w-jcn=~8f3s3 zVQOyPL&>fj5(hN1uxNhP)%s03@|Q%PkevDMz3-Bg6zHKN(EX)C<4yb`Nq~TRX?zWH z4?cV)T0@~Xl1RIQ$-$u2pJ%@3(~Ru4Sdekz$HXlRnP^fJ=g;r@$yA$belGnaY2_H6 zA)V3N(yO%hcHCRH^wpF7q#7Kt$6?|qy7?zr7WbScgSc`6^UHZtEcq-4UEzAdOdh~_ zL$HLEIF=iR^&d<&|@+ZgV%J%3AqQg1euR^j$?EHYU* z;si=a}{`n*+Rll$Axo)jxUrcUb_kr#`K^QI*q%*y{hetq|p|?P@8CVZe zA(|yEwSP{IRfToFL9MT!vA<>R6W7ZkD}gewa*k}CR^5vQBV~D68dZR4YxcQMrln=} z>Akv{crLp0w>pJ>0S9e0qPT<@j~YC_2;`&JP9!v`No-(pHbULu)~}(~_gO}T1ONdS z1ehLOi;D*3UhZ2HoTil3`)P*&qqoBb1n+_3NK6gd;uPqq=)mHJl-BT(?cH`RobL_6 zSSlABXoN9Cipvew8?bLq_OS7O%g(4&ni{Ts*jiHrPTA8{|Ccck$;{?*vP{w&_#plE zBrhb|)Rt?KKC#V!3XVNHSz*5sh*za^abxc*hcz_`(IK?1e!!>DIdHHSb!&>~-t znH$)Znf}!>2k^Abz%ppHf`S3wN<5?nh&H~B-7Gj71*9oan7F_{79DZ46i5fblvt_2 zfm%0}T!E!hE_^HNk@BMuE)Gog^{zJ=QxMx`>%GTJ-5F=I23lN84* z(_I!8#i|ZqTEw8gvhTkMiN2{M*e)!~V{~Af*msk6ssRA$c zk=pvl{QqVF(AJuRaHoL505D+USx-RzUn_^*rs2%FA!y6m@ze%8>Scipgwf-Sn}wh| zOfWN*AMqkxez;)_YSAWFZYSvb3#$knH25$;?j!_8_R_qEb2aFfH)JnD3V|I ze@9-sF|Yf}*gw=@nnQR5!pvt51!$D}Y${qJ*{yf!1rFa`UU=qOq+)(|z%`y%x!iY% zbUS+y}q0We6LmMc%GLa^5)lxw}!@xdIQw}&BwLNJ`w zp24^=W>nl*ejgHuN8HbJt6gXW>kq=XipKWKA{lx4_#_F-xK}%S({3ZYU>JRL(YZb- z>ewWbD$4e;17n-O9Ix~z3yC;mQVy$m=G$3n*te_U(`Pr5nBbL}`=10FDq6uv$@TnDNvlXs^x*rKyyq<_MQT5W55F%2#OU3Sz+@EIN*wl40 z86+)LLF7=?(nXVT5?Q-lUsg}6ulZa}YRaeU>jd}{Ofsq5J*$+F`#zq&4M+BGI$o)T zvj1!augzW&c9rWphMK~+AV2@*cn-rG_D1Gaaj5LHy{U_QD4QFF;!ObCcxF#X{@X%CV2WQ$Wv%zT*kZ^QVnQz^RB08H)ws;NSovkcZbtG>akC zgym$wL>yZ@$NEg|oO-i3`5T&e0WCv?PMu^~ov`aVc6_X$jt$P&9+~;?5(ybSuPiK3 z;pU84*w}>PFlprg;7-jfm1WS#C4sd@BSZ0_A-_W`zr{kWEnCZ%L;pE0gR{FStDck+ zwE_tc19f_wNteW|_kkWQvX?1Zd){e zy+%xzk2^Q9Ojvc6)4+Ym{oKZs)wBcwjH_BSNp^#X~;1pX2?iBS2#R zZQnL7H%{3kzLE5ak-{l1Kj(r+kF-|o>=ZL-6@=er1sV(?*OKfEzkxx*?FIS(Y7!%} z)h_>HwE{$9V&Y%63OvygakqC(aeB3G;=3qod00{))IR(SVORcKaX42I_JaVeIbUr*rpo)n4HttZ;~7vi2jCAlU}e7}zHwZ>e&K?GS%LV)seKu43MXn7e?EOTX z?Xyd)@_6F=5`W$Wo%jfLmwjMPkekrvPf@TBULGh2BiW)W;GVs50$}z>5+>YX?Mc;h zsVF*?GLTMy;(v?q8~vfEmgo8B!;v)WJ|T}w7?WUv_tSp;3T-T_alQ^lMCz`ef~Lzb zr%wpn7KO+4A;R(1ZqX|SU@~ZU8RdXC0Cg^d#HtG%mV>^j%(|Q$6Llai*sY? zlmrz4p)aLSjI+fS_}SPvLXCF4Ad8%%f0PiIlR0%3lpL%2Iz$$_MJ|Ers@kN1==uJ@ zVQ+*}{uU$u`-ZRvXMAJwG}501-k$FqJ>o4$-uOH|&>vV_#QlH4AXCM>`}(8DLfEIc zme78tM&ur?;VB4_5)2uF-`;=oF*Huh;}N0m4vQ~RjMA`CQy^P*%<)Gj$&eT4{|;)5 z?`Ah(U?#!$`E*tMG)bIav7!*%-wMzP0eouD|E7Q7K<0*Y#ZX9A0TKeY?TjMt-eS4X zzsR7a(}}?(5hA@hd)j!re^ugU?ced(vgkuWzMJKu*Tj9ejX44>E$!}1Z8$Ss6fJH| zuUxS6V1U8PKCfTpnfN{+>W0!Y^V%=c%S)XN#mX6~7DHGO@RZJ^p(sya2cp;=r9F{t@?uG}Kc>O=JRN3HU_CLhN3d z0XN#9yW<0zl_)^&L1^U5tQYaPga;m4NCzm@vk?xESUkKN9k6t&`mgiGk3Wh@wMAI3 z@g&Si{X@?C5PM&4dy`C{Q-pgsiz?PB2>wl^vrw!yTjB{90e!*x^kC@F~gn#mtwuJfYlYv9L)Uq<^7(<+HF!{5{8&qMKx@lx28~K0`0W+iV^g!a%jJkK6O|fZ@vI|Ga7I;JzyKW(B)0XjJ_cx6 z0VNUgtpnX1u?2{Kx;?1u6nnc|kgLeG`Z?=Vac3|QicHiej-e!DE6V}UA$}|t#3d^j zlpu?xq^E~-2{P(5-E4G}7_i7&oZLM zn+0qTyBsg$;V^2$C3;hka1}q@dd5|XnT{*)$WKy>AK}u>Z?PqyjK-B;&X z*CekUEK_JA{98x|!TXtC5taT)#IK6#qn zrP1szmoc4hk3eNXf?ZV4c7lRYo`DxVYuK>PIo;>M-+EVHg2`HvEAd6Sv zRaBPI?P6zEpmm%K)=~Jst@L21-?DS#mnYgm<0`pLFZlY8L1OF})(h3GmpU~T2$v7| z47UtTWcyP^(VJS8I#fzM)L26>IEh~0K*StAebS)jFem9HJF0z-G&@c^fI@M({7K=U z68v&Ve+Q_ed0*;1@TbQJfs3#^aYXyoAu%2u$bB2h@3LA|2V|%?Kt>Cq4#VOHPy-XV zyZ0(Xb3F|^+@Ej>|5}GhKDZnpjN+^2+661_p(HiDP8nn!GS_5*P%;*9Klw*ff*~aD zsX(g{+#`g{o z!-C%QYWd%(Z;s}opWER~=hi{HO&cUbTRdH%*N!L?U5{mXVv_D3jB~C~NP!iE)i$Hi z>}=`&%Oy?f`@@EV4kfGEM;Bu_EfD>kHB@V5ZVu&q8@r$lt41kEk(0%PNZ|+q*G@k+ zG&jR2B(ahOWhsh;Nsv22b6WgH7R0nD^SdPm?Kfi>Ohc-$PuMM$i6CbP01S_uFVx$@ zJ#{z87?8jgB5WR)$1k0ssnB2pLc5d9Qd0lc$oV+#qiOBj{H zMz6^B97*;f26LygMH}!x5+7)>^*joUrU;tW`SX3*?aE5o5+*pPcO_;krjQ*Krq`}6 z&An?$JV4po%>dw>w{b;sg-@-gu3VPMa2#dxthQA$cL1ezdNTOFR{saKSB`<)aFUymVH{?9>-tH4i)1nA%_R{!gVVE>?S9HX7Sj| zVX&FZ*IRtA!_p0^pxq`rFg`HJsj0G>UACTRs@K90Hkj`X!y%HqcZEu<%L_*7%6XeP zQQ^&{ddO-ltc=|bh}*q&@~Dofyrk)~mA?!b9-RL-3s{5lblm%;3+2F^*hBnjU0Weft3Z5ZLB#R?vUx1&Y0DtAV#Agy8TLcPjn* zu@nTFA6HYp&6@Uts$weeVJQByEeH;IW zO`q5&u*Ls9i2nP}p9zqpu43BZvZof)lZ@*Nj*Ec$`g;1%-Hb@w&QwlI%xCkc_dO7( z=SK_LZtXV~liI5n<27U5-QvU@6A;8U`GhHQUvM!5mR>kbCIoM$I5&wZjR zFWtaI7ZV60X>PX;NEUs|h7W7|oXY7BS1;g(Buwa2CKbJ}_s@>2H104tW|n1OG0epd zj;lp4oq^4)=uL9H2B(!a^a5@q^w_>aP-ebs8aST*mP?Hp(BXypLd^gb1| zP28wfzfQNV;d|j97^ab5zc~v@KP>_St_m%Du9yK{JHe%^Ct!@L-c9a`ya01LlMf$Y z^;!XK0A?}gWpW%I5#(90l?}$xAPv^jrP8x1WeJCZ%faM$v3a##)_HSoVIdG~P;prT zG~ZkzYaH(9xG&GJt zeOc?eNZj~9Y?%96hK%)R1(a`_w&W>{2m zhx;Sb>Se&t7Gt6Jo36!BDHrl-8FHM0@3(>i8h(e?FGpfj5PFXw;ScL@%mth=(h!UK zWs2L&K@T|Dra-4m&PTWR3x5h?5$r0)n?GC4od5+9EZBqLl%nXN(J7{=XgNLZibs%% zDE?}1Z7g7>{~=NEv8t-7_f_qFGWwL`5?W*TL2xwA>K#aF7yNnv-MEFs@!<#5a1tBT z`RRNVVepo1vRT-a#oA70ryJ{xoo?VCAwGqa176vC^}`i!v9dSM$@0c)Jt5KOtwX=O zU=XTG9m5C7=5Kz7fUX7=WF0HXq#3?{|HU`oyc=PmS|O^Z8FH6 z)HrV`sQv?~5jd=$Go(_LrP=pR|H-_TzT{@;-!V9*o+rvnYhT}het4IodCd>}pYNGl zT=)H*P_Z0emZ2<0<8+5@`aD5@B>zCyBoIx&Mf=mRJ&H8b(|_Z3mX&gZ)p*iyp!_jD znwN4G)9AC+pR~WTu!5Gu3FDnjunn-CS|UJKfL7jIst&&82x5P5%=`eBFd*n5QPVGw z1ly_zufC7&pl}fHqE;fFezr*z0J&VZ^}<`_pc@}&f-O=^L1bfN!~h;h#kcXtK??tXRO^KqMOOm|xK&D|VA%Ka zCJWya)%bf|mTHv5(SHN;`Y?dMeD`M~-XvW2M% z`}O1>q|+}vzY@1*AmO|OT0P12{eKv{mLL+B{7yQ`f)Wlz9uB6W|v_ig_OD7lh= zOV77|QhJ2i4s!r{>ce~31qFXJ@cp70owN@oM^ekj-xZ&U-rZj@mCzg4m-i|_llWH< zHJFD5=HWUx9G$eG4uBNR?$OcXWN~X(WlQ^5v!IE3D?9*O17ih3aQQIJ+HT28GzjsA*5Izjj%ci0iEVqS6nCv1g!ytSLVSMtOX$56B>JAe2el z8-;Zr+j<6f}lw)2Kf7G9S{;xrmVuUVUtgo()UBJ<;+3F%sH#S~IXLu=*W`dRo{;zML zwEQRx!b7fkpCcuFp_n^?%I6a-YTwNJ=M@XH^g;Au7b0tsH>tJzsK?EsRLR=_G*JaI z)gp)mFab6qMr_&Vcu&q%Oqz-1B^0mX>(g5%fseMc4wQY1bRd#Jd9t4p*fOXzKo8~e zri8fZr(OE2X~P9Jv+L)?gD0?i>t0NaiZgEf$S`=*YPms}`}y{^Tc5bSFN#FJ%<<8| zxYy~2zGD_2iA#-)G}#O5F8RqDBntON1ix*W#_gBxi@Atv1=UHB&Zb<2DR_N-o)Ysoh^%@<>r{x6{O~MgC0Is#PiD#(`)}P zMf`g2I{hn4#etNGd?n;o14soZ-SC9Fx6F(?+=d3x-TIQ*-T<2_U&0<%+ws_eP(HND zT$bTOox(bV+tWTzEe4j)=>6UlU0`BVv)0~SEx(>r8|oY&1(?|Vx|Qfn7J6m|peHmV z_Xu2*k`N7eDGq44PRS7>#?Ql=#R0ig1KqzDDZ@kxJcxtDPBHL7Re|vPx6}SKLz~y0 zXJyZX+d>FjzKhE6!QIc=?H|fF9U%I|!ZjbcU?l06#Xu+kOox>l=S}3O7b*SHes`cR zm}TDNcJ@Ps>nx2|RA{hy!FLdTZzJ1!yb0zUk2wI8r2g1Q!Yb=Ncd_(+5a-uOy<82JWm{vCm3nHItl0fZ{Ox_x&YhePP z{W9#?I$g}=iBy&sOu^8|4qN^3TKbP^@0)Fs4xgvs&gU=&SA|=d)#1J}ody#a`;~E3 z&ePKX8FB!-?I8O2S(v;~lE)6S{oy9KxjFSQlT5@VL3;HMxjYccv(rNVn9~CzrnIN7 zzZ;Cu0pVi6|JjAL2vk+wAThS(BJ8h7gM;4GY7y$H8*TL|0YqV z6Bx$FVCe9Arkr~CN}|Y^a0}xPW)gv-?-)IOOEh5quW;@Q!Bta&66)-W!tZ3#SplM4Z>a1?WNsTa66=i$ibihxA$_IXV7m)-B4HL(5-#6|$= zI~YY38n|%dA_ieZJRhltKj~37*e&3`ZI%?eIsC4=A#2idz}-}l7R|s#`$IpQRjvOV zv%q&9hn0!vSe|s*mmVpH4U3Iw;Z2`w!z#G8C8@`^C*|3+|9_^+R! z>3CTv4rDBnKkze}z19d0Or3)}V}{?K10N_<*QL(;ly>kSL{tGRi{0bWx}>9Y3BKH@ zS!)u5=8_F(LcV*%HV&)O?5#}Gds z2Qipw--6DA5SFz-*wG3|BW+q&Uv2u-fOS*S?%*%lRR@LlicxV zH0o#`0bDn>mkvAjx*9Occ$Igsy^H zX9eqtFx3C`3fnteSIsR_&-QO71pl##FDy^x{W>pYUvf0{)U`W#X10{wqPig_wSh$SArSN(6h%{LQp0qat??SLm3&Rx9r zFU$xQ{d3ljuhW60pH67_%`R_@D`?nj)S+q1A0+5EsYFY|=ox#BdZyTC47jZyg9(`# zHR^EgCCzcW;QM1$#6JMVI~**P+Nfmb z_?|PM9ad~(@@uTP+%B-q+RaY&SvlFMwLV`mFNxsc;%ORVGuYeS5-^XX5k-25K|SGt zlKI@}ayKxBK{iq1!rc%9%p)Cl)nke@iR?CbL?O&09-lwagz=WRS3AVy;8p!(*SEjQ z=&-SBj!16WU5ZrPbGqupKHL<<10#MLJT%q|yB*43RvmnFYaOxWR#@-J2F?C5xmu`_ z6Ad>0b2rl2Uy2`6x~A%$UOeO=L_a#p9a@X2vTbyIJuAw{teooEJfM`rpn*n80*}&r zU18i`WQh4bRj0!8ry`R%wXidicJ*3UChe^TX6v$;*GE%-4@!)*njaJ0oUK;dFOt3@ z9MP3i!vNVHrAS!Cs|$M)w!5M;3MqZ<3S3H&kQ>$uHCMZgQDpygZHAPEHI)7!hc$4d-T(Lw zQpMx-2d7$EP;LJ``hrFbGJa(3{9-^j$J=IJ`LdMQ?rzur(*i<9x<-wZ+1^{|*QsB0 zD@pPtw8~~r1DtD^9_qG+tu&P;UPchm*~H1qFAVRg zCOqrK-w~Rnv$weSP@d5Fvh@s;NHS1md8vH9JXD~+THIr*#$Ij(TfWBin!v|p95E^E z+gRxp)h?av3^Hp`wuv)bpt8BpTCS zpsYFk=@ZV~j$_rw8Qdvho82SL`|nF(LA*>$PV@f4%ap(ik{5I~Zh%vnTYTjVMwCVZFYv8;dQ7V2ziH38_=nSV zHaw2u)&5yz=F%^M+X(|f3n|d4Xoc)Kk{cE?GxJ(f*!EO8=F545PBq5)g^iGjqjwF1 zgIFg!Gp(WT;}P?p#ouDG;FX@{C5YZUujFyIweSKr1Bb)t;cH>%^-r)vD%u-`T7QV0!?b!O+g`tjW-w7frACW+Vj%koUU?1k zK4q;VS_|5bWFIdRo@`GcpIpgv0ThVJq%+>|zhJ{y$|zjUQ!?r)t#0G}8w($WjrGX>Q4pbkadc0loe2 zMsvNO{iR{(z|E6+K~DEbd!*&1{-%9FvEwqW#Y`3cmcXy*=h=!$1i|{+NU!oVu*-I1 zG3XJ}gp6N(ns|V(a8mHfh;AT<;2DN2J>`$cg?3m}>|dkLBp9BJ zbiKMS83^?lUSWFt^(J9lqn7%iesZhE|0M1n{+mP&{rXH|FRCT-f$E)v%bGhLJH4#` zW=iPC`)0n2^DK2IDdkz82W82{2XU3Z#wEBz>9{EB(bTcJd!I9_4W+FFj1=ptZA!-L z-X@i{*FXQYU=h6(+&eokb!wbC`}E>+ZU$MNN*J~L8QnbCi&QdYEZJ#Z`@mes9>wk! zbdQ)#m)4v~*4WHQ<~(I*mLBKB$N4Gq`#%-pH3%*k%JZj#d|Ysh!xnYV_#jZDiS-Ct zwr*Y=KojWaru9?w1-ejmGPQh_+hJVa>zN8-hgZ9kkdMg6#OoT|lz+>=V3dnuK|jac zq+7@PJZnF%y-qGU8!_6^9DVp0yu|4-^z`3AeE}s0Lq|vF-%Ks}rNz(*`n#z#@w>ZL z#%<+Eq#VPFzo9)j?W3_BmrOlai(jLlHM4s^mH15$O~$AI`l@t2w8k9Ip8r6miwMmjD?OGCEE?OV%a^&VtriN)AfBixqA&6Q)3^xHkkh45f zJXlmk5t}-982g2B?%ut-Wf-2V@gN!%YUQ}ECG&{x+`By@$c-a^8d*4g{>ceX? zwm-@gb^tv-zP#=^SP8YfF?wscVqh2ZST5mlng;&2d$D;MVnDbs6mn&Uz*)maC^N^K zaT=%AkuH+?k-YdQoG?;uTS5#%CMLbgu?PtiOr~PjClB5qv#bqg(6zpgtyUX7%OA>i z_%Io&uvuQ;V9ydp$zRA8Hn<0CH}>LHyoe&l^5{IlO;8k>Ig%VcvQ5;gDs7$gxiFRv zG9h(T$@zHsqT9vQ0$nPG|N7sN;x?jD%p{HV@VyR9Hvc}fF8EdVjyJ6e>WppjrX5Yy z8I)mIe8U%qHyhvZ2W4`cds2q$UnMnbK0Wx}_ce&h?YEcg>lEX)q0GY9=b^;ecO9rX z@4uUeNhx(?JFPb0<3@tw$DW3DTt78OwHX9$702OKzNQy!1_Fz)Ap;ciMDMGDI3bfp z{%2q=$<4l^DtcI`k`>hapTDQo3;aF)bF207^eG0{&f!rM8-S8ezsy>^wF2h5$0$fr zp5*wWGiU2wvFp2NP6x}8=0L+DXK_YffAhu&3TrDt#AC}#FU1R$qKo5z>xU#rm5A}` zP0v?#3cWP}P-l?67+S zmE0HfmLPJb)zP=r;j4hHMGk|VxgdQE5&{!CT3P-kVsad(sVclW$GVSo{`?&FD_@&2 zEyg%krU-+FCaaIuzH?Y&hqd|yX>rI6&>?@7jxJkl@2LQdc4^4 z<#}I!7|u{m1`QF_Itdn0TH>6G2-JtY8HRq|H0Y{~`tQERj)Q`Qp}(l9xTJ~7`j^wR z7t1|@m{|i06@xIsFS;-d_$Is#+Z5lGQl6On_ZzuQS6@dx+MB!{gh;yIf8zD6!=7@o zUAN1pftrOg5Dh5EHY2^_|< zPlcm%>gnwe-g0b>+Wd!iO<}m3`}Yqkd7~7YZwFCkZ`sUur>Hmbo|A8nOqsLwjDKtzR^ zi9R0y8K;voj7rd-ueUG?M|MV&IKP1mA>wMR9N5Ke&I7j||3?a6Jq5eY%R`Pve+S@Dd5yUwsgwd}bj?bLpu|JP zqgc<(AIi2~4|Mhv-%rc<%Ug5u-xcuNOu1(58`eU-KVh`=b{;zbXca{yrFzeCsh_{Y zW$T@@W49u24WlGiO=L)u$X)nJo!#;wo><7Yu0pFvqjAdx4CUiE#Xbrt^AnfchdZ2T zF6BF1g3r!us-*nCsJ`{Vm@Z}LlN0h-%~3Y(cJTkgW$Jz5nu}#DDs&flb=ZvCQ1BZW zA|rr?gSbLal)0AC->gB+DPj)Kgz)S;N3m=#sX<#9y^bxQ8V4Vc@FF7Q;^v60;#XRc zPafKP`@=JaF_uk4`pRl~X_GZJ(Jyc&cfZCH-i4X@9`iWZ!@c5))rJQ-$b@;!*6V-m zPB8HOtkn9R5ifn+|Dw!n0119n<5f15;Uh!5KwGq6R_F2ks^h@7j zKeHIGe{%bdQLX)!Hie)gd;PN?h*9R$2I2q70PhT;EoYN0n)gOJ-se#?&8!i(@a@Ty zl))A@8nxo$e@A`HUGmcL^;ZopeJ3)p6BuCRM%y>`xIDcLAYEi4b7ErRh2badNlj@F zuJQqMF7kGw+D16>QMJs3@W-o8yZ*qeKZ=Ag6K*ljsnw0z0u_17c8W!vk|2=>1?wmP zuZ-Tj;U?Za%ZET51(Ay3c4?ydrv}bHAGiGf(Zj;d{3M~rb(-DSO%p|hi0Fxiiu+qz z!Bz*nE5UH;4IJj{tJ$0Sltr|Fj#L|!(ST;z6pBjZ59dBO5`M>Ys8_2stJyh|-mU-!r)6&MdxJnW*Iyu<&Kv9MK>r z3o(*_Hnn#+h}A~|Y`fmNj0obP_Q0t7i@E;?YDF1+&Y>Ue2`vYVJF_deI z4n*qzw&OWlpfv#)y82b0_WypGpMAAE@5B3GZsd{n^hRtpkUvGLFib?HP0KU<4ZBfX z(37g|B+_VMsL)c;A}i8;K}+i0`%fiHmYz)!&Ktkv1D4bWIo2ztghX8k2n11i+2gkt zLkxZFNFVclsD}ykd=0Y{s`gZzK4qDD^Ber4rWC?Er!|8O0jZ_ga3e8E>rxJK^U4Zzc}KhX(MqXe z7UbxNyx<>g&&ZZ1vhBiM$HPch#!s>d;4-!C>{2G>tbdSW;RgFEgs~GCght0T_s46D zkr9A^IxjZ_1%QxASGn?EyXmV^du%Mysj=Ot2)HxeYQxF#CP(-uy=6x{Cs5S%%Pq8u zh0W>4SGseJetz@(KP`Z(nEV+Ab6jCevB{zaSQfAm)s!{{?FzopN1|QkgVXE<-iZC(IohsmLRyKm!yhHLMdHB?C$!IY02)dq3sL?#l*+5cG_YjPjodmViDIu zLZsV>Xu$0U2X~h*ce5&FlPx*>33^wpYZgRX0{b{)VUUnUIX(Hf^ttz(PO@|N)h_fV zOTG5kox9x{PR+JnOaQFc$TXdb4}ou4zs@=IUBEU43aF7zc7*W4rm2LSWo~wf%eYg2 z`2&jM%!Wjws#+{>DM`R3nfGl5sufI~9JansnbcUUG-qHt39bo_-3iila?OUmS_C3w z%6mw4x0t9{nrc*r`Cr#F~&)dIjJ0*e;z<&s+ep-XoBP>*bHm3 zWQH==SK|{Cv_MTgUA=JlH~#Z>IMq}%@~tlqv05NS$>9;k1*JHt)5e>}D~W|~*7wb3 ze$(;WZTdLw-7A(6+lw-JnWu03!k{``ea6K@1R6R;>Gx`@PfDE6$bgiS{MxdNTvlQsu)*2Uq=y19B~%7BbT_LfO3Lcz(vSx-lpM;; zXUSURh~q<9g*P4Zyu$vPg^E}TFu5PGHT&OILmbO!Pf;8TqF<$)RY=KI?acl$oLo6d zd-jJ6Lfv|J{mkWSpSe>_A4%d@Ij&n2ctapeDv zm%qeGfc7TOaO#@n38x0{-#ThuM_h6IRQAzP^^hb!79(O(!y{t`nBu&|NRevY7+0w2 z54NDgJum=qxDQKIIknWGGBJs7rkT~$yKQ^9RkJsKr~duR%0GCu&v$h9Ppi}36eZ68 zgic=9*SNZ-@=ZC0$i;R;+6G&fU7)6^P?RayeZk$|SF}y^argO?+=xrRCi`IevL17o|9P@8PLZN%tM#-1x=ElSB`&=B%nCj;POwsSU4k&OT48^ig|h zDU_+Kcjk2pu7lwAWX<*k20Ww^bSOZHg}l&0$Gr;6F$|N=*f?89On#j_Egc8-cQZ9k zXrGODl*W$wgm2pM)R^RG@%FB3NuGTer)4#p7m*X}kVu{D3$Ce}GIMrz?v$06m$$xH z`M|4WgMaQn!mP0fU#8K=ZfpTcrNKZd@&nIcT^IQwqpxhTSnhj|O!>O*0~NS$E6H!0A@dj=3r`E$sp;_yhF8Z#j+F>ZI+>+_!u(x*ofyGXqNn-CX@2p<`h{DJ(@7y z^Zx62up+F@W`Hdgk!Hv4l(IAR`+=G{6e>#fPVt#!LZowXdXfjESeb;!9N>mz=@~R_ z_nkQUCgbeg^e~W-O4vE%TIjA(UvF)9y8Qj=5276?G-kINW*KMpkN*0)titX2T?yL6 zx$CjIIpWsjOp8b7{M^1-=m;z+Ci@=lm$+Dh>ma)o+|Lq&!JKzYNf=jZJs? z+wQ2~^?Kv2t*-UO!m3+@Cnv98(fxI#}&(dUA)U*!+P! zv$(#EUh!+MGDAwruE@yqzcYG8wmgv$Gl2vKPSya;<$;=X`|W%wK)WUm0;r0O7(@ zr0mr$Sp-^kGl=mf-!B~fGAe^{h5vZQxxob(S$Hl>1@Q%orUKNsJw;gfkK5IqfS1N} zhh&2^-)?K-rjIQ8?iFlTzo+>ee6Zsdb6 z)|a23RpMQ(GVKt^fG4_@p78PbXwxVf;r2;SPmhTbhn~w?pv-A_K;=|)$RJa$4);4httU1jGkVWu!4~S5SElwi zsQV6?5tOd=j?FWKjun|+CARCQ(zC_GxTlab@2!J z$&6MrHFK=|WJvvJo(Ib7ve%B^eeUU33O6C*P3O%o|IPflUty^$4!=Z+wD+L+IbMV; z*1BFt;U^2aKQ6(#3XAEYrOpKBe-B%yh)N^qUEZ#DruaOJ`QP=YPE>@^ z(F0l8?3K-88;6IPq*1fD#buVlZNak)BpFT+PSWv_1b?l-{S)a56WAf3fV4xs2CeUEYg>!>F5 zq_1Hoj2*SJe#cc*RHShSJ_9PzPj`|&aHMsnDW{1wvUQ((J+r4N`f~KSg!C;B6*gIg zNYnQML^4!YH$L@!(d~t;1h#KAd;P!d-dE9f{Q2*_>_sQi&pOF&wckV!?k6JBwwAC+U~!9(&h ze&xcWJW-3|Q=>JvnZAxkmC5l5&Y=> zCo`1=s~&^YEb=-*Ru-23rXX8!PloX&xKZr*+mR3a*3#+zRw`26aY<09td^heqE+Q` z^5m4~{^^p}SX5p)45$c0H^tnW?il=K<~Yo`QnoQEqEL zQP0mQ{V8DkIy{CEu}eq6_2M?SyEuVo6s3wTl)p2Mm3eEOSDiqLHplk4%L)aeqwW5X zY2({|_Of?_WZ3VXHiA|!(wPO$Lb_MUmu6$R0Tku?x60r3{6^bQxTUQ)=r!_-`FE|n zGD~VGN-`cR9rzJHv8Gf;uFy#MNGN9u2^hAOy4ROOZS2?dQUydBP+lw-CYM=uwbbCkLPbf5-s?@Uo}nf9U- zh^l7FJP_isn)244K3|xbzKFubMZm8Qx5re!r^hn!m}TA}eP%%lRcMcvuhE%oAl48H z=eEyi7T9`Fi%h0Rn1cTP(f9eCu)!VJA>sqTl!bP&+0Qj^&TZd>R-I)@?zBhJiORhl zWKR@w86`=!Z@M$rnRQU-)=a^7;Hk)Zh;2~gcpLU0RTz0}st6bHE;G_n<)dGnh6UbZ z2h)=V zCut59&)0^_F{LIajQ?yRl|1=lzf86^_f)Do;jvmK@9$#@Pc2LhPaX?^bs|IyckkCVN+dr%;bLxc_)-@~+)ynaQw&M6?9*g;Wa z^3*ClJWG2|cazIinbm9!0wHy75do^Y{$MY+r7nahq8`aH*#=r#B4Km&)*Ust>#-E#jc zXhbE-PYETgy{9UgJ;{6E{^w0DaGk$BHK0X`QYNU6ogG~UgR3ztV$H@1DG!6J+^9e0 zZ_T7NX&4+U=J}>C_pM;(Wqs~t0kd92d^bT>R|Yg2gWM>)vC{noxfWSYNlB^1evbbI z3IwKWW~RFD4%HgI|)13z1;@7gw|kOl_xPw zI`{}HcwIv|g6*U`t&w3W{GO0m>(0l;ul{DNT~jLiGZIfW$tr)vVDocNE;9yeUsLpIBqH9F)r?XOvrc%2FE!PT+iFI;!8X=1Q43ff*rZW3sC%}z(Lb2glKWk`p63pQ~B zSqL^BK^X(6xhEkORqyyPyv+RI=OmR!UEw?~<1138&t!mRCMqZQ8Fpv=IhLv+RP&zq z+7$gUpV)1VHKcN3*&(}r%9?$kM*jZg^ssp+A<%kv3|iu#ZO4hV#$33>?so>Xsbl#v9EFK zuXSvH((r>_a1G66Sx_Sb03d3)OSs#6eV(D(#Gonfr~Cc zu;hA23UPxWL=qLFvHMyE6^Tqa{ekxwo`5bytGj#KE&Gh346LV7wdv}G$$V}agNF2G zfpVL=rdw$oxE3)8Zv`m&3x7wY^G?DFwWBq&>0< z^773zo|qGLrgt-F{JxFZx%7^1X?s;5`wYLBT!Zc=ZS<{K5hmBGeN<`Ooi>YAMr)5_ ziOzV|CwC^8lyPX)A8(@WaRtB3(T_6ANPkK#(BM-Zj&c7mowKs8@;);7y1o zxXJ8Kr!UBd&O=>U5k`DrDY#SIkcvG8;_d@H4Yb{d2^97eDY_pQDITRlHj%*DcHIx` zQpHT&NJQ1Jz$TQm`Z3JtCl^2UE|J|O%p#SxQt3utv)J*8e>g?Zgx&kJH|qrLNem=E z-}E%Tt#sRbcB(?6tXcbs72!wtpqeSm`c3F9n2^Uwk%|lkUfvrM3r?PL!ldzNpp|+3 zwwD%Bk@D=>vrk;27_OgZYF+3|dlR3_A}Ojk2{gF#60;_Rf@36b8Hu$jcef|vfsZD) zO;cBWD3|m?0orvk%vu3jmzLr?^Yah3;4&=1gK~=0XL_CP=46uppLQyUGWfj@jmZ|V zwjVE1SP}?VdtXQHH|uqFu<0nm5SkPMwW*hdax_P`U)8!FkuCmX_^isqWrJB}HiWLK zw~_(;m&Y%EP(V016siD3cMe(RBE9v+TYA^;NjFSBBOfjF3|>Tm+_N;SfJ887Qo{+K zYHJkcmmbbk51pjdmIzH#tX3tg^XkO4?A$R{dl)s8@aO$Pb7=6Y=v?b^(=LtwUQ+-+ z@~!Va1p3!yb62y%H?Lo(^d<-l;RBh)yT_9%VUbfkrV1_%#EP@f?$Qy#^<9b3nM1p= zV!dCX6J&MI^U%!)S;t9UJD6Tt`};OtvIC$|(||ZOn34_&tOeK5xbALpo$+7q<5_ae z_8N`aIjtg@9aSU$NNJ`Gn7z4@|IfYUD~#B%T_@!I2hgRVt?%grd!#Q;8h~^^AE*Yl zZ9_WA&u3awo`UB-&@i<${n1rh(*Ry*lvHg$#1xVuNSyg8M>$uJfF9?RY`m;vh{NLZ z2T#NGbd#U|01?=5wSMnK+lb}c(7-=_W6bLcU&#Am@?Y3*vEhY~hD-qs<|xKB)*60- ze(Nu-rkk?DtR{XY!}Ya5Vj;ol6v$v{UaN3G)%BZkh#rmcP(QCU9hWJ^&Si^Z)w#pJ zu=w^BHEd5AY!f3m)jKPpGqWdrR zi$^Qs*SoeC1~s=|D6IGG+jsmIewjeu#IC2wMzeXk@6q1?#U7cIxl)$Ob*Lb1=<1TA z$l&YI_w5{cC)#&#f2zcL!hP!peQJ7e#fN9_h-%8L-x!>;y{4EJgM#JdRuVonP+{N3 zgbQ0Pp{x=0!@HOSN8MPx6&_r22%t1Z`iQC~kg)1&vkSY*wWsNCP!|u^>i1{fbaFYJ2 zjw*oS>bhzAY*Z4JYIQbHG{=;*Xb#zQnKJank(bRq|L4E zSr?kKVgfbG(HwQXd>iro#u)HJyy;0kh>zg$co6bsDFj-2x(1;d#t-ChnTZ4xz7Nw= zQ}yxXpgKGN^=q!rQ@6%;PJ-dx()jZEl@1Rpfmw%0vdJhE@sNOpUJT5GCKUTVKa+_G z@+*G*LTyV&m5zG&Li12AwMn+lZ;3y%aojY4-;QZ*E!38vu5|ZEAh{FtbPS|Ecm5#x zI6+A@r-w%rz#SL&^pIB2E{i@pn_gRAXI!sGp(GfXp8&C#BWLHep!2Eb*U4}SpFr(p zmZVg>&2i+g37`4-2_M6iBg2`*v(wA7(z5K+2*=J_$q?&96c$hruLG9foMSap;F;wpPrz@Ku)szu%E_cmMjuj>FyT>T|tLN&IpJ5RCSH$xqe*bND za-sE?aEe-PfyaA?e=7U>`(JAH0IAiJ9lM0{He8Fhgxf5TvQ(2B=vkQ z*(F~af2jVB+0n5k#ts12I11mM#g>(z51Ocf`#MuERTcFbtMY8cSuTzRotZgLSeuiz zoRX4~1B!5!A5cU!m_3keDea2@L$H~XI`_lV+~+{+fZb!ueqv&OL&-yoTB1{`bzrEd zL_9Di4g`hy)W?$v;|>ydoy6lT_$2l^n^tG-=tm-ggM&3kRQ9;7js@30Ek}j%#C$P@ zzC;MXRpzs1NESV}m?=h8*mx?w^}~*yJAax~i2tOqU$m*jZs=L@^^RtV$oc2W2ex6Y zXC5TaU3W*BzV9sdd>ca?;}`!@n$w7qY$COT0?O6Yt}GLCbd{L(pU*BI++68?3D4R6 zmn(2?M|q29tOe5Alt4dW``fnnS}1*#aM-ECq^o?2f$Ny9vRYWOueYGs{EBJ!r1V4E zc6$UzsmA&_VbdMlF(xNuVONd{cGw#DnXG{WE5qa)anyIjk?VZ48A!$K0e3S`&Uf_1HSW?c;X3f&OUf~D2zV#^F&b*z?kZ$Y(y z-mTZMqZqG>bdd`z#v{kdNbeG|u&`uxPES)p%sR5{V^FakkpWhoS}s9(bj|<~(!6Iq zG}ZbAgyCSUn?0uZj%6JL^X?oty+36o@}MJG?+4#``6v2UO3wL5k zGj97O$AX^+_fG|+{)_=%HB~B<4FC7{R7H0PM45Nay1Y20lOb8zI-=Tq#fDsEqX2-- z`m_v@=lc74Y}R^fN<}w8FkA-B+l!Z2|3y;E)i|pQqREVUI5N#nr^Np4z}lqPe*5q~ zC&zmvZmX<#Fxt&%vDyg>Nv{gDBvcVdq!Vy|xDs%}P(JmNdZwscz}?gxTXvDxxl ztWxs62hG}%b_J6G$+4-c)fK6WWeslCub29-!L7*(+vtch*C22Kb`_APm<$LN-2DA> z?D&CqDg3d#V{rGPUvCvlm0rgQ+1vN%K3>#9gM4ybu<$M#$Q^b|6>`+vSP62gt{~rd zk}T{4kwC8ig6RvaxP3^XH-O1%&?^wEkN(77zxH%a8ZLYYzkF?tPM`%Meh3AZ+?cmPzJ+m&sm4 zG=&$r5GMD>D2;b+gOA+$K(-5Izd5RP{^G==Iq3MZ3RAP(u}bsUa-x{ef_Sbk2iA!` z8C`_ColzvS3Zwt01!S)Z0Mxjli=@xP{A_(l+Q|u^R7NeNxvwSA5O-qOZsSpz)uwlU zj?0cS%0zq95rt}t0mY!Q5#Kmz<6mIv_Zs|=N0q`S9&X0)%JCOL;lURjENAbvKwD!RsZvDqgeR^J<81laV(+4Gliov31RwNVmSYS!`3H zq4ZfqVHiIof1AL=-X$kaM<)xS5^*NaXYw(^DTdAX*4YkyJ?$n%m)&A;FX;ZZ)(Bxd z4ET{3&(?@?SBK-rW96J2+sP8U?B+C9qwAx1ET@|p%0Rau!81(Rvq9+ggoi(E0V)atHi>iwA4%vgl^CxF>P#Y?tiRitIxY5j5DQpw}>85!* z$z|Y=9m8;;hLYIMwi}1(itdNHp?%I(1M0ZxN_S+0qXV#JqEKj{#bWE|_wTQ2k}6TT zF^xfj!p(N2!)jbvAj{ZFL!2M|0(e)OJ9VPZuN^1q22zhlDoTql z)jQIQFkjTvkDvm0E2ePCY}tXjNPFl$$%%@ybWRz6c^TH9mJBQkY+pY=)aT|z1$R%@ zE47+7BiBD$iJW+imzxWOQ9cg?DYPYx%$ys8c$kr*={>6le;+&)CTL6!FEGXYEDg3A zn#ux?RTLX^z?8q-1k+_pyZDVj#|}S}1M{oAp10#Ab^-9+K}>_z<)rEE@mw>}uFY z-D{rRjbYW%K-@w_B}ATLN+M1s!Ui>Q#L3heAOgg@<_*|NJWX8yellBfUHv{iGyB^^ zN87D&WVKWM-;P>3$Tb6&&7+0-;a+Y5^(N<7HSR|#(Vjr)H=K;yns8t27tK4(x<|Oa zB;Frny6yo}R6DkzvY9M(tXMJIH}-S&w{?HpqA$@H zSAmP-4mKG|a(XE?okknL)nkxQpUWvlLM;L{*0w;c$3Qdtd(gWEx!t$RIyy1-Rd`=GrmK^mwVmRrE za$^F|Q@9Hpj?7zew`W_b9jsb71CiJ6A%_d)!7*8s8Ag+9op%@axgFrcSLPIOR~6`o1vr_uLypD4$23r(ox3{qB1>% zQb40}%dt}_ysRsZwF!QK4WY!7)~YRGR8&;FwrhB&uF;Pay#FNHF zO>Y5jzX>}0vICN(H85h(o*_*!M{q7~eRCMEvU4cDxSQQ{_@dYP>k<+O%^#Q3w<8em z)&x!y3^NwI#FCI))=-it1|=MR{|wHt)eofFbVL0OJI?T*$Rx>@vT3=xHB+U&|8#R$ zM5^GEI%gUST>HG{GyFRm+Ec#*tA6vh52 zts-QF6M~8%xr)&*3#8QFeq0&W+DdCAS56Z$Y((h~d;{A{#8wG}{Y!kf`R}&r_KV3}Nu<6XE7UB0eH$_U@tZAnVVwHyL)zH8(}+=-Rt`b z7{f1^P;3(C!<*9p-0c_tR5RscwSV#yPRCT5Os+H<%C(s+Eyaq_5d)XXZ^ry?uYlIZxbF>(MuMD1^*6s21H<>wMdlEC)BFHyx^;TcohnqwCaJ zdVig@h#lQWDelRNDF=~hP^Ryb5Up*UI|NP&2FQ5K=EiOpj{fj^EXF>FPfvYW; zW*0cLy`|ZsomR&Hv$75D(Ai7K5Hb#I4;31++L{c-03YV_HrqQV1|A9c*ur2R7+E1jX!w zw30-r2IcO_tj8j(abP`b>&QkI)O)wza2E7$)XB#e5gQGS6kcF_S%6zlD#7QwFPs_7 z(u6n+4nZ2ly%){9HdSk2hFjE%xRtun)Nh`SmK(D-kKX?Neb0KemvX*n`T6|O=1t|L zo2_VT2>(P(t#DD~MLy=%VHT$8JpT~>v_N@%v1o1an|X>vJ|`^O-FHStNZR;OVVx5b zWSI{!w$3s(9Y=nw7cLa(|Gty?9_<6gOsyM(_)15#v=Kc`T^*zW;Q=J#MJNzu>qD~q zEPi7yZ1-o>E>76csl5Y)JFo~p@S|D-N`D|%N7~$Oxsxa`RBLxPU{k#k1pS_Al^w650tCzKYZN9qm#mNbaLuC_|_WC_E946 z$J33ui<2Ergr9|8W1$bf_~*|?NMM$LpWb$JR3ZP#wX51wFY;ol5#Qb4&pa0#0-8z_%fe)8p;&KxXQjS6P7 zm8c=+Gca}tn$#eZj{^KK^juFzhyZ6gm#hy6cWj!GakmA^V zHVNJtL_P)J1jKayVPavrd~d+vd?l;!;C~e5c?3n-pLyyXC*nh8qOB*P*Y_JWv(4Ve z{l)ek1m2K-X@##We%(7mjDCcV_oUIxxPPbY0TQePoIt{4a&}>V(00GBgEB1gp6`=q zz%zmxrWeZ`ZMCj@6m&$ic(IAjgQqR(n9+3sSTqL4-XeQu@tFPcA{xo$B95}sS!>l*kx7gOmRA8B8LerO85(9InNI-= z9s)e0G|+N#^nN|zFWdG_nzZj|7aWiDrQSQ*Bw;*L8o+$WF6YUj#U;nb`0Sx!vk`cf z{%A-WAURl0P_Lo&ns?N+<;EF44+A=$}-t{P-^cV}hcRRqnmW!V^NZ z^SSb)g6MK9Y{cDqq8|A4Y7Ibc*)2BUp?J1R*|6RpN2+J}dS0jr=79C$;~uavM8nqvaZiz zjA_}-bC2AI*qk?XL;)kX5jg*QOMCYmo&Uto!#)@(HVN3xV!1zwvbwWr?8r}6V3+Ho zuFagH{#f~O-I7uw?}L&O%oKOPMap|MN@CIhn);{3b|hR{1H0ncgo*M@k)!@tM&2F*-Xs(7~>c6T3G|gFso*yiAu! zjf!6^(*J`tR;X{J;wLOJ_jjmmyw(^qj_nIuTqLlCBAaT!Y)L1`nl)SF6iPl;G*@*o zBqZIwZ{QXji_FVwR0#$&IZqp}R|u6S#Zq%y#+P_+P$g;k4c) zk8y@ZgItyhoYDiZKlMHGdSq@u_H0@})5o(?RwK=QOa;B(NJI9m*1o=Hh)si+TJKspjj> zS+8myo(sV{%#K9X=nzTN?*Y2XBmphcB`UJZNp=EL2>V z2i3P4rZ8V@`i&?B&)i&P#`MRNzjuYwzNW!)AQrVTD&DE1_Q&ub$X2>B72Vp{*igb$ zKNLVYb>M{G&FoXvqX7y;Vbn_9t&P2myGR?1P1LuwaRIWWqL|y^&?b_X1OSIFqnv-! zKMkKg3NLM1n@9e5HDR)aeoFN6lwXN507M#NUps@EeMiPEA3B-7`s1bfH~(9r3gK6} zT|5Id=rJz!WV3`3y?1#1C7)uY`w>CAxqhy!B($Xszsk|dz5~d`%pR;ZbboZm)K$(8 zHIF@aW~xjcpL|K(Pmtw@7M$hp0oSc}jW@5SCB3Ax_6C|RBpbTP$!b= zv67Q_lrv@US#&Fv%}Cb-LvdaobsFEas+!D)i+~5jWKd`9>V_qv^ECz;{+pgib?3b~ z5rRnNe-pptE}V{0llbj0Vn<%(DBrflXl*FB(Dk8hk>x~Z`UoZ@UpPY=TR!?fb|itV zHX+vLs71sx=Msy(Pc=?gcWe`N>po(-ef+!tP(!R??B}uF6y1{-$Qd&CWU58}=%rwW z5i!U0{j(Z^@$=>b`A9tvlI^~H*XlPOD};6D4>NLm?!sCi!sgMJQtkW>ahxFGrE=XP zCntYd8G%^@^~67eTpX;7y|1jD%rhEK{;l6rQB145(_*XK1QKGFc@QDL^!uonh=9Up zdo&LrM z@^9lAWIi7~0ABR#I)zOQ*(8G2a1o&X^_TA8AsF_Kc20=);UtV#?nj-H05MnZnqnVl zAXZ8dM5-OPVQUbs7qR<$dG^Ul)WQoL#*~y|AQmp! ze2dK;I=#LKyw~R2Qhc8S&|fX_wq~C}8xA8mGHwZ{#{GXZop(Ie?fb?vlfB6v*?aH3 zM?!W+$lj7{*|I`}B4me9WM*VjW=7d7TV^)D^X~b5|9xIPUgf?&*XKHq^EloIFr|~W zpoox3*me&Pe-y9MAlaw3865PjBRcmy(D_GklBk7s#$Y19jry)xk6niPH4Tzfute(S z*!UIJb$Y*cJf&zAqXk+ zT=}4w(DSqAe8r5Cp*Fnt=864Wupm;fIP-Z+@bOy$UBwZFOPFB#&e-HfH!@%C>Aznq zzO6+g^L3#nitSdCl%4mfq%BfKV|RS%V?C9aa0nVKcGXb6bLZA=Vtq4z*lSIAT{0h! zl|UeKRnfNy#Q2Yx65d;hlYk%=a!Q0c17oYc6gKVJAZoQYZ{GAD!wp}m3X&*ZJJYwp z6`3lY{dIM4%C27hX2K1Jz_t8@%neCR+@_lM@&819udDT_@lT~5hy@frqpTB}_}qLd zOLHZk_Gv%T-D;LInC5Nyjp&0eP)DRcviba(u167fa|cSz(SJ~{+sM_2^BBR`MA&2W-c7`B1YpOsR3%IcA=?5!1Z4okqV2{ zR z@56N%wTo3f1l?u`ni|TlKQNDd?a952c;D`=N(+QUgdPP|_4IS`VA#bwwqr;|B@w!C zg-&5o%xJJK&UeLAE;PUDk*24f1MA;?nx%~bC-_aD?5|+GmG)(BU-PvCEEy`b`+C~> zMg0!?Yw7DEz7loOuA6RIgcs0OR2Q(0DGjt;E1ekNJ81Z||B5FU_7RQ5u9Vxfbx9I* zAY_A7)-x!VIQcoqXVsa|*@F*pu=o1xb16+%#|r$)%mXmRN~!F_G8bw4tQdbn;v{e6 zDFVTk#y|SYars-ueOGEQFxoP?TgZ31f$rOOoCO>(wR*x9m1jRl&!)0l+{#T95xjqq zhO6bV$N#p~u{T;;fw>>Y^9zTS`Xtfr4}eAGO#V=o%b!4YX5>{vdG*j@Y}1!7Qh*hR zhxcNYsA)U6m^&dTJNVp}`uscPjC4DEov&#^fS#h3m#Sf)c2Q*YM{CB87%%Ejk2Y8w zK&;2RyS$pcb6g6{#DspXlP%W?@#r$XURj0W{XN0gw&owUv_8=x*#60G2N8=%Z3NQNBSc-B zL%^<=Gt&%@M)F2E+T^oqv={cC*D?EsYmLuw|koQnGZQa0>he?Jz z({js#NO9p?j$9bz6=Z2k4 z2_9vz#Lv+@?bH0aRG^jnO@Wwn*DcPVqgvW#5{$zm1qXpSpC3;t3*#8%$UlwC5>lQ# zB;tNDTV1K{6d~v^dP31X{nd0|PxQbb`%#=Wm4vtEdC;Ez8kx_oAZWa6m*KpH2R!T{ zf!tCTe-MUOI|RTHQfuwvVI8$SScJ~8Y0 zi}S;EB7+a6Y%c!-yP=V-pl8a>3V$|lv8^|~b{(x2KFns}G;9k-U5kqn3hs{S>|sUW zIzBXL)x#%WVaRKJ_id?D{-RDiRwjHzW_GBGmXAF4_h2%?($z9@swO!md!>(cWZwgt zoPAj_-kp0U+uyS!49m89I;S9FA{LF)&ZPV^x1^QB_+!3g_Cd;RbU!pUj6zY*UDm79 zD?EF#-fT7AMoOi}hK7cwO+Gr~@}=77y>wo8xE6h1u7uU54Mfv9dAGNM(k+yK$y~>6 z^1b_Hoj1;ZH^+qRrGbrXMMCB6A(UD-^R!$Ir__wVn@3$ICDw^_A#S*{bsk>0WG8Qx8unSXZ;xF|Z~!+TgB3VR>9ua+z=zkYI27tClGI>{?^ zs?isS$y0Hhd^eppx1);z&`QfrYyr%!nAuXJ9^F;@Fvfq4|GRQPM$D>x1KtTxQ)ZV+ z?>?$pL>|B=6?9RTYx>U#_KbjT8;d%7C?xMKrQ4M=3kY6IG}v`T1QX$VBRvl1TkF;t zOdiRKgp{SANfarnW(sChar2E-Y#yES_*~1`4O3I#2|)f0A&We9n@d^HE!2Eo`SB}M z59LwiCu2UJ7%quh$cM%>t2-g%?NFkkeft%-{BAhvd${8x>Xf5biU5G)a&b8Cbu{*O zzq2%%1(Xhk+#w0Mr4ir9u^#qORAOF&!r+hl8kVhv4aPp;w@|I=EoYh6x#zM%jr+01 zt}OEq?yo*D;#!}jRMC}(3C9MY?OUBTFs+Hy;q|m>*$DIpLYj13eY}D}4>Mjh;POmg z^l`mN(b%UThv|x!ALt)^cGgw2;flY1m~FSbRVbiZ@&l9Ir^IK18L{_LX8)%PMa#mI zr-4%d>MwAyVLShk{B6o;U*urB(>SHD>(>^U8v>&(1R{Tf4V5i`eH)G=JMup*pkzs< zH8>;g+1n69nVFfHD(JSsrV_=6E>(1Dj$NB@!}_`b_Az$G`?fP0%xo0)zMA6bu1$!f z%l^}rCtVtr#azon-GtVdw*il`A_mMGH*s-sD?fdDssA!) zelv|H*|3Rhg>$6Wwt^TuH~QEFY+$cR-KrdZ-jC3W#EQ0=dwsHTZM6lf{x4d1*6;~2@RVHa4EC5il zRQ4ljj`zV{b~ANF^5NCt`pX|x<Fz6HYv#!%i1i>kb?fTwC|xm1np`0G=%cg)`-*513E`MD&RA%AJ;hXe$-B-RXRR%n&)pZ023 zK+vrC^(mTyE-9Ahamum>8-Sx4GF}G`+L!H=?9osg54DS=4^k`16n9(Jy!2z2J>u0SCi}GRAz&Sz@;Ps@D)fQ=>BOgs*@4Uii%cwV$8DJJ7UQO?F@hr0vCRU-E3RBaFk+KxbywHj!0u9)|SIS#s8CX zJ2vOI=+ExiiP=8!zp7I^8s-I5FTaOukFmK?(k+n#iS{D2%!U$~tk&OueQHZofif`iUCn06-VyYCx=txG-@ zhs*v5BsDo6gvJASL8V4{1^-3WARS1mCcLJXjd<_|cP4*6*`Sx>79-(6g1{r8F~@PD z2(#<9&-=I8Bh(c!Q7MF7BEUz(2$oH+v7l~`;cCykc9z1U1;||H=yPXf?MXz3ygFGn zW6I{{@`2jom@+V@uo}F>HmP0@pGArMIvzwwT0V{4SapB+y%`xInPdB#l-~>3$4tLd z9o1L~K47?4blmzgQ~$#59*P0_$M|4+wT~UTR3j*^>r`!_<5kOHzyI*#9V+;XRbv)- z?!#g(GIt%HQ&bDtx-({_AM<$S@zd#RU(v5}gV|C{Q3XWQ&Q;c%=%i|sA3ff5NOwj& zCR3_v)GeL2@r6ZRYoIOEp=Aj5$u`wh&awHxhZ!Gyear)KT!fmo`}eP{$WU?Em4N+W z+aN#NA${=;VId(Uco_$#K!rVANp(@J!mIN(itwZVVzAx-R`9bMVwIxhutmQGO6)gZ7cnx~hMteQVoA&-WpBYe) zFS3e8^Px1L*YkMi7rF_pn({3aY9&;o1$u)5T7#l1ASpW=V5DU|%JPxS69Ql+{*NCI;35!SquX?GH@A@F&1%LUD?x z%5@J8dN39%K7^w$`EC|7msYlD%%#7#syPpks9s>EzSnp~`M~6_DsyJXr);g!GrWyh z;q3>EhC7*roJ3~^sF1T!4@enL!R_r`r=f1tbOdgr8aXMI^0DX8CH7SWdNho3!6t&kFb2DXm1S;1BmB8>5BeYYUfz>HrYZy#9 z`Qj-t)_meOUr_PZf3K`CRS|-w3KP1`Nc+tMRVw1Wz9pfq1adsXG~ba-FNx&na0d8l zesuJl;a6o&K_!WjCTXNH$Q#DUx;5H%%iG%<;doIMYMt_`ZUT@y$E<(zOG|b=_M6=q z_vd*niJ9+aKf{@tuu5L?*`~R?fnXGIQPx@l&SK;<#sV+{7GKzo^z|HLn9OfX z^e8X|{&LeiV|g_^B4XCyrFlkaw0f{gn87u487Qk?j350Fp$~)x-*EK%?~JEHg|_GX zQ`i*A@=U`l@s(V{34~LVKDPH`WmqO{BWF=>bYDdn4soPl5%N-mjJ)jrf1Yk#i(Gvg#H_ z+RM==E{|K!j5lb|yL!cDaa$pB$~q@LD+FDB&_->ACu_ucx^8%a{YtxS(}@!j)r!Q( zh@kK(o`aZ@w3e=r(eWmLU9?nwB*)pB2XRwNc*>5CepaA-9xu1s>C-Mgv#QgK91(A+ z=7^IUE&G?Mo=^GQ%mASN%REM?cOQIi4=?!?UKs7AoY^wkD~iqf$-$A!Kg9# z;oQ~bxqvP`GX8uyBYTIrQ|jl5iZxtUeQm3nv&eI97eT}}=Y!Di^aG=~SoCjr{> zPoN8H7DUij;oqm8!H2cuzpi(;MR`O}yNY_~moJ7Ajpghsr(e}}DKY#dQa!4Ib{(YK|Pi}gz78^Asa_vv>(C_qJePq}2MBdlrK8+D< zQBl!nq#q*DL+5B{AFk9^dww1N^B2 z`zKxgM0s%CpsyioqyCxdC!pmxq@bwL5_?2f zL%FTgE}cNNUC{QPZsa#8I{<_slLHe2dIoG9$<^%n1# z)`64OR(eqDwwd`GZAi$3baao5R?_lac$|DH`a2lldtU25ZCrv*jC4U)On55Od|7dK zBv9Gsd=ndNzfdNOtv{1^!sfzs>f6Yw1nB z$%AJqHaH-u7e&1!*M~p;Q_^_(FRJfu4^uH(ZEr$ES^43-yYyeJQ z|ApO#JGmIDA$L~VzFtYWcB3m}l_|oix7NA{KU$Y8vCeCq&_1d4FGTTC#9Sa?5DH#| znAGf`PpcNeCJnzPCsj#Ea$t%CzaS1Ctt8ZM6;`UJ$+1#Qrl{M4eZUyy0Co^o#Oxt4 z%kPCYL$&N|2OdP0a32hp>H8Zi$P!gMPZ_^Q7^AAp6QkmA-R!G!5IK10bZAWzxVq#v zs+6T!>RpP04Onu1Ufw*;bJ+3r=ZQFcXq4vyI(&eGdGn))vd|bAL@Nje5;D)*%}l>_ zx9{N(F~*ou@Oyy%73X!FurvRFA1T^8DnSG1*z4lw`nr%H1?~w1m*6XN_1W-W zE8h^pyOd*HV1h`p1Djj6wXYBJFw~+@^R`Z8a^8!HmYwMaB=Mm16~WsUEdgysgW1?c zOL_z1Vq&L_K_-93O75$OI$C`3L%Tm(*YjG6W34spQab1YnkN56DRM}V%aty0e|&a% z(B9?Tniv#RigOB4=1TiE!rmfvYc$X9j0Z;VfYYMewYdmOlC-3ksjw*oRY$U*`0SdP`dEhk783(D($0!#{e-`p@)f%I z5v_=4sDb6F!N!q#H3Gsa*G%l#2^Ds7Seh>Uzpn3{-3&!2`%oYrrdI!5*=f~vrlGgl z0P|XQ?NTdWJqwfc73pNX3t2<;W`YpMcwg~KUn&YoS~8!f+<+UnJ1k1EpL;fdZ z$p44=p(CW1eH{tISZt~bC~gtI5PnTw0fBb-lJY%$#kl4k|DuDVD-JYR9?H9}i#;Jv zF3+B5SM}fbGAa0o1JZJ~`@z}W^z`%`?S)YL@sDiw3*AJ2#XdY9(wD$XZFcUL)p{Uq zshTRzMAh};l{Duu&o}qiXeJ_+2|oxGZXVu99oBdHVM)*vtFcP-O|Q7@F=@A#VuTe_ zf6osv&Jt5ZF@K*@ecR_IUHb@;)1^m6;C1&&gJAo?W3g6t@os1d?TnRYI=gMWp`x12 zqKXPZMRKqvP{E^4Eijr&K&rS@M_5952}Ga%zOyseh_b`j^XB%qo%g=1jIvA;C8RVm z0dei;FE02S&IO*v-R8qx9W-xc*}mem{g(c5!dhXr>77-Xbs8>WPaP|3fs%ZpuUJaB z-?JYgVD~)^IQaH_8m(pYRH8XcMk2)Fbh#ov(IlI0*c$?hW!`iC&16cB@@oF|(HX8rlf^hq5dbvztfv-z)Pt|k_`^Z> z78mNo;sJI0knBHMjSk`ClnYf8(uFe-hWPj!BnbgJOY0(rXQrja(b=-K8FycCvVj=D z9gr;II*o5-a+lQzA~| z*w6r%4$#&`D}=JJ8+Bs{_nH*qeYCUOY@#iTwJIIa)3c8n`4UQ zi%h14gR*;so!am8JZ@)`HcBQ1Lv<=-lwy%ZtqZYr$ujkZgqjEr>TOD-$WdaBm%Ok+6}n;m}Jmf+tKBU)0Y>=B-p9=Rl#4Hf1uOUiOg6 zGk=UTgB*s5phx}pso0pOA*`Wh$>6UrYEzS?Bf6!ESD;IsB zHj034QBRN-|FEg^&pMLoP-g7qzA*_?#xKZxk9<{8jzhQl-?+u8#E~PljF)nX{FcQO zzC81Z=5-jkGZZanK{}G&XEstD8!%(`={r!a(P3%tdqD2 zy=FQuQj@E4fyfV;2-!Qz&k_vkE}&bee*tTBm>$3xIy3@77e0iPVWPelcfd3iky0{} zqcTUYjcIOuQldC31XU7Bq=P8G;D1sRuMVeJ9mF>RW&3aIG-}i0TOiFyr09NrGyf7mqDNk4Tu*AP@}j*UHf`lcCeAuj8m>4vy}Qd$&2b8A zxCNxn|K9LrE3baT`}-(F^2?c*`y%9#81Mg%8(I0zf%iP#><+I08HcqA#e*sF9LrGy z1O^N;@roCywxYpTlHyNy;vmyVex9e;arPrK2^9f3+GY9!Vv~`eo9!Lrqimjo_IvM1 zMt!=h+ZydAq4=X1r&SsmK^ z9}dc8bf`B5e*$s6`rh7hFHtY^y|<=Tn82t$i}&&uHIJPbC9dRdK!e=b#nFVt$KwLe zr`j#_5b);V-4&)J0xyNn;Tpk9dQ3el&%wJkew{Jmc5U<&tfAt2Kc5q|99)VUVf7|w zW@Yi&^bu>zX((~wCBf|m@1-bn@F0t2dn>e$KmENEYUh@MOJ1ke&0*hAjL|s=SzJ!1RPrF!eX|_?b?7 zNO{aTp=CDqAr#p%o$s})OgH+|f_ju3@U6uvrlzvFg&6(*5P!NEXj|>9BawjqwT>Az zP2sY*ZP6SM5+5JWqxDJk{GsE*Fd>o&(;fwr#Ra#SXzX5I)B;$*bZD@kuwn3|<@%Dt zLlLXu*j&{Aj8pZ^{d}X|X!C^EGK7q9JJH{o`eH^^szlm-FNu5ypC_x&)I>+vVFVTK zP)gv-ZM~$#o4>?;zZ!fuPe1OojKeUObENQ7@;m68QKh2pgh@>H42k`F$y(sS84hV3 zH$E%e1>=CIq2>o}5keIeIdN3>qF7?K{q7g{Z1@6oPpH;lVgiCI5tv_JS?N{_xsBW}p;xr?U@vymUrVX4-%c=&hKM z9Ka*73?843vOH%rF>P{J!(GQD=0*oH<}U`ny9B~5uTNg!8`b)i9RB%HLKI*Upq@*p z9ChQ^6-a(c2q>iK8=z+VNE(qNltHV%7Zp#%o;{<7JO@q7c6SeBRNu6+z#UTnnExEv z1%lcLgl8;{m$jdUJzJb@=;R&E6WY%1Y{}-g{2eWPf)q0g>(F&?>154-f%s!jB3I+TLU)qE2p-s_MzCmL8Jo9gPh3f)}sa?m^Lw zs`&S;bqv^yx`WyA7SM-?obtFRC+6Y2{`LKB0_A;*n{;snb*y?CjUoe8YaQ5qN z0=te9$>iu;wu}YUg=vf5Eztd1}XFR zYu=dW*n9mpsjV!Drx(&D(fg3JLgV2Wgc%2K5>6k`aOv*;I_ybh2{z(Zh^LMqI62uv zu@$?U%;JnttDmSVKUaP6?D_NOk|^t+?kuQu#8axMLu1^X1kTVHsk0z>yXPLAv%k=4 zhygWM!*BJo8A7c`%!;)WW##27yJ0alEG#SzM5$;k{-Dc;fz>___E+*8e~Sh;501;+ z7rr7Qacdo}la-c;^d&C!$Z+FWnHdULAaF*-BnI$N2uV59H<|U^H9z55|0B)J)8jMx zeAjpScTW7fm?1jZm&fzNQt1^UpQT_|@8lFXK)eJwK+sdx6?mM&Q+nc}lkqr}F76z^ zs@>w%M!Oi@nkAv7u$zb8?5rBmd|IeQ9&bp)6DAQ5Ud@8X1FM_oZw$l+N_S>us70$x z5x;Ty){zlHsJlQZ_gxS8KD8-@aLkY2bz&T~M*V1DHkQVd%|sv*G&xG&20G-_aWPWQB8nQ>~N0GV+3y_95sacfym+v1pCn#-Il^1VUKl-5)9pU znQrpfOhemG+*mx-&>d(GP*Wt-Dbk{DS3gpBR%oMT25p0pF;l{y1_9cD$v3L zlB6GY>uq4>%Qw>_(X-#A-ktg4PX@5*PH5={=LeK)?v9DTR~TFhY5bRevZJD+mSfX6 z+4(x3TeCnM;l9pCfx*^nG`y6fOXI?Sd3`U0&5*x003m^#OL>$5_@ztNrQ944l7?vk@DL`?|0cH~a@7E-;e80T$ z%_X0v1w106ZTjMVx+u0aQ-c%m%4|xwmyrsp5wm`I%k_7a>ohu=RaH`hdG2>3_p_p+ zqUxV|O3(kN1)LJKDSU)vOJA%DG(Yfl`qC)JzloG!&}rAYn)#+{kZ~_$2VW%#qPZD=f4hKa-WE$K5@PCS)R_On z?m$sze*ZqT3+`wxfsaw|l(QZK^h}~IvyR&fhTbn17t$%W70T!u8zX_WZK{_Zkym)( zs?7(}8p1>JKQoO8N)P7nk}jJTT7C1U;JKH6>PZt7vukf|yVmZl=JG5{pu;EQOTvN5 zKpdhf>Kmt8XIt~=e@_7&D*vM%Iz60BX=prDULZurqsH*;`vMh=pB2t>G^Uup-W0EV z%2MrMLWw}>B6!L!$ziOHUu|?kG<82)ksQ+UBOg^`&gxhfF~B<7=i-D96oxnmhc1Ef zedvL}(63`KJA!nW3~W0Ncmg+%161V!syO-JiPhBlf=FKNRJ$4E&W4ZHE z+Rul!9sNlDg%%f|%>^r`v8YN}(x16T#`eI=GZMW@UAeEJaQ=tB`ut|xP5Ig!1wkex zjbeqW4oVb1Jk%vvcv}w*>8PfNK95U*!?)&d4;z%24ho|x6 zOBT>j60vj7P?18S9p!`Wi|Z}XSY5uxsq@%Ihn~fRw#zbDc;Xt9y1A$^B;R7M04o4B zGd$v7B#PIL#6(jU9|*fB#hZ*-rV7XF?b%YYVc#KA3QsdwmwEhK)Au!i=^R?z{2qS& z;lXOE_cXEREXRb02c*o*2?(%b075U~Eonlw2n>&}!~$Zx)<@L5BS$#_v#T=FsZOj^ zL!r-9PR6F2Kg9A6*&lubWLz91`}eW1E`^h90Am*uP*&bsMsZ&e1_;`A6(H3XWG_B7dsu{k3iCy@1Eyy%w5JZv953u-%mhfiYcSNB|{bB?Lt0_t6cK zTRc)-%E4P!E;VZuhCZ$rAZEmR8i{id+$M-lcKV>5i%iOG%Gwl>uWh{X8&hQ)DYi;_ z3+vb}r{G$%NX?V(@bI~o+8ZG!13}kma*(T)pa*cM{;}P{ojW|agW4@YfzW^ zx$(2xtMTQTv~WTl+>l5d%02-uvubPw^hu1G{!9O3Ij3GIJ_|X=cEG=dcC6gAK})KU z4a5UWqgg7AEasYJfA94O6+Bvv*P&WHbv)MM?5O(-o_N_}PPU*N$kMRE9CdMWY@s%a znKs^!ur~%gw1R5_oe+xH8Oz<*s8;GWJk~*mXWJ40M7yJvNxqz(4R_U=(y_3a-C_B* zuFvobMiRTmB4%wZ`!|YVAVvUuvyl10Vt^9Kfn3eIf!aI%jx5`_dtbDrrNDYkNMEQkvz6XVz^%}GMl0yp`t&~&h413)pZ0`5tl3fJX%P=n zpypWgKmQ4xI%CdiUkr5uX_KGq{Q|8BaD7wALv*&lvA?i!oNr2Fq* z?O49*cg`MbxjX6^6TeT!8oDb@x75TAEll#2kFMgKO>1@iMi`{(T2@DNo~wr4z$;c| zsq{Z~U5E$q$T{EG-ybz7vkVw%eTXoCc?FLq&glLG^@rGr?14Z`=D!Eg6y1m9T& zuN%S=d=oCXwsqo+{sUWdE}gKLTsFWW*^KOxA<`S?HmO!^KKJE_$2`f_4^dt=nys`% z0fUCE_F=N)BdBLBHYle!k)mF^@&4a1NR0SAiD~pp{tYt3$Uy{f+0;E;Ut)n>t@G5o zr8iC^O?T6I?7Ckak&9Oru_l15z-16}{&(&7^~^FZQRc%`?)E>g)dFF2Rcu}=4b=2j z%XdUz(?JtATV&4S5r8_f5d^A%k4`pr5(ePs?XN~z608n)L#*UZ8f$#N9CyHAUFETj zSvTNCT;SY7vmNokU$x~!x~MJcG_>0G6<{&Vlm`kV`cK*X@>#eH%-5gYSf#^rzkW*{ zZt?WzyZSocOLka?#=y1oA>?@GNpzY`fA^(o%rQ-Ryi9Fay{VcO8g+Ox2c>NFzk z+oy*pILE+3C9P|i2lx1V8&)}WyA`fbp*&p^!F)OMfbnPf+r(TtsDi>d_rhQy)RTJ* zcWOS!U+>~)Ug1s(S0>(ho^YOtxdb)}ELtv-FCh5HLgz(+6O?fAbvh8Lq9{ic<>lq2 zsF2D9XuXwmFmi=5rQv#i7KPcC4$!}~a~=jk8jTok;03p;UWL=j#m<0zKE%r!^yVN( zltIE^&m)5}Bb|%;YY&Rfd&f!#ON|f%JPl%imuzBia;kCtZ-#fo*v-!h`x12dI!Pxy zo$rZ--7O*}+=C;%V$&Jfo4MIrJLQyTk8(Uz%m3;Ysl}Q+p|lLYyd!8oE&n^`2*tw6 z=ZiKbV%Nco?Daw3iJe{U&&-$j-leVO8_PRc53W9JZLDCWi*(<9ToW^cV}kaFul!w_ zy79jACk4>i`y&rcLBY zEY9`;Md3zESa8#|(ymf~< zk?vZ26PH$!Gnl7(+Gf^`PKJl1m6K%*$=Vthidb_B9)lCK^Xns<8Dj2b-${^g$)soglAR#CD;elseXmd{gHeY|K4CVH$IKx9z8xWs+U`boI}a4 z|Kvi%XAvt4x>F6|Zon#A6<;($Hsx;)K4MfgK_T0$B%}6zCmBo=$0Z#e0P&7*y7aS8+F7RF=91k!lc1nm;r11j-QK8Sw)U*T1 z5<#+oJAYHaLITSR+E7wODgVD6a5{9Dq-ps*+SMinc>*Q-Wjpt9Grqvz+uUYNabU2G zRXK8}s z!Fps$Jmqd>;W29vgcY-WmEZaA?Hf~7q1EUJaoEAzhceuzi@bP}nMI&H9by+dPS0H= zs^u~~3j$M5zpou1bG`s$6~FDbXoS`P&>Bw6G}+iKz*>2`Q*dMHzGOvZxQ%#(dV?N1 z*8le&GbPv+xSbW`>*uHLfc)uM`Hg%)@r!zBJ`x63I^j)bU`T}Nw4*=VEUYo<96D%y zz1a3e!ir0ERmc06bdz!rNGIv`tCakXbe^lDW=H0qtg7P3)*j{>Wk{*G=DN_$pl}KG zd{J@g)XtO#w>1VIGTe9MKG}Yk-89x^fL*5S;CGFPUtjA5c0umBoo(3D8ztd7Evg40 zPchGBNQH(xShVX+R;oK|@ZM%O^n_E6qxx26g;tjMd;q@>c?^`@_pPlCn#lrVPu8g@ z;$V8HSc_=V$*k!jl zT+`c}@j;9|8B{|JL8C%LjzKT34hCiDQpwz6Pn-j`dOV;Gd14Nr;Y8Ig!!$6o@Ov#B z^NJji3{=I*nYfK%8VV837+16C?4%(JXMdBhAGmIyNdJc@L(r~$63cn%_y zNW$2wF@S^Wjcc0adM+CtVIx01!R}g;LOop@Yr1V->v#KPB>4F6-E}qG_7B^yL)Fdp z1I4vGZ&bvuvZYgI`PD?V3rgelo$C?bfbBQSx-G80oKHhw?aFOs~y;X_WKOD1BgJJv@xb6?T>KxI!tG6ikvyrk`;7 z8szitf=80i_8a+7-}?7Wk$3YmmEMeN;YpabCiirWp$692V?g1il%DP5otGw^bCES1 zp&dHk{<4R2BlnYjfBAsC+BVOcz9l5#RZm+l!gT0Ca{@UB$i|Ma%NksI^Su!%LvN8O zo-RmEyR;_=*!iXgvpl}nfba7B>|6p-COTNkMrfF~NO7InYeGj2YxEJ4N%Y$N_j+uJ zwfcF(^M}s`$SqxNN{Lhq9zpN>K;n@@sw3+~#=Pa7mxFI5t%>a+Z-rYeU7UI`@Mb7_ zfAW7?06fVMZYBJ|E$66W=LqL55hkB*$>pEmYx1)__q~B_iO8n8jtL$MXr`#$J-irH z4aKFn{EYQN63<<15d7q*j9`MX{pZCAg+NI;Z*;uA!2d?^Squ=Qrf;;qHS^!&!!W>$ z#I;QCvEa>)3tG2oo!HB7yO+f5a+b~3GqwZOaF(HATw5yGU6VS(qSe8*e+%SR6}b({ zT6C)Q2o5R7DZ`WxRWj5Iz#qr2aNSi-!2nAsIw{n0VjPl%#2nq%2JB#;?kl{4Olh5; zkWWJPSIZ2?7zjfzl$7k28CK8~uQ44VQ!ngNu(45L$1_;I1J#X=#Txkh9ag>&Ad#n+ zi@`7I!y-0o zzHS?KxU1pxYcI#HBCT9WNpyH-wS*ZM81NSnLeeAp#_2;A&2+k`DMKEMcGXRtcUys% z8!|2U%*<5;GI9aF0lMeA%+DJe8(H;W~XxC}v)4OZ0< zs71%CtFO;ZF~}JBxQlz{TQ8Git@rrx!LE7eYk0Gk5JVG{7*>!X^mRo~)F1ndl*nGu zvR7&!&SA~rxt+cqjSKxY=pteFXr!KPYIe_Y+wBhN^t`Od$u%2UR!iivGcYoGy)+*0 zq^ni1J@VbvsM4F;4|gLHS!rLR-ooSbf&@T&=+(vFQzx#4gU-X1uMqkm6GivN&?oAT zs{?&^1~P{|UL%YgaF%={AeRoPbH^oP)uwB$hmL1l6PGGEpkU@aCHMM$=s{Y7pMatF z-h>DoBpv-^JXN+Uzv#Ye7Cc{ya{&4V`tnKv!_(=t+@YJb^#ZaSX0yojhIZF&m%PDy zriVLo8pNEZSZlcSV#eRaagrFpw|_0V^|PKtGAF;2hO6(B?N}h*#a=5Sf=Ixa2xqXU zghbeQ{nJ0wL=BNT?br8T+4jCd`w(lJtMumgJ~0?-Ro)1@%r7tB@%=*A!s#YAoH3cx ztgyTOa_6CiMa7GjfYWzUhu56O8X6kU6&Mg9m26CnSFe>HVJnYy*F-*WYy0Qj^v#lP=4jHwHs8` zm#TRKfj&iOWJ)n<$)vtmzuPLS#?u9zB>N26IAUfQn6LoW(b1b%RG^kh@uZrEvM?DJ zuWD#a>4X%Ej3=6b36tJq57_n2mx%yKJ;V5c$B$3WX9f?9Y_YN^=pn|WK9Q2Z7za%V{1;BBd zSEQ!#P_eO-+I0zn1^=p{zK<6egNo3U%tXx;?uUVh@68nY1aO=H z2EzA+%&w_D#Lkd88eN9iM->`F*b zd9`SNh5!rrniILr#Mz{Mw<0XCrl0=NnOpiPt-0#=u$E9Y(gbaCnTS2=ndVv&E=x@M3D;k$?pT3<*smR z19~y1n@b*JcTYJ6QLdb;d360L0TbwXxdEaXjxHHtp-S4iS@?>Q6IIU|@t;!gbM#p& z$VN?`84#E?JjEF303d8s<`b}GxW&~Z#SlT&?A9XDgiE$`NeiE z^tt;|atS9tx$i&v2FH9J$gTe@2GsaDFNO9e$04T&39FYXh}CBd*#z~+d)ZrYkBfqj zy0xnn2}B#kF`poDnX5UqdWhcOa#S0WUD<|t0(kgzIG9+qE>m4=FBIVQ7$(^T1A=y* zGL8ptEfm5-aTV=hNZV>px)`H!91ZsX-6gKi;t8UUS)DV$xTto`#)KA=lb$$dZ? z|H)Y?Yo0b*0{WLVtiVFJ?u|hMwGiT>Umkq1vG5=9Vjd$?I*>yDy&huYUFCP==%C3_ zFz>8caGyLzqV^ATSX~oW_osd9PJ>=QLF+y}hx{zy!j~YugMH zjHP7x&_Pdde!SCxY)Gb=W>Am+Vc+?gT0f_hO=M+*@c$ABoj;K4$JjM8<#m-NP_2 zTeq-EBKzuJ{UiBJAaEhBMsU05i#4I$@9XdzhoRw7_jV|sj9 zSb9s!cYEW>?XnNvA549{COQh}!WY*TF82f5c2I8O3c8C4RD=RgALSMg_PZGPZ3d!Y(bZ=2nTV5>N&Z9vn1}8I0kBoNTRTUiG%O;6}3+@B>Gh4@H-RADJ$(~HHR2B zVMeAq`U*Xl3-1Hp?)`1&yLYbX@_HOyp-4D>UbMGu-l*J_Xr@1Mutfbr@8p9?4d!yj zfpHN6t?q&PdQz>LkXqV9EokECqdQAR9@|nToW>B5Lu)qh<)-$GIz(&SyzHrjZUfVfD@a zs#iK>`q7r)<4OUf7xog0Z6ll>$7BnbVHz2^WdRluk-wbxEmv# zO_?A@NY1;A7;8BGqJZ%cRa;y8$RB9?9xuCc?w*fB?v1>TCk-%>8HjL_#z*qD3a&8q@d}E>g5X ztxE#|FY#`IYy%6Stj^2=)(nUZAQMH)*Ppb0?QQZ)j*-73#@`I54+O7snpQjT1| zFOIyQc-sLJSHr`0E!ACHVd1eb?cf95H9Hse0mgs&=uC8)H2KO=XTc^c`M9Z%1r6NQ zQ2h|~EG;dqjBS8+`bHvB3JluDA0b}=XeY`=KIF|}!(H@o=E?>TW0rH=!tctMHv8b} zX(5zaP`+`>-n_q$p=gZy(e^v0xJIc_)jLURNL0!78`#E>a$)|?n5}w3=I6Z;uW&Pg z_grIbyfijtI65S_C|f2Noy$mwBA(Tkb~-p3>C4TpE>{eR4I%OUDID?gN|=1Npd0zQ zf`-?|54GR)SuY0pN+$D1M06Gvp+e!y;CtE8&*O|Xl8><-6LXr<4Sg;PxZDt81R$ZR zv*tVatBD3()KxI8vxxGg?H`R-@5)ZUq!UTqH>kwzveR5QfU_Q?k9Sk0^L31H;4 z?kNpNq!)i_HHv>~D%OAL@ZgqGJx5x3A_tfi+MBldzV zPJ|CHKY!okt-NQ~E=NmZc%jJy*@0()dJ&L(rjvCt6cG`rcAfb(!8nRUS+PHw%d}ow zc+c}|-7rx=jU}`GYrQqM88Y94Rk{6?Ub$;RPCL4}4{twO!uoRUX90Bg)pxO1+s~LT z!p<^eye9cnL5@O@XFDVt`qV+1m%|Fwt)!9;AjhMXP8p7x!Xf%#3Ky0g>PC;f3nf63 z6@0%ulSv)t0asH(cQZCJXyr9rw&LSmEBQqmn#(%s$NNH@|U zAdRGiNF&mnl7ck6b6@xOjL)Br;XwA?2q{y8zFB^?UIBoxSNjtt;yuiHwM+X0f2meriKmVjuAY*^49{2homEZp&q_gY^`s9N#%YMouIJ6#C8sW$AE zt@3<|23tr!An-Nxfxatj^Ke!LHE1{vGMf5)tOT+cndUpTcWOXi2bi#5&7y%&S5Ol_ zm?YVA0WMVoSX#1hvmt#3eCCV%zQl*l5|e@p0h7K^PoO>ch=|dTUamuYdY0d~P}giH zJJ|#}ddNwR?w#$KMM%ILUMgVSSOWAlxg`~ocDg-+Kkd>en`K+Xn-Km){_tb}db z>MacoFj#NkZ2ada4L1P^Spaf1Vcb-AP+@4LseIE*@jEv{zGO-N@4RJ(2m8d<(SWc_ zY~*A6I)MO0v@l3vNvy%;Lav~F9KG%zWF3Z z`mg24*cS^4H1zsMF&|5q`JwsHjf9u@)aryC6JMWAn>vqZ=dsh!G#Z^TTIZjD%Xc~z7YO6840=Gn+;5D145YIth6KE+R@LQ&du_}*+$3V;THjD z($Pe{B_wznYav5_7K0v09F|(x2Iv6>jnEeLN!W{<@)Bg@*b4jI@eZ_$qm6Lif@w9& zRLv^lpNQO3TH3_Bne}%P8JIp#Jakc^fy&sC<#=BvGvtPa!ve9fVH+|7i;HQ8Z89+T z4p%z(>tI(udmFx+f~9P62@F&U1~^=*6MC9VpI@I^UN9W6TXyrq2?w7iU@ zgPp?Il|JAMD!6Ll z0$cv1=pk6hnUe_FE%N^SFp?a$1*DTMWLZ>{UkR!-Aaze7DjkMOwKDdYyA_7@;A$)Y zsi~kc4naPZF(~i^2IMk)eZzUe3hxBm#_Z!-R2(+*6+t6B3^w3R#3J94Tt`Po2a{YB zh)8U(sEzr8wx8HGm#u01JS9TR=MN7A^TUrSg5!RDO-`SGeP$POwVT*6AtO;a zv|(-?>$gspX|OA!qtVH|eLr*Gz{N=t;M2AK`9Sp&Hx%Lsdmc-;&z6)s&} z2n=+LDz7M$U-9*S$7<0Quw(|=q>DMN!{3>0=FIaahJz7>((PNwuAG*ezBwXJd3wx9Nscn1;6J9zfW3-|M#PTpUC{je zfMQ?EzG26H)eHe@NWF!xwk+4Y<~Ie9C;m3htihcaOD?kuE3ix#L4shZO69>#PyLJn zLyi3!76?O7G*kssW0o-{!;ZA<>n)f|p9%28nC56p8LqB?3LT_?;sSNgU@Qrbv9U2E zL!9t)PGq3x{Xe#^qe%*n&+Tqyv6-Tls34v9=cs`ekybZ_iuuGR12-el7bS^h7p8PE zrpu{Z+F!ir=Isr_YP;GCAcYV6vo&x(p0wfByLu3Sk}Q_wHD=0?V(*mXcewX-EEc7K z%QS#@SkBcsv8A+o|LSOSsk#!FB2TpHFf(70>n zoxqtpO82*Qf_>!;t>sBhPCS#--n?72PIqF21F$*o{>+Uj*|g2@0x!M^oeJ<;;)q1REF)oeBOuo$P#A+yQugEduYZCP)=RO9vt_7u6E7Q5l# z7lsM(lLbXZ#ez@}%km|L_+>DwGdUR!24 z^!!I1V|$aIZs0*C6v%sZV?%gt=M}fy*&tkE*{L9p(Kx9jERY>HGD$Ehm|v!TtN{8V z62M++>Ql}io}Nz3G}SAXwZn|{9s~y4$CFm#chU|i2NfpaU@nqL{E8P*>CvRU{IiI( z_cI4*PkF#tmJ~SNl&rb?!OHxzU;%50o40_Vz+-cOi-Jp{PpCB-L$PE+%g1Jg`R0=K zM_WmeZqLJg60&B&S{)dslgEdLdVqe!S+wjHy#kl!uIYK%)D+oo;g8dEndT z^>-Jx?W~mYJqep+a(Iw z+0^2tZT=W>Sr%!tD$ezlhdS|C8V+b~`%49kJ!{m?76UZz5j98i#om(=GkU3!<%_ss zp4guh+}YRK`$l1EZ4HQpR#-b;f5^+ri$uQ;KxfJb3p51pRh?mgFSi$X$z0REeX*S2 zblzs1B&6{^s;l~|u?xcK{FHSc`mbIIuAg{b{4`MlOj0i2XW4bE6zpevyhRH6aRF+v-g%87da ztaYF~khMwx9BpHN9X`A38KD)|Z=_Dy==^Yyg#u`lPRNi5F3IrDI$|-kkLId~7(tFl zXdE&ikP%SLRUjO~6*>4vm)URataG>ZI>9#bCxIVmn#3bexE$>5Yned!2n1LIGD(+byeV;YmCP14UA5{J&u6a z#Vbk(sCcl;BPQ1$LP=A3u&YQG`kP?C46>Ss|1#-Uzxp14XFXl^b}4>^%k7`3`wozR z$t&hIBijkNh9s$)3IqQe)FvC`_ZqsVvFBke#kpFUO~+9i+#jA1%i~+^kdbAk0RjsTjg?oU0kO;2&)$xYH|Mko&{`gR7S*g7nx=Q( zmU(g17!+btcV#%aMprra)g*sF3!N}_v^+fb@OZAswtRMbCy?Bgwuh@HjP; z@9XV_0YW@PCXzO)oZ!^F*;gh-Quxw7H&;je338~~%Ar)l3AJj9PY!Zk3fC$4vcIdU zgAP@)9wOBRZ&?6j#5tUB3N)rVIEpPTvgr;SA1s1IAaNH4h0{oXLjYGHe+tJ&j)HV1qLwOx zUj@8jG|GVwz92_KX9k9x7m_YmqCGQsoB?zPTWw&)qOcf!zv=23`u>oYlTRV|u=&tr zZpeUG^aJ-xK0AaXMVs)G`8`q^@<;Q(}ow#p~+or&Olo?0Ho1QPY+(*^w81& z3=djLHq6ZgHva%SMXdY;ii*dG8IL_9ma#!(JWi#Y7enFaCfM>=Kr$U37UspMRorru z-9fsmNQo6~9rL>FUt|$ZsUGyU#-{3NYYOR`n4sh-|Ebz#e2(FGbt?CKYNPd`1es0? zqr|*~aQpi8+jugNL|6Q=74DHL4mA1LL`(Wumv*+6 zM1#Nj4s~(aTMqYq(ic(j@(hWK!+?!fns0@U8TP|MnXCnZ#kl5v`pq`)-!q@}fGpQS zzx#hwN2{d#_RtQGf{@MOH9;mHXcZgqawFI@0ij{HSRS7(;e4GDmJQM8VDr#GOz5eI z86d#T2Y#8$6bQ7>Kxuh?o^ZQk9#o=ihj3|!5i^4}KGb*$k7_f3B$ zbFflr5l-vRL%2TN$znn`zD*1?m1a$gT7^xZkaKi*9}0p);si7Nq(WpK%)`7YISRN> zts-7T?vo7t9~MAPEEz5BT`-Zy!*9hO>h7Ix2#ZUVfi4$|hscVWUPjb_h*($=5b{33 zQM}Xh@NG@Ln7<=sx2P!9m_Y=`zu^=HEEe&bVCb|}6#9aE`|9T0OlhrYj7B^do@%Wj z`NCsv_LO?9si|pS1C6Yz>>B~+y`MGsVJwi1i2fBrME~7xbilvskD&%hPI~|-kth1apaMGqqszmv zT&M3-a`H2JSPbE&kU37}pJ`fzS2`6JVaTY?6B27kv%VAYe*1H6So%4|s}6t4+_Je^ zPdUf$Qs@+9)NcZAQfP?mzdBSI{M;GOk5I6_Cc5pRBLu})Dt=$R&OMlPhT1ziTyg_9 z!N~~o#Y8z}DoE`UehVQXVL_XxSJ+8yoTx+NWofRB{8IFLX5-uTQqWLTEZ@6C28~5+ zuc?}HaHO2AR?n?U8bjQ12t}2(e%F92OQH`H`HXKIQ=Oy20&8)=8(8Z{!%Ydkj;07f znB+oKps%%n{}GsmhkktG5s$#!pWfU*=0*7ON>25QeLrKiZpaWD#9?%;t9dZC;)~-X z{h8+HdQ5$w2-W;B9amH?uSzoS?o^uBR(dOz;SH)!Zf@_Kx|VNUOeQm*tma!#H0|}m zYmoSZtNlR4-M4%qyZ&NQPobQ+mU=er`WLQnKjQxT-0fl0SgLCF@LnlKF0AKKFTW_N z=%vg^E{xw@Umxxu1iVkgNv`)Mup|}E$NdRAs|MD`KbTqzr=Z#HsY(LT4Igde!6S2yHt%!Fw#{7+@WnBASVea@ULRM60 zn#@NF%_8&@Ig!AA8hp|Zc)bLWWgN`vol-6vFMR76+=h+PXZW++mh!#4F%h;IMO)crH1+pO5N`q#^FF_j1gbg&5Rb{7{*_6_ z_7|-RDPh^ds%@r!=jXkk!V2ydfnH$;cv~hdz?sE>{JBTY)s&eV1w7YK$RBEz3N^Y! z2R*QxCr;EgiL-jUnUn&cNEjo*p?9t2Z`d%}Nug$!jCTD;k;7SszFSakzF9T%jHR^R z$BDWV*I9A!%%4`nS#mqng3+zSAoq1 z>zb%*#n$tD6J~@m&S|_LkVZqpv8=yR4+OK9N53hdg4-IMlF@t2{qbXviG%6wG+(Mf zNvm`fG1mTSPo5xYQ6fby;?3Jb%)`S|Tm&(J=CGIYw2`BEZj6>zE!2O& z!(1Xm(I#V5lDFoTD(r~}{A)c|nN~(&KudYQ9o;uLh`>wP&OmR}Z$6-2XDIUTSCust z3N^MQ{N~_fD@=G=$^VDRz{51YjI4DUk#F@n!W>Q&WTEVwZ}a09@O47|b+)}5^zxO) zilQ1TwK;6bLavAtMf=yoIBT;H&I=uOVur$g71onJvhTDX1Ra&siK&ukJ=|G!`LT-2 zVj-)+Ua{7B5HvEav<&=d%B<_T8#|HdtoQDf4F-;5~Qczh&v{CB3sq!R>| z87`X#*Gp1i)QW1gt*&DvMPd;gyzh#A5i0oj8(C6;qu>iUoFjb<8|CjIcZ;{)_$mxS z_6l1>fj*4#QLH>xrj}rsfpzDgz8QR+D!38PXwTP9cjyPLY`G>7b}C?6?DfLkw#@y> zSKz7*Oa4!KekdAtk=d=1(PhtlXY;*&SGA@*z(L3Wlz{9O9o@*2_Fi6zoQFp}HWx%{ zjHOF-2jA9z+;EO1<$_^I$PLcO;8!bGuBmv30x$^IKMP47%85(p++_95&4WNpAnrn? z@EaJCiVB%k{OADptgZ9#=Qqy|?)U9VXi_iKtIASwAk-FVwbIV_mxq%R+K|$A(!GKt zfGMZn;|vFKg7#jAp%P4M2zp(V(Ayaszi52HK>2f9GbFVgcn`9UwtwYT=UTG^#`IU} zTdiPyS!io9ex#ji9Lv@|1&r$1;i@GK5AJ_(4I0djhBhtj)%ZJCbRhuKOm0Z<&I7SN z({w1&gweN?FXa0}nf8kyjiR_s24%^k1;3ZOjqW>*1ikS`)7S_P$$#oOii5Ql-*<<# zWV`sdwkc*y%PO-yoqtUh`SGw@%~c?v60#Mj#XlhG7{GTn?4SZ*{58tJbhpjy=U&au z)79>wsA43u174nnzE)1f^m|y8^#+T(v=7TDbEX8HhmlY=NrPf@K~I4`x8#_~7ROTF4orr{8#- zICd2Tvt}N2=La{cCmbdw=lH^@Q-%2ggtS5%Z~u(n`8UL#CRL)biEiu|tdW0POQgz9 z4L$fh6mvP@w(}%V5-5a+PL6#*(Y?F9@?NRqX2Ng=2PKrHg@X$bqYI){8>rLnK__jg zlP>;%q4P=6rO<0ikZ?O+o3w{E=q-jIKk%TVlMAK7>Ab}oOSDB~kE^{!pm^`BDhC0D zuX0*7+@+h)b9&gA!j3CDODm1l5Yp!D~j)m#%B;x%Qo_+$7596w(Hl6mxurG}o8imt>k{Gz*E zTzuDJ@oBvwF_$$X^W5ie1QANavF&lTE<)8b>YBEf6w`2SFXtrY$!u(i7GZxCNuvR= zTYx+w-9TM$uT@FyFX` z$q54>z&qq!|CDI7YESNM3@qa~tIS=FCo~|PCF1@|QxiP-dWu+p|IZizJX3iiCp!OE zWFfr;+Nhk)H>Kk)noS3zAExhOR*2G)x$E8bdp^8fx~rP2e))NEMbE?O?;;yJEfE?> zT;6G-k^S^bzSZcA)})VAJT?D{}fQznO8ruyKF zQO3j$4xw+c)A++eS@;d9^au>Mk}uuMK_ zcK|wsXL4k!HtL}OiXatsr)8)i4uQijejpCN4d`r9cVQz=v?^fyM7Q25hvL%5W`*YJ zdGwy7kQ>b3%r}2g-;?WAU>}tgS8~~whk+-5p)@}(H=a^tQ2tuG!;L`5)f(yIS|NHD z)Mf@_ZrCo=Q$x-4Ae6)S-o2Sy5W=r3R|XtRDq_H7f}D!Q#sj2aiPDXxmw37&2Fw|4 z54n)e9;5Usu<$@J9X*uEY(qReyv~4YL|Vk_;J;c7bJ@o}o{rbT!pP0c8yPA$CNk^8|6 z3f_kV>2_r1?+RLsgCR*rh{~S_fES|PaYJHK^Nsu)LBXJw>Zv%^mB^WXd;|6Oa}Pcs zp<%c&NLhRyUtR)v08nw0vQKvpj}P^ZKQ-W+w4==!i_F`e#QdFldi)>5>z>~w?y%pk zUY$ROQHllpZB7i0iel3Js@}D)-}F*CI?a6W;?jTs16hLq6Y*M7-+T-u#~m5=5kr5%S;j3Y*7(` zO5MQJ3N?79$AEPF~^2-`;FL5rAP`TS_0jbaRr?6w=c=nhN8qaS99+(MeNxB{aJ|E1iZj@>xShqKme^p|J131U8!K-$j^B<-wo85VnOVwo9lmHPEfDeCQj~GiCBBJ7R5~p`lX);>prKm0W{g>(7!Ej!onJDx|oPTyPH#k+*3GB8IWp>FSWxgQ6Rx-2X%1{(@Y z3WKl`w5;-$UE0S1GH^K!k@=A5{P%S#h9925UooE2EDOYQa*1oNG2vCtYC34}ocn-I z&W8gU{-lon89;*}(MbehvfU|WLkW&N3grI2E{L#S6umz0XRwJcDn)f+rSXMt+==Zp zefSyoZJv=APLfuV*LDfsf~A7(%K>82L*jUzNOq0S0d+L&$|N9g@W7|Km+d(^^P0Q; zpwz#Jf7nWb>H`YM?S}&ulp*~@KCvY8M3iC+Lw`a|r}j?_*ES9}5;$tR9aRTYJ)EyY zvdf>12s%-NQ!A<`1BR_)aRNA`{|^iJB#`nr)FIGeJk>c!TyWRr4e)a{wpq{qEDX=5 zOF@T#vWR2VVwo^qEq3Tj)dfFH02?Pu*aFUo4HtxAp_!Q(v@IFs(5gcO3OVBiM4^s2XPTnA=1VPITVtkT5#ysRXmJ?2G(rVkji-nysd2G?jOU)8M==_IAB_GZ4NInvAwu zQ}r}IAHP99OjuTHvYLrKntY_Z{k@||EDeQkqt5_~wF&m4&Nn{>2kBI7o$n_L#NiS* z!M&A5CC$3>R;@so=@{6fLjlBtWb>B9nMFokQJ$rDVS)JI=|;7z(e+@i11{k4E-dgb zuq_M!J6(JCUSoo#hSTN&xyj}i?r)b5dySLuIvyNG9q==|iqIktosDe1`{&dC5d#FB zpO}C*7!~&`ydp@y0E#jwz(l6o@{uH+{tuo`h3xeo^Git%Dv&mSq&C3v>(x95Y|;8$ z-Gssi(p-3RR%&b{x%iJsN;$F}1Y(4W#uO#-|M9u6K1EFety<)hBgB_RqfB>+#Y}WbpcvootNNfzE zXnoezVMhgDpBng!?c3+x2EZ(6x4SawU1WXw)Zpy#SQ)pGhh;Z1k<7<~m_UqO&F1%A zy|AeMhgEJ+BZy!h`kv6c!kNmZmtIGCd&>Comwh-Un~=$F>hD&Uzw8;O%Z)K+xEkdF z6XN@mjXbYwR}`fKFu+>e4*;e%Or{F~oM32E)o@02gFK3m*{Vk3WC!QKa9+?$7L)8CS=b41LtHzkfHFy-nmh=?g;>wDhHN`lp}?M450^ub2H7%tll zS94Xra8Rwe+im@or1^bb60=rSXc-&n^8xiA)mq^;m3l{*#J;cg{fomX?`l{%^a@dv z%Vkk6))c#c1JEmVtEoQ@^CQ|lGESY`=nhEA36Av}-v6%Y_D-3wYug9(@(KRY-0Tah zZ}X14VJ#_bK^d5FkC@K?-zv3F1he>>(s2j@t?FwP0&7ggWflRNIKRv2jq6!Pa=L&w z%0jnSLS4L(*Q9A_wDJ7(0i$Y*z#f4~(hu12CBDIEHU&<*4fFW#ilkBJUxti-mq{;p zI~Id`o||l&JNO}$T*ws}8c0K~S#(L)fE{@Zzwdetx(q|AlOG;@xqR+!7_WjTmb_%< z?&Q-d0>j4m3#1O5g$J^=9KbpO94Y-^!Z*UrK#vs<#hzq>-KG!Jmz`30oke^bSDMLc z!_@73z}!K3c6nL!u@#o-Z|c2{w(`xCqS zHP)p6%}U|Eg<&C-&g*s9O7cqASiX%C<<$hg(v5g z;nHDLC(FaW)Cpbm2l>|n2S(k&753jC^V8948LUMkI}#v37)MtTST#p5sJD}I( zl>az@RFXvC9yWS->a}PmQ%f$Jq+g)oe@Q<3W*r+xKBG<>6Bv@0)AO2l*>qw=;lgP{ z+&=i;oCU4uO~xkxMQCBb^AlB-g_xLFE#-R}psjv+O#tGSJNuPymkP+;w~IZl?XUJI z-@7FGH!Fa7dvS-U3kU)LTpbNc5s_|E^(>~3J1!*_U2TqFOIgb{c^DEJrAc!y^*Zd? z@?2abzxe*cFY#9WLun@qcl)8-dBTpzI zc>@*eR4lkWf&oBL5P!V`h>{wkI>UBRw4r&*MGFY%qKZ*s#$r+gw0DUHEz2~ZptnFP znD$rY#}$c)#9T2Km~HuBOah=ZrO|D+88qwG0(i>Z%=lcK2ic?!(X1E~O2v3H3qRx7 z#*x+)n$OQrs{L>L%%UG%q)OLULcDkg>*;J3FRd$xqsQRT(3<;_Q73YQ6>#6 zV-K6FidB+=eKnDrCla~f!s96vM;K8C719P%KcR8?{=rYJ)4*U-tMp)+hVd|OUam6| z1B9BNX45v0KWMz8iZQh4P0i=CO~2WHAGq(yin>aCA82m;ABOe=x1b+6ox|v7%5ZiM z_J?t!Am%w6CqtrvCH^|kmmrr7h*gy>$CJX$aHig^$K=9&V9Snwc{NK&wwMJ&j>zw^ z!^&&D64_C5Yz?9@Hky#Bv9*vVHAetB^fx|iC+5TVG>Zt^T$HWvl0~6h*ZbU73)=qs z0q1`Zz>WsP@U|QRdMi(1QsE?@TOI{fXh)y}1ueYu?hh298`kypZM87p2{jU?XZ9S7 z+ZV>|6l$K=yW~VEbgvj-BY`5Z7;HP4C2Fg$?a7{Mo=O~7Kn2Edm?TI#fp#TN`U$u3 zQYok}+8BWpDQG$c2wU1s;>hiZC5X`~G#g|8c%>lfc^fRx7_I!CdmsS(J2T2o^9?zI z)$aFoY;w3fqcl2==48O3f>0ixzssxhPi+(I(|^#?Jw?4PLZhEZWMP!k>Od7zRyL#Ag^FW_6(D^aLf)L;r zIvgs`u8F_vr&5g5WF9s1MoooU+uFa)&MIDU<|1zw^{y&+jk7xRc5;a{3%v1PGwDiv z?U%)<7f_szu}~9Im_%)*rwwwUia)X*Xd~~_1c55WLLe$~d^!vr*$VF+8&fALCoyx0 zrd)eLAC6-B@d17Q6PNomYe}O#hT6ryQ$B29ZJhgIxmN3!Q`Y}?{~PJg|MY5g$cZ%R z`Ye+rMB@gqjmD*}+7iqx%~z!z9X{HX5gnL1a49TNIJ7baIy_f}ALJQIQlZg>ptKWi zaN;aC+e7D8J{-5?Gu>L7yq}sQ%R%BMV9^^KOx4I{-0mk1@6S%3)|kc!8%nIo(3z6t zxZZ$q4fM<;M;kjhOqc+0q&jl9uLs##i3_CR#9e{XE1CHb0J&`YNa#{BeLeWbd+|lV zV9HWjkx?n4I*CK4ag=_?9t2r@7SLwYQ4{F_+wBD(SS%Co5do_9WVqIBhn3Eu8#X~H z_V+3idnCDhokyNtIX}XN@2F4eO4!`e5=pH+`3P~)Tc~nZCcwzt&mV{-ChhSp$S%f( zy)Uiiy5w$FG9XVeufYTu_j;B)@xL4U4Sds7Oru+rJ=r0@ePJ9s?Oa58IT9$}4JU}% zGX?n!pxBr;p0Yue$>Z^NaG+2*X-ly5Uv)JJRyqjM7mR!X_>yfmXJ^wj+XmN)Mlev) zz%+IjNqVhzdIx<{AL`rEn`K0mAk+Vjw)LGSP_@XDGqTr9*Yany91me&%bd5Dm&xwz zZ_uw~%KcN843VDHnxsM$}&yv!25EyxwIv(HS`jea%=2neuwX+~WT z#(6tK7tjbEQfWm+1rtz6T`1kxp(LxN9lnw+@Nf8VJ%VYtx~ehIZ7zo+E3d^Y;B!X? zSo`Qpl4(^^^|zWEz`F}h)zHw;s&$*AA7_%C-vHTZp?i{u zk9*4~y{&qqH%0|bn@z!m=lN!kXJP|dT9N{~+GR5CL;pS2{x35s`uMz9gC+O=52pbI z&FUTd=uvp2#dhCMw7cC&?+=yoXy}IB;Qahc_OH&)B9jji)BXZ5?Dk6m+%H(ni+{&@ zqQvaRpGt}&Alh%Eh~}f!-u;iLH${R0-U1*ZM+py?@!i6nscQG%p^?Eni5oxCT)&%( z`Ph{{%!zZzTZtf4Q02Cl&Z)6;@S-j=uPT=E3f_79XMDrV+uqq9@J$4i$~cagVp2gB%_RrsCI5uZ53{v|Ski0e$Rz=}79%HwO2 zje&-g{pDH~*$PSdlqPF8OMdimEr}dzDzrHon8iG0cEryL;PS10jx@H{+1LFB;V5US zYh^BQRfNAIr#9*VyE)RW(>Or(-kELmg%#X0HKy+bb4F7F@>l6giQM|ualf^+broZP zNVk{q>JNm4EpKek-df}tGEWzNWLt6#ZfHPZ z@dms<%Ed_au@k{_hq)k`+8P+1F)Or3T|*(lST$x4tUmd^-8KK?2KpiIGGDJJOP;5?Dr&5z31+#G%pQBF@$ZsdOV zO2IGFJ#``pzms{lYhhk(t&d3oz#KVK6y0wB@Q(32q?w9Tr+K%+^lE^-MC{w}j1gO`J zG8q|}fd9X3!SCW>g@x2swgHpQ2IDC)F@T^xr}ntK#glAAj|T|!DxfuM?K-$jW?!LG za^lA9u?>O|x5$mD`H-)#Z-+FoSBQtwmEUPoswVzj`dGH{-v40%9Z-d$sFKonBA<`4 zGH^g*SE%VU?6`xN=T^l~d)&zK?3rX8sG8Ia-h5sAT_9`huyyy>uSE9xUBt9Ue)qcs zddI6BE_gCgag(a0ow>pRu#`<{Hn zVF<x#Ue^!7+&JJGq>-iq$YqR_=+Om6jc7{G* zmtD138sE_1RBwBy3r*I|^Um{a6MW675`g6*LkIK$u^_o61izs2V|_qVagd=dVn@Li z!uD7OYwHMVmhb&^kUPjDk^<`n1d-d7law6Z=x89UdQL6t&NjO@Dp=PTKZ&uP>HPT@|Q2@)E$zmH0x(|B`qCBW8Z$?ab>q)dDO3 z?a}NMIN%U$H&0T2+F@i9M;@Su1#vT*aF+X%&EK(32g^#Ot=L5U#o7!W#G(y<4%AZ} z9RibOa4PY^OnJh_Z>i(6=??73G5BG%lxrY9^9yOhSO!PPp(+wReVK2jRdUI0Dgt?HIoY!1hYv#*FbFzM zGbWyZ@G$>{15+m_bcYfd%zyW3EE0+b2N5$s08oM=^lcAl@Ka;w&-S0lDe5#IU&5RekXsO!EQqEgNR`#G0z)QPgp=LVMjW{f|9Z!kXE`7obpib zZo8I(wRH&APe6|LR&14fVK$8Pss2{ww^-)otzALS3t-KFWA>Cg|HSXGYTR*(jM#Of z+h~qL=O&csd;vZL0iZs6a(gGoaS5QU@BY3n+rvR%-r@2X0;+L0_Qm=At>S-SiZVh? zUuu9p5vn=O6APfQ!USwyKge1FmB>Tv(bc4PuK&1|90H{L6W$c%^H}N0ZXlsR%8Vg7+M9gO2WUQvIcLPYY^lc zr4h%w1gqTXG=;r0<Mr&$cxIDSM*js;8Iy56{@Hv4yR}?y3wiwbR|aS> z)CFkp&{|k7v!OGMoE{+;GL2;r0P6~2wL51B(*lsP_21f!YrVRWkLxrXa2iHs*q4o0CZ|+2Krovm9 z!Q)|w&#Xp(2(qwbbb2Mb)E3 zK5r85fqMb)uvEsH)6kzJ0b4RzWz-{D7t5+;Z5vRd+YCWfVb?$b^W4JHQV3>^v%C9; zBe}&xlXN}YxIiez<1RRix=YM6C4iQ>ZFOv~P9Ppr+}~3nl^Gg~R;d0}G_%W* zpgb-X_wN~{sPB5eF6g#EQEMe+(Tp8?e0(^2I511B5@vXdqykW&z>aJdy+70T)M`Ic zlCup}@R>CtmmZZsWtLE4-!lN7tU$%~<$2i9+I$7aFR9)tj{MXg>d=v)KpGYZH$$77 z`K~>UPceVw2!{upwNXV60_C75JVQhsS;Tu;5s>2_w0t{A5_m5J4p6dq?|U*f z&knlh&uK1eXc-id%Mo^&k9XK?v9s!ZA@KTJMexO3N6G$`?13`sHBh5MoE}|wHg$mQ z5T|6exxRiqB&I@ij+P(aB$q^|`CTSw5DBB*Fvnk@(AfZxj`KN0yp7&z7B`ZpdF8Fo zDR;sDz{SuY2*^%bNFcV`ppLi&VUvBaBgGAVW9^(x@!AAhT0}o`xp121GQDMO@wV8ZG;)HJ^{VM%uqF^xjX+Tq8kc z-4`X{k(3;}Y@clB?LKFv-BF52J=?NWwU^0)Q>aOnYN%be+gEV-JF8M4ej^2iO@<`_ zbH>|oAwCV%)!i&k>mhi>98ro##B1@T_?ilo;b$hM$dS1I$wEo!E(oeBaJM%%ZqA=s zP)EKq*=0BY3UdG2_~vZG7wetdeqc@D#-(*Lr7;CWDiay|G?0MyLS(f@k6&}K&Y%Gk z+?ST6AHIn)J)S+$cKX;V$Zd~nC7RhqgE0AvFU!dYJilo&?&!Z_;HwX(GT{v`W@4hh z3gfsvCI@}3`+-fsj8+ViU#MbSD@j*X>W#%GgY0J6olMQ57lLy!7iiH;?>f5t?q6rb zMCwA)=?q-CW|w!W8C z23&IzwXv0XB5UdzTdAYdo<)% zJ!MVoLqkza|EZRVZxMc0X%ni8ZYfR1lK*d;r&7kDqN{3Lmv+f0P(P|A7IQ9A8*q9G zzE!EPk><5uMJ^pp-);oQLjx(2^QrT}G##`8zQonV!(;CVa3(VCmj?@XzsAPUK-sh} zGBMNkegTJ&F^h2~5ZZpuA&vP4m8nGk=qaRPQQz?f9OP8Ji6kBAZYJh$UQU%B*G})- zm)@@Xpq}q!3j~RKI-XKrr+{SKOggTuOJI`}oG$|?62a-vDRc=~rtDiilI3_4u%;i$f)`fwUuWN$G2 z1^S6o`ND5H+AXTh0|FeNi&0D;*E*H22p3~!7V$aq#5PWLYqG+WyWTkJ0vH=H$T#f5 zksll^d)lGckxKCB7#QLl8&*od6<5Ic6VZ9<>?)h`q30Qv}tAp5I7Qhp)nU7r9)=tLO{z+Rnkx*;J<54Wjig zEMzXB6E9+c641WQ_h|JWk8xvjg zmmPuX;D_yLc8ZHf3SCm3FRy%~<|S$ghxdc@85~V`BVWlSpN%0bl7k6GE-~NQyM^_A zW$K4Zz+0FCxmcEOEQ9F=yi_kKnwW-8@_!#J4g7GDKj=T(*xQQEV3pi5IZR{qUPrr?n@$wC?g)izx^DCgI8cl|9hs<__ml%Cb-E52(kOO@0iuO_2@ z6E+B44gA1t;h0|i>3wPM^Aw?v+MhHwz1KH`R;(zeFwS5A5BmK3kh;w?<$HY$q*sxCH&WlHSC==s4f&E#6*TU-86i8Es zR!L5ts5pxhJ&1{`1DH5E4f1DrFe?90P?ae~U=!Z-sg`lmB_ka=EQ9;e0u~^jdlU)e zqJdbaYfiePn=y};C-l;l+hpJvS$wsAv^BQEq{)*LB}z?;5@baU(POeM0Nu6f_@4po6yv=wY5!5=qJvJMrQ*6B__7jTDOQEN3yfRr=LVVNI3w9r$tII z`Gv71qX>ye&lOw)+p#9>OtaEa%X-y}miFTyF^yOBHlvEbcFnbGq#k%&T#oAy->2&C zYt3Ek+;ebmoPp*EP7Jwjo%_p!ex$i11%wMFVc=EgY&K|frt8oU04zem-FBY@6DKF< z3nr&DUs*2lR6@1eo>43PL6Nu7sUv*s#GhBrxFor(JOkuyB>F;81eD~VZV*vF-vpwG zyg+^SSW-dk@_5SmS?3$m34eDiiiNoA(_lS%kHdMSa2Xi^pMR`HGu~P}y(+ku&+trM z2cl(?5znWaoxu4qT>9=z75YZJ3cubkV;rrkta~2WVq$;f1@soQ=3FYQBYlr=hA?0J1iP z`>v{p&cE7a=`&#>8}(3j%JZ0A{nPq65a@YzL6Tr&YdaP}>-3+a)F}%B;I!Y*M-}Sj z5W?tOAvai^V{acH#_L+*|HA^dfL_7#VxQ?R7ccL2CcMtW)7MkbZNDEjH#T37r3HAE zrsD;~5(uDZsTX!Y0!QN&bDQ=4Vl&IV=;NiFouFdch+6t)K@h7dv~IjfK;jnam-_ov zK6(k5SsewL9Oby=)04i z3L=b=yW2XP!hl-37@Xue^pqX&N+yisn0SbK`}%MP%7KWk z)&Eh*AbJYIPP_jCa(Dj>7TbMkcqK-+!`Xr!EucSny|Sm6D@34?F#0MqKakP0e?n0g zyfQ$2&KCr9DzuHqZ64aRKve+sC$r?s>({?xJ@teK|U^8HYJzeu#uYIy8>`jwG zh7qBIlsB_1+1vd)nVflV<*>LG@Dv^sAr_0VMN41f`S)$J@rF)?G(V2RS`ax~| z-{D*gn}zLMB|^LMC~x~|ooX?n?1sDx6d!vDG^j#<;_g)YfV1m2awxj^u!JW#*GEes z=a2W-;t|Tp5(y6t(;Ir`?-kLlgc}!xK?0AJXi0&alM~9UC>U4^ycR!uBD7<_lGOZ) z|5-pX99^Y5faQH<=*QoUs$9c%m~kT{Y-m|xI-4&^ND5us)Id!wDaC5QKyhnFo7vIO zalyp-&+(2wc_ADRlFL0Vcp%;!O`{616ws4h$o7R)k!(yoaut;o*l;NA0ZwjigL73{w=R_Y_GINX)zzFn|2|GW(~dUn z(?NhPYaMLQ(!g>it&RVruLHk{0tX&DSo5)AVNfP9LY&n-4j!yKy=ur~mQdeU(gIsq zYrqjqtzj#nqpaL>SfKvh8yHFl%H=ly43?x)Sm^wvEnff{2Ra)g0(`rj=`qm;--K9i z!gI+4`M#Q7FVW|GauLAYq5JRq6^u(2_KN%?_!OlQla`ZvX}mNDR<(?uSI1s38M# zl{~eK51sUNY?dRKkKy)x;RoeY(BP2OU{m;5M0^+rLC6JF)hdYC2udB4_nOSqwqINtNo*ibQ`)Af*}MKmx^@u+Bb^9nyK$kn->R^3KCaELc#k z95yVPJK(PRRstQxTTscei?M%ZED9`zF0aA0P(VZmUg!;Bl)DbOL@F4)UMynH7oY~w zOu@6Ae&ZBOCHEepch2v3nV`>ik{PBwh)MzW@N&P`4_{h{m=pxWAH^?ETzFMEp6>en zZ?tyY8xoo9M_!RlDU~t5OKy>X{6d+8V|%Re@$%}stxBnV$3MEacYKYfeB#e3k53uh z$UlmN!3}A@Bx!rKPH4rBO%45FkuP8xPv~~&nS4gtGw>_Sb>4WM87Fe{f%L(8-~w$l zA4z1XPrM0s?K}*rOEo&(`|#my>d(E4_=Y>X=7rq zhy?u)v564w>0bIU34109v2|-NG|@GS55q4l`a{K&(T)6O`uwl=Vp3Y#1A2#i?{X#u z&)@@*I;4)OcZkzM6LG$CAXO_c*%`Z*@mP=2B8;qs7(XFmz7NY4is-G4JgA=)QrJoK z6B4CjFa7{}l9Wj?*~AN*gkAH-7F$rc@R~Zvz&{oJ*J9ge0eGuB_*Y-Cz9er$5u=LP9qDrl(38U65JH!R?k(p|T~K z#@nRFPi+t0=jtlYHF#pegF^##ufSwR4LumQ%OzOaM-T1g(Wlw4Y>R%iFM=KNgCD`C zk-hef2+!=75q(T3dSOXSextsm?6ME_Sie{3r*S9TOTW4ae#+I69GypJCl8=Ky`-RO zWd8R$Z=+sSi#6qy125=%gZmX8n_E%DV?jG&o)c*8(?~pfx{o?5( zt{y#Ponhlon`9g4c)lN^YG^GMTtYg4a4&)WJv}|sv?sma#q5iz;nMr`v7M_7lcT2_ zD7)4icSQ@Y*-{k{)hoUOs)CK&l|#SB4ZXy~pQUgohCCllTy%j1hFmJ&M~RGIht@AL zZf%_hW36?RfdDU*IPoJ>0PL7)2dAJ0kaWqDnCx1Th7_PNds*dZ1NH(DHm5XBy)LmA zHqV8KmDl6S+qP!WU1A+6i3KI$yx2UA^uUaaG3!@8XhePqq7qYT$iI zeQ|JD^h94d_7`DXQpNwpEBXa9%Bho&iD`m@!90+i_aKSzzl$sK7AivdGALqEgHAm+ z^N>n!@2SUcsRwiuBb8tLMr&msmmAk5RA=sfnMEOrQ0Z*wB;qaquAt&$K{#w|=zM(Y zb9#O*TTEe7#(+va>-Uo6K!A`ef==?} z1#$9{ui0d|-c*~vFvlq$nYnt%4BKe%vqFW(X?p9|9H~-!D0N4Y7+R~xKqogUy?cq?K={&Gcbw!Gh5)OqAw;ark>J>c*k?0 zV_Ar*qPMD>YBsgzUiHU@)zsWiCPQ9I4Th~hgL`&Yt=)IlM0_mR`Gh0OMgOA;N!>sU zgXS&>Vj%ZOjd)$HR*q^Yy&k)ELqMu3(eiY@wuWUml=#EMS;@vpItDKRJChq z@Fo7exqK4K-J_viuFD%wpG~}7NUnp-#`o?yEcmuky9ANZJz@ArY_Th`rb;awR+cvM zBoU>Npw#d^ukEBwhtGL-KJP;!2@q>1&OStCm4Y4QY3>7!w(CI_=MGPTM@gRqXE#yp zHy0O?T~%bc8Q8VUF`ho_*i6J#h9P>ekAf$16;4 zol*CfxqB{g*F?x2HobcK0?hZm^=Aw!EDaUZMd!Qgc8A!+RJnYzG7$438KD;Kt?3w(dEXW3V^{`Ibmh@6M+ZCB*Ks<|O|2pNTdxc=$~)fj#A!82@X;==Wg z9e~$#hFLbQK&hZ{a94V}d-mtVw2g$aFxzjX>WP0+=6_DHab@7S@G$j(um>RQGXO?@!Q5!uPd>8KA^t>G+{9wm*TY##`bmDY9z1DFCZ;o-}mn3`LC9uX1E=zl{CD)fEpP%|p=BZ-mD#h7oAJ$RsF(40?Y z?46Jq|3=_=_bj*vkOIl9ZIjv(q%G_Bt&p?n=Rlq-rq)^b<*hats7?ii)Sw^T6T> z)JTX~<7ovy+`g$D`pF+;Hcz(re6RhfJl)pkNQ=FH+wbgx7=@NY4+62N8(`n^p}Km} zT^U0|U_1t?+L5_^cqs;iEBzuVuw1LT6$iTc;FT{g=#dFduURPG>fZZrxI&9Mfoffb zefBMXrtXU!+n6mRiedbQ?RE=WBmBH8vF-Gd@}`9Qnsh+7XME=P#W zeHZ8KO|@e7%|iS<+$5&@LWPi5L>NM%8o%(i9}*gGQO46sB996P0Lnf08zVQWnJB^! zy?dwL$q4;1-nIz7YlMq}_uor|S%qLk!Y@WORRpbg_-Pm@m0U|8qweOJz|u>Eu|F)% zU4-<;4g4FAWF$3%sEKl=8?66|Q(egp(vmsCTrg}=ICTIy95CP2%|W@%w-urkBHClg zdFf4#1ap{aJ_8eMS-Xm zpW%VZ5Cy|tG!*y5=XwW+%UF;|rQj+sJ+6+%WvPRAYtFQLVeAJ-?!D<^ahE9z%4xr_ z`mGX$3@lL1nApv7>eXDgqi7AVdpu1+g%w**6~-l<^WGto_OGPZIMcvcPsAxits0rzAyY(H1Z;O|M08=Ojyub;qYm~;GTcA616Fp zAw%<>2HNWb&@Z@vx{N9#&rw;LxTR_DVISwe{~aNfj=nwxH|aXRUaORQ-yTe_D4`d{ zZiwRw3v8J!bFum8+%-U9-yCZ}r`)1S0Giw(6(6A+*?UQdLy*dP9aV*ymXsJzM1L3( zloU!NP(Cx{cK1m!HUiBRRI~L*1zP)c@P{(I2_{wXM#0wK z8To^+M~TLo`p?=+J4v)Q(|Diw#I|sTX;ZzrOBrk%$rahSI1D)*5qLB!ynVBhJDV2uG;FJ5&JEMvK001`b0G1ZrDB04(X z11F;fu=rM+JiawsSZBSW63z!PRdVuf1k7x%gW~^HinOR#szJ}`El1vD`wLNtHT?OL zQtSMU-Q!N72AX+_*<{ZIw&j41Tz7GWTD{~Gh&htK4?^kNqXi=-0IqrZgjA#J$B(F( zq;wWEK_)30jB=wE+_}s4gSzUV2c73UUKs@lIp#p<6pa7#Z6kH({s6yHyhT0lx2W3& z`9Z;)vg(DbL6bWs{PSm<744cyO8?FXpd7U=uJdqyT6`dct5G052g}uPC`^NigO+Y~ z&CXJRHVvIE{bcJ$DA<8bK&DA6`vKCkRX;G2p+LNnf^7n-&HduwoE#eHj|m;z>_&5u znqB%*IKGSbGRD}u9!NOS48IZmJ94hBW!e#hBnV8gZ$BGaD0=j)-o6*kJpgAAbE9^{xkW z!QN|$B+(2y!C6^XhmRf@_KW%+My|?Fj=A5UXPNDjgOv32i|>+~Cth*-uuWRg)=N(0>_1c&`Z&L~)|b|ojiRUU z-<%d+g|LjExVXoW9_wmG_wW^xm~qyyBZ5+l+MZ)hXDj3ZR|<*S1`GyCGa~VW=+iEF zjc;G{zz5No#@Sd+tKtiibX<|&QdC4s*MWWUbUXqAz~e#dlhW@kW*t{2h%CX{|DTTW zqav-R*JQ1o4x?f+jAV^^UVrC4vaNz3OU>Ez^!d(g`L#J4{4C0EiiE9CWhgVYW?!F3 zTzT~eQcz(N$fw>NBu3chDSxF1Ih^x+OH&NSWQ=sWQ4qG#OWXcO9L0D-ic6hddgp~v zxa%S}{k-G@ZXiY~ec3h6cPKxUXtQ}T)E19(Jyi4pQGC+cqxL#YmBE-CQYPGA7rX{8P}AU7JH zr$2OKhGVqXft~~OGU(^Ah!5l8zLoU)0F$X>2C;>I3z)L{JZYG=qX?)*1t61j^o&#e zUgR&&QVJrSxgTqv4J=6iyS8)DQTt8`77wiZFK+LioO}<}D=SGC3*`?7pS`B`yM@KA z=yh|eg@svpL0dP-Xc*f|oedW^fgQ_0Rm?T;QsY{6^!^Bh;a0)L*G78V1(ZLI zzgpa$kl%S{j77?&6*=g+HPu~APswyjm^t4z;B&cUBh;APrd4XXRAgdN| zIaP8E3tH5$JdZVR@GKtE;|%s z7neWrct3tupcMBe)c?L61m+H96_p>p^ju%#Yq5gc320?$9hjIb4fixGO;d!v%#{w- zs$ra-U(eZ|=n$V;e;7`FA>Zb6z}$OH2&s><;7SI?#&Mt)&cP9)8pEYl%$iESJE9Hq z%au9}^?y~k6RLFyGMhCU`D^k5``WR-H!K{kWJ50&m!tDtv!mDUy=AcFe@9?#^YCD` zqv5Q8$6F&1_ii))Z%?%7RrwO6ZIo|XAO$Q=e5IgF+Jpci6x*#-^afYhrdjyJEG^tS z-$78L05li8iw|&0Z|g^fbh#9$i1&&G#Ep+L`#LY1cRv}m6XzEfTRoT1&q3;j3}wTm zf$TVvwvW`VI6O9|nlp_qWXCz}Y6)T1v?e7QrG9=s=9|;o4W4^KaR7L;02L6Npqz$H z#9-kwCr&B*CY82xDR`Iu0`(&BqRUGwH#N{;Pea45lhws+CkFTLf(&*fF`LHj+uBY3 z#Zyp<(U$T3r_jgfp+|O~C-d+9n&`ST_-aR5xWHjVn_R@_#(CUk>@bROuFonnt9BiR z7AEPKm2&8oPmRl4-5QblP5yie#boYqQp3!A$AhN|sbh&hfoDVpLD0+YGM}KH!RLPS zltkYAyRAlc^MD~OOQxq<;4=rj&p05qxy0bck&jFrea)C313 z0gxdMf*oxJ80kx$DVeJ zo(&A$lFuYt0TC(ppF2XgVeDXE`4Xv?Wx%+Rv}JB=x%NWgSM#?^4URb__=Ys z_sDWOZ}|Qr4LA4gA2hA!II?ZXFB;#J#ZYJu8^>M>+Y4qr3{VX;6x@w=e;g0N+Fp2X z$n~-l=K8>n>SBaw^lwmomZF4?I})H|8X8iJnB*5WIkZ^H-Y@}m`7=B`OevoR_I%C-0Im$!8#2=hI!SwLd1JfY`BdJ3+5S zdPTqyI zR`4Cgb1Obo0GS`_qFQdQuU&P6jR_^9{>PAzNK1s66KT-;nF2GU*v8>UwXB<9rj}3{ zPc5chkrO*wxyA#POg?)Lzr`NRBG#^|eJYi<5UMSz(4(X&LEbc=??jtJSzV5ruhMDv z*7v8R;%pF6!8j7YDx;x6xXGFN@qaG{0n)UP^0$L< zxz4;szt_#5Rat-5P>qSC48B$JO@DJq^H-ls@?=#~2Q+csrjR#|=Fj57d@fr~vG;dm zZg=k*lc)eyAz7k1P6nz$0Ca!->;P_bkyNw(Nxu$fRL$L$e&hJ}~i{;(=ZgvPl0f<3B5OGoWGi~`DjGMQP#qgV`#9%3n!NRQez-zHyM(gL%Oc-$VkM7J4&BMOUMoXCSff4YAl==%P-9oadaMQKCLT@1?Ss@kp&Zcw zT(5ekEK&kqQI1$^G45F^w|Z$g^W!M&+xM%uADz8n0-!YPib#;5YcVH#1JqcF z)!}RumBG0=8o)0h=^fo{${hedb+%W-+r+out34y5HJV5>=6_clH&cATJI93#S>KL) z=aNTkUt+PPeo2~T^P?DpteT%%#5)M;81vovP6J>tUc^d#WcRkAN7(S{d10L{17Vh< z)s{-htm+|LkN%w%uv=zSYjU@FbF@SCdVYKR)A|(GOF{~}RBQ4cuhf+g#x5D?2l3yH z7cMrrJJY}}5(ZLqxm)fK7gt}bOgIg>E015px?12sJ!xVlU(w><2{2|Hh>6V202ep3K{Xr_Z_UEjXRHlwVW zIHjicn`E=y8hMFp_&Y2TgXr{d;eLIQAH3(0Zm1TWbWpVkRh!UXH^X&Jr;|7a|Hj$o zgTCnRgD2>{1Usw>-5=NQ<(|^qnugi~wXt+|EAaX<0@^p1l5ck3q`~QjpUHs-{1<6g zXT0BpPzXw36VQT9cjH?(EJJ-@1A0>dT=`A7JCOq(?D-Zi7FqSGP@8bpUk*LI_pU7` zumC&+_6x#b9Roqr&BLDxvBu(lp~5;l8X6p(v)`x$e&U*5cE!#Z19IOP4wu87S&Aja zau``5&^>MbF{ij~u-kB%qdS``y4C-LNjiA(jIE!}!gOz2WX1b)MtpOVE63XDv5cXplaYRtS{1W*-g-uW5HE>H4IO5Jf zZx(F#>Qwg}}Y4>&pJmbF-C6^iQG*Q*U5%L*%8e{yt8q|Bww43iL!ssgbOTvX< z;_~abIA4mYyo7U;H={R)QW?mM^HF{X()}Bm;-jGUku|*EFv<*9ea#!YQIt#P}drYZZ zh67@g+3iB6(>)2hhmohR9sE1ow|0@<6uYAI-6kNQkLP^xw5rTrHcpLYOaURvKEziV zEY)okk|jKh>;PfCcb!Tmsz(~y;4zH){`s<7fIZ(v=Unb|{n+pZqHBM-GUIAq?xnLf52~@iy zRgsZIFbEyvD_+GrH=H0|bD@7jJz`kQ^Wh@V<#~)tqBbBGRs)=hD8_{>n$kBZsqT4(WQ zRsu+z8yXwj)VpLbd2Nq*hIB>ILRpT`**yJTt%XZ5-P-qXh`Ohxn5Qz5Iz!be1D_>T z9~l>!wPd^$FQh5=r87x4_$uW*+Mb40{e6S&LRT21^Vmq}RKccC(%#va5$o4{PHl3J zI&!r=%w6dpcL09`+^903g4}~i7UrcET_U6;eWe`uKc`l|J{b`sbR0sZx|(GM9dWIl;MPkijXZAx{#EewCRl`JFqi zLif6U{-og0E}yR`1jY)AgOh6EMm=J6KGTA8j(0oOHIK4fj@uw@C@1*YW17z2uZ0!% zl-<;yOK3a|`S((nVgiMe3VarzOpLH%b&DxXZ*#pDu0nyjFI?7$PrEn2BCS$s^?QRy zo9zYBZDy(CmLH=Y&Md^(^JUskcwa`fYcVYE9cm?gE%kG&MDVLV+W#PgNa3aD7CoRn z{IM*Pmx$K&4Tr5WsYDrJv{j>7u;ok%C13?EcJ94%3LMSch}*N?ij&gL_bd@3YpA(0 z5PZ5HO_3LOEc@b-jI$}LY}cO;WeVY{CLDfI(r)Qby3;kq6VMkbZw`!lTeLq%F;#;P z1NrDDu#4ul-6kO1AL9S4n)#xRs<{A!(x8!LOnbq|$(cl_GJP1#h1j{RlD$>? zZwGLfFjrdYT{GySO|LG_c=-8?%9)ejtEb-eq1vY6x1?h-67h|)#VIv8ZnAkhUT&qJ zm0vz|uMv%Xf;B>t=x=A=6voG5CZ*I|fZ4Rz@#dp&C_1`!;{Ou6XZ58|#q8&TNy}Sn zQjg6^G|{rm^z>ZNW#p#4<3n5aN*y~VU0nYeX4&??OOOUtF^vnyQYp#x#?LiVf0sTh zytb*IFZ>9G=Pu?~j;PuLP%OSE4g7NU%KwDODMZOuxcb(ATmQRb?-i9mXIEgec|>=> zU9($NWnNAbZ9U1-EK=o+5C?@z;OycO92$xe*vlI5@*ot$|sk)yD@H>+`9( zSU7FFc#>F%{Zue=D=U+6b99k*MN_N)KKyW=ChdV zt{;<^`_iboOYr1Wwd^x{k}I4*Qq#Y~%!(_730+r~SjE*{3}2NW*+iM2Tu09(57^2R z-4XyM3~N$VTKIQ!$=-ep-35)GZnNjzCa*uQ;6H2zF+uh&)O)`Q-Y>%%gXj6FGc`Ci zU(($P!~RdsQ-BJ?`(UUvKK#5HC@#J=+la<+^QdP6lfn7mJjGdk@Awjl<$G(#XqRO+I)LS030z43PSwvn2ZYXK?FT9EcF}MQg}T{ z@+U4Er>1Y#;SnK}L8=its5AX0l^RQl8ue}`ZR8IF?mVsAMy;O77P3=sX!??^Q!!uk zPz4AHP?F&2_`TzV0t6MK=PUDJh%00Y&=wIjrmFL7{c6>J)Wx2i!kj(DSj9}G(RE7m zUD}q2#L{N0L>f=xqPa`CqFwjiUM8b(q}7^9|kun`(>c#>a(_qG>S%_h)ZBv14^pX?aEq0ysz z4}Of3o!Q?$rPo4&Z2zu*_{t?F@D(!o*qR-3DO#bP*`s}LB+?CHSsuteX{q-gv@|6U z54;QyE#nsP4+tyrO`d%B^8;J>tIWPDJilYA5H8X4Ji`)d)+cTE;$DxjBj}MV^Q)T? zBQz8GuhuOk*7%pB@gx0FrS#Q70em**6&UzRc8v>M-p|T)MaXJOVpks_?wBRy;QIvl z1Kmt#-wi*y5^;ENXjbA*^XI##F}`a|#D221ve9(}VHt>&4un1oJ~xOXsb*v(LnThW z`-e}pZbnaH^8M02t=;g4KN7ihO{CFj9MQaP^11FLwSHMpI_AO${2ZS`FO2=5=qM>B z8kTD8vJJjR>?H?egM%*KvcKqk8ltxSeoAP6HDINeLfu~-!Mk-U#>4@p2Q=l%WLSNc zM5$;=i4QoB@|#}0dv|-Egmvf&PbsA$Xg{Si&o)+wRqX=?UInX-AOpP&vXgOH zg;%W$zIr5zLLUC8G%^eoMK)!^!(kwP7kSBQt+Vwfz+EtlU(vjR-20G=krM!z%{F<& zOjx9BH-r92u9T*T_pEL1qa)fgxS$a)JK|KY!;DX{1qki#)#YFOX0E4o82asFd6w7J z(>PTqRGjv6%{W5GcIf6r=7PZ8!!>(SoWb~r&>qx=6`Y`68v1m2aR7=&-Qo`t(0e{Z zYs1G)V0+EK_My>OJkS*G3*X;zw3JFO6G|;?THRJvB4I&ezP6{jEK>DStv5J!}Tzy{m2XHYxqW|Ek*Om***Lpq)!JCuouk@_haB zNozdg1L=cjDxW{OmCRp!i!#Jd;K&C-nVfAt6sw&O%^pv0$)0>!L&T^-ReHy``MD8O zFxbi@e@J$t(H~|7DH~&~ks^>gi?Gp``o^NROnenc62b& zdG+GAo{97{ZKws4N7L4mBv<~*WtSzu#rZiQy%W;7yZN2_n2uuMRiP;@GAtaW ziZBJbw0=O^U7xWXw z?B^XzQTPgasF6Qrr>J7S2Mw`8aI^IeABcHx>d*i6a^kVl6{nnPW|-nPAf|ZpOt9m{v?DKDeTG~@m1}{88@1~x^d%c?QX6v7HuG$?l{WLDuJ9kwRa>V{O z#E?M>25qYIdv|iZH&Tu2RoXtoNj&w+(a&WWRuY4zH+>O}nd{03l15A2=4@t(-|oER zN9(WfR|AA zNp>&9aGb85crB%10gI~m zfkhuam{q%BmA^Dp5uh%$BL*`|g2Q%i$y$eyW8S4*Aniu?JhJbecrb>K3ed{pt|mD@%E&)-K5P+dv0j6z1yhXjc6S zzGAMNNOlj7>Om|alSEviCTz zqI?GaUw4U$nQgGU_9aG$CB4n^N4T`DQc;bwL-dzr+-Jx}a$LtR&JNr-|5HpkAVbRm z4xV{OsOc7T2^@UuWP;6H{`_UBdSu48Ie~ghVB~W=8_L%PL+SW3tQSfa=1z~Dyc_(S zAFPiR{nmw{20-M6oE>1+LN4sdiABOre5T6qRr*(pZOknE?6kj2#Ac_vfa}gRJbZ`A zy<B&ipnI><|XX0QFz{V7%uC2Yr-~P;4_9Uw@;}BQcdFIO{5g5S-vRW z`ePV%fBaf-NC4y$pL^%h?Iekx?O0@NeU?r~J*6r>Y9sozczvUu6rG1{H3NI->vLt4_`e)EF#fv`HewiVRyhI^jP1SFg z69g}U*hH)^9BB__3G;()=p7ty&e1F>sy@8&04p4`R>}9+VWxri&ycwL8a}L3UhtOw zC3K}A(O>{sri|>szdv1ywit8w6p@pdj>|S5rf4zvMuiDlVd}+|BaW;|OPAHSB9}Zf zGd|kV)A5;qkjK~B7$P@_ zLCkz}4_c1zR}y)L=`4?_+xEBC8Q>a(#(Z&O`Cz66dLo3;4t`SWqz*7G>;ZuY@(A(= zb6@fB-~VcLGWJ~@!=gVU!*0}#@GK(m`bus4XigIn2}b`(P9+{-u<9$$wFQ)As6j;K*HQ4YHQIySEo!5DKTX z8gK1#6|U-ixnhfip^#p%oiBog6(6}1bJVj10E>Gsq}kE_l*H}te&)%Si063e_DnTs zChP0^518;Sx)WoQ*rpx&K&SlXeU7ky*6+w@(3o|6I^!5CdHnw2NA7(8N5XWu!l)L^ zO;YnP^+kAoAD4KJ-+?WC@;H5d+zmaY?>5>==+BEaq&(Nh&;V-uDV|Pxe(kNO@s5ZD zCGnB~uqiTHZWV(VidMF%(i{;65-4>~9Pyq?P%^85`qbzWQdtDGQQ5p-*I9S{U^=jJ zE{|C}jAEdDq18==Q7r;$8(@~Ci6GN z6MjI9V8nnBG&Wm8tPY>~-hO?XDG^17eDrj(bH4vFfvuUJ#$8^!1#~<;FeWCGz8`Ja z4Q)M1j~l#1xnw&~j!dkhMTh8=h*M`|!Q)q#l{o)~ha7!y3aLe%zlOy|3sau=-?OzV zks$M+{k^&w^ILx6fsR=##VJao&ym1zc0R>~!fyis^nwCwTP>PrECofSq`;Bq(XY+R`C_~)-rfcuQ zp8Y1|UM)8MTmJ-Nw15}`h9P*wV7!Wi7kB|AIj5kM(I|Qpg+z3|F_Le#u3WR)A5L&T zJa;wHkyV#o{Cy%g83LC|9_P3kq2d$VbPrGj=2wFa0CrAgd7imzMuzCfi<4*ko1{u$ zyv2;CQB-VfLOquEUY#^#m+NM}`*4z9av=0@{r>*P83WiiAT)v62y`Opk1fZRxIoi_*Dx_Vrz$pT(CHG}vZ+hL`-uSQCT+3VLp(b1CyquSk5B zTza5GfpWY)jt=XbPDtzcv7I1r{<2gIoY7hqMaKV*T>Me2VDG&NajiKN!Mec9eSYEQ z$AFng%+$BGq;&Aw|MUyjT@Cl>HRM}FGrq;36!*poXba%s(%aDdV=E1+3neEW0pXJ-!&G=G}$&OFm? z`MJ&QpY1e=We6ZHBqNGsJw+{ARZmP3wpmJlmgQs?_!6%hBf?s%jo{gQl#}rJYin~B zC|j9U|KKEtHG%H$_2SD{QCW=#^lqv4B4tiHbAqon7hgA{4^s*cl7l~~|6gm_B^QMI zSM8$aji4v1eQcrjThxFH9~*^sUT9hHYK`2DXvG6dRI?Z9ggv*vxOl&ShK^dirT5DK zsGVGtBjLN82c=AA9)f@N=wDD%I)jARQ)tlo(OnW=h!(-e5C_ZE{ad$v*$@j|MQzSk zRR?lryMo~fQ8l}6;S;@AnJZX_ z4&96W^+9#A0qW7(*HEwIu#b*#dBg|KLVFwLuJ>mE&?a6q8Oi_}f#0Ma$T|zD{ha)_ zxYc;X$BG_D#Qm8wy>_gvOXCZA;mTiBb zZpM(V&y02nZ{kDXCq^b#2|*Al=ji#`$vc3A3Icm3*L9%9dk-0A#hv|0B~n_*PelDO z0k56*Sn)qkUt|F)F&WNMGe2#}Rp_?}p;1YzKOXMQuAjyA?c0Tf(6i3x#;T5|!B1g& z(*MTrKF~q#O;$c3Wk$_Uym9sfk=^;+-~Yq2)s?rD?2{+ioIY6Py6r&WTK&EKx^OA7 zUpC1u96Bue6fIjm4K{BEp)}}lUB=-9ccat_scYc^Ng^2JJ|mn>iob%)^`1Vh9+7gr zD}^_CXvRJ7@d#K)`2MH}eJ%Lg7a?#E>RyTSq4lXdX`HTXAGap4f0MnG`sSNrVrEO| zPn499{{qe*6=3mVLKwi5>+6egxxo%zJ_U$T_*(z|{2}i=aUabETv;fj!JO0YV90%o zTVE{;2Ez8c1P|=&NTxogHV? zl=>GYEix3FPzpNVfERaZL0D##ALW5|6#B^oX$zeC8q4`RIVB~}a)XUQ`D-gdQpwG4Ez1%qDpQ?UcZ~NI2JmvF(jEKUOlBzAtoo!&St+8>B{4?`s z%3dv(jYwZ5gckcZJF;Fqq{apVQVQV*oSB;@i4nA-gW=rRvkxntFhyPvY$Qi06WF-ge7Ho#lks4LOq;aL=}8#+R;7R<`@ z0X%!_XFTo$62xkslGEVJA6>AEot|8k?LB-&@=AC)`6Tzi%niA#I7QE#z`Y`x%$llt%aeX90iW01CS>-g|-&q#~4mAH3vqolo0a zGdB|+u~stNvy7TX-|idY6`IZjG>d5;3&TIj0X`ctEGgxnCopw7!GytJtfsL`t4nZ~ z>}{m81qPawtSC8`7q!d`tb>MX~(u9C0^fYU(+)Dzi_Ko&=Sihr2B>xC4u5 zrayUjS(PT@EiOa7iAVhs%8)#e15;j~%mwC3GZIm-$VsP|y+7&Op=HX^Mo$?&jFx~w zEWs$vA83gVZLbJ2I2$=KA2?C>IjD^uAO4j^#~yPE1i{T{;Ul6#r8L}1E-pcEV2^J2 zCg45lEF&XI`+tkf3`EmfS{G&1SQNABvTDh-;%NOyRV0CN3a{U^xBXoCam~`+7b^4c zBWZx1Jv`i)!MbJjxU>1e`>EE@SjA2Xo~<8Mw`+=D6;#rbh_wXvZqK#(M#$bzHJLj` znQHI837qs#7w=*|*d0(Ci1=d~XPcG88R!0@^k}o)cL7v{U zE3Co!n9*^rg>?POy)pE6gu^M*OhW>Sn419By_Y(r3d%f(U00!6{S!vrQ>-~x#T zG>I9wS`qSd===-P_}~Rhqj?QP1;kYbeaeHf;^Jb340g-NnBg~1w#C2x+NoJN2bdD% zOZpGjJANnBveT4gFT1X1i7^(6wEB?`nE;zYFJoiB=Bv1=C?xV>LK<4oLa1-ok28)F zA_Db7Z#L+pI?u{(IT|*Hq6lA`qy6dcE^#?o5e0h)Y8l!4Cv1LXa)o}`j&5f&TG)T? z-vNh2SA-XhskL<^tQ^)4vn*W$8EC(|$4Z=^6C8yb2%Qj{d5V_t=+3!Lka@Dz)ep>UA+KExP-a9Y+(#Wy$b-5>fVhP zuL|Zb4sUOsR-RMzy%7~&b7IK9R1k(b=P<4VO1V&#roW@ZZ*|K=pq9e&RKZ&0LXz#= zTrLu$347kbt^0vi^+w(*{{1nbrz z+5J6p;iK1gCc^LNlv;=Z|j%j%`_8=?Wb7Ga+w*X2BOw)AXNQu{3`ln#8{|L|&a>EZw#L7Q)s0>R!b zfbEpK9%9@4lwPes4rgg7gJ^DM)|rJ=Z*R=EuXebB0LA%mG@$s~JAHZJdIh7j#+MmX z5Mq(AftYchR=$$bV09{|DGM{=16ZcCZ6@09e{CI?*h^6oR_x+kHqm--*w$hB)uDAT zG#W9Tki&!(pxCBFhD`C+i)UA z14?yY(E!9;-ej|3qtdYcR>?$`WIQFOLgD(9z+zk2{t&-z%m3<-_jqR}-vG-?IkoJE z+lpN5^wC#^qIn$hzB#jP-`K{-eku9ML_(ZxjsD%oIL)IqDm2)CM6qV|k3Q$MM(|@9 zRja)b@MS)>|Iu3p)k6o6IzG9k*+9dlE-j&sFZ8@BCKD;YQOC)N8-7IBIRHa{Tp!<8 zYI;}0Qeafj)Mv~?gRZfAOf`WHDEm*zdPzLyzxaL?!KWMYojXU~`tzZo3Qo%Qm*iKk z;vYB}QLl70KB1J?j330ZRbmNwQm!PqLXX(l5kj~!8J=2`>!X)h{KO1a*b6PN%1oB1 zPVQH$e0sZ3G3nkY6BM;QXkIu2`TZu%DlbSE96Qr)+yD1pZ{JD2rJAL8|QhNUHR|)ZhP$S92-#Cja00Gz|*0D{KlQV{uFIizwXwwyV$SLOt z;~d`OIx!AFNk&WK(#cG!cQjZQYzcWjr9rW8r|ja6CPW++(A#%+boS>1dOl9J+I~@K z7-S^y+3e2MV0f^{!Vqed0vYzED~*ZyI-Fj&UqrU!TaVW;G2gu%;q%%mAJIR90{i>b zYe^iP$Rc`}6cV>o9mer_aw%yu!6P@I-`!tUGIETW{G#5jE~*;A+~oe}B@;m5=3OXa z-~Uq7x~ecJ*Qg-mOwtRVylegU4{)vG1zpVI$4mwqOiwoo4Q1_{4ma+)=lr^!i*SBR z6rFeL0oNS(f&bRi>|#HycZ`KmVX)csq$a@X+&3no2H$3N&3A@MR^Fz)Mo@x_P!pMy zK3|qRB6~!(w}L5Y&b_c`W91S>PYk<-&H}s z$=y~52kE`6Wu{m=!oP?=(3uNgvG>&$@Au+Ri+`JiU_se==+jz^3VL8oM@`2OrHIT7 zXfj<9@u8%Q10K@AAH4kl*cCwlb}!@^iHQGIwkpVwrqQxn|NdKm_rn9cJ;)jo6cVHd zDD7L#qdBZ!f$qI&k8F6H`YGdSOf+u9KklRW&UL`=5V^#rL7$LE2XUU71Ln^Jr-bL1 z7M=je_N&|p!OriqB(kac%Nufsw_}-V(rP|cj@@Q+Lo6Q^XJI*L4)cZbt)hEO6Qx>8 z@3;_RZgqtq;;@O<*LFhz&qgWf?~s1U4kwbIXy)1wC=Y!xxXSQ}=6d6L>)`PV@GLuT zeA!H+)xpWaETA1UEzJ~gcpA@tx2WL0=3BMkh=aYo1;LiZ<(OwPjNtG6H#Vf*!S_Bt zWLpbTc*_o6+xr z2-`u%;R{)C_AmB)B{Eia#zsd}TTellL zA2YIfQZGK(edo#&@`ye_Y@$YSkUw?@SrMu))7HlJOGMkas+gFWg=kUeR{fG8F;b#X7kwq@x|`#HvCVJ?H(+zkR)(1+5LukPGX1ZEy|}H z?ji(02datqYqh5~AU0KdS9fkn09c*i5BRhvwqWd#n0^UHF_R!rUgd&_3piGGx|vE; zR1846y$+;J{Lcu7L`6TpwKY`pC{^TkZ(h{u;~euJ`ODUG)eNfCIvg}*-%ClK9$}dNyt-;Kh_WZ1n2!A8|TFpthwX#It^|8D|~>W~@7{r2CNUXT)u_g^F0(rTp$4 zANhIyJCM^WCWVvKvCPoO`-bF|FPq=dzE8ky`SlN|U{D<+SO{g?eA| zm&~8j)6o!xC+WiF zd;1py2;oY^CyocE$?Pirr{|~Y#LEjm3RcN~cwtu>w%}^;By;HCg2KK#1nm|NWC23! z#5}M{i-LhP%b5GOMuXFPuFa>Ywm)$Y+2NRMtY=NF#-l8Cerf^bd87LHO-gyW!bfR0 zAG)nBajnhss)k99s$!SQap8gw6%j5Ut&c&r`hJ1>WGISZrWh{%|Gq3og51z=)}Q({ zbTt?yF=Wy^A~U4b8dYUu^G{%0<$c6{+WLv&+x^Ul2>Gzygm86vM8;*Wwl5;%vJyYu zLk<&3UtfRcL6H{wtI+7Q5o5D21GNTO{C=b_GkCC??d!}>)AI~SzlGpF<1nlwp7yX0 zwX{p6g=?juNzfb$NZOcREO9hJ#N?(K5dg_|T^{bGd)J887r|ItqwFZDo*ZuY`ov^9 zJp)ds7gbffD@e6T}L9SCPqNq`(22tsi*)*0Z@I13zs0=l2$r0>6kA zZ(vFE$@YxqeLeU~;4TCyD#0l!Bmie#*m`F!$sLhdGIx7gMT&a?1S&MPqK$~-W{bsn zG3fj+-|>4*ZSoYtM*>Ac3&K0t~|S>*4|K#$}=Qx;5C%UF##q#;|WaVAtPHL{2q&`9)8J!eit6l}-(h zF^lY7E!=*VD!>!RscF>7NXWK+Z4vh~ zGqrfLdjFETsgLHO;V&t}418So?ALa4T^P_89|;n3kGv6Ctn<0GvY@NK`0e03trs>i z>4-t}{oY~M?{}Ym#4j^sCfJs`NsRoIP7M~tPxf<${(ly*vwAhFPigmrQuHGYA|2Z< z&EjFpvtBFCbWyaz+{42|jM}U5-VHKcz>;={EFZ)(*{!H;$}NQ?B+xxz_;i;=GlbJ{ z-BSPh4VA=XcOfPJy?atHAL23XLbd-{hXd;{oo_E20}pSn^e3UaTThQ(&FY?&Q@)X_ zp{Mx+_qF`o&h}`YrT?$HW=8}zIo91z4!jUF&Ga2Ik3;(Yp*ruGoNsIM?mWk3UYDBb-K6c z=su|^;HfZ6kEEuiro%t+#D?}&rK@&+I|z&(hBI@dutLF^+565n;P!%Kel?Hly-uQ@ zt53sh7ujb=A_J*|b+-d*49;$cV+J%l!5PX>mhLIMd)4l%&CZIY)fgb64y%K2;0ePa z_y`$-9p_%xNN=V}Tb&TUKgh<)@9-5+wgo(e`pOQ-1@9OrvX56e-bg>d8vZg9EZng6 zAnp!L&W~^PO5Y~BZ@hSMCY1jEJ)S1zTZ34qCw-l~b`r|@8a#+BERaeVFg_?99Q2LF3M-*PHq#`L}5<%NaU@JG(=V{q1| z77`eN{>y*2st_{(6t<@&+UmET6g+*KdrKzn672b{rO&_j)i_(T5g-VcXZSFO$a33m z@X9r0l@%-uVX^qiXYuUJg-W;*(~TpV*Ha_p9e)sx03Gu{>rQ4#Li}?A>Eeip>(K;K zShMe%k30=WD-R3!FT<9IYx>(|#a%S{j?4+yl=pGj;L%5{4a|9N0-Dhs|{oQUT225MPx+G*zc`;Q%)#|Mg6M)}JZh>e1%#^$dLXr?}h zVe{errD;q42oDNcu1=g7 zHzQUGE7IuO)R87UJw|KxluK25vP>YgrVZ~AWChkJ#?c0xDc5ED9)t7RkA57fOy~fi z99u=H_d4%EgAUJ*;)#&^QDSgcM4WA&`Rq!Dd11w|FBr?En)jaRCr@VVm{t}zW`?Bt zjeRqf={?j`v$mxmeS1rq$Vy?I^cnLVQv~?~ml+Kd!~R2f@yu81NldoRgK}d(&B%Y` zB-FFWo7A6PUkt*^jWy_esRHvn@gW`UaFMj5njmIWT!=ywpFDBppYModZj5ec_<3bC z`G$K{8e7iB2=A{NgY^$T)GIwM-&V;-U#M~J{~)O)jbIu8$r8`T$qCz5;LOY8ZJ^6z zi~wLN$IcZku(#8FCLK7@cKa5YxXP`EO>F0Xv+7JDmOkJWX_+vzgz62~G% zA6!rZsRwbh!Mg6#LQlRqg}L0p!GWEc5ve=$JZt0CJ~)r>dhOkmmk;5vJwh2MPzzqY zUtx2&g6u{b$L1+z)E(m&*kJpMbFnx6T0BT76||%Rn_XO75YFI;Z&!}H48A2PW4JcL zmhR>Ej^uwL6Ul0z-H-SFRB@!!IPfHY`He&1H}NP)61id>)ukbL5e)&hp%1-Ju+LzN z{50l5D0j!Ll8VPDL}6>V;rLSM4Ur!E;-0)c!mf9UD2Le;TzTxr!Q4Dtk`3aX+&l

%jxW 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

    1ww&YXM5Cbw^(&ckYZOz2L=57jHN%z03mq}E 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 I*zL~$0S7?*GXMYp literal 64167 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 bF<28fGCr7N$5Wg6+l-vF^4l^=!+`$*JpKih From 055f6e58f3dcc501ed1b99677ba3327995fc2eca Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sun, 12 Jul 2026 19:11:14 +0200 Subject: [PATCH 105/538] Update config.yaml --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 75fddc0570..3071d0b960 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -100,5 +100,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "debiantrixie-version-c55d3809" +version: "debiantrixie-version-c55d3809-2" video: true From 9d21c49fa582f68f81fd6503d3c03b7519bab058 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 12 Jul 2026 17:22:16 +0000 Subject: [PATCH 106/538] GitHub bot : README updated --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 588bc3082c..b40d4c1e31 100644 --- a/README.md +++ b/README.md @@ -258,7 +258,7 @@ If you want to do add the repository manually, please follow the procedure highl ![amd64][amd64-badge] ![ingress][ingress-badge] -✓ ![image](https://api.iconify.design/mdi/robot-happy.svg) [Claude Desktop](claude_desktop/) : Claude Desktop with a persistent Claude Code web terminal in one add-on +✓ ![image](https://api.iconify.design/mdi/robot-happy.svg) [Claude Desktop](claude_desktop/) : Claude Desktop and a persistent Claude Code web terminal   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fclaude_desktop%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fclaude_desktop%2Fupdater.json) From 769cfc278e168481e60def4f58e89f1fb891cfff Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 12 Jul 2026 23:21:20 +0000 Subject: [PATCH 107/538] Github bot : image compressed --- .github/stargazer_map.png | Bin 339141 -> 61015 bytes .github/stats.png | Bin 3870 -> 1828 bytes .github/stats_addons.png | Bin 11400 -> 4543 bytes addons_updater/stats.png | Bin 3449 -> 1606 bytes arpspoof/stats.png | Bin 2715 -> 1244 bytes aurral/stats.png | Bin 2498 -> 1350 bytes autobrr/stats.png | Bin 3114 -> 1449 bytes baikal/stats.png | Bin 3315 -> 1576 bytes battybirdnet-pi/stats.png | Bin 3861 -> 1704 bytes bazarr/stats.png | Bin 3269 -> 1502 bytes bentopdf/stats.png | Bin 2617 -> 1423 bytes binance-trading-bot/stats.png | Bin 3807 -> 1756 bytes birdnet-go-dev/stats.png | Bin 2192 -> 1165 bytes birdnet-go/stats.png | Bin 3319 -> 1505 bytes birdnet-pi/stats.png | Bin 5074 -> 1994 bytes birdnet-pipy/stats.png | Bin 2514 -> 1318 bytes bitwarden/stats.png | Bin 3096 -> 1450 bytes browser_brave/stats.png | Bin 2563 -> 1283 bytes browser_chromium/stats.png | Bin 2756 -> 1343 bytes browserless_chrome/stats.png | Bin 3273 -> 1516 bytes calibre/stats.png | Bin 3483 -> 1612 bytes changedetection.io/stats.png | Bin 3138 -> 1461 bytes claude_desktop/icon.png | Bin 17416 -> 5431 bytes claude_desktop/logo.png | Bin 17416 -> 5431 bytes claude_desktop/stats.png | Bin 2247 -> 1178 bytes cleanuparr/stats.png | Bin 2676 -> 1430 bytes cloudcommander/stats.png | Bin 3108 -> 1408 bytes codex/stats.png | Bin 3057 -> 1525 bytes collabora/stats.png | Bin 3086 -> 1479 bytes comixed/stats.png | Bin 2715 -> 1320 bytes elasticsearch/stats.png | Bin 3592 -> 1707 bytes emby/stats.png | Bin 2958 -> 1401 bytes emby_beta/stats.png | Bin 2858 -> 1368 bytes enedisgateway2mqtt/stats.png | Bin 3273 -> 1609 bytes enedisgateway2mqtt_dev/stats.png | Bin 3766 -> 1712 bytes ente/stats.png | Bin 3324 -> 1585 bytes epicgamesfree/stats.png | Bin 3472 -> 1610 bytes filebrowser/stats.png | Bin 3521 -> 1590 bytes filebrowser_quantum/stats.png | Bin 2888 -> 1383 bytes fireflyiii/stats.png | Bin 3285 -> 1577 bytes fireflyiii_data_importer/stats.png | Bin 3700 -> 1705 bytes fireflyiii_fints_importer/stats.png | Bin 4026 -> 1814 bytes flaresolverr/stats.png | Bin 2661 -> 1238 bytes flexget/stats.png | Bin 3039 -> 1341 bytes free_games_claimer/stats.png | Bin 3550 -> 1705 bytes gazpar2mqtt/stats.png | Bin 3406 -> 1598 bytes gitea/stats.png | Bin 2791 -> 1292 bytes grampsweb/stats.png | Bin 2825 -> 1422 bytes grav/stats.png | Bin 3395 -> 1629 bytes guacamole/stats.png | Bin 3075 -> 1453 bytes icon.png | Bin 17416 -> 5431 bytes immich/stats.png | Bin 2991 -> 1335 bytes immich_cuda/stats.png | Bin 3189 -> 1520 bytes immich_frame/stats.png | Bin 3134 -> 1411 bytes immich_noml/stats.png | Bin 2819 -> 1336 bytes immich_openvino/stats.png | Bin 3205 -> 1462 bytes immich_power_tools/stats.png | Bin 2964 -> 1449 bytes inadyn/stats.png | Bin 3585 -> 1587 bytes jackett/stats.png | Bin 2487 -> 1213 bytes jellyfin/stats.png | Bin 2555 -> 1240 bytes joal/stats.png | Bin 3499 -> 1568 bytes joplin/stats.png | Bin 3588 -> 1616 bytes kometa/stats.png | Bin 3269 -> 1560 bytes librespeed/stats.png | Bin 2887 -> 1477 bytes lidarr/stats.png | Bin 2873 -> 1402 bytes linkwarden/stats.png | Bin 2949 -> 1434 bytes logo.png | Bin 17416 -> 5431 bytes maintainerr/stats.png | Bin 2992 -> 1495 bytes manyfold/stats.png | Bin 2759 -> 1384 bytes mealie/stats.png | Bin 3079 -> 1423 bytes monica/stats.png | Bin 3110 -> 1491 bytes mylar3/stats.png | Bin 2489 -> 1168 bytes navidrome/stats.png | Bin 2951 -> 1402 bytes netbird-server/stats.png | Bin 2477 -> 1336 bytes nextcloud/stats.png | Bin 3064 -> 1417 bytes nginx_webserver_proxy/stats.png | Bin 2788 -> 1431 bytes nzbget/stats.png | Bin 3402 -> 1531 bytes omni-tools/stats.png | Bin 2726 -> 1489 bytes openproject/stats.png | Bin 3290 -> 1567 bytes organizr/stats.png | Bin 3397 -> 1557 bytes photoprism/stats.png | Bin 3199 -> 1530 bytes piwigo/stats.png | Bin 2864 -> 1391 bytes plex/stats.png | Bin 2603 -> 1195 bytes portainer/stats.png | Bin 2773 -> 1324 bytes portainer_agent/stats.png | Bin 2849 -> 1390 bytes postgres_17/stats.png | Bin 2722 -> 1381 bytes prowlarr/stats.png | Bin 2962 -> 1339 bytes qbittorrent/stats.png | Bin 3543 -> 1561 bytes radarr/stats.png | Bin 2992 -> 1444 bytes readarr/stats.png | Bin 2989 -> 1343 bytes requestrr/stats.png | Bin 3313 -> 1527 bytes resiliosync/stats.png | Bin 3533 -> 1650 bytes sabnzbd/stats.png | Bin 2649 -> 1255 bytes scrutiny/stats.png | Bin 3606 -> 1687 bytes scrutiny_fa/stats.png | Bin 2876 -> 1362 bytes scrutiny_fa_original/stats.png | Bin 2467 -> 1304 bytes scrutiny_original/stats.png | Bin 2561 -> 1347 bytes seafile/stats.png | Bin 3659 -> 1634 bytes signalk/stats.png | Bin 3745 -> 1687 bytes social_to_mealie/stats.png | Bin 2497 -> 1328 bytes sonarr/stats.png | Bin 2789 -> 1365 bytes sponsorblockcast/stats.png | Bin 2710 -> 1291 bytes spotify_to_plex/icon.png | Bin 18187 -> 14824 bytes spotify_to_plex/logo.png | Bin 18187 -> 14824 bytes spotweb/stats.png | Bin 3787 -> 1766 bytes tandoor_recipes/stats.png | Bin 2983 -> 1394 bytes tdarr/stats.png | Bin 3481 -> 1566 bytes teamspeak/stats.png | Bin 2839 -> 1379 bytes transmission/stats.png | Bin 3381 -> 1631 bytes transmission_openvpn/stats.png | Bin 3555 -> 1711 bytes ubooquity/stats.png | Bin 3468 -> 1615 bytes unpackerr/stats.png | Bin 3742 -> 1707 bytes webtop/stats.png | Bin 2905 -> 1417 bytes webtop_kde/stats.png | Bin 3244 -> 1579 bytes webtrees/stats.png | Bin 2990 -> 1391 bytes wger/stats.png | Bin 3672 -> 1625 bytes whatsapper/stats.png | Bin 3532 -> 1676 bytes whoogle/stats.png | Bin 3673 -> 1699 bytes zoneminder/stats.png | Bin 3448 -> 1599 bytes zoraxy/stats.png | Bin 2510 -> 1320 bytes zzz_archived_code-server/stats.png | Bin 3041 -> 1379 bytes zzz_archived_jellyseerr/stats.png | Bin 3386 -> 1651 bytes zzz_archived_omada/stats.png | Bin 3340 -> 1459 bytes zzz_archived_omada_v3/stats.png | Bin 3217 -> 1487 bytes zzz_archived_ombi/stats.png | Bin 3189 -> 1544 bytes zzz_archived_overseerr/stats.png | Bin 3294 -> 1568 bytes zzz_archived_paperless_ngx/stats.png | Bin 3238 -> 1567 bytes zzz_archived_papermerge/stats.png | Bin 3087 -> 1409 bytes zzz_archived_plex_meta_manager/stats.png | Bin 2857 -> 1348 bytes zzz_archived_tor/stats.png | Bin 3018 -> 1500 bytes 130 files changed, 0 insertions(+), 0 deletions(-) diff --git a/.github/stargazer_map.png b/.github/stargazer_map.png index 83c854fbb150a2e7d0e979f9e688a1481a1fbdb6..052bbdb74e5075b5d14d58aed842e70740af5ae0 100644 GIT binary patch literal 61015 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�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

    sQ;Kcj-3@WFq6?O1d*=-Iowv*I~#J<*Tdk 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

    %jxW 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

      1ww&YXM5Cbw^(&ckYZOz2L=57jHN%z03mq}E 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 I*zL~$0S7?*GXMYp diff --git a/.github/stats.png b/.github/stats.png index 7b9a2019b22f147b2a47fa47399dd869093aa81e..8b40dc4c558bab19732cc797a5cc5801498d0471 100644 GIT binary patch literal 1828 zcmZ8i2~d;Q7Eag#L4trRB9KmLi#(QKg<)$XAwYslBG#gnO;AK7pu`9m%3fq~Bt{Sf zfd&MlFc>U`B_Y9A*`7-Bw~;jgr^xb$Eh8kNVPYC=Z9DJIoO|wB=DTOPcTVwPBHjdU z3x_};CZU9&BM=Bwp(R&CU9CnZ{*g+{EDs+%8m!T1v`3AuuBNI=6A_^q9Mt&w-ux`h zP^&e%NcjE|1cK<>BIqp_#4ZTLfD;;oJ(@nbGIfn|*JE2jtZ$`2<9MMxR2&IqH9=+m z?PW>%gShvPTu*-=wB79QrLLI7vXCf2PtxVgnsB;$wJ<}#bow#NW^&LhTh-&CH-;=c z^=joT9}sEWKWy$x-Tbu_S+1+vx!|op^|9!vHE0HW{e#zlq-jN9zpxIjJm@>cL#98B6oQv zo~03rTbE}VfOzY%e0N@#hvKbxd1g2#Cz5%kGAh#0FPF%)0QLUG@)26#f3{xIE&vO& zrvet|HP9`~2fy0U`HAL(&kLsGXkj`wAHpS5WMCIK$L##yNE1f1_cs=<)9c&=fR`w| zIBR8`xx{F#N&SRKgJ&*(gu{~Vn}FsCm@Vi(74#n_j{NP`NMPuGvN#6MZ2J_FAQH>~ za3ywIGEH=EL_T(Al4IL)=<0V_jVEUg$_X&Ot-^2)zj&QGhd0L@%le}D?XITY_yf5g z)2h=^Arv><^gpIZ<9uG9Pn|Rcavh!zSJ>uGW7r027|vdCE6@}$4qO-tenx)qJ0qEh zg7J6CEb)GzGQ@A)!MVN3hr$eaR;t4{SG?8Lrbc|>-|t@*>r2u9b~Xg`kaL*cqAh>C zJLSxQD)Cl&bn+bYj=1crr-*bpy(TT>CYDLCs5eh`Z>Lq-7;&3Mc5lD&dMG!!9d{X=R}AeeSdlJ6 zXvyGzLPAD&yW$bl|5m~4(=MbI(ZY^jNQF$@v2VcasBnaFz5Ro7b7~f-0KU|V7cQnN zcnx}HCFXsqyKS}9a-=gv9p(%NPR)glKg@fAo{xIZ=nqFMy9WHiIABJzt|`{yXX zwxj5mujR~3vke#wLi<|iI#6H0c;E~M^{&r=hFyqS<};BAV~fw!U9YYtH?kqB)lNKD zsVGk*+jW-+d4V{Wjn{8`lc%vHS&xguag?E?`|js zNB>+9e|w{ZlxWvoJz%fM`#-vGSph{i_e-(t#s1uA;F>Om9=_W_J) zDO1|=hn|%B%RGaPMystho-z=sW^@|hLIn2)9?LrY$b#l%tNjNDL5B%A5o9j7&6=v3 zlQ!`=(Zhuj1JKyBS3)1I%{sS}%A0_J*_^ID#ghr`q)hUL2w}28N$Zp;1s|E(izF-wIrfYw}cSb6f7mCQUQB0uYfJ%KeM7o`=S9=I$@F%ggoMfaoA9y)yCsX$ok8Wz(fv4f_2Z5>a7CHi zKM@XB|NJ#}Nx~Bc^M<2BLzlYik#^Kdu9ZS_O4=lZ)>gRktcr_@ib@R9PDJu^x}z$; zAdexY^GD4@*(-8?uBx<7P>7&+WWDyP%9^%EY(5}@Bc~)I?6GWh)Y9{(uUiW@9Tv$w zO7IGP>cFFnf%?mh^B` zLx1s-HoacQz6`6a9C&{nEs%Fajn};KmxnF=E?~VHp`YlL_ayMYBANEW)p2d#csQ|Q zM0k?-@eE4(5v|MJ7CE?>AzZKH$ZwB&f0{k~0~$!Dj%8i*{VGT8RD*;D6N4TGp3M6L DXgZF5 literal 3870 zcmai1c|4Tu*B@I*BwLBemZd0BA;ORn*`7*~^~siHm~4X?W>l6+_9bCRB$6e+%nZ$t zC5BM;F=K|3X)rUg4GHgE&+qejp7(wJc>lQW>$BTTXp^G>^{=-xrUI{jcM;MMq-!po1MZGHxh#*Cq@-; zDzi2-ix86R>~fYh4X^A@mKj*^g6G(16+R`Jh{ci&3+uh)<3<)O!dTSsUc*faURh$>^ys;a7ftj~nLw?*5^;`M>I`KFqAnhNwnEt!A( z35+Ar1rcu}_~1l4ZZBarD`e9~Sfqv0Emtx@VrnH4jIUKt^%LPnexU6NT)vpw$2?t) zQUV=e$+MwPj@fM#Li1_DBjFj1fqFc8<&3|;`fW!2YJyR#xXM3pYz(YZ{>JyM?M?bh z@lM%*38gvp>pi2^gsi=kEWjwmziH5RaROI>eBk>BA9@8i*A4wUUj~7|cmE&c&D;xk zIrq(EoZ|Ogtu-=*+B|o?&)3m0!VN1+@Rjtu(nffxA0%k-ayeo>oEh<+rmNF6&l0G{$<6whFQBreYQ--+BU?1)D5rcn$0mt`LCSW6jD zU6#Nab_+1mwi`MiBOz+o{&@)gCP0A9TY}s+zqk3V?a$l+f!)#u)YH`X&`vhKK%GzO zXh-+f`?K(Ud!^JZaC@;nE8ghP1R?GxS_}sh-NiV|lipG0eug*w(SqYbglhAB8L!Sf73VoKIHuKkTQ zJ1@*F_b>OY1yWyD4Q6C|-+uk5hGBve7AMoUbK{l^2oJm4Gh0BlJ;Lx~Q6-A;ZIeLU zuA{aBf3QNh$CcCKquB(>DmfXxx|a|YxcXHdcLBf=p`F3KW#yN)c?(^HRk&+$HoplZ z+KlmLdJaz(q4}M^&YVgz5QVEw)yMd%BkB@-F28@{6C>z$V{a>&|6pT9JuC#F3qaz0 zHB7-R4l)4NxU>KZ8Fbw_s9{%9sq0^TOobf(x#J+-V;&!f;}bZd^cz9vg`xRnEV1n8 z_cEHD1Rq>6$Ek}X@s!^m$(40?QHy9|0V2(T+6D94N)hFr9Ni<|{aq&4iaeI<+_(sF zbR-n_;Dlk8^@%Lz>{%{Tn1Xy8ZYur6@^ug|^*RnvWgwOvU+n@abi%;~ko&Tx^k}S%_obT7k9!7#=F0))L0LX%hKPX)inBpV{=Fc6so)vn&d*NQ)D!z9 z4PKr*u9fw=_86Z-I;?%|)B*N!9f6+9<~S^hH#w?AYF~To)b0`XU<#?z0unX-mtL

      War5}rHW#r!1Guhx)>v5P@&JGY(`m76TcDOp zouXR0tX3GAMmODwKexVGJH(||cx(l53=@4!o*vbRSN^$p?#EZ{y#)(_dy<+H1kuX; zEK-@K3fG%;Lh|8|cAbw18)@r^SubI4W z)xnq132v+?Xz=k}rE1%^`cnD3t6O3AwT!D33g4DyZTnQ5^>~&vPf{8EcTd&sGRXfp zZGuz{KqSmjFF7`EVxMu?PjjLDu>oj`*xM9DAOL>aeg9r%U73$am9Oz~G@>ns#&YX; zv1-eV!@-+rBGybyB1@Do7G!sLDBcQ#xopjx{*z;PA;LwmHx&kT?52guQ`sneP{r-U zL>rYbmkSQOe}bEpvU=Y{vwf9$Kgkn;^&_&bdg%Kn@vn+1l!m%ZU1r09u*+?)RID&e zIc^;n65HKM_&y<*ZGX%b47L*}(ETeAepOM*&}u=%VUk$KVqQy`Hu0hdvK|hm;6GKF zesb=S%-J2p3S#`>vcbUX(~~bvtveFj(E&no<;JW9sfHo8Qq(v?>mi4E!0sBO+mCpO=Idbde&#H-Zb&sG zet2x~Y7bO)YNwx`?yqIn_zCfXx6qL+nx6<0ym^GEG?YBl^D&p_@`Ist|69EvDXihR zbQ?Ii)OnbjhN3p7o)c$7q!L-+Hn7msx94MPABIT`3Oj1ts9t_?O#N#79sh1uads=| zOq!tuj!)fh+yt2XX3x$g8>lN4IV4C37^h7b_6U#A9u)$$bVWKkZ1{d?;--(`Sj428 zV%&E%h)1QqWzntmUF6rof>~K3TeZkUs_{onS$hL1^SgW5njIg*suct(RUp}bXHXWX^etp zGW|JY>6D=>RaGk^*S{8;^_|C^v$nTqvM8^X>thGk=3mxcc5C^`xl@~zl&3*e{JtM4 z25=uz7+PLV@$-LB8<_X>xFYq)fKQc)ad}eGC#36HCnB=+ojSC|1bNW|ML64i=+Iy@ z94m=3>-OD{4?uZWKkoJOci;E0BVR5UW5kCk9!lD)?ePluK9W zDR(+5+|ASU_J!sP?4*);UT6PaA+8&M-2@azlBjWGwW1ET2;)D`!3UQq# zZ1TQ1=uIEGVaFR)atokB{-SYW=sF`KZ)J zsH$SS=Fw)SwkM5iIrPnn0!#O6q>j5G4kQ9S>&PZOgyAFDGLHyN1Get(L>^C*S>Sr_ zz-p_iYUbB?hiS9p+kGvgwKWQFH@9h(nfC?hC7I1cbxAIL$~Zq_5z(SPme%qWp-aew zZc|86i=s#IzomK5qjz8&!i1)FoXzRz+?mzMU7Dnb#bcWJZa zMIZIoWR5<|>^*ojba{E!E=OLO+LdW+iy#ldF^(jkMmy7fVh)vK%-j;K|ANrPN&uRo z^g>h#eC&11hgUN-9Mb2z+AqC#9zKpyu)bpQtmdaVox0JJpNF diff --git a/.github/stats_addons.png b/.github/stats_addons.png index e0038289d049adcbb565b72231718c73ad3d17b9..11c9a21d41b5e65633bc8a6bdf8aff3ee2325df8 100644 GIT binary patch delta 4540 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 diff --git a/addons_updater/stats.png b/addons_updater/stats.png index d55e6cdc1f6dda4dd5f823693678960169f11387..19ac722a5db94af757959becfb87756b4edd8be5 100644 GIT binary patch delta 1580 zcmV+{2GjZZ8paHe872b&0019Did_Hz01{A4R7L;){{R30l>*eXOX1+P^2&kgMy;~l zks%j<1=>kOK~#9!?VatKt11kI3Bvu~^4ZhY9zPKxP>^^1=sb=o!?+{~Bm`ps00000 z0000000000fEh$9`+#~bOWcN{rLAH$J5{6((NDrnP@lY?Ju7Ly?T z*`ymtA5gs;F_1o*BPS+EI;{7zeIfdl*zI$`k$c!k7v||Wa*)pA45ULkq*sP5#uPbn ztzw!cZ2DkulbKuz?>*IdhxCdA-Q7}u@FY=m2tU0?JC59NUYuURlSI*_MZf34v%{rN zi+*dU&QWRRX45#=|>f5L`pxpD%eHxX*ldU6_HjU2f)w7c4qOC~*3M-EDAx^Zfwo|GeJ^45`m1GfX| zN~50S$T4MWO1rC#dYU5#=?(erdZW(bOvff&ZPX#X=iE3;XmvD`uJz;yt@fabhCALt52jG^~5+DCB<$lbr*UGt~V%WG3uP`P|po} zDfI(&e@nY-j5_o5YK*%Sr#yk&bfeD64i(_T9$TDMK9%~r;VqdnjZyA@m5Mt~i@WLi zFA!R-tk->(s&Ii9!}_ATRw2F63XD~)#!(PB+sJ$^p12H)Fo({%l67k+2wd97cGF$n zQ%gEpofk*mdsbZ>XN{v5VeYYRDF|F^;lwLwf4w~3DJue28R(Gyw!ZFky5$NQ@_7H; zK)NXx0=Z|KZ`Ec#chEC`5A@+lzm9XcNFA>-_<{sz@ zrcP^$$-@+T{Nnjdy?&+OZN1|>#Dt3t?XoDO``EV54BXf2;W2G%9?^Aj@3f|v^dH+! zAI)ycq1Qtmysdd~Phhu$^i8@`uC{IMwko?Zbz7>feb#EQtk|A^ba|L1KV7!_`|-(c zG-Y$!{Z#+h&A@j$bmTt46!!zupk#gW=J%&6_d8`Pp^8hf{(sQNaqOms=ov)^XS3nm zfk>ap?ulsA%CVbWs`t_+m$OzIBfTTT4e2@Tn>vmS=`E4&7i_!W#2CUKLi$l?>u^y7 zBmNN5!})2;shGuoh(CdJys_U-+3Jw)?F#7XUy@#D*Q&Q37KR$>H*(8CnUP+4Ta&|f z_vy%qzNu;A@wcen<@)QQBfVVQ5M(YXmWg!7q^w=#=K}&q z&2PjnJ74V4q;@{MZB>@KU)EoK-;)dZWk+Q9k0dnz*=2RsT$Ff3=S^DYO+x33wf=pI zkx%}@d*3%@Hji=t{+tOM$R~?SLGgD*y`<))rOumV`7q~i&GG&2=JH@mdz^f_`0G{~ z@fw{kCZ5cD)Ol!iXBlL7xqA*0uNjWS1I^3&4UK7id;hncFW34ZQ{j;wjI(dugKf`5 zHZRY{TiJenad{|y+WfK_N_6Wcw)HBVFV*^YKu0#ONumH`SO8cDU9Zgm09bnmsCPgL e1wg%nR`4Go`VrmOe34230000F%=E~ literal 3449 zcmZu!c{tSF+y74UJdrI@$xgC|M2IGOgh=*K_GBq*lx4;;WsORVL1gU7WXW!tnz5!K zJa)sNu{5?B8jZ0G-s%1Q-v8d~I{SU!=e|Fm>ptf?=ed=I2``rj7XSdfrZ=wJ008JW zdz{62gx!`OQgztfvEUnbLIHrU^G^jKmH9;3%F3qKuh~VsrB1g6o$eOy{uL=>1F|UM zYCk6zc+INOhF@sz{bjp}q%6a@>&JhN8LBP9hhp0{)XvQrR8z~gq|km;UcD`YFZXR0eH6J9}2|%KF-xyN(zaVBqY! z^a%jq(eZk~_2ggylk8S2bODvok6p6x-EQIMVx*u&Gr zM9~){0r>q^<+Svh+DP|XWmOrZb)}>edEMK)n@Vn`oB2h$y6J~Pz|t|?S+-GpA0tgOfPhn-sA07e* z4(DsQDk^i&Ip%|bPwpC|MX~0*WfnJJ5H#9r<0o*Q5;T}WG@HxAgSNF;OteIb;@oZZ z_IjwoyJUy1gYjP4&^`eX4G(3%e@PU8w2K=&|E-i|mWL5)ES2nf6i07b9LO>)NZ1x}1Xc#!JgSfNeG9aT2@I|$ z3*0YHN;)rb>)oF7KZhJYP6TNfG-ra`mfyV&aVE-NE|en<8+skitqv$_`6NVD2WxcF z{oni^_=@o9L|gM;nho?srQ45H^8@@_7wp*ETQ*!X46*y zm>KHJdgROnv}UoIcp%{b=iQi=-s~hy6$jvcjqESn{R9BcE4@{*^_)QMr%z@#fPh>D z|6YX;hM7ZZ3f7;F0UzIY!QLMMKG}pMJRJSz%_j?N8-ypI9S9a+4ue@u!j}vktpPtw zGU?Q$nRZns2vDzW3U;IpTn@FYiL%DCH!uq5{nmU*ItnCZ#STm1IQ!6%CC~u0jYj>& zD)$@R+f;w2j|4aeSruN=iHAGm+TGsW*y^&}$>nkA?hgwx87-xGlzx9`68A+dyJP7# zTTV5f8>t^G$EULwGH6GM->pIX)x{oI{yAiGQ!L|wn+c8WmtV8prTlAv-7p6+?LH<+ z3DBm^MkvKkJc;n5g}XtiM$(-n1Ba^(a?K;blK%F~jzsRl1+qTV>hB*fyeCk}F&ik2 z5J@v7ab;MoGLg4XFdjyR(lB{HhnhL);&9KK1y?4YM67N>c9_W)*Y!Q#RmsLy`RE3n z0CpI^6`1X1l`VQ2TKZOh!~0dDS-!0DM6$%D4>};akPFD)rgW#_ZnlITzYVBIviaDZ z_Awe)Rh+|RK9`LJb#{D~MPSduYhdZ^KBi2!ik7)6;EyOCAZ zq<=I?0PibS$}65bcDMvs5LT5d z0=fU2$Wna*X7r|f_E2AKi3}TyoVT&1v&5Yor!SY78$$%ySeuw%?UN%rwQ?pmj;^y6 z{E;J=_NS2|H016&{h&wScV1c2Df4NNv+2G4iM5uP=5vceKkd`{UWK3eWr>U0!pd;t zoew+^an5?!i()C-11~1gJt=a74l3ANE3a=_*E!)U^e+c}Xqatap`bm;CbKpz$ z5yFkLbkZBAxha@UYbE|NKOcvF-oTk$ScE&YdzmbqN~N>8sk!yi8B%|5(Kqp6dsQu# zMf+gSCu^B(j*?YQqM8w|grAj2Ha_9lQS>oyx$gO!!P4-c{cjk1AsjCB5p_ckTPdb; zEPUrqUC2cB$!ZF%g%40M)w>|5QNnj*wR3U5KX?3e67`;E)7}gr{a;Ur^^g;@bcbdt zY@ncv|M~42ZWhzBHO`dyywAZs9aeBBPX+NMjF4m}OY*SR%|POp1{gZLvi0^N7SXlE z)Tl!$^Du@rhs)={kIpDYxkoCMhE!M&uZV1x^89t{jb!mc%K^4%DGV2B58H{E|FZYt zaC`Ee)CYy!FTN$^1rKGOT~y{|Q^r$R4bw!b~iqE8Q8UJj5VJ*8AS=Y%r8 z_cYck#~6PWTe|w#U9-~pDtaTd0-nWBgY%1u`=nMO&&}-%3+xTsXlw6%t*Y4c#HRVz zKWRPSnfjZ|m#n4NkNRB)Q7l2j#>dqP?q1!=2HU?H`{03(xPey3qIQOzT~ z?AvfA`u^%F9*Ws1f?o0$ir3pEKn34r_8Lbei=W|DE+RF1U^g^Kq4K@sPK@ke6Z<4c z%DFkGXxn2A;1Un7Thln+sf6j^W@IUGegx;nL4FnQ0O4AtO4Y<*wKT=TnHPu&3}w4K zG3%>#^wy0T^Iby$TC}%c->)o9F)!G`6p=w5nd|)S`_k=W0YSAgjkMVJvtp8E0gHzP zVb;;(h>8!J)NY`)tsmlu`O^mCloeCkrOXq_Wb3)L){Lemy*eS6H)n{ABz z;m@u(`jxsxF-zuJhm=dlmD!qnmmL<}^Z0rUB~guO)pr^C?&4J|qiRyu=VvrMCYopy zXNrr}Y19dOTc6UA?*-v@hw^KU2U=C6J!Y_JNv6q zcTBYz8eBs)Id0cVObWpVQY4x5&fP!oF<k&v+BpOv#3 zg23Hkzus*@+O%L`1=YebY1?(C|=`#A5NSDD@8eHT~En8bES`8 zAWf-)0oKWlQ)t|m+eZwRK1pK0KqX9?`GH`i8-N7^?HQ6Z0A5(JNg6KF^$Y_zvvorx z13x}_*5)pSw^Yc(?DfJ{m<~8EdZHax0%2=c)%`(U9;O+K65gEGiy%7c8zJP&ZPfW( zwO9#C=3yU0iFlJnx{ek-?3mOfg_qT6js$DFX713k!qX+~9+vPUq^~b2p z=MifmM`(DfS8lo?Br3a0CxSQuNg(v^kWs80f?8oYOD@-~@>^>}Rw*G6!(hvH`gv0; z8bU|!DIq=nSlI2Ri>QfuTsT(=<=V^_JuNdCMJ(;st}Lbcyt7d+-p_u?uw4odt3_c$ z8Xnum%-pnect9~@@MxcI5k85iD&JCE87*t#ZP29%t;zl#6)C(`L0oZP-~*(Ke;ok?l$@R9jCR2W z!DimQuh#(n;~?0FfaV ze*|+$L_t(|+U=duma8BPMU&S5|K@u;wVkS{gu)2PJ`Y{v$YN1hOD0-3Uzlw_dI&fY+pV7 z7dk!N<%F&8Xzj(D;XPW24rGK7LI@#*e-J_lNlz;hzkb#71G!$2SS~=Y*cf6(0_YJ_ z2!I}Q&G`trqW)DokkghqXH6>~xan=bsE|46AWswM0rND0?juk02K0D&nzf*pjU7P0 zB2ROALBH)P8@e`+-cgl2&FNmNr*Ce-v+mQOC4Zl%Sq=Jje4l?^K<`fVpcgH;e*pao z-Rt#qEg9aSeg*W&Y^>(~9th-IKtGw&xn&zfx2an6UNTez{SxTdut5JNkOO)&=vqV& z=)R!OlRVM8jP1=>hj+{w@6gkwf$ki-0$u#Mu=|WOai6Xt*su-^IaBnmf(`2cI_3<} zfgZtnKW2m@=hBCvh7||ayJ=~aK+c6Bha(5{3Iu`Py$gF{&H&w`H*>U}PEQX9ojD!oWW$Dmp7LEV zXJl}1#uUgYn-X}3o;-^U>l%9TP83j=zFkDGrGf5?XQ5Xadz1SXL45XX@t2Xw)l2@uBtJz6F#&|?PgKo2;j z3(vB}o6>oIdce^gM=qT4e#l6L_pl98 ze2nhgr$=++cs@Pk;La*rxF`g-4SPNEVowG~Zdl~^wv6!J`Tjj^h^4e^LL!hC{5K1ZPeU2098bwpW|+(OBG16Xq88YM(z7T|0H#;v)Np z1(i!~<*DLlwI7^MG<{Y2((97n@~kc9^m7K#WfjkJdR+XoHLF8=A z<&t~R^P=}{g`$!^ly|OGZgE@bpMNziu9l`-N*mi^Zn^0)f1XBhx)@*HHLMO-)oEsN zTj}?yX2lyf-BP)sw3X56(&}b@(9PlcQfT(TkScvrx#1U`Dt=|t+g_L5^C{@((fuY! zSbv$1v(Mj_?w(&9rc0kxE}50@6u+|RZ7Y||>r$RXf&4DPA*iDe-V8zr?;SC`BT^_3 e!#lcO{{RK~5)N%NAcx!l0000-zoiJkNdI*K2)__`K1<*Hi~}jX*qogm`hmUJs={(*c{(j>NH zq-W^v$zS||Q^#2Ox7rGKbu|x@>=Tx8_Jz3uyB4&r7$~B-7ViXL#hM7kBOf8aVXOaZ ze7%bjl#*D_rVF2WRI z>y|zH)sBWbP~;b%##}#NZ3xG4{IFN2Y!oJlplH`2M~LO`o%?};2IGGkg_8w7xjb3R z>;!=Cpu~|4PTOj~%B@!22He5|XlZn?3mP~{H#G%`34>K>C@ln41LQpRd_NabgLx6{ zTRl^w8fxxrNN%cNkrSq!p7Z2!h5X&aS|xQI=N+xpEK8>BpLOgBeu2Q} zeuz$2os?DA87E9U z6s+=CrO!G5`u&7|mla$VZch}=cn%*5U{1Jiz&R~;(L_1)Y1aFJIaqs`$*b{^-Pqc| zx&z}Ofo>#z_^2+SmH|<}vg1-^OS6x!KJ1D0Kr_U~<-jEOSuoa_hUQd8GI}0Sa&o`C^;%R4q)WK(&El<7y~TlG)QlmSFBy*%Z}qo?;C=RyIR@tTG4hC ze^#7iyVBHlTz1B>E+(h@N@y~ejidk{Lx-GCBZVKjyB0r+*$<7jBH!5U*X_#rTNwjsG zsw|*-xsn8G7H}Y9D%EQdF_C)57M%2>*{B2>1=6|C5}h|creh%D6R|?n@3`_`XE!f1 zXhfsm+N&!`GS81+jMMdck%_>sCf2aHovgPWz~;~Lpg=#G^lTq-09GU}re2glHAnnh zB^MKZmh*g-8-9?SyZ#hK&4Kr|_frRow&lOOj>itZxF?a;lwe%2|700%#@&tJ-g>(g zRj}|4fmb-Cq zbA0Pb_%Zh`Z%eT;2F46b#P2tW*~3?LJ&a%eSGMV>(dX%OT%|k_+(U&MIhjOqLD3lH zDi^?a8}J#JU0m>eep&9Rh48y@$SJw=7V(&vC!9b6zgI41^zZwt>1*+JwVX#UKjX$z#;LS3ghSi#m#Xruj>2Xh z&EdW4K6Q&q+`z_Q6tkkD((AC#GXHzlLZ?WDf7jFm48TVZvUk61VnUh(JVv3$vw%i{ zip5uVNs-*e_{049?8dw|bgo&*((PH7_z>GugJ!ttQ9$?ka~KTR4vH* z_fB;*wVt`(Zvxt{jJprs5E6dK#_1iZUn@Xx{J|aD)>bY?)Ocs{(DuboSB<&V=GR=A zCqtHI^Yh?NOWWPKecj4D$})I$pT9Ott!>>1SzlmAu3Fk@8zpBnd-KxI62gu zxXV39MszWmr@=s^INO=d4@0O@gWo1@;0al)yy`Ek6`(ufSBrN zS123{P~mv8*E4uVp+{~mXii6OKBRh9YfrK&Lj%{^Tumal<0$jUS9yi^Pw-zE*AWBt zt0)bNh{cCVY{n)&W!hBNEJ^LgjW=FeCk;9F2BXHwP6wY0Rl-N9*@b_ZBh&=-E6mu! zl=&{R%_jPsB)qL9OTXFnlR&$V{?0dvN8H?iA+CBgH*h=~wEr61sL<`5L-{AAtL{8Q z5b`HJH^?im)+b){!2Q$Z<@DGt7_F6*4gbYR5h}{jHl<&Pqp=KXP7hsBQLe95a6Z|q ze_s8`ktav86_#OIVFw*njh}pD9ri!?A-`<5!f@Ebg@5ZJ&G;Wts78Lc9w7yrRCUvD zQ%F>tcIc~2=vg`8HPtnRmY#sWD4ZA8D+#2-(Ed8gf_mxk&3do$7|lwa{6DNcRWo_S zkZHOZY|#DQnOg_IQM9uq zz&{d+@8j(}036 fhO;0*d;|L6s=o6Vws)N9w+U>|Ub3o1UVrc(h4?=5 diff --git a/aurral/stats.png b/aurral/stats.png index 2c96bdb44d6f8265adf073232a6f484a1eaa6a8b..e7734047f75e736f70d0572f74023f57bdfd346d 100644 GIT binary patch delta 1322 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 EFWiXnod5s; diff --git a/autobrr/stats.png b/autobrr/stats.png index 7455860d54a25c30d8c7e25fcff4bb8a1559677e..722fcbdf540909715e1e3f6e71a91dd7607377ac 100644 GIT binary patch delta 1422 zcmV;91#$YS7^w@886yJ#0019Did_Hz01r@1R7L;){{R30l?2qkW#!&aflB~ zeP?_!??6WgA%qY@2qA_sQ^C*$=pzIX$-&HMiKIICQOFKcPO;n7%QGdc%ty zROtnbi~0NpibkIp`FZ4Yp@hrc&!L`n`Iag^m}4`(ROrWl+Gr^H{9V01f2rRbk!x*g z1ZSk^0!FRvrXF3VIB&k6OZJC6-8{za>>x!KFfOMP1MctMVb=b=A^-b>DZYSFt~GKc z7clCRLDzKkkPBt>jy$=eJh-#N^79S!Yurm46Q7I7T{||uTu|T0zhp5xJCudKgxm*c z$@+7NogE57w*tn%$4lUlv>ub_)a%1AE8g12zTurXx&h`R3Yfz zbBd$&rhQE~nT#yd<4(I#<3V5YCn0;+_JMtU#tb=6YXZ8IG+qG)e?GhyYt1|@cQZaI z;mGAinWFlF>1uSZbB{hSPhZkPv>U=#1&NL>I_aXj*Bg!MLtoOfi7((L<+`+wy{g|? z9r}`-L(U?n8@BRmS%hh#8dmOr9y|-b3~t$-)!bz~4>5uSbWcnzeNUn&pJj{iQ@%f1 z#y%Hxla8eSGc%VEf03wEwBxwai4`CHGCYbQ(+J&ZbIz0<5uw=8Cp%$m+;9OgibMvp@~dDW_@OL?@Y zjCe}}?7be@fW(eSoC zYs5$Wa<`50elGGt-_8~^Sr8FL+8ib z_ThRPoScx8pJ4O;Y^{_EX{C~mrIL>Xj=5hWA| c^N!lmKVs4j{JU?*{r~^~07*qoM6N<$g3l<#cmMzZ literal 3114 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 TFsx!6|G>oHntu5em&gAC6+`dJ diff --git a/baikal/stats.png b/baikal/stats.png index 695deaa8fae058b98935e94dedacec69eaf630a1..999defeec7921364cc651f3dfa2a0d601fba60df 100644 GIT binary patch delta 1550 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 Zzcx}0ro4uYdH)i?#=`zet+`LazX7NiZ@~Zn diff --git a/bentopdf/stats.png b/bentopdf/stats.png index 95b1b09e7d4165dc14786cd6bebb3555ec2beb49..a318408766f04db3c961b37e8945f4a295a96610 100644 GIT binary patch delta 1396 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 diff --git a/binance-trading-bot/stats.png b/binance-trading-bot/stats.png index 06497b8f8eab3c28b63c450b53b057433fdfbe45..f0f800ed138ca8185c0f920416ff68e3f48017d9 100644 GIT binary patch delta 1732 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 Hwy*vN)o_;7 diff --git a/birdnet-go-dev/stats.png b/birdnet-go-dev/stats.png index 2f434a429a90afa9bf507ced935e5da209479f48..caefa60c32ea7992a254257efbd5c28027e024b6 100644 GIT binary patch delta 1136 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 OfQzHY8M?#88~*@!Sxqqj diff --git a/birdnet-go/stats.png b/birdnet-go/stats.png index 651cb2775db52a9e1744cd35c45707b8974fb494..3b7fce1c5a1863932d781cd7bada9b6219cfad39 100644 GIT binary patch delta 1479 zcmV;&1vvWm8Q}|%872b&0019Did_Hz01{A4R7L;){{R30l>*etfa&DE^sqzURoo9Q zks%j<1$9Y8K~#9!?VaIbs~`+UiNgE8^0uzFih!u7K+gB0tJg@m9>EX;8iNo*2qALI2;BFL^UHfAi@AfZkL0KGFR&_i4|6^7??eva5r0fDl3mA%qY@2qE+Q6DjWl zDTqnUA3Z=_NlOPh(2;8Bf?Cmmr;rgxPEKSf-D|46(2^ZAeSIrQnm|{WqzQC|Nt!@c zn4~GGU6M!}5;DYVOwt^p%7!k{iUr1OKyM{UQ<6bfiCzmpZ#YR)%k+xz`__QTa9-aF}1&oY1c^>&>$;p}De(+SR8@3-5$ zaC~|+SMt%SFoE%wq=*ZTBQer{RQi1U!UIdrT7~*8H}uockANaLQz!HML&X$x?ScL< z^AgZWmuif8_L%L+WCx(v$^1NYR*YS%o_wxO(8t4#Jxq>SUf>#(_6GL|Z!4A7*~#yFhT{nr6NgdnY*4BXh=o=?a=L9e;qjg;WplfN?K)>~-T^(#9a>`nF9x2&9WCM2Puya|mXQ1PK)4c=y z-q>j;5jmZ}&xBzcAE)aDex{|j3;p$qO1;4KLH}>ys)3h=F5&eo?THvz!4_%NH}G>g za`_Rt-`7jo?QqANb^u9y4@2-u=dw*%-M`%JsRpb=Wh z=tHS{$|a`C3qAX2bpai5Ye?QNEGGrP#a%Z7)*J$HRN%nu=Gfke&;~yBD+GH%d60<-@;V#N?lndt8=8# z&6=9*LQQ^6FF2{&Q`cV|%J(G?-sZP|F~MB{OV9LEzliC7Ydq=ev=m&~*5p}@msr&!{002ovPDHLkV1l+y^J@SA delta 3307 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 FV1hIH=L7%% literal 5074 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 E2P#dqvH$=8 diff --git a/birdnet-pipy/stats.png b/birdnet-pipy/stats.png index da096b871b26d9e66bc30d053c6780474e3e0140..2f5cc5a5bb071a471b18fc028fd06d878246e9ef 100644 GIT binary patch delta 1290 zcmV+l1@-#U6Q&A~86yJ#0019Did_Hz01r@1R7L;){{R30lmOGcV&vVf@jtz1eUTv- ze+0crL_t(|+U=dudV?SgMw9CMKl9eLx>`XIPzgEz#a2I?qCJH~f>8t^gb+dqA%qY@ z2qAH@mz-`^)+eQ!^%roCV9d%c<8gXx~G?|*OFI=#|q z-|L4kzfVMg-V5~Crv8(csr%18UG%@te*@k8@IKLpAPqP|GVcf$ngHCeR(O&;+`}6`ESZ;RC&y6`GHzlA$Zm4Xn@{hey4hf1cdc zfqvf#&0pffSkWB=y>X3025|y8)5IS`4)ML7j!*Bbi>Cx~5>2>pi|4(-3yAOf^gup+ zzLW&IN#MKDyJ|4Y2K0MW1^97ZK))6F6?5K6>_Rad?3%nz<7j|k)p`tkJW zolCZE{CNKG4s^4AoEbUS$oF_Lf4p~ye1n&YG7Z~Dv`!%BHF(3PI~~@6?iTqDFD}`7 zM2=5yO4lIYirx?0^91xd%tda79^bXDN&s|I%rkfesuBRbhC7!QpvT5{UEQD#bR!X5 z_8l(tbmPc#qW2JVs2f7QjVrQ~K(407tC2G!cYik@L>hz6(g8!2#Wf zGcQQ3l25nl%=1&LNd| zN>2}R-ru|K>FUILTXf(@7Ex>z1nw@7n~BC{A2s>(CFrh*GC32cf9(ylSLoy5owhgV zrmwMp4soDE9O%Y#Awcha*;0GZ)i!hn^}PJ4nuQMW+@8K!`n%z2Scuopr?*}D8{%h; z%q>D^cJ&U!kFo0@%;_DRrL++-k-tD0qF zP&ZL%=yRt+yr1Fy3g{3wR6MW}^e1t>XMRBCzNv|O+s;m{E}$b@qIeuCebxsu@9v=v zbkzOWUgYtSUGBkRks7NrrTbU@D|1aT&o(SS>VWZQZ#eCge{X7A6Ygx$&yV@qOfvuQ zA#w9;!}6n!G+lVg`E5(`X=i?Gp$}Xf^;9u5ycxT?*R7L?7Njj|cV(>ytk=d`bjn3- zmww%QhaT&5Iu{n4?Y=fQe|%ZyA;b0Oq&NHbD$TmA>0sMZ(st3;t$T+a2;_7b)F1un zh0IkF%map+TsTCO9(7sMW#-x6SCvCw)&l+x4K%WuVy-FXk#;4m-JrE3T9-9lW*#<{ zQ`_c}jT9V$I&v~MgAiiw9WlHkmQWyuchr`C0Ku;gV7L5CtpET307*qoM6N<$g6jH; A@&Et; literal 2514 zcmai0S5y;-5)EM$DaL||2%#%WGZZPIT39d=gHn`UB!HkmAVAa*ilSIRK&5R2LL=9E;r~jk@TG1^_^vKOvE$2U6PQQepPz-0r;QOxVQC+8^H= z@I>Q}aPx7%)0^g6504ll0#1Ka|8CRi2P{sOb1|D3us`z4SNPGDgEtokFP+FJjTFVQ z@AiI7ug3%?e^L1QuQ;2Pmjtu?rZE;L(CJg* zGN;M*MO=Y}F%uE8M2tL8Fpj}1m6Pe>GR;g5FB}+jE#bO`(`i3Q+QO6oQr_{CE99NwpCw=}qon0FtH%{7i*?T{GK=sGcrlG2t8bd;+ z)Ijoz8WZ$C@uriR7!myE&UFb7=Ux;~3mdBQ=f>}s0ad!et(cLKi>;x65YLtcTe5}} zK+iL}XNuZW6DN64Uv4l}ll^tDoVmss_I#T_s-g)Mj}~7o2Nzr`3LDFSKkIK?cCc`6 zOKN@lg3puu8aCUjjaF^CL!geUjX` zNXQBf+#bTubFZ~ZX46xOcG&?h8$sJ|ZtaBe!nJAF_}z8p?4YXLO=MipgFO& zgA~kO5xMCikscsaa|~m|$b}gPM1}m*h_yQPjZ%K*a(oZ@S*492V5J7H zY#s(iyu)#0d0vR{+Ytr2k^81p+a#$bC+F3=%Fc81`<_c>f$NKW;D`MIf&Z#!kD9iXf!E`PZn?WwcjeK zRO0e!@#WGMt?^jV@WfhsUtmW^w`i~dcdjEltajmF<7nP5!~`iIhoA1Ts?d5FYh#6Y z2MlT)HJMA*HH2erZb_~&#&PjmpoP-*B2vo9Bu6fgI^+kT5VhT^7eI>N{2)C~opv6% zt6LRk^H68#>^Vhm?^8W4%OmKt2fKrV!>C%9S?uwOK8(fh|JCO9&H}_VuorC_KLg1E z8@HopLPkht=2c4*c-oY|9hr#TS>+aZ*fr!E`s_Mxz^|pqO4(kX?Jr(GFMmqbNLz@t~~T#TDpH7rx*@UHf^=hE!r0#=(W4v;hj|3H$v%xAxz$v08* zTOIwbxEg#yZn*n)0T|lY;gclZ;Q4<@+#E>N>0wzbv)gz_8$N+g$vjx^{~%g^#l`24Rt=AW?spb2=M5U=4i&77#VViF4`se~4Zbw*W{`7PX z{B1==jsy40eof5xbQmPID(1W?u_DFy@)!ZNp!MmybwXFEg5}6k8_j(fhi9+5t3R~b zGZYm_{EuT6Zrk-fvU^+!Xn*@)V!$SPvL08!L>2f89`UsQYmihP15WJZ85E#L{)TNJXUO?fC(1 zw})7Al>|WO#XeC1JKZ&V13YGAmiEBn?~1GkY>`*Ls19kVe5seups37HaHy+ywA~I| zETaU1TMP)vDE}P3g1Tm!ZHZ+b%9*-&rMnPC%TkunVmLd#qA2bYyjZO12$L273p#=O z1j}Ir0M60JJEY$AA&Ch!yitvL$7RVePY79F|FjSZ-`M=NPsxy}Qj z?dIH|TiPXiFsiy4zWTbbVZ4gsTP7)8J(zolJJb^!u)p$iu4hnSw+2NNA+kl@bD)O0 zg*%qzgnGqm4zWxONQcI3$L{q^Jz*AY;DNK1ujMNM_LeNFCE)RT&vYpMW86)WWL6#% zC8c(&IG&qULNu~EOD1Xx`oy`Mni}@T)e(Q}-VFB>@!J(4&pJ7ZLS?KN*R z92%J47^JldRRswu`01bNK@0CtoQ=!gJD~gdtnti=H=EQypIf7pp6T&^^w&qvZP_ws zOc_<7G?vLWRvGe!t|RSA_H0bbk~XNzPHQ|6$)Pz!T3?5+5W4v8u`95m1-B2cJT>%q zQ{XX+z@O{x%~V>Rjp&W{5;`%CS%-)QAWPp3D@xouRGnC{*q4lLmnOhOn^kjW#!+q@Vqe{-9yWw8SW@4D}tnQ11DOL&&_ki0kt0000000000 z000000HlY=<1hbP+?`=rhja@h%fr53|GcPuyn6rqdgJ-?^FQVN0nk0^A1cKy|Hy~q zMH6|y1Ot#RACCVCUsL>f;XZ={^dH1!f8pre!k_t_&X9chlZ6gRK8anviaAk|v}ZoTLfq z1}ACC!PtZJz9wmE5T{8ONFQ;MrhFBUkUnm{<*t8+^l?b{KRhN#&VYt3eG}7{e?euP zhUGqvLb~|fJ){pF(|yVg(ucNmk9!Z04(r|J^$~Jddi;oh^pS)d&*_j3>9}`Dw~ zbPJ^8-ffXC?)8Ji0j$-NsZtwOpv zAt!&EB0#z!As4cASRbRxhLGzCN^-^=<_Xg68Tw3V)tsR#rB!p7W=gBbI7+L?IE0*e z85g(M0n&$%al~|kGA?ehLydXw&t0o$m`y0-Vt0%zzO3o>g{BE=!-hU(f7W27ORIW0 zY+>l>k~3v3U2ljL4E-wUb+-v!DwG)ypU%*uPIf3O z8$<6y$OXO*rk+IPw7F_EfAn=o!Y46-s11ROC1*7G_r%aI*3*ks*}?{msi!aiiEdti zbj|TiQE^R|R==4urk>zNNOa@;RW{Az)ClNT=qj||`@tBt&HALjZhf969cy=~!@QfC zru>(2oo;5Snj`&0tkN4!QG3qn=``j(a;Nl(UL*YN8oQlftNFJde~}8L&nL;yD}=9X zyu+seEwZIp@haPSCN$Eg@16SGo3U$&jfP5Y9{8}tIG=kWyuCXOM)AIkJ*5_Dpq_qB zj!s_MKSV#tKI*h5V^2Cls|&gLvYuWk@wYyU96j9_d)ldDaqH95SJ`ge_IY8}^VK0| zEuhD)T1~%AXnj+ge|n%@Yo6?on)D`u>ePH_*QzHwBqm))R7ve~o~X1cU31>Jj@Och z@r71Dq!MyE>?2XzoY#D0Ypn9os*cx@4(@5sv|7~hdDeH-BE89lY0c^QOqNlLbTyFe zZ1!p@<=(a3P1#z}8go9sQ)ktxHl60aJsl~{Ma*@M-ONS0e>PvyQqH_wBbLKIoTsUzC^C zv)XcK$X4Kaf7&}2e0i~d7ummy>;FrGGwrM2pP1`+U(a<|J+`f0E(eOY{qhpdv_I-U z+~K+QC$8T`UVl^lyYu%yq~7kDO40H0>pKd&%5B^YzEy{}AUdpYivp&C6{c zlC%Buy^QViUw_{AQGEGItGk#WyO+CF5E9`TeC?0=VUHQfzV@}RKl}X&Ht>-isIYH^ zfo!fxWHW3wLS_5$!}dr0yU6}sWdFIZKYRb~Z2wV{D1eO;9DsE&Y;FbsK<*vj-T_l6 d0PY>Mg&&&v4+$ujz|8;v002ovPDHLkV1oZM(x?Cc literal 3096 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 RFu?!-002ovPDHLkV1k(1j&%S4 literal 2563 zcmZuzX*3(!7ET(EUM1CQiHtQdKpCh&hI;R!V~_iW;KEkSJsg)&wy#af*DiI@ggwAqxY%GBRb8 zfZ||jVKw)25sI)I-!J9NmZ79f(l5x4npTa<-8CQk&@gG?pa|o2*S%GLB9N3&5^igP z^wO12rF9$(8ivm=aCx9MUL3v21zX^pPy+S*;RDe?E->ER=%JFJEwMKjh`s=4BgL~*WsW6+O zhi*_FXb7Y;_k&<irJDI%Cu#`fp_g_%`ZP& z17b=TU=-%H9Kt7O)l~=36cq*g7{$f`v5ZZp)Z#XGFQj#qT8=}N$_tAk|LGjFWP44P z^+IUBK|BL;d_7^y_l>3>;&JrfN)jbne?}o`U>dP}#O=fBDsr6-{)w`5uuQHYA~HI@ zt9`O%y?cDqN=?N47GEsJcy6U_57QDKzk@kp>!`^7z#Y7V+DvMKwZ-p;_}!zjVy6oz z$QMXaxhzWJO_oZd=&17m2}i`VM{h)=<{6l+L2Mb4HOS#vUEGL-g5En*dnxy$gSHku z-)(QNrop|#`TLB%w>ML`w%4Q(`xs?pSM2c~Inhk}y{lg@dxCC!#nT|_U`OBRaIbB| zsAKaRx&G5sA%!7n-IQ?F${dY*UBPa)?btv#iYj>9O?3d#+15%I(0n^DeSG8MwIP_&r z$AnLkSmE)Bn6u-=r?v_55;)=UaEyx2H(pe!PqTOa*Uxh(fHW-iNsngJtU9a^uL3Gt zCUL~fgRnSpQ7z=raOf`Q3T4OA9;Fe4pu1y=7e@dCqiK)CJ{WIL49B3I1$egYmFSc& zBq}5&;+_(>mrPx8N6h*%L-bYrSeo8cy=z63kK>2|n@_!1z_^%$Mst#-mxAUG<#Y_cZ&old67Ihupm!tAo#D461JV?;l(yapab+l}b zzqqMPp65zkQTx%zPS>w&a;`v>pK+-61HWD;t70Ikcxq(c!ysm7e+E%k)Dd&Unp->G z{ZrXzvY#a*m`jT~ z$I*ua1AW2r>o6;}v29$+UM}3|*Pm?5d-F$;HN=dIP-w7r^cxIsR1I>Sp3J*h_`H~+ zBeADM=#Gq2*p5tFH*k|Dq_T9L((Fop#O4YpM9lxW^ABTuVn*}aMQSELj}v4%WS^|L zKoWtlquI)pGkTewm{&#m2a_|vDZNCsQiUDz4F0ygy~^-KZhg}&2U_U!$JPCD7F=;Y z(l=8EUpI=}mx<9U381ZECiFbUB}5wDX1{h~M}5K(RV`ZP7Mp#05gugB`U&PK z$TQPM-wKg6aFw4$Cb+iJ9AB^&jtRG0!K4 ztoNOM+Tsf?pwuWixJ{jWilm0YFO2iuafSaYKspUojmotAC6eAw!Hz3xQO5gOFdhq6 z9@zkopW#^sA|%KktH0miuO*VGTX(C#wY?;24#&%zK&8srST{~|-~Tf0W95zSSWp3y z5=PbT2r8n$CKC&vQ^JhsZxYh**HDS`GwMB*Y^U1~4o{)-`1?1J2*KJt%VaR$yNAe^ zhaRPRjWshUPId5x%dwgdN=(lF)8@Z==3aH~(;IO*LNz`@kROn1s2DgEKe z-+qO!2$)kA1bMZ*X`;z4zi$xVr6O{&B7I)X=m!0exqola1JX|a)`gk-+!4Jou}09? zU)Rt3X`+4*jD+Y*h#gLNok%`?dh7jYPQR(Fl+-41DqrzOy1|O`Bj;dNwfGuCOSL&B zduKJ|FxY?V*>9&i;a6y^;MP6LzG=mlNq8tDTRY>D{O&%1$t896d%Kjia-&=@TAOKU zsLI-`WFybMzJA(mV50&I> zJsPTq(pEYby4BoYKI~o)+>et0mrP$0?7i;t^U$;+D3Skq`QA5jY|ujQ?G!GfYP@Pv z@~e$&eft>Ov*-5q<`UE8EQ;8tJmtk>Bc~UQ!o%W*VpJQac)34@c<;x_)maXo}{!nrzwy%%D`zt#1dzkp%RaQUqJPS U3eioPoL?OPVs2-Kzu}eiU%bQ=6aWAK diff --git a/browser_chromium/stats.png b/browser_chromium/stats.png index bcb1435fb553740f0f7c5d6fbc735b36e534b2ad..6dd1264523aef74723bf7fee764de7014d2b5cd5 100644 GIT binary patch delta 1315 zcmV+;1>E|?6~79Q86yJ#0019Did_Hz01r@1R7L;){{R30lmXMeWaZwm@)T-j^^qYL ze+1S^L_t(|+U=c-a;q>5M7=Tp|IN3TrU?lqG5Bqro#{+SM=`MIVOcWH0RR9100000 z00000006n66W@ZVNeA;1F0Fq*%xgVd|8)Pfel4Dg36=cG?VbGlhnGVzBk7w@PtpbH zvzqq@>3>GuZEU{q`Tzg`000000002Mf3?e3lAW@Yt#r=4BrL)FdJgFpmn8)0CVhH< zbb+yuBal<0LM64Uk7{+vS;iLSW%jByA>ClLCZrpz)`WC})tbuT@FBgMYR%grqDdE| z&seRgk4abU)3Enxo*;eB@bI1V?PK?voZ&uBJSX_obV#3B)Av68ExLg8*+>sDf4&JG z-3vatTe2ys_VaXYlX9eCJE7dW!hxI|r1#~_y({mI(e$C6`31g?%{#1*;ml*`k|U6t z%9)d#u}b-;=>0^`6Qqws`MDwre@LH#ax!uTDW{0SAmwzp7^M7U^iH$G43wW+S{2O> zGf;jZ4NJ2_eJnmFyDjya z9RmA8-nSH+D);{1a>h`*_!duqFEfSy%Jv1hMWrIh9x~CBZZ%<;)H)GjGRH!bDHwv!&V`DcAvgfx`(L- z=5Gd3?PPU+f;YgFZSgJV)*qt1=P7OGiq)UYGfS%j)Va*FQbNwE>YgNwme^>X8e&?-w4?Fpe0=adP1LIkv_rA-en$O7Ci2|cO0qH$A zJHWWJ)$D*9H}^Nuq&x1LVSZqKKq=3QmvYShS~=Dl^elrMos&AZd|(xjv2_DDy~MY9Qsy}5z&6{WB;<*%RK8vPTPQ#++oz%$H({$EQ&81;kLpAqSW!6ybt+L_F z`zJln?I7A#CO7Yae{KiSwlaAj7wC2n;oJPtyK<0D_%@QJ2S^v;+q4TVyUju`KRKja z?ImYWb91Dl=Js;$sJXq}rBHKL*#KRupzAqr^8p-{=BJeu9>(?uMKr;WRl)(Ppou#zr0Y3$V7{q59`bWV?r1s`&6haVrlOX4BH{qMvN zyMBt3P8&Knb+$_xJLz`o+o>zO-@6WVGv?;+4UCHr4+tvKM5LZ|+R$m@m+x1WQ-663 zcABYrThiyJp6?INYqhE5X?3%jCYGi7554!}AvlA8elkb4K1cR&dRz`TRL Z@DCPt4piaxHKzao002ovPDHLkV1nnaqH_QM literal 2756 zcmai0XH*i58b;AnR48Xov>}el${p@e_UUJ8sA~&DpSlfD1$WI zn%lfLQ5?8(@Rdl4DJi1Y@5lXh&$;)<^N#1wd(QKocRX=+x+Dow1OWg5$;VzWPAtOSGZFv*cl`~4d>yb7004@*Y-@#xE?J#6%ao-nh^#fb6>CcM z;;rW&cO-)^qNzxsqG-WVufxN4?-LrJ-jH;ZHyzh|38S@cu zio4+>{$X}Wi763ggj_UsIm~{gL97^9%~Mw@sBhW5+qmvZ`<`zmq;w(mY63wp3y=@D zOiukD5X8kT6}Pc*fKw-KHqa}YLdhBcIoVT;6;v32l)siwomBRVY!xS0G=)H1Tj8bv znW~3(ND;(0wV9I**YEU17ATFsJa*@boj&cU{Uz1!q{wWr`B#5tP#J--fKlBX28!NF zRO~8)<@SV^!L#01=O%#X!K^giGZA%0lFD7|hI8?iYPs39zCAl2Yh;;gguNSW6bT8u zlEDSC>uOC}aL^q&h1?WS2`N^gjO<>rRH%(5yXMd_uCvkUKSP`P0#K6Nkj2H%wOiWq zTf0<1q*#75tx*L7Q@*_yOzcoCiJe$^b(zF^{_ zUk`8{z1~O2y86}N1Pb*k>iJUHrUETLvq=U%-WsxX9^dv(3U_o269h)$jSxhMDM zXibT~)RE}QZiCGaffqL!D@?ymp9vvS*2iI8U*(x;6YBcf=xSY$)I|fv09RAt8A}EA zgANsBS*fn{1Z*uv@3SX{>TuGI1`HjHg+fckPKQ4r4*!w9;jzC_k3>RXq_VWaZVfWe zNWjJZb@PnoIHH%tmz!4dQ$IqcGf()tH)KwRCv4rUd>VHug=mKx|7&aKhYlV?u6G_pfA+^lpX*DH3n3L&P zWStpTjDAia#GzK+D|kR=s7O`>csARE_*XH=B#PqL_%*zi&sPBm!N!z?k(`e$l)-hc z7~nQI_1G9(=x>5Q&O-rz?fhOI!6yD*olPNpl=89gt16p}XCb&dTc3lU_BUg2%XFaZ zKA*Wi)4IFFA1H6#V?(ez1L6A=Rhps()1QnkA2HN|+z7H9z~Ce9CT@;w6XluiR$EbA z)^cgRlFRkas${M%HgTU*aB6^Uw#T9U_~n_zaJyw>u5A4HC1Th-d_aQn>}GHtXZHIv z@=^Li5)Rb!pl`;!b$5MYskz5@I&OCf+REpTbxw3Inlb|Z0m59M9ly`S5-?DpEw;jR z3~JiEr2jesW|e+2=EiN!9r1j<${S`M5e?xv^&NbDJNF#o^K&~_|JX%8=iM~|$+0*0 znj>Hhi+U)RO?P5%7qK->O-^`6Q@t}`Qf%}=YTO@AFUap3zsc_X4kGBjw=8!YE=|y? zacJ#BPAm>rP>LL84&|;MW5hAdi$O&-u^FtIkXQdq*rR-G9)YhQ9*f8uGgflPaGB3n za}e&;RaR6}|Mb<;^ApW2YxCwm635bQjK-nw#6z7MVU|@kP52sykvfAp;)v5{eFKd;r}C5!8bgF8{PTbjq7M1QV5|)< z9OS+4S+p>_Lo@?ioK?%E7k|}Q#NS8qgnK{H@kP!}1%wHia^*OB$fdk_4mJCGjZKZ< z$3Tup`Ps+)PTIbsKg6mV`d(>BICJf$7Tbp(>kdO=i<;!Kh1M3 zE5^#=vIj;$tMBTL9zyra9DUh{9+oyS3T@RxMV-WY`;cb;Glqh-{!UU+n~WZfIP;8e zZO)#XI4T&FVa%IuQvDs$rQ_KQTlwa*~gay9VR1FkU%Y-@o z87Xw}cIoNd5#CJd_SrVa(XzO6N(s6D%DPPisv~r`85t%HdeB3nmG>!*OF(>;pNQa( z?~R$)zBBJxoFMp#B(HeNqVr<&3YZimvMM`S#lyO{-}_D`XMG4J3@2q}<-|xZfb>n zcbePWV%abH_1#v4DWi()uyC{V(by!jTP=@YzYl8rWb?Fe>jFty+~k`|9v|5(;N`4-n1U<@5v>V1~nHOsMK(NpsddU3ubC zM6oMXg8}^Z5oGb%Ht^{NisRk1)h?&O3xOck?0YkAp8+onuIE%F_@?Npf-bU=xuG>+ zw5n7%33rTg5C!Nw%S|14%bcO+d7P4ASzeF&RK`ox98Wq*c4JdlV~LmB!L~Jx=mM4} z{y@6u``%q2uC>5F02U9n32Ld#6E30VHDt!M6Ayl9()RTees@T&VZ!HKljHcbp!3)$ zUO>&&8*@WyUE227%m2E4;KcTm*r})~s;Cvs0`h=VwX}AKX;|tk>@hi+4+rS{^~w6$ zl!}_G92jWtym_qZCBnTP*!9M%QJ&lVj6&^yD%>o76w#s>u^_fAVa~!#>b!h0hEZLB z-{g=WC!3Xw%u95?V$$gGz1^F*hh=5F>O711nb*3iQQ^LO*}vHFbKTN|3cD|U%Giy! zU(%;NIQ~;*5PiJdgvIu))SMZ&F$BYZn{={=-fH@6Y`4A`non$Mv6)%>2}2cm>BYk; zz$bF|DM!hjNhwfxVNpuC1+8;#qT1h=X>uHDzMQd-DlQ6VxwQU4jSa}0j)_%$V2BtA@KL7v# diff --git a/browserless_chrome/stats.png b/browserless_chrome/stats.png index 84608bb95d3e180f51902cd313801fccd6109aee..13898ec0266e10e19eabb76b8e4aecdebdb3bda7 100644 GIT binary patch delta 1490 zcmV;@1ugo?8SD#?86yJ#0019Did_Hz01r@1R7L;){{R30*Pic`0MoTk;XlyHz>y&r ze+7d{L_t(|+U=dudZZu>MhW`<&%E2Ibx;Ap8I+LoUv$Sx`P?}sh6K<#gb+dqA%qY@ z2qA;UQtpa-A+EOjBje>Rf$<6YzcecJ)ZRk(K-I&gV^3fio$JTP^U z0Q&y+j^$QpbOHX z>gr@NkdqekmpW~3>f#-9$Of2<33P*#F@bJyGA7UsPR5knDFM2+$(U18#n1)le=0iuI+Z|MFTFbYRGpI-C2OqOMRuZ{)pbr3DQojQF$d>Nv3NCz`16cYo zgbeB}u__y1r=GbmRl`o%m)fxO!2&rlas~rA#_2!@I_@3lCNgqB??8T@d`nWe_x_Mi zvv>2{2D-TFX_FAS0lDA&OCUGCe*)C=mipwHR@od?wx_fK?dQ~)??T@#Vb4oG%BqM(fgRrJzGytolPxf1G*09euY$WF&ofzIQL7WQu~AgU59hO63Aic%ANa_ zKrRg(>MERj1{8tZu!c@@#-5=A-Ch(&Y1N{0r?hIRxJGH!>;s+BYVV7f9IIAsu3Nhq zI+m_@Ju=U9WzpL_&E7q*e^j_jL>#46g~8ir z$r%w!tD4RH(wiM9t?D-OlLd@IX>~y4yxGAbax!uTkypOi0qE+IZ(kax16@<{t@VpO zfnIOo&697;oau=6k7n=K5LlO2UQ|WyY1*t>{Z2`wfaAqGo^Z&4J19UZ~QCVqW=`n^-2i$b--`Y&H@tlKil zG(7Q3Rkm9<4=f&v2hU(Xx_5qNsq#(GYX`{ddRv$cek7$~IW$ zQ+bt5_OImo#L|5tcJdQeKI)KdG3Wim8{`8+58nYlKex&U=r?vX9f#TmG9$L3PnOc% z8$m}sNAJ=U zx+rcw?!_0xe{mb=NQ>BW1UWW)wf?w=I?&PZzWobNe58?k`dKfVv08Y8$UeY}w0ACf zSlhkiyDMmZdhwYCvF>-xPcOdNS5tfOnZW!#0eUlR+Z=|sOSFA>A#(VSRCK>g!%uZr z)V$#0UERgIii>a7`}!>we)BaiSO42?Dt;JDnl5f%f8AUfHvipGuc~|L>Ec~=`#ket zqp8SY{>mf@#0(1r sb)-5sB!dtl_l|Jyh$$2Z_l|neKh{hTKr^k3l>h($07*qoM6N<$f_5746951J literal 3273 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 diff --git a/calibre/stats.png b/calibre/stats.png index e24aade3c3762fe53ef693c69330be1d1eda0665..24bf108574bc2afd08d1b409037196d1bf575397 100644 GIT binary patch delta 1587 zcmV-32F&@J8_W!l872b&0019Did_Hz01{A4R7L;){{R30l>*e_y7RP4;md;Rj6HTr zks%j<1>i|UK~#9!?VW*g;~)$~ksSa3FW)3ha*l&B5Ca0eqUKf$>6EzfTcvfo$oz63*B_tT|sewRDl^7jJ_O1gZL z?lAPh-Mf>GqksPCeHQ=#00000000000M{aaJiYw}CYWZHcR*TTeHKfHbVvtNlP;ha zB+oq_3OUJ4N$RoqRE@7x6)2jm3F#ANYeM>j*_x0(VYa4(Zb`Ur*?k()4P41JHc0O!TT_B+Q4Ze)NFP8ECir*3(g!9z^dTSVu-?;vKNx^R$jxNw4TF22VV@3v z>1MI4x5r3qy;{8|PRGDRJ<9dAE|1^V4BCmv^@!VTbFu2B?wyF7Q8QmYUxDRPAxA{c zx|u&-f?ILY_vw+4-qg(R(BkeLOK*wQXVvRkT73x-xrVOYOK+loKOu^UoGs{qWJ{EC z;sO(^jMI(T`4P8?{yjs;L3*qH{FqvQB{(yvZog&t07&n=L(hC65}A@fNFE_)Lbzx7 z_pCmhak?$%ewj}Wta&0LXGytNN}_;tBayg@>Pws>B4VAO?Jm#RlO4|Gxe)=s{E_|Iv2}mX`}b!3RmRBMypJ zQx6c+&?@03u`T3cdhAwVxj43W2EQck0NNt<-a0s=?NW*^FJ;7Sp>1pB?p)Q6_JiyS$1 zWn-7icf@pPs(V<#m}b42G47gYje9paa$2VNMdPmd4%n?RWJ~UUrnPun1=35Cu2+U~ zUIOg~;g(6y(c_-!ikCCTyn7&B^G5bBhTo7xDJEyxN|H{8J|F3DKA(Gs zbE{$4LJ_%pBn?7;EQevQ9;Y+u*@2~BL;C-WB?jknkUn$9(m13`+M#+d-c^p=&k;EU zTW_)V-;2Y!<={*i(&2nYO9yr>-Ow2>z*1tQK>BFzUCuu)kUo}shx7^6yA&l|IxaqL z<0Ew32kD>}*gcF5^b(^5-FNq}4(VWc-+n=l4|?Q1kT3OrF;?5YAhH*Dp7PEeUZz$r z;p!rapEf>Fz*qgQ_-W&dJ(|?UpDkP6_qbGZw`6zTzU>- zjw_#D{Bf&)Oz|3xFIGI6sql`GA3cM7U4A_WiT4b?;(_Yr^9_xueSg1ge?Bu1*5ylWE&u=k07*qoM6N;tV1iWR8an_0 literal 3483 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 literal 3138 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 aFp_kaZ{c!2V!4hq!OG0mw0I9a_J08N?;tAx literal 17416 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 vPTbGx$BVrm{5H&ate4?~ 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 aFp_kaZ{c!2V!4hq!OG0mw0I9a_J08N?;tAx literal 17416 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 v0h?XKlIsgCw00000 z007c|ibWp$7Pu%vc&tyM2K>)~0u?$qr$G$Xb#PHLA|a;t7w0d!b&XSi6)5yQe z&m&KINM>>=dQj@Irfyx9nd?_c%!KrSiJ6cdFfkL-114tbz6BrBzaW1x^QVYz(go=r z6EjscE>-otOOU=~Vx|UO=(5!$f8Zc})whNL-}^1j8SrJK8K1e6v5{qDr^>G@^{ePrx|uMD_cXZKUUC13O59On#J(0U)kOrgzqKtoKweGz94$L#vHKLy*p92jC;Litjywb4Fu@h8WJpeeVXV*Ub+2 z-f_+VNC!R)IY^IY$U(aQ#7H!qH679+{klUP(!GaPjS_Z{?mvIDdZ|_l=>ZZW^DJmc z_r7a2SfQbxIC<}V1^>}>SJpe}QmpBa&SnQlXR`yO)$B>KXd$-FDP-w`t zM=qJ!uu2pf3b)xoh3OyCBb@9YG(F164(X6R!O0FWPIgF~>_AZhNXH`w*z5pSF9;0j z#M2?2H67A@l8%4xJ!}qH^h|Lc8-o0zOcx8)Ni9(Pb zPSbJ2#>|mJ(|KisbWT-mBC|qY3E%-#ehX6hPAfyH)|49l#eA8iI8HCB=U(g@zzKLh-=UW`{cp4e247 z$w%@*smGeqL}<0L*#Rtq`!+j(*k^r!g_nC+hjie6ZXZ6+1Nh**>vS$Fb55Fn)NQypv%-^`#}BCX!3am;GrpHQAMYYUz4GKDM|WzM0lhRW?$yVq*!rVjQD z-~P4gA3uLfMD72nUSzIRlqAW1Vot*^tDv-Qk+}*Yfhv4qvrL1*vh7 z*4FjCyr53=VVS>|4==l`DrCuAzv2#|sqUFl8th=_@Re?>Nm(L|-W3fwWu|@CqnZhI zKX$6mPhAbQh0N|Lr3tCg4t8q#WesnSpCQsQ617!0`(ei142HA4pt?|gmnBq?Niz-A zg$hz>N@}o!UBkC)=fLz P00000NkvXXu0mjfKg=Ti literal 2247 zcmZ`*dpOhW8~@Jal+CYD4wFhzgeAufLn?Ai=2%QGlfyJ~J`T}dy`u7x^Ql6H^-5+H z*6Vy0ld`Gikjh!uJHvi^`{VcD?~mtxKKFHfuIG8~>;8Q1>q&RCzXXv`kN^MxVr^yV z1OT870nQZ@62vP0lA&M|$6L9F0RXh)-v!FifGPrjSd6u$xpQ>U(v)YzW5a`hqw(4P z@5P(3vHmT}!=%Sz7lo3Ke0XR$|F{Bn==kpC@H8v06;2!oqs8Y&06?P}4Qy*g5Y4+k z3xyx+Rl-<2MAB1FL?ww^F9XsKSs>LDzX<+Tl!=AS*tw9=rcjou!HMRq*`fOk%alg` z9s+3gRgzh$++2Dg;EZ8;rOj*a*vF=#4Kju^O&#ixkS4ossX=+#xg>|K9V_F)Pmw&l zQJ#ghfmils)7wcbZ>5Qh^Z0C<>M7u)PaWVaw=aF!ZY1Moa21~`*UQ=;?~M`9nt5Ja zmi%(=%T$Ra>{g24kLr?zUB|@u+T4tWD zctBc56a4>6tM(&E)o&v;`)Ybb=ynAsIc2s^*Yr+@d=8udg#S%bMgx3QUAu%>Rcl3Y zaA$`TYdE$VFd68wZZI?xs>C?yeoAjDhHMDxa?&4ucZNp!ZELDfQTKaWYj)v=aX%w0 z*oMQ_JYM@gCfcU^K*-7}x*?{NqCT?pT58xC9@4)p>m3k}@Pw155Bn7(@8eow2xaO= z@DRCx&p0UD^mQE|8tw#K&or|Ow?P%Ev#M_b7|YjZI|3} zf!7^CWvKZcl%g`bkchxHugB*2KhNLrz>dJ2VBFqgS{z}{!NJU@{_pE4Vagk~K?hl7 zJIr(;xa&K$jh>E%l1YV&4*kMZQ<@eTpXY-V zv{5r{Kpl1n)M@^kJoy)*2HglmP(k8WHGknPU|XiT@^rcURrtBEQENHC z`+Y6m&5>~Z@;l867Ir+y$54 zIU13~)Yae?qCK$>K7yA2EXbu%ng()20GS~7^{C!jO)%XKs(qtRc7Cn7X~5|$CaMT1 zsl;x_`VW~5^|%U;Z3J!R%^fYLK(s1@^Od3t8eRv*XPkxU2aA?GGvw)MaQB;`6iOZU zm5C18R|}0~Vbz>L-@4h5hA3qrcm^Et|g zk%+0^x9mfelmvEsbD`R$;RXQ61T zd>PD5ts6plBlc*k{$bF?!uO1~g*}iSe5QlvU2weYU&rP0w zwu&Lwk^o(qOxDCeh=MTY8oS5DtN-Tj5O`5>Kz{TU72r1`8c7{cLC{D)49;aH+oDXA4MR943jAFn+d;lh3{wVwcl ztQQL0!202z)=nTTWy;gXGF%O7Yx%0XKt@F<`?*W#DVWHr#=UtK=$rWuiSb)qAhYw& zG@RRD5sX0@!SThz6({U4BM&&|y zbfAZ-jXN%%)dJuz)ZpFR@3u9M&%@!D5?8qB4H$DYA^Hz7a>S8OqoJue$$Ev-SvGrJ zeD4a-UZ>upsa75krC}^SiJwLq9;ua&@%)rvFaaLP9X|s|6Qs~d;-_IE@bcB;l^SFQ z=-V|z0+IhNP?V`4Lb+$j>u4|Ns$zFa5f#1cf^ptf%+&%S#4i1%^QPd#G_?g6oWs^U+$xg8MqiBH zp5w=)CM0&GlLp)WPzmNe8@F_mc58RgN6R)WDoJgptJs7qHVz{iWniR81KM8AEeJ)m zDQZYhc;8=2IKpmS|8}HoYE&cotwUq9x1ZzFIihNFoFF&D*-Nv>gbcCuIq)}mN z?PO4rJzDnl|`-! zG=2$kW{y-_{j z#Xqp8{x_@3{Xpd2jLF^S>?#+SPd5Dr>Z1tp9WYYJSbMTGfCRj=Us-G>yn%@(l_=Hc za(B9W1g25-0#w7@Jh3NvV99ykml*?4ctx=hXAGSSgloZQg}IaNYhUc diff --git a/cleanuparr/stats.png b/cleanuparr/stats.png index 51f3552dbeee9be90e891a341a9cbbc2246c0c23..3c46a278cc2f5d9a80a64144e16f7c754bde365a 100644 GIT binary patch delta 1403 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 U^3;fl=#2!pI(ayf?SoVQ1?+x11^@s6 diff --git a/cloudcommander/stats.png b/cloudcommander/stats.png index 94fbb7a09ada59437e963907ac6684466a76eafc..6d633818d0194eab8ebfc8e4c04d5b833d16ba56 100644 GIT binary patch delta 1381 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 X&iJYO>x2AnKe&A1nlZ)5@!`J#7mOA> diff --git a/codex/stats.png b/codex/stats.png index 485c836217933c876a9a81a0a7978d9857bdabba..5ae7baf3c3d40fbc5e2bffca2d100a2a95d7b889 100644 GIT binary patch delta 1499 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 Q?jIi5TRU1kx9~~&4>mH=ApigX diff --git a/collabora/stats.png b/collabora/stats.png index dd37fd4456fb097209427d72928bf820466d12c3..865059c6d43ac0b5f7b6861755b5dab8a92da199 100644 GIT binary patch delta 1452 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 diff --git a/comixed/stats.png b/comixed/stats.png index 8fee32c2b2999a171112818f78987a1cb5629395..2b5d5d6968d63fc0513e4f7fbef11de618e3e3ac 100644 GIT binary patch delta 1292 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 diff --git a/elasticsearch/stats.png b/elasticsearch/stats.png index 39c0000bfb5a4a190d2ba1b5663bcfcfd6b4a609..c09f6182278494bd19d91f5b7ba38e9382147460 100644 GIT binary patch delta 1682 zcmV;D25tF>9IFkG872b&0019Did_Hz01{A4R7L;){{R30l>*e^xAU_};L3pMTQLIc zks%j<20uweK~#9!?OltO;~)qXAOHW$yVEpnlIEdC3CO)?&ur5=j?E2-fan|m00000 z00000000000000q0nz$$@$>AraN~5dUc)9x*Dd7qdPUQZ*9%9h_r90(X-ov#m5TVp z=KJ6G5t!eb>2@!^=l^Nh0MI#`e;KFg<%&~(qBZjlq-$sWqrlxqWAAGFxyk3(Kso>b z0000000000007_^V^W(RfB}E??2Mj0)xh|YJ~0i_ZIS*7K!9{(bNU|X1ZY8VH1g1p zqg$Cux|*9ByhG;L0J)hU-C%AeNH>_93DOPbX42`HK)SZvOn-=M(g~!Gn43wb4V0F0AYK%MY1&}_lA@?ihlRXF0>-VyeA`8y8 zf~WGmY)S(z@sL{&($7BBOZvWQH!A97bGlm6)9J+RLHc56TA8GiLe*|j)TtJb8#%O^Vq9I(7EtzuUE(2=E^%Eq!VGC5dIa7{YRRO_0 zKP;(L?bh@=)fNktO?oW1%M9uFazjpmq?f98Yx=$1kUJ)w)T(w{`ke+eOpmW9t)f347a|PaP|8f7A@lX*@ ze{e4wlj3d9#w_1q^9Uq=MA@WFwvA1>uY7a)lG~I1IoO$*^x!o*f5L?tf8uBfs{9@P zC|hD&NwqNLrX!)QCvN@~BGr=4Zpg(Xt>ECr6rODu@aJu4S*QEJd~#ctDO`vPPzmYm z_oY(&>Q-VNq|3-$EBur53|{AR@lr@9Iix@04bKOqmOBkQ+iv8)lDbT@- zJNzZ|35@cwULIxREgqPnyu(?ecH5ldKk)(p-2HJk`e2ISe^-2j6n7R0J>C>~YSe;N_BTk#nYR zEtYhfob!mfP|}l8&UtJ(k-qojlU2@HY&n6uR)b;6^A-HtQ}l8k{JqvK=`lLn$nZ!l zJVh_xQK8r9@m;I)6Z=7M)^Xu`zV9izE1q<#D-PeLMhzc-`=)K&EHt!iLPC9;8m+nA zJJU==DoTnqAsvht>cEyath{(&1Jb82(AQ4vY=tt6W^L`9F;2WEJFG|tv|xzC*nnqu zHv-zr(SUW34h*l`8_f8CM&6I-dRnd3mJbMR4ZNN9&K+Ksc2DQsWi-DW{7Hko?l;XZ z2jA`1ln(xX#4!IRK(CfHd1>L{X@Q=F7YMwE8S2lQ8F!*l0f9_)D zoi90DeJ(e(f4NAS&Te1aoH{n2D(V$=Pm%`jirb%az9=-cbGdWCQ(pV>=C6e cdIzN7A5MZ1zDbi*#Q*>R07*qoM6N<$f@Q5!$p8QV delta 3582 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 diff --git a/emby/stats.png b/emby/stats.png index 4e8467807a297da56d05653ea0b64830986427b2..b6d21b4bb680355ff4a16b0390f77b773620549b 100644 GIT binary patch delta 1374 zcmV-k1)=(m7x@a186yJ#0019Did_Hz01r@1R7L;){{R30l?2qkX650y^R_ta>yaTB ze+3XpL_t(|+U=cTMNi z0zF`nCeQ;GX#zc9k*4lU(132MNb`|ZF?78$dPm!f7l91iC@ z(R;<3C!m`d&I@`vMHJqK^CLBKBxkNjtqqT%ET=j)VO~{4p=9JPApQjY1O7+b@EZ*0 z)hk?7x!}^gi;wH4t{l$mFRfAydxuZYVQ=Hw_i(LVB#>(rf^Ylr)XPINf97Q5zJ$Ei z5fqqQc4-ypw;-Ru|7j4p1A5JlG(c~UT<+fNqIO?Mpcki52a%4UGp6^MLcN<8)vzZ$ z`zRKmtB{8EG?*U<9e}=DwJc&Bx&Xb|@&z(-xb?1c@AP!rNp?0R z2%3pGd1nW1+>?ynMsWl^Q8_~z_Sg;*wgWkOx^>_O7CTT4YaRF|f3D<)zyxxmap2U* zRd(;^Lh(^N+_zgu&Xnv5;DR>LcS*Yf4fHMl?Ugjpo%`>Wyu3v3k$QF5`=`%)bY$4y z&&VxFv;mU*)aa1Qp{rbXU$%{;){9yNrw`8XJ-HJ_t}gOq8n!5@wKMES4Z*IihE47{ zb9Q&B#KyBfG4srYLy)q3uLflF2 zy*xQ%uQnLy=Q47m#oAz?pMcI#9&J+sh#TINAh)<}JCGxIiYIWzG z!-H-ft*3+B=c-jUB?unKDbRho_rhJ~fbPh>13h5$u9rgBe>(@H`>eG4zv_79%m;L2 zODt7I!sgD=hkK|49l7`Ir$&5amwRHApMMwD4<)m^XuVa+Y#wHmA55gkYU9I`Rw)}j za-_m0thYLFike-hJfF5L9;QoZ*KeCXK4X zs##<7)`ZC$vuy?jspv0dB|BD)4)%JeM^16us%2yJFw=xg*|-FUppJs%W)MQ;-VyE{ gQ9^-m@2D^R1DvT3!hU4AAOHXW07*qoM6N<$f;rHpSpWb4 literal 2958 zcmV;93vu*`P)005Q<0ssI2r~mCZ00009a7bBm000ie z000ie0hKEb8vpZb+Y+Zzk^(9Enwyq+zQPRnsge|;Lp#TXKz(~myw3+b?XUO^DeDME+VMs^k@Vq+G zc{qAG9Cm%*3jjb{KFeJI03bfX9RM0cxC20g2zLNz5aA904IjIw+NP%z%g0MOh%0#%MR`QT}{8+z5xzVyIc?*ZAeN%4z_TIpkU<#wSp#3z$i-p=Gb$3F<K^#y8fCdrn0MH=99RM0cxC20g2zLNz5aA90 z4I=T*N#h!W}>oT*N%D=>w|rMI%=(2tYHMyomW> zckcaI-HZM~#I4Duze#29x^!FCmtOzWvK@9RKm)jldARroR9&~o@&f=A{YT={B<&^R zjYBJZ%wL&)XMKb6|C3!Bd0Mu5rp_m+59DW?>w; zi>axN0MMAXuYY~}`nSfCU06o$E7t)4>pS`GN(fO}Hztai1FCD50sw0|dU*NeH-CHb zpWWPrBr$V9m6JsQH0iKAfA-^E8?zoK#k@eaK6_Fb`}3y&fD#O6Dm9$!!W8bqY#FCv z`{c>QEI$CCG%cN}WMRC_o?kbHHV%N26?mpnA~V-eC9DB7qs%jv5>dlFq_Eg~$f5zJ||Kvfvu309w}enMxM6 z1FAH>0n}?~vNu1U-Nbf=s^8j>0FYg!P49kyN~G#!kUZ6VeN(ZXGyicYu#o3fojaTUDtaAM)GUJ_gwfNESE-yC-5eJ@`04@maf z8P{{4{1iZ|-aLCJgxK<8ERBh_*)Z*a&~Zi*q!g~-+p>@H+L>FX6Ei+z^X~kjyL?*{N2TnJ| zHWiYYi$J}I^^Kbj_aWBleFHUO6#)p-HBC>aT_xA7Pt_Y2oj#{}J;}`KFAl%sjplx!XbG#IG-gy{5M#D$$ zgge?ppu$=~n;s*K!GwTt7M%j4fKj&BHb zgo`|K*N5S2BHU30d0;NzesBNI-u`V4jUtMIdhX!}cVuS@ZW#k}tblL_9L#1n!Hq%? z?!W|7h?Cu@1>ug(p>u*QC?edMErS#oePhe=hkM+4?u2{8mW;S%ggCY=f4J+Vv>NWN z*)(ZPtKG--1y{Ty6u=1&flZh`Pg+7NLf$GFueqh|(X!+VQ`a^0wpel!8A*ULeLf;9&4b&)p&pl(p zW_fDX0|8K=f)1#LTP@rR9Haw)EXl}SWNLh;4tECW0BXUikn_e&XOIq{7KFPInGT>{ zrL<-2(_>biEpu^v^XAz*G95s@yz}sL(-%B8r_7=Bp64FLn`iHY5HI=%D?Aqfl*SnD z9+d0zWid8ko*vz0v<_giB9EhUEk8hG9YB*xndcrW+{LoK5Sb33VUd>~2&_Y_vitxC zO95;_`~#{U^a_+)V(mycSPB4kpP9ap{m|&7vxDoy?tE|m_S2)gxoZJ{a!rSOfh(#H zvEKLMMgM?43;@_ow`JCxkiNuWcmC+*4t*E^Sjf2i!1!_P%MSoRy&@k_O`5G_HvptI zb3irvVbyWAd)&w40Eoyqa%X&PQN=4$evwodqU72JRG8P=S7KVS2tnJg zH~=`wzx=?`r{sVt03=r8HBshl5`aY7O6irMUfsAT0UK&!r9+v zrzZ`pFr>CDKVR2ZZ~Zs2Q-!(S$m{>0r+e&rU zMS4G%-=pjmhFr5HR)r$j%i>yLNNx5ve0Xh^M-~1?7LF;L<&7-diwt?Lm?L-PvGN{L znRugb-09AN{3_HplCDDUBIP}Q>LSa38RcJNWmuHG!jRhhzL9k*%<@Kds!-oZx(dCE zjPgb{US@CHoYOa~ejte6>El02$fNP*uAA0DxK;XUhy9FmeZg8qs(GfCd@Y zmKl-$08pKo*)k+M0Muxr=RP~X5&%#*b>vQ41^^oHCkw+zaly#T(f|Me07*qoM6N<$ Eg1>s5qyPW_ diff --git a/emby_beta/stats.png b/emby_beta/stats.png index 3f6f92ece2478d196f48cc1255ea466942d5e119..ce47c91f1a07e6bef97da83f750405f927c9e718 100644 GIT binary patch delta 1341 zcmV-D1;YBO7T5}q86yJ#0019Did_Hz01r@1R7L;){{R30l>*ehW8~nq@(4WrFp(h_ ze+2JIL_t(|+U=cGl56};LO|V2e*y~V2CcgQ-JW?*Ll-obS~zl|d=QE9_m+2@ zCL8|{AJBmgbPFdpfo|~RrW|d{fj-p9O`laUbOHK|CpYCN76bJ8PHu{8VBdjm@WK|* z=YcM)>E@tIVh~7^Ff8hLrn|y?I?(5t>09$IB0x9j$O+J=cjSum>2%~IJNtc9f45aW z9rf(Jvt=`H-hoa;4(M}2$GqEuE=~x;;>ZD=H67?cN0UHj%f^}x^y$6#iaSq0pZ5^O zGVD(5-HIbeKHcCU3J3K0&AX&V0nm+k@41-{^=Yn0?7xX4M??!<~l`+awEcZiW zmli1Hvc1z?E?g&8{-+lnIvX|^BnL~3!L(!|m-aGN$eUsm`t!=;Dt@Cv|jM3lhupZ*kYx_!H zjTG(W-Pi6b$9Cklof*TOd$oI(_iU^DoNsp6GuE6^A)HOZUfe3LzE8g)_MRH!UT;F3 zu2}>7$C2pu-|TRCYSlMff68>Hx!Ur6FcQ7)$(bAS>FMr^pc3GfbF>H1(- zpPb2Y2tnaYRP1sDd4(mV>av5lYadFGpV5t-x!B(Ej!mq5Vc4xMIwv&`1it(gUB0dV zqCYJgZ{oCqK7HiV)BWQc`!5$Pz^P4K{N7f$i7z|6b7<@S@y_W{e~;n!4b$q0vTu`d zAxwS4#ixQB$IF!eDi{4`eQ8d#+R#T$^V0)#pIF9#|{aH}rEWm;VTRuDeL{KtJoPY{@=XPhj^9y+MLwV=@7L zj+dxI4}t#g?nxA)e+gZ8Q-Z#n>4_{`vwV8=*x^oZt*SlbAHzP7Bi9Hz%tv~wavSI@ z=Jp=)&uZTBLkafKo8;4@r`v}z?=2hyjJv&vT*Qg92OZ;X4?4{4L5Df1RRna@VeB2~ z7GI?ebY?ox=YQTi(9Jt?0`xh}d*M^&fIg9V2f9J;U6i0xf4<-HQfm7JjU~cx$j$$1 z7UZ03aoqs{9gS++Pp$Z9T<*y$E~~xTa%jlb!Aq2PF8lGz`dwxHuCD$M1xm`_-aj?% zPuceW&x>4b+g2Z!10`90*@TkvNA>3`EGu8oeplK4uIhK?{h#yR_m#L!AMQs^u0Wge zqFr8;%PY6Pf4={7%wIO+@255&w{?hS`RDf(%j>saw|o^Z_wlOo!alhC$dUCX;Bcg+ z${*EVGm=x~?{2?(|6~iKpl34dTgN~)Z4%iGn~kHg{qe){NAOdt literal 2858 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 literal 3273 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 y_}?|Nka{Q3PWFSg|GMSlPN-T%Dz_hL4e z^11uJ)>nN3{Vfh`F)wCcWXj*8uzCdEH$Fdqy`V+X|Bu!;VX_k6vSHGg z{loEoX5I$D-;GykI=Mv^{^C&fFQ4JNx?#4zt?H1~qqI^3paYxzR!t)C3;+NC00000 z008q;cuR;w%@^1Dgsj0Va~JP`Go;Tl&_z}gi(np|?jc=3Ur3*)lwG!v+{##@eCy?Z z%T+=qX0@a|NS`nh6VfNl#Dw$-Gco1FEr;~JGBGuXXwt>U?tSZ>Ow4C9G37)#?F~%v z_~}sHRVJpGc=;{{(g*Y>V#2VHJ~Zj#)#*OcVSN33E$HE^NwwF zY8BEmFunxF_2Nj39G3Cmh;|E`5{$<7ukJpS;Z_O5mg)W9&bQT7c+~$`XRIeJb{HXv zVp-Nd>WuFM(|obrq)YX~`Fn_e7nY<^(%k#G_7*$zPPztue@L1?WWuNK7}+!FdT>?B z1HaeCHo~wyXTxgY{th4m5%{^O^{wO*vcCtg)r2F~JU@I5!_%)SsM?@}vr6cvWTrUt! zNwVdvy0Rxb^h>%HP@uNhEV$m&TG{>dKC@x9K(xDHBsX5GU(!!WCp(CkKC@vpe+bN# zoU@6RKi3+OyeUDC*|3^@j>D;Yu*G*R61h;iw=nD(tC}8oD;+h9Gv&0(s#WPR8}_sV z(~LQ%HKsqcBvtc7BO>mK%x+bL4EpM~!969^W5_Z@9s*KjMRoBd;s$-^0 z*_9x@I>I77GJV=fOKy>lnIrer#ZC*RB*dt7TQ#xnSmoTy`)QVRPZw)JU;13F*Bs_& z-}dI5aI2(yzm^vCrBBqltD8T2+@QPDL>K(@8rFN@YiYso$q}o6u9^WCqj7FOf5|&h zRLPMGel0ENSp~{2Cv#-3=vYxz~H54db`-pKzkXqN)JI9y$j)KQ{-V}5$P0?j$RO(&B@ zI^_CvH6SeDb;zA4;QUDR>5$ux!1;kck#lKvx_I}b!wQ_2+&SaNP|X@4l8c|%IO+oD zrFSo}&+a+nNr%lqx`T7m_I~e@n{@Zglm?_cL(rd=ve^hw#4r}0{-KFx7jtZY|q~o0Rb(D4v(&4;gL++xV4(F|l_sCu5 zq~y*?pq(wnu90r>$y>MHB|GVQNvBZ0UU`X?{Q~*|r|JU38GEy7FE7?_66-f<^&b?7DgSu?q_p3dqhotEZrkQ^{h)ZuubU84 z{;d9Rg>mI0+HVru-&Fl3zW+nk`@RzM)rb2hCsZI$c`0393YRb3{`CG2asK~Q?e~f5 z+e=Trbh+}s_X?IT-~O`YllTg32)xw^vb)?R&q;!2WblF&1Nfdw#3jph&>(~qcfY>`g hyaQ4w0OB3Ag@1@U5vNou2n7HD002ovPDHLkV1k36YN!AJ delta 3758 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 Mbt@CRv0L1K0cz}@O8@`> diff --git a/ente/stats.png b/ente/stats.png index 136252c7777abe966d80435e2ed89d85139fd2a5..a0c5181d941b676978f1a0344c5d126c874e4941 100644 GIT binary patch delta 1559 zcmV+y2I%?x8LsrD-~C^YAJOHTw>8+n8f zLI@#*5JCtcgv_tvPR|)Crm5x%K)t7>(M%D4W}wdp{S|SfG-m44jR#$jE>%YzMZ|UF zqgwk7;`Kp7?mUj%wY_(SY?ybTGb0D|OG3xI&jnqKFb#_%2Xtk+(Wk>4=o2$f z^J2($N#^wF6EaVD?-hHVfIgbm<-A1{n~6H2Yy)dqPi~}vQwe~s$+*`pqHxyF09~VT zKeEGxmag2mAMxHp(4nr#xTkSN{)i)gr`xzQBX>PnOK5ev4*k{=S`|X8*EH_Qcsecp zn#P?zeYVjW(8pnA*X^MZt6fZ=(Hf525G^xA`CbRC>C~a)$o;x`$0^wZ*sX0|7)eX- z3_N4RtFbRPV_5e-tczXPYgb}lmwvpMhHXV|`=qsf_NQ;pd?(6w&~vkWsz}*?Xzg%l zm3VrCU0)7dbmD03XlPZ4r}ww()jVrzQ+;Tac=}Oy-5S$v&c)hu4kf^m`?|Xxr*6+< z&Sr<9&3bVj6;2$R9kd{S=Cd@<%COl%74nC#7Rk!4rss)~K(Cz`wWrpgwY@)Q8n(06 z_54b-l(v7q?C=}QzI4cR-9cV|4&8(=J1FSPoe}>hXQu}6We2@8F=Z9%agT*BJ6vTZ zru#i`i2@K!}5 zKfH3LBlLL5wRo%Q-SwXz2>h%IU7+V0%h7S^&lk2{;6Px%rOUS_suw$dP65B%O=ZB7 zxDp2f_i^M(C#r`qr3#z(fbsODY7V)F)8yvsZ;03QeX zYI~2H)y|;&2D)^IzMQ*%h%7kJhIVEARQf`0JnX*899sF zJ{xp5}U>brZW107x7wm0?oNH6z5FTbq|!5`gUZGD5sFi@%!?1zV; zd+f&&CjAWWBqn`-4>!doM?cHjJ3MAVylW(xz%Qs|4w;t-emGkScDC%UdjWG($S#Fb zm+}erTPs5MaDj-QgJhr5xCNegk5_R^{3Y^t2$w@+f+H{rym#+qH!*gZZxJ}EwXEF*t6pH`53k3@=h2ebXF_l(Z<&IR&f7R|y> zAYyVkc|(aBrCowROLsC2v~*+q95PSo+lu^~#@{l3 zhd?=G3o2h`l9e!urgej!fqS%Q(*5uz0&@vOJZ8>4K5fs*!s+BC`;?g!|9OaaOW(-~ z+`+VzLt%m{7y)OUAsZn$1a&mY+zdj9xp#zlM=YU0n0GXm{s6JC5it<`@NED9002ov JPDHLkV1hvy`q2OY delta 3312 zcmZu!XEfYf`#ng4sB_gx^oSr@l&g2ruIMG|V2FfhBMc_|lu3w75WU6asv`)))iNZJ z=-ovKBl>8A=rQ=uTJQhUyWTHnoe%r0{p`KZdCq!jm?`iiI0G#Jp!9rGC0UyXVy?Pp zplcbNyE#Mf<-SAPxf4>zaIrw0Q$&g%Ev}p7^<#vWWc=eY%(3Y2k7Hv+I&+BFQ&~|I zY^`ELS4b%ozW{_}eX&&leAI+K^8HB% zLgWzv-b|~*Yvq<MAJXy;R~>G-@3nCNKZI{7Z4zAJ&6#`ThxW`#g@5wwYFhqnusd{+J@9e^TS?J z73pBo(exj8Lb87<4Kbnt+?8eTU|4?4_HLocWst2=8QH2h>1U-c{AF`Ks-4h1l~{TV zQx?;*1m7wWX1!hpZ~E8okd!uEb7Ok^$$i{F=t*UNkd?jGKSm7`5OL-0tUv8XOEV|a zN=H8cM2jlyOP=er(&?b4?8#$Tf_@4CLyHdGrg7%$(LzTH`P^3BrB=k=litD`-pkFe z0@z<2XrW!NfHx(4(i}l07ejr)M=?f>Od0D`ptsE1sSB5)mlb|g(1CBF1-)sR+52Uu zY{@KO!StXh2FiYT2{@ZfqHc`S2svu*HU+qF0CP*} zk-^aVCko!Hw^V;(J}I4Q94+Rco0uCGUrh_-A$(Kq4Xg@!H<%R1SE!zn(Orcw;jqRG zsfT5rQCtCg?gT4*LE~wDxQ-9v>WUP{zo5$r%P)U@>2Ve=pd)zV(e5QW9m)BPB#CG>9D#(8iT<@26&F#p30JMz>Qz)fk_)cnrjyat=Q7U>Q$wv?U4L8#|8975A+FWJ53d-(&|1a1cKEY% z!caYFcm$P^v*xA=x>^alyYy(HYB>2WDQ?enV1@YW8Zg3_9-cQe9Ir*25E&hl!*2zZ zj}EhmdY{alnN+l$t`U`ZZaDX}1BG&--t?nME7ZV~` zTE$l((t>6i>->1oe%i~VkfD{gV{L1XfR6TL^K*Gau<>|5-=JC!GH^q+Q>ObDJbcfH zW765P(i`uj$zR|*RB^3`?GQz%p$*bAb>HFR0K%h_CKKm)>i$+HWhRhAUSgMAG zKbZ`L)5WfO{Rycr*a#KWBq}-L_3ZxnD@Wa>hE?d1yT#0=l6g#zHKpqsEV?>=te;>NIloYzw8;7oWAVmW}`Rg5j-p2+ykg~gM# z&hIxoX4Rl|>{gW8H>@y^Wn?*rCy3YoBZZ~f##V4P46124`?sHfg`0kTj%WGt-eNLZ{Gs9&2 z7g}TmW}(yTI5+gTv_)W%BE}LFxd*t*;>VkN62=q^g~|QilN)aP3!5|h8D`g85_rFN z)lJi2*p~Adg{!3VSsjyiD0R({ug^NAl4He}p!tk4|MTk&>W)9?snJc@g=zg4Qgf`| z#7|tP@Ymb7i(sjaH}x3u-pf?yX|J;duUwr4QR>4?WA1kL(&MigQTQ&Mtei_#G)>fFGQ||dp>*|xHbqK0V z=YfflN=+A2c0LOt!pK4OI1|2()Hbf1>ah!_mId^WdP3mR7PVP}d0*ACr_U;Tbn|=0 zpgmW>EP2bx)H__yD5UYkC#qQ9ho^E;$Hd>1USo%ge4y$zj^YV%?2_gw<|}2io@vod zd{Ad6TfjkjjB0v#CxFE(W{yaK%vL1InUuc9Od~mhc7hqMEX#2%T)}nJG9GTmoFJTL z;#}g`j>QP?mEidUcSm9DBsmUbeoKwU=P+;o746xL*@v1O%_42x>ho5@#yF8DSd0TT zw!CJP)POE4+~9ejY$7Eet5R#w*jdQ;+wP(7fPug*_b>UmnraG|y+vrlUIBmSnxMXf za$i#h{b;lwo9x$|2SF2TLE~&e6A1DbwTJ;-g~rV z?Bq`d!E^tb!*^O^x;aP@te-XGGi7t_P%6Urbc#qa|K0?ME#0fi+oV;iFrTm!b}yy^+ITp=F2tZ(2hszle5$mo5~JqsDUM}FI?SYywKTXcOt5G^1|Thwf&lpmzr=}FlD zzl{ix-9;vr&y<|Q^OQ@fj;WT4sz>ZhiWbz`cQ^%FS$}}Yg~MBZiKR6N)_CDbn)tzz z7c)dubw}Sf>{H?7^U>g#1*9``gh9xMzq0Er#n2Zbtb3Sn7GB=|9#3k`IOl`>Bi-ne z#6O=ZquzO_IxNYazzN70JsEavS?h&AN6K#PQy^gI<6b0c6?R+$gci`m7XN+ci$71-u{|SP#PN<+xrMIf7_&XK2;%A z)FD$1tMk-_$8QhAZ@j0Bn94-lIb@1pRw1Xuh}`4b1Sk64=QI(d%%AARP?b*_2w=LF zts+$!E7%N(3^wt*;;vZppDLGUi;J9~IJui&DNqycS4eXL(-Frh>6}(YB1fweb^( zC?}%_Ex=yu9X(fPBup5qHpJ_;+6>|ZNJa{BAv0~WW`Berhk2u`5%=*g`LFh-y()-( zomUpe-acs6No83Q**mO;3Ox@Fl+xSB_9zi^MEoYY?nEs#a?dP$~alFkn z{xB!R>w;UwQ+@8egae0T3m?-HGd?XQ++fv|Z{Yp%FwwQAQu&wjJjSj(hP2`ylZ!A& zd_XZG&H*|dwZ~MQnZ>rR^p7^lix;0f^u%!M54;IiieIlr6i;6G?4c#svsL<>(fzq2)z%8vnj2CPyr<@F{8zv8#V&XJZdev)kv6~Y5NKe2 zsMYV}Ul8^(#=5&Cm53~dHf?veyoUaG6ZHa{fZCgd)bBtzgZBr{M=&*4wa6tuh9U5vbKHYN8SJ! zKbt9-qM&HNUA>7bxF{_+xXZyWOC11~rscUt1i_n81-qAS^bwr(drgO|H5Y(E6%kcx de+kHMLr%o|3Th@-i>R{=xMyf=P^IS_^?%PPc@_Ww diff --git a/epicgamesfree/stats.png b/epicgamesfree/stats.png index 2bbe946b032502e5d8e3adce2c57bb93506ab4c0..da3c2ad02701c0747eb7437ed2d2aa075a00c184 100644 GIT binary patch delta 1585 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 Z3|uXCo2Eh|bGauPU~%2Xgm%p%`aicU<;nm6 diff --git a/filebrowser_quantum/stats.png b/filebrowser_quantum/stats.png index 2abda12073505b8885ae095c7e9a22e49c48b76c..79b7983305207467a33db204bf6ddcb3df7ed071 100644 GIT binary patch delta 1356 zcmV-S1+)6d7Uv3(86yJ#0019Did_Hz01r@1R7L;){{R30l?2qiV&vku^R$XJ9FZXx ze+2$XL_t(|+U=d&V&f_dMN!QEfAcw$#tFm_bF~4j{m^MTRdBP6ByO@X2qAvcYKmJ`J&lj?P_pyB%a086W z{KMO2_4@b4_=WuS(>Kih4iMkcIA(mnf8+M_4|Ipw7rj5;p8tOJZ*ht5Hwny->9ZlHEmada{EBxUNJFpRVl54*2wbvY_UL~c;%&p-~s-iIAzoT3B-@(!CQB)BnBhDhWXoGDvRXKfE& z9rTU7O&9d8$Mk_d9&`e^Hs}n_)In!(rVct&Zr4JWyP-47dPgM+xe+>n{GOg3IqeXw zN+1OC71z_fe-|N;FPq3ks}cx-e980aq31iagU%Gpu&Zp*sswfG>11w06eWn| z@3E=`Lgu!zdv85tBaADXkt1`{2Ax2z3_2U#ltE{3rVTniT^V$I`kZs`#lMbE*H&E$ zpRTN@{ zbGKZ%wCX`evxtYWp>-b0f(kn^)Patc_w5ZLKAMqxJl2cE9>6ST$EA+el3-nGSAWd` zTem}W`g`wb`Ru5JH*9mSM1GelJ6bz|Bx+r1SAWfsmh1lB;+9R--+caw{VXzP{7)?U zGR@k*l;|nCf2OTUy7kdk?rOR6lRmp{`Ta!gcX`3L_1DYR)*-v&+oZSp{4UA5eaohz z<(f}g&aOL}$cdlYXWoAyYcc260Xs?a5VhCbyyax;($A{Jb%$<-LxLcYmkHLAU>#}I zl(+hw$i?&4<}FK2%cf_`4B1$MLr_Pm=4KE=%)KMr9y?+S1;V|fQS=|IT@V5$=B=jy O0000DcekoR(z>DECsTgA_-Ua1`? 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 diff --git a/fireflyiii/stats.png b/fireflyiii/stats.png index 7d49be8438e90b17dc1d4ac8fd05449f8d671c94..5a59a874671c8cea0086e268fc47ebcf0fbf5c28 100644 GIT binary patch delta 1551 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�^DXLA8%q3tu#7XEADV2(O} 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 R3-W&>;Ewh@TyY4W`Zq?_NJjtw diff --git a/flexget/stats.png b/flexget/stats.png index 54c49be30c6e2ca9fa373c246d6708cbb4340495..efc02359745cb5c39a3ea3684108c54ae4ae4514 100644 GIT binary patch delta 1313 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 G5b_@wulYs* diff --git a/free_games_claimer/stats.png b/free_games_claimer/stats.png index d16c882a5a0bc5a3126a5ab16db57e9524c6222f..7d7c581bc75a7e713a5562ed6da36e43234338a7 100644 GIT binary patch delta 1680 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 Jy5x2De*iD!38?@8 diff --git a/gazpar2mqtt/stats.png b/gazpar2mqtt/stats.png index 3641fd94f67f4cdf96dfa3dcf2d6ac7652e24217..84bb3eb4a729f9feac81e3800a88bc179d7b2c0c 100644 GIT binary patch delta 1572 zcmV+<2HW}08omsW87Tt*0019Did_Hz02NS7R7L;){{R30l>yY>v+}e|;mUyNV*rh@ zU8uE@As2rI&q+it z0000000000000000002M0iyTI*FV56=R1l)x)ocd`5!I+me*(@_vf|n*JSwspx%}j zgQo4}O!fK#(Vy9aa}$>SB6YFlmGSjnm|JXa2>gF+MvQ%y_f^stqozNDfBk`TWAQoF zZw>$e00000000000D$oHO2+Rh71pNQWhVkwp`G!*8ahaKWb1GFNRaM>b1ITffEM)S zo@vcXodj}pNj7vgcQyEc+@paCO_1)eLKCDrtk4AM4l6XNIwuF|+A1`sBAQ7jkZ!R; zld69aBS<${p;_-8q#IsXMIgt6m{t#)a+FCr!KdF%^^574)8$u^o9aW0D9_SC z`WI|B*>TF!EFJRRM|SRDdqqwN>G zUIqQj=~vE@Ne>|X4naRgb5XLqhxeLDzodWPJjAi^nv#MoWOSma!yH)qZi6~1s;ntw=Jpa5qOZ!?Y{*GJl#hlSu$?+ zd^hJ34SYJkls|6jRLik>vGkapWSifsqlhA=r|D)7;C%;jj}|RGXX>7dDB`o_iO+wT zy5k)#DG3|Ugy?;^Cy&y`#5QZA>)9B^q(?cP{0UQc8OVtfcIHryy56mxBd3M*JVmJ^ z%Muo6=;ZLg;yH4pgz_BZ1{#m&(~Fj_nDi)^az3YiC05g0BPZ3FGduNe(rf3)!I`Vj z_pTbbaPK*CaOO|xdsiT*c*>@NaxQ;;?+fI#lCFeuu1TAV#ThM>vpIDKq)$N)CZtx~ zan9q^&8JqgD$aSFy7AO%*5l3@ox17NsyfPb=rWoNU2_@fJ!TxlgoR5Fhckx-a=#=x3 zH@kGwbMnghK(8)b-o4Gvd1h^*mtmvFu>FF-|C9?_Aw8ww8!fTiZ+&QIxu9Uuott@s zsb3*nHtACUDzV&E!bOt~&MN{R(^nPXB1!KJOngP~-#-yp;9fS{`xw59Z0_0CBX8HL z`dwePCVl7?bBT#>zKNWAmZHqNhcCG$n`_}IT3^Y&rwyPg61-9joPM>+)Hla)Q zji5~w=`@)1m|)-XNN-59T_b&V;QtL>FdiI*QZPFBhB)qxbU+KtK8y`utC|GVyL+$> z(gE|@euKvcH1b~d_4GDZ+uk6w5AaUfhfuui?Vjr0H8lS?_)33+v+j4zKMsD_Pt!a2 z`nFZtYCpYycz%yQwBHVd4qv3B`(>9^sk^4;4TBGTgAW~pAJ+TpS8V*{KSb}xuEOqT zJl;R01}E*io72GN^ND(0-IJujhwk=u&S&L#eRg+wvZcMPeSh=cx5hN*82qs2-At8J zs|U|Ohs(q7K<#kKaMrxiJ-y$dExqsGe|GTWdOu~VZt2xL`#wC_kBn${^X#IP{l_<# zr_GDqZ%;#M?me{j&NBE>y}t~)vHL4U6aXqL0I&|IUYh{`0Bi361ps*mq~L%3 Wnh_~KkWwH30000G=Wop<^7{o|f{&;6XwIp=#nXS=WOSQ@jl2(kbGz;0?{cn<*R4ru3hOy_8{ z@@)G$ZDW36^1vSeI0pZ{=yK#aglNKmso_nVkizXnWX7ctfssAIXI}GL?^~L=3xL(6 z24=n#to|i2$=`jFnAEq+m*f+L6(OpX=-Cr`O~aLvhnFsBGO|WIw3kk1PBgsSra%|& zvIkp%KfDZ4zqfwpPW5)%W^Oes_cSV@EOK)@%KgWw1#5}1O4B(DDo#p=iRKUCqj!L(x`rH>P| zGksL}rA^;RGlSB&*xP;i^(zPLixJ0dVM=&R^|W3~<1uFD6otVFVMYI@$bZb>txC?) z9;g_e>%dgkTZ6Nf3l{EgA$_T`I3E6ri{nM+>+Cx=fg-e3Y5o6x!IFMB32x z@jPBGrha->_mTqu7zBFdKXp#t%Aw%s00oc$;d9rX03u+C4%n!3f8ePQ*VJZ&?C}k1 zfkLl0; zM}+Sc0}JEHe4Z)C&>o591x%+mcZAh=ghHboUn3h@<yrhF;)i*tg63N{z7(#o2;lWc~cRS3yK)%SGLYu+u?YtT)G;ft~v|6TMGz%jtT* z95A+u+|>2rgIlLZ%M-K5gkN(R?TS)%=<94rX@c*?bTsRg+&h)zF!3#m@|8Oa6dlWw z2Oi&&^5LXT@*z9<-Pf4Ej>Q+VV?&J~_%03m;E6g=lm=q<0*c|Nfa1}dhp|Iza;2f& zQ_kWKc-oW*(ytHK5)UvIeqscpXtQ?u&X{~fc1O)fGR?R5qFMe<&2IMsxd<_ryqn5n z&EkJu#jx+M#Cdv~E!woRg8ys-s3BbwWl1sO{5Pq&mxHAi2guP`2i;&|;E;Bs?@ivR zQLj>Cu!*uC@x&c0*3LeBi_j6g`Wym%mY{tyGuar*d-aL=-bP$Cd+}R36S?VdZS|7Z ze^ReF9iX=*(96l3VtbsIkOERn!KI4Fe}<rcr*qOsr3L zIzD1dfw404>jsx{)$!VkV$Mz{eNM^21tX4pJPpH}xlXT5k=ZVun&)!T{PI>E(fFm^ z-4t+ye@XZLR_D7Vmqrf5I01#Ih0}wvG|t`=BsglNGxLssP=}fHmAFjmeK6b~qd@g6 z;d(@wmfdF!cr~QO^(k%a0C!}e6w45+x#Ptz+QBMOjXAuq@e}n=fj-lppD!PUcJGo| zo%MRps5EP^XPa4kx1(}9Iq81C6RvX>L|0IG3Y{Gf`@fzYg6C`xQkEg74g=vy#o3J$ zIX_DGVk_Kho825{==lvU%5Z#CgCng(GbY%ed_VZyyaXD_jpuMGCsj08|>>M%Ui9At-qoQ4(G#J>6255(%d^TKHn2x!}0QPWhOGm zS}OXYMO~zu54%;+M_AgJ&5)Lv;)v_s;Wx~4aO4;2OrS($7NMi^T&M4P&r^_0>G^G9 z``84cG1$o;YNCwT=+JPFKui?Gv`;zh(1%)}0(m7ovcqMRtH#q%!nfz&-G!58D$8(D zCdtduwNLBGjB_@4&;JNiXc6aOJ)es?S4u~;wuyQ_+pdzwf1vG4BJrJ>PAZ`{d8?A{ z?_}9xOH&=sKt!$~87C~=B;$G~qw4Jb+yezs#30iMgw=T zC$n11-p~h-SFXltgIeRDkewSerkD*UIeYiQ@>1-;ylPyrHcou@t_Y1g`NdhKyn%RF zQAdP65^4D!v~%NBG5U3&O#psnf{O1#B;17h?M7|PbmR5QY_CHq<_Y6`KOX1xjM9=z z!*sBtMGD4xGh_qt({9$^rvu@1)ETDG#CLVx1>6`GqsNvnf%Z}h1qW+sMwU8XU(>xN z_;K4C;?h1Hl<56fwI?hpo3&EqX=rx?D6bPH>F_F?K>FV2Ys7)tF&7mP*^!-f`98IG zs-0~NtJ%%ZaU%($uPdNFD?8g~xRFjOgC9;fi8eBbA|7G&vd7#=ZyDN7kTA@kYPduh zef&h`4vAI{UCMhzXC({Z}4wG>U-9}T>_p*)|rj4bn2`%@F5`fD*;RbO^wlhJBIOpCZxf=>n{ z?mM>GtR9$UpgZJm)WV7}m*QFozoq8$Tz0+fI@e*722UD<6KN^-P=t{H}0Oo@Cmz&u|)?OG&dUi%vUEMN18Rf^EdhmFc$|o0K$Lie0?|QJ1;7M$YS>lqb}62T9CH*z$GAJ5GaYPIEBcgcL~i=O zt(bn>Kc6$Wet)Ls5!;)8T=a!40BCg-?`<);3q_mB%P+`^=8-icOn=}2D(8&M6R=t? zEJc1;)s%Upazk;y$eU2V!vASq73^p4Ov$W{ebqJYOHJf1c?qPlQsQt39F;S;XSy=V zB%S{0m>r}d-lon^+y}0^VkriQ-S_y$MKD@<|L8(rG_9EjGv136OFHpNDYUp5%Gz7Yzv|jn1^TQ&&UY>VGb>S84nQUSnhk9_tNp+N zaOayv*1y7~&eMrIZf1q=7k;K6ec77Qi(GWVe2JjU)K_i|@ zA~pEM0zcTWK(^8jBvPn;!f0z_MXp4q7KeX(E4H=0$m!m)<Wwm&;e`qaX*KOT*`d zCUp`+h*;MQ@7?~O2j+~GNW{m06ReH$Fv;U%@3k*yN-3Man?d18azg8gT_;U)oTZMq zthYK1lJVnB(lyWDK{DnIXw$J9s6`zHF|Sjt-un9OktfwOe)^UTKhLbLAu$bdS?YPQ zy5||Md?OVxBX{d3*eg}6EMhfavd8;^?I%)2FRFx`msr!{TNn0bUF?J3y^OY@4Y*kH z6n?74?-Uzio9e_czVtgpf^XqGtW)=7WxL?d z<7}3@`7H~Qqn~xZpV3>?QwvOKj9h5eG;9jnin@B07-zjkti%o$b@(0?Hxa8!-kzBf z4Q3W;2pCEV(Pz)bIj7dttlMZR-cTXBULo$|cn}4f>+}4#B0bQjVQXvv#KgRf)W3!@ zp#u`iUbLp3#ARs%2}#4OfMM0{k}At4C(xet3qXjHu3sfh0rw&J YH}cuVYPNbT?SllE8d(~`^dH9k3p8iYivR!s diff --git a/gitea/stats.png b/gitea/stats.png index 67370335ba9b14b4bd2112175861b56aa6ea1015..cd9ebb7d2b1062f3719f6be8a8f148173cfb3fed 100644 GIT binary patch delta 1264 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 diff --git a/grampsweb/stats.png b/grampsweb/stats.png index 6065acbe76f87de027ecd42a6e3a7352893296c5..ce072df7c8adc184047bbc41843a6a0c9d855a3c 100644 GIT binary patch delta 1395 zcmV-(1&sQM7LE&$86yJ#0019Did_Hz01r@1R7L;){{R30l?2qjWaZ<#^s#AqAdw*# ze+4B;L_t(|+U=duma8BPMLEjG)>8AVmkdcz0mw}!u|j9@i%0p2ft8Hzr7ecJ%PK|tw3kD*3;bw zdp&#g`{nEAK!!TI=6@gK`s-$R{(Ox4e=xVy(=pl*LI@#*5JCtcFfPQb{*z%?;}p;bZ+p?ExL= zK<^<`6X+d=YO2J95A@rFY7S9thOQ9Z!`3^xI8;+fr>g=XgbJ+Fq105UrZN_Ef3pz* z^nT3#$HW43)6f;1(?igq-uUd1x*ss)?Durm>D@u!z8wSf4v*Rc-I5^(^zMfD%`|~- z7`h_Sut2vvyld$b26`WcTqGJ6=$4?%MZ7aWHwj(qb^6=!jvLmn8#cJLiW?T^4A6m& z8i$TY4(ANe8_;mbde1oX1oWnuf4i(83K2wMfqCvxKVswzFwYF4AR6}0@otxg+^~UDO&D_boz6WTIhdE*S_OL3X8R`R4A3nyPwl7E(~UA`PVbO; z9xtL{Q_JLWj3t2>M}H^gS%#d5hE2duko_-G4g63tMlNW`iD=lJH0OKce|qMbhMXMH zum`*ESQh(G-3EK7H0s<9duY5aIMn;0bTn)%{Yb}d*bVb{^?T+pbIzw{p(<&OP2k;0 zTP!3G+>NNX`F#xg;0cVp=LBADe)s#Cla!$P1YT#D-#eY-hE2QG>cT!Y%#Y(~haHRs zQ3M>P=Yc+ieekCpc4$2sfA$;lRfLaX_XnBh9(HIF`Z<&HS=jw?mtKCx$cCW%CSd1b z9|wP~4JOw{ZrHhNHv)U}63&-E{v#=Yf-bsy8*){*F|Tz4`C;(&Pp!7*hHV{qf^Jcl zVAhiz?h3sTOKqp0-~XE?ML(KKJgQIh?wSkC(R7m}vV-KVjfSOrU+`pyD|5pF{JMm|r$@uuTaPuC5LhQi!_vFY%?%q!2<%RahNXA+ zlswP_+fZ)U#PPmGTm!IMhW1=@ zPMT1|&;|4kAJG-ge+Nu%Sj&&-Qp62QZrHx|)5#;pIvwa8JXIO!?6LtJ=*aN!9tej8 zx^+V?5Dp7;^U&Afut4u%$tIxpH@vT)L*0lQ_Qy3Ca(LtrzISBj)GE;F=|Jz{)GE+B zH{@8S8y(&^W|;%Jq2V3q9a`_I16|eUAl;}nH>`hmOe>4 z$M!=rK5CbHC}rfwpS85;zBk%K#ihi9o0TrH?Sk0#Ic4{>CQv-_UFA2ZcKs3aJQy+a z`L*i3d2&W{_q8{cgQKbr!|rKvm2jNzsqfZ@&iY$cP;w=@@A0>qzYaY zU%u<=ks+TAfBh=4^@8X-9IsrzKJ8a=)vZ7O%lXkDr&Rp&@&N1eA=|5JGK)X|bG~3M zQRaeB+4ZH#%BSBFpZ0kDF0cN~FGuMH#S#K9jQSrvJycvSc`L6cfFJjMV8)2NL!hjZ z<4$I4O4OgaAm_90Yfxf`{bPiXoLd=cN)=bU`1*oXMTJ`~h`mFka+lW{7jImV`juI~ zD^`DQ5CtN_0zn-$?VCXe;d@66?}!iz#PE*pr9Xh#5421WAq4;c002ovPDHLkV1h}_ BznK64 literal 2825 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 literal 3075 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 CkL~;b diff --git a/icon.png b/icon.png index 3bb97a92930f94c850c0092d75b9268ce7d619ac..0551d9efb105c6f346ef62e0b4f86ac9a12729eb 100644 GIT binary patch literal 5431 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 aFp_kaZ{c!2V!4hq!OG0mw0I9a_J08N?;tAx literal 17416 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 v3MUf#F ze+14+L_t(|+U=czlB*yLMHBV^zxlnk*0m}sC`ib;Guxf+l(P1e5JG|?2qAS>>4Z(7J51OFy2FG`pgYXn)1zfM&`m+_f;tUdf!<=mrtZ!ox;3+m z9pAHLLzTIIx~BU5(`ImnPqRs%e>5sUZ+N7y=X9Nqc%ZijT>~CuIQGuRX=jK0e?0Zc zfy9w(b)+jxHXJ#iyKv-y?$D9LyaOHRn0KJ#$N{|#=(;uZS*JG(UDxaMWiXB~tP4j@ z1?c|fbVj;2=tt%q>J4nTtgSna9KjiuY^{0kX*Ex%q`Le`6hN;`LpKnS^QOM`>Q0e;;1lGjFXb#SV43ajE`$bQqRmhkD$&*Tax|Yjqmt zK(E8POPYP(56PH1g=G>PIiNqcHhYcjzPr4^c9a;&NUv`zt-E8OGp8FFf95y1Z>h63 z=~53fA44*ijCMicCZk13j|;bRjsNBdG8Oz zU!-K-`}QP{BUf}srF4Z0=~4#sn<;i^Z$hWo0pm`wL-VUOjvv8uFBF^sx_K{-J3DwZ z?vZzP5Q-hld+xD!cKB4de^BgTdqU^V4(?WK33ql-iXE&waq;VPrP#r`6PIvj2Z|l6 zJ8>LJ;LwR9BInSFqu9YG^QZ%XfnGfKmHl*>GpDmwD;AL>N6u_a=0b%FDbUuLCyaEU zXPM4B0lGKjy%>cKbrZ;Ab7LrWu#bF~l(J-#{DJldknf*Fp+L_)f5!Vks=A#AXU;Td z*3ae0G19Zy_2-ZihJ9)xAB4LqH%az=_}j1s{w#5J+47K{o%A8H4nZ3teU+5Dfj%c}8}!AI9)zy#`eWkfuFB^Q3vFYh zw@z9J&Nw9P8@f}{e{N#$8-AEu()Lf6+N25JHb?pt(uSsss@35Y#s+o`-j`;FK3Vd9 z0Qdt34eh@~Z}g$@uJm#uJnn_nIGuLib#w@ z)G4{2?x7BJ)VyuKVa7)mx$hiEp`jZvYv8oWRipX0YNwH;fAl1gJ$+8N4!nG*qVzCBZnkWjzp-xL$8X&z_#VHRS)sR%Xmr%mD)}qwqVjijp(lwWrMiDO z!OuSsdV0B$7Haf4IWM6rP3kK8A56WdxDWlPbp3n0;M8{U^rlAd7vyhL@S?^67S}4J z&EG&j-74tFZRxLTf9_ki)kx(;qiFN6)#$LNf)|z4ReDe1mxb*^XrF!Ih%CGXT~8HT zjYLi~l9Zk#uBU<*mDJUxo+P3tmTYXnA*dr)u^EIAv3G=dN2E|7%sZ+@{{U!T4!140 Rx5NMd002ovPDHLkV1o9jlEwf4 literal 2991 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 diff --git a/immich_frame/stats.png b/immich_frame/stats.png index 2480838d05c774317f8cabe42176c9749d40585c..091c6edf5478bc333eca6b91403267fae952d4fb 100644 GIT binary patch delta 1384 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 bI6MU=v5{R@ryq0w7=W#noh1eJd-A^lBiR%4 diff --git a/immich_power_tools/stats.png b/immich_power_tools/stats.png index 53936e3178b39824879911e8e5e37559ecac05d9..1fdbf31c83593768495841bfa514e3c9e2fd1221 100644 GIT binary patch delta 1422 zcmV;91#$Y67pV)786yJ#0019Did_Hz01r@1R7L;){{R30lmXMaTjSug^4eo)w~-+i ze+58EL_t(|+U=cuA2-b8pG0K&=q-+H8~j%~$Sd4kYVoVi-f7kUzdz_pBV{c=J^SO7R z_W=FqUY>o90=--48hI;f=}`AGd2pTjYCu6C*Quo|LpB0Apbrtq0e!$g4)+dppyS?w zP9O*LKA@}RW(T0VhpvHfx~5mdf6|&=26B2>>;d!UYzV9X9*UFb#YA06lliW+$aW z!lfefN$Nt6q*j%LOCtmH-0yl;ey@7su7RTF!MjxvT^r(HeMErw3ow;{+_Wc6lRLmn!@8YL;i<}%47)SZWZ7;_a(RT_ z=^8mF!>xPVdslnTtfKJ|Xn#V=JM?}-wEA=JZid!FlKzZT?6JysCtMzlQZ*#5%&zek2!AU-c5Fl4R`)1?e1qivGf3Ke{c`+DD4^Ao&z~G|EWrM zaiEeL4Mh)8ym=4qy(n~O`-tAPsHGR|UfQlo8~;k5uAJFGM_$CjIK%_dhwtv84s_JL zZ!gf}Bahspef|21IKB+{h^#`PQtMFTa#bQ{gZ){`BS^*30`)IqoRcZ zRlU#aT2;FXI$4z%PcWlMpwPwEv)2@=E8To&x324YCzAb3y;Ml$q)@1o8mn5MpI4=7 zJHb$qD`!`x(D_#i6-zf?G?3G6XdiMKA)An+Ymu{SU^P_ATGd5M4_1{fRjMJr)p~i& zm)dD486N1ds|Xd6bfGd;yS(CB8H5mX?+EvfSVDnt c@2D0110F38Z*BRmM*si-07*qoM6N<$g5TG~Hvj+t literal 2964 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 diff --git a/inadyn/stats.png b/inadyn/stats.png index 108be300b3bfd221e48014fccfbcf71cb685cece..81c7401b154b152c439aa0136602a3f0958bc6d3 100644 GIT binary patch delta 1561 zcmV+!2Il#J9J36N872b&0019Did_Hz01{A4R7L;){{R30l>*eXOyS_P^2&he@fz}v zks%j<1;a2kaPMT z=>l4THt~4u$VuKxBvZ|Y8oZ;Ntb>A0NFT6Z6VeAP*o5=}3pVBKD}nUZ3O4;AqDdD> z@3CN0PUjIw@3LT1+->>}>3zEXzX_K+f-}G(=^ybr5w|n5Kzc`{%h8`8y=O~zx`YdV zzh(!P{+W(hq2on|I`h$lb#DnG)O0ffFZ#WIY$RM#HQkE9i|R{A-=SP-;syj>H>X4Tr@*UgT;6Ok+Dx@|GfO%zc;`Yk42+tk_Nay3(W z#R&{VMBgR#u+Yv)zkPXT$(7SPasya;Zc(qT?|Mh>m~=tZ zn{ed>M{Z+zzOdld(076}Ys%;H!UE}ab-l&}>q)Kl7HBo8@1$1q23k$}@1#~=!X7IA zrZv+4_LZs* z0J1IZ#r3@{(l`4`V>c>)SeN#~uAJP*p;Van;#Awbv=`R*vy&*yW!Ze15qsx|5Jy_N zwJh7g#k60iYv0V)i$Fd-_GFNAiJyH#JEn2u*2K<98&79HJ4Z#&_5JA;N}#`a>ATlt zJ=SzBQC?2p^;x#!hX+QT6R|nrQFjIAX!@SCRktzbKau!Jsqs`>y_1#=o zW9oX*9I!Fc!>GDmbXGSMdoOi^Mt`&VIt@fQ5Ua&PQ-GlD?~lPg}<(g7Y`a*HW5TU`!U7$=wiZ=Vz-bEh|ZHFAkd8dEB|+DXzV~`SYth%}WeETXQv2F(*bYZ|gdKe`LKB z`1Zc-H9zTSUe<4DOz+$8>kd9&@4HN$Tl#69ed``bHR#ChQ;H}+FX0&g>tN8>3;=-GJ3!t6B@_U82UhS8)@Bhv;Et5d00000 LNkvXXu0mjfA4MO< delta 3575 zcmaJ^XHb)Cw|yzn4H13J6FE{S8MsARQDCDN>ZGfJhBh zno;%z|H3Ox`Y#dPx%)c|3er4C-1Jzw90-=Rm87g*IinW z_;yun+qYAGoWw@L3%JsyETS>u45B2i?6yKA#yBfTMH#YvGIoGF=%D_I?Jcb+#6{rd zchJP`QC%wi8Z;aLTCVzF0RRI=KG6lV5(C)*_A?aVU$I_cK*+e21@o8#4Fp2xApk@i z&(w46|3RO6He*n$dl=Ryx@?eD**j1u<-(ONs;R{0Ml!tz56T5B_6Mj`CfsDaTY5}U z4q~CKws!2-p#B-HdHg3x_)A1NH(+JqgBE{VmQNO{=wtzhF0|dPKi6pAOHUKm4N^OV z#6eu?9XI2WdRthJJ>5_JA0bz^|H6tvT^2&?uy3isvjUZ+s(8z?t6e(m$%;%EeYrlp z*alw@TL=KpRo}zk+7JY+#+#M`wEUd^iX{m%_kcYQa!UUfHSl=H#`34Vf^_weL^au1 zCBpdpB40RW}@}DgZul^ z06ZHXXfrBREuOhHKYN#`no%oK!Uk|Ad5?T2IA49sK5x$pBxcVBJFAxef?ozMWC~Np z+W>!YH~)r-9wy~`E>iVi+987H@N7lWKucXXHJTat?t)sGbBo?mI+|Eii%LgO*Sq9i z%NCI+ocUZ9tt=LAaRK-j-Q7Cf??J!cJ@jWF`AhBSPL5BMaR=*)jR#-oj~oVj%jQ0D^e!aWl-71b3mqlBeE|lH8BoVyl7hv zbTOv-S|rmJ;T&>aQPMH~Ia6Zk-3+&AR0Zy|?~K9LWp3I|HNa<=9msAd%=2ygcERn{ zEedo2Blqvy@M5&GnG!s>JjyPTGEgBK#CP@vG8dWaA~jw>&Poilv8tEtx?u56{?8f8 z1t?p);`#9cko+PiFra>dUI(SXLuv+La>jY>0WHXa+uI>- z^0(ee_@KdUvXUu|qJiW{l4J-+<+RP9Lmo6hEzqiiC3pp2e?2v=`xPNH0&Cieh96aD ze92Oec>{q|GIKKXKGWEk{*11GK^_{kPKR8goCSm6j-tK7PS3y>jkU|uZqV>gJ~!3u zba%J$Wpz@o<>nz5+f>ZPc4pJT0?~uxQQiauY(am3-J!Drh8MGo!}6`J>S)VHAJmLd zFHA>Ay{C@OW=B2hBS_4}4S!38$*Acm7N{AuCJ$tF!-FB3Zq@F+QS4g9Tp@B-NuN{8 zz_Qesh+jW8hWryM!txaRy;hq?NblD4@fMmRstKfkyUm2*zMjfL_jP(i)>gR^`2DZ zcCKr4=FSscotziA&sut8ovZ1J2m%;MTD6^s*RpgT>rDNfWWA*NRv9xPFgqI@l1z%A z)f#YhV}u0jN`^lRI~8w!`_^O=8yimBbQSIP!$LKyI{ta!!F_3-Sk5PwI+!fSV0FBZ zI*FzVsUQ;{&lsajT&070J_Ow&H(QAh`xY`;HW+0uPZP8AL{edn&6L?jkn}sJ$+DaG z72X@m|I=7@rYD#ja~}UzzGESw>xiZ4%Glno!)&n)eGWGtoianlkYW!0)RoutsAbJV zT4k>0t0#r>S39N!!Yeg|sNP6e{tTg2s!cqij!$(g$6{KQrxDI^JWtw%qzK0Du&DJpWm=E#bW--H;=Tz@LJTzx-h2wNDj`Nyb{(r8%k3g$ie{P6l0rGY>r! z)=}eI+QSQcFk;Rkn55vPF6WV~`}@SQ2yRR5L2VM~8CB(E&lbT#fyEt$T-A*lX45j; zg9K^}BP}Y1>*XXFbO`XS{A?Z?om^(Y|Bn?uMHH;|S{8VnxrQrNyX!P0Q0>1}*c5FG z8=~-;P`tBu@UC`ESjhsIn_RjldUU=DITw3eLzZKEJ{XuTsB1Au?J&~vi)cnO%-+zR z5Ex)SQk|hwFXu^fB55jG*M9jU&&U(cSd(9N5s-@v=MZ;I85-3Ype8b5A}^=Tgc$^k&Y=qDw3PMF9nTtg(^XAYEswSrHQOADX1n%(Ah*7(Mh9^5_fC@l=k{SMu9!)A5)pIFjNUCV&p@oD|Zar8m=9E zH2$W_l^U)001I_JLkai5p@zWZ-Nxi+zD1-$9nH6Gm9M#F9#TXvR^OELqfs@TY+{dx zi^^QBU>;K0^NPymr*b6iA9Kpwu|M8fF!Mpa)CS|7M&WIHLu0&D{n*vTTm%E@H7~Mm z=1`O*XYy9Vo^vdHE_%8D>-+obM)!Z|LWN;^93g<`)&DmbCE$TN9wp2;b` zabU}@&g)*0n-C{6wfAX0SB-_lH2cJlnEX8xzY5`8ulbB>{;}!4N$Y_)35LE}_;3j;|K;vAe%5O!! z=9{P$R1qb}+X%_mrxy_LBuZiP>lMV!m{MAH$7zm`=lgz3?cfAAdy6QZ5oY<722ah+ zT?eC@ReL+Jm#sJvT6ZIwVXPwlSeGY7B`>G%1n^UcJwl784+w1RWQ=t85&hGj_tde& zz^RZ+Kkl84$#;Nl=h8hW<9G|F_$&M(vR)pX1&v3OBy@^jSLYPz?!D{&wT=}kc(p~X z%`Z$(*E}|BLF~uu4h%#{yZs>F2E2sVbvIR-oh*u)iYuu}i|Zx(HF2!B)hu|n=DTE` zQC`GNGJ1==QjSnf7BZ z+W~bk&srU^eny#MN4Nf;Iiqs!A?S&3_E-IHp?u&o=(m-s#I_Z9(E#n|$zHlbT_>%y zih1FZ$VpdYx08a5%FvL#?ZERS)xv8!H{5Y3@|K)RQDL%YrD&Te%F@j7&%E{Gse8rw zHT^e_1ZF7Hs&6KfPory4>KImM??{FhT43LmF8>#8CP;Q8neMh+FeR`3h_}cN3}x@4ewvfv(^P9o54hD4vta5-%n66}36g)};|OT7j&zvT z(#7|oYPNtRDG~FJEF+8ZoqvaU>ph^B?hh&?S2YC@JRW4*dNC^OSDghr{5rUdda-ER zn8loda2=G!__4fG=|NtVV@kz|SJ|Ork|wST9`@Lvg86CZb z%6Ez87xaw;kA>a-8r9<^Fi}q0jcwrd>iuZgmz5z1jZXQl-%S4^$6K{OczVU0-FNrs za#aOFW%yOW4rGGUE`HM^eA?j+uh}KMQpV93V+{7x%-I=O5>`h+Q4pQ%vQ3d(?%u} zAcmM6hXOs~*L^Cb1!V!ibqSZl+3mgr0W?ZCnE}W!(pB1Up9K?Y;XRVE2Dq1{6h)Dj mZUC6Tp-f$W0U)sFl@0q}E>_j%D8?5LFu!hXTx;n5_x}LtGzpym diff --git a/jackett/stats.png b/jackett/stats.png index b64e70921ed4a56092f25e76280efd0fd3f9ec69..5049411ac855723f35361f30124747d9839e850c 100644 GIT binary patch delta 1184 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 lJV@xU#_>N{0)RiXo|ni5sf& diff --git a/jellyfin/stats.png b/jellyfin/stats.png index d19e7d981476749c2a20ad4109b3a8eaafcbe76c..8d0c6deee582e6eab7b455e3f7f002823890d4ad 100644 GIT binary patch delta 1212 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 MSUFlYUH47>8x9`@<^TWy diff --git a/joal/stats.png b/joal/stats.png index aee3664ca2a798ab0e9779be47c645e8af862c8a..845fc5024aadf7d223be5a272c71bc89a7d26cd8 100644 GIT binary patch delta 1542 zcmV+h2Ko7`8=wr3872b&0019Did_Hz01{A4R7L;){{R30l>yYWOyS_Q^2&kg)r#H4 zks%j<1++;-K~#9!?OoB9>mUdeqW}NP_io$mCaD^=Q9))NdN!x7hh_v36rBSA00000 z0000000000004llpu+>&YuYg+9xD`02|>+kZzB3avTN zZ6=|wQd6Y3xhdft@{tQ{+XU$blm8&y;I>VWZgATsU33l7b#2?^B#KEVkiO!!P09vc zLHd&0Hp$&)-$A;;&AuRg1=0y~`knCG$+hwVNhg<1xZDwjwMO-JCVAT=YI-c6epn=b z5=g&dd&}sv=O9kgKg~NxzhXM16+4D7h4%XR3rNrDb*P=F150z{>PRQ(b<=Q}vFj}t z){nXKaO8g3uGj0Rt_NA(JCFL1`2!HCGoWW1+3jyCXgACCn6 zR-)?UGKp2=Vc5?4JFWCzl zgC42XrQ+S9?0Ysivoz@}Ff2GdpT4-Jvt60Y&gm@DvGgF_8t0?zyHQ7uP0MA|k=wj! z!Av@GA=sA8;+*a`;sZ~;)PiOcW z4X0Lh=hGPiHW8)Sk=p`72-XgNI|yE^jhxhN9d-~Ki5ojEO&xX!@)do|q%QJ07^_~~ zAZuhP49iFin7i45kr^;|vx5@OM+j=>W(P*H-`vd(tm&vc964*84-nSI%?_;Vu$33M zPFELuXKkfWB;D+w^nAMfEX&|Q+Ol&-8R>p=+78otapgxIV?hz=3bHJJgNJF$VTY8a zlgL8*L7k%aw(rzZ5LkjE=YQG$;ofH(I)%j&Jo4#R)qyg#f;8%Rcl)j~IP*~*C|NE@ zo#Q^nzAGd>rr1$-J$t9L&Y1`41(jkVc3h`vACOenM>?0*chzdz`%miXNav#3-B&)n z?MYo5>0EXv;>5!33MO@bWu&unR_<<{LOKZ~-3;e_e`+p&O43L-#CccyPOkd2!>qGx z-V*0s7j5S;VSJeq?=!p z=X{*Uu0Jow`=W1uyZSwc2*StV%R)o@CRDH7E9_fci*)Knx`%R$CA}cc)mVIi-nQQ`;{zIb&y zMa>I@cXh(M3gNr;{(g&vZ~n5#+_@`9F8;VX6I0y2x;b@h{;a51)jdfP-c`5HbH1w> z8hMOd#9Y?CzWL*;KFvo6->rEyQzaE6_qS@N#}6Hs0$1ZL);!Za9Y<(M@8|F53g55y zC{uY&&*s@x&+frlGNN+@VM;YPKSrA;yWgL(D(>Bt_C7@TUcJ8+y0H6}O%%ZL$#wv& s18c`-002Pj9e{ZUu!RDEc?YE6AKy3-XJCUi7ytkO07*qoM6N<$g1|Bg1^@s6 delta 3489 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 F@IRg=)R_PP diff --git a/joplin/stats.png b/joplin/stats.png index 2f5da98f75463ee5f36e3bf9255042083f38c6fc..c6ca7663dfe56c48387ecfcc52a2db334ea9a79c 100644 GIT binary patch delta 1591 zcmV-72FUq@9MBAq872b&0019Did_Hz01{A4R7L;){{R30lmXMVP2u3R^2>wjMAnwO zks%j<1>{LYK~#9!?OltqogfS(0sjA&d(X4#0VN7T!tS)4+EVJcB!o=>=Kufz00000 z00000000000H6hE^*}#=1k5!A0K+uX^XJ#dpO2v5HtF>JGK0H zO!=2$`gnSfK11XNiU9xs00000000007!qrLbrP5*2enK}0CQ;5Absl0BS@di!~c*@ zfG*Ss@8lrE>JQ@}&dj%71L;#5`aWM!&ApB5J+fgI^Sl)%R;w&Q)m@^7ViHLGy- z={Oz8DVJdnZDY3qhnnVgDlzyMKYnMG^LkR9lPJi{vUbN6aMcL<%GC6jRl@m=w}@zUC1s{QGIe7@1%+|6O&<=O0q2NoI!?=IBNgohni>cXK zZa7?+MX$-wCpwfsK+Jl0_=0~JTD$nF;o>whtY~TV9UzZ|aj5G@`Ww1%vxDO3UG~+& zQ(zY*R+_r_y6ZyO21Zh=$ca}tL7Y)(>EijGgN7)zQ&}zP{uTwr`@u4QD-||7yoP~B z(&J59X=syxsV()^IevsJR+60?UTfMzm9#tGc{Z$-Kd;!xddW^W8yz^;-1c)&S}8m*ae; zidNSS(vLG#nM#!i*ItjWZqa+b3@I@fBE!rL+@HQ%a2VGy9Vj=T$Q5iiSZvh?<=03j zH^9AYp)?EmUciI$t0z(9>LTxxVLcXJx5}_CdFITWr%MHoAiTp>+WnSngPhZbK<+-$ zgZ`UU^jdnS{ppy0$@`JsCCgU6Asnzl`Zy=;!oAc*-1sb35+6KIy>l(K|IF9qq?$Po=(pp8#E$;#OUtkuVP!neM?l zNC(XO_DeH9pqKY#k=$ynwj3I?4e%1}oy$I+?B5Cdce4I>8kDr}{(U6xpYrYhH!81| zZL7!SKuNY=zCua+qyF<9mbEW-N;RedG6+ zfBziki;J6o5|7(HsAc=--!*LC{{7pw7x9%l5O_5w(9h#fnJfuBL#q8z|B{iMYTx_) zn}45dgB0nR4Er`Ppv^lGZ7*`8T!XUqNBuit|4!I{>-TTozboxuR73%w!U6#6fNE_9 p003z30Ngu(5()tB9T*G$0EKc91wsVS-2eap07*p#PDHLkV1fx!4S)au delta 3578 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 delta 3257 zcmZ{nc{J4R`^P^s))JzS?8(x|{@BH&>|``E5kmGYvW~KR&|~YVOc_h|VytDCWiUu& zFGBX6&zwOc=T1HMg%``q3y(MJmEscPFu*@pil}CSyNlw4TKGh8$zpMWF`omN$~vv;0}&xf>p4j`gIQwc){0COP6BqT?N9s?AfZxsMww;wY_oc-U@51$&VzCB-i z?*BKi4DPmCl%P*)Rtx6sSHfy!?^i+C=`q)J_+CvYAtrcChXNoCVN=J_J|oA4H0$Hv zngocYXq_Vm&P~gNuQjPZ1e~Qn-f>J;s2Z_1(e(GDGlEwScDp@=T{H3lgve9!X^7GQ zP;s+t0N0f|I(Rhme@j_xmdTCWv7z9nN*Vo@%Mie-HHuIPOT;=fG(!Fe0G!Op$>vuG zs&(p2fH1yAjp{wuG02h)CVy`Zl!hU4ft=v*iocu~Z3Gb{BG(9qwyCYwO=&Jv zE9SNJe~$cQ{#X^>00udGhd4>8w&2?2C;zD>;_jdJZOAE-rMdW(+?^`tx;bWe|AETL zxo_V2lQ>7a-4Tz`@C9>=G=GS3;wrl-&t&w*^$f#D^Y5Wx%Lh=qv62!$D4!CtV|3;U zt=VgKOkwJEnsaQ`jcx#Id78D~10>UY;b_9%X!&v6_NFxezuGZNR=-iGZU51UfU5-} zf@55IRJj)a3T6f3x>NnB>kdOIOcDIQo`qm8q#&)tEpxy2)3sC^T=GR5%n{h+>IDF| zC!Mzzz^7zEjNGouz2j&sE8u=OAjPz`zbW9ln*ce~Z;i-GS(m0mXH;EOVEvEWi3<(ou_LOB(GxFg;g}t*FO$>55-CK)w5Wrr0Io* z1`1HR3e_$>jVXR?mbX)D@x1aHcKSxdCBf-&+Af~JQ|jI5_bB&d=+xHOi4I|*oI~Tw zNCIOuX5}^PreXt3815yhP(@kArs@M?AmcnYH<=`q9PyITvhLVc@Fc4S@I|9 zEC2aZ@uCxAhsX8!aQP)qLUXXBLE<63AR?(}*MlAC75@>CB4nezJEy^(pQ6a3R9D89 zhBpOfrDtz4DT3Ff zb8+(*$0pLP2*=G^lk9?YP~ogof}Iwl^6xjtdOA0}wApOEyhPP7Av-mY-Y`XS9JcUhZBr{rP9>YtV3XZ_?W{$;odOaxTkBCN@Frb6E-IqJ&gg zMMW`Ak3of(V0#V6me|eJf-2b6i1Igqg)7~?Ch>o_GNNiy=r;xddpPYcyi?H|&Q8=b z)>Gopty^1nN33l^UAyc6XYA*v2V!>5(-l9zAp(9XK9)Y{L4P0L0gedXsj=|GR%@yY z`+8>OJZ)$kB(ss(wfNJ{2Ng@+%QX&?N;mo;sgq^(6UV4UfPYY_Xz-(>$510xUI7J}<5 zz>puAq|R(_Fw5(z@V$Yl8V(0-9M#x< zuWzR9?@IISAG#7ds33@(qKQ_7gX{H#5f2E&nlalhdX^Z^z`+NxbbmR7*L#z0V~bjQWLO*QK3TV5Y}Dt~HzWgu}| zLUzm3E}kL-LK|XFNAveWa!-WEd3q|&e^S-1H;@z3;XhCajVFPc;YGufQvRjOV8 z$-Cgj?Sqfu0kp0IN}_)4NmcXF;&+n7e!v>RIE_-UU#-Y^cP;vPl7IFH%#5CDFkT)$ zx289bM=sq7O9MQ*l~_T$K@;ABLY_AI@r}#~+rrHoRI-x$+xJ}$Wx^~s{<-{1bjo3f z%i3l%ytGFR>Hy~|KBRdfp-sxIoP>WekBP#9euNCi_m-`hMOZOd1<}PQKD9Rs)&={P zXjW$V6)lofu)aU_&SQI|^1S7mdX;nZ?%CcqA0%>QZ*#BLOVxsTu-cmyk1aLNh_|%d z!a6mrzho{nkx|3c3(!;Pje1+IV?75A_0HR=M$zWak3@=XzKS(t@G&~yP4`ZCV$8

      kK`p; z25za%#8hm&OvN40LLlNoR7em`Bobxrt#xhU#BM*5jnXu_C+mp9gOVUOzlqv+V+k*}25$*H+{@K$K8V+p*E~8hO~rJ|5uVs5d+yTPW6y}GGWY7V7BW#5ckkX?!|;Yx%R^j1Wj`EW&Q8e;EKkAtEewuebR+UXyEQ*HeMbcwMk`H$~HFbgA`)-d{l+A%azO=Jy79HXq!`Dk# zazNnArC{Mt*FKHB&<5(ZUd7%zT@&zkJFO3XsOA?Nlw-J1ub24?XW?Qc_$b((%%DNV zV%gmfrdHx!cmPrAFp?~SX9FtmL0417@rlF-(Js1c(Gj*@{F>O zd9x1Ds_m1}e$h%EDuvGb35Z)9r7W>$qmQJQ`Z6eO3;f%As3-vrvc#|(*UdYyxk0&v z#O~(9YZ6Ie(rwf{zha%MV;lu9YhIoqW)TkW@3*6-Pt6)%Y&+suAn&I)CqSZ!@D{6>@;Y!>KVT|FO zjAsKpOiom;21_H^aHmgL8Al1oqg4>mVV^UKH>GB1dCyTjIJzaw-TIOFqp2fe5HVr3 zXYhe-%*h40$6!Oc^1b7d_qT1+t=fOqPM_%GYn=}aMlbDubmsaj#L>{SS$JjEd@!6R zS*W_~%TDf3iQ(TGZHB{KS~Se}vMY&+9(x2um-QuO*58bP@U2e*wgCKQ3>iT>8Gr%^ z`US7I6o%8iC&>}d0~BI?AH8M!E(APRRIrZu$_9uHiZ4#;uUJ3NB_qomo2lqyUDxcW#&J*hl>z9zZ~a diff --git a/librespeed/stats.png b/librespeed/stats.png index ebe2c814b334410c3484c71440644d71c8d85c10..840212aff6c965a59af4add891bafaebcbb3fd91 100644 GIT binary patch delta 1450 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 WkZe9K27r$M0000yY(pzpO!;o?wtdyyd* ze+3aqL_t(|+U=czlA|CDhDr7PpZR9Dt*2IyWTg`F{WsIOow5w;XA%ezQ$h$Kgb+dq zA%qY@2qAz2IOT@f1mz+ zAr16C^!UQ;OWyVmbjQrgmM)@8!$QFabJ5%n*QR07JO30)38fbPxEb?#k?g^@saV(5m99BEkZhJHfoC?mJs z0|NRzhCVleE=TM1C6bed_3YhMe-k-*#d9WdcWa)gkt3u7osj+qQe@;t4C!R#B8K$B z>|K3o9?+eH^rR}Hpc;0Fkgjy#<#H)#_z3CBA`00gV}b57q${6rDQD!M;UlCQwpJyP zhIJm&m0PPzMxKeBU+84y0)}+u)+*3P2Bpt&gXHu ziQKLbmgJ1jkglA_0ex`jnQB;|yPwAyV!CiBf%lNEKO2^boOkFvpB^xzb9i9DkWOJ_ zK=00>1OdG}X;`3FeVHqV1-g@vZiwmGa#)}{3F(%H9dbue0NsgqS3c~3rH|m<4W#nW zq3*=H8HuQDrs2vAzgPMFcY~ELOL~a0Yf^; znSdc3=(0<68J>1vBIkJ;XW36@$>w|-$2vWrcjx)^h=$HCTfB%4^nlLY@F zsN_0`;>g6m>h3>R5#=St)H?QbYw0IfYIVt`R;#=XjoR_lP(Areo6j`*JMX=pWmWzT za4xy-_vIQh8|msggf8bC*G=S)uDk#BQvm4F3OdHzG4zVme~r!3zcEj2JPRFm@D=m8 z4Rqv16viRmt`|PsLmlX7c;9|O#77>v7oJt#tku>xi0mhL2kleJ{;2I<%H35oKOKCb z!BO|S=BI;ic4@SOPsQgKW$pWA`^(So literal 2873 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 N002ovPDHLkV1g|A(EI=Z literal 2949 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 aFp_kaZ{c!2V!4hq!OG0mw0I9a_J08N?;tAx literal 17416 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 vS zks%j<1#3w}K~#9!?Va1Y;vfu#6KUW7mFL@zTA)DbNeTSxV#Z4B#x8Oo1QY=P00000 z0000000000u7$2%1TVoD?1Mh})jx_=pa1;P{l1Fc^I91b_LW*+e9C{m#k=s{drIm1 zf1X0000000000008;^5)`?q(UzrH zZW=aQ4e5{$1|(g9E$s8@>6K-@r5Z`)*SF<+33X+?6lp?w=S7avu;*Sz!At<((!3_r)FEql&v$fUgy&x-H=_crFZ#&3DEaMzOE1ZpmLlioNzWF4Mp`1>LHJmOk=XP*cdaTm-P%v_9QsVlfgFTiz1gAl zDH~3FuyQG!_-&gVS|xo(#qZnf&?f2gV}{QA_-Zhaa}$)`TKC>sat23!E$PjdOEEdS zJolcik<%7_*}+Yw*0l^}UDY zDpLCJ>E9vUD>{PSHY;bYC7qzmMn>+krBx=`O_F}+A^#4-8?1ZJn)gdGa>?I#2L0B^ zWq;!t^tyo&yFOlx+>BixZd=pDy7zFTZtMdvf?I9iO-pS#Cdq_WjT z1-8)pkFkL-oGb{eyL(uNbkMzRKjra(UEY(GQsG=}xeQv%qEas!wx(pI{U@JClIujMMZUSA3N@vl=TOQ_tCQGyS3DVXm(m5 z`ubKXwRcsOD%p*H$K{Wntw*pTVLN))kb;$>MXix&oX^o3(ba=p{f+oiD?}yyD{E2B zb*Ln|dDnb@HX0LSJKMY3C#&mJd+xYM{TwX#xyiD>ZOPrHM3*B8qn>SusupCQue^^I zdf-ta@L8SuUa9_6$cjp2{IVo$cQ(UUc4<|^pkBj&2tQ~|h-xq(gPs*c!`4&} zGQ)gJw7Ro}?xZ?f>T9+?+mEZ%*~nm&?i$&;?J3%8ykr7{pfx2LL}$w|FN=n)N!hd+ zEQ{{xtj|teXSMdOb+?u6&Ps}t4bixDUl9eM!UDiLFrAwL0FZkJn0G)41;D(6w(t+n X;}NZPA-C-e00000NkvXXu0mjf3K8(} delta 2978 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 P00000NkvXXu0mjfwDzhw literal 2759 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 N002ovPDHLkV1f*ed@le1 diff --git a/mealie/stats.png b/mealie/stats.png index c9c9226f6e7cdd52592e7ba72af5c0bb0e5705e2..9ac5df70fe0761fadb7cf75837e40aa675b66d19 100644 GIT binary patch delta 1396 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 B1HJ$N diff --git a/monica/stats.png b/monica/stats.png index 4996d780ccfcf0afb9ae06a73a75e0d4621c6fa0..abb9c74653281c622f213a05be1a4158b15e1587 100644 GIT binary patch delta 1465 zcmV;q1xEU&7}E=o872b&0019Did_Hz01{A4R7L;){{R30l>*etfa&GH^shnR{VoLR zks%j<1!qY_K~#9!?VXEq+#n1^k-`7}%WbxsX8i!0mjlwdGtH!}(6YXk5D0;D00000 z000000000006>2Tj{pFLhAm&VEnk0LMlSz;$omJ->CNSv@;B>m4=;Fn3#7Xp=~%kv zxb2&EC!d~OuygAd%>YlGgs8Bo8lgV5fdO-SdJfpiOdHX+^Mo=s^n;6wT_dp4ISZj&yMu5r(%Tn!|U zZYz+3bfS0nUdxFu&MZ97`7Ql8rbm`x9jq%MU7`U+lyq2EFs5gd4(qd9`oX=6i;(_* z^B3=VrgLn7%6mi7SvE|4_CT&c38p@KAXhR^$J7myj;Y&o?=E2K2J`7_;IYn3dWm~? zVdb$-O1ilF+a`Bn3#M)@kRz1SHKyO)0!=8VD7EU`<=Q)@K0E1hwyEL<>CD>njOij* z`E+J&lSl8TNjAC4vN3C$JIf{&wQS6P+6-2>5X!09M3JF{P;S;huA;&PQ#ZCEhpC%O ztzzniOO-KoOQ}^%eeT7Xs#-QoeZqXYJ1)as)UsjfhO=y#x~i(xEYep@T}2=#Ii!U|jF965G>(2Qi@ z-BYV?|4t~^oo^pTJ3J8o-i`4xzWb(D3FSJ%uT^Ux(kr!U*3`qgIh}L$p}kYD)Yeg8V9{URLZ-B)8a^Glfc#&QATYG2MWvXRuj8e5iNoWyKDki*fhw za9JR{u1V2UyxobBnOQd7re0}(wzry=PsJPN(@RL#XzC3H=*s{vbm2RDaYjU>fOK`H z?pr$B{rmI%GBls-72oV2E-SUFGQ;W@-)pwlnd@5xjK_7@vdj4NY^Hd{(2koO?gR!p zl5Jsq!VJ~i%ckLE3cu*d6KCG+Q26FdAItg0o4whgSaM+?pY~>lV!?TTV>z#7Ab)J< z%=EFGUp!T-iWGVwrt zdQT+_KHVPa!?13a@HAh4(&x=tAbjW}#iWb7_}v|I<_W*B^rl(15e}V#@MrVszj{&`%jcW26%oHF?S$;fNly@e|8Na2q(7}>!!Se} zAsuL5dj~eERsog{OjNCcsViKXF3y1A4;qrDYwuu4_wMeVBgb>p6TM3x(xv-4fDF`| z0rj^@t%AAW3NBm4qmy?9s)l=5hjgIcx95)dKnd?Bqx|Q)u#4&TA>Ns|NaEsVNlV;o z5Nn?!Thf~o@x-%#%I{Eb{job-c5}6z)_;>ZNs51r8GG@Q23v`H4Pu{=BU{p&i2m%( z=jeC2{ZD@3X!I@{``^AS-*>#E#kZe&Sn2)j=uYBpgXkyJE0?QpyAzkb`tu*oMTbtK zIN2U7C>u9(RFf(G{?Gpn{!6rJa3*_fnpFP!E%9yZ^}9TO{h1F((j7WYt;#N_zp(T( zadF94`8WVvy!$63M&uJtWF_f$GJDfPf2u*wcP;BsBE$aSA>NVNHd2t3xWvVe4Gs$L zG>CmdM7hiBjf;1#iGIn{@0#h)-9!P{Dhps8OuaS(0ATGM;NAgSC;;vqjD=E8n T5PDVs00008NkvXXu0mjf$3N#% literal 3110 zcmaJ@dpr~F_kR#``yiJPi$x)6E+tWoP!nC`l56x~ZXcyhOx92zLS!gWiApG|~^7mgX3Z1N=81K4VH65g0MCiNTymr z%t%s;Od06S&@1S1Eo4D8Hh_Y2uUT`7r+Yb+GF;^a zD*_6)87B|#_Vf1nU8w^UI*Vy*M-5+Ae7IJ1qM(o^dw5+7BrYP*9t8T1vh8Z+F-Nn` z*NIuDk*r+ZUT&sZvLB2=t=HNtCKo8BeiSs@W=Yu6}Bo`*HQ}K9jwQ*6+sTllD*TG`qB9 zVHl{?W+$5P+=$FUwm5%VxgG=>d(F{#SDr)PnMbteA%XFi^oI;cm&a;sUCja|z)3fO z_wh@|p(0cVWNt7hdi5Z8^9? z*dc#>2l0fypP2Fg-KlwBD1`mkVEyANu8a5dVixShnIPz%%qz?qb29D?xQ+_M;nF=ix|&FptP!c0HD zSkmc9>rC<9w-@*CaxXt#Pv!AOjeY%cy~qvDBh>?YGJa@P zeVyPAewcQJUdqRgDkp6B@*DK=9`y0sxOxQ@iAP2DWX&Uvae1TuCM(^^>LV?#v6zKT zcm{8lfQ@H27yzB;xlEnBkZKH0Y z8m&O_7jDPTx5cMw9`2Iv`FTg1K8&Iq;ISWcmNn9by<%hjna;W}(@1{`Im^Ba&46yH zx)N>uB*yvaCzdjJEOPbI=i)6PFi?}2^!5UsP)?SW=}x#%+wvNwl()NnM-l4V`8pk6 z?)Sg=t9-rax~Q=nAzU9sl9QN3!~inL0l{c-`3GXG=Czcv-^Wib2cn{WoDFd19`0I?sM`Ocz z_SUbl(H7VG*KYn8Dw^HYHXlqCtmwhaSpo~;*Zddfvc$XRDM6UB{FzlRr7^nSi9gYj?gn~!O@P^Mh>i2 z{WGO^xYQ*oEOxOzEh2LecCQD`Zji0Q-m!1qVH70`ckLNADl51%7{$=TFN|qC$0o|A z2ioauTV_2ps5K#zP|~fV3}~=ZYsmC`uKYueu!;4mbfg06o|P3H`FGzpc&5&mkVpHI zPt1gLKg;|qD?&@}@q~5aTx3XQ3X;^+*E11Xf+y(kfRhMlc57izJ$J{g$j*b$kC>e; zdI|$lSs11Ji=MD2EU(y)4a>ufo;6vri=7Pu8k&{Oa(kRZxiB+U-f(1Xuz+#a@bO{p zH1Z;Ef?Z=&bo;aPU?3j#yQ7_`CE&k>Veei;{-PypdBX6mSuNtszU6izMfFnm+;nZg zC(TPVCtk;JQOe zkdT7vOl`=yxA&t&CX5M~nLF)}4Mh#lDdTx?HI4y7TF!!n(3u;9+mwv)6hKj9BF zW%b_j>YCcs@uBqtlXz~FS_zNVe$;#aqrg%M`l?l&nZSl4_{#$|)gj?Iw%x0$4r2*9 z+BuZUIr_^uB^N8NgTBTSnu}?kuw?7B5<9H8+DYET$jV55HYJwv;z*qZB3rRQSFUBx z3!{LREEERr<9)CXQ65`)a~d8yv?<0L1hpM)l0O z754~Tw3yDRKeNGVcQX7#I0Lo|SUauKpMFyZ+3tm`G?8hsWKpnKT!DcL9PdIBln=SH z_Ygm;>;1cC53IG#4!rUz9uM31b;zo1H_*-}k|Yi?;c0qpe$EqGp$* zyD#tdt4up_mus@2j`KuR5Mf=7slWMl&%QiSSn9o|{|*ZO)pJA^l=6(?uH~yJg7387 zpDY1TtR8-TdI$;>nK3phAoIZQ+hxc1;}`t_h|9~tQ8io~x#{9cXF9n?X$K6gB+Mdb zlHv}J?tHRJ$^BuwtU^sxJ9_6}B>X^OAkn`r9x`lO=}UG*Y8HND2CcB(R`OoL$jg)zi zT#Pe@+G2PE9{8-}4PEcIn%s5$%Y}ueoZ4j9c%}REkm|Mi$sOq~XK>b&-nHeL`gzOs z4Yy6qi4djP^^eIDv-;$g-UYQgG7j*jy7=t3x6vDN64LbO$=)V4jU~l&Mc7a^lKI;6%?fQNlS~9c@tVZV)F53n`lxX&*TUHez;0{<9GlC z^UL2-;@)NjPEy2m7;j J?@svN{vRy)`jY?v diff --git a/mylar3/stats.png b/mylar3/stats.png index 4edf87ab27e01e19ba31af9d58b1fc24553b9eb4..d05777b73a8fbf821b2f46ff721316f2bff96031 100644 GIT binary patch delta 1139 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 DWijes diff --git a/navidrome/stats.png b/navidrome/stats.png index 76b6e78d91a103e07f5704cb6553741e000fc81a..3a2bb0d6d98749fa63c1f64a454bc782753f44d1 100644 GIT binary patch delta 1375 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 I*U;Pl1yI)WBLDyZ diff --git a/nextcloud/stats.png b/nextcloud/stats.png index a2400c93a70678c6049a35ef31c2da8190de3c6c..fddc42f4191eca060737d3e76f907287baa66c85 100644 GIT binary patch delta 1390 zcmV-!1(Evr7l{jy86yJ#0019Did_Hz01r@1R7L;){{R30lmXM(r0}&(;rD#q&ygV) ze+3{(L_t(|+U=czlB*yLMM?4hzjm%-;nQ@Ovq|2c44s;qFatU^*yU z=C@-0SiY8UFX+;o%iMj>q|2Ukkx*zue>#t^W7211?G~dh;lr)P9-DVyp)U}DX#fBK z00000006iqrlO(`F#IINb|M1St;|M3y0r*2q?_#1v!n~?1@}2}ay>z*yW*xA|4>!r zW>$T+kZv$H6VeUlWY&C)Q^dhLxq$`QwlcfBaW& zrnqwZzIx}9!5Nt8Zn+mq@>R{eOS_EKThAz>=TAH;K+%CbbEa| zO1DP(nR$ox0VZ7b)*VNV;0!~yf2ZO7^qb`9YkBY2);xilcuoGz_cT40L;>mlj43GG zzv9<{h}@{QJ!wzN%ptu2p)X%5t@}xEMpBb(#NHbb`d8v=f1%6yo2za6C+XjphBllHz;(a zmPwZyz>U*Qt&;aXhS0TBtB^i`&{^zY&y7>AS{3KWdmq5Mi~2YZ9J$`DyAyZk&Vt~n z`85_hAaoWx;Ks4o0XL2?e=OFWymy1vos%65T6f*a4vxhRBUpFU$qwH`qsV*jd63S@ z4km@JJlR25?9jg(ryZvYiyiuR&~VG_JmGE&LZb5b};9~DK`X$^f5SR zKHZuVN1tw!^D7f+4B0y8-04@ikOF;Qul+sHe%i#?e>Z@2O`WO?f9bc-{GmG9=QsHZ zKzjFzc3qyI&SHnHT#uAF3%C)gFA`;Zu|tl-@V$@Tjp}y#cBKnLwn*G39Qs_3-O~|W z7Y_9q)s#0(;LS=m9fobRJANWZ&ZyEG?v4q=)??gps)T zu6B?nW$VktY(wIgf6aS#wSzQIc#dIHj9+3ZyV^k-GUumudg0j`<5!uIM@cW5ukb}d zGXsH_N=na?F15p9Df%z4?KoBW;ytw;xnrxF%Rd0!24}p%e%1=T zOD!=SoT*5V0hbpLyr%7MgGLh)ziM*Bg_SI#wc((fWKq{-^+Ffbwk2Jnk?Lp9m)n7@X w0AyGISO;ClW&i-h-T~$vkU{}4@1Pa@0Hzxcl?vp(CjbBd07*qoM6N<$g86*K!vFvP literal 3064 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 diff --git a/nginx_webserver_proxy/stats.png b/nginx_webserver_proxy/stats.png index 888ef4a37c36036c19976aa65ce7a4b073ea5cf8..b6b284d1f34d8e67187a59dd160260999ea09664 100644 GIT binary patch delta 1404 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 diff --git a/omni-tools/stats.png b/omni-tools/stats.png index ebeaaf99ca1b7cad041e407cd93d0682baba2f40..11159cec0d1264fdb4dd5cb3980ad7df2567b0be 100644 GIT binary patch delta 1463 zcmV;o1xWg)710Zj872b&0019Did_Hz01{A4R7L;){{R30lmOGRN8sYQ^U8qfRqSx@ zks%j<1!YM@K~#9!?VX8sqc99b^-A*pzdX}s18?lXw(grVrzN3gxmc3r1v7*YLI@#* z5JCtcgb+gLG%5P!xhd|ABl?+b)G%B9{eS!$RcPtG`S?ul4^jK|`AJ+)>VIfu?+qLM z4)WfhzuCUNQ3xIEJ(>5<&yfM2n)g3T0CR+Y5JCtcgb+dqA!J|fclvZb(Cy?XVfo2N zL)}deGtm7(mjT_KPqz$op;olcr|UVsAQi}I?eL@Zd+724=Ju%I47DUQJ8MW8s&$Yi z&>ara1iHgPnm~6rNK>V+1oYMhY5ruj7`lMo;~-5HPXOrc>NfmrAqDhif!~Lp;YJ{T z=ZW~waKCLOC472&x(~yBSM+Y#4wp@7So8&}UasRye0nNrt6bMA&@biv>&BN5pNrn5 zWG@@gtF!6%S zzuA{a(PZn$k>k@HI`T!)``X|g=yf~t&4VaLiMlxX4)m%W`7Tn~RSAGzwIkm=h$1z9 z2I!~Q^}E?6(9>U1(=Q#qd`F90VaSC@vtE}HCrPS@&X zcKv3TL*K9>4eaX5!EEVIr=~ZagTbde%)tQNVGf2s&S4IQK(4>xjRbNya(p_D{9sa~ zVViX1ySi3oM%QZHx%D%;R_RZ-x^wF%bghd1^vZMV$In`&KfU_g`U&g36Uem}x-r?o zVd%zW2Zx~>lN}s}Zo4Nt0KJZX@r|Tmapb(&0Y|KzCThf$p%1 z1HIpN_;ynA1ig2IzP$fbKA`v44&PDJi%Wm^kcR!G{cF!%0pHf2-pSJ6x4|LpJ)~NO z{;b}PJoqthRc>z(#f!8{V}3|4o2-rgbVzSllpwqO$a9cfje*<t@p(U$zs8vZL}!?|sq1%G$srM}&nz+*t{WO0Ov>NT zR1u?R^0gT}qtW$$WS`n}0f`$@yol+2PTbR(zmE=(*qnZ#bp^~{LcBwk+p?+a8m}1o zu`QpI)8v!s{;#R8!J?z@&G$6P&(sP91&$B#22v^@I!CE=5%0>L-s9z<#@~i#82tHk ze_34oYymSn%wD4s+!l4M$`ZCR$lgj}rHJZCSVXv~$zvOT)b!vGiJG1&pnQ&&tcdx` zjEz&_3^S(0RuwRRgq0i?H_()fa4b&8mO_xnGjI7oZt5VUFbYcSFx`&6SK|Bd3{*bH z&tE7yV)_b7fn50}ZQNlMhd5ZL$wn6(f;w`Qn?VSXdqEQ<%BL5Vno?F})E$u{316{(baXv$@5kyH#Z zmvv#%FPcjYO-ybR#xUdO&)<2^?~mtv&Uwyrp6By<&T~HJ`66GYlCCDZ4Fm#FH)ky$ z!c_q|KQ|`_-`IlLp`%sY_XlJ!RXi<6@?OP5Dm%U37540`$bjgj-!Ia=?Mjq|Sv%sk zMaSg-h(1mAb@X;6E9{WX4D)%e;h<38u4y%k0b{9n~PGZGhzijw4+E?@Ak2}C1@DR(- z*GciyiY+I!t`TM_5G%XlEI|&ioy!{g3{j@5R}A?dB$BYQ8qcp|75bl8hyWwj8Ts#j z2tX>{QU8be{}A`$V;>-^lmR(=h*i6->oO*?6!Wd@hXF`!e3wXokiG&1F`h<;2+VXj zU`)LVb^TNB3=P&2_({G8DA1m6O+n@ld+cst>(w^5qCwx+AHIw+Qkf~2vk06$Z8+ep z654jf!(8X4I4%?aBUg(l&Ik%*)*&YSuXf@wHeo@{YCOeImPc2eIk6Ve zcz1d@wn)E`k+KS-&QUj9S(MLAHlwzRC+U%F7;BD@KG`4OvH&7&UB-9ZAU&XNuabZ7 zFd!kC)YP^@{R!XpMD@`--riW{abDHka1kx06y}b zBk}a*d1`UU9zjd?@Cb>B7tKqCHiw5uL_ie5`F7HYkJTtx4he?ew5fL4Tv;0$*<2Iw zGGrb+ITpJzc6AE|uB6-PM|}!-v`q$=vNQs0j-Ps&CB$jV__Ez@B;gM=7AiEB`z+NlxdTBncR|}qp`8N01v+qUtYW(dCveyC}w=UQ1iLqLK&(%O0~lNROZ*- zcVX!P-G#a2c5iQrUYFp9Y_MjBz()E$|B%kosnxCfQYw?M{UMU=M&YBZB6 z8T^oqm{jydy4e=fp`zvanK7sXppgEovgOWFTF~XZ})6WjP&5EGyBe_fN5C!Et0WIGnMuf%}r;-**4tNtPOeXZQOG0 zwSDh|_wI31I?~m0pPo-x?H!3Pe$w3Z@NVv7Q|bQZix^e^8<_#MVA?BSF0hH_*dXQq zv$Hts61|?D0?uG8lq0mEc(Oy)F~b5v`L+uG8?T!Rpdw6)k~fOcew~A3Pm(%rJRxB1 zqvNS$iI4Y)fsAj0l=~E+F08&?2(H$4pW4w0kMI-6uCfAKjjkl$?8z0E`q8@%XXtp3 zn<{s6O;D+Y6Hh|i0sN|B=~2F4Hjq)L=U^DsF0e$nhm1)NChJ$iy%h0@OnqEo7_+Klqis^C z@&pI#1k?#Zj*LzT4NDD@o^%?ce6~H4`(7{OXx*+4V`Dg_N>miOkN(^A3~c(x58r@X z8rSA%G(neZ^_+dZ3>A=Txaf>f3o*U-4}SpiQee>=8v5>TZlX=J@tArd>6+1zpu)ih z=gbZOPMAH|H)|xX&5=UU`uVXUXO+D*e$%0Oj^1z5!|d6scSGBq5!KccCN;J^#gK>% zE!f{&O+A#VoF-QjoP=}N<_79+fi5?2UlK0HfzgiYK7N%Md5e(Xb`F!HUl1f8{c(?= zG@u!G%J-^%_Tqmkko<=P(c~jvg|hYQ00M5WJG4I>t^DgNm9@$h1KV>Ka+3G&82=~L zuE>y^7mURWTgr9LKabwcF@{}?e5JUpzozjrMo~4nTh7WakfJK^P^+8LO`f@Bob5D{ z%CoaHcnhWxVEefDW^NHX53?_6a{Dus`T`QwYkh@Mobj6k>p%tQp8}3jANCT^)+7z- zlG@frx;kc=?#P%U=OM`zHwpFrM|XFf9_5;y6aQ`x=AziH$oiXD{Z^xoKUw`8-T0LQt<3y2i9v4w>G+izN4>_L ziI#GI)j4ST9kJ`ID+7pH1LBh$*1oCN4Cc(o_cJ~IqSt!2LTH%3EJB`j*igi6S)S7l z=NK=B6v(C=qP+^)EeswhbExsNG`eY5>Gv8Nkl1v;05tP$qIEH*JgiHx8qNE-W#MPQ z)ZPkl@|RR&cr-62ua|lvU$!A}ZMmZktY`ROYsa4<~?wFjnI zb2z0kEo|ZK1N2&3$lSA5ywzpNq(+KPe)aMN!(gK-+a_5T!R)iM3rzt?@uAC)6M9MS zn4}0CPY^WeA#B87=kYflRV`B%YI~~8NJdpq)j5ROWf$is{Gppd*t5o+#gv{9^@C{3 zfmF9j7ObRk0muZOTePFo1<%+?ZgY`%iJ7%o_~wg#)?5G16@!L8rxENY$wEf4M)Rp8 z%A6a$a2}d5?9`Z7>>-3dHnX^dlMH>BUz%8(@(9<8P>t50z5qJ-B~1C0%3bfh*7SmV zm}TLy>vgt}my453+18)JI!p}h(s}@!!-@-cih}@e*t?sX1s`qw&Wn1FTsy=iHlU@M zW{GpNnYxMLAHQq}U5pIid(*yZ$>YWFii=5w`~72w@4JTwb?EN8@1&LgN2urfCS~Iz zZ?aZyZ4U`6n|a0x>l$`Wk*KY&m#k|E8|&WdK5xoN%(@gF6buP4+bRK4LcfPQ^4bJjgsLJJfL$8~c0d;{)^Kz?|dTl;pXkUw4dG`dN@@;MiOvS7>Lo zXy+QTsg>F1q*k@d2Ag$oA_Ey^klZ06v!@(-Xap^+gM ze+9NlL_t(|+U;G5mfIi(KqZCr_)E`E;d%M<>F3{mdEP~67Y1~jEj@qG@1Onh^(nmX z!qN?qPA^k_U%u{!{T&D|(m}fg_r8C6f7$$-UreOi;mL3}G=^)*XrGL72A_D0S133ce<^#FrdO9AYx~Yz}ITM}h z>45m?9YZ$v?p-XLQpL8egBn+V+^NVn6cw|3YLS*Kc! zO|zx9`|T}(^x7>wxpz)q?JhgVU%;rLw8~7kc^kR0CQ$?(q^HPr*b$_cWag|`w z`INg0=6KP2$|RJl9lUQC_0d7z|v`T)wkm^yP}q#R3+Y56oOY)YUwX7^_5 zq%@F=1J}1=v4hAVTN-JOe-1J<3Ku)1n3Q@EEOr>TJ`E1O>tcuXq|b=1%{zEqY1m17 zhD0Q1#E_n1vg1zVk}fHb+hQ^>B9xzdmlVBEwLasfuH|Hh$uvX+a?44dz9W!rQ&(}a z!vYE-#_3CQ?@RV}G@YSgp6oEcw3_0Y$8R}9!pa@!7`f7sF!Nnc30N(UcD zEOwwUb5nvXu6^w49DHl+L!1qP=N{3ue$=GQ!MDGpQtRmwwqw`j;2GM=OwOd3H2F&z z8)WLv$O)lb)uvM{RppT`hH_1@94`QpM*0?$#(;Qg-+euPh#B+>BVAmfLzY56=MQby z^QSh&RW^wyC<$UcfAu<9Oc3cQCe8cCE1E1uJ(wiBlnXKTt?T2d?LLc>G136{gv+e6p4V>jzs01fj5Wmb&NA;dx~`=6f3BzNn`qpdp&32+UH9H~ z$forK^F#9cHr7;hmSyBpbbEYxaJs?;l)EDxl)EE+1Lf{WPoUfz>B-x z?re9dpS%VhxF<{BR%D)lE~{4mN;;x98-X0PHuCW6Fme+c4IOV5#ikYvf#F+F&WgNC(XO_FFwZpqKaZKB2jz zmyeej(c@cmy31^~*iKK;(l;5c?kj>?ey?`PoM`>Qwl!Pc8+QLMPQ$kRWmfc{&GGI< zmQF*$OSAMbaI9!>Lo~E0P}Y^9!5Cdx%GRQHIyOVsf6MTBw|wvX&V43(K6E>Ml^UD9 zh*G;~W2<#t8P8z-gDnokpT6YRq0n=S!T06yx5(bhiGIkwbSpG_*xIn#>{Ya;?B80g z>bhG}OS4zW`hyLO2ivG@skBPxx1siyd(rR=>HQBJF&MYN(TL)kI9vXo^{q5v?%0s!lP r>f8(f0LZ-qaPI)7Pylf6fGqq2{`3#Ho+M1&00000NkvXXu0mjfsS5jz literal 3290 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 diff --git a/photoprism/stats.png b/photoprism/stats.png index 95e5bf5447ca73ba2472ac9d4345628c0e41d31b..5f422b34a45d4d72540e8b1ac5535aed9405f5ac 100644 GIT binary patch delta 1504 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 diff --git a/plex/stats.png b/plex/stats.png index 390860528c7d7d783f9c0aa1ae9fba2b1eb40225..e959e36732db437da27acee34168aef73d12b531 100644 GIT binary patch delta 1166 zcmV;91abST6srl486yJ#0019Did_Hz01r@1R7L;){{R30l>*eeUE|)b@1LtpI8ToT;|RlAcjOd+?$4&v)4f5@8{VNlcUrXqjvO|fDVuTcy)qpO=(dt5fKEgX z=p<19-Nx{aO~-p@vxCE>Rk7K@e`y$&%?{3%R@ZJ0^wIQa7o1USk&W2WL6P&T3g(=_gPhY<2)T zn;krubi%MeC-2>ZAIHrOKu_H45ZLTs!H+At+2MUv6nXE4p>wl?O+T*iW(Tp^!8mlC zA2q~+%RqkIqxa1YY<4im*xv|>=(S9t?p0_IJ65JL9dKcPD6WUcriUIvsyY#B174C+I2i8H~ z{bFbX`Ki7aqBn@qen3a#i!dBw!OS^xdN9zDgR#At#Yb~-PaaF5$g$wjTbU!pLpc9f zQF+L%JXSna`^ED}f75rRZ+$QMEzde)PFoA0&nmv2>ALu~HM@`Hm0#7CQ9RxBP}KBc zDi66YJ|h&xPKMO9vEV!6O|YIU`5A@-`VuO@8$G)40^`J zt9vJ5|I2KiZjKF)KL7X_FP*47WLADs{LZHLtvqDDm--|MG=F#oK^?h{%^-w`y(5Nq gL<$9Bct`i^4|s|V+pak(@c;k-07*qoM6N<$f@qFJKL7v# literal 2603 zcmV+`3e@$9P)005Q<0ssI2r~mCZ00009a7bBm000ie z000ie0hKEb8vpj^Dg#jYQ(h8R(kbv94CS9GrUsiXoUilsFATQtBIsgFTliUF^B)J1*NOA|rkmL@KA;}#eLy|i{h9q}@3`y<)8Is%q zG92h_Y$jFt+_>j`dX;^vYF0+$}5fc{JsZkU2`q!2>{k^akk~=_#lw|-i zB)J1*NOA|rkmL@KA;}#eLy|i{h9q}@3`I`vl{-G>YyvP@%;a8A*5!M+M{NQyN3`TV z=MHZG;)*|WH~R+IT(p+IMQgov=I>4+z?qnqR2S^$Ug?H9YIETJ;|4rgIwh%eA_;=4y47? z%%f<&pjsS}T)%A~S&2W*{Pn}T!w2_z_4s1My_Gc|rt;}7&HV1f16iv7X*Z_h@bD75 z#)MG+Yym91o3R1=FyR8%hzzUjY z?nQzgTX1jNT!Oa+K;GtLxt{f*6XK{ZBW>HK3#tI!7FjKGl4cH-+<|itf3?iKcmUW^ z>uMQmT>$p0=Yp#I4zNcWhXG`$=MGiHcYr-=y@^R$2iUKkvdpNOd;J>hoJ{~Gt0woN ztNqy3GWBb)mA;yzHUXHUn%s+O%-9E%baYh)U}eo^nR1FBwL7zKfD}Yq3b}qxcNPKi zwn*c!Fuukzvs0MHVE`5J8;2!cLr*p^fQX_s4l6HT30AuU>{B(lCq7{ZV2Ga8G63vR zbNhkxAJzdtht{Q#r<^Xc1ME@PI`^@6B$YcB97@UqD&spg0hp|{=6=e{V;7#6&j-f` z$^-P40a!t_mcRA!7E=OjC1%UtP+CJ-OxsPyfjxTt@b15er_?qgdW-@xq0Gmtg_N6&luC!L+h=NBEfeN7 zBm>x;oRfP|SD8?A2iUc2mdb>BS>}|@rFGy8WwXdVbgY(HISznr-FpAt<>$Y@brjKb z)!Y@_f%Ea%dtYCA;Rjns5siNC03n2M>%DuIU&wvt9;TMv%e`Xi-Dxxq1Cn*?y{|84 zKXac}bFXCQ$|F@Z4g*ql7Rfz~ZyZ)1JgTWAz_v0g%e3C1TJ9n+VZW6L`-D9Jtmd1$ z|NH7c-=@=eV7}JXGL@prSS!rgy)6J@NpspBzj4^K@^^UwWxcPY#$iCR(k!^gZyZ)h z)6?Rpf1$=gz_1|wp2#^2xk*x!Xspk$=`5nk!e$)2QTXP?4RQDLYWq=gqS8xw;lY2c`4{s); z)(>nYzojxEZgN+{0rtqu9Uwzy?rBlO0isBD<{rPd%$zvN?IiV<0TTD+$M+xq$s>vtmT^A8_G;Y z;{hEAfb5-1S*9SZ1Lq*i-UFc{xqG}da1L(0fA8}1XESpzo}ntg0~!11FJCG z#Ud75+Ic7`f3Py9V-sLeA6@_A*;mdfxz`_WJx%3VeR_uhNx5%gl zBcQCF$3qCuUA^?nt4}_6_0m>R%{MvMwSHOA>1F*KI^?A#cQ{+0ymk8@Z+`c$_+SQk zyiw%jUKC^`cVKCalkN^r|K{Q|FMs!M(ZEs=Ke-pzR3-PicV4^sw?Ez7>eV4Lr%Cto zf4rQ?j4i3T<0565u+i1jfysT%kN~z4Ik|5usWT_Q?xZ+#2Vf@8PzA`4#$f;%s@|bm zexm8>!2l3Pb>?1qr1cU`Pw;5lY#d)6**(7Usoqo6WtEH`*gFiRhq z==-1i3o|Mbe@Bgb%kQ_Pr{*3#%O4)D<{$cs`-g{D+;@jm9vp@p`pLoc?tjAIG!M(b z;FlOYGnf^QO!rHy_6svAlGXl>qU=A)-_ekrFMU|z?tjSOuC9>1(N9qM-a5Y3HiyBh zBzuQ71`~1r!w1idWYplXhhgfVs9MGwoU zNWvkD)h!QGewwY7>$91Ka$`=OhYOSv8iAps2mA%qY@2qA4S^z=nfep8;= ze-4nXF?=FF|KV-vC+>7}95;jzLI@#*e-J_lq43Y4%6BAk^?`ikC6*t^c(4-aKnJ>q zti%a)LHE~%{Nte`CoQvEO)DR`=@K4YQ;Hb-E{imQ?l0G$fbMURW{N;}w@9-Z^lOtb zp!Zm$8E5E^T@^zYppUUgGp1TS{Zdy4dXEvZ8uS44VN?%#uJ6|l&Y&uK)a&W1e=+^z zRvd+4A3RB+!S4jw9z1`nA1mKsN@REL*S;n>l7A z*;SfAHw-;Drjune4L!5xi7cCue<-YG5d~Q`8?hN8azH;`L;-XY%Ocs~;&GZzL=Nbr zR^3C#k+ZlglGLip*vv_A2I$V9XSX{9f-{z(?|OE`-ow~YSZ!(*=oSKUDo0L4$g-J+ zo^|9(dOFl^ABDw{^B0>TI0JN`dkDypT6H*0C$;L(c_+2%&v_@c>d}wGf01+O$Eh|u z0NsWk$C&QWk5g@SVBNb7KTi3?NVYXu@Z&DLatP?7`*GUf3_aa|AE$b=0~;8P_;IQ? zJK)Hf@Z)&1gF`=#h@3+|PW5I7pxf}{RP%J8oABdwZ*~B>4L^>RGYyu(8z@IR?R`aTW@L;*pF4Dw%lAROS6wRkwhiC>S2VOPhGXx~ zzS3nx-a~hnsi4JOf2&8sWH;C0PC=jHdiwWe{PW1_Qup1pxC$^>VCL~ zI?$1M+g@$NM`Lk68}a39uC}~QWF4v777tf3w;T&S#pwD&6(El()R- z5p%K}0pz=i*Eu;ZzHH6vP+$2`Z3V^8n;uk6zfI+#^rDw}@7oH)>O#tPDQ#(SUFqka znidyL(>0})ZBe&ebs0~+IQgdgVk%eM(YfM1o8I=i?4Hj-FL>0{+DTadXBKB)_m=FQ|2oWaQP$Ru7+TsKyQe0000ui(Kx6OrKxD(|m{kM{0&wZOc7a>fY`w^za>6p1D zObFRhM9A}B@bY0}%UEPg*3>{KlVT2lm-nX@0Bo)%S^+%-6+%4m{|#qzWbSi`-7*~L zUH?70Zix}33kU8Vr&HNmS0t^S@s!ukt!ovETo-oQphF zu#Oz$cXKADLvsl`z{l!d<>`LCKA`c?%{bp)HgX0K8CT@^^q$seCzjWMX?E#( z5aNiXPQ7S)p!xAP7OguUHG14adVQ>sYBuwTI#_nilj;wMDB5C3&XYvT&mH-UhdVXQ^xQ6kKxU@nkq zXzMIZN9oP>7P?c%$`yV=eYfU$AXJRo%azxnMqmi0LQ>aeJ+fW}E?wToB`8=|qNm%?a>v_H@*+1N0 zk~p(|O~{eCy`snsvkeS-EY>)&Wj#{Zu+_M=Df*AJ&9!n@+I_|Rrn1_XSI2LfVc2N{ zn;V!tR&MW>$_~SbEqY4SZe8lSB zo|ETpmYz?HL*}2|BawWz>)!jHk4_92bVM%jC=TtipwH!)>|=Z5ouVRRIEuzE zj)7Ske*R^K0nX?;fh#mF7mc;tkqpF?!6W$-=0Vf}*$Qck`f-y}@y$A36^5=|J?fxV z{QvbW7!j`jV${hi?rnJ>*$b_ZlVR+EthD_IDY{C2|MFor_=tG?8Uat~_55OT5?<@^ z$9DRO7Ke@sb;-Q}mJJj=KyI&sM6P!d#)7gEX_8!x;rpN6a6@ev|BF8R7@HB^T`XWMnQ=*u zkrs!qkO(m*RRVHTQ~#@5?(5stFv`sxIXeld9|*p>XCE^cTylgezhI|Fe+`rF&52wO zLrHP`#-SO^qW2ixG2_ZDj6-Ia@`3xGMei&IYA+6VyKe2fYkFp-JzBSe=8xsccL7SFh1#T}+ zE@)82?LwGPRG-}qjrTp=(8&{JC9Z3PdZwgcrscX4U$IzT|Kw%q#J#~HnXy48!Vo0e znP6g>f8d(?3%K?<>jOnyix9K5PhUt~V^c|_OF=r0ngyc*^7(#dxYRQ0xIX6Y-nX{tQE6@1uPWN7;sVv`{W;|~>80>D|%u?pP@ b(4XUD3Pq$D3M@xFrvitQC`A1U--LeyPgziw diff --git a/portainer_agent/stats.png b/portainer_agent/stats.png index 9b7962cf0bccaf630e409999481772624aff4b8c..b22e1e6e56f37649849ca969ace5528543a5a2fc 100644 GIT binary patch delta 1363 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 diff --git a/postgres_17/stats.png b/postgres_17/stats.png index ba14316cbe910dc1e4d05d730d2516438e5b39d3..70f7fca7467b9c1db7b4bf9200a3161d79b7864b 100644 GIT binary patch delta 1354 zcmV-Q1-1I373B($86yJ#0019Did_Hz01r@1R7L;){{R30lmXMeWaZzp@+Y2dK#?IA ze+2wVL_t(|+U=d&a;zW_Md^|M|K_ApjM0&shz?D!{g8948G>=y^yVTuhY&&tA%qY@ z2qA;-a$k+^9F%E5FnEE|RE&Cs6{&8xcn}aS6=;m^|%R(14zRpfPhcZbcC;gYDbu1;% zR3tu~iEOMZ$U!J)vT^Y%P)&l5l%QOAUfA4?K zE2(Pe0`!rWXEwC#Md(eT4s`d_^33Hk%zH2b`p9ZVj*-)ge7T2_kke;GUNCYlIpNZG z7#2N=yp+>p#zOK_t3bb5{wnfvQ2FYaOA1@sx17mQpBbf^#6O{+vCN0Szt zO2^2lF>rP6oi5vi$j>(KK%W3PeHIkhK|x zRo6+oI<>ml>xx-6EuFOMQ>)CUUk-EchJ_xVS{3HgHHUfAQ>)CUU+bhTUk>v&L>Rd% z_HFTQ?0v;q0zFx~&chD&f7*2(cCgs4w?FIvbhYg|!>|v|s(7abI&XGRJ*(0T9V4fA zR)se^Seh;8%?{t}p^ewBW904)@nMPcW(Um=Cq3IwXY5^3pZxNh9e6%n(O7Hel`}wB znaMA0KO({+3RPyk%fk-&NEbqU`1iUtYzT~z+r;;;Gy!Km-Bf%te>h_*g#+Dmhy&eB z3J1E~_y+nZ+H=G=&`-p-pY1jVx}Es0VI*duEANn9+lfM~L4Vuxsfp(!J-hYyT*I(d zXgANNPq+2=Or5bCTjNQfPi@wEzg2mLMHJJUwa&9_;uO!PhwN>wL9gDFAi4cWSR|*< z$l1%@{hD`mUA8s6e*tb|MD8znL)!>+V|{Pi(6MTkpcC4bpnF2w2=sR=jwyfSS+=i1 z_bX=NdhXq&h-g!h?(t>gyh{6a=$`R24MtA-{6c6e+GuF|MY-V5psi?2u@>l{R=#;) zHS~lPf3BbKkT;c~|DHZmt2^jueDQ<>;&m+M(>>IIj;3$hf4gOTq>FnY<8SYa2H&Q|xs;RniXUnvlUU7@L-QbNJ4-ZZ-R%TOCv`n%l zIaSmC&yCjB_k?e^;)Q&}FyD;Ck}?eBme*a literal 2722 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 O0nSi&dx9P8&;I}!aD7Pt diff --git a/prowlarr/stats.png b/prowlarr/stats.png index b8799ca787c0a00ed6535f1213622547da0839af..33c227effe65fc003670fe13dc7a86d1e30e9ae1 100644 GIT binary patch delta 1311 zcmV+)1>pLU7rP3O86yJ#0019Did_Hz01r@1R7L;){{R30lmXM$p6|3x;p7A2!;v8u ze+1G=L_t(|+U=d&maHHQL=*A|a{@c?m zQ#R06Nh(S9JrJCMqJh7sKf_N!O5X;fcNTB1Z}9ss9HYxsjEwe@xkM znf|O;K*U#?cgSJw?g_%I(H8fk9nVGJbxPY99qYb>x1)kFZptO zX_*>1kUXG!`Oi+e9_Q&QLKwEKanB?56h}^py|)+o;i~X(tV(LNz0ePrg-H)Dc7T|A zLjPIn=X9yy$k`M6{)dI&%mhOJfBfY_L|)HwYy@Xa3jOmZw=PACC?MU2&_8}#UGf}` zh+Id(IIq-~^l%MD6w*hgB_#Df##5!v3YQ+O`-bN~&8JE|DI&*W2P4*f^Ye}UrCe&2 z*t;3){^ohPkc83HC3TQ)!MeYTD%J}D8cn-P?A?ZSf8Dqghd&R_D6w~=f7bme?kjm# z)rgg{#NO>$_b1&8-u5F**?JdxT56RrY~zZV8rzSkQ1?Ed&@ZG`A-#8@C$3sm zHX0g1=s0ro30+h&xb~3Vf0NKz>@XweEOwZXa~3<;+&fIzM~>~{+68AIy+*vfIOUw| zU}uK5-VWVZoiyGXmKwQgY_HCVjs4ywwi*`h`e2)r9rD}eB(z}r(#Z~8D1A#o$v6A{ zHx2nKK2JBk*x~I9xsV3)xJfmAE(0e!*mdOo6A_`etvG)Xws5jTe{0g+jq!^Vo_{KC zAgafS$hkO)Uvk$!Wk}KHw3mrdhf23Y46<@=|hgMjOhs59_iJmY_Q#& z^vbdK3llL=!ZOz)-NE=|2^VH!rpELdrz$%n-ZJ(ch|3mrza`y+*E<(wU*n7KUYpW~)Z7IO#}ywk#VG?}GG9371#NH}BuR zdC#)D6#AYm_Kvp$FK zT>FUUm&E5c)xX5Q|B&~7>_k-jmz%1(lI^v0doA3)@bjm?{}AV!V^=+w`#!W}``f*O z?aM!Z+4f0%arsiKhcQ79mxtPDO|T5U_TTzX`I3F@TR(sC_Y-X3BR!B|-#Z4ndnVQW zG0Ylj5ZC@&|B~3hB=%qW`HS~2vHd3%Q2;6|0IY+qV>18%V($R+4k)1jn0H_c{{Txr V4>Y+82vPt5002ovPDHLkV1j|Nn!Er2 literal 2962 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 diff --git a/qbittorrent/stats.png b/qbittorrent/stats.png index b761971b384401453143af72cada09440d5450dc..eedb1b3f597f96b9f7a21ac1d990b66eac1f326a 100644 GIT binary patch delta 1535 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 Hu0mjf6ORai diff --git a/radarr/stats.png b/radarr/stats.png index df0919dc8a3df1b950f0f40c2478b6fe3f84fd8c..43420b9e9b8586b290717d1b4255d478e34f3a80 100644 GIT binary patch delta 1417 zcmV;41$O$d7o-c286yJ#0019Did_Hz01r@1R7L;){{R30lmXM&qwlp(;j~QmF_9q` ze+4^9L_t(|+U=d&a^xTk1(BKm|K`n3JmVW+M2wA~&qJ!5P%KMZLI@1bA%qY@2qA=MQXI7m*Kf zu=g{JZ;d?!edZ4H5u87q5kd$dgb+dqe<9>r%3g`Al9yE z4PAiV<0efx@ioCW@tP?cdTNuVIE8;-d`d7m1C}o51bSA&^1Oa-tf6yfw zUB+_nbf=jW@_gztkLLt({aU&(Wh0OS`VfH}&<70UaPL3|I_@3l1ad&{1G;EFb^yA0 z=n|NxOL{jfz4@G`dV!p5mR*4UAmr`72>+_O%H~*QYd|l*CH;P`2wfZtE>CO5Jr#O) zQN?lc9q9?=9yj!rsq4Hu$r;0jf4+Eiop(<}@9GU%K)*j!p9;LYb`u5An=U_V zBL{RdODmTxtpdF*L%(uqHI$u6Lx=j^q5IVzJA{seOcwvo!;sAR*kM5CeC#kFbJDN_GH2iW zP?I%ocCa#8^Y@+&8~!Wve{{1G^pcw$g7=I7-PV9!L`obBE|v#$_00~8*9W@Q0ljFR zZfe2B``7wzvMP3CY(UrE>|iaB^FNgRwiEZiX`A`vxY&~t6%nE`$dE&u<^`yg{Ze<|wyTv-NSbHD@T@7xf+yZ2zQ3>aFHi+@BW5vJ9v+Dxu||B@awnHb#QS{^jhVL(5p^hluS=Cwx9MZ z9nge^t4WK<-X6AN`6hX<^EyoOh!?pF|-KLpQc2)`g`%n}#*B7}nce zt4~?Fhxlk|SdUX5?p9@j_0jH6Cs=P3dc8ezo{_v!_g?MH84_Q4B1f2|A%h9`3vh+LR#LDx{ZX2Hw$8De^E8-Mj z#D(a?5BE?9I_loHUohe$i`)}OQEcXF>lZ}!0bZcIbJ0g_^^&eGqxfm#69q!m?~0!` zzFOC48=nZwf0u2Mn`ztTas9dk%dZCz`X!@<@Lqif2vdbj>cCj zt|k>n<7?IaHR#OhOEys;c32>&Bh$GVgb=xRgnLJ9p+LBI)QbKA X@IDWO*Me=O00000NkvXXu0mjf5|qrQ literal 2992 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 a4Vb7j>qnfygC~3n4w##ujVp{i9{vZg%fdJS diff --git a/readarr/stats.png b/readarr/stats.png index 4da543f0690bef283730703c82234ae28aea8b5d..848535dd053b1cde704d9a17bce46d7ab84ba63e 100644 GIT binary patch delta 1315 zcmV+;1>E|r7rzRS86yJ#0019Did_Hz01r@1R7L;){{R30l>^kfUE|%Z@e2{YpphXL ze+1S^L_t(|+U=d;vZEjjMoIPkpLu7mwY3UJs8~YI_oFjyxh&fwNelr)KnNj(5JCtc zgb+dqA%q%9_z8fH21NWHvMevMdHMT7UYEeyZf$}rLtpU9oALVc{&>@F`3wzU%$JG2 z;k?3@Z97?sgMA1OzL@Qg$sU9L1WYoaG^1 ziJWi;y1VrWpnF`1OhFf9MauQ2Oduz13zNEP?rQLX>aqcf^?(j^pnIs$1iHftO*y;x zj<;-A1#+lCh2|rvV(4;A!|u~^K(|++DJK>uG1GzGSB2*MxXKYnp)=Dv)HF4Wf4=h2 zp>Bk^ks~={o4F49n>5f3GuNAUNta83;oi7?z9;%3BR9lE7tJL>MsA3So+c&Sr+2M+ z3T=ug0?@}Z?j&biPIRC$-GvKh{(kq}#AR}korK@Y?e-4MqG1IL< z*9CIivJK(Vm4O`4jqXz=IpaN!tBv0A>4sf;P%f=zPl1NV0MHYM2Lj!A9H-y43Uu=> zz2;B?HZWR`<3xF8A%UEIm#*CGz%APdE}e2Ihb~>Y*#YPySa(j0bZFgcNTuqffNsRP zSJb^H>!pBh#JcOA><~@He*%3d=<%t}Ot8VrxVQzytd)fRH#<6SF z6dFOigT&ZcAdqzGr>RGP)duast&G^vhTW0fAeAV1| zc|1ooHTwtj2Mr~gNF%_#WJn%&sk!~pA1U@d^zH$Vu8PA0ubSy%xcRt)FNotlpd%|{ zTMOc$EbiSs)PatMx9t~rd}NV(W(VWPz1sEyk$r#{X&*xJf33EA$#+-K{B-b{2C?pU z%})p4?5EKVKEJC;wzgkB|9JUMPTFq=B8UHoqWfpbUaGsI<^_Wfy1@s<;G6aS`V|X* z`IG4V*j11af4eELDsHcCE)AP6C+exXm!1Y6)a~=kHyc9D+I;JU4?7BKM9k?}!o#gn383 Z=pRq^4vg{JvoHVv002ovPDHLkV1ldaplAR9 literal 2989 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 GdHcViiN|^X diff --git a/requestrr/stats.png b/requestrr/stats.png index 40d830e076f879b3b86689e2378baf7b08175e6f..e989427c46383cc15968508f1934ad7c877384d9 100644 GIT binary patch delta 1501 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 O0~p*j(fbH@e(@hjj*J-q diff --git a/resiliosync/stats.png b/resiliosync/stats.png index 011011813d3e672f882df25c90134d6b31f37609..82d9560e38b18a4215a056162f1f279f89f40f59 100644 GIT binary patch delta 1625 zcmV-f2B!JV8}ba0872b&0019Did_Hz01{A4R7L;){{R30l>*etfa&10^0Z6f*dPV0 zks%j<1_nt)K~#9!?Ol!1oFEJ&i0}W(?S1#>DIh_>gzV1r=Bym0t_ev9!8rf`00000 z0000000000008I%diTT8}w}YX$NQ~{YfR!i*85Tk0;gS zzTXI1U=l_C=9{9VKW}Wr9hhSF{$q5j<7uOR?dhWfUatYvyP7OPJkA$?6~8S^MxcMQrz6s;2ko{CdkkP z=>{`2LAt>VO^|LdLzB*4zT8AZAYEF9rca`nbUKD%_hC7Zt}jEAPBczJ(m}fB3{7%> z9Q_VSH|P}PNeAl_C<{8y=>$V=Zb`o}xCh*(-U+1JlXRv}0MZRccR~6T>Kzd|i-uf0 zB8T9NCDOl4gLG5sozm%2c$$dF0XoC?h{)NJbb_A_Lk^@PI0Mo_I!K>}^k_uRDKzB5 zvib#NS4ZR&rb`9CF2OCJ{oHzw8Sg58BXaBd`m%WNU6DjV?*&&qq%S^vFTi?TM9!rp zog`BJtJA^y2~iZ!kyB*Ih2u01*4aB;bh&KH8hH;^a6WTHZe2>>1dv`mNs}f<7C;ik`^B~=SwF=H? zQ0p;;~8?&N%y6bwFl{L zlHg1^m9|Z}O6y(ZoX!wm+ol|IX*F8~`tGIkPA`b{rB%74b2H#fn{w=3t1?OFCp~(Q z&M8VDa06ongN98xrY9~mU8+WZYAu^`96OGzO8xsRa=mi0Spvx79! z*9$t@uzuHEF>>)?v?X9R44cZABH5lfT=ffi@5y{A67HEp)T>T*hz4WtA-x4*W=%QX z$qr&9y@`;THRX6GJLE~HagLgxSI5SQAh#QGYby!0YRa)rb`asR1s`O8%@Xj_g=9WL z)Mq-`q4D-Z57OnI?BE-FSvEyomm$~Qv-TjpsBg8^|DLd`m&a7O+Kiy z6lA9qC?UP4IC^80YazXVtF@)ml)I8Rq=NL$8d#yIhf9e=RQsEehMZRy^KqgVm&sKm zM-L9pbhod)HZc$VDp61-pJpKG{RL5%s9(<^A;;bAkgW1gdR;27$$$&Dtf!|Wo%94> zwTgO^gJ?*)AvdT}w>Mz3t110Gs!n&s91>RlLiHZXyAncW?^^YL!{Xu$1^;6E>r*^d zHoJQm|NqrsVyp5*)oYjyFu+w^m^g5Z>;IpRYsZ65u|%bg~ar%FeETik`t2*l|Ck16rW|FgD=! z%7TFU=^m_ubYObj-eATDH1eL=!T95=ZC?=D8+eiS&LuCo-BZ51g65}#&oqd2ziWOv z_->DeJNW#rCfe$L`u*|q9-Xw`4ulT>5k~i~l)Y4UMa>Ha?|6fEjKO#7{qqzHpZtmS ze(cJTi(hVk60C~bvzt@L=Ff_HtnNwD;2pbtp7YHH*2ra~$Yfc2e)GRueVUILe7ELo zrqWBRhnay6mxt#-<(eVZJkve>zM&<(@9*C`_evhb0EoQoPLDS00000NkvXXu0mjfM8G8M literal 3533 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 literal 2649 zcmZWrc|6nqAOFlbDy4&RL`cegL`=gsWy(>Ggs{l*rKVh)VOz<4L}it0Lh{WqnIp$g zj%cwV#m`tVQnR^_$?Ug&zrTKu-yiSm@p``Bujljie!pMucgkf4n>~_pk^lhgv4vSX z0RU)K(8q&?1obOE`;4HGxC3(!2LP$AKLwPdDJ2g8lDllJtz1y~?1{4vN3O~NaE7bg zgSsHq1mD_&8WFZOQRBN0vCD9TeW}~Y_84o)O^M5D+K0}yNO;X9YmC}~oK&vLy_uMJ zFHhNIZB36tp&QXgsnzjBUS=SNWk{rcK(sRgfzlbr5OKf~^$22lUk!;9vE={~kLaNN zYE8mwurP607E>xqxld8q>c4=@2}EOF+e%S9cHIlpTsY?K!rL+G-@)O|be0`o6{Q01hYg)L$(GcUVM+5|l37rOd3%TIsi%O#~@a-TmjZV6+zPta;!D zGBirbbaqTL!Q?#iyZ@lg;b@dQUAjlX6A|&?4c4z|6AN^l5<8yMP~bP9SK>EJ6~yGK zuaIwG+=_G^{a(2{BQ}2)A2Y)dufdOgG2tUNR*HBnab&*Mx51CiM|C4A7Xw|`Si4-JMoVeXgts}+i>>) z>-y5FgTful9x;^kpoXO6!1`(7u7Hb^5IxW=?WYl`B%i7XS1%zkS~c}ucN{m=ffsdO z=+n=yiQ!&&cyfl!I-(SxQ78QDaN4gM=o#8VFw6QGZ+GI&B@_Vu*72l$8PXx+e(sR6 zl~sGJyz$A_cy6NN#h{MX~9(_!4w`>D_t+xbx0z zOs(_ZAG38a6iN=K$qCJ8k$Hg7@jc1`597TIVID21c;>u$&L#tRv(^t>|}8X z=PwY_caR1$u87>acb75`+7}-j_O(P>8B|5~m&p{y;hKXvk{m$ZU*K7!ULEO=#Ic>i z#bK9gQaXWTo6d`NO~wDxX&1ib5FV!Fc83s(IFdmeA=CUGWh z`Xa~f?#}Ae@8PEz(XG9kAzh*@a6Uc0>sXWF=ZB28osGw7y431McGlP6wn=QmO_!Qt z_pk@W)&S{J(+t<%n9^9wF==LB`enl+^$nV}ATelu zX8jc3g6mTX{mfL*yyo5<1YoHY_Mx{b52y3@BJ-rgR)jwmaKv!p)L zZy+2w1q?Y?_?6fssYj3y^v<`&3KQM9h?SwYjf6=H(-!1WV>MVjb0Bv)`1f2Rc55Vw zNFY1s-!tng7%|`8e%fLYXRxH)$RU^yqLSqL3L^6-ApF&e_H>=zgV5&apTGJqp$9Az zm;;i_*Ujsa?BsKh|)I5F_-{xeg!+V{>+N&xaMxp z<42sAy?Zg7Zoko3QZ3DCW7aAdnkREpFh8;CQR2yHV&q3gtCk_+;zmR7ryrR7zxG^U zQ)^u3&_$=X2417@%6T(68!NA5cM)V&-ekP964Sr^IWKUbkPh*wRd!zD{iL){Hg7j# zy}dMnXF=7XwKq}|F0mth3cVN$B*Ce;t}k}2+t{PagX3v5Y$U9@jgDICta>W2TX2gP z4662}4334$+d79a@=*pcRw;?vPWWRg(gEvsDT%7XXvgH&ZxmehBGL>=vdjDX*-2j! z^rqS` zSw_CxS!+yic*wrq*cEB#qwba&WLinK$@?VJkP z_0qT~gad~=-V=8zXZo`Vk_>@LHP@%V-D|%)lr}KjDSvR3W~ieyS=5*gCN6o!V=83Z zaAO^dwWoF9#%ja;XwZosd=+v{hJqQ%{Y?XJl`Gulf5>{d>^Sx9rx-gw7&UVtbusb6 zwM@gpKVhoiC6{dBx)eOmz8^fHD0?G3Ojijph4gIS>bB^gF!<$n5jDe;1rwK(&fjti z4MGXXeLyTK7$Hz? z)ap+3_IrTgJ!-_{EgC>}MFTy@AK1TW@vY83(~4p*BKRu;w&xwJtN()E F|2L@GK<5Ae diff --git a/scrutiny/stats.png b/scrutiny/stats.png index 9aa29df390277895595375e8d912af705910ccca..bb99f547521e96389e29a90a9b2a79539d6714a7 100644 GIT binary patch delta 1662 zcmV-^27&pO9G4A{872b&0019Did_Hz01{A4R7L;){{R30lmOGTOyS|T^UH(kSE;%N zks%j<1}jNKK~#9!?OlPE+#m=P)c^nG-gVP!l2fBb1$Cx<`?|ZX&t?Jw0x<>v00000 z000000000000006fKIQ#R-^;#5=``Y`Tq0y`}ZS5pMM{p0ZVcIPqHt(AM$?s3|NeI z`qAn1U%>z003XQ**3#~WdOuh{Zh+%6!Y03e?-l?60000000000003ZQkDYEWzz(Mp zWPXmF!1_*-4$?t7uq){V%z~=ylAs|+eUp(?4c}_<1{q}wq-uin4O2Bi`i7~RWSRwM zK>94Hnw0vA!t0=j^$w!sQ#Cn?Y|<%ki-7d$Q#I-NMg!@qrD~EX((g&q!TO4~$~`WB z14C{-$FDSAhpRb1>4L#MKu*#@`hJogQSTJl)Is{X!Q7va;N5%&>1!Br@t6%rU)GSL zsQV7m_aZ&2-og3;!I{XHFywG557HMS9TB;`NGC%G!@`imo{r!QT(+GIxmYn9NMC|< zf}~?le;^&K%YmB&XW}(aFy!Xu97z;^J93VQ+=iUjBvF9$(Qw`#6$`!v=VcWx=X(Kr zdM05uN>=s+*1O}456tAfLfb^8+_2t}r{pQAa zh-7DnSYIH$#=Pg zlbrcwg`lU-(~(5c+I!|^t~b9h;}Dz~8Zq&?s@OeJ$*$I41L=dKWSP1+=jO1!)+eYl z*mT!^}-6P zqS!$!M=mPSPKl^HesOQG=8lna!5MyeL?IV^%@B3g-8)(;IFnN1toV>6YrU+dfKipp zmb|746g;~ZT8s5mt!k=pdC;BW7JR8ODH%*Id$NNZ>CbU4uQ~RbWZkilyS@CYWUv36h*Krzs@Z$xo;8U7+(+xA*#e zwP~O1K%>i=awSP-TW7aWL*RJRnbC$EYrg($3>pH9x3{3I#ff3O6a`Gc*LQaK!wGnkQ?G+33j*V}mpNt_c@^a~DU>Pv@w;Woo3P zv&LdaKdok;qO6IVb>C}8yqlYH^_er=w(VjQO+WEwK1Fbb+n2Tb*E2W+(mRsgBfj=x zJ8q^c^pZ~Eq<1qKk-fQpL$od?-!nwy#$NA(`mbHv*{-2H^^%^u8&>%HHeZn2whR@St{c?SG+_)8#thx3fB zNT(OsY!GoJnKP6sW^H1~LB1!cT5UGoVGEz>lTwHG%HQBXWeNHLa%J z>G|gb($`Y&AbmsYow|}v6Axc^@fmj9g>+yR-~p?Ek$BJ=plQ1Y>mVIiUbi>c@qrn6 zPo&OVe6{lpLU#i%Fy5Hx+tTSNJzd7|$HgZGgr>g@e_VXGOH;b|beB*%>wdca`12h- zj6W}ge*H&(3Z_3w>tfSo4bND-DOGyDB}*~RypJ;+pA(v#=xck|%BGNOA;gLsM!xW5e!k4}Fst;?R>c0{{SG?*P<0fD{S<>K)L6KX)1t1ZJd?mH+?%07*qo IM6N<$g7OkVaR2}S delta 3596 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 LOmr)B9!35SmD4|I diff --git a/scrutiny_fa/stats.png b/scrutiny_fa/stats.png index 6987a226df1623ae1f843aebee920541133be76e..96d3523f8805648d9d974644f0e7bfde66885338 100644 GIT binary patch delta 1335 zcmV-71<3lm7Salk86yJ#0019Did_Hz01r@1R7L;){{R30lmOGeXXV|m@f$K9B9S2% ze+21CL_t(|+U=czlA|CDhKc(A&wRJFYY_p#1#8In&&|%XQikhCNPs|{LkJ;+5JCtc zgb+dqA%yx#yuYz0Xjtgc2T&gZu*mx71@!gr^_CNH-g{neSRW(J%s(sx#^S#xuYMu> zK7bTsmyZ>H4E)mpKBg^O5u|-|e-G~;f3NMmC%%&x9J?tOfDl3mA%qY@2qEMiu}tw= zg$`D#(9m0syX8t2B&~4&HFThx%P9f6Ddv)dE=Y^&_955If_NY&t+J976gSoQo2o)x zGcb_bbFT0@J=8HbQ^(O^o>?qtLT}5oJ8J`WD*76=77*0&8_mKe!a{q6{^WUY2$amHz0X}{7}>UZLR{>bH+ntA=i*6JY3G38z6LJwkV zRf97Rox>m3ZP;4X;mngG`W08f)~Xg~o}fOlwW@jx^~wV7rEbJw2YqI~#RkiKElC=m zt|VrUV!xO+$zcaAF}rgde|9h!vww3xon5xCI`g~p-i3>Xz8kaO0zHy01$5i$V-WZyJ_j>TaTtY$ksQ)e_)HtfpFeX!}10=YlFUQ3n3##&_F+%B|+N;^ks&z9q3rKrL$~9 zPmMXXI@U%dmX7~cZt1riYx)_~A+9TslRs6(pswJep==RhP#l-I_jzWiRd_f$ygO0R_V=ag)AkDjbr~@4hKejjU_(&u7f3&Zc-CWJ@AQA?6k@C(Z zU)EMH`RWRapEf>IAXa@){Iv1izM9&`=Z~$5KlaQ1!|O9SDepH#4*!vg>ffiVQq>g| zFKE20YrLyye7D-SZ?W*3KZ)LtRk`46JocYdfk^r4;?lABdZS)d_41^~yXx|J=Ih9@ zeKvR*InrKMf4;u>>rtQLcQn3R@oG}(t<{5Pki*Nv_aNmXL#%kFdfE5TlG?-P-)(%q z+M}fMmY&^b55t47WgZ79XHyVBZkX?(BRH-j#${z?)BBEtef t9jRWMK?t$-ju_q%DHMp|9X&<=02~<(d$uIbFaQ7m2>?k&PDHLkV1gJ!mpA|b literal 2876 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 delta 2543 zcmV$}Nkl|>rQd@Z$HF=0650OR>k!P^m1nQzTol{7F-6T-DO|cO}@n^^-XNEJg-v`6kdoMXW zcd_^I=x{i^T(8#-fVO;fb^rjxC%FSONOA{gkmL@~Ajut|L6SQ_gCuu=21)J!4S$l{ z0U9K^12jl-r%IR0W%WDhj-(};AdB!x%beq8G~k(1=kX)d2lza0L5 z`eO9c?#rS$yzf#Nv-@_Fa(g!B@V=^bP9eE-j$6vRUaz-$_HwygKkGNRUazy6@wUyd z5FQo9fqgFn!{ZKf^zh5!$o;QOBeNOKd`W4d*KHFyx?AyN{?zoz5 zr^j6yDtz3fm?009JLl+Y=RTPRni#jAPE+=<%Xn#=5W#dsIrw@b?`jUdqR2nK`}F?p&+p&<^sDclzIgrg#p|cP{@pM4 z4HffY9n-h3mN#^_dVj%sBY*E|4!+*VyM=NsUEU0jy#2Vf^akF){ptPNpS!Mm`R1G7 zUw?Ca!1GUN6`fS!!BzU#T5Q<={Ndj}e*eG!UcUME<(qGwy?Qd*W`D=~^xwJI_Z^xv zdOYm#%YORuX!6_Ab7hB}*zmqfVa)D3`sq^4;eAKD7m{Q?zWemy-G8T#@BZ`Q-KUT5 zKJ~qq7q6c#?IO7Y>!wL_`XIp7EI%4>lyGPF9X-Z&_NUVv9XR^N+<}L6aIVX7NiL`!j%r&3k~>hC>3=c+Nz3zq-5GLz`GIWn zAOVUJeHnnWgl5a!Xv+X?OE=f$I2Tj_wmRj~=su|~sNOZ`=&pqR`{6+(cOZk)FOBY# z>VoR_akt!09NrNit~^uGlR7`SkM`X@lTvaA;wopZ%W+9&%XIf&P3_|-WIZ{TOxl9fEy<)9uI9d}ynOWaTkcZxPN<()91V@3*5_{qHUXB z&wc63O@AZancQW6$i}77>Xg!RpFU|%a))!7ie9xMlKX7c?-{C)nYk{_DD)Ys8+TW^ z!*Tj8t%~^!)zKDiVuAuG&mTnO2V@@~_l^i8ci2XG{(y?;x$h&n!xH5=k~=g)dCrg} zf1zS#E3(9rzfcqX7B;fvFO*Kdg&i#U3&l~MbAOx*s!#;wIdLUP?t1R9N_kFFdhU>q z@|Naf>JK14*NO%H?8MRE%aL`O%XRS4QEf@wN|j? z&RLY_6fRYA@9u27Pb+upxlfbJ-mkSmR%q^mqV#kk~>t7B=_x;DLrP7 z6o2$vXh6cp?Cpr78?@cGgr#yP7X235lWJ|5&XT_rOnFZ8%yXw%qYOU$k@B48rRupK zi)vd0k~c@9;GncVk}_2mNY8z1)}xyNON7HCQ2J5+a% zINVEe&qK!?8Wy>7AAY&}8LEt=`DH znuD)5@~-CK>y7+~giHQzTonE>-*Mq00!W-W^@(%ffkM&z*i+uYb@&w;+ zx%6?L{Y^`F+wY1zuvz)RM}PlQt@i_yA^4?z`)|(o+;7{3KV+*bj;&hS`1r`HvIXD2 zld(QAsUuHuDjgkSV?47qh8O);$QF5u_di?kJ4O!6`GJZ1ciJTmeoLJDEBEP^qcdSR zj@6BqM&1(DMj3)nQ4u7KJjMGQEBMhMs~eZ|ff)@F-uSjby}?KS2!CaWJkj52m+{j+ zHJ{vv!v)3~y%9^VXN5Noj2uh0;G;_vdFrrdk8)S=!+r1CIEp-xXGk$!%C|lGM<`q5 zDV!Vp{?E|#WO7-%?`d=rTiSTX$oHx@_;iua{xo_C*1z5td^nh4{WUt!LD?eTxcyyn z24C8z{jA8l#KBLC?_BBj^ZQ5t+W;V^m6LhYPk;V%^ zgBI78>B;^8)mfP>BeMh4Xr|{LeZD6EnN8-sYs&!C@4w-a@2Odx@Z|si002ovPDHLk FV1fY6A>9A~ diff --git a/seafile/stats.png b/seafile/stats.png index e7bc59eb5a4ece8eef0c56fc9cd3c87956ac8006..defa08e8ad5b67ff1db18d69d5f8bf678cebe708 100644 GIT binary patch delta 1609 zcmV-P2DbUj9O4X+872b&0019Did_Hz01{A4R7L;){{R30l>*eXP2u3Q^2&kgy`qxp zks%j<1@=iqK~#9!?OltK+aL@?JpTWed%ZZ0?E{R60SR`elWBS!L%o&|ix9>D00000 z00000000000000$d(iuX2oGZ!&gn!yFeS_XEt+Wmo7s&V<~}dyFZ2GjaC#B{@$m%K zr=|VF{N~el(n0yO-u>;_Kkl859{>OV0001g000000001BdT%zKC23%VEs6J^_Xn_y zrGxaPNQb3^^z$wipaXTOC9yz`YEsaYHeYJ+ow@>=W^01<1+z6l`hwY-Abr7XO)Byv zAYDtgrcI)lbmGXcAYDtgCgoqTs0^D>WY>8!WwMIW9kzVI)U7l z{_-GG!vlCIa=q+ZkbkEKV|xT`N;FtA+BKT^V-xd2y@hutO>xRu}2x(-X(}cmAB7Oot_Ku4Gre;;=)i6a{Gt z;Y0`oIu1KbV(CH(fml6(T$*&!V&+0h{*0Q`sY0Al9>@hJM*tS7$W17J&bWYRl6AAg z1f&b9<~Gp3o5#d=4Wv6SYNiQLp*6}46y9A)rNt?HCvt-%`do+wHtMrsV?EEW{Y z<;YnKZ8>qqLN8j5bjh554;kG8q+4tUEJwP9Hv9xrs-k!4oR1hGRW9?ih%**jf6wH| zDI#3~=K}^whQG;1T4Y#nb!2dPL6s<|s5F6G8CK%9nuJg;LsaIpgN{H>4-r2!Fd1|$JDX9CS$66`x%Q{v5Qg_m` zbb7l%E#+NVuia(qOuAQ1XM5IzZN1B8y34T6nH5mG=wME2RFn6fxTA|8u6232uT{$V zaf|{*ZV@vtdcQY+Me1-LK~3l?TzmiK`r_$~{dD!jc1K`UtV7R{NSg205Ov`|^gsRJ zMFe6kz4QGV;;#>Sa*`8S@4eflNusYFIKvCtTBXNHU(=}@MTLfrO$bh1Kk3wx^gr(F z1u(9lcwiOj8@p}e#KuwRw1Y2*<4&XlT7X-1fjMs11HLeSVz3UBmuCi#`yJ>|PAXns5ROoLeWm*%&FZ}w=ogE!gpi*)q;bpGYn&*-N8 zaUk^PKf>sK%hODCSJb><@P;>d!x((C-uI_i_~dVk%w4-OWa3{BS#`zj+0Ch8^H)VZ zR`(=n@P^%gKF|5#sCwjUq=s-=dw%oZAGK-TWAM$IvzamlN0pBSq0{dVotFZ4?^~>S zrh7WSp(VXve?E5b?Rt+gmACZlKKnI1xQ>kITDpQ#4X$6K&6C|9^E8WlH>JII8GNhW zcY`kMz9xwRn0~Vz0PDcq+6({y(B1*KcK|6A0NgtmAO-&b8A}l>@vp{B00000NkvXX Hu0mjf>!%vA delta 3650 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 CXEFK! diff --git a/signalk/stats.png b/signalk/stats.png index 890c00dd65bb51847a61a03a87628730c49e737a..68680f550b5cc8aeaaa72d2f129acf1fb1505c61 100644 GIT binary patch delta 1662 zcmV-^27&pZ9hVJ|872b&0019Did_Hz01{A4R7L;){{R30l>*eUMc?DQ^vZ$i{UfNn zks%j<1}jNKK~#9!?VanE>L3h-NrCr&<+F6WRHY@M&{N>sKOC1sF|tVrA%JrL00000 z0000000000KodyfBT0S?M(+raJ}9+!jh4qdanE;8(&2qX&R1G3?#cU;bb<46X@6__ zopdyPeCz(yXnAY=st0ly|08#+3jMoA=4z|1T`5)nDtaTwA?L>q>G zr6C6yC!}f^7IdQN%+seMUB4Uy=_5OGkUoJU2kFz9cQu=kJ~HX@`2y(^n0MJojD+;j zBXWdc2PZuhk^76#K>CQJOKP6}8qNvBjvI!R5gpJ=^eSPLkS>#B6A|SHW7n4XR#nHf*UQxA+*~sf}?rx^ky~?N9e1 zM88CsYGT}Nv$nGi4}4gk_@MpP0enRDYZ-T&s-Kk@`I0E!14uVhA0nz>&A6Lfxswhh z*t9(n+N&6MlYKua47+1`;sSvcjJw5uFWBtxn+_}HURgL8fxSjs+KuUnbXYO>N?5OL z+;5-7cAFi3kD?HFkW^SdY}_q>_Fc^XvTM3R7+61S+zqX0cjQu}OPT8q>lKZ=e$pld z!5On7r;-KM_1MxP?WE0ivqPD=(D4cDhX!=Zpl-U^p^S8`D6p>Nd^y^LwwoP_NLNRS zU|nU~{lS6sl!%-@CJgHeA1)Slh~k?aibyw5xv=b(Gwq>5TifU9R`1<^l)dFyesM=M zS!Y%4H#;Qm=#o0t-C&?F?MM74d*)2ya9F80PzTmp4-9@fvnnOKn=N73U{+n0*biur z$}6((S~Z4YV*!H^hpyOSD!d}G9SB_D$oV4vJVSfwD5>y@n&-$ZrE?Q(d|@+&<$nif zLb1v+v^NV|wI)3tV2C2_MxEnGIcM9nS?>%@2>#lJa z?hMi`iIFinSZ^JMJArgl7}f^|>zDiW;_QoTq7TC^7wzj)bG~~Lh2)MV$j0@8zv!qo zsoS27n(yp(P&;y!9M4JDTbuoCaTUgUX|1DSMibx8z_p#H`)XW&O}7Hma;35D{`BR% z?6A$}?q^ys#aINR#oc@531{nLW@WI~cYqFD(YU4K4PI+Jf7y{fq3!BjIE8sI)7Xxgt1fWdu{Zm059^Q)hPUm9MtsmO@5x=tvbDiUQhAdV%dEShsh-~ltCUH~ zqp3&LhWlj_MH1p@zANLN%j-_%kh?*_KBX@`yqn zQOF}_$fFfUBTrcp1t7x$z&hwUHUj`4_6{)bfD{UVc?Z|RKV#+*>Y@^PD*ylh07*qo IM6N<$g5ZNjC;$Ke literal 3745 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 diff --git a/social_to_mealie/stats.png b/social_to_mealie/stats.png index e4163a8e4105f0cd9de3b2c8c84a3563d2735362..573c9baa60730dafd5e1047a07287092a3b46ebc 100644 GIT binary patch delta 1300 zcmV+v1?&336R--9872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&AC^sqzUE^Moj zks%j<1jI>1K~#9!?VXL5qaX}MN!9m%<(X-xRs<^Yqd@L=_Ux&{C$d%wO2# z%~;-l?3ym-bAmjuxpg?-7 zq|j8Q%MA0a@4Dq8WlPZsW~hr@x`n(M}30`#`DEX4!4=zKcA{vFNwZ@WGxPj&n@XX1i_@i<;$gkjj08uewF%q7FHKyRl}pAA_y zRiS!G;y_mrs-NXWmu-Mh9iOf+R6iBHpO~cu^oB$A%t;j6VRy#fYYwZ|s^TfU$fsZ6 z#h1#&&rYH+K<}$>R$zsTZ06kqy@$S8k?1{C)1lsG-z*_}>i#EzTwAjt7?JCL6!>f! zTj9ds%y7Vu2WNmj9PopDIyHSn;P`Zfz=5t1IDwo(-~@6CffLBph5e`IfaBBa(QXoU zdTNznSP$uC-MOo2+DWNZmMXiHpQL9q%=RPRgo|3}Z#Uf`<-CcJDrezC*I&_{368HQEZrt@Y8y})_1 zgBB;wn;jH7ao+5pv`yC?$ms^I^34vja^R=?=>v?tCvBCj{LKzsr&j00t+I7R?=nt4 z9Y>zbtJj$`IP&zx4r2P;lmJH_If+8NFYf8@6fETiSM)V*E@|O(!2R*s9f|FCiZ? zb|5FtN80nzHyYahr;rcPv89*|ohq(k^T1tAzs1GKeM1y?-Ext#lT)h}bkvu485=S> zUd@6EEO$UaN4>V~Ssowt%iX)gMMAG$mgAnkV=gh~$%gq??J?ee)`n`gd{fzCLi_d`ad$L-%{)i+z5Iv(78pTeit5JL~6` zqe~AgRhD4gjQR0n-3G=)n0pK*vWdvO>b#=!%#(kwBA0GG22N-ofx{Sci7^k9YvRiF zTAN7gyrT2W{l=zh*>u@R!6B$4C1W!PA;#Vj%{yWW1)_OJZRrPBTM;`b6F<5D0000< KMNUMnLSTaJ@tqw2 literal 2497 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 literal 2789 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 LVqJ48;OBn<{>VA0 diff --git a/sponsorblockcast/stats.png b/sponsorblockcast/stats.png index a744730407c05b300eec4721c32a66ebed099198..d7047ee2ca3f7878606f8d6ae8eaec370e32c141 100644 GIT binary patch delta 1263 zcmV0cMtM>qceqN3Ah@3-T(@?2zGLtfv!UR0sp3-giZ z#PPv%_L)AvkSFJ{KaZqkwj4dZGwe@Tx&_aAjdA&>^jB#1v!SUK#xcr=s_d=CUiyZ>+D2M zYhCi9p{flD*DU+4#{_!7dQ6}Ptj7d;zElf8HD%~-=b=8Sjf>7{}0 z9J&Hs{JF4sMw&QJR}pMj2Zo#}e|uNKhIIfPb0(k*3-o~A%r+w&xp2^NdhN+P0S68n(677Gvd>QW%9s)h8%^FKxa~d2reu(Y(Q_uc(Vi9yLae` z8yFQw&cPX*>1GF|8rC`VRB%_thINp1 zK8AGLlO2HW!H>g{i#Vj4f1d0BbRR=HlM;lxm~MQs0}t-;k;fS;XRu*C4Cz)z^z`1# zp9^kwpc>Xg9%q{nm_*LQkWP(Uz#$!T2IxQ!Fr))L;*bt>pmQ%726pi0+)Hf5(gN+@BsXx^tB+ zU~~t1sDk&R@Qw}ZAh?%!@0c@vXK|O@stlB73nGCYG>KzUf}qTeV>&i$|IBgZddu5y zS2MzUZw~ozb;neCdShApAlFA@db*1nlbP?mS373-(s{jrkplfX+J72`yHrZH^(evl zf(44@7SK`q!iGa!I|MGa{|L)!8d+4lF|fUb*424BChdi(u4uLX<^nb)bj zMN+UuQnE##OXXMEN#t~y;2%2lQtPPf9Im=N1P?c~Ug%Im)wZbKuFEc!4G%k4+gI7h zDrZRF;J#i*L1b&4#a;2XhNPsSYFkvVAu%+>DO*%~20CczOy{vdEfUr-$}KyFcK3zBMJb3n2E8W z4FG_4dHoz=KAtbr-fyU^XPgV^H;EmSAU5UZh8X)O$b5#WbUxe3h8eM|T#1dIUY(mi=hMoG7 zYD#4dP%gFsvvP275Ov#bahNVc`VzZ?Rqtc1FT{}`z_YI(KZ1dig-D^xng7>P>gO4A z`%RnLTMgeqnQeuW+5DL!mGtQoPQPYE+S7v`({-qZU__ zy#mZSqdn??;3oL~JY~Q^3#nC1*fQATe!B~WC{ZF;B4jY~B8(fdq@as&#Z{v|4=z8{ zI$VQ>rW|jD)BE%mxA)94?C9UR;)|~Q%QCDR7u)P}^URh`=0bX(xGFUI7dP?z`N%-J zfHkqIhnyZFfvYpdqr{J^?uaP}m+u6FE@v7jfJ84+{b_bO4>6MvmVJT?LjAI+Xt^TM;!fWY@nzUlC3-MP}}$&upqL6)=rXme8g z&=8>|6CDMgk=j;KrO$Og*~Z7&@vCw7fiuZ<2pEfpTF3e9$LIpB`X_sW%qy)Dl7YDD zOlgzWo-%@HRApOFM+loQDfIMq19cIj%{95Q$yiJ~2n=7SYuUMXcz}XC2~L;cQpX?1T)3||pGK3|_LHqX zpWouZO*2ytcEmi3(3IuJ>*D(&@~2XK-8TC!oV*?@F!bR;xdX{zQn#O)#r`yaXZ4>& zD624Uc0}KkrFF)rc)^O7U1aN3qLSGK&tz{nc~43=*CBppsmA(=gO1qM}R* zj8JqILHEJrRRi?b>>sU`nhQ-jMs*yZUX=WDqwt75tKk;ox2k`4 zjZ^ZX<*FSUga{v$ZAmGfP)q)(w{`tr%)JYgzF%UNJctmvb7_G+7>hwzPe&bRMPLpB zRA&aYl1&H~l;eHMYFPYw$AelrFhlKA5{S~l042%fo`sU@_25~Hq2XUAHHZJCcS)U+ zVUEn$-mJcyCnR*es2{nh=~Nb%HET_t(v7xZgU-cch4&wb@UyCB?tGDB2qhHgL>(zT zM1FPhGs@j{^RD|Ib$cw}Ch*2ItA}+B*<=QTqrRhLF#Oex1SI53MvjTL_r4Y_7s6F>C^wDsXw&z8iygHRp`>s+BJa7=IoTvUG1S2>*0USZm;c0B3JX zbBVExkEW{9dD_3CEBr5tyfLjrsVOXpPxU5X;=BO5J+jqk{?&`P-#$IB;J;+>1(OD#mgSjS^AJOs z2Ry7j*T>7(mC|A-W;EVTbkjGZp`R6 z$4$^VXRI8-VO3jUN%9gA4*eV!V8-HQQKiD?;px!NGH8+qwi|l?$xOfIaaV=70Q*Jf zATOGO@6BREjcQ+sS|!x{JLYHM{RUSB5WbnWHvg%Mfn6s*_}YD;%Oi}pn;kplSW}0r zxiK*Q5_GPD$NzIkJZBcW*~!8cw&TMTD#aL9xWWydTu*#oeh{B@k{Y}3Y$}aUV4m=_ zyny>N_UH@QJ#PD*v}{2p{E-Y3IBeyxI`&y1%B~;o+P51_y%i`Tvxylej9HGj&hszd z+z!#UTCj~jw${j~9rCl+D_8rAgSbEa0ZQOWMrl2R#ECH((Cr(OsZv}A^1hs0XJaxq zgbaKteo+A<5{YOz`-bC*#aQ&}{rlq>o{k0EfmIF@M@mLCQD5<%x0Q`|w>2~K$#L9+ z5cxRHVqGv78DM_T;@RrAqrdkB-IWk0*5Ganha7ho_B&P5amc&5k9h^*9gynppc3+! zt-UhE!x6oy-HxV@^H?Ic<(PksEbphenfD9tCzeK`nl-lMi2ifPRKI9{Q5EKq-2kdmkD5+ z3S|xr9yOjihk`$)fbs@lw?U#!OF1N9*YD*kClb?j`!4XP7=AzGEhC+YTxE1(aYGPF zK_l}0Tm;Ogs;2Q}pvJ;#wJB-!b=|K^WwLhj=i|ev^%H}pTnDu0s800Yrdz?t;#n+Z zvAMPwvpZnvq8S`yq%ku*cVj)Z6}A-IW?k*a1)(@1SBSIcI0KLb0eUu{R$Z92itArxrhv zB$*tUJ)?=5NXlwXTE?n8F=>0x^JcVL*In^%))}I3+J}PLts^$QTxp8y@l@)XKTXX) z;F*Jb{j!zYX!F!iwRFD8k0S2G#XEK=-mg{O_3=yG<`w7TuyNZ?PKGsS?M>lMd7iB^ z=1?8;pB9I4@g&=Vn2Gcn<*l+E2Mt1duM>VQ%)^s+p@n6b#Z}e4)FMVkk-xtGXNB~w z&t2QaQcvCHzoo5APCHV^pR2U4_D<(SP8?Qim9|{|DpnU7fK^#Klc55oUF8P|jsf&r zfZ$KKS96~fL0wKixf;OovO#w)NvZCJEQ)EAaTP)00Hy}0{{R3{0J|&0000>P)t-sOlff* zT{M5un<5bu>(F1a$+k+}fF1B`(%!l*mQoE44Jj!pD=RA<+G83M5hNuh%zPR7y#(f? z3;+NC-j)#6h!yXz2z6B*oO2uFkyeiY000YgQchC<^Op3m7}xzo^JlX#ah(7F010qN zS#tmY3ljhU3ljkVnw%H_03ZNKL_t(|+U=c-dgCY(Mknngb{5%43X=W)PrAARRZ!>( z2st8|bhf8w_uD!7>rV0Cf9E;RdCqg5^Bm@Uef_UJAMLq(WLfrnK40yr+9Qnf*`8Z_ zzRrJjM}^&yzFaOX>y~t$R~1Pckr!o;|Ac=S+5_w6JRZEEtx*$zN9mVR{SEx{Uu?>_ zTiCz9zr3S8!0taf#+8u2>hGuEi(dLC`s8@GxF0Rd>C6 z9{`8qOX4S>Z27le2J)xmcRH6}a9%1huQ2>^rMm?$H7=y&%X0YAolf#6`1n$P0O${C z(xK7?{(y*;&?^eIRy#25Q0)@@Y3idV<523E_T$Q@L+ftX^!cY0fV-5tlzw^o_?X0R z|Gw`Tl=@ThhDulLP2=8~Y-OwUuY`fuDhEo3*8UWH6yUdi_xtsFy(0sk6F$BBRPk8Z zLmmEp{*p)j11;gYu9e&Ft$Zo}X(;tl{U8V__|wCOm3RxhJwLzLt*ek-fGS*zuSeXJ z-k;es8xB`T{?4<_@}FH{r~Sw3QqhH;ToE@yyOVna;_dl>)SoJrs|Ia1-*u=Ppo}j$ z-H$+<26oy9?6r*tywz#ApOpL}H;K0=v+}lH+pV-)*vnX3he`I@>;s9z@b2Uuf_US{ zP2%l=ZvD6Fc=x#1Vs3v-7-t6i7JX~+YiQf)bH;Vv%sNTjbnCp~Jr_6Y*}{)Wo8Q!V z1px1|@-6q%z56ihcgI0){V|Ri6K3OofWhDFExBwPBR}yFTk$*2nK9#MrEqS^WIUmwC(#j9y z8}4;cgNUvk;<*$1IP&WXWH}QOL=7%^=VsCx^iQOY|tGDj2BB$yyZl7*B`0Q1wXug(yy`z2_c_Vz= zg52z~J|=}czxF=Ro(a9j&YpR#qq5)vQ7o>^Oeq_()m2}Sts|#%GZW{ zKe2m7?#|m7A>!FeN4XlEua9{5A(+=nFHh{C`gZql7P9$M~EfIfmz@+@;u&NWOFK z9d@a5<=_9DjrSC@kGb`+Sx7!!cQt!8?^~c7zP$#v zzW6(0?*h1ch%=J6O-;^>NnH&`t~|YwuZp6!&R-Gx?O!P7vuC2&xH&fmV%Pa|gL{*} z_1H@@pgU#0@leB4Y)%QollL!dIaAF^1_bj-dF6c zX}^a*eB{y#6}_{mS`G6h`AkN1wT=Bf#U8=5yWKh)i{7U)IC!zi!^v73Us$gF9mO6= z=3{Q%6}?X+a4dvte+nD>+fk1u^I6$CLql*Q37njo@u>7{sPqg0UGcUi{_9^%=43gR z_UUX~>9Q2(QR!L#HNz#kV)%R`vETkhMNV{CnM>&tQU`;Pehqv!1ax*hcbay8Zhb`Q zV^Uu>0=={_JBYo|pKsD;Z=?2m^plOcb!LvnjEv5Br#&I|;`8f_+C8~-Qt50&>N?g7 zb~>@^Fuv$Nj-R{Tc49tumz8sd$6eL$P(lym(*gFEH1P`k!Kv@y&fUXPcAm~)_)eJv zW{RB$p#Ch20xG>Yv}51LozEDaVzzCkZ!Pkb1Ch%-dzKf4YPt0vhjr|GxpRkGXGDty zM{#!3orQMmZQh>gc&=q%6bCl(dov$#>x6MaMQz6mQQ!a?&>02XcONRYWg5vGB1vjuqVab z>DJBYojI~}4lg@|)_d#NYb^C+gmZ~8pBSE^i*dLfr>`{yH}Y+HPGAdv1nQ|Vce`~o zIb$mw{!k2C{)0#GJ@u+k!Q3&*G!656YKPOCr_hWXa|=CAAU8Y@*9}s=KoEZbt$%%| z$J{K(I_BD4E?pLA!pHBDd>_uq!d&vylVnc2b$7iL56Z`?$YuI4O#-)yy6UC{=De&E|ZB4d@a!-_c!pv>AJ}!0R znsPMiihYx@cgpEfAb(-X;r_X$RCR#4`COvvQ zf35>L)+g+*0;cO}QBScBH|5q{JN@Z}1+k%n;#>iYd_vR@!Q44KWlG$+uOO0nms)4K zBn$ld*U5a_iVAysn6;Gx{S3r~J{0F(M&_0X^`kJK-aKXBYU6q_L8RCnRA?v*pU5mt za=p|wGtu@yG#Yy6LvJ-QbftB0lAwM&4)dwaQrSDY7Z@W%bFvzz8?D*U zb4!N$@t9L?-KBIiF%=EEeL(jm0qRF&Zk1yhcS;?;;KE}C@C5qSuQP-C*E=TYKlJ(7 ze)!{8f9U%RY8u|E&BleEnatUs^)wQ z&Y-?i2p>3bN51!&hdQs!(P0DINn*~-IH0#$f9~(rgC}c9>Q$9jdHb0UzgBsrz8m|5 ze^ur`)qGS>V^oG%F_i-JR_nV{4m zN9Z1J@SSD4$}m!kFhlsS_ZyGO;u&~mzRc$5O=SbAb)~9$ms2%o4HPMoFE;ySOSB5=??O z+xCj9pvbo?;pF%i3-E5f4$uxWJCi`ZUSdK+6eS)@J6XzT`riwJ#_B|9$59^;zPq+yoi_D;?2$&n-hk@x9{Nc1M=t*2j#Na`5QwKyyqrs63c`XR=-ayDlX@kQYyGtPYHB-e*HMBlz3@zgW0aLW*nvxy?x z63czPo6tA4+bSHqfr5;Iyn)`;;K4*i)I~!}502$-Z@AcdtJHA>ME+)%_$BpC&>8NrZj|~iLWiuoC9w_Y?x*?kcr>36l&jA&@NiimB%Ql> zx1S=H${pri48NAoh^qtPaIYP1Spn18^w1tjvx3t-1gf>Zi zuF^qShS0fyUqts^`2rQ1#G!kWdSIcOxVde|XHg$B@RjM$-GQ6@PDsfMY2c$)=tTWhO4K)nA4m!h9uRTaTkkEm=*Wg}g;BgJk znWPCVbNvG#MEQabvjyKgqTcgZ7t48&dH|sVeQ)4xQ+MtftJK`6Ud=!k$2qN zQ$C|?1=c=2+fbIG(P+hsE4jOcou_5yg*q2Wp=N*^TA)LdjN50f@{r(7#d^B0NuQKE#<#qrWDZP*7 z$}HXm#;q0jeD&4kjn=)D`6J44R%0u>E<={$V49{Vqia)7EC&bFF>fT9~>1 zTpo}3)U|=HaG$3Uh4l2!<;nm6<#Ugs=b0{st}^G!*-2aw%d4Uk#BeFJS$g)a@&M{ zy~kvZsjJHmn!6pufjJ4S^9l&PGKhDv+%v+IoR3IuZPvCaUu$k7Ja&WLRb!0_cgIki zfJL~9vh3vmTpRcZ(Aie#*}AN4TNro!c|7)`{=moB5S)H%cGmrADLB*%k9!@g+jOynGe9bFCh)QNAr$*ZMO*4{bO(FZM&_iT%o&~ zbFIegIZ%1aT2im`;A{RpQGYG8?+3K*mVvK~ff;LR0(V&|M%K3R(0+F;ueI&Qa#%GE;0Gp{rKxi#<-h=Etv znfxSfY=M2>I_|zNblh$e6Sm#1wf9wa2^cCJNxcp+8;hYc5ApkK`@VJDeZM@Ny!>D_ z*36q~6`qd~hCPR00~>hX(C4S>o3AJDR*|C&yr8c(xaK7WokMqC>Iy78AtHF_$o(`} zpL3yazT>c0?VY0j6!zT)VQ1-j4o;{L-Jx+{;KM@qQI(r(-?uNH*x9K&+HGbCN9AeK zxR*%j^eL)fvD~mL)I()%rhWIYd}2qZe(BDbfrryk6*&i4l1?3HTvC7fo`=r#6m%z3 z<~M#1`YcnV^33JZjtXQS?fF3`qYS(l5jx1vbv;HnZF}8;@2ar@q5CMo&y3$aEFuWk zXKOYKW*z1pF0m85KghyUR~0FlgX|oBXUV*l-xR*vZ6JIbV)*S+ujWAav2nz=)GwFj z|Nn>NY;1m?eEES36SjGOsl?WOB7{@u>%x0AR+ZcPW*dtWzx&xIf=rrDY#}2K*X$1l?CC_nL<8Yg^!&vfQP|y^XdS&NL0YsI=1Q7P>JmL8WT7H12h; z`^5%6n>jh-FMgkP>i*u*T}Hj*t@i}qeZSoX7Kgd!q68j{qI6yZGhg@Q{a0fbJ)OR+ zDCg+3`CJh>lX{bcDc<*B53LK-XaW0#O0zCgl40E7&TITp2dT#Tz4tJkwB4>ASHVv2 zoaqJbo%fx1XdT`|r*Ag6ORqJ-U7kV&8J)^PTzaTK!@sXNzFn#Xeh&rQeur1Ue9alS zqd7<-j;m|Ud;s4V_}$FA7pMN^_kB(09yzV>d$fnvdzUWFdxZw1&_JB9!#AaHE%JeT z6TtTdp8Jd5eO`HJE7j$=Q}_O;YP&Jg;NJQ0@6f>S))Ndi)ak#hZfcc|&Zi}-h3U^jx#mH?%I&4Qiy@t*la4-B_elVc37*0LJD?Q+0 zy?am}KEuEZbC0_miv#nIIFPGLoS65dq0(z<;1k*|wWJdJ73#_C>$1vuAOkO^lrEgD zRPEG}PnXm^%~OPeUXDRe?wxec53QG#S$;KI=tLN&OgoC8Q@>r`5;{)S zOEX8Ga_QQz*Dz%RD(`-sZQ!$61)AlL>&|oP)&X|=dcM+xjv8&ZKM}{-)z}hVN2i-CwdvB`R=p+Ok@wVY z3!(IlH>rF$^&{Vip6vB_6W&Jn)9Zye{U#+E`jCMRkz zx@-@5<1atGxr0ML+WK%MYd9ZJ~Rr_-X?Zx>7r&zO~)9$W?C*-`^fOQH?F({RSHOXsV`7 zd!d8)jRs!s0ruH*f#Exvh<$tLRy7vy4ijb@U72^%qXTj4tgWY>ZHLY>--TGZ`hK`L z?n>{QaUY}I=GrV%6D4=TrxyhVuWkLdcALj%x+W)LkCLW47tZ|Lf6R0L8UEh)_jmgv zf(?A_+%HqBr2}^GKD5@LxRr>!RAV#WBhcnV?B`*EcLQ|CwB02(xUBwM+K*-fRr|>= z@L$`ocPujvydXmNT9s#Ny5tTWdX0rXz~5rvvk(V{@1W0?Ds;%YC*A&E(Ay!KkM5VL z{Z#!Iw2H=D8fRWmb}G;Vzc~tNzTKO zN{45gfzQ07XXM1xS4snN1McsEc6JH%@`Gbu#$B1|M`Q}S=5C%<2HqNeWnuelsmx0C zw7GR|pmIns#=~SY=FLa>qAo89t@WL?|HCC#C37NK@%f>`$Jp ztIK4dr|!?GS9YQvA9@eG75F9cn=g28taZtur0+KrwXVfYgzo)W-fqjlt|8x79$v>RI$4tY_Z<)UeOKU?fp=VTa0nd@PmCgO4E&l{4(udgVM=lu`ZW^r{fXPvSfd7O zr0Qk`7AEQw++XQ5USJ*eGbZ#Fc>=_(ht_Ml!$w|2N25^_N?$!s;lKLMc7on|a{fr< z7|FV$9!Df?=Jf0MSyqkB%+j3K>WppPzaudJ$sXw(v}>$(R^IJSy4hA6NB>+4oq4~b zZr5Rh7v!#cKfyX$jjfT?$(=%l9F4<&O`Jv5SQx&saK-mJ7WC`RZ!OPC)@x%qq$5eM z(VV+S10TSuk6vf{4!giJJ?748Ea!5g&yhkRUg$@7_^s;;W%WHSQmeN8;3;2<#2(eFioS&VqGUbD9hVcjBW)9owIlXkp?aaz zXV>LI72r?k0dLO=L`)U0QjUWUEM%`)orTW0#-S!CQtYwydO>FUx$w)l2ac4& zY>q$|>)UK)mICzXGjdy`E@>myUY3h;tJgBI33z3j?Ya8KvR~-p2!oNA1~;aC54Ijy z8u!|Mgb&x`j8LxjI~N%edi)zM%M5&H%pvZ3=tbal?R<5S&e`Ut=^0=5o^qeV1zj%{ z8v1PNy}s|^Xb*?Et~I&(>DDAgUCaUh}afy!xU(x_&U71z7%VEB)VnU+SH}c)y@-KxcvOvPHa~ z?!Kzr1CPf0Za&y$EG4MRkyn})4nRNGOi39{)^N*VqbwyLupxt6rFrinHq^Tls?%D zT4qoH02v@jL_t(xE!VC84gx)+-t&mOJa9MQmT|9YYvFrMHq^~Yis`0$wq`l3(Pd*S zfYSfUORH1$SL!{F@kZNZ9Jgi-bf^JndJFW|zrO?&u$il{Td%)zv+$L5FJ)nko)>$(2dItHgans z*1d^jY{^u%+M&aV*gyq2_^R?BU~V+m^h?@C^lr>cl}34{2J;ix+7Dk6Gwwz~?s!jW z`)jV1#QTfp^o+F@80?cHqW9XDarcg$eoFfS8RquU@ZS z?H>?2nWo2k&?A);y*2K@wA(MJ+W~xm+Un*?IUUV!dQv%zc_-8KzX07#(S;C7>6UHp zfS1m;I8X-!f*xRMhJM%KPlWHtxaVbyTq&J=S-GYn_(I=yK}y%uo0k{42jo7d zQ28i08Ds&)0T`p81CE2;Semxk?y!At>aNZz~r@86GQr zi*XOP4cG z_3K}0t|{h1tK40eBl|7|c!?7fYMz`W2%UUr_3guVqy8#{qFzF!3#!#dzvp6=Wjnc7 zoTnyo=P2ykhwsL_9m=DFRNbL;I$6hlU5~?WH1479tU81DcMjiibFEa!p;s@h0h-#i zYRaMab(b5)hNb+S(gpo(BRL~Q7vPlA#0y8Z4yGweJUInFdjl`Hhx#iE{QBbUk3gr4 zyVAN=xUkcB&NN#*zoOwo!yIq!}>NCU)4K*xT`Vl${9K0LMQ;+2A)p2ksq;p^7!%WdD zsPX~2%Gar2j$TQk8|-~)?&*iQ>ac~``fWi^)v06D!{X1*Z1G_wELd`2o(EBXwPa3L z<;)`ds9S&WWTB76ap~3MOxPW3KJ0aEKFA%v4dqAw(S73jYkMjqlG8OBVdZT#xbQMo zmR(@nv)JaHjm2>(MRI^Pg6%>*^W}ztb0rXWa%76QtzM3}b)Uu^cG^O_^dy`*rv0Oo z{p;f`rm_QGStefS;Yj-mD_SDyQ2Ms!+KA3sxJlSFCSnb7XW7N`YaJHvQdxIIS`ejJ zYl|cf=sZR4fu7+j$Dr>P$r-rWCCJMSi@NQpS2>V1!)w}Zw zE4|cazI05?)n#q%jD-u~JsS5Q27cV7$BpEA;63jc&+;_J-45aud+f~x9l^u?I+&pH zn4$-OPVM~O$EhpeJlcbrO6X>)UczXO=(p7+mb%&_+N1Yq+=D=Ok4nWY&kQ>RLjpI2 zp7%Oe;EhyWpquJ~vhjnN*REZ9c(2Ai?0wZQ8hQ---XQ-7|0pAVmZz*b>MrvRV|d}1 zfj2i6l%9<{UK8r?o`aaM?oph2vlo~@9*?-MB{#gQij3t-B3CEL*EaRCECll{^l;C3 z+#Jv&tN{Ox@*pFwzlus(cPm8~xY_2o)mUTqE{%J8bB*zIl|GrJM{(-c?cI zywkdsw1Ig!;S#!e145N)TH_u-=^oAdc;P*cQ*W97#y0Mi7P=#ABWC3Uow1|+!QLh( z2=nf#9yd{gjpEd=|2}?qG46xVE3Na&Fz{+%&M^>OgQ4glkn`4DBX?2wko$NqJx-?H z2tE39$-QwGhEJ!;v8ArdS(SJqWiNf!U(t3cZ*^EW9#^}e-$FmYxr=d!PTk^O3S)E% zD4ndstNbnFA$0C@1<7>6799HZJBuEv$g5X`UstyuoU`z#1@q(qp$B`7Ew+8X zMv2^w<{I$lz|K?LOL@%+4#PXDbN-Eckk{D2&Bd?(#-tvyEE8Smxd6zK)+>7g-k6OY zxy{xbIStWAI?ZoRhon`fCWePj}eD+xJzED{rj7 zR`3X=b;qn6zUqW}FeY=~_16H7edJzxyrNtb=%jInN(Tj+$}Y!B$BryKwP^0igA!+P zI&9(XdkpA~`m4Z7A5GZNh6>m8R6yhIEqRdG~>li%L|u zwO$bx9uC7R+5`JqWWl32A9eQy*1eH>+Tr`<(ml`H9^)=LH&XQ6t#oDFD|%`Q%~Zhn zU3A7ha1`f7>htREG3@)6hRcNyuXw9S=S0>+wv;Ylbxt^oG-{|qpnGoZZ`C;u z9mV;8&KFttkoLV<46#Pqm!5WSEfnstg+jl%2^^Exv7BRm%3d@lBlj{3U6%2J9VF>9 ztb0hQfB#z~bwqpWHD+wwt3Gl!yt)9@SWu8Prl<6fZQQ8< zo`~V?S;^8^QX-`u(zyGB&Un5QddODWKeyH|4CB79UJEJm94bAx`Yx5b7HgE@@%_dw zau1C?iyy`Xo}ZzIpe64i9=~r}3pwaqe{o3N?6i_X2POH&xQDF2`h(7vTlc{8GuI!S zu3seYRk#V`{;KjEvNpKOu8VB5D&m#%!jo#gg*EP|7PraHvvPh3HqNMAe}9obIL|ci z`}OK+=WjMR@;tXZx@qLWh%C1BC5+>hwGUZ;wVv1A038W^rgaZL3atTe#Z4Rc9QyR! z4CIB;YsE#HYUF}raH0Ewo-GgKqFi;6MV9;3_nT`k$sBRF{kkx^><-Rwg63fJ>?86^$K5b0%wh zx+0Qs_cIrXZm@kVfPSFYJ&gKmJ}4ctro%ZQV4ZGU>M@MFr+Y2WbwWRo)RA##gU*$K z&#Nk@q%H`b?h?B;?)(VQ8OYZbLO+Vs&E{I3E9@1h&`^#Y_gO8a8#9w}jJs!{e=cIa z^U}~w#$AiO!ZjK)n1krub=kJL)+wE*ZrtJYM7>Pt?Eua7a8X=^ki+^6m8=6B4=y}a zxI{NR3Xt;{(03}kA5H2mUbd+*{n7r*7Wa+I(#YG#YJ4y_6|>Sm>GOD&q|g=iO4!j{S+Phd`gZW^ zDzHb&+U(| zIS)clTk2Dh`$RmKJB&N3$#*{oS@4pKFX+sN(36(>V7fqYt^*QLDwZ8$<_h+=C8rH9|F23p{FbLpYi%Dt#{aLb2QlDZMQC% zlaV{`M`R*IbF0fUC`Z3-fS#(<`8?we3bJUBCa;{6vT&C{7rFD8(6=mw1*<1E2|ZP* zFN)$!&km1kWODfEn`@AJ4Cw2oB2gdxwh4NgQeSG^b3^M@K1b=japyb^^b8i|)_8Q` zOXz7zJ)4oD+fp~8xoWaHC!Pc7?ga0pZ@a(fQRqoZeW`IbT)S~|-Ejq`(RtoWoDIyA zhR)Yd#?ey096`?0);6K(GchkU|Gx6q@8u1z=ehlcsv(VE@+twR*ow`}= zRw{SPIFxzX(7mQ>2}=F3r2aa$Dhq7<@Y|hnM?qYiDT>YWGMno%2}=C~Zw|}X9i(?^ z{g@bg$|o;s5qZt=5d;9Mmd(PFz$sv=Is{v z>*1PfQb&+kc~E|;xO(H%-h6*`&4wZ`4j zd5o6Jn&p8UrRX=$(D$#)t!%E%K(D=fC-%%`+8 z;R?a=CL0TE+;>mbAAVBwDd%1d^;d>J;@x0e&{Su^jr-09{v(`mN0T)#6|7Uyds@&r zF9RF*eGPml<8EPxQJmI!y!y-leGd2-#(h@0Yxi&}Va4e4PQFm7>38vVy#tl_bjQef| zo<}k6c{M!CqigOg@|D$@gV0vC7Sg!yWZ?bRUmeDs$v7R@_4sPfvKdw$XKP`FzRM;_ zpUt%~>z?W9b}aTNmmREK6tf+A5t{i9ZaoW}q9fyu?K&Khi@t!wW!hP0IP}oQeFwK5 zAw|z~S${P`xack&)?k^_qZC$haT6h z8_l&Upm7I595cioH$%@xH%zfT9D3AjJ*IJIx-etUMKT_@#m3ky=0!~AvD|t*q7J(5f|u zn0c`W^Wec8HtwPdbuzs?igCNCiWSZyyx~F?Cgh5GEe`U{bhnq4d2B3LN z=yWsPNY?gZ9yFN4DSAudF%Wrh&j;$8k%>Bw37w|SjAZTh-+%8%{R4Y5V?dR>R=V&! z2>Mj;4*hx*=oyu-rNcbMC8BGhL^v{G|7;~N2x}(jyD~q*JB`yNfN`b!-v69UrEFv& zuG~LxKi)&@BP9Ur%1x;=?L78^&Jtsu+!oQ5Q6diF%ptjW{dC9ZYg>q`_Yd3;P5sv` zbaR0myx|gKDX?9BWq1rS3Fe1*bbB<4GqZDZ@}22T6r9I~&dfqw8q5zz{f8Dhv#T^R zl8d%=hP=O&B=cl;3$E$Xb5wZO5xWu4#alJR$bx&FNV0ZR>b7xbu1eeSm(_Vz8JLrD~rU=NEYD{^*&kS{Hcl8X){lqy1R?c?2RL4nMMKU!IjRt zc{q(dZRTlHx1uO>UhlDbum<8gBJ*0>L;T74ATo^+@6!;a!;H%?w|3O@)teCPLNV31|%av&-$=kx%1YaABK5~)W>EanRz|cn3{?+ zJJB*{GHf3{ZwF%DO-o)AZ?rh1&g`3Qv6fKCu3BBBUxstd!(UUr(c+Z4IWiSV>20Rg zy7RhLQxk_{o>-a2zR^OaYwnA3!S{U+*?Fxj`yrVpMV*=BGPKkg`4L0soM%-Zv`gy8 zWS&qsM@4arzSThAWDd{#S@y{51BUGu^=o=5I$QzEs4EWk1x6m4d2ia4(m!v9Wu6Lk zqS3;M-M?<72foiXnD+h@hjr&k1@UGS$H*;#4xKaISmnV?do7U{ozxG`ybb4eckEW9 z#hPj#Q@RS}f}x$3X8g)V2`ee1kW)Cy(U-@~0F$9_$z(Xv$N z0ib7C=G`}MV%m2%@ejKGy2PXN5K0F!SLdB%-c#Sl#5=}i773ksReClIOCWFFg>rAl ze5c&)$1yH5Tj&g~CiFN52V`DInScHFhGz#8&**WPxkA@B*}PWcI4Z&QbI5o4)L60T*mFfM{07u z3_H(qqa0Izet!M;-sdY`%5L9iS*3J;V-%!ie|MQj7CUt>d5zM2L2v$BUZsh=xPATi z7fvLxQz`lyp?fm#&40;RM!ce zv27;4L*6^{QhoVTGS@l#HFk>5)(d?-^vp#5CuKfR51X?;$XeWLkG{S_qmY+US=3&LosO{dXy!raz zz5Snj=5?E-^&e8`e;au)?9>9-^-5ni9M@Fe`n*+?gA3yl2<`;Z^9%p*Mg0*%e&Na?ts}{6uc1Z`XiP9A6!`FZJl{|5DZk z>}4-MKCn}bmQ7NhF-Ot;k=CpiwN$v0df6mtC-Sgr|8c*r zxK8HyDHoIWfV?4I8N_7>cOsvS{p#&T3;oR6e4Vq=`{{$mks}9EKT9zS^7hqor;&R;SKzfrcyK9r4;AF2lI`^WW`6z6SeskpPdoJ`{?aNzA}_=Zoe(!?ugTD88#ty>3L`Uu?qkCjd?&uRp(UCvq=xpU2(xM$7cg zR3lPXp9*)Y?}oQ1HE%(1|2#z=n>%+#acpic9X!yZ{#lbZ0FJ<)#Jxv#w;`;%&NJ@W z>)F3KzqD}W&4gY8VuBCa}zw>NSH>_LOr8ebaU@m~v zmC{e*ak$gqQ52W8%;iVVzPHNlsfg444Ul&a|BU=6rP778@!F`LempMtI|Pp!EqMph z1TT*kFO10s#^xXG|FD4KK8^am;I9%qisGIcxaMxLpE@P@0nyG}NZ_Z$_f|ZP;wmik z-l+Fqy8m1W@B>g;MgYma)F0BMx4=*0`-5jz6gPPFl`02rKnNJ7f1kip0sp^;6~#&9 ziufS!N`F?u{#hu&UrOjb?@r(+@MO;a{`bF+%jNRu*mo6`At|Apl{h<8uq-ersa~o^50`FUGpBCx5Rz&PQGH>!T)HBYnP$8rtqtpjZns3VA4J7 z4t7iX#C<&YE&Y$72KR*cG3@#ipzc`TzE0ZbInQ~{bDr~@=RD_0@BAOEq++C=1lcVB O000000Hy}0{{R3{0J|&00009a7bBm000XU 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 O000000Hy}0{{R3{0J|&00009a7bBm000XU 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 literal 3787 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 diff --git a/tandoor_recipes/stats.png b/tandoor_recipes/stats.png index 25dcb3d72437e7fc342b9ff0460fa9dbe83048f3..8523e6f1e189826fff5dcc4d8d07b26325a9846d 100644 GIT binary patch delta 1367 zcmV-d1*rO`7xD^_86yJ#0019Did_Hz01r@1R7L;){{R30lmOG&r0=y&;WMn7n2{kD ze+3CiL_t(|+U=d$lH(u@MWs0Z|IITMXYm3UXk#OE?nA2M5Q@&Rgb<5G5JCtcgb+dq zA%qY@2%&oE;f2iaq4A+3!^~CRuPUFvz-a!7cakSc=rLj{V-EN zBZLq_2qAgPI1iHgjnLu~ADpS+z2Z3&ERpukAZ0HK~e-T$@ zYBJLf^dVPes+{KEfo^sLK_KTFy3(h+gRWS*M@t8~KTF5G6UYJGM<5rxaMsi+>NAkj zz=d$y5a@$K7oah-nnyM*n8VR4(MGu_n*O&f1L5--0Mso=%$@}ovG`27=eDhbFT~K=+jL)_bKS< z{~o=U2Jb+>p+m1Tbrw;WO29q;+xYZ+B<}$NxxqrW=|Ay(xL!(~MHJ@3^@F&M9WFkY zmr^HsH#bD9xheiKwF>l3nG?v3K16FwN&_B0dX5~>jW9n*&S>E9!00)0e?Y${h&y#Y zJ!4nj5zy(o}7_Z&HNlcARdatzr9h~kO^IiTBj?j&bC zI(MLZG<2p`9U3}QtL~yWrdC}tXKK|Ua{@Vs%-QVVkU4$2L*{IDaLAm^4te}1w9(68vur(4g46`&6m!qq(4K{--v1m;@tP%#2It6@7& zcIYvLdkRl>@Mh+d@MH&&^JE8*GqnoxYj&*yeE{Sf2<#_hXFk23Qvjb=n>l@Y3yAsi zCDZF%I03rZ+0e)0aKAj3*ZXy#pBjp-&HLEk@A2zEZybFm3_jZze*nE(zdn`p@MXO| z&`pMIt0H%scr~f$nPTd&BcBR_yjPqjeLsv(C4Jb?ZWV=+QxW4&V2q|_qGyUJITiDd z-AwFuP}k5q>6kB_Pmi7{HvAg7Y3`h#lkxwf22|`!F*Th_OTzrnp2Xo(m4_O#eKV)A zAiKM$n_0G#GpDKBe?j~_KYeKEh6h}@_tR6S-l5BIY1q;IHqfQNnGT>|G_3wb;1C}d z`m|WZf=ol-*zI=wJS_*+z%~dy1UQHi(u3?}vp=6p zlYyMpS4FaHBs4<@qx`D8Foo?*5U2>fgJpV%238&uF}qHC_rD->mlUubBDEA4Ko_ zs$}ys?(d&ie}O>x;^Nw{_sx^--JRS2Vs^ z@nTZ(snuQ2pu4xb-$C;|L#TM7dR^b4Ikj&;zqj%2Y7df1TY7SyeH$KZTc*0Xc{b6? z_Untc!Q#>Cm#3j**DkrWU()ziwSNsdv-+Av6o?fTDG2JwbZ!PAMD88o-VsYE5bhoI ZqJIPs4@XLv?w0@n002ovPDHLkV1gf;xcmSB literal 2983 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 diff --git a/teamspeak/stats.png b/teamspeak/stats.png index b3fe935fe021698ce47e57a4b3f848f27bc8cd27..5899c72844dd9d47ea3b3a552952d409c24c82f7 100644 GIT binary patch delta 1352 zcmV-O1-JT_7UK$#872b&0019Did_Hz01{A4R7L;){{R30zGUT;0Mp;H@@W8;KD~~4 zks%j<1oufqK~#9!?VXEq;~)%05oQ1XmvKk{QJ>63KELNbzyJOGwS58Z$}D|>J^f6i=f|HH1m>Ec%WTgR z;MvqC%Ch}RAXTO=i=BTS7R2ipfR2NQ5JCulA%qY@2qEO&T$orQ7Qerc_W0Bsk6isi zMpmPMZqL|(PWQgrih#yYJx5O3E@5?5+*IQo>yQez>;WCIk zkpcZL_Gx|t_dfi*^((1t=mPYf_h|Cg3ipBI$PG(> zJTxOEjOqR9G4U%$E*6HBW%lqi42y0dZ`>z~i!ZUc#DWV<+V|_N2jbXr%x{ms;!TX1elgQ~nryYxgbJduPgj_KbGPD4Zf2Y9lY~-htjUToxJLgRkel5s_=? zmp`DiVVv*e)g?vu-l{Xd^7^XPS42vj5Qc5P_Tf6)j)f!lWFlrHm5$iz&_|>V^lD)> zUC^1bX|iv|bc6Pta&vF`_)DC(VM!@fswCsIT>Y)dJub1|% z6E3HjC4CFUp#DtRpH15Z^XWd$hnH!$dy6Y9-OJaDMdkWMm6+c z6#40Tx@t=gCi`{MV|p-5+$wbMo#ULlDMzmA!2ujO9CjQz9CpTZ0x@GkA2}%jMt*N; zb(Pj?v{g2cKUrEGGARMbA8d?&lp&K61du;DwJIYfCGa4BavFKWqy&Uw%pG=MFgJJD z0p#WmJAk~(VTX~RgWOyg7Ubq`b^!Sk=tDYkAUAij1IW$Y>;Q6ejvPUDdpA1}WN$K0 z?>8yIcfJUM>KSJ4=XN0*RIx)OJ*ey%v|O9^w|9l?V)4lf4<6= z%u3K|JsmTDF)2aHe@|t9B@oP9bNBw@lnpbt7m4{V%i}h#GsL;*>T%!;jlQN2AEjt-7fGT^~rva1V8VpdaFv~Baa{<=iV zuNxwV|42dg^EUicby>wT8t=*)?+O~3jplg#a_a=VZ5`29&0h?FlbE)9!M z8TE>)m!2B$ip!sWGoN~n<-NPd$eG8y^5w-pFSRNDM&p|mFD8{_Pu+sZ<)yM%d_)V_HSQ3MvEt_UmusxuHEI< z{z~Ip)xH>XX7zVAQ6P3$AgH6EV>1XLV(*CV9kGQ1(Y>P=Ui2Sc1`knu%S(g+0000< KMNUMnLSTZboT%3T delta 2823 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 literal 3555 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 E0gqq+X#fBK diff --git a/ubooquity/stats.png b/ubooquity/stats.png index 7827068a856438119ea42e51f8f2f8bbef46bd01..1bd6d2d873ac592b682d3383cceeae450214662b 100644 GIT binary patch delta 1590 zcmV-62Fdx18_x`o86yJ#0019Did_Hz01r@1R7L;){{R30l>*egVC3Ji@`6*6=aC^7 ze+A}AL_t(|+U;G7j^iK<#D@R>=G$v`+cW_hCp>I3BVDCjC}K0UF@7Zk0000000000 z0000000000Xbr00B0QnBNDm<0CEpZ?9s<4jpy!Rp<>M}advBzdK0f||bU&oik?NB2JS|M>p)=EeF!=itc6IbF)wPM(gE57Iq*5(t~e<0wTu}b>Sk^GB=2hyF9p7<-L3!K+UbhBEuO7@QC z`QHWh^n6{bL0-qXyx3DTQZp1RfV7n&02EnrM-bJo4; zci~A~ce+&b0&_;OgYqL=hgK3^^}CmJsmQTM=K>Tv=p{XI99`3lj**i|@768GseY&X zFW;O?`v0zAso&&q&SYP{IhFKnS1{=JHl$Ng(shvDy$hI6{Vsd6e}g7T@2b~*>v!3k z9qOdh*rs4Zq>z{Q$SE@9Mv>uCzl+}Npy$ZO<2DhT({+$OvMmhb%?>I^AKJOsW1C=m zZ+1w7dwwxIa?=gD;gaW2)Jc4|*yW#`Qov{k9Ev@~Mvy+EoufZdm&enKUH-|d&@uM( zi5@w27P*B-PI1##e}?rw>Bu%w-n{u@&5%A-$1+HtLHgV-?9N2p2Ev0+ zcx{i|U_*}Gv@YtJ80@O`w;Bm!y@X2>gSA(!vZpR(8VEN)f4U~|Vi$z#SMR!>Gi#xn ze{iSPLv?6X+cwHN;x_{>{Yhv0uYUTk zjGwqCp>34*m%ODvrZ-go(l2K2zR}jkBUkM5PfeReg<$P7pVd(s> zoW9QGt(Glvf7JaR_6>76xxS;SyRxmeYBedR{ByIu#7>de6nR9BkTywA?EdZLna%&s zFUWq?YK#F;pBPDvruzNWCorP2(NJ*+-BEB6bZc%Y)`s*HLA9mkf%i#&8mWEl#LiZz z+r^)-<330Stia97*noLilYsT@9;}0Oz`bs7u;T+3e|fJ|Fn*lXwm%Ts8+e)VArvpA z(^GxA6T`nQzA_*;{ciZz#dmu&(#6-SnrN&0>GR9ad-P@eb|G~5Lj=?RrtFobJ2m{o z;)87QL9qC4v%j9=$tVBCdOuDTDC93U309}ai-%Lk;m?kGqUlM~;)8g6o%2lrYvwZ3 zWb)j2fBEpotvS1S~!{y;Q(0R>}8(x{7K7XNSX5ZhRyZC;yXPK%? zdNt0zHxKqJBia|VQ)$5dGCRCD{WfLq^z7m6>_ZmcYxb8wpPc?m5(R(^3jnMGrhPL2 o0KoSSK)nMBv&hL-+`}Lgje!b80Jm>v>Ue9@w9Ubg`6FDXV z0KjjTez(3300L`#J5zWce=pl(p5w!z;NRVl03i19pCyo?DJIV+U$|s_5gM7t9HR#* z+9`B#q6kLLajF%PXPynFJcQ}g7G2K}5j(x0P9X|2)M#st2VQRqN$v?AKeh=NS44>s zKNhX1S6l3ZD;Iq^?pSad8hF_3lrtU*_SXSn!s>E)dfPs?!dncs(LIEnhM$be6Xu&{ zKNvVhf9wTUAilwDh6Dids035MIw@EvURZ(!h%2=#0Ls=4f))wF5kQjoq!=KfJSuR~ z^1mdzY1`tzNe79>V#AgVg3KxfsfQK~Dn@sM&Tn6;Ai=iJY^JoRQ}r_AR0|>P3Y=W} z-0G$obqWkJygGBCOa+81*nk1wt?OCHoE2gYrP&IQOq-85dEwH?%e|{D*)3nNl~71u z-Lrd_{T^P}W;#!ZMt&?8Ki#igcx6Hj(ET?gS?K?U^Z&;Dj2cWwd?*q5S+@=n0P1dt za;G+qHFivFVE`cYO`@qLOu#~{*M}8=+Yd+%kFE^C-Wo&;-mH2*LwI+NHXHOc@YNP( ztJ8*e@gzYp<+Ut6Wg zoz)$xBA(P*rP1VF8@=}(0VK&p7!3XN@SZW_ihUEDMjMZ6$ypGW;xFmxgn0GOU8;~k z-Rl>EZf27@q-I4E#eTa|f0Fdweq|xB;K44M<#0`B6NPqw(!ct>dw2tunE&T#S1v4-$+-N9V z?FWt>0?_?+UWvFBQ4TmiANe-Y8o~SS;}_-~wcbrxZ1*)I8KBP`r4Lm8(vg~{tz@=# zte5_l>X;})Xf$#w646XYZ*dHCn_@S<7q4Zj&d^~n?DSl8zv{#TQWf#*RSd*Q7c$m8$%52KLae*6S=LoxM`i?_ zTOoTX=8wnz+N5Hhj0iP-empBTZuO2yo~0_gpd5bR+nFWbW3!07utp40Am2?Mc`et8 z$$iwP;1QdRs3IeF#H*W$yvO~tmBqiuGmoLRsdGmrVp;4~-V6L^0f;6}8;iR0HYr(# zaOX}8YK!rXhliOn_Fm&m1SbP%nU{j9ZfBP*w6uXApNu}yjEcD6>X{Bx4_j=nc6VjP zm>7P4UM@rEz`Sv^p^XpjVs5irkWAl&Ixk-KRYl(Jj(ObuZJ`zs;H>?N$`zxSg*k-l zE0>ut9ZIfR%r|}U1mDx0+t0e&DMeYHsEyB0ThHI$t(v$TuZ$JNW;iK*Zo|2RO&>&t zOjN`rO)i^CV^_Bli}4xpTCDBR8__eaumJ`^S!N)H&pt@60eOZ)5FRL_EDD}$$0;a{T4i~dX2ja5&RSc7T_?vk9qd!I z<2cz}cbBL<&Qz^ zMaaY(o|1*m9VLzo^kLh8Q>G$G@52e4DNTATSB-wH(_kVI2%ny7{FYDb4yN2ZgzFrq z$jd(EP4ePWn>B#iso-8OQV$Jqu&_Lu(z8i>ig&%to1^co!i0lAsB%5Vtlot_)|7=7 zt9jcANMSikv|kTC^yJ8C<#HXV3QGU{x0CzzG+z#~Gj}kK>MD)}Rl^N??BP*n+!!JrrSH-G7p4SMf8S++eD&JnLPExY+OPzhtgmH7KW5YKaqg>+@4+HX5Lb23W<4t^m*eo=Wr=l0U+~az9r&V)9ohMc z7F;B0m^eJ_Ey_oOf*X!FV&kehxJEx0B+k1e=Uen6rd6VvYU*1hSo zV&4C#ht*2HLri8`-*Ui7>r7ca8F_W|fVYAaTYzQXSwnp{_T#o^`z)ejAPn_e%6Zy1tdRM~&Vifc z&N~>1>^eEz16^>xD+75g$Drr)RF%CB#l1P|+0v}=>%f1{$Z8pyP}6`-cW6_-R4Npu z#4z6UG7a}t}nz^93%WsYDq)=+iNj69E<@y0EkFJ{@eHOuwRU)2sN6AFTPHr>ay9bL1gK%iIt zoO|f6o1Uzv8e<+QWrO#CIU0Tx`KlODd2KJ`?&Z<7*)NGc^%bLB*a1f}qJeA(?p$Mk zseCfF6(5WVHQa8r(g$}&R#%10m%8G4YdGtwX??b zhY*&d#k+j^K|u!us$%V#kT{XGpV6|(?|^(o{}d#yt2dhJW2y!Be^MeW(Q4>5;1HdJ zLPC-!cc~`A+|2HzV1C=;cR7*fdbyOdpMT7kWTnfq0?a=h=}~-7eFrQ3(pY{4-P$<3h&`7(rKsximGKNzzk6+d-iIS;)v(ecXEu4ZD;3$L3l zo%jE!H7L@A*0@uq&$Agm4TU+wp7`;GzOj`T@N!YFuR`?&9e2~C7lyK0To1*zF5s}Q zpM|VIp?ZU-s?l2m%A(#=*wD#)H3KCemSvq6TiLURGwY!Zm$dv7;!;u>1cyYI`kZu2 zM^fS9pvkSWu(eUE^tIVYl#0iexglXWhy4LfhwwZs37yg`%a_*yVavI-nD=Yt5VgDZ zjC|)2lDFj9c*QS=d)LHCR~=N1cZh1?vO z?A4un^&y;JakhubG5_L$=9wUJa0Kii(5)Jn=%1>b(Coa=Vt$7^DgX>ZoVUJ~Xy%KN z1cCPJiYy?$a7I?I6c)C%1c+C}(owtFM5#2};-zhCmiGdOp|ajJx9f^EE}^ZTHL>{? zZ4EK$7@RgUpnhXd`uXsr!Pgwh;n9(dWe|Z-uFw9yrI0}X!U?G8G}AtX)4G_>*d!rMCx5wghWV|{EYp*N2gRb({ zqs;Vz5v|^*D)2a$j?-LS`JZKGjNkEx%cHH_fK8$(94P2FA@JF11_6)dHSuisL?nN%r?)F4P>@$Wu~r|c=g9! zS#_#~3|GmeUUOKew2e!-fXCH!EWhoqWv}^>4T>wfSlCMQ;dcCC0Jxj8@rXYt^%EVb zzm))h^ZI5V!VK5znf=w#sj$X6&{JR_}f$U*D?Ae_Z+G|&*eug6gwL;N!jYP50N` zks%j<20uweK~#9!?OltK<0uS70{;J(?~<9!IyTr~BrKqNtEM&;hV|0c6Cs=f00000 z000000000000000br6;SqytlNOYc99=*9E<=j#XkeE0kP&ktZG(rLr&FTF&6U(sg> zFbnA)sot=>eH+~0M_?w_x9a;((|^=EfpmC(ZU6uP000000000001tuwrKXU`SZQkl zTTUw`Dna_9o6jH}>YaeGAmPZ7@^%)+KRe!GPjdXdUyu&cLHY`%njn3_QcZHFwPPTC zuu@IVqL_37=`)sU(rJJO(x)udBqyNXLHdI45=ftibb?J^j&w?F=zD74PX{b}?+DqT z-a$Gtav*(5(xKkhBApx|4GTvOq{F6zbdU}_36|pvA=@Ab5jK4}&b^fPUUB9Lq(2HD zw2LSt&awfLh(Xf_%b!}s$`9kj-72Dg0O{70yH`HplIcVN(jQdrtelY}mmwXjj}on2 z(zX9`TL=qBZd5N08M*PjxQMM)cyaB?8IXQU<@)eC8ytKz7_MFHr_V0wF>r_)g#WVr z`m0GnU)ZL<82_JlFB?DY#GB29YfF><5ppj`dk8}MS1(*!+L7BRMlVE+PkPdSY%E+` z*pd5MFCRoG_p;0=g=-5tax9`IuPMLpY^iy1%i467mBw?wAVf>y+O1QoGc+aO*3y&R zbY6=c9YL?#S|xHbG$mkJURcfH(t4Guw^qk*O285oM^%fjq2OCwg}TB>nxH8`T9x1B zr7YfKQ-WT3YL&)sN|4dD_f&9yX=X=W!8ZwdWt0E$n-b(i`i?JGp3D?U8`#n;qVN#VvwGM=T>l zAv`0XVlR*7n;lqqxmd(f$Gh9um2Aa#b>*RqPa@A__+|$d77`Xwoh@1VSXFHoj}}fy z?b&tYSfog#^2NE7qm~G{#!(E%l4`lCYO^;x>}0Mn9Z?)sU;I05FJGw(<~iEA*}?T| zN^n^GwuD6aZ?mE=R`%w9dG^kkx!J){x1-7lk|K9WTb}7)?%{c>Q(oJYpcm=MmA~(| zR%y#DF_C*XlkA+qn;m+P&Y}@2i&)+edSuPnUPEB&)07~`?!8L>f*>{7ntvyCzS9a#SHDKjq<^{RT~257pB;(e?r@vf$jHy>PJc6>cpoE-mTjk z_Cy7inDxzR;fCNU${O=)ZKWNY+a~?guw9sS3BtEjzvhcQ^qA*fVs4Z4b7?-~z)Nn# zMy+lVssCS3%1x5aH;tn2yK<7|i{0Y=-Y?B|+Q*HfP@a%$UcJeGL8zJ<5`r5D8>Q5t zGmU-HixM#WoaZZlM*GWM5H1I6=ZhX8y)Y8zA&vPl(1_Nq=ql%u`nS~B_U#&xa%c16 zp4@4NL{|cO;9OqE4t;Cgwd&69P$v!28H|{8yZwB&X*(IgY(r$_sE|wMta1S ziTT{S28Qr%C$SXk>;T|oA(4`32=57t3CFuiVXviQKbyeC^mQsVB_ z^i9l(@y=y`Ki-_*RnG6~=06!wGXC-Psd@gCZl}L4a$jNF*T?OPk{rK%gp%=B^XDfl z8(;AJuJZX!&F{+BKj*z4Cvm$qJia-(0W#xBdps$RSAPEb_0Mtsqci?~Yxgm6+EH)( z`#Z()`p>UBzKXA0L*Or)K!=Zqqc2pU8B*h~=C65SlT+iLetz}!$qq=7p4nmFI|j6S zCZgSIvvXATzkWIXYJOKazpI>I`}x)9cct@J6;S}FumHe1Fm!GP0089P0jPHXB@_VE cJ75d{0XO&&b8bhvv;Y7A07*qoM6N<$f`tZ4ssI20 literal 3742 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 diff --git a/webtop/stats.png b/webtop/stats.png index cbdf9767367c71859c4f2e3a12d5cc65d24d2c9b..1c82383838874f9cd2bf01a6cf8b02e2724fbc22 100644 GIT binary patch delta 1390 zcmV-!1(EvM7Ksax86yJ#0019Did_Hz01r@1R7L;){{R30z-i@`0@UHR^UjTch>;-| ze+3{(L_t(|+U=czcB>!^h7-&CKl8m?S8FXOK?Nb-e|EOhEmhf9AcO!S2qA-j^e^@Bs7Q9obH{7W<@^;cW| zM|p1E`PX>$>kvW+A%qY@2qA=|{e;9Ef2ty6;Uh@-o^yQ7Lm&q={Ye_=zM$)3vJvQB zYI+K~qFz)m@tAPr^nxj?Ax$s2y|$S%q^<8IcMs@52YTNLo6`g6&Js4K$8?mGbwmdA zrU{$j7x^QpZ0HK~P7*f5;}OmvrQcOuBj14DK4J5JB@ZW6&oAh+{}2z(z@UwCf4lNR zQk$`Nptn#kBj2g%s$mHnaE3ge`aEjDk?XN5&-30H zvfa61pM)^1vuZwFL`sRs4at1Rk)wIPX>T3`=s0jR?;yvK1G$NmS{6G1y$|FYq%<;4 z*X?XrsC0qc>d5KGvlNskReTfcf386dmpwZ; zV}q_kp$-pOsJxxz&*a zdTu*y>lJLCUS&rP=tV=Y^qBq?#HmPpJ28@)ehqLL>6AGgKWS+I;Dw}8iSNqHcK^^5 zeR?wSUB_HDJNR?l2*Y}G+{k-(+K&q-JNN}|KiOflak@j`=93*h_MPcH4C@ql z87Y+!CS2SCx1a3rZuR?y?#53)Yn|BhVcw9{cSe`mTKvN`tLd`9E| z?rpI{0Qi9ofxCoGC+==O-MgpmuTKvkKaEruLpBCy=dWSp0Q&rz%s)f4$AJ(XLm6ewQ3M+VwkZKSH}cvLn|VI_>&xV(+x;1J9>R(+L+U zd4ma;`H9d^k8Y7H8!=Rk9^4!;P2J*{so??Qg?eqp zp^{bpwV`HTGx0R}mZk^Tam?3wQqRmO{eBrUT=W^s_a#gv(^O1X%`*M`|Li_MwelN^ zZ+UE=7julg?5mg%Y%L~fE>e#w7Q$t%C%qLHg6%b&G$U6(tN zyjz*&rDBHP?>oaZdi$uUW?glLo-kF-EdQ5b`u3To*>{iIrpmuFwW^=4efqN&F-*Ph znCa@Hy=j_v)vcP|w)}?TTgsoe)6m*I(65&X!`S-{K%2_RSA7*A|EiVBZz#Uy0ZNl7 w5E&K->Zt433_^(5JED0V!Z literal 2905 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 BTm1k4 diff --git a/webtrees/stats.png b/webtrees/stats.png index 6c28e45471f166cdd9d3c7ad3d7e3907288250c7..03dfe55dc6f67ea1ee3905872378887b965d4384 100644 GIT binary patch delta 1364 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 Dn_R*H diff --git a/wger/stats.png b/wger/stats.png index 762b5c50c09d9e7592ef70e5f88fe35f10b50029..a02ac7bb36b8f5e6cc33cffb06f482a9c04276b2 100644 GIT binary patch delta 1600 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 RsiPvGbKgL-@}7Ofe*nET5)J?W diff --git a/whatsapper/stats.png b/whatsapper/stats.png index 08e0569f310ce033c1ffbf3376999a4ef7d8a627..be18278331e96a345c925b33ae244164559e94b0 100644 GIT binary patch delta 1651 zcmV-(28{X48;lK*872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&DE^sqwTZPL)V zks%j<1|Ug9K~#9!?VX8o;~)@38IJ$|<&Cp;Bw3upAqKi@D;uXU!g>ORW@IS^K@bE% z5ClOG1VIo4K@bE%O-0^cAwY+g;!QvL|DQU3J6?YN_9~2PVh!kY@TAX0px(cqf6)Jb zIAv==KRPr0QKr9skFkFt>U4DSPY-_+e)nsCI+ug?i12_Kf*=TjAP9mW2!bFr(dGn9 zi@gj>bv7*FO77Lu0evgz=;?rd-K~OTsB{xD9LP~|W>R%2`Ny2OX@jf6Zf@683h00i z=sP570{U7>npW45D!q~b{rMzKql3zZP9-)hpg*3Z=}c|+yx04-VFQjFpg*0Yscrp# zn0&vOPFEnHPbX))OvLo*|A0Q9jA;>l5mA{9ixV${Ih9-wO>9`Gi>zz2&MKq`=ub+w zAyvE`gEKFKIUKnSnI{4{Kwpu0+>tBe2gKOH@N zQRbM_H)PJ)NP`V4oOxLw_mv0>b4Dif!axqtg)i1PfgGRx$nZt(NY_-O{*&&n;3+NJpINqEdOos(@AspFTB|SJ$(h{3{qi#=%6lyIm4V;Dv-0rX=kk3!j$1X*wWHeg=(WCx+p|GILzC!5)@w=`w8aO7Cy_78TuZV<7RBV?t+tWzLYA+lFmM z%V@jegwAv1Xl5I>X$O6JYIpVt=p@XBZ9OI%x88&v14Y5a$f`i@y^8Acacui)?Sn(S zF$12^J|ai%6JqrUlU$c>>D*dD+<0?F_Y0G{gV`pI0K&sh% zPy8K1&dfZ)&S&FZKWu$4Vx6vYCg;LsiqS?XN%__Z_(L;s2i%{o+o!aNL7oTS4!+@{ z|1O(up4lc4c|7)agD0x)&=7kKXtI;M4iJ;5%U%C=z*Vy+pPbMoE;&*-9I$@1Sp#DyN4(5dCL)3n$V$DFQd8FAbNIwVDSoCAb^r|WG$-Ge%yL(7lt4Q6~u zBKK5gr0)UDpO<;XJf+T8TUlkl#e8qSA2VIbS1i=D%-YUjQsi_{-npf`vzD$c=eE@o zg(HdP_A;-Sx72a$U}bb!FJ6k#*NW1A%w#ElWh#A4aZStrk~#Io$@lVB%=<1*Wy;h1 zqqC%IyOpAU&@m~mX_VJAmDMzr*R+ObE$`O#-@)W`tNJm(oSXk$%=<1*Wyk5c7dw6P zVW_ryDPI#ZEBh)IYZ_5b)4ocDnwC-7SFvEzGPYLfdQF5bv%F%yQlwIqg|1n;t~w&e zOqcQ&3p9-`@0ZrJ!pz8{s%sQ+*nQC`B2bEyN>mm?Xu|sn&S+XHz6n;QQpMyottN>A xLWTtd>X2w}27(}X?+}J}2q_d0hIeQd{R1xA5&MV*Hhcg8002ovPDHLkV1k5JAy@za literal 3532 zcmZ`+S5yQi@qhU5(|wrPv-aAv*R1c`W%e^mb3=aKle_=`exvJpHvxdG zv(G6|4)&hUqN%aP!NBYG!2rP8|13zd9PAX^_<@n$HS5rH8pX^_8h9%%rsm}wY*oc^CGsMV{#-dcbLgFqfEICBi9EBtEiJFAC*Z`dWOm{GHc zQGO4CC_Zb=cP`8%9v}$UNu9-&Wj_6Re&QztvGZOeg9_vgy~3=L9aGXsvpZ!3UX}1~ zXddip5@(4>ClwMp)0G_cN?ee{#c+klv9H6a@9!~7aq#m3_0&*j=3M<#oIHq^P=;2X z^m`}4TNWVZhQRi0|KLM3AgP8FlOaNzd5YuY7d z3FlyfLm3~lp*M4j;b!1hpb@P!021mvvd%w6z;g8rMts8rK5>&ddb_vtQM zxpB$sr0qC^@-*9%ah{0TyDG0JLwAP~($(rBB(4-^`DkwI%$m7nu%Y~#kgkCRNdX=% z7@yDGJE*^puDJ-;aSA6dBQ9q7iLf)Ce&WGsE|CB`UkG3VI z8PdNYRF;um$j!j8yv+$?%%I6P3ro76i9_BpT24ThG6Egfw&vBHZ)>T8mwze5$X;k) z?3NL#wjB$)e0rnm;^kYlnxiM;X3E6C61IBIVlN`5wW-LRdH1i>V-#}QcM4EuO z)SGFau1pxWjW(pC#_^0oXg4tEQ}jjr*iV+J(bB;DW;otKXy7Lf4!8M6a~MB{KwCxz z)_-IqKF~+^!^w%SlMsHJb6rLpE!&$TFdSTHIlX+K-ke-$PQ-t(;$3{hJ1B%Z6fyNg zb6ylkMQr|JPEOdd9eWjWs&^$!tSng9lRuI`OgpOFC(Z@9V^4ysAL^P+QDWTj)#~L*JAl&VhAq)kEJ9BCp*% z6v;D-0~c!cU+cr&Pw0zB(v$2mn%f#EAv% z=O&V7NRtJWuIy|fz)Id~K2-H^WTk%Qj%c>m_2P!Aa5$fo+8G8Oi4iY~Pc!c$B4=tSXNiGEGa3Tly;yoL#$jWcWT4 z^1jl+fYfCzjXtXd-0nM?3=Y1YT2~n^5!rh?pcGkira6~E#kn3Sg&dMEFtWDy3+z?& zy%?gWZ7^>w}Gf;dKN>3j(37ILo zQluQjGhOceLbF=Qo*@J}js^F3+M0a~m#P^*`oY+fcWcp2=eV{#J`u0<`Dj6yP99zP00(vE~OjczO|m?e})JiN!)J(s>e+C0NosP8aHVLGw71Vc#{u;50|} z7%l0Uz{nxJ_O+U?JJ)x+25EMg7JUML(rlfIxa~ObhcFcJm%yai-?^uRhxUK>CvLEo zO2xaHlQ?Tg9n^PGeqs9yjbV)>58nu%r@dl(7up>rV3uS2b*_g8lMg3HS_`$C@pq^qCHH@1SS6kL+toS| zf8cQ}xkB72rhp5RFgJeO@KI<*W7X%zs?sNavOQM*&Eku=uGZm*H3im%lS#~U!b>+} z=ELh>AFub9%W)&m7_$pQ*Kq9}FJwyIkBOiL9wa`UFs^x=u}vBL&4uxz74?WI^fn0R zVy>xAo*SgiYE7k4$m%`>sZ0Fj4$?UyHpEY9(_*jA7r8bf#3%8xe5;5WQn~*?Nvaj? zvXG25aq-+ix;s>@h^T3QWqZamUa~=ctMtm7`;{$DHO%iz)bBP6y?oqKN>m=FvI-?f zGxVS}+3W&NbQ}j~d&>JbmMStvzaCp#chjIyA;8(;3M+1eR6rXb1V(>zbZD{zcM+ho7%EdV_dQp!M%E`yB^o+=;{ik9gj6N1}*`qYliR08O<&%%b&>m-nrWIb~A*{yMOpOvoEM} zLWNQVB_q(+6gFTDALsX&Q+TovG~rtyUsn20Y-auKV*%Z$@`&4OMayew^=RTQ@6PT}451oNJROYEHq_E=4?B zx}P1S?9}PV6PG&t(|qqt)};o%^`df`xy-sv0-5^s4j)VX<^#7{RB)41ant|xyUu($ zAVxWwURKibC7jOvhSmcO(Q_twc!?{H$Z++3?7!;ne8LWoR&~JrT0({7`X^YVA$$6Y>WEI;S=^`}`;`-uYPjcfauXdo4n(5 z5pr+FBal_iU)Z|0X2IGS6%dG8?ZgbZ_}d}#nivXL9q7+e>`Lt^a`9*ibGvOSiaDQP zo*v~)qte|DbHF7HA4edgBYPN}QOuPo!-Qt$ctBL&77n;&uzPJ@65rEj{W8`xg(xmy z*4@9XI_unJgT}8AuQelf=|5&&Y0kp_J7BtKA}ypgFySvz0e`K=`YTZj6ofB^3!KNp z=xN6mI zSlpz6w&`Ctzm{ZpFGg-rZigMh{&SXRE9Kzu;XIqQVfyd1iBys8pcfiI*qZia;p<*s zO@$Isfl^6149eKm-XEoMHGY0`RVc0Vj?ee_<{jI~mFxfglDV_YO`V^^w>L65u-7Cl z@EjoglU5K95FWjUD{#Gw0oo;Ko#SA-)Pwo(KAw~+3U+No>hdqVK}i_BY75I|R=Ur1 z%_0iO9;fHOUtL@-HvgBP6}BrFa#A%!yLjm?a|Rw4Kb38slLzxIHINhEj0`d%IV*R| zd>}{qU^cR@JjhX(uWst)##FdhbjMxVii+7n{}NO^r5dX3c*<|A$RUUMxhZ3Le{R)r z$aiQ6LL2b@d`IJwY$1$3PJBDnslXfYYTb!}-}KBd7!JqRr8T-_H>5=phCbZrcUR0N zKkeSCwtLadno_}3*bR2a!R~46I|3WJE(JoH%x>kJXzXt?lS829u-yeF`?62+xfvsK ziKz`)#oso<%guAtudaI|;#6c2SG{w(C&Iqn{WcyW<48A)KlOx^-{dXbwoWNI9ocFru3w=-4cC zV*DE;?PEon&hOl39jyD@0(hMl)TfOO);?@>{QQ$R3;MDha>PXY>?ZNuLWPlh0H|em zh6;k|7kP5lR^0*sn}xC?dTJ@MX%>GO3c-Tmk(92(dyp0l`9fsO5}3|;o*uEtYYDKk h&!sQ}N&t>!acb>M1luU#H`wDDFw!^IE75U#^dBDn>ev7P diff --git a/whoogle/stats.png b/whoogle/stats.png index 50b6ca3b94d4b61f6b6f834c953d1f637fa8ec7c..0bd3878295fa34172629e8c88f090063332d1a2d 100644 GIT binary patch delta 1674 zcmV;526g$_9HR}8872b&0019Did_Hz01{A4R7L;){{R30l>yYWOyS|U^UH(kZ4RXY zks%j<1~*AWK~#9!?Ols<;~)$~0{;J(@0zFWfDIV1CGAe9QzwL>S@b{>;2Zz|00000 z0000000000005i@C10fW&jLb8cOYFe-$X=j(SH4+&s$%?r^UPEK7SEtmq$81sC=-v z{N-MM({oO|rUB9S<)@Gngk1&cUrAp|@s@di2h!!TPG73O`kX%coEF;s_1as=7oP-C&>93>{NVjCuU50c5q@X$> z`7JQn2s(8sSCY}()ZiWJ#uOB0f^>t0nIPR@VJ1j7SeQxsBLnHe3Nty2V$unuYb?xv zq}`w^NLN{yNv@lI2kElc4RGYll1{Mc=13=(Pq_35!veRI^rWjnxzs91*C6S?>K&vT zbmTy~0Y|Qmbjhp-{};9LF&GaB{6>AYsdO!l+<(UXgY6JKoA=&rEZJU+zn`Gq4UoBN-E4Lq<(MYE7y`*6`D`? zahiJ2ms%y6`Sj?A=3#a3S{0gqPjC0g7^f6Ub>w(-$ptn$=y2lHin=qg+2Pc3Tb-yI z+3dgVk=8ja-{x>vuF~sqv>s~gL;~qKso?p`>SFbg(d&IHGg{S!0MhecG|vyElr0;|)=+$Q zp%(OJ+43UOG#!SU^#i@$X_S$p;?(M%-O9+_(3-Xb`8w9?J!&(50>>dt(M?FNzknh7 z(P^J<@>gY*zd@dp3;n(PDcyl|u9g)ahi86bF4P)_`QOhV&nui8M(JeQJ^FiA7?x{g zCC(^k`xWR_sI~V>`;Y3LA?5mf`qZPpxl&dlPs)WwUgHEON4h$6Pts81hvtyZh2=D% z(rtD(yZSSpm=lwKZdIOEM8Q=z-m}~-30Vad{0M8+kYyt`DW7iP{`$pAZ>z(5Tk;~J zvd53SisZUFa=~w`*}6UU+rdxV3S~Hd525%V8I&c zK7s^eqz8s(w??{$YBxtZ#9Yi?wr->|zJ7D3OM!E9k{-Z+xumPKyO0hSPOu|KOwA zcYn)j*|vIrTuzr{`{h9B=O3x){~x zkBdDq#qFz`)4=A>6ZNXPr#lVaRkz>gd~srE;xTa%b6NZP=8w0=G@mi}Va=AQ{?K|Ua5Udi&3C$|^$acPef$2kgCEy>lBs=JN#D)0Z{36K$cVNl2ve@X_A%K! z+x>EvRdMgGwD&24AJzLupbNWiDWU*SVF7@3Ky+*d006|^0jPHXB@_VEJ8&2L11hNz UdmN$TYybcN07*qoM6N<$f{+?nKL7v# delta 3664 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 X{>l)C2(xgI00000NkvXXu0mjfo8twS delta 3437 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 B*ERqE diff --git a/zoraxy/stats.png b/zoraxy/stats.png index ba8fe9982115bfdc9a357ef9a5e9e7612a5b87f3..b01691fa98f3b9a63fac3da0962324f53f80a0ae 100644 GIT binary patch delta 1292 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 KMNUMnLSTYtTdH0F literal 3041 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 IExd037dal+p8x;= diff --git a/zzz_archived_jellyseerr/stats.png b/zzz_archived_jellyseerr/stats.png index 839ac34a4ebe5cca6e71a1643a9e849cb64befe7..234f236c8cc8829fcef3c61446daae08f8bb5132 100644 GIT binary patch delta 1626 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 BiZ%cM diff --git a/zzz_archived_omada_v3/stats.png b/zzz_archived_omada_v3/stats.png index 63e41751a5bbc25f156945a4e797448d60a106df..41ca52175027e551cd8f45e643e2104cf09db4a8 100644 GIT binary patch delta 1461 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 diff --git a/zzz_archived_ombi/stats.png b/zzz_archived_ombi/stats.png index d4eb8d0c37f32a26f0d9aa9d71089f71d312205a..9be1534ddc613051ece68d391ec0f70c17e8a59c 100644 GIT binary patch delta 1518 zcmVEpz872b&0019Did_Hz01{A4R7L;){{R30lmXMVP2u3Q^2>tiV6Bcy zks%j<1)NDlK~#9!?VXF3s~`+TNr3J4BmrkR|Al1=jTZe0==>>G=}U-@obgL9fmZ=ztEXHSf>wi+Kli z2!bF8f*=TjAP9mW$o(wq^a@Y?eSu7bCzsfN^y>>`Bfkvj_MpG=PJnJ|Om`XR1W8fb zm`E@baI3+EF3vN$CwW2fDY(N zpkvC0FjD;0lrIW*}?Y8u*2-oTS(fNs~dROp$Q}-46C81N8c&= zYWiUZVbFPKafD&T8+Rk4y7rSDd>rWZ>4Yxck&AxxaG);sF5Y`T(`^m7a=K4;;M@KP zj+|)b23$GKCp++cV}ky9x{%m^JKz3?Do=J0^?W*ycqGE^${7*RuZ+wLM=p6U%nseh zF;734eb^z_(@Att#!gqKGaCZW@5o(sz?FA(o%wYBc?Ag0h-0pNuC5U}|JeBlbeYU` z8+d)tc@AF?(7QS1&wZPVrk7`k?f`nf&AJy35BA{(tIUA@bLg9Ri}&MyL5(x;i^W=W z-J*o(xeqCt3;Hgu8j|l7-?bOjH9*^u!}}|BJ;%Eky6r?k6G8uGoQSUTL`j=m|4sl3 z&D7pEPYj)HG8MP}zBvrbHSu+xbtaJN-(QzQ+x>GE__=)gFSh>XjAyt0za!5&|EojP z@R%iEG(mLokM4vX`1mA$mdJ6=S%2`gh-x!~-v8oM<(n5#l>W)jnM=dcVpnQDFzWR; z_vvwgdAy?{e-enyFbe|5_&Lg*PXH5rMf%8(8N9c9kB%MsgKg`2^~(G#5HnssVX>a5;q!J z7a=%pHntQy4Lx{&4C7Ka4?G9`MSQHEIM@qS+xQAUZUY^XBJ~HXLc`DcfW!~?pbqGe zdfVP%#D^quFKijPnX9dD5ZXI^C@vg1$uA%XN!)pJ$i3rn#-4&uXYSgyi6R#Tvxum`18`3;&(KDSn+03H9JPG zPu0%fKeU|+9NllJ;)UvIdxzH4zQ6w4#*eE#Nvhn_i+T3Fd$4aA(S8SE$`#nZOcu{p zzkbT9x^`DRTl+1IA65IOLswRRW)TI16&4VvL!x6d5CkFi4#B)bSV958yhF3-AHf?B UwD#7DO8@`>07*qoM6N<$g8c&hkpKVy literal 3189 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 literal 3294 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 literal 3238 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 literal 3087 zcmaJ@X*|?j8~$6$C~NfCXKW$+Ad1E|WC?9VipdtT3&V&eW#5&pLaB$c6QRK<#*zn# ziD8E9LNm#XvCNovp7-PX;r(#d`#SgU`rYT;*SS+KJ6Q1_lRO3h0Kbj3#Z>^{pt9!$ zAWn8)$@+DcJ@AHF-?#?=0=@q>j(jx%DF8VB$;QIWG5W@59IS;Eq^a(|0kXd5XKTLzXNZx2FqRRtyP-|y8rVq%%!exC?FtaQaI-YZ0H!v*ue>9LBh z$6!aXOc6}MNYtv7(e?pmJ98@0&XGcuvhq7Y2HkE0&7#67h}gNqEzBxVkWTBz6)t;f zJV>lnUOdp~OAqC7)X7(Gg+y}m$eQd0YmxW)SF2m!;<4k@KpJ;xc>44-Wld@$89c^x z0wI4$75}7)Bq<=4R##_sxc2S}skIZS4U!8B{ZfU`TgME7r?&yE>`SFRZY*NDT8V9r zx(+O@HFgq9o{Oc1kKgf%+pSS<@)N(MCik+x*~9A!UD=#seXi7vcJRqnD=m42Kj|1U zw@+DWKFbxad9D~dgz3Tm!jay;|MguXK-U?9a4yrpel2ry)wJz3IF;lHdnHVFcL6tPmR%F!RT)cbyJ@{w0Hp~g5*lOVuUb4 zj33ca_-B;0D&+ndO_R&yx($cw?O(p{C92Io*R%bc$4nQ`DHBAf<TC5S4gIWF0YoNv?t7sav{ZoDH(?E>M+)%ug?sJ-4f1MzCQ5GH^P_pbx0QCGm0BLmOK+|xz<)@a zLl~~+)u}Q)X^eXdGntFWAZ0LVyjOZU4SPzw`(J+X-}I?5F>ZDhl3r|~EzQ;+&}U`p zJjHZQ{!?HkZRb^1!RBtIWpK_Tcyv2ZqFt-dNe*M&8=;*U*TiOBwmJTS_tUDQH4IZ- zSoI9zX_)2fob4X`ExB0z8O0;I3!28X^-!1Ax3^1uD75g$&q*{vFk0#n5#G`t&x;h# z*~}@|o2xb;wGfOGTdP|`o%a=gW)NdVA4RZZ-bo6;_A4nZM@P|iL$}99NpqRvYn!w{H%%<2F{ zf;L4A%n_;jX>r#uzxzb3I92IDwN*@`5~e#6aXO!%!)5b^&!zk%*X}nXW_%U1uA?Kx z+ETgM6Kye(jFJ65=0-^K=u*hxEMO!;)Wx_IEoIuDtgNM7=gWEd>_bL)N$$`rtuKzU zQIwFlity^(^gNI;UF`m$5NF74ea*|_3PU@2&NqkDp{trYV^ z3$4e_Bk=|C^z~D!F^Yjg!qObRmob%RweQx|QP|TAlQvXX} z=&wNmyBl7kZab&}I#izUFtu6`IpUrrIVkY5adm`&%atc^q_nG=lPj8alJir zyUm$$FyCchEEl0@l+$WmM^H^xAn|ES%qa&}~JM4z~tWB%EHe*)T;X3@u!@ddc59DNr_ zKJ@D_z23_2ZIyU|mrD;yjXdQD9Bm53adw=3e~w7JJ75?Z)6Bl9UAF$62|fM9sSkAp zlqZAMqRo#~0UqjN0TLV8f(BlNT(S__HMwQc$WMWmua`ZUVOu`!E|bO>qq(W#xw(>% z3FBB)r~>!vNZ^rmIrH1}5!+gOMO~8g+{)U6{S~uuK~B?m><{R$=vGtMnq$kk%ZBq^ zw`wj42LDqm0CZ6uOs?HLdQ9>(&{rO|$1(D*fUSjp0tnVNt6IEf(BVAQ3yRkTae6jY z;$jsaGC<+__$CeA2nirZX%t4!Y1(_sjkf58v~vL+Qoq4f0NTanEFYlrW~3k&9@)1E zXuGcubncE!a#Xbv#v$K>5u|S&oqwJV^IWB%0tLoeO5eCk$A$dt(AhZ<{QY4o9#kk+ zc@4@jtIrU`J6_stwZAw@f-d`-?2vtfY8eE&f9~f6uZoY24e_f%* zv7m!Yne?B{VUwPQ`5y0CIk<@ZTyTh#2UKwr^qZMCfsZPv~w^SKiNqOEzu`CUfN=ws8XRR-n5I{g+uYEDksYaVR@<*u19feG^()$ z7A08-d3!kK+g@M6oKV6Hml_2TUxQ&Tzvzp9g9|-7uxIxLXxxp$o#M0l1tuGv;yz_z zh~hdNAM-=lIrj0SPCduH?#4X^v?J`Mfj;F%y;XcaLt!U*?PH@C6pVN=&C*+eKfdqt z@voklz6O@roPLMS3X0LSyOIfG3<7|4<}W`GpeZmJSwm I=C>361Dfpuz5oCK diff --git a/zzz_archived_plex_meta_manager/stats.png b/zzz_archived_plex_meta_manager/stats.png index 3cc2a9d6f6337917001547d8b4494a63550ea985..431b5aff7d4976341cf114e8ef7e5b9171baf7a7 100644 GIT binary patch delta 1320 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 diff --git a/zzz_archived_tor/stats.png b/zzz_archived_tor/stats.png index bacc21b790c8d9ba90850bd71835a3d4f726d392..db7c5dabfcef6da641ec75ed24cd9abadcd5a28b 100644 GIT binary patch delta 1474 zcmV;z1wH!87u*Yw872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&A9^RY$WRs({G zks%j<1#n43K~#9!?Va0}t11vhStsWIfBEcACutExz#C9=J@gn!Xc4CrP*C6;LI@#* z5JCtcgb+dqA#|d|BLF%wz+8I${h<$kOEvu$In)h7m!qDWtm>k1M+hN=5JCtcgb+fm zh3TiiKgh)N)7vqPTiVn-1kmlxGYjZOCz=C)=t6zzh>o20FF@Lz;EH=NQw-LWjkk^u z=s*X$g~gjdA8_&J^mzVP$t(XA0(ujRH-A{KD;v6i-pAt2>G2Qv^D*t_721tg9`Du! z=&fja@y-Rl#cK(DW=$5(8J_%YdgNE|N?!VQ8-d;k^2fm)?})!niy9B~d(Ha89X#59 ziV=VJ7z5us2zoHO+G;+zOO{$iI&yMA zzoj*Qx*ONmQPXcR?GJYw^mX$N^|rl#F(soiIXZH~jMH$=bfXiHr+V)NF;750jk&ux zP(nCo#$=91uIc97T@IZ^6vOr4h;Xrrys-C9u)_$*%cfREu)_$*E8MUIJM@mcaBB5i z&4KRPpEa*_&S)hj8sEEXf7ZOh_a507^1Y=PzW4LOlqT2BxpP3jHB1TU^xlqt?#KcC z6ubVs6nSAs4(R7>BQd!~wj&cY{hED4CfDZy!a%RG>9+tc=EZWUj%|A7)GF)Vd$#HI zQ>#Gl9XP=b7rWJ40A3umD(6`D?pk)MAF%E{-pJFDYuK&6zxU2^seu}Df*tGvC)mLt zaDp8S0>=$&5IF1J4Fcz62ZO+Wi%)iN1UqyOy!2#;zav9%!*&atlN}5KFF)Bq1UvK& zynLK4f*pDXUU9Mm!4CH>bYfG28>;t@o|7|tIIkh-ecN+_9g1!Ft9B0qymUigYtZjr zw90%s)tfe*>V2h0Zs;{~({tSFy(_|H)Fsdss(5uxzXAGZgnUjrJ9-O$-W&8c?HP}Q z2h4`5_uSa?@RL@HX zKsW6N?XRXspbNLyuoEu9W}#JY&IE9C&Y5=hQv>=X7inxiHK3pEd#52cx4RTB7;`lp z7mT^6)d}RIbmX#~Gj!Lx-e_p;MF3ylvmr;-h}KZ>*n?@2r&<*!maTEPoiNWdgTMu(+u6 zM+!lveh#lB;cY3IMWh(XOt$Xwx13rpr{q82crn7Sl*}SVBbmw4ny(zX>AZaB3Ez)m znL=I)_enJ0(Zs)hqW7|Ck>&5x_J3D+4`GUpEOIWP^-FYIjP2gLm$jT%t@YisU;$mh z(^`AmJ_(e{!+Tz9_po^JRF*~T5@9j4RSdULjN(VBvMe%aY}WKY3-Vjw?|;ocetw*P z<>nthc5!i@qnBW|d108xcV*`6cmJcpuiWw;l37GAp~NMB;>D0QilMDyq*H8V5xqp@ zAJS8+a*-F>EnnZ@b@NS5s!jiE9+ZB6z2Ae6N~efr5f&r3iNqy(Ek=%GIND8HZY`=* zNA5i+&{~Hk^c2cP6QsI|l2YB5_$Az)OLSU{u(!^TjVU+;b!5ahgAl^^jxg_tB@_tr cj@r`yKzI@nFN;-LQUCw|07*qoM6N<$f~Kk96951J delta 3004 zcmZWrc{tRI8vfZDBx^%mjb-e6l(B_u6_s@)>tq*U?6Uog>@qEiGA2{Vk|j&Sm{69= zG7MS5;0z~A7&loO>visV&Oi75{VnhNe9!y5-%C5*Bl7SxCo2E|rH8B9j|@e?<8kJu zM#$)b)v30}BShBEAv!tmYd%-HguUc7ii;;Pxy7$q6ms+ako*>(9?wN2sn`>|eaR|X zIZ2|KChwlRH{pZbsrJ%WbG^EE=GJ`W`*qGZ*FD&d3iomp`xJ5#NNkO>Yi0!!H#nn! zMSeOj0E5$52qwvTKzKSDk_hq&FaWA#I}Fe@ZDPBa_IDSyMKtwgIP{+(tSc^m)qgJj z)G_Ap9*O`>){6|xhuZgN>+*DHW9PIhnAHXxPDV{^#@}!YPCIN>zlq@-iS4gbNjyIl zzMF?N1pOg#Eb)M+~IQy8wt)n@a(=fw~0RRP6`oBm>d16LOWs!LXMLn^|$6VVa~TPdShED<;j zvZ%Ijk;=D41&mlgr{S5(V1!S>Unc<3khjNU$)|N2$JyQ7=G+L#=TKdcl{iAfIB9u2}>HIa@9f=?n-sx zy{0_pUUlXHm)oVpL8!S3qooPY3at|4UGW~zpn?}cx#62L_S-v^OmyMI z3Xcth%I-1c6-dH)x&j0Q8OBrZ=WejQn9<=QvQP>nCU0Fh<@0Dd)Zuay1bl}oiHWqv!bpR^OKS2^NiBRnUg$LNn0!HRZ(+MRC>ANX%w@ldk(-zY>UOqkKy1

      9ZgL0F?8FeQgPcopB7CXyyKS8Sbk z>I1<92yj+lSw|YTK33rDvu6>{#^k*SAN^&H_+G>GXnbb}AYfgWy{+>tcJPnZMPM#H`QTFw|4Yr9@%_K$1nt-Q)k@LAMk&KQ>D-dj9 zuCI;1fyB1njwsW_i)$ht-X^leKbsGE|Br0LvnPb`Y2B~)IDp%k5wd%V^56B5EGslh z*Q&S(IO9SST<%&L58PV2BhH8`0#4YFhd~1-o!;#lGa{7P-|-whW?3f40M7dpzLvbO zuS3_c(0PZ=x0?AEapfSKM%j(++~<{`VPdGuwl`+c4zbhvV@d%8{kQs?j?hH-Vnq4n z9W-AHros{04)f#0xRol?#cJKcj@7`;X1edrh-Zo zL4`fWH}oAX>xhs9d(7vGCS%Pb*qf$=HB&PY^{UHFZ1tQQupTHQNdd&X;@rUZYBXLm zopXixNTGOI0uXd8UWzJNvKIDW@wtuj&V14}LqMB<@tJ)umwo;BAe{dvUzv+DoZ-qn zL!pIYU}b?@YDNbD#b71g-4AP|{7_}>a6Q?a!2Jbt@p6HtdlPj*%!cn}IQjTO_VY8# zlH-FcK^AG7Ju?{!N3I=cBRcn(24y>wznuJrN)lvqhspu)xrPrkZ76(LtX_clF<9C9j1H3(%07OH_& z(|EBXXIs5=Av=76AG+t%nUU~t;dnLn}@x!j#`uZEH^gEIw(>o~yju2yl#OILT%lw1e^gbus2?J&a9;dg=h8WBeHbmTs>e!g4E90cFOhgU z2$a=n3@&T(7d-|%)0OqpCM@SJOQKvruRiJ#2PkwFIQGG^uaTBA6m8}F;yqSj)nCN* z1*|`9IZZA~tI1peIJxj6cd6s#vYjE1i73lT^1JVD#qs!pqS*L*Rm+6*KrDtga@eON z+?u_x3qfoZ${E+KU6-;}rtlo@4jTXTRwrPt9f!+MHOF@U!wqe2xx zV&syDdiQJHz(~L^Z#q=GEz=pVQ_r0fzB9@*^UOez+7W*NBix!} zax;;-8OxBVA~f-Z{G<%(Dee$@8pxsGtdqb2^p~2kE8Sz?Ec2dX&_}{OMLU52g!Bew z-p(BdCfrK@7geKg$|3mYe#h8ByfgHj)^SgsR#3s`1T0wiaPJ|_O#4NQFg*yXH6ixcDQL4Kw$#8(`2eaFVx1CX)+q~t3dCD;JQa+$E}!3} zm3Gm@w^nR@ei{Y*+tGBFbI!utS!orNf|P)%E9iliVuLMI+isc0OnIw{pAsBfn_hzW z#xIayts?yBPlBK%G)uc|Z>(*eu&!p-DTXvMOTUhgUZm7NH6IVv%Cm1fwU0BKEp+zY zogEU}eex!TR*^o&~+KB#R8aGC0DE_~N!!=OLl4cG_p)0yX~IP^Yi{d>tc-7X|)if2uLL zbA>EPoIPXaH}kqY6TO$MbK?~9^e;8(y9xo3NSYDUsppuehf=>yGT4=rneGg37(Fe2 zqN%6IAaJY5?9}gqOCed5ngGT!*tIY9A*5+?x^f>m_;{@JWbH;dPR+kcWfESe@xyKa zPRmLsRi(?r>2CS^$`?d7)Vj7%B)*DS(RL#l2e-ZYvsq<-5< Date: Mon, 13 Jul 2026 08:27:09 +0200 Subject: [PATCH 108/538] Updater bot : birdnet-go updated to 20260712 --- birdnet-go/CHANGELOG.md | 3 +++ birdnet-go/config.yaml | 2 +- birdnet-go/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/birdnet-go/CHANGELOG.md b/birdnet-go/CHANGELOG.md index e2732b8600..65848421d9 100644 --- a/birdnet-go/CHANGELOG.md +++ b/birdnet-go/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 20260712 (2026-07-13) +- Update to latest version from tphakala/birdnet-go (changelog : https://github.com/tphakala/birdnet-go/releases) ## nightly-20260615-4 (09-07-2026) - Minor bugs fixed ## nightly-20260615-3 (05-07-2026) diff --git a/birdnet-go/config.yaml b/birdnet-go/config.yaml index dc8bc29606..fb39e8ef78 100644 --- a/birdnet-go/config.yaml +++ b/birdnet-go/config.yaml @@ -128,4 +128,4 @@ slug: birdnet-go udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-go usb: true -version: "nightly-20260615-4" +version: "20260712" diff --git a/birdnet-go/updater.json b/birdnet-go/updater.json index 4e0707912d..ac89bbe8fe 100644 --- a/birdnet-go/updater.json +++ b/birdnet-go/updater.json @@ -2,10 +2,10 @@ "github_beta": true, "github_exclude": "-4", "github_fulltag": true, - "last_update": "2026-06-17", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "birdnet-go", "source": "github", "upstream_repo": "tphakala/birdnet-go", - "upstream_version": "nightly-20260615" + "upstream_version": "20260712" } From b620907a6a105282030341c4cb1f5f990142a08d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:27:15 +0200 Subject: [PATCH 109/538] Updater bot : birdnet-pipy updated to 0.8.4 --- birdnet-pipy/CHANGELOG.md | 3 +++ birdnet-pipy/config.yaml | 2 +- birdnet-pipy/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/birdnet-pipy/CHANGELOG.md b/birdnet-pipy/CHANGELOG.md index 45c3443ef3..382aa3f6a4 100644 --- a/birdnet-pipy/CHANGELOG.md +++ b/birdnet-pipy/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.8.4 (2026-07-13) +- Update to latest version from Suncuss/BirdNET-PiPy (changelog : https://github.com/Suncuss/BirdNET-PiPy/releases) + ## 0.8.3 (2026-07-11) - Update to latest version from Suncuss/BirdNET-PiPy (changelog : https://github.com/Suncuss/BirdNET-PiPy/releases) diff --git a/birdnet-pipy/config.yaml b/birdnet-pipy/config.yaml index 6dcd931f1e..e48f99109c 100644 --- a/birdnet-pipy/config.yaml +++ b/birdnet-pipy/config.yaml @@ -96,4 +96,4 @@ schema: ssl: bool? slug: birdnet-pipy url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-pipy -version: "0.8.3" +version: "0.8.4" diff --git a/birdnet-pipy/updater.json b/birdnet-pipy/updater.json index 89739a63ad..7c9c83479c 100644 --- a/birdnet-pipy/updater.json +++ b/birdnet-pipy/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-11", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "birdnet-pipy", "source": "github", "upstream_repo": "Suncuss/BirdNET-PiPy", - "upstream_version": "0.8.3" + "upstream_version": "0.8.4" } From 2a498af497f46269e4d7644b28f7fffa2c3dc5f5 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:28:44 +0200 Subject: [PATCH 110/538] Updater bot : claude_desktop updated to ubunturesolute-version-6dc44b0e --- claude_desktop/CHANGELOG.md | 3 +++ claude_desktop/Dockerfile | 2 +- claude_desktop/config.yaml | 6 +++--- claude_desktop/updater.json | 4 ++-- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 857efc3a0e..d3ed393430 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,6 @@ + +## ubunturesolute-version-6dc44b0e (2026-07-13) +- Update to latest version from linuxserver/docker-baseimage-selkies (changelog : https://github.com/linuxserver/docker-baseimage-selkies/releases) ## 1.14 (10-07-2026) - Build pinned RTK 0.43.0 source on Debian Bookworm for both architectures instead of installing the upstream arm64 release binary, which requires GLIBC 2.39 and cannot run in the add-on image. diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 25efd5dc8f..75bd098df3 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -45,7 +45,7 @@ VOLUME [ "/sys/fs/cgroup" ] # hadolint ignore=SC2015,DL4006,SC2013,SC2086 RUN \ usermod --home /data/data abc && \ - if [[ -d /etc/services.d ]] && ls /etc/services.d/*/run 1> /dev/"debiantrixie-version-c55d3809" 2>&1; then sed -i "1a set +e" /etc/services.d/*/run; fi + if [[ -d /etc/services.d ]] && ls /etc/services.d/*/run 1> /dev/"ubunturesolute-version-6dc44b0e" 2>&1; then sed -i "1a set +e" /etc/services.d/*/run; fi ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 0d8afc6c8d..2fdc2f5c3b 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -57,8 +57,8 @@ options: panel_admin: false panel_icon: mdi:robot-happy ports: - 3001/tcp: "debiantrixie-version-c55d3809" - 7681/tcp: "debiantrixie-version-c55d3809" + 3001/tcp: "ubunturesolute-version-6dc44b0e" + 7681/tcp: "ubunturesolute-version-6dc44b0e" 8787/tcp: 8787 ports_description: 3001/tcp: Claude Desktop web interface @@ -100,5 +100,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.14" +version: "ubunturesolute-version-6dc44b0e" video: true diff --git a/claude_desktop/updater.json b/claude_desktop/updater.json index 1d422d6aaf..bfd6f352cf 100644 --- a/claude_desktop/updater.json +++ b/claude_desktop/updater.json @@ -4,6 +4,6 @@ "github_fulltag": true, "slug": "claude_desktop", "paused": false, - "upstream_version": "debiantrixie-version-c55d3809", - "last_update": "2026-07-11" + "upstream_version": "ubunturesolute-version-6dc44b0e", + "last_update": "2026-07-13" } From 0b6c4100015a8085ad2d44cf00c6486f58f90c6c Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:29:04 +0200 Subject: [PATCH 111/538] Updater bot : emby_beta updated to 4.10.0.19 --- emby_beta/CHANGELOG.md | 3 +++ emby_beta/Dockerfile | 2 +- emby_beta/config.yaml | 2 +- emby_beta/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/emby_beta/CHANGELOG.md b/emby_beta/CHANGELOG.md index 05d6089bc6..74696a6bfc 100644 --- a/emby_beta/CHANGELOG.md +++ b/emby_beta/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.10.0.19 (2026-07-13) +- Update to latest version from linuxserver/docker-emby (changelog : https://github.com/linuxserver/docker-emby/releases) + ## 4.10.0.18 (2026-07-11) - Update to latest version from linuxserver/docker-emby (changelog : https://github.com/linuxserver/docker-emby/releases) diff --git a/emby_beta/Dockerfile b/emby_beta/Dockerfile index 6e25402535..f7abd1baf3 100644 --- a/emby_beta/Dockerfile +++ b/emby_beta/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="4.10.0.18" +ARG BUILD_UPSTREAM="4.10.0.19" FROM ${BUILD_FROM} ################## diff --git a/emby_beta/config.yaml b/emby_beta/config.yaml index c59e48216e..d3207dc1f9 100644 --- a/emby_beta/config.yaml +++ b/emby_beta/config.yaml @@ -122,5 +122,5 @@ schema: slug: emby_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/emby -version: "4.10.0.18" +version: "4.10.0.19" video: true diff --git a/emby_beta/updater.json b/emby_beta/updater.json index 43b6d05a72..10142f74bc 100644 --- a/emby_beta/updater.json +++ b/emby_beta/updater.json @@ -1,9 +1,9 @@ { "github_beta": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "emby", "source": "github", "upstream_repo": "linuxserver/docker-emby", - "upstream_version": "4.10.0.18" + "upstream_version": "4.10.0.19" } From 5755df518156d8df463f4f3120b5cc08dc0ef8a5 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:29:15 +0200 Subject: [PATCH 112/538] Updater bot : ente updated to 4.4.24 --- ente/CHANGELOG.md | 3 +++ ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 15c481b126..17346523b6 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.4.24 (2026-07-13) +- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) + ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 72d2fc618c..5bd0afb53e 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.23" +version: "4.4.24" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index d8d8dd2093..48381c4b6e 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-06-11", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.23" + "upstream_version": "4.4.24" } From dc206213cac3afc422a1787811c754df7b161614 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:29:37 +0200 Subject: [PATCH 113/538] Updater bot : flexget updated to 3.19.27 --- flexget/CHANGELOG.md | 3 +++ flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index fb73412a31..af74b00acd 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.19.27 (2026-07-13) +- Update to latest version from wiserain/flexget + ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index ad1b7f6538..5c2831b377 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.26" +version: "3.19.27" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 82ed3e79df..7c7c340c0b 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.26" + "upstream_version": "3.19.27" } From 19c3cf825261a2020cef112e8a91d0f26f4b04eb Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:29:48 +0200 Subject: [PATCH 114/538] Updater bot : gitea updated to 1.27.0 --- gitea/CHANGELOG.md | 3 +++ gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index 72102123d6..f9e1d749f5 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.27.0 (2026-07-13) +- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) + ## 1.26.4 (2026-06-23) - Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.26.2-3 (19-06-2026) diff --git a/gitea/config.yaml b/gitea/config.yaml index 83de67d1a4..9230114be6 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.26.4" +version: "1.27.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index a8e3aeb675..5df88d023a 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-23", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.26.4" + "upstream_version": "1.27.0" } From 289b3b53f1fa8b05d4b79a821ab8cbac58cb5d45 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:29:55 +0200 Subject: [PATCH 115/538] Updater bot : grav updated to 2.0.10 --- grav/CHANGELOG.md | 3 +++ grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 06165ba207..674051b823 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.10 (2026-07-13) +- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) + ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 0894d6e150..20b462ed23 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.6" +ARG BUILD_UPSTREAM="2.0.10" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 540412f15c..e6d9d32a4f 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.6" +version: "2.0.10" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 3936e662ab..9aca879add 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.6" + "upstream_version": "2.0.10" } From 3c5212b4ef26549a433f1af2e4c826e5ab81abe7 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:30:02 +0200 Subject: [PATCH 116/538] Updater bot : immich updated to 3.0.2 --- immich/CHANGELOG.md | 3 +++ immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index a8ab336381..c188639367 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.2 (2026-07-13) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 4537b0473b..fce6366bbe 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 63ac0aca0a..75457fb9a3 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.2" } From 3ad3b1d1bab7b2f8561988da9b11e6e4bf6e068d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:30:07 +0200 Subject: [PATCH 117/538] Updater bot : immich_cuda updated to 3.0.2 --- immich_cuda/CHANGELOG.md | 3 +++ immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 95bec50a58..6297814d66 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.2 (2026-07-13) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index b7c3dd3c48..0dedd90fc2 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 63ac0aca0a..75457fb9a3 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.2" } From 2468d114000d03d8e1b46bb002f6b7862220697a Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:30:11 +0200 Subject: [PATCH 118/538] Updater bot : immich_frame updated to 1.0.35.0 --- immich_frame/CHANGELOG.md | 3 +++ immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 443763661a..0b5ddcdf7d 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.0.35.0 (2026-07-13) +- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) + ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 44a6fcb111..3f400afe37 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.34.0" +version: "1.0.35.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 8408fb021e..883e5a79ed 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.34.0" + "upstream_version": "1.0.35.0" } From c8a52ba9155c350cf1fd0f0fe37f43e2818fd1a6 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:30:16 +0200 Subject: [PATCH 119/538] Updater bot : immich_noml updated to 3.0.2 --- immich_noml/CHANGELOG.md | 3 +++ immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 0c354e8271..f1a2fa661b 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.2 (2026-07-13) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 42ee4dc3dd..89d9e3ae3a 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 63ac0aca0a..75457fb9a3 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.2" } From cedccabef2cb6c08760e4c3b96f8808d6b830ffa Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:30:21 +0200 Subject: [PATCH 120/538] Updater bot : immich_openvino updated to 3.0.2 --- immich_openvino/CHANGELOG.md | 3 +++ immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 1b604106d2..92a88de6d7 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.2 (2026-07-13) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 52c6cd1a44..2a51badd99 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 63ac0aca0a..75457fb9a3 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.2" } From e17cc922f949d2bfe72d53199f9c99a28323658f Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:30:29 +0200 Subject: [PATCH 121/538] Updater bot : jackett updated to 0.24.2206 --- jackett/CHANGELOG.md | 3 +++ jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index fdcaa4afa4..7a0a08ee96 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.24.2206 (2026-07-13) +- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) + ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index c393744967..902844ad11 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2166" +version: "0.24.2206" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0a816abd2c..ff906e5cc7 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2166" + "upstream_version": "0.24.2206" } From 796a4132bf26d7ac4a19f9f86a26d94cdb7ae950 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:30:51 +0200 Subject: [PATCH 122/538] Updater bot : linkwarden updated to 2.15.1 --- linkwarden/CHANGELOG.md | 3 +++ linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 90b6ee06ff..fdfc61bec9 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 2.15.1 (2026-07-13) +- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index 33fb3c849d..b1d3213f17 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.14.1" +version: "2.15.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 18d72d7a97..f3328d4dc4 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-04-23", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.14.1" + "upstream_version": "2.15.1" } From afe45b7a7589afd66fe5852b124546497eff89a8 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:30:55 +0200 Subject: [PATCH 123/538] Updater bot : maintainerr updated to 3.17.1 --- maintainerr/CHANGELOG.md | 3 +++ maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6625d46e2d..0b1a04ddcf 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.17.1 (2026-07-13) +- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) + ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index eadb42fa43..a05b7bb794 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.16.0" +ARG BUILD_UPSTREAM="3.17.1" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index 65d02cfd17..bb266ddf2b 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.16.0" +version: "3.17.1" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index fd48a580bc..ad74d42e7a 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.16.0" + "upstream_version": "3.17.1" } From 44f576699dfbaaa96191b3cfe05518fe61575b5a Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:31:14 +0200 Subject: [PATCH 124/538] Updater bot : navidrome updated to 0.63.2 --- navidrome/CHANGELOG.md | 3 +++ navidrome/config.yaml | 2 +- navidrome/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/navidrome/CHANGELOG.md b/navidrome/CHANGELOG.md index 1d3e82672a..dc400eb8f3 100644 --- a/navidrome/CHANGELOG.md +++ b/navidrome/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 0.63.2 (2026-07-13) +- Update to latest version from navidrome/navidrome (changelog : https://github.com/navidrome/navidrome/releases) ## 0.62.0-2 (19-06-2026) - Minor bugs fixed diff --git a/navidrome/config.yaml b/navidrome/config.yaml index e1c6c8bc59..fd93f83dc2 100644 --- a/navidrome/config.yaml +++ b/navidrome/config.yaml @@ -119,5 +119,5 @@ schema: slug: navidrome udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/navidrome -version: "0.62.0-2" +version: "0.63.2" webui: "[PROTO:ssl]://[HOST]:[PORT:4533]" diff --git a/navidrome/updater.json b/navidrome/updater.json index 68986b5735..c349a85a5a 100644 --- a/navidrome/updater.json +++ b/navidrome/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-11", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "navidrome", "source": "github", "upstream_repo": "navidrome/navidrome", - "upstream_version": "0.62.0" + "upstream_version": "0.63.2" } From 246a7ce157331e1ea24d7ca0b0bc93765ddd13ec Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:31:28 +0200 Subject: [PATCH 125/538] Updater bot : nzbget updated to v26.2-ls253 --- nzbget/CHANGELOG.md | 3 +++ nzbget/config.yaml | 2 +- nzbget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nzbget/CHANGELOG.md b/nzbget/CHANGELOG.md index 054fcb4480..4f5aaa8b24 100644 --- a/nzbget/CHANGELOG.md +++ b/nzbget/CHANGELOG.md @@ -1,4 +1,7 @@ +## v26.2-ls253 (2026-07-13) +- Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) + ## v26.2-ls251 (2026-07-04) - Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) diff --git a/nzbget/config.yaml b/nzbget/config.yaml index 4c2658da96..2abdc16346 100644 --- a/nzbget/config.yaml +++ b/nzbget/config.yaml @@ -104,4 +104,4 @@ schema: slug: nzbget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "v26.2-ls251" +version: "v26.2-ls253" diff --git a/nzbget/updater.json b/nzbget/updater.json index 15dca4e6a3..b39f0cbd91 100644 --- a/nzbget/updater.json +++ b/nzbget/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "nzbget", "source": "github", "upstream_repo": "linuxserver/docker-nzbget", - "upstream_version": "v26.2-ls251" + "upstream_version": "v26.2-ls253" } From a5bba509ef583888fca8c5a84dc54f8550103077 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:31:36 +0200 Subject: [PATCH 126/538] Updater bot : openproject updated to 17.6.0 --- openproject/CHANGELOG.md | 3 +++ openproject/config.yaml | 2 +- openproject/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/openproject/CHANGELOG.md b/openproject/CHANGELOG.md index 26524b7076..e60e53fbe3 100644 --- a/openproject/CHANGELOG.md +++ b/openproject/CHANGELOG.md @@ -1,4 +1,7 @@ +## 17.6.0 (2026-07-13) +- Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) + ## 17.5.1 (2026-06-17) - Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) diff --git a/openproject/config.yaml b/openproject/config.yaml index 4dd820eb68..476c58e113 100644 --- a/openproject/config.yaml +++ b/openproject/config.yaml @@ -34,5 +34,5 @@ schema: slug: openproject udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/openproject -version: "17.5.1" +version: "17.6.0" webui: "[PROTO:ssl]://[HOST]:[PORT:8080]" diff --git a/openproject/updater.json b/openproject/updater.json index 9ac77fed1e..b0f492bb28 100644 --- a/openproject/updater.json +++ b/openproject/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-17", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "openproject", "source": "github", "upstream_repo": "opf/openproject", - "upstream_version": "17.5.1" + "upstream_version": "17.6.0" } From 521d555615b9ae64113310c7edc7e2cd7f306770 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:31:45 +0200 Subject: [PATCH 127/538] Updater bot : plex updated to 1.43.2.10687-563d026ea-ls312 --- plex/CHANGELOG.md | 3 +++ plex/config.yaml | 2 +- plex/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/plex/CHANGELOG.md b/plex/CHANGELOG.md index e86cb587b1..47a421d211 100644 --- a/plex/CHANGELOG.md +++ b/plex/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.43.2.10687-563d026ea-ls312 (2026-07-13) +- Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) + ## 1.43.2.10687-563d026ea-ls311 (2026-07-04) - Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) diff --git a/plex/config.yaml b/plex/config.yaml index b1104de51b..155aa17ef6 100644 --- a/plex/config.yaml +++ b/plex/config.yaml @@ -175,6 +175,6 @@ slug: plex_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/plex usb: true -version: "1.43.2.10687-563d026ea-ls311" +version: "1.43.2.10687-563d026ea-ls312" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:32400]/web" diff --git a/plex/updater.json b/plex/updater.json index aaa88c7248..98e8c68ee7 100644 --- a/plex/updater.json +++ b/plex/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "plex", "source": "github", "upstream_repo": "linuxserver/docker-plex", - "upstream_version": "1.43.2.10687-563d026ea-ls311" + "upstream_version": "1.43.2.10687-563d026ea-ls312" } From 9a4f384d5ab8a78f75aa884b49498a4f7729711c Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:52 +0000 Subject: [PATCH 128/538] Revert "Updater bot : plex updated to 1.43.2.10687-563d026ea-ls312" This reverts commit 521d555615b9ae64113310c7edc7e2cd7f306770. --- plex/CHANGELOG.md | 3 --- plex/config.yaml | 2 +- plex/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/plex/CHANGELOG.md b/plex/CHANGELOG.md index 47a421d211..e86cb587b1 100644 --- a/plex/CHANGELOG.md +++ b/plex/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.43.2.10687-563d026ea-ls312 (2026-07-13) -- Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) - ## 1.43.2.10687-563d026ea-ls311 (2026-07-04) - Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) diff --git a/plex/config.yaml b/plex/config.yaml index 155aa17ef6..b1104de51b 100644 --- a/plex/config.yaml +++ b/plex/config.yaml @@ -175,6 +175,6 @@ slug: plex_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/plex usb: true -version: "1.43.2.10687-563d026ea-ls312" +version: "1.43.2.10687-563d026ea-ls311" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:32400]/web" diff --git a/plex/updater.json b/plex/updater.json index 98e8c68ee7..aaa88c7248 100644 --- a/plex/updater.json +++ b/plex/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "plex", "source": "github", "upstream_repo": "linuxserver/docker-plex", - "upstream_version": "1.43.2.10687-563d026ea-ls312" + "upstream_version": "1.43.2.10687-563d026ea-ls311" } From 6b50abe96d122e47de3f11ab165c0481339e2853 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:52 +0000 Subject: [PATCH 129/538] Revert "Updater bot : openproject updated to 17.6.0" This reverts commit a5bba509ef583888fca8c5a84dc54f8550103077. --- openproject/CHANGELOG.md | 3 --- openproject/config.yaml | 2 +- openproject/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/openproject/CHANGELOG.md b/openproject/CHANGELOG.md index e60e53fbe3..26524b7076 100644 --- a/openproject/CHANGELOG.md +++ b/openproject/CHANGELOG.md @@ -1,7 +1,4 @@ -## 17.6.0 (2026-07-13) -- Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) - ## 17.5.1 (2026-06-17) - Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) diff --git a/openproject/config.yaml b/openproject/config.yaml index 476c58e113..4dd820eb68 100644 --- a/openproject/config.yaml +++ b/openproject/config.yaml @@ -34,5 +34,5 @@ schema: slug: openproject udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/openproject -version: "17.6.0" +version: "17.5.1" webui: "[PROTO:ssl]://[HOST]:[PORT:8080]" diff --git a/openproject/updater.json b/openproject/updater.json index b0f492bb28..9ac77fed1e 100644 --- a/openproject/updater.json +++ b/openproject/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-13", + "last_update": "2026-06-17", "repository": "alexbelgium/hassio-addons", "slug": "openproject", "source": "github", "upstream_repo": "opf/openproject", - "upstream_version": "17.6.0" + "upstream_version": "17.5.1" } From 91738293351b20a99edffa95761097308a9add3b Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 130/538] Revert "Updater bot : nzbget updated to v26.2-ls253" This reverts commit 246a7ce157331e1ea24d7ca0b0bc93765ddd13ec. --- nzbget/CHANGELOG.md | 3 --- nzbget/config.yaml | 2 +- nzbget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/nzbget/CHANGELOG.md b/nzbget/CHANGELOG.md index 4f5aaa8b24..054fcb4480 100644 --- a/nzbget/CHANGELOG.md +++ b/nzbget/CHANGELOG.md @@ -1,7 +1,4 @@ -## v26.2-ls253 (2026-07-13) -- Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) - ## v26.2-ls251 (2026-07-04) - Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) diff --git a/nzbget/config.yaml b/nzbget/config.yaml index 2abdc16346..4c2658da96 100644 --- a/nzbget/config.yaml +++ b/nzbget/config.yaml @@ -104,4 +104,4 @@ schema: slug: nzbget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "v26.2-ls253" +version: "v26.2-ls251" diff --git a/nzbget/updater.json b/nzbget/updater.json index b39f0cbd91..15dca4e6a3 100644 --- a/nzbget/updater.json +++ b/nzbget/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "nzbget", "source": "github", "upstream_repo": "linuxserver/docker-nzbget", - "upstream_version": "v26.2-ls253" + "upstream_version": "v26.2-ls251" } From 3eafa3e0281b8ed2f04da8f9889cd7f0aabdb211 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 131/538] Revert "Updater bot : navidrome updated to 0.63.2" This reverts commit 44f576699dfbaaa96191b3cfe05518fe61575b5a. --- navidrome/CHANGELOG.md | 3 --- navidrome/config.yaml | 2 +- navidrome/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/navidrome/CHANGELOG.md b/navidrome/CHANGELOG.md index dc400eb8f3..1d3e82672a 100644 --- a/navidrome/CHANGELOG.md +++ b/navidrome/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 0.63.2 (2026-07-13) -- Update to latest version from navidrome/navidrome (changelog : https://github.com/navidrome/navidrome/releases) ## 0.62.0-2 (19-06-2026) - Minor bugs fixed diff --git a/navidrome/config.yaml b/navidrome/config.yaml index fd93f83dc2..e1c6c8bc59 100644 --- a/navidrome/config.yaml +++ b/navidrome/config.yaml @@ -119,5 +119,5 @@ schema: slug: navidrome udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/navidrome -version: "0.63.2" +version: "0.62.0-2" webui: "[PROTO:ssl]://[HOST]:[PORT:4533]" diff --git a/navidrome/updater.json b/navidrome/updater.json index c349a85a5a..68986b5735 100644 --- a/navidrome/updater.json +++ b/navidrome/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-13", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "navidrome", "source": "github", "upstream_repo": "navidrome/navidrome", - "upstream_version": "0.63.2" + "upstream_version": "0.62.0" } From 26533b66972133d180144e648079972dc9006e9d Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 132/538] Revert "Updater bot : maintainerr updated to 3.17.1" This reverts commit afe45b7a7589afd66fe5852b124546497eff89a8. --- maintainerr/CHANGELOG.md | 3 --- maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 0b1a04ddcf..6625d46e2d 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.17.1 (2026-07-13) -- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) - ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index a05b7bb794..eadb42fa43 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.17.1" +ARG BUILD_UPSTREAM="3.16.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index bb266ddf2b..65d02cfd17 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.17.1" +version: "3.16.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index ad74d42e7a..fd48a580bc 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.17.1" + "upstream_version": "3.16.0" } From 8bc048b9931de15ec7e496d4a7f73c43fc817101 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 133/538] Revert "Updater bot : linkwarden updated to 2.15.1" This reverts commit 796a4132bf26d7ac4a19f9f86a26d94cdb7ae950. --- linkwarden/CHANGELOG.md | 3 --- linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index fdfc61bec9..90b6ee06ff 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 2.15.1 (2026-07-13) -- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index b1d3213f17..33fb3c849d 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.15.1" +version: "2.14.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index f3328d4dc4..18d72d7a97 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-13", + "last_update": "2026-04-23", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.15.1" + "upstream_version": "2.14.1" } From ef9f76e91cf7f99fbb1998ee4d0135eb0d122977 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 134/538] Revert "Updater bot : jackett updated to 0.24.2206" This reverts commit e17cc922f949d2bfe72d53199f9c99a28323658f. --- jackett/CHANGELOG.md | 3 --- jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index 7a0a08ee96..fdcaa4afa4 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,7 +1,4 @@ -## 0.24.2206 (2026-07-13) -- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) - ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index 902844ad11..c393744967 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2206" +version: "0.24.2166" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index ff906e5cc7..0a816abd2c 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2206" + "upstream_version": "0.24.2166" } From b0750a8a7f18a42764de525afd8274b4c5197487 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 135/538] Revert "Updater bot : immich_openvino updated to 3.0.2" This reverts commit cedccabef2cb6c08760e4c3b96f8808d6b830ffa. --- immich_openvino/CHANGELOG.md | 3 --- immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 92a88de6d7..1b604106d2 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.2 (2026-07-13) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 2a51badd99..52c6cd1a44 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.2" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 75457fb9a3..63ac0aca0a 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.2" + "upstream_version": "3.0.1" } From 6d199b146b98264f8781be6490d4f7eedde70e9a Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 136/538] Revert "Updater bot : immich_noml updated to 3.0.2" This reverts commit c8a52ba9155c350cf1fd0f0fe37f43e2818fd1a6. --- immich_noml/CHANGELOG.md | 3 --- immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index f1a2fa661b..0c354e8271 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.2 (2026-07-13) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 89d9e3ae3a..42ee4dc3dd 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.2" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 75457fb9a3..63ac0aca0a 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.2" + "upstream_version": "3.0.1" } From 98962ac29634eb4e596842d0fe7ccbc4400d1b38 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 137/538] Revert "Updater bot : immich_frame updated to 1.0.35.0" This reverts commit 2468d114000d03d8e1b46bb002f6b7862220697a. --- immich_frame/CHANGELOG.md | 3 --- immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 0b5ddcdf7d..443763661a 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.0.35.0 (2026-07-13) -- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) - ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 3f400afe37..44a6fcb111 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.35.0" +version: "1.0.34.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 883e5a79ed..8408fb021e 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.35.0" + "upstream_version": "1.0.34.0" } From 85dd1669faa4532dcd26476010b09ae218fefc90 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 138/538] Revert "Updater bot : immich_cuda updated to 3.0.2" This reverts commit 3ad3b1d1bab7b2f8561988da9b11e6e4bf6e068d. --- immich_cuda/CHANGELOG.md | 3 --- immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 6297814d66..95bec50a58 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.2 (2026-07-13) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index 0dedd90fc2..b7c3dd3c48 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.2" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 75457fb9a3..63ac0aca0a 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.2" + "upstream_version": "3.0.1" } From 82af311c3789ec76c67bd09e646d257af9a49ebc Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 139/538] Revert "Updater bot : immich updated to 3.0.2" This reverts commit 3c5212b4ef26549a433f1af2e4c826e5ab81abe7. --- immich/CHANGELOG.md | 3 --- immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index c188639367..a8ab336381 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.2 (2026-07-13) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index fce6366bbe..4537b0473b 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.2" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 75457fb9a3..63ac0aca0a 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.2" + "upstream_version": "3.0.1" } From 9161c28e271d6b1e8c0baef039918577af5740e9 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 140/538] Revert "Updater bot : grav updated to 2.0.10" This reverts commit 289b3b53f1fa8b05d4b79a821ab8cbac58cb5d45. --- grav/CHANGELOG.md | 3 --- grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 674051b823..06165ba207 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.0.10 (2026-07-13) -- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) - ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 20b462ed23..0894d6e150 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.10" +ARG BUILD_UPSTREAM="2.0.6" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index e6d9d32a4f..540412f15c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.10" +version: "2.0.6" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 9aca879add..3936e662ab 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.10" + "upstream_version": "2.0.6" } From e25b4ec1d3c9b85026f46f55eb2e140170c9afbf Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 141/538] Revert "Updater bot : gitea updated to 1.27.0" This reverts commit 19c3cf825261a2020cef112e8a91d0f26f4b04eb. --- gitea/CHANGELOG.md | 3 --- gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index f9e1d749f5..72102123d6 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.27.0 (2026-07-13) -- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) - ## 1.26.4 (2026-06-23) - Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.26.2-3 (19-06-2026) diff --git a/gitea/config.yaml b/gitea/config.yaml index 9230114be6..83de67d1a4 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27.0" +version: "1.26.4" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index 5df88d023a..a8e3aeb675 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-13", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.27.0" + "upstream_version": "1.26.4" } From e56dcf7abd2c5f79e7616c78268d55f841960b46 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 142/538] Revert "Updater bot : flexget updated to 3.19.27" This reverts commit dc206213cac3afc422a1787811c754df7b161614. --- flexget/CHANGELOG.md | 3 --- flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index af74b00acd..fb73412a31 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.19.27 (2026-07-13) -- Update to latest version from wiserain/flexget - ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index 5c2831b377..ad1b7f6538 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.27" +version: "3.19.26" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 7c7c340c0b..82ed3e79df 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-13", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.27" + "upstream_version": "3.19.26" } From 731f099c8cbdf603983edd469e7278ad6db65a5f Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 13 Jul 2026 06:31:53 +0000 Subject: [PATCH 143/538] Revert "Updater bot : ente updated to 4.4.24" This reverts commit 5755df518156d8df463f4f3120b5cc08dc0ef8a5. --- ente/CHANGELOG.md | 3 --- ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 17346523b6..15c481b126 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.4.24 (2026-07-13) -- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) - ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 5bd0afb53e..72d2fc618c 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.24" +version: "4.4.23" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index 48381c4b6e..d8d8dd2093 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-13", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.24" + "upstream_version": "4.4.23" } From 4b848c90547001bbd7377f1c6a894f24f7f4591d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:31:56 +0200 Subject: [PATCH 144/538] Updater bot : prowlarr updated to develop-2.5.1.5464-ls268 --- prowlarr/CHANGELOG.md | 3 +++ prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index 9c5d3a0d7d..8c8d189e62 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,3 +1,6 @@ + +## develop-2.5.1.5464-ls268 (2026-07-13) +- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) ## nightly-2.5.1.5460-ls4 (2026-07-08) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index e6899488a7..b32ce3c98c 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "nightly-2.5.1.5460-ls4" +version: "develop-2.5.1.5464-ls268" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 6acab844c5..3f7f5a9f95 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-08", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "nightly-2.5.1.5460-ls4" + "upstream_version": "develop-2.5.1.5464-ls268" } From 8162d42e41b7f0b57a19ef4ebb7619b842150f33 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:32:03 +0200 Subject: [PATCH 145/538] Updater bot : radarr updated to 6.3.0.10514 --- radarr/CHANGELOG.md | 3 +++ radarr/config.yaml | 2 +- radarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/radarr/CHANGELOG.md b/radarr/CHANGELOG.md index c9876ec429..313eea27be 100644 --- a/radarr/CHANGELOG.md +++ b/radarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 6.3.0.10514 (2026-07-13) +- Update to latest version from linuxserver/docker-radarr (changelog : https://github.com/linuxserver/docker-radarr/releases) + ## 6.2.1.10461 (2026-06-11) - Update to latest version from linuxserver/docker-radarr (changelog : https://github.com/linuxserver/docker-radarr/releases) diff --git a/radarr/config.yaml b/radarr/config.yaml index d2abe91073..511c83995d 100644 --- a/radarr/config.yaml +++ b/radarr/config.yaml @@ -108,4 +108,4 @@ schema: slug: radarr_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/radarr -version: "6.2.1.10461" +version: "6.3.0.10514" diff --git a/radarr/updater.json b/radarr/updater.json index 81a80726e0..c6e75f2bf2 100644 --- a/radarr/updater.json +++ b/radarr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-11", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "radarr", "source": "github", "upstream_repo": "linuxserver/docker-radarr", - "upstream_version": "6.2.1.10461" + "upstream_version": "6.3.0.10514" } From 21b9783fe2cf165f8b42360a7c93466042934538 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:32:21 +0200 Subject: [PATCH 146/538] Updater bot : scrutiny updated to v1.66.0 --- scrutiny/CHANGELOG.md | 3 +++ scrutiny/config.yaml | 2 +- scrutiny/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/scrutiny/CHANGELOG.md b/scrutiny/CHANGELOG.md index af5dfb206c..2efc58f6bf 100644 --- a/scrutiny/CHANGELOG.md +++ b/scrutiny/CHANGELOG.md @@ -1,4 +1,7 @@ +## v1.66.0 (2026-07-13) +- Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) + ## v1.65.0 (2026-07-04) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) diff --git a/scrutiny/config.yaml b/scrutiny/config.yaml index f40e1be45d..41703d50f5 100644 --- a/scrutiny/config.yaml +++ b/scrutiny/config.yaml @@ -113,4 +113,4 @@ schema: slug: scrutiny udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.65.0" +version: "v1.66.0" diff --git a/scrutiny/updater.json b/scrutiny/updater.json index 9147aef729..e754bfc7dc 100644 --- a/scrutiny/updater.json +++ b/scrutiny/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "scrutiny", "source": "github", "upstream_repo": "Starosdev/scrutiny", - "upstream_version": "v1.65.0" + "upstream_version": "v1.66.0" } From bb2146866fc4f626c79b9160ac05d94e56442679 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:32:25 +0200 Subject: [PATCH 147/538] Updater bot : scrutiny_fa updated to v1.66.0 --- scrutiny_fa/CHANGELOG.md | 3 +++ scrutiny_fa/config.yaml | 2 +- scrutiny_fa/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/scrutiny_fa/CHANGELOG.md b/scrutiny_fa/CHANGELOG.md index 5574ab6f4d..8af67e462e 100644 --- a/scrutiny_fa/CHANGELOG.md +++ b/scrutiny_fa/CHANGELOG.md @@ -1,4 +1,7 @@ +## v1.66.0 (2026-07-13) +- Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) + ## v1.65.0 (2026-07-04) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) diff --git a/scrutiny_fa/config.yaml b/scrutiny_fa/config.yaml index e4d1933450..7026b4f275 100644 --- a/scrutiny_fa/config.yaml +++ b/scrutiny_fa/config.yaml @@ -45,4 +45,4 @@ schema: slug: scrutiny_fa udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.65.0" +version: "v1.66.0" diff --git a/scrutiny_fa/updater.json b/scrutiny_fa/updater.json index 4d59edfce0..4794ef305a 100644 --- a/scrutiny_fa/updater.json +++ b/scrutiny_fa/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-13", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "scrutiny_fa", "source": "github", "upstream_repo": "Starosdev/scrutiny", - "upstream_version": "v1.65.0" + "upstream_version": "v1.66.0" } From 0363265d8413b6e301ecd803a3a7a717b7437f27 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:32:42 +0200 Subject: [PATCH 148/538] Updater bot : social_to_mealie updated to 1.7.1 --- social_to_mealie/CHANGELOG.md | 3 +++ social_to_mealie/config.yaml | 2 +- social_to_mealie/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/social_to_mealie/CHANGELOG.md b/social_to_mealie/CHANGELOG.md index fdd80801be..659d407245 100644 --- a/social_to_mealie/CHANGELOG.md +++ b/social_to_mealie/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.7.1 (2026-07-13) +- Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) ## 1.6.2 (2026-05-02) - Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) diff --git a/social_to_mealie/config.yaml b/social_to_mealie/config.yaml index 48e0476df2..1bacf3d008 100644 --- a/social_to_mealie/config.yaml +++ b/social_to_mealie/config.yaml @@ -1,5 +1,5 @@ name: Social to Mealie -version: "1.6.2" +version: "1.7.1" slug: social_to_mealie description: Import recipes from social media directly into Mealie url: https://github.com/alexbelgium/hassio-addons diff --git a/social_to_mealie/updater.json b/social_to_mealie/updater.json index 3b9bd7ed72..7b86e115a8 100644 --- a/social_to_mealie/updater.json +++ b/social_to_mealie/updater.json @@ -1,10 +1,10 @@ { "dockerhub_by_date": true, "dockerhub_list_size": 2, - "last_update": "2026-05-02", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "social_to_mealie", "source": "github", "upstream_repo": "GerardPolloRebozado/social-to-mealie", - "upstream_version": "1.6.2" + "upstream_version": "1.7.1" } From a966369e9611e2f1e89389c30e4bd6a8ab47fdad Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:32:58 +0200 Subject: [PATCH 149/538] Updater bot : tandoor_recipes updated to 2.6.13 --- tandoor_recipes/CHANGELOG.md | 3 +++ tandoor_recipes/config.yaml | 2 +- tandoor_recipes/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/tandoor_recipes/CHANGELOG.md b/tandoor_recipes/CHANGELOG.md index 1c3ff56683..271cc41b73 100644 --- a/tandoor_recipes/CHANGELOG.md +++ b/tandoor_recipes/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.6.13 (2026-07-13) +- Update to latest version from TandoorRecipes/recipes (changelog : https://github.com/TandoorRecipes/recipes/releases) + ## 2.6.12 (2026-07-04) - Update to latest version from TandoorRecipes/recipes (changelog : https://github.com/TandoorRecipes/recipes/releases) diff --git a/tandoor_recipes/config.yaml b/tandoor_recipes/config.yaml index 9da84789f4..2066fcea8f 100644 --- a/tandoor_recipes/config.yaml +++ b/tandoor_recipes/config.yaml @@ -112,5 +112,5 @@ services: slug: tandoor_recipes udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.6.12" +version: "2.6.13" webui: http://[HOST]:[PORT:80] diff --git a/tandoor_recipes/updater.json b/tandoor_recipes/updater.json index e6a654fdb1..620934b45e 100644 --- a/tandoor_recipes/updater.json +++ b/tandoor_recipes/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "tandoor_recipes", "source": "github", "upstream_repo": "TandoorRecipes/recipes", - "upstream_version": "2.6.12" + "upstream_version": "2.6.13" } From c6c5197eb84a96acf01cf1b62b26d107073d819a Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:33:00 +0200 Subject: [PATCH 150/538] Updater bot : tdarr updated to 2.83.01 --- tdarr/CHANGELOG.md | 3 +++ tdarr/config.yaml | 2 +- tdarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/tdarr/CHANGELOG.md b/tdarr/CHANGELOG.md index 5fdebf4db7..64b29c394f 100644 --- a/tdarr/CHANGELOG.md +++ b/tdarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.83.01 (2026-07-13) +- Update to latest version from haveagitgat/tdarr + ## 2.81.01 (2026-06-27) - Update to latest version from haveagitgat/tdarr diff --git a/tdarr/config.yaml b/tdarr/config.yaml index 11910135ab..764082b757 100644 --- a/tdarr/config.yaml +++ b/tdarr/config.yaml @@ -122,6 +122,6 @@ schema: slug: tdarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.81.01" +version: "2.83.01" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:8265]" diff --git a/tdarr/updater.json b/tdarr/updater.json index 3447bdb59a..8759dafd1f 100644 --- a/tdarr/updater.json +++ b/tdarr/updater.json @@ -1,9 +1,9 @@ { "github_exclude": "pro", - "last_update": "2026-06-27", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "tdarr", "source": "dockerhub", "upstream_repo": "haveagitgat/tdarr", - "upstream_version": "2.81.01" + "upstream_version": "2.83.01" } From d44b38981e4a1c8a818fb7cfb5cdda85e89b5ea8 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Mon, 13 Jul 2026 08:34:21 +0200 Subject: [PATCH 151/538] Updater bot : zzz_archived_code-server updated to 4.128.0 --- zzz_archived_code-server/CHANGELOG.md | 3 +++ zzz_archived_code-server/config.yaml | 2 +- zzz_archived_code-server/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/zzz_archived_code-server/CHANGELOG.md b/zzz_archived_code-server/CHANGELOG.md index 1856d555d8..2df0806944 100644 --- a/zzz_archived_code-server/CHANGELOG.md +++ b/zzz_archived_code-server/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.128.0 (2026-07-13) +- Update to latest version from linuxserver/docker-code-server (changelog : https://github.com/linuxserver/docker-code-server/releases) + ## 4.127.0 (2026-07-04) - Update to latest version from linuxserver/docker-code-server (changelog : https://github.com/linuxserver/docker-code-server/releases) diff --git a/zzz_archived_code-server/config.yaml b/zzz_archived_code-server/config.yaml index e897f4f05b..a98007dc9a 100644 --- a/zzz_archived_code-server/config.yaml +++ b/zzz_archived_code-server/config.yaml @@ -101,5 +101,5 @@ schema: slug: code-server udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/coder-server -version: "4.127.0" +version: "4.128.0" webui: "[PROTO:ssl]://[HOST]:[PORT:8443]" diff --git a/zzz_archived_code-server/updater.json b/zzz_archived_code-server/updater.json index e8535005f9..0157fd3a32 100644 --- a/zzz_archived_code-server/updater.json +++ b/zzz_archived_code-server/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "code-server", "source": "github", "upstream_repo": "linuxserver/docker-code-server", - "upstream_version": "4.127.0" + "upstream_version": "4.128.0" } From 30f99d738b885e2d17cdf5ef02d266c77d3a8f82 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Mon, 13 Jul 2026 11:34:08 +0200 Subject: [PATCH 152/538] Update config.yaml --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 2fdc2f5c3b..ee285a4262 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -100,5 +100,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "ubunturesolute-version-6dc44b0e" +version: "1.15" video: true From b8421be1e98f316c5800af6de5c81de2e3e44d61 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 13 Jul 2026 09:36:03 +0000 Subject: [PATCH 153/538] GitHub bot: changelog [nobuild] --- claude_desktop/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index d3ed393430..8139261883 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,5 @@ +## 1.15 (13-07-2026) +- Minor bugs fixed ## ubunturesolute-version-6dc44b0e (2026-07-13) - Update to latest version from linuxserver/docker-baseimage-selkies (changelog : https://github.com/linuxserver/docker-baseimage-selkies/releases) From 7df08e4f848c221e1b30ec73e0cdf708c61442b6 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 08:46:38 +0200 Subject: [PATCH 154/538] Update config.yaml --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index ee285a4262..a3a7ece8f6 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -100,5 +100,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.15" +version: "1.16" video: true From bd6daa32b7b82b3dfe6e83e4c32f3b467081882f Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 06:48:31 +0000 Subject: [PATCH 155/538] GitHub bot: changelog [nobuild] --- claude_desktop/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 8139261883..eea101b70c 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,5 @@ +## 1.16 (14-07-2026) +- Minor bugs fixed ## 1.15 (13-07-2026) - Minor bugs fixed From ad5eba5657ae6b7ccd309822026b531533f861ec Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 08:56:36 +0200 Subject: [PATCH 156/538] Update config.yaml --- claude_desktop/config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index a3a7ece8f6..333625d8fc 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -57,8 +57,8 @@ options: panel_admin: false panel_icon: mdi:robot-happy ports: - 3001/tcp: "ubunturesolute-version-6dc44b0e" - 7681/tcp: "ubunturesolute-version-6dc44b0e" + 3001/tcp: "null" + 7681/tcp: "7681" 8787/tcp: 8787 ports_description: 3001/tcp: Claude Desktop web interface From 6bb4cb735df1e55c5f016eda62865162782b5e82 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 09:32:13 +0200 Subject: [PATCH 157/538] Update config.yaml --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 333625d8fc..e76abdcecb 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -2,7 +2,7 @@ arch: - aarch64 - amd64 audio: true -description: Claude Desktop and a persistent Claude Code web terminal +description: "Claude Desktop and a persistent Claude Code web terminal" devices: - /dev/dri - /dev/dri/card0 From a90fe9ee4ae90f01ff404329ad73b29f215dce13 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 09:34:10 +0200 Subject: [PATCH 158/538] Update Dockerfile --- claude_desktop/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 75bd098df3..722a7b9e89 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -45,7 +45,7 @@ VOLUME [ "/sys/fs/cgroup" ] # hadolint ignore=SC2015,DL4006,SC2013,SC2086 RUN \ usermod --home /data/data abc && \ - if [[ -d /etc/services.d ]] && ls /etc/services.d/*/run 1> /dev/"ubunturesolute-version-6dc44b0e" 2>&1; then sed -i "1a set +e" /etc/services.d/*/run; fi + if [[ -d /etc/services.d ]] && ls /etc/services.d/*/run 1> /dev/null 2>&1; then sed -i "1a set +e" /etc/services.d/*/run; fi ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" From 6f931875355c0a3392b40fdf33b000e64fbd1c65 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 09:56:15 +0200 Subject: [PATCH 159/538] nobuild --- claude_desktop/config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index e76abdcecb..dbd6559f95 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -57,8 +57,8 @@ options: panel_admin: false panel_icon: mdi:robot-happy ports: - 3001/tcp: "null" - 7681/tcp: "7681" + 3001/tcp: null + 7681/tcp: 7681 8787/tcp: 8787 ports_description: 3001/tcp: Claude Desktop web interface From ab02e92ad1c07dfbfe31a3781468dec3ef4e0d0f Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 09:59:51 +0200 Subject: [PATCH 160/538] Update config.yaml --- birdnet-go-dev/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/birdnet-go-dev/config.yaml b/birdnet-go-dev/config.yaml index d077b26ae6..4cd5713f39 100644 --- a/birdnet-go-dev/config.yaml +++ b/birdnet-go-dev/config.yaml @@ -127,5 +127,5 @@ slug: birdnet-go-dev udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "source-20260709" +version: "source-20260714" video: true From 34135ba471c87fa126d39683b3ab30fb69f3f0d9 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 08:07:54 +0000 Subject: [PATCH 161/538] GitHub bot: changelog [nobuild] --- birdnet-go-dev/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/birdnet-go-dev/CHANGELOG.md b/birdnet-go-dev/CHANGELOG.md index d6b264f835..5babe31d6b 100644 --- a/birdnet-go-dev/CHANGELOG.md +++ b/birdnet-go-dev/CHANGELOG.md @@ -1,3 +1,5 @@ +## source-20260714 (14-07-2026) +- Minor bugs fixed ## source-20260709 (09-07-2026) - Minor bugs fixed ## source-20260708-4 (08-07-2026) From 776d0631618aeac3a4f7fd797218592e2bba5b65 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 11:07:24 +0200 Subject: [PATCH 162/538] fix(elasticsearch): upgrade to 8.19.18 with automatic data migration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The add-on reported version 8.14.3 but the shipped image was still Elasticsearch 7.17.9 — the Dockerfile BUILD_UPSTREAM was never bumped, and the builder uses that ARG. The homeassistant-elasticsearch integration requires 8.14+, so configuration failed (#2849). - Upgrade to Elasticsearch 8.19.18 (latest 8.x; 9.x cannot read indices created in 7.x) - Add automatic 7.x -> 8.x data migration with a guard that aborts on unsupported paths (downgrade, or data more than one major behind). The version marker is written only after ES answers on 9200, so a failed upgrade never masks the true on-disk data lineage - Default xpack.security.enabled=false to preserve plain-HTTP behavior the HA component expects; override via ES_SETTING_XPACK_SECURITY_ENABLED - Fix the env_vars option, which never worked (the image has no s6-overlay, so the cont-init stack never ran) - Remove the ingest-attachment plugin install (bundled since ES 8.0, which broke the 8.x build) - Replace line-number-based entrypoint patching with a proper init script sourced via a pattern-anchored injection - Add updater.json pinned to the 8.19 line to prevent version drift and accidental 9.x jumps Fixes #2849 Co-Authored-By: Claude Fable 5 --- elasticsearch/CHANGELOG.md | 11 ++ elasticsearch/Dockerfile | 25 ++-- elasticsearch/README.md | 16 ++ elasticsearch/config.yaml | 2 +- .../rootfs/etc/cont-init.d/99-run.sh | 1 - .../rootfs/usr/local/bin/addon-init.sh | 138 ++++++++++++++++++ elasticsearch/updater.json | 10 ++ 7 files changed, 186 insertions(+), 17 deletions(-) delete mode 100755 elasticsearch/rootfs/etc/cont-init.d/99-run.sh create mode 100644 elasticsearch/rootfs/usr/local/bin/addon-init.sh create mode 100644 elasticsearch/updater.json diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 96bfdeb16c..a11e709ecb 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -1,3 +1,14 @@ +## 8.19.18 (2026-07-14) + +- Upgrade to Elasticsearch 8.19.18 (#2849). Note: despite the previous add-on version reading `8.14.3`, the shipped image was still Elasticsearch 7.17.9 — the Dockerfile upstream version was never bumped. This release actually delivers 8.x, making the add-on compatible with the `homeassistant-elasticsearch` integration (requires 8.14+). +- Automatic data migration: existing 7.17 data is upgraded in place by Elasticsearch on first start (one-way; can take a while on large datasets). A migration guard aborts with a clear message on unsupported paths (downgrades, or data more than one major version old). Take a Home Assistant backup before updating. +- The previous bundled config directory is archived to `/data/config.bak-` during major upgrades; re-apply custom settings to the new config if needed. +- Security (`xpack.security.enabled`) defaults to `false` to preserve the previous plain-HTTP behavior. Override by adding `ES_SETTING_XPACK_SECURITY_ENABLED` (or any `ES_SETTING_XPACK_SECURITY_*` variable) in the add-on's `env_vars` option. +- Fixed the `env_vars` add-on option, which previously had no effect: variables are now exported before Elasticsearch starts. +- Removed the `ingest-attachment` plugin install: it is a bundled module since Elasticsearch 8.0. +- Startup persistence logic rewritten as a proper init script (`/usr/local/bin/addon-init.sh`) instead of line-number-based entrypoint patching. +- Added `updater.json` so upstream 8.19.x releases are tracked automatically (pinned to the 8.19 line: 9.x cannot read indices created in 7.x). + ## 8.14.3-3 (2026-06-19) - Fix startup failing with `chroot: cannot change root directory` by allowing `capability sys_chroot` in the AppArmor profile (#2709) - Fix AppArmor profile name (was `inadyn_addon`, colliding with several other add-ons); renamed to `elasticsearch_addon` diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index 5d00ec0305..abb39edbb4 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -14,7 +14,7 @@ # 1 Build Image # ################# -ARG BUILD_UPSTREAM="7.17.9" +ARG BUILD_UPSTREAM="8.19.18" FROM elasticsearch:$BUILD_UPSTREAM ################## @@ -26,20 +26,15 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ S6_SERVICES_GRACETIME=0 +# Expose the upstream version to the add-on init script (migration guard) +ARG BUILD_UPSTREAM +ENV UPSTREAM_VERSION="$BUILD_UPSTREAM" -# Data persistence -# hadolint ignore=SC2016 -RUN sed -i '5a echo "Data location moved. Please wait while elasticsearch starts..."' /usr/local/bin/docker-entrypoint.sh \ - && sed -i '5a chown -R $(id -u):$(id -g) $HOME' /usr/local/bin/docker-entrypoint.sh \ - && sed -i '5a done' /usr/local/bin/docker-entrypoint.sh \ - && sed -i '5a ln -s $NEWHOME/$file /usr/share/elasticsearch || true' /usr/local/bin/docker-entrypoint.sh \ - && sed -i '5a rm -r /usr/share/elasticsearch/$file || true' /usr/local/bin/docker-entrypoint.sh \ - && sed -i '5a cp -rn /usr/share/elasticsearch/$file $NEWHOME || true' /usr/local/bin/docker-entrypoint.sh \ - && sed -i '5a for file in "data" "config"; do' /usr/local/bin/docker-entrypoint.sh \ - && sed -i '5a mkdir -p $NEWHOME' /usr/local/bin/docker-entrypoint.sh \ - && sed -i '5a NEWHOME="/data"' /usr/local/bin/docker-entrypoint.sh \ - # Install plugins - && /usr/share/elasticsearch/bin/elasticsearch-plugin install --batch ingest-attachment +# Data persistence & migration: source the add-on init script at the top of +# the official entrypoint (pattern-anchored; ingest-attachment is bundled +# since ES 8.0 so no plugin install is needed anymore) +RUN sed -i '/^set -e$/a . /usr/local/bin/addon-init.sh' /usr/local/bin/docker-entrypoint.sh \ + && grep -q "addon-init.sh" /usr/local/bin/docker-entrypoint.sh ################## # 3 Install apps # @@ -62,7 +57,7 @@ COPY ha_automodules.sh /ha_automodules.sh RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_automodules.sh # Manual apps -ENV PACKAGES="" +ENV PACKAGES="jq" # Automatic apps & bashio COPY ha_autoapps.sh /ha_autoapps.sh diff --git a/elasticsearch/README.md b/elasticsearch/README.md index 3379d23bed..ee9e174c12 100644 --- a/elasticsearch/README.md +++ b/elasticsearch/README.md @@ -91,6 +91,22 @@ Connect other applications to Elasticsearch using: Use the add-on `env_vars` option to pass extra environment variables (uppercase or lowercase names). See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details. +Elasticsearch settings can be set through variables named `ES_SETTING_`; for example `ES_SETTING_XPACK_SECURITY_ENABLED` maps to `xpack.security.enabled`. + +### Security + +To preserve the plain-HTTP behavior of previous versions (and compatibility with the Home Assistant Elasticsearch integration), `xpack.security.enabled` defaults to `false`. To enable Elasticsearch security, add `ES_SETTING_XPACK_SECURITY_ENABLED` with value `true` in `env_vars`. + +## Upgrading from 7.x + +The upgrade to Elasticsearch 8.x is automatic and **one-way**: + +1. Take a Home Assistant backup of the add-on before updating. +2. Update the add-on and start it. Elasticsearch upgrades the existing indices in place on first start — this can take a while on large datasets; do **not** stop the add-on during the first start. +3. The previous bundled config directory is archived to `/data/config.bak-`; re-apply any custom settings to the new config. + +Downgrading afterwards is not supported by Elasticsearch — restore the backup instead. + ## Integration with HA Component : https://community.home-assistant.io/t/elasticsearch-component-publish-home-assistant-events-to-elasticsearch/66877 diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index 6219b3cb36..13a19f4a81 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: 8.14.3-3 +version: 8.19.18 diff --git a/elasticsearch/rootfs/etc/cont-init.d/99-run.sh b/elasticsearch/rootfs/etc/cont-init.d/99-run.sh deleted file mode 100755 index a9bf588e2f..0000000000 --- a/elasticsearch/rootfs/etc/cont-init.d/99-run.sh +++ /dev/null @@ -1 +0,0 @@ -#!/bin/bash diff --git a/elasticsearch/rootfs/usr/local/bin/addon-init.sh b/elasticsearch/rootfs/usr/local/bin/addon-init.sh new file mode 100644 index 0000000000..63533c96d3 --- /dev/null +++ b/elasticsearch/rootfs/usr/local/bin/addon-init.sh @@ -0,0 +1,138 @@ +#!/bin/bash +# shellcheck shell=bash +# Sourced by /usr/local/bin/docker-entrypoint.sh (right after "set -e"), +# before Elasticsearch starts. Runs as root when the Supervisor starts the +# container; the official entrypoint then drops privileges itself. +# +# Responsibilities: +# 1. Export user env_vars from /data/options.json +# 2. Default xpack.security.enabled=false (7.x behavior) unless user overrides +# 3. Relocate data & config to /data for persistence (idempotent) +# 4. Guard major-version data migrations (7.x -> 8.x is automatic) + +echo "-----------------------------------------------------------" +echo " Add-on: Elasticsearch server" +echo " Upstream version: ${UPSTREAM_VERSION:-unknown}" +echo "-----------------------------------------------------------" + +ES_HOME="/usr/share/elasticsearch" +PERSISTENT_HOME="/data" +VERSION_MARKER="$PERSISTENT_HOME/.addon-upstream-version" +OPTIONS_JSON="/data/options.json" + +############################ +# 1 Export user env_vars # +############################ + +if [ -f "$OPTIONS_JSON" ] && command -v jq >/dev/null 2>&1; then + while IFS= read -r pair; do + name=$(jq -r '.name // empty' <<<"$pair") + value=$(jq -r '.value // empty' <<<"$pair") + if [[ $name =~ ^[A-Za-z0-9_]+$ ]]; then + echo "Setting env variable from options: $name" + export "$name"="$value" + elif [ -n "$name" ]; then + echo "WARNING: ignoring invalid env_vars name: $name" + fi + done < <(jq -c '.env_vars[]?' "$OPTIONS_JSON" 2>/dev/null || true) +fi + +################################## +# 2 Security default (7.x parity)# +################################## + +# ES 8+ enables security + TLS by default, which breaks plain-http clients +# such as the homeassistant-elasticsearch component. Keep the previous 7.x +# behavior unless the user explicitly configures xpack.security themselves +# (either as a dotted setting or via the ES_SETTING_* translation). +if ! env | grep -qiE '^(xpack\.security\.|ES_SETTING_XPACK_SECURITY_)'; then + export ES_SETTING_XPACK_SECURITY_ENABLED=false + echo "Security: xpack.security.enabled=false (default; override by setting ES_SETTING_XPACK_SECURITY_ENABLED in env_vars)" +fi + +############################ +# 3 Migration guard # +############################ + +current_version="${UPSTREAM_VERSION:-0.0.0}" +current_major="${current_version%%.*}" +data_version="" + +if [ -f "$VERSION_MARKER" ]; then + data_version="$(head -n 1 "$VERSION_MARKER" | tr -cd '0-9.')" +elif [ -d "$PERSISTENT_HOME/data" ] && [ -n "$(ls -A "$PERSISTENT_HOME/data" 2>/dev/null)" ]; then + # Existing data without a marker: only 7.17.9 was ever shipped before markers + data_version="7.17.9" +fi + +if [ -n "$data_version" ] && [[ $current_major =~ ^[0-9]+$ ]]; then + data_major="${data_version%%.*}" + if [ "$data_major" -gt "$current_major" ]; then + echo "FATAL: existing data was written by Elasticsearch $data_version but this add-on runs $current_version." + echo "Downgrading Elasticsearch data is not supported. Restore a Home Assistant snapshot taken with the newer version, or delete the add-on data to start fresh." + exit 1 + elif [ "$((current_major - data_major))" -gt 1 ]; then + echo "FATAL: existing data was written by Elasticsearch $data_version, which is more than one major version behind $current_version." + echo "Elasticsearch can only upgrade data from the previous major version. Upgrade stepwise (e.g. $data_major.x -> $((data_major + 1)).x -> ...) or delete the add-on data to start fresh." + exit 1 + elif [ "$data_major" -lt "$current_major" ]; then + echo "NOTICE: one-time automatic data migration from Elasticsearch $data_version to $current_version." + echo "NOTICE: indices are upgraded automatically on startup. This can take a while on large datasets - do NOT stop the add-on during the first start." + # The bundled config from the old major is stale (jvm.options, log4j2, + # security settings). Archive it so a fresh one is seeded below. + if [ -d "$PERSISTENT_HOME/config" ] && [ ! -L "$PERSISTENT_HOME/config" ]; then + config_backup="$PERSISTENT_HOME/config.bak-$data_version" + if [ ! -e "$config_backup" ]; then + mv "$PERSISTENT_HOME/config" "$config_backup" + echo "NOTICE: previous config archived to $config_backup. Re-apply any custom settings to the new config." + fi + fi + # The container config dir may still symlink to the archived config + if [ -L "$ES_HOME/config" ]; then + rm -f "$ES_HOME/config" + fi + fi +fi + +############################ +# 4 Data persistence # +############################ + +mkdir -p "$PERSISTENT_HOME" +for dir in "data" "config"; do + if [ ! -L "$ES_HOME/$dir" ]; then + if [ -d "$ES_HOME/$dir" ]; then + cp -rn "$ES_HOME/$dir" "$PERSISTENT_HOME" 2>/dev/null || true + rm -rf "${ES_HOME:?}/$dir" + fi + mkdir -p "$PERSISTENT_HOME/$dir" + ln -s "$PERSISTENT_HOME/$dir" "$ES_HOME/$dir" + fi +done + +# Make the persisted files usable by the elasticsearch user (uid 1000), +# which the official entrypoint drops to when started as root +if [ "$(id -u)" -eq 0 ]; then + chown -R 1000:0 "$PERSISTENT_HOME/data" "$PERSISTENT_HOME/config" 2>/dev/null || true +fi + +echo "Data location: $PERSISTENT_HOME (persistent). Please wait while elasticsearch starts..." + +############################ +# 5 Record data version # +############################ + +# Only record the running version once ES is confirmed healthy, so a failed +# upgrade attempt never masks the true on-disk data lineage +if [ "$data_version" != "$current_version" ]; then + ( + for _ in $(seq 1 180); do + if curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:9200" >/dev/null 2>&1; then + echo "$current_version" >"$VERSION_MARKER" + echo "Elasticsearch $current_version started successfully; data version recorded." + exit 0 + fi + sleep 10 + done + ) & +fi diff --git a/elasticsearch/updater.json b/elasticsearch/updater.json new file mode 100644 index 0000000000..fdaf54d409 --- /dev/null +++ b/elasticsearch/updater.json @@ -0,0 +1,10 @@ +{ + "github_fulltag": false, + "github_tagfilter": "v8.19", + "last_update": "14-07-2026", + "repository": "alexbelgium/hassio-addons", + "slug": "elasticsearch", + "source": "github", + "upstream_repo": "elastic/elasticsearch", + "upstream_version": "8.19.18" +} From 68120a84da2a519d08c3bb131237289b32595adf Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 11:18:49 +0200 Subject: [PATCH 163/538] =?UTF-8?q?fix(elasticsearch):=20address=20review?= =?UTF-8?q?=20=E2=80=94=20build=20user,=20env=5Fvars=20validation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - The 8.19.18 base image ends the build as USER 1000:0 with a root-owned, read-only (0555) entrypoint, so the sed patch and later chmod/package-install steps failed. Switch to root for the build and restore the Elasticsearch user before runtime. - Tighten the env_vars name check to require a leading letter/underscore (shell identifier rules) instead of allowing a leading digit, which made `export "$name"=...` fail and abort startup under `set -e`. Co-Authored-By: Claude Fable 5 --- elasticsearch/CHANGELOG.md | 2 ++ elasticsearch/Dockerfile | 8 ++++++++ elasticsearch/rootfs/usr/local/bin/addon-init.sh | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index a11e709ecb..9ea78d5768 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -8,6 +8,8 @@ - Removed the `ingest-attachment` plugin install: it is a bundled module since Elasticsearch 8.0. - Startup persistence logic rewritten as a proper init script (`/usr/local/bin/addon-init.sh`) instead of line-number-based entrypoint patching. - Added `updater.json` so upstream 8.19.x releases are tracked automatically (pinned to the 8.19 line: 9.x cannot read indices created in 7.x). +- The upstream 8.x image ends the build as a non-root user with a read-only entrypoint; the Dockerfile now switches to root for the build steps that patch/install into it and restores the Elasticsearch user before runtime. +- `env_vars` names starting with a digit are now rejected before export instead of crashing the entrypoint. ## 8.14.3-3 (2026-06-19) - Fix startup failing with `chroot: cannot change root directory` by allowing `capability sys_chroot` in the AppArmor profile (#2709) diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index abb39edbb4..4295ea3e0e 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -17,6 +17,11 @@ ARG BUILD_UPSTREAM="8.19.18" FROM elasticsearch:$BUILD_UPSTREAM +# The base image ends as USER 1000:0 with a root-owned, read-only (0555) +# entrypoint; switch back to root for the remaining build steps (entrypoint +# patch, package install, chmod), then restore the Elasticsearch user below +USER root + ################## # 2 Modify Image # ################## @@ -135,3 +140,6 @@ HEALTHCHECK \ --start-period=30s \ --timeout=25s \ CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 + +# Restore the Elasticsearch user for runtime, matching the base image +USER 1000:0 diff --git a/elasticsearch/rootfs/usr/local/bin/addon-init.sh b/elasticsearch/rootfs/usr/local/bin/addon-init.sh index 63533c96d3..97ee6af763 100644 --- a/elasticsearch/rootfs/usr/local/bin/addon-init.sh +++ b/elasticsearch/rootfs/usr/local/bin/addon-init.sh @@ -28,7 +28,7 @@ if [ -f "$OPTIONS_JSON" ] && command -v jq >/dev/null 2>&1; then while IFS= read -r pair; do name=$(jq -r '.name // empty' <<<"$pair") value=$(jq -r '.value // empty' <<<"$pair") - if [[ $name =~ ^[A-Za-z0-9_]+$ ]]; then + if [[ $name =~ ^[A-Za-z_][A-Za-z0-9_]*$ ]]; then echo "Setting env variable from options: $name" export "$name"="$value" elif [ -n "$name" ]; then From cc427f0c207d08378058b4bc1cef9fa3544ca32d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 11:26:43 +0200 Subject: [PATCH 164/538] fix(elasticsearch): treat HTTP 401 as healthy in the migration marker check MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit curl -f treated any 4xx as failure, including 401. Users who enable xpack.security (a supported override via ES_SETTING_XPACK_SECURITY_ENABLED) got 401 on the unauthenticated healthcheck request, so the version marker was never written and every restart re-logged the one-time migration notice. Read the HTTP status directly and accept 200 or 401. Reviewed and skipped: the cp -rn merge-into-existing-directory concern — verified empirically (both locally and against the image's Debian/GNU coreutils base) that GNU cp merges correctly into a pre-existing same-named destination without nesting; the existing test suite already exercises this exact path (legacy 7.x data preserved during migration). Co-Authored-By: Claude Sonnet 5 --- elasticsearch/rootfs/usr/local/bin/addon-init.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/elasticsearch/rootfs/usr/local/bin/addon-init.sh b/elasticsearch/rootfs/usr/local/bin/addon-init.sh index 97ee6af763..ff91909e0a 100644 --- a/elasticsearch/rootfs/usr/local/bin/addon-init.sh +++ b/elasticsearch/rootfs/usr/local/bin/addon-init.sh @@ -127,7 +127,11 @@ echo "Data location: $PERSISTENT_HOME (persistent). Please wait while elasticsea if [ "$data_version" != "$current_version" ]; then ( for _ in $(seq 1 180); do - if curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:9200" >/dev/null 2>&1; then + # Check the HTTP status directly instead of curl -f: a 401 means + # Elasticsearch is up and answering (security just requires + # auth), so it must count as healthy too, not as a failure. + status=$(curl -A "HealthCheck: Docker/1.0" -s -o /dev/null -w '%{http_code}' "http://127.0.0.1:9200" 2>/dev/null || true) + if [ "$status" = "200" ] || [ "$status" = "401" ]; then echo "$current_version" >"$VERSION_MARKER" echo "Elasticsearch $current_version started successfully; data version recorded." exit 0 From a9a6b22a627770f0ef78a29cba022c4aa5b3e6b4 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 09:43:11 +0000 Subject: [PATCH 165/538] GitHub bot: sanitize (spaces + LF endings) & chmod [nobuild] --- elasticsearch/rootfs/usr/local/bin/addon-init.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 elasticsearch/rootfs/usr/local/bin/addon-init.sh diff --git a/elasticsearch/rootfs/usr/local/bin/addon-init.sh b/elasticsearch/rootfs/usr/local/bin/addon-init.sh old mode 100644 new mode 100755 From 087d23eeafeb9d96028f22d6e6ecc136d1129319 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 12:11:26 +0200 Subject: [PATCH 166/538] fix(elasticsearch): stay root at runtime, fix upgrade permission failure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reported: on upgrade from an existing 7.17.9 install, the add-on failed to start with "mv: cannot move '/data/config' to '/data/config.bak-7.17.9': Permission denied". Root cause: a previous fix in this same release restored `USER 1000:0` at the end of the Dockerfile to match the upstream base image's own final USER directive. But the upstream 8.19 entrypoint no longer drops privileges itself (confirmed: it execs elasticsearch directly, no gosu/chroot dance), and existing installs have /data owned by root (7.17.9's default image variant runs fully as root). A non-root container can never chown or move that data. Revert to root at runtime, matching how this add-on always ran and matching its own AppArmor profile (chown, setuid, setgid, sys_chroot, mount capabilities — all meaningless for a non-root process anyway). Root stays required for the build-time entrypoint patch too, unchanged from the prior fix. Co-Authored-By: Claude Sonnet 5 --- elasticsearch/CHANGELOG.md | 3 ++- elasticsearch/Dockerfile | 8 ++++++-- elasticsearch/rootfs/usr/local/bin/addon-init.sh | 5 +++-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 9ea78d5768..72567495de 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -8,8 +8,9 @@ - Removed the `ingest-attachment` plugin install: it is a bundled module since Elasticsearch 8.0. - Startup persistence logic rewritten as a proper init script (`/usr/local/bin/addon-init.sh`) instead of line-number-based entrypoint patching. - Added `updater.json` so upstream 8.19.x releases are tracked automatically (pinned to the 8.19 line: 9.x cannot read indices created in 7.x). -- The upstream 8.x image ends the build as a non-root user with a read-only entrypoint; the Dockerfile now switches to root for the build steps that patch/install into it and restores the Elasticsearch user before runtime. +- The upstream 8.x image ends the build as a non-root user with a read-only entrypoint; the Dockerfile now switches to root for the build steps that patch/install into it. The image stays root at runtime too (unchanged from 7.17.9): the upstream entrypoint no longer drops privileges itself, and `addon-init.sh` needs to chown/move pre-existing `/data` content that may be owned by root from earlier installs. - `env_vars` names starting with a digit are now rejected before export instead of crashing the entrypoint. +- Fixed a startup failure (`mv: cannot move '/data/config' ... Permission denied`) on upgrade from an existing 7.17.9 install, caused by an earlier fix in this same release that switched the runtime user to non-root before this fix was in place. ## 8.14.3-3 (2026-06-19) - Fix startup failing with `chroot: cannot change root directory` by allowing `capability sys_chroot` in the AppArmor profile (#2709) diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index 4295ea3e0e..0f5edec8d2 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -141,5 +141,9 @@ HEALTHCHECK \ --timeout=25s \ CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 -# Restore the Elasticsearch user for runtime, matching the base image -USER 1000:0 +# Stay root at runtime: addon-init.sh must chown/mv pre-existing /data +# content that may be owned by root from earlier installs, and the upstream +# entrypoint no longer drops privileges itself, so a non-root container +# can't touch that data at all. This matches the addon's own AppArmor +# profile (chown, setuid, setgid, sys_chroot, mount capabilities), which +# assumes a root process. diff --git a/elasticsearch/rootfs/usr/local/bin/addon-init.sh b/elasticsearch/rootfs/usr/local/bin/addon-init.sh index ff91909e0a..c7fd67ec8f 100755 --- a/elasticsearch/rootfs/usr/local/bin/addon-init.sh +++ b/elasticsearch/rootfs/usr/local/bin/addon-init.sh @@ -1,8 +1,9 @@ #!/bin/bash # shellcheck shell=bash # Sourced by /usr/local/bin/docker-entrypoint.sh (right after "set -e"), -# before Elasticsearch starts. Runs as root when the Supervisor starts the -# container; the official entrypoint then drops privileges itself. +# before Elasticsearch starts. Runs as root (the image stays root at +# runtime - see Dockerfile); the official entrypoint does not drop +# privileges itself, and Elasticsearch ends up running as root too. # # Responsibilities: # 1. Export user env_vars from /data/options.json From a313475d928058158b71121ab83f47f352239c8e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 12:33:26 +0200 Subject: [PATCH 167/538] fix(elasticsearch): drop to uid 1000 before starting Elasticsearch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Elasticsearch refuses to bootstrap as root ("can not run elasticsearch as root"). The previous fix in this PR kept the container root at runtime to fix the /data permission failure, but never dropped privileges again afterward — unlike 7.17.9, whose own entrypoint used `chroot --userspec=1000:0` before launching Elasticsearch, the upstream 8.x entrypoint no longer does that. So every start, fresh or upgrade, would fail once addon-init.sh's setup finished. Fix: after addon-init.sh completes its root-only work (migration guard, data/config relocation, chown), it re-execs the entrypoint itself as uid 1000 via `chroot --userspec=1000:0 / ...` — the same mechanism 7.17.9 used, and exactly what the add-on's AppArmor profile already grants (sys_chroot, setuid, setgid). On the re-exec'd pass the script returns immediately (guarded by an exported sentinel) so none of the setup work repeats; exported env vars (env_vars, the security default) survive the exec normally. Co-Authored-By: Claude Sonnet 5 --- elasticsearch/CHANGELOG.md | 3 +- elasticsearch/Dockerfile | 13 ++++---- .../rootfs/usr/local/bin/addon-init.sh | 30 +++++++++++++++++-- 3 files changed, 36 insertions(+), 10 deletions(-) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 72567495de..1ed6b45fd4 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -8,9 +8,10 @@ - Removed the `ingest-attachment` plugin install: it is a bundled module since Elasticsearch 8.0. - Startup persistence logic rewritten as a proper init script (`/usr/local/bin/addon-init.sh`) instead of line-number-based entrypoint patching. - Added `updater.json` so upstream 8.19.x releases are tracked automatically (pinned to the 8.19 line: 9.x cannot read indices created in 7.x). -- The upstream 8.x image ends the build as a non-root user with a read-only entrypoint; the Dockerfile now switches to root for the build steps that patch/install into it. The image stays root at runtime too (unchanged from 7.17.9): the upstream entrypoint no longer drops privileges itself, and `addon-init.sh` needs to chown/move pre-existing `/data` content that may be owned by root from earlier installs. +- The upstream 8.x image ends the build as a non-root user with a read-only entrypoint; the Dockerfile now switches to root for the build steps that patch/install into it. The container also starts as root (unchanged from 7.17.9) so `addon-init.sh` can chown/move pre-existing `/data` content that may be owned by root from earlier installs; unlike 7.17.9's own entrypoint, the upstream 8.x entrypoint no longer drops privileges before starting Elasticsearch (which refuses to run as root), so `addon-init.sh` now does that itself via `chroot --userspec=1000:0` once its root-only work is done. - `env_vars` names starting with a digit are now rejected before export instead of crashing the entrypoint. - Fixed a startup failure (`mv: cannot move '/data/config' ... Permission denied`) on upgrade from an existing 7.17.9 install, caused by an earlier fix in this same release that switched the runtime user to non-root before this fix was in place. +- Fixed a second regression from that same fix: without a privilege drop before starting Elasticsearch, both fresh installs and upgrades would fail Elasticsearch's own root-check ("can not run elasticsearch as root"). ## 8.14.3-3 (2026-06-19) - Fix startup failing with `chroot: cannot change root directory` by allowing `capability sys_chroot` in the AppArmor profile (#2709) diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index 0f5edec8d2..b5e7117821 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -141,9 +141,10 @@ HEALTHCHECK \ --timeout=25s \ CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 -# Stay root at runtime: addon-init.sh must chown/mv pre-existing /data -# content that may be owned by root from earlier installs, and the upstream -# entrypoint no longer drops privileges itself, so a non-root container -# can't touch that data at all. This matches the addon's own AppArmor -# profile (chown, setuid, setgid, sys_chroot, mount capabilities), which -# assumes a root process. +# Start as root: addon-init.sh needs it to chown/move pre-existing /data +# content that may be owned by root from earlier installs. It drops to +# uid 1000 itself (via chroot --userspec) before Elasticsearch actually +# starts, since Elasticsearch refuses to run as root and the upstream 8.x +# entrypoint no longer does that drop on its own (7.x's did). This matches +# the addon's own AppArmor profile (chown, setuid, setgid, sys_chroot, +# mount capabilities). diff --git a/elasticsearch/rootfs/usr/local/bin/addon-init.sh b/elasticsearch/rootfs/usr/local/bin/addon-init.sh index c7fd67ec8f..66a06d36ff 100755 --- a/elasticsearch/rootfs/usr/local/bin/addon-init.sh +++ b/elasticsearch/rootfs/usr/local/bin/addon-init.sh @@ -1,15 +1,25 @@ #!/bin/bash # shellcheck shell=bash # Sourced by /usr/local/bin/docker-entrypoint.sh (right after "set -e"), -# before Elasticsearch starts. Runs as root (the image stays root at -# runtime - see Dockerfile); the official entrypoint does not drop -# privileges itself, and Elasticsearch ends up running as root too. +# before Elasticsearch starts. The container starts as root (see +# Dockerfile) so this script can chown/move pre-existing /data content +# that may be owned by root from earlier installs. Elasticsearch itself +# refuses to run as root, and unlike 7.x the upstream 8.x entrypoint no +# longer drops privileges on its own, so this script does it at the end +# (section 6) by re-execing the entrypoint as uid 1000. On that re-exec'd +# pass this script just returns immediately (see the guard right below). # # Responsibilities: # 1. Export user env_vars from /data/options.json # 2. Default xpack.security.enabled=false (7.x behavior) unless user overrides # 3. Relocate data & config to /data for persistence (idempotent) # 4. Guard major-version data migrations (7.x -> 8.x is automatic) +# 5. Record the running version once Elasticsearch is confirmed healthy +# 6. Drop root privileges before Elasticsearch actually starts + +if [ -n "${_ADDON_INIT_REEXEC:-}" ]; then + return 0 +fi echo "-----------------------------------------------------------" echo " Add-on: Elasticsearch server" @@ -141,3 +151,17 @@ if [ "$data_version" != "$current_version" ]; then done ) & fi + +############################ +# 6 Drop privileges # +############################ + +# Elasticsearch refuses to start as root ("can not run elasticsearch as +# root"). 7.x's own entrypoint dropped to uid 1000 via chroot before +# launching Elasticsearch; 8.x no longer does that, so do it here instead, +# then let the entrypoint continue as uid 1000 (matches the sys_chroot / +# setuid / setgid capabilities already granted in the AppArmor profile). +if [ "$(id -u)" -eq 0 ]; then + export _ADDON_INIT_REEXEC=1 + exec chroot --userspec=1000:0 / /usr/local/bin/docker-entrypoint.sh "$@" +fi From 2f4ab956dbea31381901da0264a143fbfcd5014e Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 12:43:18 +0200 Subject: [PATCH 168/538] Update config.yaml --- elasticsearch/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index 13a19f4a81..67b9c760db 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: 8.19.18 +version: "8.19.18" From 0b7b0ac1df530b218a2b2cfbf4c899aa98f29f1b Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 12:43:40 +0200 Subject: [PATCH 169/538] Update config.yaml --- elasticsearch/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index 67b9c760db..c29101beff 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: "8.19.18" +version: "8.19.18-2" From 75ce8e94e4bbfb7ae0f052b5b8be60d1b7568995 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 10:47:03 +0000 Subject: [PATCH 170/538] GitHub bot: changelog [nobuild] --- elasticsearch/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 1ed6b45fd4..48d816149e 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -1,3 +1,5 @@ +## 8.19.18-2 (14-07-2026) +- Minor bugs fixed ## 8.19.18 (2026-07-14) - Upgrade to Elasticsearch 8.19.18 (#2849). Note: despite the previous add-on version reading `8.14.3`, the shipped image was still Elasticsearch 7.17.9 — the Dockerfile upstream version was never bumped. This release actually delivers 8.x, making the add-on compatible with the `homeassistant-elasticsearch` integration (requires 8.14+). From 371c206fc031961b34072270d5fd31642f7c5aa4 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 13:06:17 +0200 Subject: [PATCH 171/538] Update Elasticsearch version to 8.19.18 --- elasticsearch/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index c29101beff..67b9c760db 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: "8.19.18-2" +version: "8.19.18" From a5916d9236dd7b873baa31b428eff6d6cc08738d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 13:06:55 +0200 Subject: [PATCH 172/538] nobuild --- elasticsearch/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index 67b9c760db..475cd3ce06 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: "8.19.18" +version: 8.19.18-2 From 02bbfa86c33b9191b992b34a8c13634ec37d637b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 13:35:03 +0200 Subject: [PATCH 173/538] fix(elasticsearch): force fresh image pull, clarify non-root failure The published 8.19.18 images are correct (verified: real ES 8.19.18, run as root, migration + privilege-drop in place). But some upgrades were left running a stale cached Elasticsearch 7.17.9 image that starts as uid 1000, producing the reported "mv: cannot move '/data/config' ... Permission denied" and "AccessDeniedException[.../data/nodes/0]". - Bump version to 8.19.18-3 to force Home Assistant / Docker to pull a fresh image tag instead of reusing the cached one. - Add an explicit root check on the first init pass (before any move or chown) so a non-root start fails with a clear, actionable message instead of the cryptic permission error, and wrap the config-archive mv with the same clear failure. The re-exec'd uid-1000 pass returns before this check, so the privilege drop still works. Co-Authored-By: Claude Opus 4.8 --- elasticsearch/CHANGELOG.md | 4 ++++ elasticsearch/config.yaml | 2 +- .../rootfs/usr/local/bin/addon-init.sh | 17 ++++++++++++++++- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 48d816149e..67063f0cb5 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -1,3 +1,7 @@ +## 8.19.18-3 (14-07-2026) +- Force a fresh image pull for users left on a stale cached image (some upgrades kept running the old Elasticsearch 7.17.9 image, failing with `mv: cannot move '/data/config' ... Permission denied` and `AccessDeniedException[/usr/share/elasticsearch/data/nodes/0]`). Fully stop and update the add-on so Home Assistant pulls this build. +- Replaced the cryptic `Permission denied` failure with a clear message when the add-on is not running as root (the state that caused the failure above). + ## 8.19.18-2 (14-07-2026) - Minor bugs fixed ## 8.19.18 (2026-07-14) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index 475cd3ce06..dba4ca188e 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: 8.19.18-2 +version: 8.19.18-3 diff --git a/elasticsearch/rootfs/usr/local/bin/addon-init.sh b/elasticsearch/rootfs/usr/local/bin/addon-init.sh index 66a06d36ff..eae765ed58 100755 --- a/elasticsearch/rootfs/usr/local/bin/addon-init.sh +++ b/elasticsearch/rootfs/usr/local/bin/addon-init.sh @@ -31,6 +31,17 @@ PERSISTENT_HOME="/data" VERSION_MARKER="$PERSISTENT_HOME/.addon-upstream-version" OPTIONS_JSON="/data/options.json" +# This first pass must be root so it can relocate and take ownership of +# pre-existing /data content written by an earlier (root) install. If it +# is not root (e.g. an old cached image that pinned USER 1000:0, or the +# container being forced to another user), the moves/chowns below fail +# with a cryptic "Permission denied"; fail loudly with the real reason. +if [ "$(id -u)" -ne 0 ]; then + echo "FATAL: the Elasticsearch add-on must start as root (currently uid $(id -u))." + echo "If you upgraded from an older version, the running image is likely stale - fully stop and update/reinstall the add-on so Home Assistant pulls the current image." + exit 1 +fi + ############################ # 1 Export user env_vars # ############################ @@ -94,7 +105,11 @@ if [ -n "$data_version" ] && [[ $current_major =~ ^[0-9]+$ ]]; then if [ -d "$PERSISTENT_HOME/config" ] && [ ! -L "$PERSISTENT_HOME/config" ]; then config_backup="$PERSISTENT_HOME/config.bak-$data_version" if [ ! -e "$config_backup" ]; then - mv "$PERSISTENT_HOME/config" "$config_backup" + if ! mv "$PERSISTENT_HOME/config" "$config_backup"; then + echo "FATAL: could not archive the old config to $config_backup." + echo "This add-on must run as root to migrate a previous install. Restore a Home Assistant backup and ensure the add-on is not forced to a non-root user." + exit 1 + fi echo "NOTICE: previous config archived to $config_backup. Re-apply any custom settings to the new config." fi fi From 688d1cbdcff8b6828b267f466aa1421a127f2433 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 13:40:23 +0200 Subject: [PATCH 174/538] Update config.yaml --- elasticsearch/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index 475cd3ce06..dba4ca188e 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: 8.19.18-2 +version: 8.19.18-3 From 9cff4f83b98aeccc3922fbacb8342c9d05ea33a9 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 11:42:46 +0000 Subject: [PATCH 175/538] GitHub bot: changelog [nobuild] --- elasticsearch/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 48d816149e..365d2213cc 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -1,3 +1,5 @@ +## 8.19.18-3 (14-07-2026) +- Minor bugs fixed ## 8.19.18-2 (14-07-2026) - Minor bugs fixed ## 8.19.18 (2026-07-14) From 2cbf2a6f08fc5471f6cff44ad5f0f0b515e6d5e9 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 14:51:06 +0200 Subject: [PATCH 176/538] Add ChatGPT Codex add-on with Headroom and RTK --- chatgpt_codex/CHANGELOG.md | 8 + chatgpt_codex/Dockerfile | 158 ++++++++++++++++++ chatgpt_codex/README.md | 111 ++++++++++++ chatgpt_codex/build.json | 6 + chatgpt_codex/config.yaml | 69 ++++++++ .../rootfs/etc/cont-init.d/20-folders.sh | 46 +++++ .../etc/cont-init.d/80-configuration.sh | 33 ++++ .../rootfs/etc/cont-init.d/82-codex-tools.sh | 55 ++++++ .../rootfs/etc/cont-init.d/83-github_cli.sh | 29 ++++ .../dependencies.d/init-services | 0 .../s6-overlay/s6-rc.d/svc-codex-terminal/run | 54 ++++++ .../s6-rc.d/svc-codex-terminal/type | 1 + .../user/contents.d/svc-codex-terminal | 0 .../rootfs/usr/local/bin/codex-direct | 4 + .../rootfs/usr/local/bin/codex-headroom | 15 ++ .../rootfs/usr/local/bin/codex-login | 4 + .../rootfs/usr/local/bin/codex-terminal-shell | 33 ++++ chatgpt_codex/updater.json | 9 + 18 files changed, 635 insertions(+) create mode 100644 chatgpt_codex/CHANGELOG.md create mode 100644 chatgpt_codex/Dockerfile create mode 100644 chatgpt_codex/README.md create mode 100644 chatgpt_codex/build.json create mode 100644 chatgpt_codex/config.yaml create mode 100644 chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh create mode 100644 chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh create mode 100644 chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh create mode 100644 chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh create mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services create mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run create mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type create mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal create mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-direct create mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-headroom create mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-login create mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell create mode 100644 chatgpt_codex/updater.json diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md new file mode 100644 index 0000000000..9bc5b05de6 --- /dev/null +++ b/chatgpt_codex/CHANGELOG.md @@ -0,0 +1,8 @@ +## 0.1.0 (14-07-2026) + +- Initial ChatGPT Codex add-on. +- Added a persistent Home Assistant ingress terminal backed by tmux. +- Made `headroom wrap codex` the default launch path. +- Added baked-in RTK with native Codex initialization and savings reporting. +- Added device-code authentication and direct Codex fallback helpers. +- Added persistent configuration, GitHub CLI integration, mount support, and safe defaults. diff --git a/chatgpt_codex/Dockerfile b/chatgpt_codex/Dockerfile new file mode 100644 index 0000000000..dec58d61f0 --- /dev/null +++ b/chatgpt_codex/Dockerfile @@ -0,0 +1,158 @@ +#============================# +# ALEXBELGIUM'S DOCKERFILE # +#============================# +#=== Home Assistant Addon ===# + +################# +# 1 Build Image # +################# + +ARG BUILD_FROM +ARG BUILD_VERSION +ARG RTK_VERSION="v0.43.0" +ARG RTK_COMMIT="5a7880d404db8364d602f2ecdc41dd790f64013f" + +FROM rust:1.91-bookworm AS rtk-builder +ARG RTK_VERSION +ARG RTK_COMMIT +RUN git clone --depth 1 --branch "${RTK_VERSION}" https://github.com/rtk-ai/rtk.git /src/rtk && \ + test "$(git -C /src/rtk rev-parse HEAD)" = "${RTK_COMMIT}" && \ + cd /src/rtk && \ + cargo build --release --locked && \ + install -D -m 0755 target/release/rtk /out/rtk && \ + /out/rtk --version + +FROM ${BUILD_FROM} + +################## +# 2 Modify Image # +################## + +ENV S6_CMD_WAIT_FOR_SERVICES=1 \ + S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ + S6_SERVICES_GRACETIME=0 \ + HEADROOM_CONTEXT_TOOL=rtk + +USER root +VOLUME [ "/sys/fs/cgroup" ] + +ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" +ARG TTYD_VERSION="1.7.7" + +################## +# 3 Install apps # +################## + +COPY rootfs/ / +RUN find /etc/cont-init.d /etc/s6-overlay /usr/local/bin \ + -type f \( -name "*.sh" -o -name "run" -o -name "finish" -o -path "/usr/local/bin/*" \) \ + -print -exec chmod +x {} \; + +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + ca-certificates \ + curl \ + git \ + gh \ + jq \ + less \ + nano \ + openssh-client \ + python3-pip \ + ripgrep \ + tmux && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# Install the official Codex static binary for the target architecture. +RUN set -eux; \ + case "$(dpkg --print-architecture)" in \ + amd64) codex_arch="x86_64" ;; \ + arm64) codex_arch="aarch64" ;; \ + *) echo "Unsupported architecture: $(dpkg --print-architecture)" >&2; exit 1 ;; \ + esac; \ + archive="/tmp/codex.tar.gz"; \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o "$archive" \ + "https://github.com/openai/codex/releases/latest/download/codex-${codex_arch}-unknown-linux-musl.tar.gz"; \ + tar -xzf "$archive" -C /tmp; \ + install -m 0755 "/tmp/codex-${codex_arch}-unknown-linux-musl" /usr/local/bin/codex; \ + rm -f "$archive" "/tmp/codex-${codex_arch}-unknown-linux-musl"; \ + codex --version + +# ttyd provides the Home Assistant ingress terminal. +RUN set -eux; \ + case "$(dpkg --print-architecture)" in \ + amd64) ttyd_arch="x86_64" ;; \ + arm64) ttyd_arch="aarch64" ;; \ + *) echo "Unsupported architecture: $(dpkg --print-architecture)" >&2; exit 1 ;; \ + esac; \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o /usr/local/bin/ttyd \ + "https://github.com/tsl0922/ttyd/releases/download/${TTYD_VERSION}/ttyd.${ttyd_arch}"; \ + chmod 0755 /usr/local/bin/ttyd; \ + ttyd --version + +COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk +RUN rtk --version && \ + pip3 install --break-system-packages --no-cache-dir "headroom-ai[proxy,code,mcp]" && \ + headroom --version + +ARG MODULES="00-banner.sh 00-global_var.sh 01-custom_script.sh 00-local_mounts.sh 00-smb_mounts.sh 90-dns_set.sh" +RUN curl -fsSL --retry 3 --retry-delay 2 \ + -o /ha_automodules.sh "${TEMPLATE_BASE_URL}/ha_automodules.sh" && \ + chmod 744 /ha_automodules.sh && \ + /ha_automodules.sh "$MODULES" && \ + rm /ha_automodules.sh + +################ +# 4 Entrypoint # +################ + +RUN curl -fsSL --retry 3 --retry-delay 2 \ + -o /ha_entrypoint.sh "${TEMPLATE_BASE_URL}/ha_entrypoint.sh" && \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o /usr/local/lib/bashio-standalone.sh "${TEMPLATE_BASE_URL}/bashio-standalone.sh" && \ + chmod 0777 /ha_entrypoint.sh && \ + chmod 0755 /usr/local/lib/bashio-standalone.sh + +ENTRYPOINT [ "/usr/bin/env" ] +CMD [ "/ha_entrypoint.sh" ] + +############ +# 5 Labels # +############ + +ARG BUILD_ARCH +ARG BUILD_DATE +ARG BUILD_DESCRIPTION +ARG BUILD_NAME +ARG BUILD_REF +ARG BUILD_REPOSITORY +ARG BUILD_VERSION +ENV BUILD_VERSION="${BUILD_VERSION}" +LABEL \ + io.hass.name="${BUILD_NAME}" \ + io.hass.description="${BUILD_DESCRIPTION}" \ + io.hass.arch="${BUILD_ARCH}" \ + io.hass.type="addon" \ + io.hass.version=${BUILD_VERSION} \ + maintainer="alexbelgium (https://github.com/alexbelgium)" \ + org.opencontainers.image.title="${BUILD_NAME}" \ + org.opencontainers.image.description="${BUILD_DESCRIPTION}" \ + org.opencontainers.image.vendor="Home Assistant Add-ons" \ + org.opencontainers.image.authors="alexbelgium (https://github.com/alexbelgium)" \ + org.opencontainers.image.licenses="MIT" \ + org.opencontainers.image.url="https://github.com/alexbelgium" \ + org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \ + org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/master/chatgpt_codex/README.md" \ + org.opencontainers.image.created=${BUILD_DATE} \ + org.opencontainers.image.revision=${BUILD_REF} \ + org.opencontainers.image.version=${BUILD_VERSION} + +################# +# 6 Healthcheck # +################# + +HEALTHCHECK --interval=30s --timeout=5s --start-period=30s \ + CMD curl -fsS http://127.0.0.1:7681/ > /dev/null || exit 1 diff --git a/chatgpt_codex/README.md b/chatgpt_codex/README.md new file mode 100644 index 0000000000..c14fe43a15 --- /dev/null +++ b/chatgpt_codex/README.md @@ -0,0 +1,111 @@ +# Home Assistant add-on: ChatGPT Codex + +![Supports aarch64 Architecture][aarch64-shield] +![Supports amd64 Architecture][amd64-shield] +![Project Maintenance][maintenance-shield] + +Run the official OpenAI Codex CLI in a persistent Home Assistant ingress terminal. The optimized path uses `headroom wrap codex`, with RTK handling command-output compression before results reach Codex. + +> The repository already contains an unrelated add-on named **Codex** for comic archives. This coding-agent add-on therefore uses the slug `chatgpt_codex`. + +## Features + +- Official Codex CLI static binary for `amd64` and `aarch64`. +- Home Assistant authenticated ingress; no unauthenticated terminal port is exposed. +- Persistent `$HOME`, Codex authentication, settings, sessions, Headroom state, and RTK statistics. +- Persistent `tmux` session that survives browser disconnects. +- `headroom wrap codex` as the default launch path. +- Baked-in RTK with native Codex initialization. +- Optional Headroom output shaping and code-aware compression. +- Direct Codex fallback for troubleshooting. +- Device-code login helper designed for a remote or headless container. +- Baked-in Git, GitHub CLI, ripgrep, jq, SSH client, and common terminal tools. +- Optional GitHub CLI authentication and Git author configuration. +- Optional extra apt and pip packages. +- Local and SMB mount support through the repository standard modules. + +## Installation and first login + +1. Install **ChatGPT Codex** from this add-on repository. +2. Keep the default `data_location` and `workspace`, or select writable mounted paths. +3. Start the add-on and open its web UI. +4. Codex starts automatically through Headroom. +5. When prompted to authenticate, follow the device-code instructions. You can also exit Codex and run: + +```shell +codex-login +``` + +Codex supports ChatGPT sign-in and API-key authentication. The device-code flow is the recommended option for this headless add-on. + +## Launch commands + +Optimized default: + +```shell +codex-headroom +``` + +This runs: + +```shell +headroom wrap codex +``` + +Headroom starts its local proxy, configures Codex routing and MCP support, and uses RTK as the CLI context tool. + +Direct troubleshooting path: + +```shell +codex-direct +``` + +Check optimization status and measured savings: + +```shell +headroom doctor +headroom perf +rtk gain +``` + +## Persistence + +The terminal attaches every browser connection to the same `tmux` session. Closing the browser detaches the client but does not stop Codex or commands running in the session. + +Persistent data is stored below `data_location`: + +- Codex state: `~/.codex` +- Headroom state and metrics: `~/.headroom` +- RTK state: its normal paths below the persistent home +- Default workspace: `~/workspace` + +## Options + +| Option | Default | Description | +| --- | --- | --- | +| `data_location` | `/data/data` | Persistent home. Must be below `/data`, `/share`, `/media`, `/config`, or `/mnt`. | +| `workspace` | `/data/data/workspace` | Initial project directory used by the persistent terminal. | +| `PUID` / `PGID` | `0` / `0` | Runtime user and group used by the LinuxServer `abc` account. | +| `TZ` | | Optional timezone, for example `Europe/Brussels`. | +| `auto_start_codex` | `true` | Start Codex automatically when the tmux session is first created. | +| `use_headroom` | `true` | Use `headroom wrap codex`; disabling this starts Codex directly. | +| `headroom_output_shaper` | `true` | Enable Headroom output-token shaping. | +| `headroom_code_aware` | `true` | Enable Headroom AST-aware code compression. | +| `github_token` | | Authenticate GitHub CLI and Git operations. | +| `github_username` / `github_email` | | Configure the global Git author. | +| `additional_apps` | | Comma-separated Debian packages installed at startup. | +| `additional_pip` | | Comma-separated Python packages installed at startup. | +| `localdisks` / `networkdisks` | | Optional local-disk and SMB mounts supported by the repository modules. | +| `env_vars` | `[]` | Additional environment variables exported in the container. | + +Configuration changes affecting the launch command apply to a newly created tmux session. To recreate it, exit Codex and run `tmux kill-session -t codex`, then reopen the add-on web UI. + +## Security + +The add-on deliberately does not enable Codex approval or sandbox bypass flags. Codex can execute commands and edit files available inside the configured workspace, so only mount locations you intend it to access. + +The terminal is exposed only through Home Assistant ingress. Do not add an unauthenticated direct port mapping. Treat `github_token`, Codex authentication data, and the persistent home as secrets and include them only in trusted backups. + +[aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg +[amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg +[maintenance-shield]: https://img.shields.io/maintenance/yes/2026.svg diff --git a/chatgpt_codex/build.json b/chatgpt_codex/build.json new file mode 100644 index 0000000000..e144598697 --- /dev/null +++ b/chatgpt_codex/build.json @@ -0,0 +1,6 @@ +{ + "build_from": { + "aarch64": "ghcr.io/linuxserver/baseimage-debian:arm64v8-bookworm", + "amd64": "ghcr.io/linuxserver/baseimage-debian:amd64-bookworm" + } +} diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml new file mode 100644 index 0000000000..186bb80702 --- /dev/null +++ b/chatgpt_codex/config.yaml @@ -0,0 +1,69 @@ +arch: + - aarch64 + - amd64 +description: "Persistent OpenAI Codex web terminal optimized with Headroom and RTK" +devices: + - /dev/fuse +environment: + HOME: /data/data + PGID: "0" + PUID: "0" + TERM: xterm-256color +image: ghcr.io/alexbelgium/chatgpt_codex-{arch} +ingress: true +ingress_port: 7681 +ingress_stream: true +init: false +map: + - addon_config:rw + - share:rw + - media:rw + - ssl +name: ChatGPT Codex +options: + env_vars: [] + DNS_server: 8.8.8.8 + data_location: /data/data + workspace: /data/data/workspace + PUID: 0 + PGID: 0 + auto_start_codex: true + use_headroom: true + headroom_output_shaper: true + headroom_code_aware: true + github_token: "" + github_username: "" + github_email: "" + additional_apps: "" + additional_pip: "" +panel_admin: false +panel_icon: mdi:code-braces-box +privileged: + - SYS_ADMIN + - DAC_READ_SEARCH +schema: + env_vars: + - name: match(^[A-Za-z0-9_]+$) + value: str? + DNS_server: str? + data_location: str? + workspace: str? + PUID: int + PGID: int + TZ: match([A-Z][a-z]*./[A-Z][a-z]*.)? + auto_start_codex: bool + use_headroom: bool + headroom_output_shaper: bool + headroom_code_aware: bool + github_token: password? + github_username: str? + github_email: str? + additional_apps: str? + additional_pip: str? + localdisks: str? + networkdisks: str? +slug: chatgpt_codex +tmpfs: true +udev: true +url: https://github.com/alexbelgium/hassio-addons +version: "0.1.0" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh b/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh new file mode 100644 index 0000000000..e9a763da7e --- /dev/null +++ b/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh @@ -0,0 +1,46 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +PUID="$(bashio::config 'PUID')" +PGID="$(bashio::config 'PGID')" +LOCATION="$(bashio::config 'data_location')" + +if [ -z "$LOCATION" ] || [ "$LOCATION" = "null" ]; then + LOCATION="/data/data" +fi + +case "$LOCATION" in + /data/* | /share/* | /media/* | /config/* | /mnt/*) + ;; + *) + bashio::log.fatal "data_location must be below /data, /share, /media, /config, or /mnt" + exit 1 + ;; +esac + +if [ -L "$LOCATION" ]; then + bashio::log.fatal "data_location must not be a symbolic link" + exit 1 +fi + +bashio::log.info "Using persistent home: $LOCATION" +install -d -m 0750 -o "$PUID" -g "$PGID" "$LOCATION" +install -d -m 0750 -o "$PUID" -g "$PGID" "$LOCATION/.codex" "$LOCATION/.headroom" +install -d -m 0755 /tmp/cache /run/s6/container_environment + +sed -i "s|^\(abc:[^:]*:[^:]*:[^:]*:[^:]*:\)[^:]*|\1$LOCATION|" /etc/passwd + +for variable in HOME CODEX_HOME HEADROOM_WORKSPACE_DIR XDG_CACHE_HOME; do + case "$variable" in + HOME) value="$LOCATION" ;; + CODEX_HOME) value="$LOCATION/.codex" ;; + HEADROOM_WORKSPACE_DIR) value="$LOCATION/.headroom" ;; + XDG_CACHE_HOME) value="/tmp/cache" ;; + esac + printf '%s' "$value" > "/run/s6/container_environment/$variable" +done + +chown -R "$PUID:$PGID" "$LOCATION/.codex" "$LOCATION/.headroom" +chown "$PUID:$PGID" "$LOCATION" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh b/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh new file mode 100644 index 0000000000..e84fe7d441 --- /dev/null +++ b/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh @@ -0,0 +1,33 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +if bashio::config.has_value 'additional_apps'; then + packages="$(bashio::config 'additional_apps')" + apt-get update -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 + for package in ${packages//,/ }; do + bashio::log.info "Installing apt package: $package" + apt-get install -y --no-install-recommends "$package" + done + apt-get clean + rm -rf /var/lib/apt/lists/* +fi + +if bashio::config.has_value 'additional_pip'; then + packages="$(bashio::config 'additional_pip')" + for package in ${packages//,/ }; do + bashio::log.info "Installing pip package: $package" + pip3 install --break-system-packages "$package" + done +fi + +if bashio::config.has_value 'TZ'; then + timezone="$(bashio::config 'TZ')" + if [ ! -e "/usr/share/zoneinfo/$timezone" ]; then + bashio::log.fatal "Invalid timezone: $timezone" + exit 1 + fi + ln -snf "/usr/share/zoneinfo/$timezone" /etc/localtime + printf '%s\n' "$timezone" > /etc/timezone +fi diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh b/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh new file mode 100644 index 0000000000..5b4cac52f8 --- /dev/null +++ b/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh @@ -0,0 +1,55 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +PUID="$(bashio::config 'PUID')" +PGID="$(bashio::config 'PGID')" + +if ! command -v codex > /dev/null 2>&1; then + bashio::log.fatal "Codex CLI is not available" + exit 1 +fi +if ! command -v headroom > /dev/null 2>&1; then + bashio::log.fatal "Headroom is not available" + exit 1 +fi +if ! command -v rtk > /dev/null 2>&1; then + bashio::log.fatal "RTK is not available" + exit 1 +fi + +bashio::log.info "Codex: $(codex --version 2>&1 | head -n 1)" +bashio::log.info "Headroom: $(headroom --version 2>&1 | head -n 1)" +bashio::log.info "RTK: $(rtk --version 2>&1 | head -n 1)" + +# Configure RTK's native Codex integration ahead of the first wrapped session. +if ! s6-setuidgid abc env \ + HOME="$HOME" \ + CODEX_HOME="${CODEX_HOME:-$HOME/.codex}" \ + PATH="$HOME/.local/bin:/usr/local/bin:/usr/bin:/bin" \ + RTK_NONINTERACTIVE=1 \ + rtk init -g --codex; then + bashio::log.warning "RTK Codex initialization failed; Headroom will retry when wrapping Codex" +fi + +for key in CODEX_AUTO_START CODEX_USE_HEADROOM HEADROOM_OUTPUT_SHAPER HEADROOM_CODE_AWARE_ENABLED; do + case "$key" in + CODEX_AUTO_START) + bashio::config.true 'auto_start_codex' && value="1" || value="0" + ;; + CODEX_USE_HEADROOM) + bashio::config.true 'use_headroom' && value="1" || value="0" + ;; + HEADROOM_OUTPUT_SHAPER) + bashio::config.true 'headroom_output_shaper' && value="1" || value="0" + ;; + HEADROOM_CODE_AWARE_ENABLED) + bashio::config.true 'headroom_code_aware' && value="1" || value="0" + ;; + esac + printf '%s' "$value" > "/run/s6/container_environment/$key" +done +printf '%s' 'rtk' > /run/s6/container_environment/HEADROOM_CONTEXT_TOOL + +chown -R "$PUID:$PGID" "$HOME/.codex" "$HOME/.headroom" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh b/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh new file mode 100644 index 0000000000..63cbe8ad64 --- /dev/null +++ b/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh @@ -0,0 +1,29 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +if bashio::config.has_value 'github_username'; then + s6-setuidgid abc git config --global user.name "$(bashio::config 'github_username')" +fi + +if bashio::config.has_value 'github_email'; then + s6-setuidgid abc git config --global user.email "$(bashio::config 'github_email')" +fi + +if bashio::config.has_value 'github_token'; then + token="$(bashio::config 'github_token')" + if s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN gh auth status --hostname github.com > /dev/null 2>&1; then + bashio::log.info "GitHub CLI is already authenticated" + else + bashio::log.info "Authenticating GitHub CLI" + printf '%s\n' "$token" | s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN \ + gh auth login --hostname github.com --with-token || \ + bashio::log.warning "GitHub CLI authentication failed" + fi + s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN \ + gh auth setup-git --hostname github.com || \ + bashio::log.warning "GitHub CLI git credential setup failed" +else + bashio::log.info "Set github_token to authenticate gh and Git operations" +fi diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services new file mode 100644 index 0000000000..e69de29bb2 diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run new file mode 100644 index 0000000000..d89e100562 --- /dev/null +++ b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run @@ -0,0 +1,54 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +port=7681 +workspace="$(bashio::config 'workspace')" + +if [ -z "$workspace" ] || [ "$workspace" = "null" ]; then + workspace="$HOME/workspace" +fi + +if [[ "$workspace" != /* ]]; then + bashio::log.fatal "workspace must be an absolute path" + exec sleep infinity +fi +if [ -L "$workspace" ]; then + bashio::log.fatal "workspace must not be a symbolic link" + exec sleep infinity +fi + +workspace="$(realpath -m -- "$workspace")" +case "$workspace" in + "$HOME" | "$HOME"/* | /share/* | /media/* | /mnt/* | /data/* | /config/*) + ;; + *) + bashio::log.fatal "workspace must be below the persistent home, /share, /media, /mnt, /data, or /config" + exec sleep infinity + ;; +esac + +if [ ! -e "$workspace" ]; then + install -d -m 0750 -o abc -g abc "$workspace" +elif [ ! -d "$workspace" ]; then + bashio::log.fatal "workspace is not a directory: $workspace" + exec sleep infinity +fi + +if ! s6-setuidgid abc test -r "$workspace" || \ + ! s6-setuidgid abc test -w "$workspace" || \ + ! s6-setuidgid abc test -x "$workspace"; then + bashio::log.fatal "workspace must be readable, writable, and searchable by user abc: $workspace" + exec sleep infinity +fi + +export CODEX_TERMINAL_WORKSPACE="$workspace" +bashio::log.info "Starting persistent Codex terminal on Home Assistant ingress port $port" +exec s6-setuidgid abc ttyd \ + -p "$port" \ + -W \ + -O \ + -t disableLeaveAlert=true \ + -t fontSize=14 \ + /usr/local/bin/codex-terminal-shell diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type new file mode 100644 index 0000000000..5883cff0cd --- /dev/null +++ b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type @@ -0,0 +1 @@ +longrun diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal new file mode 100644 index 0000000000..e69de29bb2 diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-direct b/chatgpt_codex/rootfs/usr/local/bin/codex-direct new file mode 100644 index 0000000000..a6eb886dcc --- /dev/null +++ b/chatgpt_codex/rootfs/usr/local/bin/codex-direct @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" +exec codex "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-headroom b/chatgpt_codex/rootfs/usr/local/bin/codex-headroom new file mode 100644 index 0000000000..1e86dc6102 --- /dev/null +++ b/chatgpt_codex/rootfs/usr/local/bin/codex-headroom @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +set -euo pipefail + +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" +export HEADROOM_CONTEXT_TOOL="rtk" + +if ! command -v headroom > /dev/null 2>&1; then + echo "Headroom is unavailable; launching Codex directly." >&2 + exec codex "$@" +fi + +if [ "$#" -eq 0 ]; then + exec headroom wrap codex +fi +exec headroom wrap codex -- "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-login b/chatgpt_codex/rootfs/usr/local/bin/codex-login new file mode 100644 index 0000000000..954f654a6e --- /dev/null +++ b/chatgpt_codex/rootfs/usr/local/bin/codex-login @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" +exec codex login --device-auth "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell b/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell new file mode 100644 index 0000000000..7e6d3cd972 --- /dev/null +++ b/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +set -euo pipefail + +export SHELL="/bin/bash" +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" + +workspace="${CODEX_TERMINAL_WORKSPACE:-${HOME}/workspace}" +session_name="${CODEX_TMUX_SESSION:-codex}" + +if [ ! -d "$workspace" ]; then + echo "Codex workspace does not exist: $workspace" >&2 + exit 1 +fi + +new_session=0 +if ! tmux has-session -t "$session_name" 2> /dev/null; then + tmux new-session -d -s "$session_name" -c "$workspace" /bin/bash -l + new_session=1 +fi + +if [ "$new_session" -eq 1 ]; then + tmux send-keys -t "$session_name" \ + "printf '\\nChatGPT Codex add-on\\n login: codex-login\\n optimized: codex-headroom\\n direct: codex-direct\\n savings: rtk gain && headroom perf\\n\\n'" C-m + if [ "${CODEX_AUTO_START:-1}" = "1" ]; then + if [ "${CODEX_USE_HEADROOM:-1}" = "1" ]; then + tmux send-keys -t "$session_name" "codex-headroom" C-m + else + tmux send-keys -t "$session_name" "codex-direct" C-m + fi + fi +fi + +exec tmux attach-session -t "$session_name" diff --git a/chatgpt_codex/updater.json b/chatgpt_codex/updater.json new file mode 100644 index 0000000000..245fd3e67a --- /dev/null +++ b/chatgpt_codex/updater.json @@ -0,0 +1,9 @@ +{ + "github_beta": false, + "last_update": "2026-07-14", + "repository": "alexbelgium/hassio-addons", + "slug": "chatgpt_codex", + "source": "github", + "upstream_repo": "openai/codex", + "upstream_version": "0.1.0" +} From df0dacf6b99a4fad1803cbc9cd23f943aed3a42e Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 14:53:30 +0200 Subject: [PATCH 177/538] Restrict Codex ingress to administrators --- chatgpt_codex/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml index 186bb80702..874b41e359 100644 --- a/chatgpt_codex/config.yaml +++ b/chatgpt_codex/config.yaml @@ -36,7 +36,7 @@ options: github_email: "" additional_apps: "" additional_pip: "" -panel_admin: false +panel_admin: true panel_icon: mdi:code-braces-box privileged: - SYS_ADMIN From 12384ee606bf02c272e215723cbd4c7305445fa5 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 14:55:02 +0200 Subject: [PATCH 178/538] Follow custom data location for Codex workspace --- chatgpt_codex/README.md | 6 +++--- chatgpt_codex/config.yaml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/chatgpt_codex/README.md b/chatgpt_codex/README.md index c14fe43a15..f55a170d85 100644 --- a/chatgpt_codex/README.md +++ b/chatgpt_codex/README.md @@ -11,7 +11,7 @@ Run the official OpenAI Codex CLI in a persistent Home Assistant ingress termina ## Features - Official Codex CLI static binary for `amd64` and `aarch64`. -- Home Assistant authenticated ingress; no unauthenticated terminal port is exposed. +- Home Assistant authenticated, administrator-only ingress; no unauthenticated terminal port is exposed. - Persistent `$HOME`, Codex authentication, settings, sessions, Headroom state, and RTK statistics. - Persistent `tmux` session that survives browser disconnects. - `headroom wrap codex` as the default launch path. @@ -84,7 +84,7 @@ Persistent data is stored below `data_location`: | Option | Default | Description | | --- | --- | --- | | `data_location` | `/data/data` | Persistent home. Must be below `/data`, `/share`, `/media`, `/config`, or `/mnt`. | -| `workspace` | `/data/data/workspace` | Initial project directory used by the persistent terminal. | +| `workspace` | `/workspace` | Initial project directory. Leave empty to follow `data_location`. | | `PUID` / `PGID` | `0` / `0` | Runtime user and group used by the LinuxServer `abc` account. | | `TZ` | | Optional timezone, for example `Europe/Brussels`. | | `auto_start_codex` | `true` | Start Codex automatically when the tmux session is first created. | @@ -104,7 +104,7 @@ Configuration changes affecting the launch command apply to a newly created tmux The add-on deliberately does not enable Codex approval or sandbox bypass flags. Codex can execute commands and edit files available inside the configured workspace, so only mount locations you intend it to access. -The terminal is exposed only through Home Assistant ingress. Do not add an unauthenticated direct port mapping. Treat `github_token`, Codex authentication data, and the persistent home as secrets and include them only in trusted backups. +The terminal is exposed only through Home Assistant administrator-only ingress. Do not add an unauthenticated direct port mapping. Treat `github_token`, Codex authentication data, and the persistent home as secrets and include them only in trusted backups. [aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg [amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml index 874b41e359..748c842a50 100644 --- a/chatgpt_codex/config.yaml +++ b/chatgpt_codex/config.yaml @@ -24,7 +24,7 @@ options: env_vars: [] DNS_server: 8.8.8.8 data_location: /data/data - workspace: /data/data/workspace + workspace: "" PUID: 0 PGID: 0 auto_start_codex: true From 78f5289518ba21a8b62808e86efcf606e7a5ed83 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 14:59:11 +0200 Subject: [PATCH 179/538] Fix Codex add-on lint metadata --- chatgpt_codex/CHANGELOG.md | 3 ++- chatgpt_codex/config.yaml | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md index 9bc5b05de6..3ff9e8f518 100644 --- a/chatgpt_codex/CHANGELOG.md +++ b/chatgpt_codex/CHANGELOG.md @@ -1,8 +1,9 @@ ## 0.1.0 (14-07-2026) - Initial ChatGPT Codex add-on. -- Added a persistent Home Assistant ingress terminal backed by tmux. +- Added a persistent, administrator-only Home Assistant ingress terminal backed by tmux. - Made `headroom wrap codex` the default launch path. - Added baked-in RTK with native Codex initialization and savings reporting. - Added device-code authentication and direct Codex fallback helpers. - Added persistent configuration, GitHub CLI integration, mount support, and safe defaults. +- Made the default workspace follow a custom `data_location`. diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml index 748c842a50..3a3be1bf19 100644 --- a/chatgpt_codex/config.yaml +++ b/chatgpt_codex/config.yaml @@ -36,7 +36,6 @@ options: github_email: "" additional_apps: "" additional_pip: "" -panel_admin: true panel_icon: mdi:code-braces-box privileged: - SYS_ADMIN From 652be8b13cc641d74343ebaf4cd4c17122116006 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 15:03:34 +0200 Subject: [PATCH 180/538] Pin Codex and Headroom releases --- chatgpt_codex/CHANGELOG.md | 6 +++--- chatgpt_codex/Dockerfile | 10 +++++++--- chatgpt_codex/config.yaml | 2 +- chatgpt_codex/updater.json | 5 ++++- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md index 3ff9e8f518..af2bb098ca 100644 --- a/chatgpt_codex/CHANGELOG.md +++ b/chatgpt_codex/CHANGELOG.md @@ -1,9 +1,9 @@ -## 0.1.0 (14-07-2026) +## 0.144.3 (14-07-2026) -- Initial ChatGPT Codex add-on. +- Initial ChatGPT Codex add-on based on Codex `0.144.3`. - Added a persistent, administrator-only Home Assistant ingress terminal backed by tmux. - Made `headroom wrap codex` the default launch path. -- Added baked-in RTK with native Codex initialization and savings reporting. +- Pinned Headroom `0.31.0` and baked-in RTK `0.43.0` with native Codex initialization and savings reporting. - Added device-code authentication and direct Codex fallback helpers. - Added persistent configuration, GitHub CLI integration, mount support, and safe defaults. - Made the default workspace follow a custom `data_location`. diff --git a/chatgpt_codex/Dockerfile b/chatgpt_codex/Dockerfile index dec58d61f0..db7df5ecae 100644 --- a/chatgpt_codex/Dockerfile +++ b/chatgpt_codex/Dockerfile @@ -9,6 +9,8 @@ ARG BUILD_FROM ARG BUILD_VERSION +ARG BUILD_UPSTREAM="0.144.3" +ARG HEADROOM_VERSION="0.31.0" ARG RTK_VERSION="v0.43.0" ARG RTK_COMMIT="5a7880d404db8364d602f2ecdc41dd790f64013f" @@ -38,6 +40,8 @@ VOLUME [ "/sys/fs/cgroup" ] ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" ARG TTYD_VERSION="1.7.7" +ARG BUILD_UPSTREAM +ARG HEADROOM_VERSION ################## # 3 Install apps # @@ -64,7 +68,7 @@ RUN apt-get update && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* -# Install the official Codex static binary for the target architecture. +# Install the pinned official Codex static binary for the target architecture. RUN set -eux; \ case "$(dpkg --print-architecture)" in \ amd64) codex_arch="x86_64" ;; \ @@ -74,7 +78,7 @@ RUN set -eux; \ archive="/tmp/codex.tar.gz"; \ curl -fsSL --retry 3 --retry-delay 2 \ -o "$archive" \ - "https://github.com/openai/codex/releases/latest/download/codex-${codex_arch}-unknown-linux-musl.tar.gz"; \ + "https://github.com/openai/codex/releases/download/rust-v${BUILD_UPSTREAM}/codex-${codex_arch}-unknown-linux-musl.tar.gz"; \ tar -xzf "$archive" -C /tmp; \ install -m 0755 "/tmp/codex-${codex_arch}-unknown-linux-musl" /usr/local/bin/codex; \ rm -f "$archive" "/tmp/codex-${codex_arch}-unknown-linux-musl"; \ @@ -95,7 +99,7 @@ RUN set -eux; \ COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk RUN rtk --version && \ - pip3 install --break-system-packages --no-cache-dir "headroom-ai[proxy,code,mcp]" && \ + pip3 install --break-system-packages --no-cache-dir "headroom-ai[proxy,code,mcp]==${HEADROOM_VERSION}" && \ headroom --version ARG MODULES="00-banner.sh 00-global_var.sh 01-custom_script.sh 00-local_mounts.sh 00-smb_mounts.sh 90-dns_set.sh" diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml index 3a3be1bf19..1e25674567 100644 --- a/chatgpt_codex/config.yaml +++ b/chatgpt_codex/config.yaml @@ -65,4 +65,4 @@ slug: chatgpt_codex tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "0.1.0" +version: "0.144.3" diff --git a/chatgpt_codex/updater.json b/chatgpt_codex/updater.json index 245fd3e67a..ad08b16d81 100644 --- a/chatgpt_codex/updater.json +++ b/chatgpt_codex/updater.json @@ -1,9 +1,12 @@ { "github_beta": false, + "github_fulltag": false, + "github_havingasset": true, + "github_tagfilter": "rust-v", "last_update": "2026-07-14", "repository": "alexbelgium/hassio-addons", "slug": "chatgpt_codex", "source": "github", "upstream_repo": "openai/codex", - "upstream_version": "0.1.0" + "upstream_version": "0.144.3" } From 34e8a75bf8ea96547fb87d70be892839e29bf8e0 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 15:58:55 +0200 Subject: [PATCH 181/538] Install latest tool releases at build time --- chatgpt_codex/Dockerfile | 35 +++++++++++++++-------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/chatgpt_codex/Dockerfile b/chatgpt_codex/Dockerfile index db7df5ecae..7288a6ae0b 100644 --- a/chatgpt_codex/Dockerfile +++ b/chatgpt_codex/Dockerfile @@ -9,19 +9,17 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="0.144.3" -ARG HEADROOM_VERSION="0.31.0" -ARG RTK_VERSION="v0.43.0" -ARG RTK_COMMIT="5a7880d404db8364d602f2ecdc41dd790f64013f" -FROM rust:1.91-bookworm AS rtk-builder -ARG RTK_VERSION -ARG RTK_COMMIT -RUN git clone --depth 1 --branch "${RTK_VERSION}" https://github.com/rtk-ai/rtk.git /src/rtk && \ - test "$(git -C /src/rtk rev-parse HEAD)" = "${RTK_COMMIT}" && \ - cd /src/rtk && \ - cargo build --release --locked && \ - install -D -m 0755 target/release/rtk /out/rtk && \ +FROM rust:bookworm AS rtk-builder +RUN set -eux; \ + rtk_version="$(git ls-remote --tags --refs --sort=-v:refname \ + https://github.com/rtk-ai/rtk.git 'refs/tags/v*' \ + | awk -F/ '$3 ~ /^v[0-9]+\.[0-9]+\.[0-9]+$/ { print $3; exit }')"; \ + test -n "$rtk_version"; \ + git clone --depth 1 --branch "$rtk_version" https://github.com/rtk-ai/rtk.git /src/rtk; \ + cd /src/rtk; \ + cargo build --release --locked; \ + install -D -m 0755 target/release/rtk /out/rtk; \ /out/rtk --version FROM ${BUILD_FROM} @@ -39,9 +37,6 @@ USER root VOLUME [ "/sys/fs/cgroup" ] ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" -ARG TTYD_VERSION="1.7.7" -ARG BUILD_UPSTREAM -ARG HEADROOM_VERSION ################## # 3 Install apps # @@ -68,7 +63,7 @@ RUN apt-get update && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* -# Install the pinned official Codex static binary for the target architecture. +# Install the latest stable official Codex static binary for the target architecture. RUN set -eux; \ case "$(dpkg --print-architecture)" in \ amd64) codex_arch="x86_64" ;; \ @@ -78,13 +73,13 @@ RUN set -eux; \ archive="/tmp/codex.tar.gz"; \ curl -fsSL --retry 3 --retry-delay 2 \ -o "$archive" \ - "https://github.com/openai/codex/releases/download/rust-v${BUILD_UPSTREAM}/codex-${codex_arch}-unknown-linux-musl.tar.gz"; \ + "https://github.com/openai/codex/releases/latest/download/codex-${codex_arch}-unknown-linux-musl.tar.gz"; \ tar -xzf "$archive" -C /tmp; \ install -m 0755 "/tmp/codex-${codex_arch}-unknown-linux-musl" /usr/local/bin/codex; \ rm -f "$archive" "/tmp/codex-${codex_arch}-unknown-linux-musl"; \ codex --version -# ttyd provides the Home Assistant ingress terminal. +# Install the latest stable ttyd binary for the Home Assistant ingress terminal. RUN set -eux; \ case "$(dpkg --print-architecture)" in \ amd64) ttyd_arch="x86_64" ;; \ @@ -93,13 +88,13 @@ RUN set -eux; \ esac; \ curl -fsSL --retry 3 --retry-delay 2 \ -o /usr/local/bin/ttyd \ - "https://github.com/tsl0922/ttyd/releases/download/${TTYD_VERSION}/ttyd.${ttyd_arch}"; \ + "https://github.com/tsl0922/ttyd/releases/latest/download/ttyd.${ttyd_arch}"; \ chmod 0755 /usr/local/bin/ttyd; \ ttyd --version COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk RUN rtk --version && \ - pip3 install --break-system-packages --no-cache-dir "headroom-ai[proxy,code,mcp]==${HEADROOM_VERSION}" && \ + pip3 install --upgrade --break-system-packages --no-cache-dir "headroom-ai[proxy,code,mcp]" && \ headroom --version ARG MODULES="00-banner.sh 00-global_var.sh 01-custom_script.sh 00-local_mounts.sh 00-smb_mounts.sh 90-dns_set.sh" From 7de4789196ca7f741957e23b51c8eef4926381f8 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 15:59:05 +0200 Subject: [PATCH 182/538] Document unpinned tool installation --- chatgpt_codex/CHANGELOG.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md index af2bb098ca..976fc0e07a 100644 --- a/chatgpt_codex/CHANGELOG.md +++ b/chatgpt_codex/CHANGELOG.md @@ -1,9 +1,10 @@ ## 0.144.3 (14-07-2026) -- Initial ChatGPT Codex add-on based on Codex `0.144.3`. +- Initial ChatGPT Codex add-on. - Added a persistent, administrator-only Home Assistant ingress terminal backed by tmux. - Made `headroom wrap codex` the default launch path. -- Pinned Headroom `0.31.0` and baked-in RTK `0.43.0` with native Codex initialization and savings reporting. +- Configured Docker builds to install the latest stable Codex, Headroom, RTK, ttyd, and Rust toolchain versions without hard-coded tool version pins. +- Added RTK native Codex initialization and savings reporting. - Added device-code authentication and direct Codex fallback helpers. - Added persistent configuration, GitHub CLI integration, mount support, and safe defaults. - Made the default workspace follow a custom `data_location`. From bf97abdb4fde8e9d2fc28537002b45eceff64be5 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 16:00:44 +0200 Subject: [PATCH 183/538] Document latest-version build policy --- chatgpt_codex/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/chatgpt_codex/README.md b/chatgpt_codex/README.md index f55a170d85..4b11570b7f 100644 --- a/chatgpt_codex/README.md +++ b/chatgpt_codex/README.md @@ -10,6 +10,7 @@ Run the official OpenAI Codex CLI in a persistent Home Assistant ingress termina ## Features +- Latest stable Codex, Headroom, RTK, ttyd, and Rust toolchain versions are resolved during every Docker build; tool versions are not pinned in the Dockerfile. - Official Codex CLI static binary for `amd64` and `aarch64`. - Home Assistant authenticated, administrator-only ingress; no unauthenticated terminal port is exposed. - Persistent `$HOME`, Codex authentication, settings, sessions, Headroom state, and RTK statistics. From 2b6c9eace7532f6cd67c36b04cef21ce4b6d0258 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 16:04:13 +0200 Subject: [PATCH 186/538] Release latest-version build policy --- chatgpt_codex/CHANGELOG.md | 2 +- chatgpt_codex/config.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md index 976fc0e07a..74222091ca 100644 --- a/chatgpt_codex/CHANGELOG.md +++ b/chatgpt_codex/CHANGELOG.md @@ -1,4 +1,4 @@ -## 0.144.3 (14-07-2026) +## 0.144.3-2 (14-07-2026) - Initial ChatGPT Codex add-on. - Added a persistent, administrator-only Home Assistant ingress terminal backed by tmux. diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml index 1e25674567..306ca11475 100644 --- a/chatgpt_codex/config.yaml +++ b/chatgpt_codex/config.yaml @@ -65,4 +65,4 @@ slug: chatgpt_codex tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "0.144.3" +version: "0.144.3-2" From 2951b04f578b6f625aca03d160759632699edf40 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 16:18:58 +0200 Subject: [PATCH 187/538] Update config.yaml --- chatgpt_codex/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml index 306ca11475..773c9c6381 100644 --- a/chatgpt_codex/config.yaml +++ b/chatgpt_codex/config.yaml @@ -65,4 +65,4 @@ slug: chatgpt_codex tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "0.144.3-2" +version: "0.144.3-3" From 6814088369bd1c417330df2b73da7a4f055f44d1 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 14:19:56 +0000 Subject: [PATCH 188/538] GitHub bot: sanitize (spaces + LF endings) & chmod [nobuild] --- chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh | 0 chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh | 0 chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh | 0 chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh | 0 4 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh mode change 100644 => 100755 chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh mode change 100644 => 100755 chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh mode change 100644 => 100755 chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh b/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh old mode 100644 new mode 100755 diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh b/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh old mode 100644 new mode 100755 diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh b/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh old mode 100644 new mode 100755 diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh b/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh old mode 100644 new mode 100755 From 50150a47750a507e613edf1b53d60f19afa82844 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 14:26:50 +0000 Subject: [PATCH 189/538] GitHub bot: changelog [nobuild] --- chatgpt_codex/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md index 74222091ca..266f633c4d 100644 --- a/chatgpt_codex/CHANGELOG.md +++ b/chatgpt_codex/CHANGELOG.md @@ -1,3 +1,5 @@ +## 0.144.3-3 (14-07-2026) +- Minor bugs fixed ## 0.144.3-2 (14-07-2026) - Initial ChatGPT Codex add-on. From b56be1f57da822c391018e48ee987bde0fd52a4e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 16:27:52 +0200 Subject: [PATCH 190/538] feat(claude_desktop): desktop-only architecture, fix dashboard + dispatch Remove standalone web terminal (ttyd/tmux service, port 7681, terminal_* options, claude-direct/claude-headroom wrappers). Claude Code stays and powers Desktop cowork/dispatch sessions. Fix Headroom dashboard: proxy bound 127.0.0.1 only, mapped port 8787 refused external connections; bind 0.0.0.0. Fix dispatch/sign-in persistence: gnome-keyring package was never installed, so the autostart keyring bootstrap no-oped and Electron safeStorage was unavailable (allowlist cache + auth grants lost). Add tokensave MCP (pinned 7.2.0, source-built like RTK), real HA MCP bridge via mcp-proxy (enable_ha_mcp + ha_mcp_url/ha_mcp_token), uv for additional_pip. Register managed MCP servers in Desktop and Claude Code configs without clobbering user entries. Drop orphan options ha_smart_context/dangerously_skip_permissions. Co-Authored-By: Claude Opus 4.8 --- claude_desktop/CHANGELOG.md | 11 ++ claude_desktop/Dockerfile | 45 +++-- claude_desktop/README.md | 170 +++++++----------- claude_desktop/SIGN_IN.md | 10 +- claude_desktop/config.yaml | 26 +-- claude_desktop/rootfs/defaults/autostart | 3 +- .../etc/cont-init.d/80-configuration.sh | 7 +- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 144 +++++++++++---- .../dependencies.d/init-services | 0 .../s6-rc.d/svc-claude-terminal/run | 101 ----------- .../s6-rc.d/svc-claude-terminal/type | 1 - .../etc/s6-overlay/s6-rc.d/svc-headroom/run | 4 +- .../user/contents.d/svc-claude-terminal | 0 .../rootfs/usr/local/bin/claude-direct | 4 - .../rootfs/usr/local/bin/claude-headroom | 21 --- .../usr/local/bin/claude-terminal-shell | 24 --- 16 files changed, 223 insertions(+), 348 deletions(-) delete mode 100644 claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/dependencies.d/init-services delete mode 100644 claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run delete mode 100644 claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type delete mode 100644 claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-claude-terminal delete mode 100644 claude_desktop/rootfs/usr/local/bin/claude-direct delete mode 100644 claude_desktop/rootfs/usr/local/bin/claude-headroom delete mode 100644 claude_desktop/rootfs/usr/local/bin/claude-terminal-shell diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index eea101b70c..bac60d1043 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,14 @@ +## 1.17 (14-07-2026) + +- **Breaking:** remove the standalone Claude Code web terminal (ttyd/tmux service, port `7681`, and the `enable_terminal`, `terminal_username`, `terminal_password`, `terminal_workspace` options). The add-on is now built purely around Claude Desktop; Claude Code remains installed and powers Desktop cowork/dispatch sessions with the RTK hook, Caveman, and MCP servers intact. If the add-on refuses to start after the update, open its Configuration tab and re-save to drop the removed options. +- Remove the `claude-direct` and `claude-headroom` terminal wrapper scripts and the unused `ha_smart_context` and `dangerously_skip_permissions` options. +- Fix the Headroom dashboard being unreachable at `http://:8787/dashboard`: the supervised proxy only listened on `127.0.0.1`; it now binds `0.0.0.0` so the mapped port works. +- Fix dispatch/remote sessions and sign-in persistence: install the missing `gnome-keyring` package. The existing keyring bootstrap silently no-oped without it, leaving Electron `safeStorage` unavailable ("cannot store allowlist cache"), so auth tokens and dispatch permission grants were lost on restart. +- Add the tokensave code-intelligence MCP server (pinned 7.2.0, built from source like RTK), registered for both Claude Desktop and Claude Code; disable with `install_tokensave: false`. +- Implement the Home Assistant MCP bridge for real: `enable_ha_mcp` plus new `ha_mcp_url`/`ha_mcp_token` options register Home Assistant's MCP Server integration in Claude through `mcp-proxy`. +- Register add-on-managed MCP servers in Claude Code's `~/.claude.json` as well as Claude Desktop's config, without clobbering user-customized entries. +- Install `uv` and use it for the `additional_pip` option for much faster package installs. + ## 1.16 (14-07-2026) - Minor bugs fixed ## 1.15 (13-07-2026) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 722a7b9e89..1157d6d62e 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -11,6 +11,7 @@ ARG BUILD_FROM ARG BUILD_VERSION ARG RTK_VERSION="v0.43.0" ARG RTK_COMMIT="5a7880d404db8364d602f2ecdc41dd790f64013f" +ARG TOKENSAVE_VERSION="7.2.0" # The upstream aarch64 release is cross-built on ubuntu-latest and requires # GLIBC 2.39. Build the pinned source on Bookworm instead so it is compatible @@ -25,6 +26,13 @@ RUN git clone --depth 1 --branch "${RTK_VERSION}" https://github.com/rtk-ai/rtk. install -D -m 0755 target/release/rtk /out/rtk && \ /out/rtk --version +# tokensave ships no Bookworm-compatible prebuilt binary either; build the pinned +# crates.io release from source so GLIBC matches the add-on runtime. +FROM rust:1.91-bookworm AS tokensave-builder +ARG TOKENSAVE_VERSION +RUN cargo install tokensave --version "${TOKENSAVE_VERSION}" --locked --root /out && \ + /out/bin/tokensave --version + FROM ${BUILD_FROM} ################## @@ -63,15 +71,15 @@ RUN curl -fsSL --retry 3 --retry-delay 2 \ # Add rootfs COPY rootfs/ / -RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; && \ - chmod +x /usr/local/bin/claude-direct /usr/local/bin/claude-headroom /usr/local/bin/claude-terminal-shell +RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; # Uses /bin for compatibility purposes # hadolint ignore=DL4005 RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \ if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/bash /bin/bash; fi -# Install Claude Desktop, Claude Code, browser-terminal tooling, and Python tooling +# Install Claude Desktop, Claude Code, and Python tooling. gnome-keyring provides the +# Secret Service backend Electron safeStorage needs to persist sign-in and dispatch grants. RUN install -d -m 0755 /etc/apt/keyrings && \ curl -fsSLo /usr/share/keyrings/claude-desktop-archive-keyring.asc https://downloads.claude.ai/claude-desktop/key.asc && \ curl -fsSLo /etc/apt/keyrings/claude-code.asc https://downloads.claude.ai/keys/claude-code.asc && \ @@ -82,38 +90,27 @@ RUN install -d -m 0755 /etc/apt/keyrings && \ claude-desktop \ claude-code \ python3-pip \ + gnome-keyring \ libsecret-1-0 \ dbus-x11 \ git \ gh \ - ripgrep \ - tmux && \ + ripgrep && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* -# ttyd is not packaged in Debian bookworm. Install the pinned upstream static binary. -ARG TTYD_VERSION="1.7.7" -RUN set -eux; \ - case "$(dpkg --print-architecture)" in \ - amd64) ttyd_arch="x86_64" ;; \ - arm64) ttyd_arch="aarch64" ;; \ - *) echo "Unsupported architecture for ttyd: $(dpkg --print-architecture)" >&2; exit 1 ;; \ - esac; \ - curl -fsSL --retry 3 --retry-delay 2 \ - -o /usr/local/bin/ttyd \ - "https://github.com/tsl0922/ttyd/releases/download/${TTYD_VERSION}/ttyd.${ttyd_arch}"; \ - chmod 0755 /usr/local/bin/ttyd; \ - /usr/local/bin/ttyd --version - -# Copy the pinned Bookworm-built RTK binary and execute it in the final image. -# This makes an ABI mismatch fail the image build instead of surfacing at runtime. +# Copy the pinned Bookworm-built RTK and tokensave binaries and execute them in the final +# image. This makes an ABI mismatch fail the image build instead of surfacing at runtime. COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk -RUN /usr/local/bin/rtk --version +COPY --from=tokensave-builder /out/bin/tokensave /usr/local/bin/tokensave +RUN /usr/local/bin/rtk --version && /usr/local/bin/tokensave --version -# Install only the Headroom proxy, code-compression, and MCP features used by this add-on. +# Install only the Headroom proxy, code-compression, and MCP features used by this add-on, +# plus mcp-proxy (stdio->SSE bridge for the Home Assistant MCP server) and uv (fast +# installer used for the additional_pip option). RUN apt-get update && \ apt-get install -y --no-install-recommends nodejs && \ - pip3 install --break-system-packages "headroom-ai[proxy,code,mcp]" && \ + pip3 install --break-system-packages "headroom-ai[proxy,code,mcp]" mcp-proxy uv && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* /root/.cache diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 69d75b8ebe..bcb3064c8b 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -4,8 +4,9 @@ ![Supports amd64 Architecture][amd64-shield] ![Project Maintenance][maintenance-shield] -Run Claude Desktop and an optional persistent Claude Code web terminal in one -LinuxServer.io Selkies add-on. +Run Claude Desktop in a LinuxServer.io Selkies add-on, with Headroom MCP +context compression, RTK Bash-output acceleration, and code-intelligence +tooling wired in by default. ## Installation @@ -20,102 +21,38 @@ currently does not include Computer Use or dictation. ## Architecture -Claude Desktop and Claude Code run as separate clients inside the same add-on. -They share the configured persistent home directory, Git credentials, -repositories, Claude Code configuration, Headroom storage, and RTK -configuration, but they do not share or hand off a conversation. +Everything is built around the Claude Desktop app. Claude Code is installed in +the same image but is not exposed as a standalone service: Claude Desktop's +cowork and dispatch sessions run it internally, and they pick up the shared +Claude Code configuration (`~/.claude`), hooks, and MCP servers automatically. - **Claude Desktop** uses Headroom through its MCP tools. -- **Claude Code** uses Headroom's supported `headroom wrap claude` integration. -- **RTK** filters Claude Code Bash output through its `PreToolUse` hook. -- **tmux** keeps the terminal session running when the browser disconnects. +- **Claude Code sessions inside Desktop** get the same MCP servers via + `~/.claude.json` and RTK's `PreToolUse` Bash hook via + `~/.claude/settings.json`. +- **gnome-keyring** provides the Secret Service backend Electron needs to + persist sign-in and dispatch permission grants across restarts. ## Features -- Claude Desktop in single-app Selkies mode. -- Home Assistant ingress support for Claude Desktop. -- Official Claude Code stable package installed in the same image. -- Optional authenticated `ttyd` web terminal on port `7681`. -- Persistent `tmux` session shared by reconnecting terminal clients. +- Claude Desktop in single-app Selkies mode with Home Assistant ingress. +- Official Claude Code stable package powering Desktop cowork/dispatch + sessions. - Persistent `$HOME` at the configured `data_location` (default `/data/data`), preserving Desktop and Claude Code state across restarts. +- Persistent sign-in through a bundled, auto-unlocked gnome-keyring. - Optional runtime Claude Desktop updates from Anthropic's apt repository. -- Optional extra apt and pip package installation. -- Baked-in `git`, GitHub CLI (`gh`), `ripgrep`, and terminal tooling. +- Optional extra apt and pip package installation (pip installs use `uv` for + speed). +- Baked-in `git`, GitHub CLI (`gh`), and `ripgrep`. - Custom script support through the repository standard `claude_desktop.sh`. -- Optional bundled Claude Code optimization tools: Headroom, RTK, and Caveman. -- Headroom dashboard exposed on mapped port `8787` when enabled. +- Bundled optimization tools: Headroom (MCP + local proxy), RTK, tokensave, + and Caveman — each individually switchable. +- Optional Home Assistant MCP bridge so Claude can query and control Home + Assistant. +- Headroom dashboard exposed on mapped port `8787`. - Low-power defaults for GPU mapping, Selkies frame rate, and volatile caches. -## Claude Code terminal setup - -The terminal service is enabled in the add-on configuration but remains -unavailable until authentication is configured. Port `7681` is not mapped by -default. - -1. Set a unique `terminal_password`. The existing `PASSWORD` option is accepted - only as a compatibility fallback. -2. Optionally set `terminal_username` and `terminal_workspace`. -3. Map container port `7681` to a host port in the add-on **Network** section. -4. Restart the add-on. -5. Reach `http://:7681` only through an encrypted VPN or an - HTTPS reverse proxy, then sign in with the configured terminal credentials. - -The terminal opens in a persistent tmux session. Closing the browser detaches -from tmux rather than terminating commands that are already running. - -Start the optimized Claude Code path with: - -```shell -claude-headroom -``` - -This reuses the supervised Headroom proxy on `127.0.0.1:8787` and launches -Claude Code with the required routing. Headroom is told not to install RTK -because the add-on already maintains the RTK hook in -`~/.claude/settings.json`. - -To bypass Headroom for troubleshooting, run: - -```shell -claude-direct -``` - -Running `claude` directly is equivalent to the direct path. The first Claude -Code launch may require its own account authentication; Desktop and Claude Code -store separate client credentials even though both use the configured -persistent home directory. - -### Multiple concurrent clients - -Every browser connection attaches to the same tmux session. Concurrent clients -therefore see the same terminal, keystrokes, and resize events. This is useful -for reconnecting to one long-running session, but it is not an isolated -multi-user terminal. - -### Terminal user and permissions - -The service drops privileges to the LinuxServer `abc` account before starting -ttyd. The effective numeric UID and GID follow the configured `PUID` and `PGID`. -Using `PUID: 0` can provide root-equivalent access inside the add-on; use a -non-zero UID/GID where your storage permissions allow it. - -The configured workspace must resolve to the persistent home directory or a -subdirectory of `/share`, `/media`, `/mnt`, `/data`, or `/config`. Existing -directories are never re-owned by the terminal service and must already be -readable, writable, and searchable by `abc`. - -### Terminal security - -The direct ttyd endpoint uses HTTP Basic Authentication without TLS. -Credentials and terminal traffic are unencrypted on the network. ttyd also -receives its Basic Authentication credential as a process argument, so it is -visible to processes with sufficient access inside the container. - -Do not expose port `7681` directly to the public internet. Use a VPN such as -WireGuard or Tailscale, or place the endpoint behind an HTTPS reverse proxy. -Use a unique `terminal_password` rather than reusing the Selkies `PASSWORD`. - ## Options | Option | Default | Description | @@ -123,48 +60,60 @@ Use a unique `terminal_password` rather than reusing the Selkies `PASSWORD`. | `PUID` / `PGID` | `0` / `0` | Numeric user and group applied by the LinuxServer initialization. | | `TZ` | | Optional timezone, for example `Europe/Brussels`. | | `KEYBOARD` | | Optional Selkies keyboard layout. | -| `PASSWORD` | | Optional password for direct Selkies ports and compatibility fallback for terminal authentication. | +| `PASSWORD` | | Optional password for direct Selkies ports. | | `DRINODE` | | Optional GPU device override for Selkies. | | `DNS_server` | `8.8.8.8` | DNS server used by the standard DNS module. | | `auto_update` | `true` | Upgrade `claude-desktop` from Anthropic's apt repository at startup. | -| `enable_terminal` | `true` | Enable the supervised Claude Code web-terminal service. | -| `terminal_username` | `claude` | Username used by ttyd Basic Authentication. | -| `terminal_password` | | Dedicated terminal password. The service idles when this and `PASSWORD` are empty. | -| `terminal_workspace` | | Initial directory; defaults to `/workspace`. | -| `install_headroom` | `true` | Enable Headroom MCP for Desktop and the supervised local proxy reused by `claude-headroom`. | +| `install_headroom` | `true` | Register the Headroom MCP server and run the supervised local proxy/dashboard. | | `install_rtk` | `true` | Configure RTK's Claude Code `PreToolUse` hook. | +| `install_tokensave` | `true` | Register the tokensave code-intelligence MCP server for Desktop and Claude Code. | | `install_caveman` | `true` | Install the Caveman Claude Code plugin in the persistent Claude home. | | `install_github_cli` | `true` | Enable setup checks for the baked-in `git` and `gh` commands. | | `github_token` | | Optional GitHub token used to authenticate `gh` and Git operations. | | `github_username` | | Optional global Git author name. | | `github_email` | | Optional global Git author email. | -| `ha_smart_context` | `true` | Enable Home Assistant smart context support for Claude tooling. | -| `enable_ha_mcp` | `true` | Enable Home Assistant MCP support for Claude tooling. | -| `dangerously_skip_permissions` | `false` | Reserved compatibility option; it is not applied by the terminal launcher. | +| `enable_ha_mcp` | `false` | Register Home Assistant's MCP server in Claude (requires `ha_mcp_token`). | +| `ha_mcp_url` | `http://homeassistant:8123/mcp_server/sse` | SSE endpoint of Home Assistant's MCP Server integration. | +| `ha_mcp_token` | | Home Assistant long-lived access token used by the MCP bridge. | | `additional_apps` | | Comma-separated Debian apt packages to install at startup. | -| `additional_pip` | | Comma-separated pip packages installed with `--break-system-packages`. | -| `data_location` | `/data/data` | Persistent home directory for both Claude clients and tooling. | +| `additional_pip` | | Comma-separated pip packages installed at startup (via `uv`). | +| `data_location` | `/data/data` | Persistent home directory for Claude and tooling. | | `env_vars` | `[]` | Additional environment variables exported inside the container. | ## Headroom behavior -When `install_headroom` is enabled, the add-on registers `headroom mcp serve` in -Claude Desktop and starts a supervised local Headroom backend. Desktop can use -`headroom_compress`, `headroom_retrieve`, and `headroom_stats` through MCP. +When `install_headroom` is enabled, the add-on registers `headroom mcp serve` +in Claude Desktop and Claude Code, and starts a supervised local Headroom +backend. Claude can use `headroom_compress`, `headroom_retrieve`, and +`headroom_stats` through MCP. Claude Desktop overrides `ANTHROPIC_BASE_URL`, so it is deliberately launched -without proxy injection. The web terminal instead provides `claude-headroom`, -which reuses the supervised proxy through Headroom's `--no-proxy` mode. RTK -setup remains owned by the add-on through Headroom's `--no-rtk` mode. +without proxy injection; the MCP integration is the supported path. -The Headroom dashboard remains available at: +The Headroom dashboard is available at: ```text http://:8787/dashboard ``` -when the `8787/tcp` port is mapped. Treat this endpoint as sensitive and do not -expose it directly to the public internet. +through the default `8787/tcp` port mapping. Treat this endpoint as sensitive: +it serves your local network only — do not expose it directly to the public +internet, and unmap the port in the add-on **Network** section if you do not +want it reachable at all. + +## Home Assistant MCP bridge + +To let Claude query and control Home Assistant: + +1. In Home Assistant, add the **Model Context Protocol Server** integration + (Settings → Devices & services → Add integration). +2. Create a long-lived access token (your profile → Security). +3. Set `enable_ha_mcp: true` and paste the token into `ha_mcp_token` in the + add-on configuration, then restart the add-on. + +The add-on bridges Claude to the integration's SSE endpoint with `mcp-proxy`. +Override `ha_mcp_url` only if your Home Assistant instance is not reachable as +`homeassistant:8123` from add-ons. ## Custom scripts @@ -178,10 +127,11 @@ the image. Persistent state is stored in the configured `data_location` (default `/data/data`): -- Claude Desktop sign-in: `~/.config/Claude` +- Claude Desktop sign-in: `~/.config/Claude` (token encrypted via + gnome-keyring; keyring DB in `~/.local/share/keyrings`) - Claude Code settings, hooks, sessions, and plugins: `~/.claude` -- Default terminal workspace: `~/workspace` -- Headroom and RTK user state: their standard paths below the shared home +- Headroom, RTK, and tokensave user state: their standard paths below the + shared home Volatile cache data is redirected to `/tmp/cache` through `$XDG_CACHE_HOME` and `$HOME/.cache`. diff --git a/claude_desktop/SIGN_IN.md b/claude_desktop/SIGN_IN.md index 8bd12589e7..3e7c007565 100644 --- a/claude_desktop/SIGN_IN.md +++ b/claude_desktop/SIGN_IN.md @@ -4,7 +4,10 @@ Two related sign-in problems when Claude Desktop runs inside the LinuxServer Sel streamed desktop. **Status:** -- **Shipped:** Problem B (keyring persistence) is implemented in v1.4 (Dockerfile + `rootfs/defaults/autostart`). +- **Shipped:** Problem B (keyring persistence) — the `autostart` bootstrap landed in v1.4, but + the `gnome-keyring` package itself was missing from the image until v1.17 (the bootstrap + silently no-oped and Electron logged "safeStorage encryption is not available"). Fixed in + v1.17: the Dockerfile now installs `gnome-keyring`. - **Planned only:** Problem A (in-desktop browser for OAuth) is intentionally not implemented. The image ships no browser; complete the login with the user-side workaround below. @@ -50,8 +53,9 @@ magic link into the in-session Chromium (not a phone). ### User-side workaround (no rebuild) - Add-on Configuration → `additional_apps: chromium`, restart (installed by `rootfs/etc/cont-init.d/80-configuration.sh`). -- Run the two `xdg-settings`/`xdg-mime` commands once in an in-session terminal, or add them - to the custom script `/addon_configs/db21ed7f_claude-desktop/claude-desktop.sh`. +- Add the two `xdg-settings`/`xdg-mime` commands to the custom script + `/addon_configs/db21ed7f_claude-desktop/claude-desktop.sh` (the image ships no standalone + terminal). --- diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index dbd6559f95..86cea61bdf 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -2,7 +2,7 @@ arch: - aarch64 - amd64 audio: true -description: "Claude Desktop and a persistent Claude Code web terminal" +description: "Claude Desktop with Headroom MCP context compression and RTK acceleration" devices: - /dev/dri - /dev/dri/card0 @@ -41,28 +41,23 @@ options: additional_pip: "" auto_update: true github_email: "" - ha_smart_context: true - enable_ha_mcp: true - dangerously_skip_permissions: false - enable_terminal: true - terminal_username: claude - terminal_password: "" - terminal_workspace: "" + enable_ha_mcp: false + ha_mcp_url: http://homeassistant:8123/mcp_server/sse + ha_mcp_token: "" github_token: "" github_username: "" install_caveman: true install_github_cli: true install_headroom: true install_rtk: true + install_tokensave: true panel_admin: false panel_icon: mdi:robot-happy ports: 3001/tcp: null - 7681/tcp: 7681 8787/tcp: 8787 ports_description: 3001/tcp: Claude Desktop web interface - 7681/tcp: Claude Code web terminal over HTTP Basic auth (no TLS) 8787/tcp: Headroom dashboard and proxy privileged: - SYS_ADMIN @@ -83,22 +78,19 @@ schema: additional_pip: str? auto_update: bool? github_email: str? - ha_smart_context: bool? enable_ha_mcp: bool? - dangerously_skip_permissions: bool? - enable_terminal: bool? - terminal_username: match(^[A-Za-z0-9_.-]+$)? - terminal_password: password? - terminal_workspace: str? + ha_mcp_url: str? + ha_mcp_token: password? github_token: password? github_username: str? install_caveman: bool install_github_cli: bool install_headroom: bool install_rtk: bool + install_tokensave: bool slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.16" +version: "1.17" video: true diff --git a/claude_desktop/rootfs/defaults/autostart b/claude_desktop/rootfs/defaults/autostart index 45f4fd0399..a2ee4e6ad4 100644 --- a/claude_desktop/rootfs/defaults/autostart +++ b/claude_desktop/rootfs/defaults/autostart @@ -22,8 +22,7 @@ else fi # Headroom is intentionally not injected into the Desktop process. Claude Desktop overrides -# ANTHROPIC_BASE_URL, so Desktop uses the registered Headroom MCP tools instead. The Claude Code -# terminal uses the supported `headroom wrap claude` integration through claude-headroom. +# ANTHROPIC_BASE_URL, so Desktop uses the registered Headroom MCP tools instead. # Launch the configured command. If a custom/wrapped command fails to start, fall back to # the plain Claude Desktop launch so the app always comes up for the user. diff --git a/claude_desktop/rootfs/etc/cont-init.d/80-configuration.sh b/claude_desktop/rootfs/etc/cont-init.d/80-configuration.sh index d174a920db..1e920d46fa 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/80-configuration.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/80-configuration.sh @@ -24,7 +24,12 @@ fi if bashio::config.has_value 'additional_pip'; then for p in $(bashio::config 'additional_pip' | tr ',' ' '); do bashio::log.green "... pip: $p" - pip3 install --break-system-packages "$p" || bashio::log.fatal "Error: pip package $p failed" + # Prefer uv (much faster resolver/installer); fall back to pip3 when unavailable. + if command -v uv &> /dev/null; then + uv pip install --system --break-system-packages "$p" || bashio::log.fatal "Error: pip package $p failed" + else + pip3 install --break-system-packages "$p" || bashio::log.fatal "Error: pip package $p failed" + fi done fi diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 9484a20c04..3246dc2bae 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -15,54 +15,120 @@ printf '%s\n' "$DEFAULT_CLAUDE_DESKTOP_COMMAND" > "$CLAUDE_DESKTOP_COMMAND_FILE" # Electron app force-overrides to the production endpoint (headroom #869), so transparent # compression cannot be applied to the desktop launch. The integration that does work with # Claude Desktop is headroom's MCP server, which exposes the headroom_compress/headroom_retrieve/ -# headroom_stats tools inside the app. Register it in Claude Desktop's MCP config, leaving the -# plain launch untouched. The merge is idempotent and preserves any other MCP servers. +# headroom_stats tools inside the app. +# +# Register the add-on-managed MCP servers (headroom, tokensave, homeassistant) in both Claude +# Desktop's config and Claude Code's user config (used by Desktop cowork/dispatch sessions). +# The merge is idempotent, preserves any other MCP servers, never overwrites a user-customized +# entry with a different command, and removes only add-on-managed entries when disabled. CLAUDE_DESKTOP_CONFIG="$HOME/.config/Claude/claude_desktop_config.json" +CLAUDE_CODE_CONFIG="$HOME/.claude.json" + +HEADROOM_ENABLED=false if bashio::config.true 'install_headroom'; then if command -v headroom &> /dev/null; then - bashio::log.info "headroom $(headroom --version 2> /dev/null || true) available; registering the headroom MCP server for Claude Desktop" - HEADROOM_BIN="$(command -v headroom)" CLAUDE_DESKTOP_CONFIG="$CLAUDE_DESKTOP_CONFIG" python3 - <<'PY' || bashio::log.warning "Unable to register the headroom MCP server automatically" -import json -import os -from pathlib import Path - -path = Path(os.environ["CLAUDE_DESKTOP_CONFIG"]) -try: - data = json.loads(path.read_text()) if path.exists() else {} - if not isinstance(data, dict): - data = {} -except Exception: - if path.exists(): - path.rename(path.with_suffix(path.suffix + ".bak")) - data = {} -servers = data.get("mcpServers") -if not isinstance(servers, dict): - servers = {} - data["mcpServers"] = servers -servers["headroom"] = {"command": os.environ.get("HEADROOM_BIN", "headroom"), "args": ["mcp", "serve"]} -path.parent.mkdir(parents=True, exist_ok=True) -path.write_text(json.dumps(data, indent=2) + "\n") -PY + HEADROOM_ENABLED=true + bashio::log.info "headroom $(headroom --version 2> /dev/null || true) available; registering the headroom MCP server" else bashio::log.warning "headroom is not available" fi -elif [ -f "$CLAUDE_DESKTOP_CONFIG" ]; then - bashio::log.info "Removing the headroom MCP server from Claude Desktop" - CLAUDE_DESKTOP_CONFIG="$CLAUDE_DESKTOP_CONFIG" python3 - <<'PY' || bashio::log.warning "Unable to remove the headroom MCP server automatically" +fi + +TOKENSAVE_ENABLED=false +if bashio::config.true 'install_tokensave'; then + if command -v tokensave &> /dev/null; then + TOKENSAVE_ENABLED=true + bashio::log.info "tokensave $(tokensave --version 2> /dev/null || true) available; registering the tokensave MCP server" + else + bashio::log.warning "tokensave is not available" + fi +fi + +HA_MCP_ENABLED=false +HA_MCP_URL="" +HA_MCP_TOKEN="" +if bashio::config.true 'enable_ha_mcp'; then + HA_MCP_URL="$(bashio::config 'ha_mcp_url' 'http://homeassistant:8123/mcp_server/sse')" + if bashio::config.has_value 'ha_mcp_token'; then + HA_MCP_TOKEN="$(bashio::config 'ha_mcp_token')" + fi + if [ -z "$HA_MCP_TOKEN" ]; then + bashio::log.warning "enable_ha_mcp is on but ha_mcp_token is empty; set a Home Assistant long-lived access token (Profile -> Security) and enable the 'Model Context Protocol Server' integration" + elif ! command -v mcp-proxy &> /dev/null; then + bashio::log.warning "mcp-proxy is not available; cannot register the Home Assistant MCP server" + else + HA_MCP_ENABLED=true + bashio::log.info "Registering the Home Assistant MCP server (${HA_MCP_URL})" + fi +fi + +HEADROOM_ENABLED="$HEADROOM_ENABLED" HEADROOM_BIN="$(command -v headroom || echo headroom)" \ + TOKENSAVE_ENABLED="$TOKENSAVE_ENABLED" TOKENSAVE_BIN="/usr/local/bin/tokensave" \ + HA_MCP_ENABLED="$HA_MCP_ENABLED" HA_MCP_URL="$HA_MCP_URL" HA_MCP_TOKEN="$HA_MCP_TOKEN" \ + MCP_PROXY_BIN="$(command -v mcp-proxy || echo mcp-proxy)" \ + CLAUDE_DESKTOP_CONFIG="$CLAUDE_DESKTOP_CONFIG" CLAUDE_CODE_CONFIG="$CLAUDE_CODE_CONFIG" \ + python3 - <<'PY' || bashio::log.warning "Unable to update the MCP server registrations automatically" import json import os from pathlib import Path -path = Path(os.environ["CLAUDE_DESKTOP_CONFIG"]) -data = json.loads(path.read_text()) -if isinstance(data, dict): +MANAGED_COMMANDS = { + "headroom": {os.environ["HEADROOM_BIN"], "headroom"}, + "tokensave": {os.environ["TOKENSAVE_BIN"], "tokensave"}, + "homeassistant": {os.environ["MCP_PROXY_BIN"], "mcp-proxy"}, +} + +desired = {} +if os.environ["HEADROOM_ENABLED"] == "true": + desired["headroom"] = {"command": os.environ["HEADROOM_BIN"], "args": ["mcp", "serve"]} +if os.environ["TOKENSAVE_ENABLED"] == "true": + desired["tokensave"] = {"command": os.environ["TOKENSAVE_BIN"], "args": ["serve"]} +if os.environ["HA_MCP_ENABLED"] == "true": + desired["homeassistant"] = { + "command": os.environ["MCP_PROXY_BIN"], + "args": [os.environ["HA_MCP_URL"]], + "env": {"API_ACCESS_TOKEN": os.environ["HA_MCP_TOKEN"]}, + } + +def is_managed(name, entry): + return isinstance(entry, dict) and entry.get("command") in MANAGED_COMMANDS[name] + +for config_var, stdio_type in (("CLAUDE_DESKTOP_CONFIG", False), ("CLAUDE_CODE_CONFIG", True)): + path = Path(os.environ[config_var]) + try: + data = json.loads(path.read_text()) if path.exists() else {} + if not isinstance(data, dict): + data = {} + except Exception: + if path.exists(): + path.rename(path.with_suffix(path.suffix + ".bak")) + data = {} servers = data.get("mcpServers") - if isinstance(servers, dict) and servers.pop("headroom", None) is not None: - if not servers: - data.pop("mcpServers", None) - path.write_text(json.dumps(data, indent=2) + "\n") + if not isinstance(servers, dict): + servers = {} + changed = False + for name in MANAGED_COMMANDS: + existing = servers.get(name) + if name in desired: + entry = dict(desired[name]) + if stdio_type: + entry["type"] = "stdio" + if existing is None or is_managed(name, existing): + if existing != entry: + servers[name] = entry + changed = True + elif existing is not None and is_managed(name, existing): + del servers[name] + changed = True + if not changed: + continue + if servers: + data["mcpServers"] = servers + else: + data.pop("mcpServers", None) + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(json.dumps(data, indent=2) + "\n") PY -fi # Guide Claude to actually use the headroom compression tools so the MCP integration produces # real savings (otherwise the tools sit unused and `headroom savings` stays empty). Managed, @@ -216,9 +282,9 @@ else find "$HOME/.claude" -maxdepth 4 -iname '*caveman*' -exec rm -rf {} + 2> /dev/null || true fi -# Startup configuration runs as root, while Claude Desktop and the web terminal run as abc. -# Return managed persistent files to the configured runtime UID/GID after all writes complete. -for managed_path in "$HOME/.claude" "$HOME/.config/Claude"; do +# Startup configuration runs as root, while Claude Desktop runs as abc. Return managed +# persistent files to the configured runtime UID/GID after all writes complete. +for managed_path in "$HOME/.claude" "$HOME/.claude.json" "$HOME/.config/Claude"; do if [ -e "$managed_path" ]; then chown -R -- "${PUID}:${PGID}" "$managed_path" || bashio::log.warning "Unable to set ownership on $managed_path" fi diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/dependencies.d/init-services b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/dependencies.d/init-services deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run deleted file mode 100644 index afd56cb69a..0000000000 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/run +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -declare port=7681 -declare username -declare password="" -declare workspace -declare canonical_workspace - -export PATH="${HOME:-/data/data}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" - -if bashio::config.has_value 'enable_terminal' && ! bashio::config.true 'enable_terminal'; then - bashio::log.info "svc-claude-terminal: terminal disabled; idling" - exec sleep infinity -fi - -if [ -z "${HOME:-}" ]; then - bashio::log.error "svc-claude-terminal: HOME is not initialized; idling" - exec sleep infinity -fi - -if ! command -v ttyd >/dev/null 2>&1 || ! command -v tmux >/dev/null 2>&1 || ! command -v claude >/dev/null 2>&1; then - bashio::log.error "svc-claude-terminal: ttyd, tmux, or Claude Code is missing; idling" - exec sleep infinity -fi - -username="claude" -if bashio::config.has_value 'terminal_username'; then - username="$(bashio::config 'terminal_username')" -fi - -if bashio::config.has_value 'terminal_password'; then - password="$(bashio::config 'terminal_password')" -elif bashio::config.has_value 'PASSWORD'; then - bashio::log.warning "svc-claude-terminal: using PASSWORD as fallback for terminal authentication; prefer a unique terminal_password" - password="$(bashio::config 'PASSWORD')" -fi - -if [ -z "$password" ]; then - bashio::log.warning "svc-claude-terminal: set terminal_password (or PASSWORD) before mapping port ${port}; terminal will remain disabled" - exec sleep infinity -fi - -workspace="${HOME}/workspace" -if bashio::config.has_value 'terminal_workspace'; then - workspace="$(bashio::config 'terminal_workspace')" -fi - -if [[ "$workspace" != /* ]]; then - bashio::log.error "svc-claude-terminal: terminal_workspace must be an absolute path; idling" - exec sleep infinity -fi - -if [ -L "$workspace" ]; then - bashio::log.error "svc-claude-terminal: terminal_workspace must not be a symbolic link; idling" - exec sleep infinity -fi - -if ! canonical_workspace="$(realpath -m -- "$workspace")"; then - bashio::log.error "svc-claude-terminal: unable to resolve terminal_workspace '$workspace'; idling" - exec sleep infinity -fi -workspace="$canonical_workspace" - -case "$workspace" in - "$HOME" | "$HOME"/* | /share/* | /media/* | /mnt/* | /data/* | /config/*) - ;; - *) - bashio::log.error "svc-claude-terminal: terminal_workspace must be the configured data_location or a subdirectory of /share, /media, /mnt, /data, or /config; idling" - exec sleep infinity - ;; -esac - -if [ ! -e "$workspace" ]; then - if ! install -d -m 0750 -o abc -g abc -- "$workspace"; then - bashio::log.error "svc-claude-terminal: failed to create workspace '$workspace'; idling" - exec sleep infinity - fi -elif [ ! -d "$workspace" ]; then - bashio::log.error "svc-claude-terminal: terminal_workspace '$workspace' is not a directory; idling" - exec sleep infinity -fi - -if ! s6-setuidgid abc test -r "$workspace" || - ! s6-setuidgid abc test -w "$workspace" || - ! s6-setuidgid abc test -x "$workspace"; then - bashio::log.error "svc-claude-terminal: workspace '$workspace' must be readable, writable, and searchable by user abc; idling" - exec sleep infinity -fi - -export CLAUDE_TERMINAL_WORKSPACE="$workspace" - -bashio::log.info "svc-claude-terminal: starting authenticated ttyd terminal on port ${port}; workspace=${workspace}" -exec s6-setuidgid abc ttyd \ - -p "$port" \ - -W \ - -O \ - -c "${username}:${password}" \ - /usr/local/bin/claude-terminal-shell diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type deleted file mode 100644 index 5883cff0cd..0000000000 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-claude-terminal/type +++ /dev/null @@ -1 +0,0 @@ -longrun diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run index fa912f0dbd..475c5a47cc 100755 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run @@ -1,7 +1,9 @@ #!/usr/bin/with-contenv bashio # Headroom optimization proxy — local backend for Claude Desktop MCP and Claude Code. declare port=8787 -declare host=127.0.0.1 +# Bind all interfaces so the dashboard is reachable on the mapped host port +# (http://:8787/dashboard). Local consumers keep using 127.0.0.1. +declare host=0.0.0.0 if bashio::config.true 'install_headroom' && command -v headroom >/dev/null 2>&1; then bashio::log.info "svc-headroom: starting local Headroom proxy on ${host}:${port}" diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-claude-terminal b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-claude-terminal deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/claude_desktop/rootfs/usr/local/bin/claude-direct b/claude_desktop/rootfs/usr/local/bin/claude-direct deleted file mode 100644 index 9b16e20c3f..0000000000 --- a/claude_desktop/rootfs/usr/local/bin/claude-direct +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -exec claude "$@" diff --git a/claude_desktop/rootfs/usr/local/bin/claude-headroom b/claude_desktop/rootfs/usr/local/bin/claude-headroom deleted file mode 100644 index 4c8fa247dd..0000000000 --- a/claude_desktop/rootfs/usr/local/bin/claude-headroom +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -if ! command -v claude >/dev/null 2>&1; then - echo "Claude Code is not installed or is not on PATH." >&2 - exit 127 -fi - -if ! command -v headroom >/dev/null 2>&1; then - echo "Headroom is unavailable; start Claude Code directly with claude-direct." >&2 - exit 127 -fi - -if ! curl -fsS --max-time 3 "http://127.0.0.1:8787/readyz" >/dev/null; then - echo "The supervised Headroom proxy is not ready on 127.0.0.1:8787. Ensure install_headroom is enabled and check the add-on log." >&2 - exit 1 -fi - -# Reuse the s6-supervised proxy instead of starting a competing proxy. RTK is already managed -# through the persistent Claude Code PreToolUse hook, so Headroom must not reinstall it. -exec headroom wrap claude --port 8787 --no-proxy --no-rtk -- "$@" diff --git a/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell b/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell deleted file mode 100644 index daf449397e..0000000000 --- a/claude_desktop/rootfs/usr/local/bin/claude-terminal-shell +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -if [ -z "${HOME:-}" ]; then - echo "Claude terminal: HOME is not initialized." >&2 - exit 1 -fi - -export SHELL="/bin/bash" -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" - -workspace="${CLAUDE_TERMINAL_WORKSPACE:-${HOME}/workspace}" -session_name="${CLAUDE_TMUX_SESSION:-claude}" - -if [ ! -d "$workspace" ]; then - echo "Claude terminal: workspace does not exist: $workspace" >&2 - exit 1 -fi - -cd -- "$workspace" - -# Reattach every browser connection to the same terminal session. Closing the browser detaches -# the client but leaves Claude Code and other commands running inside tmux. -exec tmux new-session -A -s "$session_name" -c "$workspace" From 583c5e655a73d05b2bdc2e132ed7a86d2c0a6e0a Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 16:31:24 +0200 Subject: [PATCH 191/538] ci: bump home-assistant/builder build-image action to 2026.06.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Legacy monolithic builder was removed upstream in 2026.06.0; this repo already uses the modular build-image action, so only the pin moves (2026.03.2 -> 2026.06.0). Action inputs/outputs unchanged upstream — drop-in compatible. Also strips trailing whitespace at EOF (yamllint). Co-Authored-By: Claude Fable 5 --- .github/workflows/onpush_builder.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/onpush_builder.yaml b/.github/workflows/onpush_builder.yaml index 91f7aff815..b58e380d8d 100644 --- a/.github/workflows/onpush_builder.yaml +++ b/.github/workflows/onpush_builder.yaml @@ -300,7 +300,7 @@ jobs: - name: Build ${{ matrix.addon }} add-on if: steps.info.outputs.build_arch == 'true' && steps.info.outputs.has_dockerfile == 'true' - uses: home-assistant/builder/actions/build-image@2026.03.2 + uses: home-assistant/builder/actions/build-image@2026.06.0 with: arch: ${{ matrix.arch }} cache-gha: "false" @@ -433,4 +433,3 @@ jobs: done git push origin HEAD:master - From fa2328f74133b250369c204eb454968190cab206 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 16:36:25 +0200 Subject: [PATCH 192/538] update --- chatgpt_codex/CHANGELOG.md | 12 -- chatgpt_codex/Dockerfile | 157 ------------------ chatgpt_codex/README.md | 112 ------------- chatgpt_codex/build.json | 6 - chatgpt_codex/config.yaml | 68 -------- .../rootfs/etc/cont-init.d/20-folders.sh | 46 ----- .../etc/cont-init.d/80-configuration.sh | 33 ---- .../rootfs/etc/cont-init.d/82-codex-tools.sh | 55 ------ .../rootfs/etc/cont-init.d/83-github_cli.sh | 29 ---- .../dependencies.d/init-services | 0 .../s6-overlay/s6-rc.d/svc-codex-terminal/run | 54 ------ .../s6-rc.d/svc-codex-terminal/type | 1 - .../user/contents.d/svc-codex-terminal | 0 .../rootfs/usr/local/bin/codex-direct | 4 - .../rootfs/usr/local/bin/codex-headroom | 15 -- .../rootfs/usr/local/bin/codex-login | 4 - .../rootfs/usr/local/bin/codex-terminal-shell | 33 ---- chatgpt_codex/updater.json | 12 -- 18 files changed, 641 deletions(-) delete mode 100644 chatgpt_codex/CHANGELOG.md delete mode 100644 chatgpt_codex/Dockerfile delete mode 100644 chatgpt_codex/README.md delete mode 100644 chatgpt_codex/build.json delete mode 100644 chatgpt_codex/config.yaml delete mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh delete mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh delete mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh delete mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh delete mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services delete mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run delete mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type delete mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal delete mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-direct delete mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-headroom delete mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-login delete mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell delete mode 100644 chatgpt_codex/updater.json diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md deleted file mode 100644 index 266f633c4d..0000000000 --- a/chatgpt_codex/CHANGELOG.md +++ /dev/null @@ -1,12 +0,0 @@ -## 0.144.3-3 (14-07-2026) -- Minor bugs fixed -## 0.144.3-2 (14-07-2026) - -- Initial ChatGPT Codex add-on. -- Added a persistent, administrator-only Home Assistant ingress terminal backed by tmux. -- Made `headroom wrap codex` the default launch path. -- Configured Docker builds to install the latest stable Codex, Headroom, RTK, ttyd, and Rust toolchain versions without hard-coded tool version pins. -- Added RTK native Codex initialization and savings reporting. -- Added device-code authentication and direct Codex fallback helpers. -- Added persistent configuration, GitHub CLI integration, mount support, and safe defaults. -- Made the default workspace follow a custom `data_location`. diff --git a/chatgpt_codex/Dockerfile b/chatgpt_codex/Dockerfile deleted file mode 100644 index 7288a6ae0b..0000000000 --- a/chatgpt_codex/Dockerfile +++ /dev/null @@ -1,157 +0,0 @@ -#============================# -# ALEXBELGIUM'S DOCKERFILE # -#============================# -#=== Home Assistant Addon ===# - -################# -# 1 Build Image # -################# - -ARG BUILD_FROM -ARG BUILD_VERSION - -FROM rust:bookworm AS rtk-builder -RUN set -eux; \ - rtk_version="$(git ls-remote --tags --refs --sort=-v:refname \ - https://github.com/rtk-ai/rtk.git 'refs/tags/v*' \ - | awk -F/ '$3 ~ /^v[0-9]+\.[0-9]+\.[0-9]+$/ { print $3; exit }')"; \ - test -n "$rtk_version"; \ - git clone --depth 1 --branch "$rtk_version" https://github.com/rtk-ai/rtk.git /src/rtk; \ - cd /src/rtk; \ - cargo build --release --locked; \ - install -D -m 0755 target/release/rtk /out/rtk; \ - /out/rtk --version - -FROM ${BUILD_FROM} - -################## -# 2 Modify Image # -################## - -ENV S6_CMD_WAIT_FOR_SERVICES=1 \ - S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ - S6_SERVICES_GRACETIME=0 \ - HEADROOM_CONTEXT_TOOL=rtk - -USER root -VOLUME [ "/sys/fs/cgroup" ] - -ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" - -################## -# 3 Install apps # -################## - -COPY rootfs/ / -RUN find /etc/cont-init.d /etc/s6-overlay /usr/local/bin \ - -type f \( -name "*.sh" -o -name "run" -o -name "finish" -o -path "/usr/local/bin/*" \) \ - -print -exec chmod +x {} \; - -RUN apt-get update && \ - apt-get install -y --no-install-recommends \ - ca-certificates \ - curl \ - git \ - gh \ - jq \ - less \ - nano \ - openssh-client \ - python3-pip \ - ripgrep \ - tmux && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* - -# Install the latest stable official Codex static binary for the target architecture. -RUN set -eux; \ - case "$(dpkg --print-architecture)" in \ - amd64) codex_arch="x86_64" ;; \ - arm64) codex_arch="aarch64" ;; \ - *) echo "Unsupported architecture: $(dpkg --print-architecture)" >&2; exit 1 ;; \ - esac; \ - archive="/tmp/codex.tar.gz"; \ - curl -fsSL --retry 3 --retry-delay 2 \ - -o "$archive" \ - "https://github.com/openai/codex/releases/latest/download/codex-${codex_arch}-unknown-linux-musl.tar.gz"; \ - tar -xzf "$archive" -C /tmp; \ - install -m 0755 "/tmp/codex-${codex_arch}-unknown-linux-musl" /usr/local/bin/codex; \ - rm -f "$archive" "/tmp/codex-${codex_arch}-unknown-linux-musl"; \ - codex --version - -# Install the latest stable ttyd binary for the Home Assistant ingress terminal. -RUN set -eux; \ - case "$(dpkg --print-architecture)" in \ - amd64) ttyd_arch="x86_64" ;; \ - arm64) ttyd_arch="aarch64" ;; \ - *) echo "Unsupported architecture: $(dpkg --print-architecture)" >&2; exit 1 ;; \ - esac; \ - curl -fsSL --retry 3 --retry-delay 2 \ - -o /usr/local/bin/ttyd \ - "https://github.com/tsl0922/ttyd/releases/latest/download/ttyd.${ttyd_arch}"; \ - chmod 0755 /usr/local/bin/ttyd; \ - ttyd --version - -COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk -RUN rtk --version && \ - pip3 install --upgrade --break-system-packages --no-cache-dir "headroom-ai[proxy,code,mcp]" && \ - headroom --version - -ARG MODULES="00-banner.sh 00-global_var.sh 01-custom_script.sh 00-local_mounts.sh 00-smb_mounts.sh 90-dns_set.sh" -RUN curl -fsSL --retry 3 --retry-delay 2 \ - -o /ha_automodules.sh "${TEMPLATE_BASE_URL}/ha_automodules.sh" && \ - chmod 744 /ha_automodules.sh && \ - /ha_automodules.sh "$MODULES" && \ - rm /ha_automodules.sh - -################ -# 4 Entrypoint # -################ - -RUN curl -fsSL --retry 3 --retry-delay 2 \ - -o /ha_entrypoint.sh "${TEMPLATE_BASE_URL}/ha_entrypoint.sh" && \ - curl -fsSL --retry 3 --retry-delay 2 \ - -o /usr/local/lib/bashio-standalone.sh "${TEMPLATE_BASE_URL}/bashio-standalone.sh" && \ - chmod 0777 /ha_entrypoint.sh && \ - chmod 0755 /usr/local/lib/bashio-standalone.sh - -ENTRYPOINT [ "/usr/bin/env" ] -CMD [ "/ha_entrypoint.sh" ] - -############ -# 5 Labels # -############ - -ARG BUILD_ARCH -ARG BUILD_DATE -ARG BUILD_DESCRIPTION -ARG BUILD_NAME -ARG BUILD_REF -ARG BUILD_REPOSITORY -ARG BUILD_VERSION -ENV BUILD_VERSION="${BUILD_VERSION}" -LABEL \ - io.hass.name="${BUILD_NAME}" \ - io.hass.description="${BUILD_DESCRIPTION}" \ - io.hass.arch="${BUILD_ARCH}" \ - io.hass.type="addon" \ - io.hass.version=${BUILD_VERSION} \ - maintainer="alexbelgium (https://github.com/alexbelgium)" \ - org.opencontainers.image.title="${BUILD_NAME}" \ - org.opencontainers.image.description="${BUILD_DESCRIPTION}" \ - org.opencontainers.image.vendor="Home Assistant Add-ons" \ - org.opencontainers.image.authors="alexbelgium (https://github.com/alexbelgium)" \ - org.opencontainers.image.licenses="MIT" \ - org.opencontainers.image.url="https://github.com/alexbelgium" \ - org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \ - org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/master/chatgpt_codex/README.md" \ - org.opencontainers.image.created=${BUILD_DATE} \ - org.opencontainers.image.revision=${BUILD_REF} \ - org.opencontainers.image.version=${BUILD_VERSION} - -################# -# 6 Healthcheck # -################# - -HEALTHCHECK --interval=30s --timeout=5s --start-period=30s \ - CMD curl -fsS http://127.0.0.1:7681/ > /dev/null || exit 1 diff --git a/chatgpt_codex/README.md b/chatgpt_codex/README.md deleted file mode 100644 index 4b11570b7f..0000000000 --- a/chatgpt_codex/README.md +++ /dev/null @@ -1,112 +0,0 @@ -# Home Assistant add-on: ChatGPT Codex - -![Supports aarch64 Architecture][aarch64-shield] -![Supports amd64 Architecture][amd64-shield] -![Project Maintenance][maintenance-shield] - -Run the official OpenAI Codex CLI in a persistent Home Assistant ingress terminal. The optimized path uses `headroom wrap codex`, with RTK handling command-output compression before results reach Codex. - -> The repository already contains an unrelated add-on named **Codex** for comic archives. This coding-agent add-on therefore uses the slug `chatgpt_codex`. - -## Features - -- Latest stable Codex, Headroom, RTK, ttyd, and Rust toolchain versions are resolved during every Docker build; tool versions are not pinned in the Dockerfile. -- Official Codex CLI static binary for `amd64` and `aarch64`. -- Home Assistant authenticated, administrator-only ingress; no unauthenticated terminal port is exposed. -- Persistent `$HOME`, Codex authentication, settings, sessions, Headroom state, and RTK statistics. -- Persistent `tmux` session that survives browser disconnects. -- `headroom wrap codex` as the default launch path. -- Baked-in RTK with native Codex initialization. -- Optional Headroom output shaping and code-aware compression. -- Direct Codex fallback for troubleshooting. -- Device-code login helper designed for a remote or headless container. -- Baked-in Git, GitHub CLI, ripgrep, jq, SSH client, and common terminal tools. -- Optional GitHub CLI authentication and Git author configuration. -- Optional extra apt and pip packages. -- Local and SMB mount support through the repository standard modules. - -## Installation and first login - -1. Install **ChatGPT Codex** from this add-on repository. -2. Keep the default `data_location` and `workspace`, or select writable mounted paths. -3. Start the add-on and open its web UI. -4. Codex starts automatically through Headroom. -5. When prompted to authenticate, follow the device-code instructions. You can also exit Codex and run: - -```shell -codex-login -``` - -Codex supports ChatGPT sign-in and API-key authentication. The device-code flow is the recommended option for this headless add-on. - -## Launch commands - -Optimized default: - -```shell -codex-headroom -``` - -This runs: - -```shell -headroom wrap codex -``` - -Headroom starts its local proxy, configures Codex routing and MCP support, and uses RTK as the CLI context tool. - -Direct troubleshooting path: - -```shell -codex-direct -``` - -Check optimization status and measured savings: - -```shell -headroom doctor -headroom perf -rtk gain -``` - -## Persistence - -The terminal attaches every browser connection to the same `tmux` session. Closing the browser detaches the client but does not stop Codex or commands running in the session. - -Persistent data is stored below `data_location`: - -- Codex state: `~/.codex` -- Headroom state and metrics: `~/.headroom` -- RTK state: its normal paths below the persistent home -- Default workspace: `~/workspace` - -## Options - -| Option | Default | Description | -| --- | --- | --- | -| `data_location` | `/data/data` | Persistent home. Must be below `/data`, `/share`, `/media`, `/config`, or `/mnt`. | -| `workspace` | `/workspace` | Initial project directory. Leave empty to follow `data_location`. | -| `PUID` / `PGID` | `0` / `0` | Runtime user and group used by the LinuxServer `abc` account. | -| `TZ` | | Optional timezone, for example `Europe/Brussels`. | -| `auto_start_codex` | `true` | Start Codex automatically when the tmux session is first created. | -| `use_headroom` | `true` | Use `headroom wrap codex`; disabling this starts Codex directly. | -| `headroom_output_shaper` | `true` | Enable Headroom output-token shaping. | -| `headroom_code_aware` | `true` | Enable Headroom AST-aware code compression. | -| `github_token` | | Authenticate GitHub CLI and Git operations. | -| `github_username` / `github_email` | | Configure the global Git author. | -| `additional_apps` | | Comma-separated Debian packages installed at startup. | -| `additional_pip` | | Comma-separated Python packages installed at startup. | -| `localdisks` / `networkdisks` | | Optional local-disk and SMB mounts supported by the repository modules. | -| `env_vars` | `[]` | Additional environment variables exported in the container. | - -Configuration changes affecting the launch command apply to a newly created tmux session. To recreate it, exit Codex and run `tmux kill-session -t codex`, then reopen the add-on web UI. - -## Security - -The add-on deliberately does not enable Codex approval or sandbox bypass flags. Codex can execute commands and edit files available inside the configured workspace, so only mount locations you intend it to access. - -The terminal is exposed only through Home Assistant administrator-only ingress. Do not add an unauthenticated direct port mapping. Treat `github_token`, Codex authentication data, and the persistent home as secrets and include them only in trusted backups. - -[aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg -[amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg -[maintenance-shield]: https://img.shields.io/maintenance/yes/2026.svg diff --git a/chatgpt_codex/build.json b/chatgpt_codex/build.json deleted file mode 100644 index e144598697..0000000000 --- a/chatgpt_codex/build.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "build_from": { - "aarch64": "ghcr.io/linuxserver/baseimage-debian:arm64v8-bookworm", - "amd64": "ghcr.io/linuxserver/baseimage-debian:amd64-bookworm" - } -} diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml deleted file mode 100644 index 773c9c6381..0000000000 --- a/chatgpt_codex/config.yaml +++ /dev/null @@ -1,68 +0,0 @@ -arch: - - aarch64 - - amd64 -description: "Persistent OpenAI Codex web terminal optimized with Headroom and RTK" -devices: - - /dev/fuse -environment: - HOME: /data/data - PGID: "0" - PUID: "0" - TERM: xterm-256color -image: ghcr.io/alexbelgium/chatgpt_codex-{arch} -ingress: true -ingress_port: 7681 -ingress_stream: true -init: false -map: - - addon_config:rw - - share:rw - - media:rw - - ssl -name: ChatGPT Codex -options: - env_vars: [] - DNS_server: 8.8.8.8 - data_location: /data/data - workspace: "" - PUID: 0 - PGID: 0 - auto_start_codex: true - use_headroom: true - headroom_output_shaper: true - headroom_code_aware: true - github_token: "" - github_username: "" - github_email: "" - additional_apps: "" - additional_pip: "" -panel_icon: mdi:code-braces-box -privileged: - - SYS_ADMIN - - DAC_READ_SEARCH -schema: - env_vars: - - name: match(^[A-Za-z0-9_]+$) - value: str? - DNS_server: str? - data_location: str? - workspace: str? - PUID: int - PGID: int - TZ: match([A-Z][a-z]*./[A-Z][a-z]*.)? - auto_start_codex: bool - use_headroom: bool - headroom_output_shaper: bool - headroom_code_aware: bool - github_token: password? - github_username: str? - github_email: str? - additional_apps: str? - additional_pip: str? - localdisks: str? - networkdisks: str? -slug: chatgpt_codex -tmpfs: true -udev: true -url: https://github.com/alexbelgium/hassio-addons -version: "0.144.3-3" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh b/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh deleted file mode 100755 index e9a763da7e..0000000000 --- a/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -PUID="$(bashio::config 'PUID')" -PGID="$(bashio::config 'PGID')" -LOCATION="$(bashio::config 'data_location')" - -if [ -z "$LOCATION" ] || [ "$LOCATION" = "null" ]; then - LOCATION="/data/data" -fi - -case "$LOCATION" in - /data/* | /share/* | /media/* | /config/* | /mnt/*) - ;; - *) - bashio::log.fatal "data_location must be below /data, /share, /media, /config, or /mnt" - exit 1 - ;; -esac - -if [ -L "$LOCATION" ]; then - bashio::log.fatal "data_location must not be a symbolic link" - exit 1 -fi - -bashio::log.info "Using persistent home: $LOCATION" -install -d -m 0750 -o "$PUID" -g "$PGID" "$LOCATION" -install -d -m 0750 -o "$PUID" -g "$PGID" "$LOCATION/.codex" "$LOCATION/.headroom" -install -d -m 0755 /tmp/cache /run/s6/container_environment - -sed -i "s|^\(abc:[^:]*:[^:]*:[^:]*:[^:]*:\)[^:]*|\1$LOCATION|" /etc/passwd - -for variable in HOME CODEX_HOME HEADROOM_WORKSPACE_DIR XDG_CACHE_HOME; do - case "$variable" in - HOME) value="$LOCATION" ;; - CODEX_HOME) value="$LOCATION/.codex" ;; - HEADROOM_WORKSPACE_DIR) value="$LOCATION/.headroom" ;; - XDG_CACHE_HOME) value="/tmp/cache" ;; - esac - printf '%s' "$value" > "/run/s6/container_environment/$variable" -done - -chown -R "$PUID:$PGID" "$LOCATION/.codex" "$LOCATION/.headroom" -chown "$PUID:$PGID" "$LOCATION" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh b/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh deleted file mode 100755 index e84fe7d441..0000000000 --- a/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -if bashio::config.has_value 'additional_apps'; then - packages="$(bashio::config 'additional_apps')" - apt-get update -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 - for package in ${packages//,/ }; do - bashio::log.info "Installing apt package: $package" - apt-get install -y --no-install-recommends "$package" - done - apt-get clean - rm -rf /var/lib/apt/lists/* -fi - -if bashio::config.has_value 'additional_pip'; then - packages="$(bashio::config 'additional_pip')" - for package in ${packages//,/ }; do - bashio::log.info "Installing pip package: $package" - pip3 install --break-system-packages "$package" - done -fi - -if bashio::config.has_value 'TZ'; then - timezone="$(bashio::config 'TZ')" - if [ ! -e "/usr/share/zoneinfo/$timezone" ]; then - bashio::log.fatal "Invalid timezone: $timezone" - exit 1 - fi - ln -snf "/usr/share/zoneinfo/$timezone" /etc/localtime - printf '%s\n' "$timezone" > /etc/timezone -fi diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh b/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh deleted file mode 100755 index 5b4cac52f8..0000000000 --- a/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -PUID="$(bashio::config 'PUID')" -PGID="$(bashio::config 'PGID')" - -if ! command -v codex > /dev/null 2>&1; then - bashio::log.fatal "Codex CLI is not available" - exit 1 -fi -if ! command -v headroom > /dev/null 2>&1; then - bashio::log.fatal "Headroom is not available" - exit 1 -fi -if ! command -v rtk > /dev/null 2>&1; then - bashio::log.fatal "RTK is not available" - exit 1 -fi - -bashio::log.info "Codex: $(codex --version 2>&1 | head -n 1)" -bashio::log.info "Headroom: $(headroom --version 2>&1 | head -n 1)" -bashio::log.info "RTK: $(rtk --version 2>&1 | head -n 1)" - -# Configure RTK's native Codex integration ahead of the first wrapped session. -if ! s6-setuidgid abc env \ - HOME="$HOME" \ - CODEX_HOME="${CODEX_HOME:-$HOME/.codex}" \ - PATH="$HOME/.local/bin:/usr/local/bin:/usr/bin:/bin" \ - RTK_NONINTERACTIVE=1 \ - rtk init -g --codex; then - bashio::log.warning "RTK Codex initialization failed; Headroom will retry when wrapping Codex" -fi - -for key in CODEX_AUTO_START CODEX_USE_HEADROOM HEADROOM_OUTPUT_SHAPER HEADROOM_CODE_AWARE_ENABLED; do - case "$key" in - CODEX_AUTO_START) - bashio::config.true 'auto_start_codex' && value="1" || value="0" - ;; - CODEX_USE_HEADROOM) - bashio::config.true 'use_headroom' && value="1" || value="0" - ;; - HEADROOM_OUTPUT_SHAPER) - bashio::config.true 'headroom_output_shaper' && value="1" || value="0" - ;; - HEADROOM_CODE_AWARE_ENABLED) - bashio::config.true 'headroom_code_aware' && value="1" || value="0" - ;; - esac - printf '%s' "$value" > "/run/s6/container_environment/$key" -done -printf '%s' 'rtk' > /run/s6/container_environment/HEADROOM_CONTEXT_TOOL - -chown -R "$PUID:$PGID" "$HOME/.codex" "$HOME/.headroom" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh b/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh deleted file mode 100755 index 63cbe8ad64..0000000000 --- a/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -if bashio::config.has_value 'github_username'; then - s6-setuidgid abc git config --global user.name "$(bashio::config 'github_username')" -fi - -if bashio::config.has_value 'github_email'; then - s6-setuidgid abc git config --global user.email "$(bashio::config 'github_email')" -fi - -if bashio::config.has_value 'github_token'; then - token="$(bashio::config 'github_token')" - if s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN gh auth status --hostname github.com > /dev/null 2>&1; then - bashio::log.info "GitHub CLI is already authenticated" - else - bashio::log.info "Authenticating GitHub CLI" - printf '%s\n' "$token" | s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN \ - gh auth login --hostname github.com --with-token || \ - bashio::log.warning "GitHub CLI authentication failed" - fi - s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN \ - gh auth setup-git --hostname github.com || \ - bashio::log.warning "GitHub CLI git credential setup failed" -else - bashio::log.info "Set github_token to authenticate gh and Git operations" -fi diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run deleted file mode 100644 index d89e100562..0000000000 --- a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -port=7681 -workspace="$(bashio::config 'workspace')" - -if [ -z "$workspace" ] || [ "$workspace" = "null" ]; then - workspace="$HOME/workspace" -fi - -if [[ "$workspace" != /* ]]; then - bashio::log.fatal "workspace must be an absolute path" - exec sleep infinity -fi -if [ -L "$workspace" ]; then - bashio::log.fatal "workspace must not be a symbolic link" - exec sleep infinity -fi - -workspace="$(realpath -m -- "$workspace")" -case "$workspace" in - "$HOME" | "$HOME"/* | /share/* | /media/* | /mnt/* | /data/* | /config/*) - ;; - *) - bashio::log.fatal "workspace must be below the persistent home, /share, /media, /mnt, /data, or /config" - exec sleep infinity - ;; -esac - -if [ ! -e "$workspace" ]; then - install -d -m 0750 -o abc -g abc "$workspace" -elif [ ! -d "$workspace" ]; then - bashio::log.fatal "workspace is not a directory: $workspace" - exec sleep infinity -fi - -if ! s6-setuidgid abc test -r "$workspace" || \ - ! s6-setuidgid abc test -w "$workspace" || \ - ! s6-setuidgid abc test -x "$workspace"; then - bashio::log.fatal "workspace must be readable, writable, and searchable by user abc: $workspace" - exec sleep infinity -fi - -export CODEX_TERMINAL_WORKSPACE="$workspace" -bashio::log.info "Starting persistent Codex terminal on Home Assistant ingress port $port" -exec s6-setuidgid abc ttyd \ - -p "$port" \ - -W \ - -O \ - -t disableLeaveAlert=true \ - -t fontSize=14 \ - /usr/local/bin/codex-terminal-shell diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type deleted file mode 100644 index 5883cff0cd..0000000000 --- a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type +++ /dev/null @@ -1 +0,0 @@ -longrun diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-direct b/chatgpt_codex/rootfs/usr/local/bin/codex-direct deleted file mode 100644 index a6eb886dcc..0000000000 --- a/chatgpt_codex/rootfs/usr/local/bin/codex-direct +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" -exec codex "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-headroom b/chatgpt_codex/rootfs/usr/local/bin/codex-headroom deleted file mode 100644 index 1e86dc6102..0000000000 --- a/chatgpt_codex/rootfs/usr/local/bin/codex-headroom +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" -export HEADROOM_CONTEXT_TOOL="rtk" - -if ! command -v headroom > /dev/null 2>&1; then - echo "Headroom is unavailable; launching Codex directly." >&2 - exec codex "$@" -fi - -if [ "$#" -eq 0 ]; then - exec headroom wrap codex -fi -exec headroom wrap codex -- "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-login b/chatgpt_codex/rootfs/usr/local/bin/codex-login deleted file mode 100644 index 954f654a6e..0000000000 --- a/chatgpt_codex/rootfs/usr/local/bin/codex-login +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" -exec codex login --device-auth "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell b/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell deleted file mode 100644 index 7e6d3cd972..0000000000 --- a/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -export SHELL="/bin/bash" -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" - -workspace="${CODEX_TERMINAL_WORKSPACE:-${HOME}/workspace}" -session_name="${CODEX_TMUX_SESSION:-codex}" - -if [ ! -d "$workspace" ]; then - echo "Codex workspace does not exist: $workspace" >&2 - exit 1 -fi - -new_session=0 -if ! tmux has-session -t "$session_name" 2> /dev/null; then - tmux new-session -d -s "$session_name" -c "$workspace" /bin/bash -l - new_session=1 -fi - -if [ "$new_session" -eq 1 ]; then - tmux send-keys -t "$session_name" \ - "printf '\\nChatGPT Codex add-on\\n login: codex-login\\n optimized: codex-headroom\\n direct: codex-direct\\n savings: rtk gain && headroom perf\\n\\n'" C-m - if [ "${CODEX_AUTO_START:-1}" = "1" ]; then - if [ "${CODEX_USE_HEADROOM:-1}" = "1" ]; then - tmux send-keys -t "$session_name" "codex-headroom" C-m - else - tmux send-keys -t "$session_name" "codex-direct" C-m - fi - fi -fi - -exec tmux attach-session -t "$session_name" diff --git a/chatgpt_codex/updater.json b/chatgpt_codex/updater.json deleted file mode 100644 index ad08b16d81..0000000000 --- a/chatgpt_codex/updater.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "github_beta": false, - "github_fulltag": false, - "github_havingasset": true, - "github_tagfilter": "rust-v", - "last_update": "2026-07-14", - "repository": "alexbelgium/hassio-addons", - "slug": "chatgpt_codex", - "source": "github", - "upstream_repo": "openai/codex", - "upstream_version": "0.144.3" -} From b4008c4db947dda6828320356f9b71c571870650 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 14 Jul 2026 14:37:19 +0000 Subject: [PATCH 193/538] Revert "update" This reverts commit fa2328f74133b250369c204eb454968190cab206. --- chatgpt_codex/CHANGELOG.md | 12 ++ chatgpt_codex/Dockerfile | 157 ++++++++++++++++++ chatgpt_codex/README.md | 112 +++++++++++++ chatgpt_codex/build.json | 6 + chatgpt_codex/config.yaml | 68 ++++++++ .../rootfs/etc/cont-init.d/20-folders.sh | 46 +++++ .../etc/cont-init.d/80-configuration.sh | 33 ++++ .../rootfs/etc/cont-init.d/82-codex-tools.sh | 55 ++++++ .../rootfs/etc/cont-init.d/83-github_cli.sh | 29 ++++ .../dependencies.d/init-services | 0 .../s6-overlay/s6-rc.d/svc-codex-terminal/run | 54 ++++++ .../s6-rc.d/svc-codex-terminal/type | 1 + .../user/contents.d/svc-codex-terminal | 0 .../rootfs/usr/local/bin/codex-direct | 4 + .../rootfs/usr/local/bin/codex-headroom | 15 ++ .../rootfs/usr/local/bin/codex-login | 4 + .../rootfs/usr/local/bin/codex-terminal-shell | 33 ++++ chatgpt_codex/updater.json | 12 ++ 18 files changed, 641 insertions(+) create mode 100644 chatgpt_codex/CHANGELOG.md create mode 100644 chatgpt_codex/Dockerfile create mode 100644 chatgpt_codex/README.md create mode 100644 chatgpt_codex/build.json create mode 100644 chatgpt_codex/config.yaml create mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh create mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh create mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh create mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh create mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services create mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run create mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type create mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal create mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-direct create mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-headroom create mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-login create mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell create mode 100644 chatgpt_codex/updater.json diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md new file mode 100644 index 0000000000..266f633c4d --- /dev/null +++ b/chatgpt_codex/CHANGELOG.md @@ -0,0 +1,12 @@ +## 0.144.3-3 (14-07-2026) +- Minor bugs fixed +## 0.144.3-2 (14-07-2026) + +- Initial ChatGPT Codex add-on. +- Added a persistent, administrator-only Home Assistant ingress terminal backed by tmux. +- Made `headroom wrap codex` the default launch path. +- Configured Docker builds to install the latest stable Codex, Headroom, RTK, ttyd, and Rust toolchain versions without hard-coded tool version pins. +- Added RTK native Codex initialization and savings reporting. +- Added device-code authentication and direct Codex fallback helpers. +- Added persistent configuration, GitHub CLI integration, mount support, and safe defaults. +- Made the default workspace follow a custom `data_location`. diff --git a/chatgpt_codex/Dockerfile b/chatgpt_codex/Dockerfile new file mode 100644 index 0000000000..7288a6ae0b --- /dev/null +++ b/chatgpt_codex/Dockerfile @@ -0,0 +1,157 @@ +#============================# +# ALEXBELGIUM'S DOCKERFILE # +#============================# +#=== Home Assistant Addon ===# + +################# +# 1 Build Image # +################# + +ARG BUILD_FROM +ARG BUILD_VERSION + +FROM rust:bookworm AS rtk-builder +RUN set -eux; \ + rtk_version="$(git ls-remote --tags --refs --sort=-v:refname \ + https://github.com/rtk-ai/rtk.git 'refs/tags/v*' \ + | awk -F/ '$3 ~ /^v[0-9]+\.[0-9]+\.[0-9]+$/ { print $3; exit }')"; \ + test -n "$rtk_version"; \ + git clone --depth 1 --branch "$rtk_version" https://github.com/rtk-ai/rtk.git /src/rtk; \ + cd /src/rtk; \ + cargo build --release --locked; \ + install -D -m 0755 target/release/rtk /out/rtk; \ + /out/rtk --version + +FROM ${BUILD_FROM} + +################## +# 2 Modify Image # +################## + +ENV S6_CMD_WAIT_FOR_SERVICES=1 \ + S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ + S6_SERVICES_GRACETIME=0 \ + HEADROOM_CONTEXT_TOOL=rtk + +USER root +VOLUME [ "/sys/fs/cgroup" ] + +ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" + +################## +# 3 Install apps # +################## + +COPY rootfs/ / +RUN find /etc/cont-init.d /etc/s6-overlay /usr/local/bin \ + -type f \( -name "*.sh" -o -name "run" -o -name "finish" -o -path "/usr/local/bin/*" \) \ + -print -exec chmod +x {} \; + +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + ca-certificates \ + curl \ + git \ + gh \ + jq \ + less \ + nano \ + openssh-client \ + python3-pip \ + ripgrep \ + tmux && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# Install the latest stable official Codex static binary for the target architecture. +RUN set -eux; \ + case "$(dpkg --print-architecture)" in \ + amd64) codex_arch="x86_64" ;; \ + arm64) codex_arch="aarch64" ;; \ + *) echo "Unsupported architecture: $(dpkg --print-architecture)" >&2; exit 1 ;; \ + esac; \ + archive="/tmp/codex.tar.gz"; \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o "$archive" \ + "https://github.com/openai/codex/releases/latest/download/codex-${codex_arch}-unknown-linux-musl.tar.gz"; \ + tar -xzf "$archive" -C /tmp; \ + install -m 0755 "/tmp/codex-${codex_arch}-unknown-linux-musl" /usr/local/bin/codex; \ + rm -f "$archive" "/tmp/codex-${codex_arch}-unknown-linux-musl"; \ + codex --version + +# Install the latest stable ttyd binary for the Home Assistant ingress terminal. +RUN set -eux; \ + case "$(dpkg --print-architecture)" in \ + amd64) ttyd_arch="x86_64" ;; \ + arm64) ttyd_arch="aarch64" ;; \ + *) echo "Unsupported architecture: $(dpkg --print-architecture)" >&2; exit 1 ;; \ + esac; \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o /usr/local/bin/ttyd \ + "https://github.com/tsl0922/ttyd/releases/latest/download/ttyd.${ttyd_arch}"; \ + chmod 0755 /usr/local/bin/ttyd; \ + ttyd --version + +COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk +RUN rtk --version && \ + pip3 install --upgrade --break-system-packages --no-cache-dir "headroom-ai[proxy,code,mcp]" && \ + headroom --version + +ARG MODULES="00-banner.sh 00-global_var.sh 01-custom_script.sh 00-local_mounts.sh 00-smb_mounts.sh 90-dns_set.sh" +RUN curl -fsSL --retry 3 --retry-delay 2 \ + -o /ha_automodules.sh "${TEMPLATE_BASE_URL}/ha_automodules.sh" && \ + chmod 744 /ha_automodules.sh && \ + /ha_automodules.sh "$MODULES" && \ + rm /ha_automodules.sh + +################ +# 4 Entrypoint # +################ + +RUN curl -fsSL --retry 3 --retry-delay 2 \ + -o /ha_entrypoint.sh "${TEMPLATE_BASE_URL}/ha_entrypoint.sh" && \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o /usr/local/lib/bashio-standalone.sh "${TEMPLATE_BASE_URL}/bashio-standalone.sh" && \ + chmod 0777 /ha_entrypoint.sh && \ + chmod 0755 /usr/local/lib/bashio-standalone.sh + +ENTRYPOINT [ "/usr/bin/env" ] +CMD [ "/ha_entrypoint.sh" ] + +############ +# 5 Labels # +############ + +ARG BUILD_ARCH +ARG BUILD_DATE +ARG BUILD_DESCRIPTION +ARG BUILD_NAME +ARG BUILD_REF +ARG BUILD_REPOSITORY +ARG BUILD_VERSION +ENV BUILD_VERSION="${BUILD_VERSION}" +LABEL \ + io.hass.name="${BUILD_NAME}" \ + io.hass.description="${BUILD_DESCRIPTION}" \ + io.hass.arch="${BUILD_ARCH}" \ + io.hass.type="addon" \ + io.hass.version=${BUILD_VERSION} \ + maintainer="alexbelgium (https://github.com/alexbelgium)" \ + org.opencontainers.image.title="${BUILD_NAME}" \ + org.opencontainers.image.description="${BUILD_DESCRIPTION}" \ + org.opencontainers.image.vendor="Home Assistant Add-ons" \ + org.opencontainers.image.authors="alexbelgium (https://github.com/alexbelgium)" \ + org.opencontainers.image.licenses="MIT" \ + org.opencontainers.image.url="https://github.com/alexbelgium" \ + org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \ + org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/master/chatgpt_codex/README.md" \ + org.opencontainers.image.created=${BUILD_DATE} \ + org.opencontainers.image.revision=${BUILD_REF} \ + org.opencontainers.image.version=${BUILD_VERSION} + +################# +# 6 Healthcheck # +################# + +HEALTHCHECK --interval=30s --timeout=5s --start-period=30s \ + CMD curl -fsS http://127.0.0.1:7681/ > /dev/null || exit 1 diff --git a/chatgpt_codex/README.md b/chatgpt_codex/README.md new file mode 100644 index 0000000000..4b11570b7f --- /dev/null +++ b/chatgpt_codex/README.md @@ -0,0 +1,112 @@ +# Home Assistant add-on: ChatGPT Codex + +![Supports aarch64 Architecture][aarch64-shield] +![Supports amd64 Architecture][amd64-shield] +![Project Maintenance][maintenance-shield] + +Run the official OpenAI Codex CLI in a persistent Home Assistant ingress terminal. The optimized path uses `headroom wrap codex`, with RTK handling command-output compression before results reach Codex. + +> The repository already contains an unrelated add-on named **Codex** for comic archives. This coding-agent add-on therefore uses the slug `chatgpt_codex`. + +## Features + +- Latest stable Codex, Headroom, RTK, ttyd, and Rust toolchain versions are resolved during every Docker build; tool versions are not pinned in the Dockerfile. +- Official Codex CLI static binary for `amd64` and `aarch64`. +- Home Assistant authenticated, administrator-only ingress; no unauthenticated terminal port is exposed. +- Persistent `$HOME`, Codex authentication, settings, sessions, Headroom state, and RTK statistics. +- Persistent `tmux` session that survives browser disconnects. +- `headroom wrap codex` as the default launch path. +- Baked-in RTK with native Codex initialization. +- Optional Headroom output shaping and code-aware compression. +- Direct Codex fallback for troubleshooting. +- Device-code login helper designed for a remote or headless container. +- Baked-in Git, GitHub CLI, ripgrep, jq, SSH client, and common terminal tools. +- Optional GitHub CLI authentication and Git author configuration. +- Optional extra apt and pip packages. +- Local and SMB mount support through the repository standard modules. + +## Installation and first login + +1. Install **ChatGPT Codex** from this add-on repository. +2. Keep the default `data_location` and `workspace`, or select writable mounted paths. +3. Start the add-on and open its web UI. +4. Codex starts automatically through Headroom. +5. When prompted to authenticate, follow the device-code instructions. You can also exit Codex and run: + +```shell +codex-login +``` + +Codex supports ChatGPT sign-in and API-key authentication. The device-code flow is the recommended option for this headless add-on. + +## Launch commands + +Optimized default: + +```shell +codex-headroom +``` + +This runs: + +```shell +headroom wrap codex +``` + +Headroom starts its local proxy, configures Codex routing and MCP support, and uses RTK as the CLI context tool. + +Direct troubleshooting path: + +```shell +codex-direct +``` + +Check optimization status and measured savings: + +```shell +headroom doctor +headroom perf +rtk gain +``` + +## Persistence + +The terminal attaches every browser connection to the same `tmux` session. Closing the browser detaches the client but does not stop Codex or commands running in the session. + +Persistent data is stored below `data_location`: + +- Codex state: `~/.codex` +- Headroom state and metrics: `~/.headroom` +- RTK state: its normal paths below the persistent home +- Default workspace: `~/workspace` + +## Options + +| Option | Default | Description | +| --- | --- | --- | +| `data_location` | `/data/data` | Persistent home. Must be below `/data`, `/share`, `/media`, `/config`, or `/mnt`. | +| `workspace` | `/workspace` | Initial project directory. Leave empty to follow `data_location`. | +| `PUID` / `PGID` | `0` / `0` | Runtime user and group used by the LinuxServer `abc` account. | +| `TZ` | | Optional timezone, for example `Europe/Brussels`. | +| `auto_start_codex` | `true` | Start Codex automatically when the tmux session is first created. | +| `use_headroom` | `true` | Use `headroom wrap codex`; disabling this starts Codex directly. | +| `headroom_output_shaper` | `true` | Enable Headroom output-token shaping. | +| `headroom_code_aware` | `true` | Enable Headroom AST-aware code compression. | +| `github_token` | | Authenticate GitHub CLI and Git operations. | +| `github_username` / `github_email` | | Configure the global Git author. | +| `additional_apps` | | Comma-separated Debian packages installed at startup. | +| `additional_pip` | | Comma-separated Python packages installed at startup. | +| `localdisks` / `networkdisks` | | Optional local-disk and SMB mounts supported by the repository modules. | +| `env_vars` | `[]` | Additional environment variables exported in the container. | + +Configuration changes affecting the launch command apply to a newly created tmux session. To recreate it, exit Codex and run `tmux kill-session -t codex`, then reopen the add-on web UI. + +## Security + +The add-on deliberately does not enable Codex approval or sandbox bypass flags. Codex can execute commands and edit files available inside the configured workspace, so only mount locations you intend it to access. + +The terminal is exposed only through Home Assistant administrator-only ingress. Do not add an unauthenticated direct port mapping. Treat `github_token`, Codex authentication data, and the persistent home as secrets and include them only in trusted backups. + +[aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg +[amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg +[maintenance-shield]: https://img.shields.io/maintenance/yes/2026.svg diff --git a/chatgpt_codex/build.json b/chatgpt_codex/build.json new file mode 100644 index 0000000000..e144598697 --- /dev/null +++ b/chatgpt_codex/build.json @@ -0,0 +1,6 @@ +{ + "build_from": { + "aarch64": "ghcr.io/linuxserver/baseimage-debian:arm64v8-bookworm", + "amd64": "ghcr.io/linuxserver/baseimage-debian:amd64-bookworm" + } +} diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml new file mode 100644 index 0000000000..773c9c6381 --- /dev/null +++ b/chatgpt_codex/config.yaml @@ -0,0 +1,68 @@ +arch: + - aarch64 + - amd64 +description: "Persistent OpenAI Codex web terminal optimized with Headroom and RTK" +devices: + - /dev/fuse +environment: + HOME: /data/data + PGID: "0" + PUID: "0" + TERM: xterm-256color +image: ghcr.io/alexbelgium/chatgpt_codex-{arch} +ingress: true +ingress_port: 7681 +ingress_stream: true +init: false +map: + - addon_config:rw + - share:rw + - media:rw + - ssl +name: ChatGPT Codex +options: + env_vars: [] + DNS_server: 8.8.8.8 + data_location: /data/data + workspace: "" + PUID: 0 + PGID: 0 + auto_start_codex: true + use_headroom: true + headroom_output_shaper: true + headroom_code_aware: true + github_token: "" + github_username: "" + github_email: "" + additional_apps: "" + additional_pip: "" +panel_icon: mdi:code-braces-box +privileged: + - SYS_ADMIN + - DAC_READ_SEARCH +schema: + env_vars: + - name: match(^[A-Za-z0-9_]+$) + value: str? + DNS_server: str? + data_location: str? + workspace: str? + PUID: int + PGID: int + TZ: match([A-Z][a-z]*./[A-Z][a-z]*.)? + auto_start_codex: bool + use_headroom: bool + headroom_output_shaper: bool + headroom_code_aware: bool + github_token: password? + github_username: str? + github_email: str? + additional_apps: str? + additional_pip: str? + localdisks: str? + networkdisks: str? +slug: chatgpt_codex +tmpfs: true +udev: true +url: https://github.com/alexbelgium/hassio-addons +version: "0.144.3-3" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh b/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh new file mode 100755 index 0000000000..e9a763da7e --- /dev/null +++ b/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh @@ -0,0 +1,46 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +PUID="$(bashio::config 'PUID')" +PGID="$(bashio::config 'PGID')" +LOCATION="$(bashio::config 'data_location')" + +if [ -z "$LOCATION" ] || [ "$LOCATION" = "null" ]; then + LOCATION="/data/data" +fi + +case "$LOCATION" in + /data/* | /share/* | /media/* | /config/* | /mnt/*) + ;; + *) + bashio::log.fatal "data_location must be below /data, /share, /media, /config, or /mnt" + exit 1 + ;; +esac + +if [ -L "$LOCATION" ]; then + bashio::log.fatal "data_location must not be a symbolic link" + exit 1 +fi + +bashio::log.info "Using persistent home: $LOCATION" +install -d -m 0750 -o "$PUID" -g "$PGID" "$LOCATION" +install -d -m 0750 -o "$PUID" -g "$PGID" "$LOCATION/.codex" "$LOCATION/.headroom" +install -d -m 0755 /tmp/cache /run/s6/container_environment + +sed -i "s|^\(abc:[^:]*:[^:]*:[^:]*:[^:]*:\)[^:]*|\1$LOCATION|" /etc/passwd + +for variable in HOME CODEX_HOME HEADROOM_WORKSPACE_DIR XDG_CACHE_HOME; do + case "$variable" in + HOME) value="$LOCATION" ;; + CODEX_HOME) value="$LOCATION/.codex" ;; + HEADROOM_WORKSPACE_DIR) value="$LOCATION/.headroom" ;; + XDG_CACHE_HOME) value="/tmp/cache" ;; + esac + printf '%s' "$value" > "/run/s6/container_environment/$variable" +done + +chown -R "$PUID:$PGID" "$LOCATION/.codex" "$LOCATION/.headroom" +chown "$PUID:$PGID" "$LOCATION" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh b/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh new file mode 100755 index 0000000000..e84fe7d441 --- /dev/null +++ b/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh @@ -0,0 +1,33 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +if bashio::config.has_value 'additional_apps'; then + packages="$(bashio::config 'additional_apps')" + apt-get update -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 + for package in ${packages//,/ }; do + bashio::log.info "Installing apt package: $package" + apt-get install -y --no-install-recommends "$package" + done + apt-get clean + rm -rf /var/lib/apt/lists/* +fi + +if bashio::config.has_value 'additional_pip'; then + packages="$(bashio::config 'additional_pip')" + for package in ${packages//,/ }; do + bashio::log.info "Installing pip package: $package" + pip3 install --break-system-packages "$package" + done +fi + +if bashio::config.has_value 'TZ'; then + timezone="$(bashio::config 'TZ')" + if [ ! -e "/usr/share/zoneinfo/$timezone" ]; then + bashio::log.fatal "Invalid timezone: $timezone" + exit 1 + fi + ln -snf "/usr/share/zoneinfo/$timezone" /etc/localtime + printf '%s\n' "$timezone" > /etc/timezone +fi diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh b/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh new file mode 100755 index 0000000000..5b4cac52f8 --- /dev/null +++ b/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh @@ -0,0 +1,55 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +PUID="$(bashio::config 'PUID')" +PGID="$(bashio::config 'PGID')" + +if ! command -v codex > /dev/null 2>&1; then + bashio::log.fatal "Codex CLI is not available" + exit 1 +fi +if ! command -v headroom > /dev/null 2>&1; then + bashio::log.fatal "Headroom is not available" + exit 1 +fi +if ! command -v rtk > /dev/null 2>&1; then + bashio::log.fatal "RTK is not available" + exit 1 +fi + +bashio::log.info "Codex: $(codex --version 2>&1 | head -n 1)" +bashio::log.info "Headroom: $(headroom --version 2>&1 | head -n 1)" +bashio::log.info "RTK: $(rtk --version 2>&1 | head -n 1)" + +# Configure RTK's native Codex integration ahead of the first wrapped session. +if ! s6-setuidgid abc env \ + HOME="$HOME" \ + CODEX_HOME="${CODEX_HOME:-$HOME/.codex}" \ + PATH="$HOME/.local/bin:/usr/local/bin:/usr/bin:/bin" \ + RTK_NONINTERACTIVE=1 \ + rtk init -g --codex; then + bashio::log.warning "RTK Codex initialization failed; Headroom will retry when wrapping Codex" +fi + +for key in CODEX_AUTO_START CODEX_USE_HEADROOM HEADROOM_OUTPUT_SHAPER HEADROOM_CODE_AWARE_ENABLED; do + case "$key" in + CODEX_AUTO_START) + bashio::config.true 'auto_start_codex' && value="1" || value="0" + ;; + CODEX_USE_HEADROOM) + bashio::config.true 'use_headroom' && value="1" || value="0" + ;; + HEADROOM_OUTPUT_SHAPER) + bashio::config.true 'headroom_output_shaper' && value="1" || value="0" + ;; + HEADROOM_CODE_AWARE_ENABLED) + bashio::config.true 'headroom_code_aware' && value="1" || value="0" + ;; + esac + printf '%s' "$value" > "/run/s6/container_environment/$key" +done +printf '%s' 'rtk' > /run/s6/container_environment/HEADROOM_CONTEXT_TOOL + +chown -R "$PUID:$PGID" "$HOME/.codex" "$HOME/.headroom" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh b/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh new file mode 100755 index 0000000000..63cbe8ad64 --- /dev/null +++ b/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh @@ -0,0 +1,29 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +if bashio::config.has_value 'github_username'; then + s6-setuidgid abc git config --global user.name "$(bashio::config 'github_username')" +fi + +if bashio::config.has_value 'github_email'; then + s6-setuidgid abc git config --global user.email "$(bashio::config 'github_email')" +fi + +if bashio::config.has_value 'github_token'; then + token="$(bashio::config 'github_token')" + if s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN gh auth status --hostname github.com > /dev/null 2>&1; then + bashio::log.info "GitHub CLI is already authenticated" + else + bashio::log.info "Authenticating GitHub CLI" + printf '%s\n' "$token" | s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN \ + gh auth login --hostname github.com --with-token || \ + bashio::log.warning "GitHub CLI authentication failed" + fi + s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN \ + gh auth setup-git --hostname github.com || \ + bashio::log.warning "GitHub CLI git credential setup failed" +else + bashio::log.info "Set github_token to authenticate gh and Git operations" +fi diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services new file mode 100644 index 0000000000..e69de29bb2 diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run new file mode 100644 index 0000000000..d89e100562 --- /dev/null +++ b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run @@ -0,0 +1,54 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +port=7681 +workspace="$(bashio::config 'workspace')" + +if [ -z "$workspace" ] || [ "$workspace" = "null" ]; then + workspace="$HOME/workspace" +fi + +if [[ "$workspace" != /* ]]; then + bashio::log.fatal "workspace must be an absolute path" + exec sleep infinity +fi +if [ -L "$workspace" ]; then + bashio::log.fatal "workspace must not be a symbolic link" + exec sleep infinity +fi + +workspace="$(realpath -m -- "$workspace")" +case "$workspace" in + "$HOME" | "$HOME"/* | /share/* | /media/* | /mnt/* | /data/* | /config/*) + ;; + *) + bashio::log.fatal "workspace must be below the persistent home, /share, /media, /mnt, /data, or /config" + exec sleep infinity + ;; +esac + +if [ ! -e "$workspace" ]; then + install -d -m 0750 -o abc -g abc "$workspace" +elif [ ! -d "$workspace" ]; then + bashio::log.fatal "workspace is not a directory: $workspace" + exec sleep infinity +fi + +if ! s6-setuidgid abc test -r "$workspace" || \ + ! s6-setuidgid abc test -w "$workspace" || \ + ! s6-setuidgid abc test -x "$workspace"; then + bashio::log.fatal "workspace must be readable, writable, and searchable by user abc: $workspace" + exec sleep infinity +fi + +export CODEX_TERMINAL_WORKSPACE="$workspace" +bashio::log.info "Starting persistent Codex terminal on Home Assistant ingress port $port" +exec s6-setuidgid abc ttyd \ + -p "$port" \ + -W \ + -O \ + -t disableLeaveAlert=true \ + -t fontSize=14 \ + /usr/local/bin/codex-terminal-shell diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type new file mode 100644 index 0000000000..5883cff0cd --- /dev/null +++ b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type @@ -0,0 +1 @@ +longrun diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal new file mode 100644 index 0000000000..e69de29bb2 diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-direct b/chatgpt_codex/rootfs/usr/local/bin/codex-direct new file mode 100644 index 0000000000..a6eb886dcc --- /dev/null +++ b/chatgpt_codex/rootfs/usr/local/bin/codex-direct @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" +exec codex "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-headroom b/chatgpt_codex/rootfs/usr/local/bin/codex-headroom new file mode 100644 index 0000000000..1e86dc6102 --- /dev/null +++ b/chatgpt_codex/rootfs/usr/local/bin/codex-headroom @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +set -euo pipefail + +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" +export HEADROOM_CONTEXT_TOOL="rtk" + +if ! command -v headroom > /dev/null 2>&1; then + echo "Headroom is unavailable; launching Codex directly." >&2 + exec codex "$@" +fi + +if [ "$#" -eq 0 ]; then + exec headroom wrap codex +fi +exec headroom wrap codex -- "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-login b/chatgpt_codex/rootfs/usr/local/bin/codex-login new file mode 100644 index 0000000000..954f654a6e --- /dev/null +++ b/chatgpt_codex/rootfs/usr/local/bin/codex-login @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" +exec codex login --device-auth "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell b/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell new file mode 100644 index 0000000000..7e6d3cd972 --- /dev/null +++ b/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +set -euo pipefail + +export SHELL="/bin/bash" +export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" + +workspace="${CODEX_TERMINAL_WORKSPACE:-${HOME}/workspace}" +session_name="${CODEX_TMUX_SESSION:-codex}" + +if [ ! -d "$workspace" ]; then + echo "Codex workspace does not exist: $workspace" >&2 + exit 1 +fi + +new_session=0 +if ! tmux has-session -t "$session_name" 2> /dev/null; then + tmux new-session -d -s "$session_name" -c "$workspace" /bin/bash -l + new_session=1 +fi + +if [ "$new_session" -eq 1 ]; then + tmux send-keys -t "$session_name" \ + "printf '\\nChatGPT Codex add-on\\n login: codex-login\\n optimized: codex-headroom\\n direct: codex-direct\\n savings: rtk gain && headroom perf\\n\\n'" C-m + if [ "${CODEX_AUTO_START:-1}" = "1" ]; then + if [ "${CODEX_USE_HEADROOM:-1}" = "1" ]; then + tmux send-keys -t "$session_name" "codex-headroom" C-m + else + tmux send-keys -t "$session_name" "codex-direct" C-m + fi + fi +fi + +exec tmux attach-session -t "$session_name" diff --git a/chatgpt_codex/updater.json b/chatgpt_codex/updater.json new file mode 100644 index 0000000000..ad08b16d81 --- /dev/null +++ b/chatgpt_codex/updater.json @@ -0,0 +1,12 @@ +{ + "github_beta": false, + "github_fulltag": false, + "github_havingasset": true, + "github_tagfilter": "rust-v", + "last_update": "2026-07-14", + "repository": "alexbelgium/hassio-addons", + "slug": "chatgpt_codex", + "source": "github", + "upstream_repo": "openai/codex", + "upstream_version": "0.144.3" +} From aa1486c1d8fb47e7526d84aa241c6a3444714336 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 16:39:19 +0200 Subject: [PATCH 194/538] nobuild --- chatgpt_codex/CHANGELOG.md | 12 -- chatgpt_codex/Dockerfile | 157 ------------------ chatgpt_codex/README.md | 112 ------------- chatgpt_codex/build.json | 6 - chatgpt_codex/config.yaml | 68 -------- .../rootfs/etc/cont-init.d/20-folders.sh | 46 ----- .../etc/cont-init.d/80-configuration.sh | 33 ---- .../rootfs/etc/cont-init.d/82-codex-tools.sh | 55 ------ .../rootfs/etc/cont-init.d/83-github_cli.sh | 29 ---- .../dependencies.d/init-services | 0 .../s6-overlay/s6-rc.d/svc-codex-terminal/run | 54 ------ .../s6-rc.d/svc-codex-terminal/type | 1 - .../user/contents.d/svc-codex-terminal | 0 .../rootfs/usr/local/bin/codex-direct | 4 - .../rootfs/usr/local/bin/codex-headroom | 15 -- .../rootfs/usr/local/bin/codex-login | 4 - .../rootfs/usr/local/bin/codex-terminal-shell | 33 ---- chatgpt_codex/updater.json | 12 -- 18 files changed, 641 deletions(-) delete mode 100644 chatgpt_codex/CHANGELOG.md delete mode 100644 chatgpt_codex/Dockerfile delete mode 100644 chatgpt_codex/README.md delete mode 100644 chatgpt_codex/build.json delete mode 100644 chatgpt_codex/config.yaml delete mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh delete mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh delete mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh delete mode 100755 chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh delete mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services delete mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run delete mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type delete mode 100644 chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal delete mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-direct delete mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-headroom delete mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-login delete mode 100644 chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell delete mode 100644 chatgpt_codex/updater.json diff --git a/chatgpt_codex/CHANGELOG.md b/chatgpt_codex/CHANGELOG.md deleted file mode 100644 index 266f633c4d..0000000000 --- a/chatgpt_codex/CHANGELOG.md +++ /dev/null @@ -1,12 +0,0 @@ -## 0.144.3-3 (14-07-2026) -- Minor bugs fixed -## 0.144.3-2 (14-07-2026) - -- Initial ChatGPT Codex add-on. -- Added a persistent, administrator-only Home Assistant ingress terminal backed by tmux. -- Made `headroom wrap codex` the default launch path. -- Configured Docker builds to install the latest stable Codex, Headroom, RTK, ttyd, and Rust toolchain versions without hard-coded tool version pins. -- Added RTK native Codex initialization and savings reporting. -- Added device-code authentication and direct Codex fallback helpers. -- Added persistent configuration, GitHub CLI integration, mount support, and safe defaults. -- Made the default workspace follow a custom `data_location`. diff --git a/chatgpt_codex/Dockerfile b/chatgpt_codex/Dockerfile deleted file mode 100644 index 7288a6ae0b..0000000000 --- a/chatgpt_codex/Dockerfile +++ /dev/null @@ -1,157 +0,0 @@ -#============================# -# ALEXBELGIUM'S DOCKERFILE # -#============================# -#=== Home Assistant Addon ===# - -################# -# 1 Build Image # -################# - -ARG BUILD_FROM -ARG BUILD_VERSION - -FROM rust:bookworm AS rtk-builder -RUN set -eux; \ - rtk_version="$(git ls-remote --tags --refs --sort=-v:refname \ - https://github.com/rtk-ai/rtk.git 'refs/tags/v*' \ - | awk -F/ '$3 ~ /^v[0-9]+\.[0-9]+\.[0-9]+$/ { print $3; exit }')"; \ - test -n "$rtk_version"; \ - git clone --depth 1 --branch "$rtk_version" https://github.com/rtk-ai/rtk.git /src/rtk; \ - cd /src/rtk; \ - cargo build --release --locked; \ - install -D -m 0755 target/release/rtk /out/rtk; \ - /out/rtk --version - -FROM ${BUILD_FROM} - -################## -# 2 Modify Image # -################## - -ENV S6_CMD_WAIT_FOR_SERVICES=1 \ - S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ - S6_SERVICES_GRACETIME=0 \ - HEADROOM_CONTEXT_TOOL=rtk - -USER root -VOLUME [ "/sys/fs/cgroup" ] - -ARG TEMPLATE_BASE_URL="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates" - -################## -# 3 Install apps # -################## - -COPY rootfs/ / -RUN find /etc/cont-init.d /etc/s6-overlay /usr/local/bin \ - -type f \( -name "*.sh" -o -name "run" -o -name "finish" -o -path "/usr/local/bin/*" \) \ - -print -exec chmod +x {} \; - -RUN apt-get update && \ - apt-get install -y --no-install-recommends \ - ca-certificates \ - curl \ - git \ - gh \ - jq \ - less \ - nano \ - openssh-client \ - python3-pip \ - ripgrep \ - tmux && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* - -# Install the latest stable official Codex static binary for the target architecture. -RUN set -eux; \ - case "$(dpkg --print-architecture)" in \ - amd64) codex_arch="x86_64" ;; \ - arm64) codex_arch="aarch64" ;; \ - *) echo "Unsupported architecture: $(dpkg --print-architecture)" >&2; exit 1 ;; \ - esac; \ - archive="/tmp/codex.tar.gz"; \ - curl -fsSL --retry 3 --retry-delay 2 \ - -o "$archive" \ - "https://github.com/openai/codex/releases/latest/download/codex-${codex_arch}-unknown-linux-musl.tar.gz"; \ - tar -xzf "$archive" -C /tmp; \ - install -m 0755 "/tmp/codex-${codex_arch}-unknown-linux-musl" /usr/local/bin/codex; \ - rm -f "$archive" "/tmp/codex-${codex_arch}-unknown-linux-musl"; \ - codex --version - -# Install the latest stable ttyd binary for the Home Assistant ingress terminal. -RUN set -eux; \ - case "$(dpkg --print-architecture)" in \ - amd64) ttyd_arch="x86_64" ;; \ - arm64) ttyd_arch="aarch64" ;; \ - *) echo "Unsupported architecture: $(dpkg --print-architecture)" >&2; exit 1 ;; \ - esac; \ - curl -fsSL --retry 3 --retry-delay 2 \ - -o /usr/local/bin/ttyd \ - "https://github.com/tsl0922/ttyd/releases/latest/download/ttyd.${ttyd_arch}"; \ - chmod 0755 /usr/local/bin/ttyd; \ - ttyd --version - -COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk -RUN rtk --version && \ - pip3 install --upgrade --break-system-packages --no-cache-dir "headroom-ai[proxy,code,mcp]" && \ - headroom --version - -ARG MODULES="00-banner.sh 00-global_var.sh 01-custom_script.sh 00-local_mounts.sh 00-smb_mounts.sh 90-dns_set.sh" -RUN curl -fsSL --retry 3 --retry-delay 2 \ - -o /ha_automodules.sh "${TEMPLATE_BASE_URL}/ha_automodules.sh" && \ - chmod 744 /ha_automodules.sh && \ - /ha_automodules.sh "$MODULES" && \ - rm /ha_automodules.sh - -################ -# 4 Entrypoint # -################ - -RUN curl -fsSL --retry 3 --retry-delay 2 \ - -o /ha_entrypoint.sh "${TEMPLATE_BASE_URL}/ha_entrypoint.sh" && \ - curl -fsSL --retry 3 --retry-delay 2 \ - -o /usr/local/lib/bashio-standalone.sh "${TEMPLATE_BASE_URL}/bashio-standalone.sh" && \ - chmod 0777 /ha_entrypoint.sh && \ - chmod 0755 /usr/local/lib/bashio-standalone.sh - -ENTRYPOINT [ "/usr/bin/env" ] -CMD [ "/ha_entrypoint.sh" ] - -############ -# 5 Labels # -############ - -ARG BUILD_ARCH -ARG BUILD_DATE -ARG BUILD_DESCRIPTION -ARG BUILD_NAME -ARG BUILD_REF -ARG BUILD_REPOSITORY -ARG BUILD_VERSION -ENV BUILD_VERSION="${BUILD_VERSION}" -LABEL \ - io.hass.name="${BUILD_NAME}" \ - io.hass.description="${BUILD_DESCRIPTION}" \ - io.hass.arch="${BUILD_ARCH}" \ - io.hass.type="addon" \ - io.hass.version=${BUILD_VERSION} \ - maintainer="alexbelgium (https://github.com/alexbelgium)" \ - org.opencontainers.image.title="${BUILD_NAME}" \ - org.opencontainers.image.description="${BUILD_DESCRIPTION}" \ - org.opencontainers.image.vendor="Home Assistant Add-ons" \ - org.opencontainers.image.authors="alexbelgium (https://github.com/alexbelgium)" \ - org.opencontainers.image.licenses="MIT" \ - org.opencontainers.image.url="https://github.com/alexbelgium" \ - org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \ - org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/master/chatgpt_codex/README.md" \ - org.opencontainers.image.created=${BUILD_DATE} \ - org.opencontainers.image.revision=${BUILD_REF} \ - org.opencontainers.image.version=${BUILD_VERSION} - -################# -# 6 Healthcheck # -################# - -HEALTHCHECK --interval=30s --timeout=5s --start-period=30s \ - CMD curl -fsS http://127.0.0.1:7681/ > /dev/null || exit 1 diff --git a/chatgpt_codex/README.md b/chatgpt_codex/README.md deleted file mode 100644 index 4b11570b7f..0000000000 --- a/chatgpt_codex/README.md +++ /dev/null @@ -1,112 +0,0 @@ -# Home Assistant add-on: ChatGPT Codex - -![Supports aarch64 Architecture][aarch64-shield] -![Supports amd64 Architecture][amd64-shield] -![Project Maintenance][maintenance-shield] - -Run the official OpenAI Codex CLI in a persistent Home Assistant ingress terminal. The optimized path uses `headroom wrap codex`, with RTK handling command-output compression before results reach Codex. - -> The repository already contains an unrelated add-on named **Codex** for comic archives. This coding-agent add-on therefore uses the slug `chatgpt_codex`. - -## Features - -- Latest stable Codex, Headroom, RTK, ttyd, and Rust toolchain versions are resolved during every Docker build; tool versions are not pinned in the Dockerfile. -- Official Codex CLI static binary for `amd64` and `aarch64`. -- Home Assistant authenticated, administrator-only ingress; no unauthenticated terminal port is exposed. -- Persistent `$HOME`, Codex authentication, settings, sessions, Headroom state, and RTK statistics. -- Persistent `tmux` session that survives browser disconnects. -- `headroom wrap codex` as the default launch path. -- Baked-in RTK with native Codex initialization. -- Optional Headroom output shaping and code-aware compression. -- Direct Codex fallback for troubleshooting. -- Device-code login helper designed for a remote or headless container. -- Baked-in Git, GitHub CLI, ripgrep, jq, SSH client, and common terminal tools. -- Optional GitHub CLI authentication and Git author configuration. -- Optional extra apt and pip packages. -- Local and SMB mount support through the repository standard modules. - -## Installation and first login - -1. Install **ChatGPT Codex** from this add-on repository. -2. Keep the default `data_location` and `workspace`, or select writable mounted paths. -3. Start the add-on and open its web UI. -4. Codex starts automatically through Headroom. -5. When prompted to authenticate, follow the device-code instructions. You can also exit Codex and run: - -```shell -codex-login -``` - -Codex supports ChatGPT sign-in and API-key authentication. The device-code flow is the recommended option for this headless add-on. - -## Launch commands - -Optimized default: - -```shell -codex-headroom -``` - -This runs: - -```shell -headroom wrap codex -``` - -Headroom starts its local proxy, configures Codex routing and MCP support, and uses RTK as the CLI context tool. - -Direct troubleshooting path: - -```shell -codex-direct -``` - -Check optimization status and measured savings: - -```shell -headroom doctor -headroom perf -rtk gain -``` - -## Persistence - -The terminal attaches every browser connection to the same `tmux` session. Closing the browser detaches the client but does not stop Codex or commands running in the session. - -Persistent data is stored below `data_location`: - -- Codex state: `~/.codex` -- Headroom state and metrics: `~/.headroom` -- RTK state: its normal paths below the persistent home -- Default workspace: `~/workspace` - -## Options - -| Option | Default | Description | -| --- | --- | --- | -| `data_location` | `/data/data` | Persistent home. Must be below `/data`, `/share`, `/media`, `/config`, or `/mnt`. | -| `workspace` | `/workspace` | Initial project directory. Leave empty to follow `data_location`. | -| `PUID` / `PGID` | `0` / `0` | Runtime user and group used by the LinuxServer `abc` account. | -| `TZ` | | Optional timezone, for example `Europe/Brussels`. | -| `auto_start_codex` | `true` | Start Codex automatically when the tmux session is first created. | -| `use_headroom` | `true` | Use `headroom wrap codex`; disabling this starts Codex directly. | -| `headroom_output_shaper` | `true` | Enable Headroom output-token shaping. | -| `headroom_code_aware` | `true` | Enable Headroom AST-aware code compression. | -| `github_token` | | Authenticate GitHub CLI and Git operations. | -| `github_username` / `github_email` | | Configure the global Git author. | -| `additional_apps` | | Comma-separated Debian packages installed at startup. | -| `additional_pip` | | Comma-separated Python packages installed at startup. | -| `localdisks` / `networkdisks` | | Optional local-disk and SMB mounts supported by the repository modules. | -| `env_vars` | `[]` | Additional environment variables exported in the container. | - -Configuration changes affecting the launch command apply to a newly created tmux session. To recreate it, exit Codex and run `tmux kill-session -t codex`, then reopen the add-on web UI. - -## Security - -The add-on deliberately does not enable Codex approval or sandbox bypass flags. Codex can execute commands and edit files available inside the configured workspace, so only mount locations you intend it to access. - -The terminal is exposed only through Home Assistant administrator-only ingress. Do not add an unauthenticated direct port mapping. Treat `github_token`, Codex authentication data, and the persistent home as secrets and include them only in trusted backups. - -[aarch64-shield]: https://img.shields.io/badge/aarch64-yes-green.svg -[amd64-shield]: https://img.shields.io/badge/amd64-yes-green.svg -[maintenance-shield]: https://img.shields.io/maintenance/yes/2026.svg diff --git a/chatgpt_codex/build.json b/chatgpt_codex/build.json deleted file mode 100644 index e144598697..0000000000 --- a/chatgpt_codex/build.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "build_from": { - "aarch64": "ghcr.io/linuxserver/baseimage-debian:arm64v8-bookworm", - "amd64": "ghcr.io/linuxserver/baseimage-debian:amd64-bookworm" - } -} diff --git a/chatgpt_codex/config.yaml b/chatgpt_codex/config.yaml deleted file mode 100644 index 773c9c6381..0000000000 --- a/chatgpt_codex/config.yaml +++ /dev/null @@ -1,68 +0,0 @@ -arch: - - aarch64 - - amd64 -description: "Persistent OpenAI Codex web terminal optimized with Headroom and RTK" -devices: - - /dev/fuse -environment: - HOME: /data/data - PGID: "0" - PUID: "0" - TERM: xterm-256color -image: ghcr.io/alexbelgium/chatgpt_codex-{arch} -ingress: true -ingress_port: 7681 -ingress_stream: true -init: false -map: - - addon_config:rw - - share:rw - - media:rw - - ssl -name: ChatGPT Codex -options: - env_vars: [] - DNS_server: 8.8.8.8 - data_location: /data/data - workspace: "" - PUID: 0 - PGID: 0 - auto_start_codex: true - use_headroom: true - headroom_output_shaper: true - headroom_code_aware: true - github_token: "" - github_username: "" - github_email: "" - additional_apps: "" - additional_pip: "" -panel_icon: mdi:code-braces-box -privileged: - - SYS_ADMIN - - DAC_READ_SEARCH -schema: - env_vars: - - name: match(^[A-Za-z0-9_]+$) - value: str? - DNS_server: str? - data_location: str? - workspace: str? - PUID: int - PGID: int - TZ: match([A-Z][a-z]*./[A-Z][a-z]*.)? - auto_start_codex: bool - use_headroom: bool - headroom_output_shaper: bool - headroom_code_aware: bool - github_token: password? - github_username: str? - github_email: str? - additional_apps: str? - additional_pip: str? - localdisks: str? - networkdisks: str? -slug: chatgpt_codex -tmpfs: true -udev: true -url: https://github.com/alexbelgium/hassio-addons -version: "0.144.3-3" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh b/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh deleted file mode 100755 index e9a763da7e..0000000000 --- a/chatgpt_codex/rootfs/etc/cont-init.d/20-folders.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -PUID="$(bashio::config 'PUID')" -PGID="$(bashio::config 'PGID')" -LOCATION="$(bashio::config 'data_location')" - -if [ -z "$LOCATION" ] || [ "$LOCATION" = "null" ]; then - LOCATION="/data/data" -fi - -case "$LOCATION" in - /data/* | /share/* | /media/* | /config/* | /mnt/*) - ;; - *) - bashio::log.fatal "data_location must be below /data, /share, /media, /config, or /mnt" - exit 1 - ;; -esac - -if [ -L "$LOCATION" ]; then - bashio::log.fatal "data_location must not be a symbolic link" - exit 1 -fi - -bashio::log.info "Using persistent home: $LOCATION" -install -d -m 0750 -o "$PUID" -g "$PGID" "$LOCATION" -install -d -m 0750 -o "$PUID" -g "$PGID" "$LOCATION/.codex" "$LOCATION/.headroom" -install -d -m 0755 /tmp/cache /run/s6/container_environment - -sed -i "s|^\(abc:[^:]*:[^:]*:[^:]*:[^:]*:\)[^:]*|\1$LOCATION|" /etc/passwd - -for variable in HOME CODEX_HOME HEADROOM_WORKSPACE_DIR XDG_CACHE_HOME; do - case "$variable" in - HOME) value="$LOCATION" ;; - CODEX_HOME) value="$LOCATION/.codex" ;; - HEADROOM_WORKSPACE_DIR) value="$LOCATION/.headroom" ;; - XDG_CACHE_HOME) value="/tmp/cache" ;; - esac - printf '%s' "$value" > "/run/s6/container_environment/$variable" -done - -chown -R "$PUID:$PGID" "$LOCATION/.codex" "$LOCATION/.headroom" -chown "$PUID:$PGID" "$LOCATION" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh b/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh deleted file mode 100755 index e84fe7d441..0000000000 --- a/chatgpt_codex/rootfs/etc/cont-init.d/80-configuration.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -if bashio::config.has_value 'additional_apps'; then - packages="$(bashio::config 'additional_apps')" - apt-get update -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 - for package in ${packages//,/ }; do - bashio::log.info "Installing apt package: $package" - apt-get install -y --no-install-recommends "$package" - done - apt-get clean - rm -rf /var/lib/apt/lists/* -fi - -if bashio::config.has_value 'additional_pip'; then - packages="$(bashio::config 'additional_pip')" - for package in ${packages//,/ }; do - bashio::log.info "Installing pip package: $package" - pip3 install --break-system-packages "$package" - done -fi - -if bashio::config.has_value 'TZ'; then - timezone="$(bashio::config 'TZ')" - if [ ! -e "/usr/share/zoneinfo/$timezone" ]; then - bashio::log.fatal "Invalid timezone: $timezone" - exit 1 - fi - ln -snf "/usr/share/zoneinfo/$timezone" /etc/localtime - printf '%s\n' "$timezone" > /etc/timezone -fi diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh b/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh deleted file mode 100755 index 5b4cac52f8..0000000000 --- a/chatgpt_codex/rootfs/etc/cont-init.d/82-codex-tools.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -PUID="$(bashio::config 'PUID')" -PGID="$(bashio::config 'PGID')" - -if ! command -v codex > /dev/null 2>&1; then - bashio::log.fatal "Codex CLI is not available" - exit 1 -fi -if ! command -v headroom > /dev/null 2>&1; then - bashio::log.fatal "Headroom is not available" - exit 1 -fi -if ! command -v rtk > /dev/null 2>&1; then - bashio::log.fatal "RTK is not available" - exit 1 -fi - -bashio::log.info "Codex: $(codex --version 2>&1 | head -n 1)" -bashio::log.info "Headroom: $(headroom --version 2>&1 | head -n 1)" -bashio::log.info "RTK: $(rtk --version 2>&1 | head -n 1)" - -# Configure RTK's native Codex integration ahead of the first wrapped session. -if ! s6-setuidgid abc env \ - HOME="$HOME" \ - CODEX_HOME="${CODEX_HOME:-$HOME/.codex}" \ - PATH="$HOME/.local/bin:/usr/local/bin:/usr/bin:/bin" \ - RTK_NONINTERACTIVE=1 \ - rtk init -g --codex; then - bashio::log.warning "RTK Codex initialization failed; Headroom will retry when wrapping Codex" -fi - -for key in CODEX_AUTO_START CODEX_USE_HEADROOM HEADROOM_OUTPUT_SHAPER HEADROOM_CODE_AWARE_ENABLED; do - case "$key" in - CODEX_AUTO_START) - bashio::config.true 'auto_start_codex' && value="1" || value="0" - ;; - CODEX_USE_HEADROOM) - bashio::config.true 'use_headroom' && value="1" || value="0" - ;; - HEADROOM_OUTPUT_SHAPER) - bashio::config.true 'headroom_output_shaper' && value="1" || value="0" - ;; - HEADROOM_CODE_AWARE_ENABLED) - bashio::config.true 'headroom_code_aware' && value="1" || value="0" - ;; - esac - printf '%s' "$value" > "/run/s6/container_environment/$key" -done -printf '%s' 'rtk' > /run/s6/container_environment/HEADROOM_CONTEXT_TOOL - -chown -R "$PUID:$PGID" "$HOME/.codex" "$HOME/.headroom" diff --git a/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh b/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh deleted file mode 100755 index 63cbe8ad64..0000000000 --- a/chatgpt_codex/rootfs/etc/cont-init.d/83-github_cli.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -if bashio::config.has_value 'github_username'; then - s6-setuidgid abc git config --global user.name "$(bashio::config 'github_username')" -fi - -if bashio::config.has_value 'github_email'; then - s6-setuidgid abc git config --global user.email "$(bashio::config 'github_email')" -fi - -if bashio::config.has_value 'github_token'; then - token="$(bashio::config 'github_token')" - if s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN gh auth status --hostname github.com > /dev/null 2>&1; then - bashio::log.info "GitHub CLI is already authenticated" - else - bashio::log.info "Authenticating GitHub CLI" - printf '%s\n' "$token" | s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN \ - gh auth login --hostname github.com --with-token || \ - bashio::log.warning "GitHub CLI authentication failed" - fi - s6-setuidgid abc env -u GH_TOKEN -u GITHUB_TOKEN \ - gh auth setup-git --hostname github.com || \ - bashio::log.warning "GitHub CLI git credential setup failed" -else - bashio::log.info "Set github_token to authenticate gh and Git operations" -fi diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/dependencies.d/init-services deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run deleted file mode 100644 index d89e100562..0000000000 --- a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/run +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -port=7681 -workspace="$(bashio::config 'workspace')" - -if [ -z "$workspace" ] || [ "$workspace" = "null" ]; then - workspace="$HOME/workspace" -fi - -if [[ "$workspace" != /* ]]; then - bashio::log.fatal "workspace must be an absolute path" - exec sleep infinity -fi -if [ -L "$workspace" ]; then - bashio::log.fatal "workspace must not be a symbolic link" - exec sleep infinity -fi - -workspace="$(realpath -m -- "$workspace")" -case "$workspace" in - "$HOME" | "$HOME"/* | /share/* | /media/* | /mnt/* | /data/* | /config/*) - ;; - *) - bashio::log.fatal "workspace must be below the persistent home, /share, /media, /mnt, /data, or /config" - exec sleep infinity - ;; -esac - -if [ ! -e "$workspace" ]; then - install -d -m 0750 -o abc -g abc "$workspace" -elif [ ! -d "$workspace" ]; then - bashio::log.fatal "workspace is not a directory: $workspace" - exec sleep infinity -fi - -if ! s6-setuidgid abc test -r "$workspace" || \ - ! s6-setuidgid abc test -w "$workspace" || \ - ! s6-setuidgid abc test -x "$workspace"; then - bashio::log.fatal "workspace must be readable, writable, and searchable by user abc: $workspace" - exec sleep infinity -fi - -export CODEX_TERMINAL_WORKSPACE="$workspace" -bashio::log.info "Starting persistent Codex terminal on Home Assistant ingress port $port" -exec s6-setuidgid abc ttyd \ - -p "$port" \ - -W \ - -O \ - -t disableLeaveAlert=true \ - -t fontSize=14 \ - /usr/local/bin/codex-terminal-shell diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type deleted file mode 100644 index 5883cff0cd..0000000000 --- a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/svc-codex-terminal/type +++ /dev/null @@ -1 +0,0 @@ -longrun diff --git a/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal b/chatgpt_codex/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/svc-codex-terminal deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-direct b/chatgpt_codex/rootfs/usr/local/bin/codex-direct deleted file mode 100644 index a6eb886dcc..0000000000 --- a/chatgpt_codex/rootfs/usr/local/bin/codex-direct +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" -exec codex "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-headroom b/chatgpt_codex/rootfs/usr/local/bin/codex-headroom deleted file mode 100644 index 1e86dc6102..0000000000 --- a/chatgpt_codex/rootfs/usr/local/bin/codex-headroom +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" -export HEADROOM_CONTEXT_TOOL="rtk" - -if ! command -v headroom > /dev/null 2>&1; then - echo "Headroom is unavailable; launching Codex directly." >&2 - exec codex "$@" -fi - -if [ "$#" -eq 0 ]; then - exec headroom wrap codex -fi -exec headroom wrap codex -- "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-login b/chatgpt_codex/rootfs/usr/local/bin/codex-login deleted file mode 100644 index 954f654a6e..0000000000 --- a/chatgpt_codex/rootfs/usr/local/bin/codex-login +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" -exec codex login --device-auth "$@" diff --git a/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell b/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell deleted file mode 100644 index 7e6d3cd972..0000000000 --- a/chatgpt_codex/rootfs/usr/local/bin/codex-terminal-shell +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -export SHELL="/bin/bash" -export PATH="${HOME}/.local/bin:/usr/local/bin:/usr/bin:/bin:${PATH:-}" - -workspace="${CODEX_TERMINAL_WORKSPACE:-${HOME}/workspace}" -session_name="${CODEX_TMUX_SESSION:-codex}" - -if [ ! -d "$workspace" ]; then - echo "Codex workspace does not exist: $workspace" >&2 - exit 1 -fi - -new_session=0 -if ! tmux has-session -t "$session_name" 2> /dev/null; then - tmux new-session -d -s "$session_name" -c "$workspace" /bin/bash -l - new_session=1 -fi - -if [ "$new_session" -eq 1 ]; then - tmux send-keys -t "$session_name" \ - "printf '\\nChatGPT Codex add-on\\n login: codex-login\\n optimized: codex-headroom\\n direct: codex-direct\\n savings: rtk gain && headroom perf\\n\\n'" C-m - if [ "${CODEX_AUTO_START:-1}" = "1" ]; then - if [ "${CODEX_USE_HEADROOM:-1}" = "1" ]; then - tmux send-keys -t "$session_name" "codex-headroom" C-m - else - tmux send-keys -t "$session_name" "codex-direct" C-m - fi - fi -fi - -exec tmux attach-session -t "$session_name" diff --git a/chatgpt_codex/updater.json b/chatgpt_codex/updater.json deleted file mode 100644 index ad08b16d81..0000000000 --- a/chatgpt_codex/updater.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "github_beta": false, - "github_fulltag": false, - "github_havingasset": true, - "github_tagfilter": "rust-v", - "last_update": "2026-07-14", - "repository": "alexbelgium/hassio-addons", - "slug": "chatgpt_codex", - "source": "github", - "upstream_repo": "openai/codex", - "upstream_version": "0.144.3" -} From e7921b822e5c604b30cf11e6c3ab458583ee7ebf Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 14 Jul 2026 16:52:15 +0200 Subject: [PATCH 195/538] fix(claude_desktop): correct HA MCP endpoint, harden config perms and chmod scope Home Assistant's MCP Server integration serves stateless Streamable HTTP at /api/mcp; mcp-proxy defaults to SSE, so the previous registration (SSE at /mcp_server/sse) could never attach. Pass --transport=streamablehttp --stateless and default ha_mcp_url to /api/mcp. Match managed MCP entries by binary basename outside $HOME so a base-image path change still updates them, while user-installed binaries under $HOME remain untouched. Resolve tokensave via command -v like the others. Write Claude config files 0600 (they hold the HA long-lived token in clear text) and scope the build-time chmod +x pass to the shipped script dirs. Docs: dashboard reachability wording, stale /config/data HOME, and the custom-script filename (claude_desktop.sh, per the $slug.sh template). Co-Authored-By: Claude Sonnet 5 --- claude_desktop/CHANGELOG.md | 6 ++-- claude_desktop/Dockerfile | 6 ++-- claude_desktop/README.md | 14 ++++---- claude_desktop/SIGN_IN.md | 6 ++-- claude_desktop/config.yaml | 4 +-- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 33 ++++++++++++++----- 6 files changed, 44 insertions(+), 25 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index bac60d1043..127a260bbd 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,11 +1,13 @@ -## 1.17 (14-07-2026) +## 1.18 (14-07-2026) - **Breaking:** remove the standalone Claude Code web terminal (ttyd/tmux service, port `7681`, and the `enable_terminal`, `terminal_username`, `terminal_password`, `terminal_workspace` options). The add-on is now built purely around Claude Desktop; Claude Code remains installed and powers Desktop cowork/dispatch sessions with the RTK hook, Caveman, and MCP servers intact. If the add-on refuses to start after the update, open its Configuration tab and re-save to drop the removed options. - Remove the `claude-direct` and `claude-headroom` terminal wrapper scripts and the unused `ha_smart_context` and `dangerously_skip_permissions` options. - Fix the Headroom dashboard being unreachable at `http://:8787/dashboard`: the supervised proxy only listened on `127.0.0.1`; it now binds `0.0.0.0` so the mapped port works. - Fix dispatch/remote sessions and sign-in persistence: install the missing `gnome-keyring` package. The existing keyring bootstrap silently no-oped without it, leaving Electron `safeStorage` unavailable ("cannot store allowlist cache"), so auth tokens and dispatch permission grants were lost on restart. - Add the tokensave code-intelligence MCP server (pinned 7.2.0, built from source like RTK), registered for both Claude Desktop and Claude Code; disable with `install_tokensave: false`. -- Implement the Home Assistant MCP bridge for real: `enable_ha_mcp` plus new `ha_mcp_url`/`ha_mcp_token` options register Home Assistant's MCP Server integration in Claude through `mcp-proxy`. +- Implement the Home Assistant MCP bridge for real: `enable_ha_mcp` plus new `ha_mcp_url`/`ha_mcp_token` options register Home Assistant's MCP Server integration in Claude through `mcp-proxy`, using the integration's stateless Streamable HTTP endpoint (`/api/mcp`). +- Write the Claude configuration files with `0600` permissions, since they hold the Home Assistant access token in clear text. +- Restrict the build-time `chmod +x` pass to the directories the add-on actually ships scripts in instead of traversing the whole image. - Register add-on-managed MCP servers in Claude Code's `~/.claude.json` as well as Claude Desktop's config, without clobbering user-customized entries. - Install `uv` and use it for the `additional_pip` option for much faster package installs. diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 1157d6d62e..e23b21540d 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -69,9 +69,11 @@ RUN curl -fsSL --retry 3 --retry-delay 2 \ # 3 Install apps # ################## -# Add rootfs +# Add rootfs. Only the directories this add-on ships scripts in are traversed, so the chmod +# cannot alter executables elsewhere in the image. COPY rootfs/ / -RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; +RUN find /etc/cont-init.d /etc/s6-overlay /defaults /usr/local/bin -type f \ + \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; # Uses /bin for compatibility purposes # hadolint ignore=DL4005 diff --git a/claude_desktop/README.md b/claude_desktop/README.md index bcb3064c8b..4967a19655 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -96,10 +96,10 @@ The Headroom dashboard is available at: http://:8787/dashboard ``` -through the default `8787/tcp` port mapping. Treat this endpoint as sensitive: -it serves your local network only — do not expose it directly to the public -internet, and unmap the port in the add-on **Network** section if you do not -want it reachable at all. +through the default `8787/tcp` port mapping. The dashboard is unauthenticated +and is reachable wherever Home Assistant publishes that port, so treat it as +sensitive: do not expose it directly to the public internet, and unmap the port +in the add-on **Network** section if you do not want it reachable at all. ## Home Assistant MCP bridge @@ -111,9 +111,9 @@ To let Claude query and control Home Assistant: 3. Set `enable_ha_mcp: true` and paste the token into `ha_mcp_token` in the add-on configuration, then restart the add-on. -The add-on bridges Claude to the integration's SSE endpoint with `mcp-proxy`. -Override `ha_mcp_url` only if your Home Assistant instance is not reachable as -`homeassistant:8123` from add-ons. +The add-on bridges Claude to the integration's stateless Streamable HTTP +endpoint (`/api/mcp`) with `mcp-proxy`. Override `ha_mcp_url` only if your Home +Assistant instance is not reachable as `homeassistant:8123` from add-ons. ## Custom scripts diff --git a/claude_desktop/SIGN_IN.md b/claude_desktop/SIGN_IN.md index 3e7c007565..78b717e8c1 100644 --- a/claude_desktop/SIGN_IN.md +++ b/claude_desktop/SIGN_IN.md @@ -54,7 +54,7 @@ magic link into the in-session Chromium (not a phone). - Add-on Configuration → `additional_apps: chromium`, restart (installed by `rootfs/etc/cont-init.d/80-configuration.sh`). - Add the two `xdg-settings`/`xdg-mime` commands to the custom script - `/addon_configs/db21ed7f_claude-desktop/claude-desktop.sh` (the image ships no standalone + `/addon_configs/db21ed7f_claude-desktop/claude_desktop.sh` (the image ships no standalone terminal). --- @@ -98,14 +98,14 @@ Claude Desktop uses. No extra `dbus-launch` is needed. then exposes the Secret Service and exports `GNOME_KEYRING_CONTROL`/`SSH_AUTH_SOCK`. - `--password-store=gnome-libsecret` forces Electron to use the libsecret backend instead of falling back to plaintext. -3. Persistence: the keyring DB lives in `$HOME/.local/share/keyrings/` and `HOME=/config/data` +3. Persistence: the keyring DB lives in `$HOME/.local/share/keyrings/` and `HOME=/data/data` (persistent add-on storage), so the empty-password login keyring survives restarts and is re-unlocked automatically each boot by the same `autostart` line — the sign-in then sticks. ### User-side workaround (no rebuild) - Add-on Configuration → `additional_apps: gnome-keyring, libsecret-1-0, dbus-x11`, restart. - Add the keyring-start lines above to the custom script - `/addon_configs/db21ed7f_claude-desktop/claude-desktop.sh`, and relaunch Claude Desktop + `/addon_configs/db21ed7f_claude-desktop/claude_desktop.sh`, and relaunch Claude Desktop with `--password-store=gnome-libsecret` (e.g. edit the in-session openbox autostart). --- diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 86cea61bdf..c6e563c9c0 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -42,7 +42,7 @@ options: auto_update: true github_email: "" enable_ha_mcp: false - ha_mcp_url: http://homeassistant:8123/mcp_server/sse + ha_mcp_url: http://homeassistant:8123/api/mcp ha_mcp_token: "" github_token: "" github_username: "" @@ -92,5 +92,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.17" +version: "1.18" video: true diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 3246dc2bae..17f6a2084a 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -48,7 +48,7 @@ HA_MCP_ENABLED=false HA_MCP_URL="" HA_MCP_TOKEN="" if bashio::config.true 'enable_ha_mcp'; then - HA_MCP_URL="$(bashio::config 'ha_mcp_url' 'http://homeassistant:8123/mcp_server/sse')" + HA_MCP_URL="$(bashio::config 'ha_mcp_url' 'http://homeassistant:8123/api/mcp')" if bashio::config.has_value 'ha_mcp_token'; then HA_MCP_TOKEN="$(bashio::config 'ha_mcp_token')" fi @@ -63,7 +63,7 @@ if bashio::config.true 'enable_ha_mcp'; then fi HEADROOM_ENABLED="$HEADROOM_ENABLED" HEADROOM_BIN="$(command -v headroom || echo headroom)" \ - TOKENSAVE_ENABLED="$TOKENSAVE_ENABLED" TOKENSAVE_BIN="/usr/local/bin/tokensave" \ + TOKENSAVE_ENABLED="$TOKENSAVE_ENABLED" TOKENSAVE_BIN="$(command -v tokensave || echo tokensave)" \ HA_MCP_ENABLED="$HA_MCP_ENABLED" HA_MCP_URL="$HA_MCP_URL" HA_MCP_TOKEN="$HA_MCP_TOKEN" \ MCP_PROXY_BIN="$(command -v mcp-proxy || echo mcp-proxy)" \ CLAUDE_DESKTOP_CONFIG="$CLAUDE_DESKTOP_CONFIG" CLAUDE_CODE_CONFIG="$CLAUDE_CODE_CONFIG" \ @@ -72,10 +72,10 @@ import json import os from pathlib import Path -MANAGED_COMMANDS = { - "headroom": {os.environ["HEADROOM_BIN"], "headroom"}, - "tokensave": {os.environ["TOKENSAVE_BIN"], "tokensave"}, - "homeassistant": {os.environ["MCP_PROXY_BIN"], "mcp-proxy"}, +MANAGED_BASENAMES = { + "headroom": "headroom", + "tokensave": "tokensave", + "homeassistant": "mcp-proxy", } desired = {} @@ -84,14 +84,27 @@ if os.environ["HEADROOM_ENABLED"] == "true": if os.environ["TOKENSAVE_ENABLED"] == "true": desired["tokensave"] = {"command": os.environ["TOKENSAVE_BIN"], "args": ["serve"]} if os.environ["HA_MCP_ENABLED"] == "true": + # Home Assistant's MCP Server integration speaks stateless Streamable HTTP on /api/mcp; + # mcp-proxy defaults to SSE, so the transport flags are required. desired["homeassistant"] = { "command": os.environ["MCP_PROXY_BIN"], - "args": [os.environ["HA_MCP_URL"]], + "args": ["--transport=streamablehttp", "--stateless", os.environ["HA_MCP_URL"]], "env": {"API_ACCESS_TOKEN": os.environ["HA_MCP_TOKEN"]}, } +# An entry is add-on-managed when its command is one of our binaries living outside the +# persistent home. Matching on the basename (rather than the exact path recorded at write +# time) keeps entries updatable when a base-image upgrade moves the binary, while commands +# under $HOME stay untouched because those are user-installed. +HOME_PREFIX = os.path.expanduser("~") + os.sep + def is_managed(name, entry): - return isinstance(entry, dict) and entry.get("command") in MANAGED_COMMANDS[name] + if not isinstance(entry, dict): + return False + command = entry.get("command") + if not isinstance(command, str) or command.startswith(HOME_PREFIX): + return False + return os.path.basename(command) == MANAGED_BASENAMES[name] for config_var, stdio_type in (("CLAUDE_DESKTOP_CONFIG", False), ("CLAUDE_CODE_CONFIG", True)): path = Path(os.environ[config_var]) @@ -107,7 +120,7 @@ for config_var, stdio_type in (("CLAUDE_DESKTOP_CONFIG", False), ("CLAUDE_CODE_C if not isinstance(servers, dict): servers = {} changed = False - for name in MANAGED_COMMANDS: + for name in MANAGED_BASENAMES: existing = servers.get(name) if name in desired: entry = dict(desired[name]) @@ -128,6 +141,8 @@ for config_var, stdio_type in (("CLAUDE_DESKTOP_CONFIG", False), ("CLAUDE_CODE_C data.pop("mcpServers", None) path.parent.mkdir(parents=True, exist_ok=True) path.write_text(json.dumps(data, indent=2) + "\n") + # The Home Assistant long-lived access token is stored here in clear text. + path.chmod(0o600) PY # Guide Claude to actually use the headroom compression tools so the MCP integration produces From a3ecb38feaa1a1b161dfe1a39ef02615b5564108 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 17:26:53 +0000 Subject: [PATCH 196/538] GitHub bot : README updated --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b40d4c1e31..90c687072f 100644 --- a/README.md +++ b/README.md @@ -258,7 +258,7 @@ If you want to do add the repository manually, please follow the procedure highl ![amd64][amd64-badge] ![ingress][ingress-badge] -✓ ![image](https://api.iconify.design/mdi/robot-happy.svg) [Claude Desktop](claude_desktop/) : Claude Desktop and a persistent Claude Code web terminal +✓ ![image](https://api.iconify.design/mdi/robot-happy.svg) [Claude Desktop](claude_desktop/) : Claude Desktop with Headroom MCP context compression and RTK acceleration   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fclaude_desktop%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fclaude_desktop%2Fupdater.json) @@ -313,6 +313,7 @@ If you want to do add the repository manually, please follow the procedure highl ✓ [Elasticsearch server](elasticsearch/) : Free and Open, Distributed, RESTful Search Engine   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Felasticsearch%2Fconfig.yaml) +![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Felasticsearch%2Fupdater.json) ![aarch64][aarch64-badge] ![amd64][amd64-badge] From bd82e72ffabb1836ababb36aae27f26957ebab12 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 19:46:37 +0200 Subject: [PATCH 197/538] Remove gnome-keyring from Dockerfile Removed gnome-keyring from the list of packages to install. --- claude_desktop/Dockerfile | 1 - 1 file changed, 1 deletion(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index e23b21540d..1ef8f27484 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -92,7 +92,6 @@ RUN install -d -m 0755 /etc/apt/keyrings && \ claude-desktop \ claude-code \ python3-pip \ - gnome-keyring \ libsecret-1-0 \ dbus-x11 \ git \ From f8c447ed19466c3705d11c6cfec90ea5a98bedd6 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 14 Jul 2026 19:46:49 +0200 Subject: [PATCH 198/538] Update config.yaml --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index c6e563c9c0..7987560804 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -92,5 +92,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.18" +version: "1.19" video: true From f6c2bef0be583e8c54a312874733927f9e0b5507 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 14 Jul 2026 17:59:29 +0000 Subject: [PATCH 199/538] GitHub bot: changelog [nobuild] --- claude_desktop/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 127a260bbd..65f5bffc77 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,5 @@ +## 1.19 (14-07-2026) +- Minor bugs fixed ## 1.18 (14-07-2026) - **Breaking:** remove the standalone Claude Code web terminal (ttyd/tmux service, port `7681`, and the `enable_terminal`, `terminal_username`, `terminal_password`, `terminal_workspace` options). The add-on is now built purely around Claude Desktop; Claude Code remains installed and powers Desktop cowork/dispatch sessions with the RTK hook, Caveman, and MCP servers intact. If the add-on refuses to start after the update, open its Configuration tab and re-save to drop the removed options. From c04f3e288ccef2d2299ac0dc76ad8e86b849bcd2 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:11:20 +0200 Subject: [PATCH 200/538] Improve Claude optimization tooling --- claude_desktop/config.yaml | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 7987560804..d6b4631ec5 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -2,7 +2,7 @@ arch: - aarch64 - amd64 audio: true -description: "Claude Desktop with Headroom MCP context compression and RTK acceleration" +description: "Claude Desktop with Headroom, RTK, and TokenSave optimization" devices: - /dev/dri - /dev/dri/card0 @@ -46,19 +46,23 @@ options: ha_mcp_token: "" github_token: "" github_username: "" - install_caveman: true + enable_tools_health_report: true + expose_headroom_dashboard: false + headroom_wrap_claude_code: true + install_caveman: false install_github_cli: true install_headroom: true install_rtk: true install_tokensave: true + tokensave_project_paths: [] panel_admin: false panel_icon: mdi:robot-happy ports: 3001/tcp: null - 8787/tcp: 8787 + 8787/tcp: null ports_description: 3001/tcp: Claude Desktop web interface - 8787/tcp: Headroom dashboard and proxy + 8787/tcp: Optional Headroom dashboard and proxy privileged: - SYS_ADMIN - DAC_READ_SEARCH @@ -83,14 +87,19 @@ schema: ha_mcp_token: password? github_token: password? github_username: str? + enable_tools_health_report: bool + expose_headroom_dashboard: bool + headroom_wrap_claude_code: bool install_caveman: bool install_github_cli: bool install_headroom: bool install_rtk: bool install_tokensave: bool + tokensave_project_paths: + - str slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.19" +version: "1.20" video: true From c8d706c9ded874e550115096ab460fdd9b1761ec Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:11:30 +0200 Subject: [PATCH 201/538] Improve Claude optimization tooling --- .../rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run index 475c5a47cc..a1ee38d6b8 100755 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run @@ -1,11 +1,15 @@ #!/usr/bin/with-contenv bashio # Headroom optimization proxy — local backend for Claude Desktop MCP and Claude Code. declare port=8787 -# Bind all interfaces so the dashboard is reachable on the mapped host port -# (http://:8787/dashboard). Local consumers keep using 127.0.0.1. -declare host=0.0.0.0 +declare host=127.0.0.1 -if bashio::config.true 'install_headroom' && command -v headroom >/dev/null 2>&1; then +# The dashboard is unauthenticated. Keep it container-local by default and bind all +# interfaces only when the user explicitly opts in and maps port 8787. +if bashio::config.true 'expose_headroom_dashboard'; then + host=0.0.0.0 +fi + +if bashio::config.true 'install_headroom' && command -v headroom > /dev/null 2>&1; then bashio::log.info "svc-headroom: starting local Headroom proxy on ${host}:${port}" exec s6-setuidgid abc headroom proxy --host "${host}" --port "${port}" --code-aware fi From 3c8a32199ed89a13de33e5e8337c4cbef2e280ff Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:11:46 +0200 Subject: [PATCH 202/538] Improve Claude optimization tooling --- .../usr/local/bin/claude-gains-report.sh | 54 +++++++++++-------- 1 file changed, 32 insertions(+), 22 deletions(-) diff --git a/claude_desktop/rootfs/usr/local/bin/claude-gains-report.sh b/claude_desktop/rootfs/usr/local/bin/claude-gains-report.sh index ad8580a3e8..6a9bfebcb1 100755 --- a/claude_desktop/rootfs/usr/local/bin/claude-gains-report.sh +++ b/claude_desktop/rootfs/usr/local/bin/claude-gains-report.sh @@ -1,34 +1,44 @@ #!/usr/bin/with-contenv bashio -# Hourly rtk + headroom token-savings snapshot for the add-on log. -# Invoked by cron (see /defaults/crontabs/root); its stdout is redirected to /proc/1/fd/1, -# so the report appears in the add-on log. Doubles as a heartbeat: if the numbers stop -# growing, the corresponding tool has stopped working. -# with-contenv supplies HOME from the s6 envdir, so this honors a custom `data_location` -# (see 20-folders.sh) instead of hardcoding /data/data; it also makes bashio::config -# available for the install_headroom gate below. -export NO_COLOR=1 # keep the add-on log free of ANSI color codes +# Hourly RTK + Headroom + TokenSave token-savings snapshot for the add-on log. +# Invoked by cron (see /defaults/crontabs/root); stdout is redirected to /proc/1/fd/1. +# Each tool is reported independently so enabling Headroom cannot hide RTK or TokenSave data. +# with-contenv supplies the configured persistent HOME. +export NO_COLOR=1 export PATH="/lsiopy/bin:/usr/local/bin:/usr/bin:/bin:${PATH}" -have_rtk=false; command -v rtk >/dev/null 2>&1 && have_rtk=true -have_headroom=false; command -v headroom >/dev/null 2>&1 && have_headroom=true - -# headroom is pip-installed unconditionally at build time, so its binary is on PATH even -# when install_headroom is off — gate on the same config svc-headroom checks, and only -# fall back to have_headroom as a secondary availability guard. -headroom_enabled=false -if bashio::config.true 'install_headroom' && $have_headroom; then - headroom_enabled=true +if ! bashio::config.true 'enable_tools_health_report'; then + exit 0 fi -# Nothing to report if neither tool is active — stay quiet. -if ! $have_rtk && ! $headroom_enabled; then exit 0; fi +rtk_enabled=false +headroom_enabled=false +tokensave_enabled=false -echo "===== claude gains report $(date '+%Y-%m-%d %H:%M:%S') =====" +if bashio::config.true 'install_rtk' && command -v rtk > /dev/null 2>&1; then + rtk_enabled=true +fi +if bashio::config.true 'install_headroom' && command -v headroom > /dev/null 2>&1; then + headroom_enabled=true +fi +if bashio::config.true 'install_tokensave' && command -v tokensave > /dev/null 2>&1; then + tokensave_enabled=true +fi + +if ! $rtk_enabled && ! $headroom_enabled && ! $tokensave_enabled; then + exit 0 +fi + +echo "===== claude tools report $(date '+%Y-%m-%d %H:%M:%S') =====" if $headroom_enabled; then echo "--- headroom savings ---" headroom savings 2>&1 || echo "[warn] headroom savings failed" -elif $have_rtk; then +fi +if $rtk_enabled; then echo "--- rtk gain ---" rtk gain 2>&1 || echo "[warn] rtk gain failed" fi -echo "===== end gains report =====" +if $tokensave_enabled; then + echo "--- tokensave gain ---" + tokensave gain --all --range 30d 2>&1 || echo "[warn] tokensave gain failed" +fi +echo "===== end claude tools report =====" From 0ff2e8f78307378317688e282360bda653abdd5d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:11:58 +0200 Subject: [PATCH 203/538] Improve Claude optimization tooling --- claude_desktop/rootfs/defaults/crontabs/root | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/rootfs/defaults/crontabs/root b/claude_desktop/rootfs/defaults/crontabs/root index fbfdd3f0c5..7a86e67d86 100644 --- a/claude_desktop/rootfs/defaults/crontabs/root +++ b/claude_desktop/rootfs/defaults/crontabs/root @@ -1,4 +1,4 @@ -# Hourly rtk + headroom token-savings report to the add-on log (heartbeat + gains). +# Hourly RTK + Headroom + TokenSave savings report to the add-on log. # Seeded to /data/data/crontabs/root by init-crontab-config and run by svc-cron; edit the # persistent copy to customize. Output goes to /proc/1/fd/1 so it shows in the add-on log. 0 * * * * /usr/local/bin/claude-gains-report.sh > /proc/1/fd/1 2>&1 From 006f3052accb841ab5141561077b0aec261f5f96 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:12:14 +0200 Subject: [PATCH 204/538] Improve Claude optimization tooling --- claude_desktop/rootfs/usr/local/bin/claude | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 claude_desktop/rootfs/usr/local/bin/claude diff --git a/claude_desktop/rootfs/usr/local/bin/claude b/claude_desktop/rootfs/usr/local/bin/claude new file mode 100644 index 0000000000..e4864e1e1e --- /dev/null +++ b/claude_desktop/rootfs/usr/local/bin/claude @@ -0,0 +1,25 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -o pipefail + +REAL_CLAUDE="/usr/bin/claude" +HEADROOM_BIN="/usr/local/bin/headroom" +HEADROOM_URL="http://127.0.0.1:8787" + +if [ ! -x "$REAL_CLAUDE" ]; then + echo "claude wrapper: ${REAL_CLAUDE} is unavailable" >&2 + exit 127 +fi + +if bashio::config.true 'install_headroom' && bashio::config.true 'headroom_wrap_claude_code'; then + if [ -x "$HEADROOM_BIN" ] && curl -fsS --max-time 2 "${HEADROOM_URL}/health" > /dev/null 2>&1; then + # Put /usr/bin before /usr/local/bin while Headroom resolves its upstream `claude` + # executable; otherwise it would resolve this wrapper recursively. + export HEADROOM_CONTEXT_TOOL="rtk" + exec env PATH="/usr/bin:/bin:/usr/local/bin" \ + "$HEADROOM_BIN" wrap claude --no-proxy -- "$@" + fi + echo "claude wrapper: Headroom proxy is unavailable; launching Claude Code directly" >&2 +fi + +exec "$REAL_CLAUDE" "$@" From 22951ac4f564ae7444181ef3627f154948a1e645 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:12:44 +0200 Subject: [PATCH 205/538] Improve Claude optimization tooling --- .../usr/local/bin/claude-tools-doctor.sh | 141 ++++++++++++++++++ 1 file changed, 141 insertions(+) create mode 100644 claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh diff --git a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh new file mode 100644 index 0000000000..0f16921f05 --- /dev/null +++ b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh @@ -0,0 +1,141 @@ +#!/usr/bin/with-contenv bashio +# Diagnose installation, registration, routing, indexing, and recorded savings without +# printing MCP environment values (which may contain the Home Assistant access token). +# shellcheck shell=bash +set +e +set -o pipefail +export NO_COLOR=1 +export PATH="/lsiopy/bin:/usr/local/bin:/usr/bin:/bin:${PATH}" + +section() { + printf '\n=== %s ===\n' "$1" +} + +section "Installed binaries" +for tool in claude claude-desktop headroom rtk tokensave git gh rg jq shellcheck yamllint hadolint actionlint; do + resolved="$(command -v "$tool" 2> /dev/null || true)" + if [ -n "$resolved" ]; then + printf '%-16s %s\n' "$tool" "$resolved" + else + printf '%-16s %s\n' "$tool" "MISSING" + fi +done + +section "Configured switches" +for option in install_headroom headroom_wrap_claude_code expose_headroom_dashboard install_rtk install_tokensave install_caveman enable_tools_health_report; do + printf '%-30s %s\n' "$option" "$(bashio::config "$option")" +done + +section "MCP registrations (environment values redacted)" +python3 - <<'PY' +import json +from pathlib import Path + +paths = [ + Path.home() / ".claude.json", + Path.home() / ".config/Claude/claude_desktop_config.json", +] +for path in paths: + print(path) + try: + data = json.loads(path.read_text()) + except FileNotFoundError: + print(" MISSING") + continue + except Exception as exc: + print(f" INVALID: {exc}") + continue + servers = data.get("mcpServers", {}) + if not isinstance(servers, dict) or not servers: + print(" no MCP servers") + continue + for name, spec in sorted(servers.items()): + if not isinstance(spec, dict): + print(f" {name}: invalid entry") + continue + command = spec.get("command", "?") + args = spec.get("args", []) + server_type = spec.get("type", "") + suffix = f" type={server_type}" if server_type else "" + print(f" {name}: {command} {args}{suffix}") + if spec.get("env"): + print(" env: ") +PY + +section "Claude Code hooks" +python3 - <<'PY' +import json +from pathlib import Path + +path = Path.home() / ".claude/settings.json" +try: + data = json.loads(path.read_text()) +except FileNotFoundError: + print("MISSING") + raise SystemExit(0) +except Exception as exc: + print(f"INVALID: {exc}") + raise SystemExit(0) + +hooks = data.get("hooks", {}) +if not isinstance(hooks, dict) or not hooks: + print("no hooks") + raise SystemExit(0) +for event, entries in hooks.items(): + print(event) + if not isinstance(entries, list): + print(" invalid entries") + continue + for entry in entries: + matcher = entry.get("matcher", "*") if isinstance(entry, dict) else "?" + commands = entry.get("hooks", []) if isinstance(entry, dict) else [] + rendered = [] + for command in commands if isinstance(commands, list) else []: + if isinstance(command, dict): + rendered.append(" ".join([str(command.get("command", "?")), *map(str, command.get("args", []))])) + print(f" matcher={matcher}: {', '.join(rendered) or 'no command'}") +PY + +section "Headroom" +if bashio::config.true 'install_headroom'; then + curl -fsS --max-time 2 http://127.0.0.1:8787/health && echo || echo "proxy health: FAILED" + headroom mcp status || true + headroom savings || true +else + echo "disabled" +fi + +section "RTK" +if bashio::config.true 'install_rtk'; then + rtk gain || true +else + echo "disabled" +fi + +section "TokenSave" +if bashio::config.true 'install_tokensave'; then + tokensave doctor --agent claude || true + tokensave gain --all --range 30d || true + while IFS= read -r configured_path; do + [ -n "$configured_path" ] || continue + repo_root="$(git -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" + if [ -z "$repo_root" ]; then + echo "${configured_path}: not a Git repository" + elif [ -f "$repo_root/.tokensave/tokensave.db" ]; then + tokensave status "$repo_root" --short || true + else + echo "${repo_root}: NOT INITIALIZED" + fi + done < <(bashio::config.array 'tokensave_project_paths') +else + echo "disabled" +fi + +section "Claude routing" +printf 'PATH claude: %s\n' "$(command -v claude 2> /dev/null || true)" +printf 'real claude: %s\n' "$([ -x /usr/bin/claude ] && echo /usr/bin/claude || echo MISSING)" +if bashio::config.true 'headroom_wrap_claude_code'; then + echo "PATH-based Claude Code launches are configured for Headroom wrapping." +else + echo "Claude Code Headroom wrapping is disabled; Headroom remains available through MCP." +fi From 6b6233e1fa9b9bd171adf4a5cc441be79da33038 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:14:23 +0200 Subject: [PATCH 206/538] Improve Claude optimization tooling --- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 97 +++++++++++++++---- 1 file changed, 78 insertions(+), 19 deletions(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 17f6a2084a..cd8e9fbf9e 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -7,15 +7,18 @@ PUID="$(if bashio::config.has_value 'PUID'; then bashio::config 'PUID'; else ech PGID="$(if bashio::config.has_value 'PGID'; then bashio::config 'PGID'; else echo '0'; fi)" mkdir -p "$HOME/.claude" +run_as_runtime_user() { + s6-setuidgid abc env HOME="$HOME" "$@" +} + CLAUDE_DESKTOP_COMMAND_FILE="/tmp/claude-desktop-command" DEFAULT_CLAUDE_DESKTOP_COMMAND='claude-desktop --no-sandbox --disable-dev-shm-usage --password-store=gnome-libsecret' printf '%s\n' "$DEFAULT_CLAUDE_DESKTOP_COMMAND" > "$CLAUDE_DESKTOP_COMMAND_FILE" -# headroom's "wrap"/proxy routing works by setting ANTHROPIC_BASE_URL, which the Claude Desktop -# Electron app force-overrides to the production endpoint (headroom #869), so transparent -# compression cannot be applied to the desktop launch. The integration that does work with -# Claude Desktop is headroom's MCP server, which exposes the headroom_compress/headroom_retrieve/ -# headroom_stats tools inside the app. +# Headroom's proxy routing works by setting ANTHROPIC_BASE_URL, which the Claude Desktop +# Electron app force-overrides to the production endpoint (headroom #869). Desktop therefore +# uses Headroom's MCP tools. Claude Code launches that resolve `claude` through PATH use the +# add-on's /usr/local/bin/claude wrapper and can be transparently proxied when enabled. # # Register the add-on-managed MCP servers (headroom, tokensave, homeassistant) in both Claude # Desktop's config and Claude Code's user config (used by Desktop cowork/dispatch sessions). @@ -38,10 +41,18 @@ TOKENSAVE_ENABLED=false if bashio::config.true 'install_tokensave'; then if command -v tokensave &> /dev/null; then TOKENSAVE_ENABLED=true - bashio::log.info "tokensave $(tokensave --version 2> /dev/null || true) available; registering the tokensave MCP server" + bashio::log.info "tokensave $(tokensave --version 2> /dev/null || true) available; configuring the complete Claude Code integration" + # The upstream installer adds the MCP entry, PreToolUse/UserPromptSubmit/Stop hooks, + # MCP permissions, global CLAUDE.md rules, and the global post-commit/checkout sync hook. + run_as_runtime_user tokensave install --agent claude --git-hook yes \ + || bashio::log.warning "tokensave Claude Code integration setup failed" else bashio::log.warning "tokensave is not available" fi +elif command -v tokensave &> /dev/null; then + bashio::log.info "Removing the tokensave Claude Code integration" + run_as_runtime_user tokensave uninstall --agent claude \ + || bashio::log.warning "tokensave Claude Code integration removal failed" fi HA_MCP_ENABLED=false @@ -80,7 +91,10 @@ MANAGED_BASENAMES = { desired = {} if os.environ["HEADROOM_ENABLED"] == "true": - desired["headroom"] = {"command": os.environ["HEADROOM_BIN"], "args": ["mcp", "serve"]} + desired["headroom"] = { + "command": os.environ["HEADROOM_BIN"], + "args": ["mcp", "serve", "--proxy-url", "http://127.0.0.1:8787"], + } if os.environ["TOKENSAVE_ENABLED"] == "true": desired["tokensave"] = {"command": os.environ["TOKENSAVE_BIN"], "args": ["serve"]} if os.environ["HA_MCP_ENABLED"] == "true": @@ -98,6 +112,7 @@ if os.environ["HA_MCP_ENABLED"] == "true": # under $HOME stay untouched because those are user-installed. HOME_PREFIX = os.path.expanduser("~") + os.sep + def is_managed(name, entry): if not isinstance(entry, dict): return False @@ -106,6 +121,7 @@ def is_managed(name, entry): return False return os.path.basename(command) == MANAGED_BASENAMES[name] + for config_var, stdio_type in (("CLAUDE_DESKTOP_CONFIG", False), ("CLAUDE_CODE_CONFIG", True)): path = Path(os.environ[config_var]) try: @@ -145,12 +161,56 @@ for config_var, stdio_type in (("CLAUDE_DESKTOP_CONFIG", False), ("CLAUDE_CODE_C path.chmod(0o600) PY -# Guide Claude to actually use the headroom compression tools so the MCP integration produces -# real savings (otherwise the tools sit unused and `headroom savings` stays empty). Managed, -# idempotent block appended to the user's global CLAUDE.md; removed when headroom is disabled. +# Initialize or incrementally sync only explicitly configured repositories. TokenSave deliberately +# requires one-time per-project opt-in; an empty list therefore has no startup or storage cost. +if $TOKENSAVE_ENABLED; then + declare -A TOKENSAVE_REPOS_SEEN=() + while IFS= read -r configured_path; do + # Trim surrounding whitespace while preserving spaces inside paths. + configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" + configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" + [ -n "$configured_path" ] || continue + + case "$configured_path" in + /*) ;; + *) + bashio::log.warning "Skipping non-absolute tokensave_project_paths entry: ${configured_path}" + continue + ;; + esac + if [ ! -d "$configured_path" ]; then + bashio::log.warning "Skipping missing TokenSave project path: ${configured_path}" + continue + fi + + repo_root="$(git -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" + if [ -z "$repo_root" ] || [ "$repo_root" = "/" ]; then + bashio::log.warning "Skipping TokenSave path that is not a supported Git repository: ${configured_path}" + continue + fi + if [[ -n "${TOKENSAVE_REPOS_SEEN[$repo_root]:-}" ]]; then + continue + fi + TOKENSAVE_REPOS_SEEN[$repo_root]=1 + + if [ -f "$repo_root/.tokensave/tokensave.db" ]; then + bashio::log.info "Synchronizing TokenSave index: ${repo_root}" + run_as_runtime_user tokensave sync "$repo_root" \ + || bashio::log.warning "TokenSave sync failed for ${repo_root}" + else + bashio::log.info "Initializing TokenSave index: ${repo_root}" + run_as_runtime_user tokensave init "$repo_root" \ + || bashio::log.warning "TokenSave initialization failed for ${repo_root}" + fi + done < <(bashio::config.array 'tokensave_project_paths') +fi + +# Guide Claude to actually use the Headroom compression tools so the MCP integration produces +# real savings when transparent proxying is unavailable. Managed, idempotent block appended to +# the user's global CLAUDE.md; removed when Headroom is disabled. CLAUDE_MD="$HOME/.claude/CLAUDE.md" HEADROOM_GUIDE_BEGIN="" -if bashio::config.true 'install_headroom'; then +if $HEADROOM_ENABLED; then mkdir -p "$(dirname "$CLAUDE_MD")" if ! { [ -f "$CLAUDE_MD" ] && grep -qF "$HEADROOM_GUIDE_BEGIN" "$CLAUDE_MD"; }; then bashio::log.info "Adding headroom usage guidance to CLAUDE.md" @@ -193,14 +253,13 @@ fi if bashio::config.true 'install_rtk'; then if command -v rtk &> /dev/null; then - if [ -f "$HOME/.claude/settings.json" ] && grep -q 'rtk hook claude' "$HOME/.claude/settings.json"; then - bashio::log.info "rtk Claude Code hook already configured" - else - bashio::log.info "Configuring rtk Claude Code hook" - RTK_NONINTERACTIVE=1 rtk init -g || bashio::log.warning "rtk global files configuration failed" - python3 - <<'PY' || bashio::log.warning "Unable to configure rtk hook automatically" + bashio::log.info "Configuring rtk Claude Code integration" + run_as_runtime_user env RTK_NONINTERACTIVE=1 rtk init -g \ + || bashio::log.warning "rtk global files configuration failed" + python3 - <<'PY' || bashio::log.warning "Unable to configure rtk hook automatically" import json from pathlib import Path + path = Path.home() / ".claude" / "settings.json" try: data = json.loads(path.read_text()) if path.exists() else {} @@ -218,7 +277,6 @@ if not any("rtk hook claude" in json.dumps(entry) for entry in pre if isinstance path.parent.mkdir(parents=True, exist_ok=True) path.write_text(json.dumps(data, indent=2) + "\n") PY - fi else bashio::log.warning "rtk is not available" fi @@ -290,7 +348,8 @@ if bashio::config.true 'install_caveman'; then bashio::log.info "caveman Claude Code plugin already configured" else bashio::log.info "Installing caveman Claude Code plugin" - curl --connect-timeout 10 --max-time 60 -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh | bash >/dev/null || bashio::log.warning "caveman install failed (offline?)" + curl --connect-timeout 10 --max-time 60 -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh | bash > /dev/null \ + || bashio::log.warning "caveman install failed (offline?)" fi else bashio::log.info "Disabling caveman Claude Code plugin" From 9c55193c38314272f31ddce0b9388bab6a2a8601 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:15:18 +0200 Subject: [PATCH 207/538] Improve Claude optimization tooling --- claude_desktop/Dockerfile | 46 ++++++++++++++++++++++++++++++++++----- 1 file changed, 40 insertions(+), 6 deletions(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 1ef8f27484..ccf216a9ed 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -34,6 +34,7 @@ RUN cargo install tokensave --version "${TOKENSAVE_VERSION}" --locked --root /ou /out/bin/tokensave --version FROM ${BUILD_FROM} +ARG BUILD_ARCH ################## # 2 Modify Image # @@ -73,15 +74,17 @@ RUN curl -fsSL --retry 3 --retry-delay 2 \ # cannot alter executables elsewhere in the image. COPY rootfs/ / RUN find /etc/cont-init.d /etc/s6-overlay /defaults /usr/local/bin -type f \ - \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; + \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; && \ + chmod +x /usr/local/bin/claude # Uses /bin for compatibility purposes # hadolint ignore=DL4005 RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \ if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/bash /bin/bash; fi -# Install Claude Desktop, Claude Code, and Python tooling. gnome-keyring provides the -# Secret Service backend Electron safeStorage needs to persist sign-in and dispatch grants. +# Install Claude Desktop, Claude Code, Python tooling, and lightweight local validators. +# gnome-keyring provides the Secret Service backend Electron safeStorage needs to persist +# sign-in and dispatch grants. RUN install -d -m 0755 /etc/apt/keyrings && \ curl -fsSLo /usr/share/keyrings/claude-desktop-archive-keyring.asc https://downloads.claude.ai/claude-desktop/key.asc && \ curl -fsSLo /etc/apt/keyrings/claude-code.asc https://downloads.claude.ai/keys/claude-code.asc && \ @@ -96,10 +99,42 @@ RUN install -d -m 0755 /etc/apt/keyrings && \ dbus-x11 \ git \ gh \ - ripgrep && \ + ripgrep \ + jq \ + shellcheck \ + yamllint && \ + test -x /usr/bin/claude && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* +# Install the current upstream hadolint and actionlint releases for both supported +# architectures. The GitHub release API resolves the latest asset at build time, so these +# developer tools are intentionally not version-pinned. +RUN set -eux; \ + case "${BUILD_ARCH}" in \ + amd64) hadolint_arch="x86_64"; actionlint_arch="x86_64" ;; \ + aarch64) hadolint_arch="arm64"; actionlint_arch="arm64" ;; \ + *) echo "Unsupported validation-tools architecture: ${BUILD_ARCH}" >&2; exit 1 ;; \ + esac; \ + hadolint_name="hadolint-Linux-${hadolint_arch}"; \ + hadolint_url="$(curl -fsSL https://api.github.com/repos/hadolint/hadolint/releases/latest \ + | jq -r --arg name "${hadolint_name}" '.assets[] | select(.name == $name) | .browser_download_url' \ + | head -n 1)"; \ + test -n "${hadolint_url}"; \ + curl -fsSL --retry 3 --retry-delay 2 -o /usr/local/bin/hadolint "${hadolint_url}"; \ + chmod 0755 /usr/local/bin/hadolint; \ + actionlint_suffix="_linux_${actionlint_arch}.tar.gz"; \ + actionlint_url="$(curl -fsSL https://api.github.com/repos/rhysd/actionlint/releases/latest \ + | jq -r --arg suffix "${actionlint_suffix}" '.assets[] | select(.name | endswith($suffix)) | .browser_download_url' \ + | head -n 1)"; \ + test -n "${actionlint_url}"; \ + curl -fsSL --retry 3 --retry-delay 2 -o /tmp/actionlint.tar.gz "${actionlint_url}"; \ + tar -xzf /tmp/actionlint.tar.gz -C /tmp actionlint; \ + install -m 0755 /tmp/actionlint /usr/local/bin/actionlint; \ + rm -f /tmp/actionlint /tmp/actionlint.tar.gz; \ + hadolint --version; \ + actionlint -version + # Copy the pinned Bookworm-built RTK and tokensave binaries and execute them in the final # image. This makes an ABI mismatch fail the image build instead of surfacing at runtime. COPY --from=rtk-builder /out/rtk /usr/local/bin/rtk @@ -107,7 +142,7 @@ COPY --from=tokensave-builder /out/bin/tokensave /usr/local/bin/tokensave RUN /usr/local/bin/rtk --version && /usr/local/bin/tokensave --version # Install only the Headroom proxy, code-compression, and MCP features used by this add-on, -# plus mcp-proxy (stdio->SSE bridge for the Home Assistant MCP server) and uv (fast +# plus mcp-proxy (stdio->HTTP bridge for the Home Assistant MCP server) and uv (fast # installer used for the additional_pip option). RUN apt-get update && \ apt-get install -y --no-install-recommends nodejs && \ @@ -159,7 +194,6 @@ CMD [ "/ha_entrypoint.sh" ] # 5 Labels # ############ -ARG BUILD_ARCH ARG BUILD_DATE ARG BUILD_DESCRIPTION ARG BUILD_NAME From bdd56b8057dd899dfe9718d58366a24447a48391 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:16:08 +0200 Subject: [PATCH 208/538] Improve Claude optimization tooling --- claude_desktop/README.md | 121 +++++++++++++++++++++++++++++---------- 1 file changed, 90 insertions(+), 31 deletions(-) diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 4967a19655..09e9d22eae 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -4,9 +4,9 @@ ![Supports amd64 Architecture][amd64-shield] ![Project Maintenance][maintenance-shield] -Run Claude Desktop in a LinuxServer.io Selkies add-on, with Headroom MCP -context compression, RTK Bash-output acceleration, and code-intelligence -tooling wired in by default. +Run Claude Desktop in a LinuxServer.io Selkies add-on, with Headroom context +compression, RTK Bash-output acceleration, and TokenSave semantic code +intelligence wired in by default. ## Installation @@ -24,15 +24,33 @@ currently does not include Computer Use or dictation. Everything is built around the Claude Desktop app. Claude Code is installed in the same image but is not exposed as a standalone service: Claude Desktop's cowork and dispatch sessions run it internally, and they pick up the shared -Claude Code configuration (`~/.claude`), hooks, and MCP servers automatically. +Claude Code configuration (`~/.claude`), hooks, MCP servers, and PATH tools. - **Claude Desktop** uses Headroom through its MCP tools. -- **Claude Code sessions inside Desktop** get the same MCP servers via - `~/.claude.json` and RTK's `PreToolUse` Bash hook via - `~/.claude/settings.json`. +- **Claude Code sessions inside Desktop** get the same MCP servers and the + RTK/TokenSave hooks through the shared Claude Code configuration. +- PATH-based Claude Code launches are routed through the supervised Headroom + proxy when `headroom_wrap_claude_code` is enabled. If a Desktop release calls + `/usr/bin/claude` directly, the session remains functional and still has the + Headroom MCP tools, but transparent proxy compression cannot be injected. - **gnome-keyring** provides the Secret Service backend Electron needs to persist sign-in and dispatch permission grants across restarts. +## Optimization layers + +The three bundled optimization tools are complementary: + +- **RTK** rewrites supported Bash commands so Claude receives compact output. +- **TokenSave** builds a local semantic graph for explicitly selected code + repositories and steers Claude away from repeated Explore/Grep/Read fan-out. +- **Headroom** transparently compresses proxied Claude Code traffic and also + exposes on-demand compress/retrieve/statistics MCP tools to Claude Desktop. + +TokenSave's complete Claude integration is installed at startup: MCP server, +permissions, PreToolUse/UserPromptSubmit/Stop hooks, global prompt rules, and +Git synchronization hooks. A repository is indexed only when it is listed in +`tokensave_project_paths`; no automatic filesystem scan is performed. + ## Features - Claude Desktop in single-app Selkies mode with Home Assistant ingress. @@ -42,15 +60,17 @@ Claude Code configuration (`~/.claude`), hooks, and MCP servers automatically. preserving Desktop and Claude Code state across restarts. - Persistent sign-in through a bundled, auto-unlocked gnome-keyring. - Optional runtime Claude Desktop updates from Anthropic's apt repository. -- Optional extra apt and pip package installation (pip installs use `uv` for - speed). -- Baked-in `git`, GitHub CLI (`gh`), and `ripgrep`. +- Optional extra apt and pip package installation (pip installs use `uv`). +- Baked-in `git`, GitHub CLI (`gh`), `ripgrep`, `jq`, `shellcheck`, `yamllint`, + `hadolint`, and `actionlint`. - Custom script support through the repository standard `claude_desktop.sh`. -- Bundled optimization tools: Headroom (MCP + local proxy), RTK, tokensave, - and Caveman — each individually switchable. +- Bundled optimization tools: Headroom, RTK, and TokenSave; Caveman remains + available as an opt-in plugin. - Optional Home Assistant MCP bridge so Claude can query and control Home Assistant. -- Headroom dashboard exposed on mapped port `8787`. +- Independent hourly savings reports for Headroom, RTK, and TokenSave. +- `claude-tools-doctor.sh` diagnostics for binaries, routing, hooks, MCP + registrations, project indexes, proxy health, and gains. - Low-power defaults for GPU mapping, Selkies frame rate, and volatile caches. ## Options @@ -64,42 +84,79 @@ Claude Code configuration (`~/.claude`), hooks, and MCP servers automatically. | `DRINODE` | | Optional GPU device override for Selkies. | | `DNS_server` | `8.8.8.8` | DNS server used by the standard DNS module. | | `auto_update` | `true` | Upgrade `claude-desktop` from Anthropic's apt repository at startup. | -| `install_headroom` | `true` | Register the Headroom MCP server and run the supervised local proxy/dashboard. | -| `install_rtk` | `true` | Configure RTK's Claude Code `PreToolUse` hook. | -| `install_tokensave` | `true` | Register the tokensave code-intelligence MCP server for Desktop and Claude Code. | -| `install_caveman` | `true` | Install the Caveman Claude Code plugin in the persistent Claude home. | +| `install_headroom` | `true` | Register Headroom MCP and run the supervised local proxy. | +| `headroom_wrap_claude_code` | `true` | Route PATH-based Claude Code launches through the already-running Headroom proxy. | +| `expose_headroom_dashboard` | `false` | Bind Headroom to all interfaces. Port `8787/tcp` must also be mapped manually. | +| `install_rtk` | `true` | Configure RTK's Claude Code `PreToolUse` Bash hook. | +| `install_tokensave` | `true` | Install TokenSave's complete global Claude integration. | +| `tokensave_project_paths` | `[]` | Explicit absolute Git repository paths to initialize or sync at startup. | +| `install_caveman` | `false` | Install the third-party Caveman Claude Code plugin at startup. | +| `enable_tools_health_report` | `true` | Write independent Headroom, RTK, and TokenSave gains to the add-on log hourly. | | `install_github_cli` | `true` | Enable setup checks for the baked-in `git` and `gh` commands. | | `github_token` | | Optional GitHub token used to authenticate `gh` and Git operations. | | `github_username` | | Optional global Git author name. | | `github_email` | | Optional global Git author email. | | `enable_ha_mcp` | `false` | Register Home Assistant's MCP server in Claude (requires `ha_mcp_token`). | -| `ha_mcp_url` | `http://homeassistant:8123/mcp_server/sse` | SSE endpoint of Home Assistant's MCP Server integration. | +| `ha_mcp_url` | `http://homeassistant:8123/api/mcp` | Streamable HTTP endpoint of Home Assistant's MCP Server integration. | | `ha_mcp_token` | | Home Assistant long-lived access token used by the MCP bridge. | | `additional_apps` | | Comma-separated Debian apt packages to install at startup. | | `additional_pip` | | Comma-separated pip packages installed at startup (via `uv`). | | `data_location` | `/data/data` | Persistent home directory for Claude and tooling. | | `env_vars` | `[]` | Additional environment variables exported inside the container. | +### TokenSave project example + +Only repositories listed here are indexed. Paths must be absolute, mounted in +the add-on, and resolve to a Git working tree: + +```yaml +tokensave_project_paths: + - /share/projects/hassio-addons + - /share/projects/birdnet-go +``` + +At startup, an uninitialized repository receives `tokensave init`; an existing +index receives an incremental `tokensave sync`. Removing a path from the option +stops automatic synchronization but does not delete its `.tokensave` database. + ## Headroom behavior When `install_headroom` is enabled, the add-on registers `headroom mcp serve` -in Claude Desktop and Claude Code, and starts a supervised local Headroom -backend. Claude can use `headroom_compress`, `headroom_retrieve`, and -`headroom_stats` through MCP. +with the explicit local proxy URL in Claude Desktop and Claude Code, then starts +a supervised Headroom backend on `127.0.0.1:8787`. -Claude Desktop overrides `ANTHROPIC_BASE_URL`, so it is deliberately launched -without proxy injection; the MCP integration is the supported path. +Claude Desktop overrides `ANTHROPIC_BASE_URL`, so Desktop chat deliberately uses +the MCP integration. The `/usr/local/bin/claude` wrapper routes PATH-based Claude +Code sessions through `headroom wrap claude --no-proxy`, reusing the supervised +backend without starting a second proxy. -The Headroom dashboard is available at: +The dashboard is disabled externally by default. To expose it: -```text -http://:8787/dashboard +1. Set `expose_headroom_dashboard: true`. +2. Map `8787/tcp` in the add-on **Network** section. +3. Open `http://:8787/dashboard`. + +The dashboard is unauthenticated. Do not publish this port to the public +internet. + +## Diagnostics + +Run the following inside the add-on through a custom script or container console: + +```bash +claude-tools-doctor.sh ``` -through the default `8787/tcp` port mapping. The dashboard is unauthenticated -and is reachable wherever Home Assistant publishes that port, so treat it as -sensitive: do not expose it directly to the public internet, and unmap the port -in the add-on **Network** section if you do not want it reachable at all. +The report checks the tool binaries, configuration switches, redacted MCP +registrations, Claude hooks, Headroom health, TokenSave indexes, routing, and +recorded savings. It never prints MCP environment values because the Home +Assistant MCP entry can contain a long-lived token. + +The hourly report can also be invoked manually: + +```bash +claude-gains-report.sh +``` ## Home Assistant MCP bridge @@ -130,8 +187,10 @@ Persistent state is stored in the configured `data_location` (default - Claude Desktop sign-in: `~/.config/Claude` (token encrypted via gnome-keyring; keyring DB in `~/.local/share/keyrings`) - Claude Code settings, hooks, sessions, and plugins: `~/.claude` -- Headroom, RTK, and tokensave user state: their standard paths below the +- Headroom, RTK, and TokenSave user state: their standard paths below the shared home +- TokenSave repository indexes: `.tokensave/` inside each explicitly configured + project Volatile cache data is redirected to `/tmp/cache` through `$XDG_CACHE_HOME` and `$HOME/.cache`. From 66d3886b800bd6412fd3fc5749be5cdef7d5813a Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:17:05 +0200 Subject: [PATCH 209/538] Improve Claude optimization tooling --- claude_desktop/CHANGELOG.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 65f5bffc77..098c4420bf 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,15 @@ +## 1.20 (15-07-2026) + +- Complete the TokenSave Claude Code integration at startup: install its MCP server, permissions, PreToolUse/UserPromptSubmit/Stop hooks, global guidance, and Git synchronization hooks instead of registering only `tokensave serve`. +- Add `tokensave_project_paths` for explicit per-repository initialization and incremental synchronization; no repositories are scanned or indexed unless listed. +- Route PATH-based Claude Code launches through the already-supervised Headroom proxy by default with a recursion-safe `/usr/local/bin/claude` wrapper; fall back to the official binary when the proxy is unavailable. +- Pass the local proxy URL explicitly to the Headroom MCP server, while retaining MCP-only integration for the Desktop Electron application. +- Keep the unauthenticated Headroom dashboard container-local by default; add `expose_headroom_dashboard` and leave port `8787/tcp` unmapped until explicitly enabled. +- Fix the hourly gains report so Headroom no longer suppresses RTK output, add TokenSave gains, and gate each tool on its actual add-on option. +- Add `claude-tools-doctor.sh` to inspect binaries, redacted MCP registrations, hooks, proxy health, routing, project indexes, and gains. +- Install local validation tools (`jq`, `shellcheck`, `yamllint`, current `hadolint`, and current `actionlint`) to reduce avoidable CI round-trips. +- Disable the unpinned third-party Caveman startup installer by default; it remains opt-in. + ## 1.19 (14-07-2026) - Minor bugs fixed ## 1.18 (14-07-2026) @@ -17,7 +29,7 @@ - Minor bugs fixed ## 1.15 (13-07-2026) - Minor bugs fixed - + ## ubunturesolute-version-6dc44b0e (2026-07-13) - Update to latest version from linuxserver/docker-baseimage-selkies (changelog : https://github.com/linuxserver/docker-baseimage-selkies/releases) ## 1.14 (10-07-2026) From 7cd82b275875eb1fa89d81646d7f8e865e584a57 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:20:43 +0200 Subject: [PATCH 210/538] Fix validator release asset lookup --- claude_desktop/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index ccf216a9ed..208f571420 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -116,7 +116,7 @@ RUN set -eux; \ aarch64) hadolint_arch="arm64"; actionlint_arch="arm64" ;; \ *) echo "Unsupported validation-tools architecture: ${BUILD_ARCH}" >&2; exit 1 ;; \ esac; \ - hadolint_name="hadolint-Linux-${hadolint_arch}"; \ + hadolint_name="hadolint-linux-${hadolint_arch}"; \ hadolint_url="$(curl -fsSL https://api.github.com/repos/hadolint/hadolint/releases/latest \ | jq -r --arg name "${hadolint_name}" '.assets[] | select(.name == $name) | .browser_download_url' \ | head -n 1)"; \ From 45f88307d4ca685ecd069fd2e0bf95f7e78b17bd Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:04:23 +0200 Subject: [PATCH 211/538] Add Claude permission modes --- claude_desktop/config.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index d6b4631ec5..b54e4f4ae7 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -54,6 +54,7 @@ options: install_headroom: true install_rtk: true install_tokensave: true + permission_mode: auto tokensave_project_paths: [] panel_admin: false panel_icon: mdi:robot-happy @@ -95,6 +96,7 @@ schema: install_headroom: bool install_rtk: bool install_tokensave: bool + permission_mode: list(strict|auto|bypass) tokensave_project_paths: - str slug: claude_desktop From 321f2fde73f6c1a81590ee9f7e4eb0fcfdce7568 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:04:48 +0200 Subject: [PATCH 212/538] Apply Claude permission mode in wrapper --- claude_desktop/rootfs/usr/local/bin/claude | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/claude_desktop/rootfs/usr/local/bin/claude b/claude_desktop/rootfs/usr/local/bin/claude index e4864e1e1e..ac0a27a966 100644 --- a/claude_desktop/rootfs/usr/local/bin/claude +++ b/claude_desktop/rootfs/usr/local/bin/claude @@ -5,6 +5,22 @@ set -o pipefail REAL_CLAUDE="/usr/bin/claude" HEADROOM_BIN="/usr/local/bin/headroom" HEADROOM_URL="http://127.0.0.1:8787" +PERMISSION_MODE="$(bashio::config 'permission_mode')" +declare -a CLAUDE_PERMISSION_ARGS=() + +case "$PERMISSION_MODE" in + bypass) + CLAUDE_PERMISSION_ARGS+=("--dangerously-skip-permissions") + ;; + auto) + CLAUDE_PERMISSION_ARGS+=("--permission-mode" "auto") + ;; + strict|"") + ;; + *) + echo "claude wrapper: unknown permission_mode '${PERMISSION_MODE}', using strict mode" >&2 + ;; +esac if [ ! -x "$REAL_CLAUDE" ]; then echo "claude wrapper: ${REAL_CLAUDE} is unavailable" >&2 @@ -17,9 +33,10 @@ if bashio::config.true 'install_headroom' && bashio::config.true 'headroom_wrap_ # executable; otherwise it would resolve this wrapper recursively. export HEADROOM_CONTEXT_TOOL="rtk" exec env PATH="/usr/bin:/bin:/usr/local/bin" \ - "$HEADROOM_BIN" wrap claude --no-proxy -- "$@" + "$HEADROOM_BIN" wrap claude --no-proxy -- \ + "${CLAUDE_PERMISSION_ARGS[@]}" "$@" fi echo "claude wrapper: Headroom proxy is unavailable; launching Claude Code directly" >&2 fi -exec "$REAL_CLAUDE" "$@" +exec "$REAL_CLAUDE" "${CLAUDE_PERMISSION_ARGS[@]}" "$@" From c76b257f5de71b5dcceb4131c393fcc795309538 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:05:29 +0200 Subject: [PATCH 213/538] Persist Claude permission mode --- .../etc/cont-init.d/83-claude_permissions.sh | 92 +++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh diff --git a/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh b/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh new file mode 100644 index 0000000000..11c3affb22 --- /dev/null +++ b/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh @@ -0,0 +1,92 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +PUID="$(if bashio::config.has_value 'PUID'; then bashio::config 'PUID'; else echo '0'; fi)" +PGID="$(if bashio::config.has_value 'PGID'; then bashio::config 'PGID'; else echo '0'; fi)" +PERMISSION_MODE="$(bashio::config 'permission_mode')" +SETTINGS_PATH="$HOME/.claude/settings.json" +STATE_PATH="$HOME/.claude/.addon-permission-mode.json" + +case "$PERMISSION_MODE" in + strict|auto|bypass) ;; + *) + bashio::log.warning "Unknown permission_mode '${PERMISSION_MODE}'; falling back to strict" + PERMISSION_MODE="strict" + ;; +esac + +mkdir -p "$(dirname "$SETTINGS_PATH")" +PERMISSION_MODE="$PERMISSION_MODE" SETTINGS_PATH="$SETTINGS_PATH" STATE_PATH="$STATE_PATH" python3 - <<'PY' +import json +import os +from pathlib import Path + +mode = os.environ["PERMISSION_MODE"] +settings_path = Path(os.environ["SETTINGS_PATH"]) +state_path = Path(os.environ["STATE_PATH"]) + +try: + settings = json.loads(settings_path.read_text()) if settings_path.exists() else {} +except (OSError, json.JSONDecodeError): + if settings_path.exists(): + settings_path.rename(settings_path.with_suffix(settings_path.suffix + ".bak")) + settings = {} +if not isinstance(settings, dict): + settings = {} + +try: + state = json.loads(state_path.read_text()) if state_path.exists() else None +except (OSError, json.JSONDecodeError): + state = None +if not isinstance(state, dict): + state = None + +permissions = settings.get("permissions") +if not isinstance(permissions, dict): + permissions = {} + +if mode == "strict": + # Restore the value that existed before the add-on first managed this setting. + if state is not None: + if state.get("previous_exists"): + permissions["defaultMode"] = state.get("previous_value") + else: + permissions.pop("defaultMode", None) + state_path.unlink(missing_ok=True) +else: + if state is None: + state = { + "previous_exists": "defaultMode" in permissions, + "previous_value": permissions.get("defaultMode"), + } + state_path.write_text(json.dumps(state, indent=2) + "\n") + state_path.chmod(0o600) + permissions["defaultMode"] = "auto" if mode == "auto" else "bypassPermissions" + +if permissions: + settings["permissions"] = permissions +else: + settings.pop("permissions", None) + +settings_path.write_text(json.dumps(settings, indent=2) + "\n") +settings_path.chmod(0o600) +PY + +case "$PERMISSION_MODE" in + strict) + bashio::log.info "Claude Code permission mode: strict (normal prompts)" + ;; + auto) + bashio::log.info "Claude Code permission mode: auto (safe actions approved automatically)" + ;; + bypass) + bashio::log.warning "Claude Code permission mode: bypass (permission checks disabled for mounted data and available tools)" + ;; +esac + +chown -- "${PUID}:${PGID}" "$SETTINGS_PATH" 2> /dev/null || true +if [ -e "$STATE_PATH" ]; then + chown -- "${PUID}:${PGID}" "$STATE_PATH" 2> /dev/null || true +fi From d1ceafebe8eb3c81b8b842d65d5634cdcc4b25ee Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:08:08 +0200 Subject: [PATCH 214/538] Fix actionlint amd64 asset mapping --- claude_desktop/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 208f571420..e8bff0593f 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -112,7 +112,7 @@ RUN install -d -m 0755 /etc/apt/keyrings && \ # developer tools are intentionally not version-pinned. RUN set -eux; \ case "${BUILD_ARCH}" in \ - amd64) hadolint_arch="x86_64"; actionlint_arch="x86_64" ;; \ + amd64) hadolint_arch="x86_64"; actionlint_arch="amd64" ;; \ aarch64) hadolint_arch="arm64"; actionlint_arch="arm64" ;; \ *) echo "Unsupported validation-tools architecture: ${BUILD_ARCH}" >&2; exit 1 ;; \ esac; \ From 15505a265ff64168720551022415c05cdb01363d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:08:34 +0200 Subject: [PATCH 215/538] Trust configured TokenSave repositories --- .../cont-init.d/81-tokensave_repositories.sh | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh diff --git a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh new file mode 100644 index 0000000000..4b36dbc397 --- /dev/null +++ b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh @@ -0,0 +1,36 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +if ! bashio::config.true 'install_tokensave' || ! command -v git > /dev/null 2>&1; then + exit 0 +fi + +declare -A REPOS_SEEN=() +while IFS= read -r configured_path; do + configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" + configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" + [ -n "$configured_path" ] || continue + + case "$configured_path" in + /*) ;; + *) continue ;; + esac + [ -d "$configured_path" ] || continue + + # The one-shot safe.directory override is used only to discover the repository root. + # Persist the resolved root in the shared runtime user's Git config before 82-claude_tools.sh + # performs normal repository detection, avoiding Git's dubious-ownership rejection. + repo_root="$(s6-setuidgid abc env HOME="$HOME" \ + git -c safe.directory='*' -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" + [ -n "$repo_root" ] && [ "$repo_root" != "/" ] || continue + [[ -z "${REPOS_SEEN[$repo_root]:-}" ]] || continue + REPOS_SEEN[$repo_root]=1 + + if ! s6-setuidgid abc env HOME="$HOME" git config --global --get-all safe.directory \ + | grep -Fxq -- "$repo_root"; then + s6-setuidgid abc env HOME="$HOME" git config --global --add safe.directory "$repo_root" + bashio::log.info "Marked TokenSave repository as safe for Git: ${repo_root}" + fi +done < <(bashio::config.array 'tokensave_project_paths') From 8073317150428d220c57649df661329d7da37a73 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:09:44 +0200 Subject: [PATCH 216/538] Document Claude permission modes --- claude_desktop/README.md | 43 +++++++++++++++++++++++++++++++--------- 1 file changed, 34 insertions(+), 9 deletions(-) diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 09e9d22eae..33cf4208e7 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -24,15 +24,17 @@ currently does not include Computer Use or dictation. Everything is built around the Claude Desktop app. Claude Code is installed in the same image but is not exposed as a standalone service: Claude Desktop's cowork and dispatch sessions run it internally, and they pick up the shared -Claude Code configuration (`~/.claude`), hooks, MCP servers, and PATH tools. +Claude Code configuration (`~/.claude`), hooks, MCP servers, permissions, and +PATH tools. - **Claude Desktop** uses Headroom through its MCP tools. -- **Claude Code sessions inside Desktop** get the same MCP servers and the - RTK/TokenSave hooks through the shared Claude Code configuration. +- **Claude Code sessions inside Desktop** get the same MCP servers, permission + mode, and RTK/TokenSave hooks through the shared Claude Code configuration. - PATH-based Claude Code launches are routed through the supervised Headroom proxy when `headroom_wrap_claude_code` is enabled. If a Desktop release calls `/usr/bin/claude` directly, the session remains functional and still has the - Headroom MCP tools, but transparent proxy compression cannot be injected. + shared permission mode and Headroom MCP tools, but transparent proxy + compression cannot be injected. - **gnome-keyring** provides the Secret Service backend Electron needs to persist sign-in and dispatch permission grants across restarts. @@ -59,6 +61,8 @@ Git synchronization hooks. A repository is indexed only when it is listed in - Persistent `$HOME` at the configured `data_location` (default `/data/data`), preserving Desktop and Claude Code state across restarts. - Persistent sign-in through a bundled, auto-unlocked gnome-keyring. +- Configurable Claude Code permissions: strict prompts, automatic safe-action + approval, or explicit full bypass for trusted installations. - Optional runtime Claude Desktop updates from Anthropic's apt repository. - Optional extra apt and pip package installation (pip installs use `uv`). - Baked-in `git`, GitHub CLI (`gh`), `ripgrep`, `jq`, `shellcheck`, `yamllint`, @@ -70,7 +74,7 @@ Git synchronization hooks. A repository is indexed only when it is listed in Assistant. - Independent hourly savings reports for Headroom, RTK, and TokenSave. - `claude-tools-doctor.sh` diagnostics for binaries, routing, hooks, MCP - registrations, project indexes, proxy health, and gains. + registrations, project indexes, proxy health, permissions, and gains. - Low-power defaults for GPU mapping, Selkies frame rate, and volatile caches. ## Options @@ -84,6 +88,7 @@ Git synchronization hooks. A repository is indexed only when it is listed in | `DRINODE` | | Optional GPU device override for Selkies. | | `DNS_server` | `8.8.8.8` | DNS server used by the standard DNS module. | | `auto_update` | `true` | Upgrade `claude-desktop` from Anthropic's apt repository at startup. | +| `permission_mode` | `auto` | Claude Code permission policy: `strict`, `auto`, or `bypass`. | | `install_headroom` | `true` | Register Headroom MCP and run the supervised local proxy. | | `headroom_wrap_claude_code` | `true` | Route PATH-based Claude Code launches through the already-running Headroom proxy. | | `expose_headroom_dashboard` | `false` | Bind Headroom to all interfaces. Port `8787/tcp` must also be mapped manually. | @@ -104,6 +109,23 @@ Git synchronization hooks. A repository is indexed only when it is listed in | `data_location` | `/data/data` | Persistent home directory for Claude and tooling. | | `env_vars` | `[]` | Additional environment variables exported inside the container. | +### Permission modes + +```yaml +permission_mode: auto +``` + +- `strict` keeps Claude Code's normal interactive permission prompts. +- `auto` asks Claude Code's automatic permission classifier to approve safe + operations while retaining prompts for risky actions. This is the default. +- `bypass` disables Claude Code permission checks by using + `bypassPermissions` in the shared settings and + `--dangerously-skip-permissions` for wrapper-launched sessions. + +`bypass` gives Claude broad authority over all mounted writable data and every +command or credential available inside the add-on. Enable it only in a trusted +installation with trusted repositories and mounts. + ### TokenSave project example Only repositories listed here are indexed. Paths must be absolute, mounted in @@ -118,6 +140,8 @@ tokensave_project_paths: At startup, an uninitialized repository receives `tokensave init`; an existing index receives an incremental `tokensave sync`. Removing a path from the option stops automatic synchronization but does not delete its `.tokensave` database. +Configured repositories are added to Git's `safe.directory` list for the shared +runtime user before TokenSave performs repository discovery. ## Headroom behavior @@ -148,9 +172,9 @@ claude-tools-doctor.sh ``` The report checks the tool binaries, configuration switches, redacted MCP -registrations, Claude hooks, Headroom health, TokenSave indexes, routing, and -recorded savings. It never prints MCP environment values because the Home -Assistant MCP entry can contain a long-lived token. +registrations, Claude hooks, permission mode, Headroom health, TokenSave indexes, +routing, and recorded savings. It never prints MCP environment values because +the Home Assistant MCP entry can contain a long-lived token. The hourly report can also be invoked manually: @@ -186,7 +210,8 @@ Persistent state is stored in the configured `data_location` (default - Claude Desktop sign-in: `~/.config/Claude` (token encrypted via gnome-keyring; keyring DB in `~/.local/share/keyrings`) -- Claude Code settings, hooks, sessions, and plugins: `~/.claude` +- Claude Code settings, hooks, sessions, plugins, and permission mode: + `~/.claude` - Headroom, RTK, and TokenSave user state: their standard paths below the shared home - TokenSave repository indexes: `.tokensave/` inside each explicitly configured From a38bc75f95db791e4ccfd270be259c82a047bd22 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:11:00 +0200 Subject: [PATCH 217/538] Report Claude permission mode in diagnostics --- .../usr/local/bin/claude-tools-doctor.sh | 29 ++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh index 0f16921f05..9ae7dda7da 100644 --- a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh +++ b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh @@ -1,5 +1,5 @@ #!/usr/bin/with-contenv bashio -# Diagnose installation, registration, routing, indexing, and recorded savings without +# Diagnose installation, registration, routing, indexing, permissions, and recorded savings without # printing MCP environment values (which may contain the Home Assistant access token). # shellcheck shell=bash set +e @@ -22,10 +22,31 @@ for tool in claude claude-desktop headroom rtk tokensave git gh rg jq shellcheck done section "Configured switches" -for option in install_headroom headroom_wrap_claude_code expose_headroom_dashboard install_rtk install_tokensave install_caveman enable_tools_health_report; do +for option in permission_mode install_headroom headroom_wrap_claude_code expose_headroom_dashboard install_rtk install_tokensave install_caveman enable_tools_health_report; do printf '%-30s %s\n' "$option" "$(bashio::config "$option")" done +section "Claude Code permission state" +python3 - <<'PY' +import json +from pathlib import Path + +path = Path.home() / ".claude/settings.json" +try: + data = json.loads(path.read_text()) +except FileNotFoundError: + print("settings: MISSING") +except Exception as exc: + print(f"settings: INVALID: {exc}") +else: + permissions = data.get("permissions", {}) + if isinstance(permissions, dict): + print(f"permissions.defaultMode: {permissions.get('defaultMode', '')}") + else: + print("permissions: INVALID") +print(f"managed-state marker: {(Path.home() / '.claude/.addon-permission-mode.json').exists()}") +PY + section "MCP registrations (environment values redacted)" python3 - <<'PY' import json @@ -118,11 +139,11 @@ if bashio::config.true 'install_tokensave'; then tokensave gain --all --range 30d || true while IFS= read -r configured_path; do [ -n "$configured_path" ] || continue - repo_root="$(git -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" + repo_root="$(s6-setuidgid abc env HOME="$HOME" git -c safe.directory='*' -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" if [ -z "$repo_root" ]; then echo "${configured_path}: not a Git repository" elif [ -f "$repo_root/.tokensave/tokensave.db" ]; then - tokensave status "$repo_root" --short || true + s6-setuidgid abc env HOME="$HOME" tokensave status "$repo_root" --short || true else echo "${repo_root}: NOT INITIALIZED" fi From dc280a5cafeb27fe94cb86b298523c6d2f4ea1c3 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 15 Jul 2026 08:19:42 +0000 Subject: [PATCH 218/538] GitHub bot: sanitize (spaces + LF endings) & chmod [nobuild] --- .../rootfs/etc/cont-init.d/81-tokensave_repositories.sh | 0 claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh | 0 claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh | 0 3 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh mode change 100644 => 100755 claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh mode change 100644 => 100755 claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh diff --git a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh old mode 100644 new mode 100755 diff --git a/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh b/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh old mode 100644 new mode 100755 diff --git a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh old mode 100644 new mode 100755 From ad50abc3651fd16f08538e3e7a97a12903e02cc5 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:25:14 +0200 Subject: [PATCH 219/538] Update config.yaml --- birdnet-go-dev/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/birdnet-go-dev/config.yaml b/birdnet-go-dev/config.yaml index 4cd5713f39..d929c6504e 100644 --- a/birdnet-go-dev/config.yaml +++ b/birdnet-go-dev/config.yaml @@ -127,5 +127,5 @@ slug: birdnet-go-dev udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "source-20260714" +version: "source-20260715" video: true From 85dab2ae6eaa690f509b43d4febb95c75479bd7d Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 15 Jul 2026 08:27:28 +0000 Subject: [PATCH 220/538] Revert "Update config.yaml" This reverts commit ad50abc3651fd16f08538e3e7a97a12903e02cc5. --- birdnet-go-dev/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/birdnet-go-dev/config.yaml b/birdnet-go-dev/config.yaml index d929c6504e..4cd5713f39 100644 --- a/birdnet-go-dev/config.yaml +++ b/birdnet-go-dev/config.yaml @@ -127,5 +127,5 @@ slug: birdnet-go-dev udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "source-20260715" +version: "source-20260714" video: true From 5d577ad9546697f8e085a0c04456d8988d638e7b Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:59:09 +0200 Subject: [PATCH 221/538] Run Claude bypass mode as non-root --- .../cont-init.d/19-claude_bypass_runtime.sh | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh diff --git a/claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh b/claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh new file mode 100644 index 0000000000..c55d307825 --- /dev/null +++ b/claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh @@ -0,0 +1,48 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +set -o pipefail + +# Claude Code deliberately refuses bypass-permissions mode when its effective UID is 0. +# The add-on historically defaults PUID to 0, so switch the shared `abc` desktop user to +# an unused non-root UID before storage ownership and Selkies runtime directories are set up. +# Keep abc's configured primary group (commonly group 0) so existing group-based access to +# Home Assistant mounts is preserved. Strict and auto permission modes are unchanged. +if [ "$(bashio::config 'permission_mode')" != "bypass" ]; then + exit 0 +fi + +CURRENT_UID="$(id -u abc)" +if [ "$CURRENT_UID" -ne 0 ]; then + bashio::log.info "Claude bypass runtime already uses non-root UID ${CURRENT_UID}" + exit 0 +fi + +find_available_uid() { + local candidate owner + for candidate in 1000 911 $(seq 1001 1099); do + owner="$(getent passwd "$candidate" | cut -d: -f1 || true)" + if [ -z "$owner" ] || [ "$owner" = "abc" ]; then + printf '%s' "$candidate" + return 0 + fi + done + return 1 +} + +TARGET_UID="$(find_available_uid || true)" +if [ -z "$TARGET_UID" ]; then + bashio::exit.nok "Claude bypass mode requires a non-root runtime user, but no free fallback UID was found" +fi + +usermod --uid "$TARGET_UID" abc + +if [ "$(id -u abc)" -eq 0 ]; then + bashio::exit.nok "Unable to switch the Claude Desktop runtime away from root for bypass mode" +fi + +mkdir -p /run/s6/container_environment +printf '%s' "$TARGET_UID" > /run/s6/container_environment/CLAUDE_RUNTIME_UID +printf '%s' "$(id -g abc)" > /run/s6/container_environment/CLAUDE_RUNTIME_GID + +bashio::log.warning "Claude bypass mode cannot run as root; remapped abc from UID 0 to UID ${TARGET_UID} (GID $(id -g abc))" From 6bf379bffcb1e1cfd51b8b2fb7696532910b2284 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:59:49 +0200 Subject: [PATCH 222/538] Use effective Claude runtime ownership --- claude_desktop/rootfs/etc/cont-init.d/20-folders.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh index cbcae8160e..6f936d26e0 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh @@ -3,9 +3,10 @@ # shellcheck disable=SC2046 set -e -# Define user -PUID=$(bashio::config "PUID") -PGID=$(bashio::config "PGID") +# Use the effective shared desktop user identity. In bypass mode an earlier init script may +# remap abc away from UID 0 because Claude Code rejects bypass permissions when run as root. +PUID="$(id -u abc)" +PGID="$(id -g abc)" # Check data location LOCATION="$(bashio::config 'data_location')" From d48d1f4d8d975eb56f9d5b055feff9ac0906c8cd Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 11:01:06 +0200 Subject: [PATCH 223/538] Drop root for Claude bypass launches --- claude_desktop/rootfs/usr/local/bin/claude | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/claude_desktop/rootfs/usr/local/bin/claude b/claude_desktop/rootfs/usr/local/bin/claude index ac0a27a966..ec56d152be 100644 --- a/claude_desktop/rootfs/usr/local/bin/claude +++ b/claude_desktop/rootfs/usr/local/bin/claude @@ -27,6 +27,17 @@ if [ ! -x "$REAL_CLAUDE" ]; then exit 127 fi +# Claude Code rejects bypass mode when the effective UID is 0. Normal Desktop sessions run +# as abc, which startup remaps to a non-root UID when bypass is selected. Also handle a user +# invoking this wrapper directly from a root container console by dropping to abc here. +if [ "$PERMISSION_MODE" = "bypass" ] && [ "$(id -u)" -eq 0 ]; then + if command -v s6-setuidgid > /dev/null 2>&1 && [ "$(id -u abc)" -ne 0 ]; then + exec s6-setuidgid abc "$0" "$@" + fi + echo "claude wrapper: bypass mode requires a non-root runtime user, but abc is still UID 0" >&2 + exit 1 +fi + if bashio::config.true 'install_headroom' && bashio::config.true 'headroom_wrap_claude_code'; then if [ -x "$HEADROOM_BIN" ] && curl -fsS --max-time 2 "${HEADROOM_URL}/health" > /dev/null 2>&1; then # Put /usr/bin before /usr/local/bin while Headroom resolves its upstream `claude` From b5985f230e43b2f45266b2b1786b9fa2696487b1 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 11:01:22 +0200 Subject: [PATCH 224/538] Restore effective Claude runtime ownership --- .../cont-init.d/84-claude_runtime_ownership.sh | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh diff --git a/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh b/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh new file mode 100644 index 0000000000..45402914f4 --- /dev/null +++ b/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh @@ -0,0 +1,17 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e + +# Earlier configuration scripts intentionally run as root and may use the configured PUID/PGID +# values when returning files to the runtime user. In bypass mode PUID can still be configured as +# 0 even though 19-claude_bypass_runtime.sh remapped abc to a non-root UID. Reconcile ownership +# with the effective desktop identity after all Claude configuration writes are complete. +RUNTIME_UID="$(id -u abc)" +RUNTIME_GID="$(id -g abc)" + +for managed_path in "$HOME/.claude" "$HOME/.claude.json" "$HOME/.config/Claude"; do + if [ -e "$managed_path" ]; then + chown -R -- "${RUNTIME_UID}:${RUNTIME_GID}" "$managed_path" \ + || bashio::log.warning "Unable to set effective runtime ownership on $managed_path" + fi +done From 7a6ad7261797307ec98f7ed436b23967c6b57471 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 11:02:23 +0200 Subject: [PATCH 225/538] Diagnose Claude bypass runtime identity --- .../rootfs/usr/local/bin/claude-tools-doctor.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh index 9ae7dda7da..150b73f46d 100755 --- a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh +++ b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh @@ -26,6 +26,18 @@ for option in permission_mode install_headroom headroom_wrap_claude_code expose_ printf '%-30s %s\n' "$option" "$(bashio::config "$option")" done +section "Runtime identity" +printf '%-30s %s\n' "configured PUID:PGID" "$(bashio::config 'PUID'):$(bashio::config 'PGID')" +printf '%-30s %s\n' "effective abc UID:GID" "$(id -u abc):$(id -g abc)" +printf '%-30s %s\n' "current process UID:GID" "$(id -u):$(id -g)" +if [ "$(bashio::config 'permission_mode')" = "bypass" ]; then + if [ "$(id -u abc)" -eq 0 ]; then + echo "bypass runtime: ERROR - Claude Code will reject bypass permissions while abc is root" + else + echo "bypass runtime: OK - Claude Desktop and Cowork run as a non-root UID" + fi +fi + section "Claude Code permission state" python3 - <<'PY' import json From ef0aecbde61f740ebd8beef413b05e8bde753057 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 11:02:55 +0200 Subject: [PATCH 226/538] Bump Claude Desktop add-on version --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index b54e4f4ae7..edeea5a405 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -103,5 +103,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.20" +version: "1.21" video: true From 5a2efc4f9eff4fa774e250d4b5bab4db49cb16c8 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 11:04:27 +0200 Subject: [PATCH 227/538] Document non-root Claude bypass runtime --- claude_desktop/README.md | 34 +++++++++++++++++++++++++++------- 1 file changed, 27 insertions(+), 7 deletions(-) diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 33cf4208e7..fd5600d25b 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -35,6 +35,10 @@ PATH tools. `/usr/bin/claude` directly, the session remains functional and still has the shared permission mode and Headroom MCP tools, but transparent proxy compression cannot be injected. +- When `permission_mode: bypass` is selected while `PUID` is `0`, the add-on + automatically remaps the shared `abc` desktop account to an unused non-root + UID before Selkies and Claude Desktop start. Claude Code refuses bypass mode + under an effective root UID. - **gnome-keyring** provides the Secret Service backend Electron needs to persist sign-in and dispatch permission grants across restarts. @@ -63,6 +67,8 @@ Git synchronization hooks. A repository is indexed only when it is listed in - Persistent sign-in through a bundled, auto-unlocked gnome-keyring. - Configurable Claude Code permissions: strict prompts, automatic safe-action approval, or explicit full bypass for trusted installations. +- Automatic non-root runtime enforcement for bypass mode, including root-console + wrapper launches. - Optional runtime Claude Desktop updates from Anthropic's apt repository. - Optional extra apt and pip package installation (pip installs use `uv`). - Baked-in `git`, GitHub CLI (`gh`), `ripgrep`, `jq`, `shellcheck`, `yamllint`, @@ -74,14 +80,15 @@ Git synchronization hooks. A repository is indexed only when it is listed in Assistant. - Independent hourly savings reports for Headroom, RTK, and TokenSave. - `claude-tools-doctor.sh` diagnostics for binaries, routing, hooks, MCP - registrations, project indexes, proxy health, permissions, and gains. + registrations, project indexes, proxy health, permissions, runtime identity, + and gains. - Low-power defaults for GPU mapping, Selkies frame rate, and volatile caches. ## Options | Option | Default | Description | | ------ | ------- | ----------- | -| `PUID` / `PGID` | `0` / `0` | Numeric user and group applied by the LinuxServer initialization. | +| `PUID` / `PGID` | `0` / `0` | Numeric user and group applied by LinuxServer initialization. In bypass mode, a root `PUID` is automatically replaced at runtime by an unused non-root UID while the configured group is retained. | | `TZ` | | Optional timezone, for example `Europe/Brussels`. | | `KEYBOARD` | | Optional Selkies keyboard layout. | | `PASSWORD` | | Optional password for direct Selkies ports. | @@ -122,9 +129,21 @@ permission_mode: auto `bypassPermissions` in the shared settings and `--dangerously-skip-permissions` for wrapper-launched sessions. +Claude Code does not permit bypass mode when its effective UID is `0`. If the +add-on is configured with `PUID: 0`, selecting `bypass` remaps only the shared +`abc` runtime account to an available non-root UID (preferring `1000`, then +`911`) before storage ownership and Desktop startup. Its configured primary +GID is retained, so group-based access to mounted Home Assistant paths remains +available. Strict and auto modes keep the configured identity unchanged. + +A root shell invoking `/usr/local/bin/claude` in bypass mode is also dropped to +the remapped `abc` account. Directly invoking `/usr/bin/claude` as root still +bypasses the add-on wrapper and will be rejected by Claude Code. + `bypass` gives Claude broad authority over all mounted writable data and every command or credential available inside the add-on. Enable it only in a trusted -installation with trusted repositories and mounts. +installation with trusted repositories and mounts. Mounted paths must remain +accessible to the effective non-root UID or its retained group. ### TokenSave project example @@ -171,10 +190,11 @@ Run the following inside the add-on through a custom script or container console claude-tools-doctor.sh ``` -The report checks the tool binaries, configuration switches, redacted MCP -registrations, Claude hooks, permission mode, Headroom health, TokenSave indexes, -routing, and recorded savings. It never prints MCP environment values because -the Home Assistant MCP entry can contain a long-lived token. +The report checks the tool binaries, configuration switches, configured and +effective runtime identities, redacted MCP registrations, Claude hooks, +permission mode, Headroom health, TokenSave indexes, routing, and recorded +savings. It never prints MCP environment values because the Home Assistant MCP +entry can contain a long-lived token. The hourly report can also be invoked manually: From 8ecbfccdcd0c0d83c96a148dcab4480df0ebad5e Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 11:05:49 +0200 Subject: [PATCH 228/538] Document Claude bypass root fix --- claude_desktop/CHANGELOG.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 098c4420bf..5757b7603d 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,11 @@ +## 1.21 (15-07-2026) + +- Fix Claude Code bypass permissions being rejected when the add-on uses its default root `PUID`. +- In `permission_mode: bypass`, remap the shared `abc` Desktop runtime to an unused non-root UID before storage ownership and Selkies startup, while retaining its configured primary group for mounted-path access. +- Make folder setup and final Claude configuration ownership follow the effective `abc` identity instead of the configured root UID. +- Drop root console invocations of the add-on's `/usr/local/bin/claude` wrapper to the non-root `abc` runtime before passing `--dangerously-skip-permissions`. +- Extend `claude-tools-doctor.sh` with configured/effective UID and GID checks for bypass mode. + ## 1.20 (15-07-2026) - Complete the TokenSave Claude Code integration at startup: install its MCP server, permissions, PreToolUse/UserPromptSubmit/Stop hooks, global guidance, and Git synchronization hooks instead of registering only `tokensave serve`. From 9471dffcca153ee9880f0695cca9996fc5df4c50 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 15 Jul 2026 09:18:15 +0000 Subject: [PATCH 229/538] GitHub bot: sanitize (spaces + LF endings) & chmod [nobuild] --- claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh | 0 .../rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh mode change 100644 => 100755 claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh diff --git a/claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh b/claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh old mode 100644 new mode 100755 diff --git a/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh b/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh old mode 100644 new mode 100755 From 3329c4b40d16a1a9816298f97c7605398f09ce34 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 13:17:03 +0200 Subject: [PATCH 230/538] nobuild --- claude_desktop/config.yaml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index edeea5a405..178e9eb5c2 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -13,8 +13,8 @@ environment: AUTO_GPU: "1" FM_HOME: /data/data HOME: /data/data - PGID: "0" - PUID: "0" + PGID: "1000" + PUID: "1000" SELKIES_FRAMERATE: "30" START_DOCKER: "false" TITLE: Claude Desktop @@ -35,8 +35,6 @@ options: env_vars: [] DNS_server: 8.8.8.8 data_location: /data/data - PGID: 0 - PUID: 0 additional_apps: "" additional_pip: "" auto_update: true @@ -76,8 +74,6 @@ schema: DRINODE: list(/dev/dri/card0|/dev/dri/card1|/dev/dri/card2|/dev/dri/renderD128|/dev/dri/renderD129|)? KEYBOARD: list(da-dk-qwerty|de-de-qwertz|en-gb-qwerty|en-us-qwerty|es-es-qwerty|fr-ch-qwertz|fr-fr-azerty|it-it-qwerty|ja-jp-qwerty|pt-br-qwerty|sv-se-qwerty|tr-tr-qwerty)? PASSWORD: str? - PGID: int - PUID: int TZ: match([A-Z][a-z]*./[A-Z][a-z]*.)? additional_apps: str? additional_pip: str? From 29f2cfd1984977014cc8b5e391d2c75550e01147 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 13:29:07 +0200 Subject: [PATCH 231/538] Update 81-claude_update.sh --- .../rootfs/etc/cont-init.d/81-claude_update.sh | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/81-claude_update.sh b/claude_desktop/rootfs/etc/cont-init.d/81-claude_update.sh index 8fd3dd7862..6c58cc15b9 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/81-claude_update.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/81-claude_update.sh @@ -2,11 +2,9 @@ # shellcheck shell=bash set -e -if bashio::config.true 'auto_update'; then - bashio::log.info "Checking for Claude Desktop updates..." - if apt-get update -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 &> /dev/null && apt-get install -y --only-upgrade claude-desktop &> /dev/null; then - bashio::log.info "Claude Desktop version: $(dpkg-query -W -f='${Version}' claude-desktop)" - else - bashio::log.warning "Update check failed (offline?), keeping current version" - fi +bashio::log.info "Checking for Claude Desktop updates..." +if apt-get update -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 &> /dev/null && apt-get install -y --only-upgrade claude-desktop &> /dev/null; then + bashio::log.info "Claude Desktop version: $(dpkg-query -W -f='${Version}' claude-desktop)" +else + bashio::log.warning "Update check failed (offline?), keeping current version" fi From 587121cb1b1959538eb6e1cc7282867186fd903c Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 13:29:35 +0200 Subject: [PATCH 232/538] Update config.yaml --- claude_desktop/config.yaml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 178e9eb5c2..d3606e84c1 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -77,7 +77,11 @@ schema: TZ: match([A-Z][a-z]*./[A-Z][a-z]*.)? additional_apps: str? additional_pip: str? - auto_update: bool? + cifsdomain: str? + cifspassword: str? + cifsusername: str? + localdisks: str? + networkdisks: str? github_email: str? enable_ha_mcp: bool? ha_mcp_url: str? @@ -99,5 +103,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.21" +version: "1.22" video: true From e5983f47186f53af23dbac0a62f9d5b1f4081bd7 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 15 Jul 2026 14:05:19 +0200 Subject: [PATCH 233/538] feat(claude_desktop): add ha-cli Core-API helper for configuring Home Assistant Ship a `ha-cli` command that lets Claude configure Home Assistant (automations, scripts, scenes, helpers, dashboards, registries, service calls) through the Home Assistant Core API instead of a /config filesystem mount, so secrets.yaml and other add-ons' credentials stay out of reach. It authenticates automatically with the add-on's SUPERVISOR_TOKEN via the Supervisor Core-API proxy (no token setup), with optional HA_TOKEN / ha_mcp_token overrides for a scoped Home Assistant user. A managed guidance block in ~/.claude/CLAUDE.md tells Claude Code to use the helper and to confirm before writes. Gated by the new enable_ha_api_helper option (default on). Adds the websockets dependency for the WebSocket subcommand. Co-Authored-By: Claude Opus 4.8 --- claude_desktop/CHANGELOG.md | 4 + claude_desktop/Dockerfile | 4 +- claude_desktop/README.md | 40 ++++ claude_desktop/config.yaml | 4 +- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 55 +++++ claude_desktop/rootfs/usr/local/bin/ha-cli | 213 ++++++++++++++++++ 6 files changed, 317 insertions(+), 3 deletions(-) create mode 100755 claude_desktop/rootfs/usr/local/bin/ha-cli diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 5757b7603d..c92bbdc23e 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.23 (15-07-2026) + +- Add a `ha-cli` helper that lets Claude configure Home Assistant (automations, scripts, scenes, helpers, dashboards, area/label/floor/entity registries, and service calls) through the Home Assistant Core API instead of a filesystem mount. It authenticates automatically with the add-on's `SUPERVISOR_TOKEN` via the Supervisor Core-API proxy (no token setup), and deliberately cannot reach `configuration.yaml`/`secrets.yaml` or other add-ons' credentials. Toggle with the new `enable_ha_api_helper` option (default on), which also controls a managed guidance block appended to `~/.claude/CLAUDE.md`. + ## 1.21 (15-07-2026) - Fix Claude Code bypass permissions being rejected when the add-on uses its default root `PUID`. diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index e8bff0593f..fc90eb52d2 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -74,7 +74,7 @@ RUN curl -fsSL --retry 3 --retry-delay 2 \ # cannot alter executables elsewhere in the image. COPY rootfs/ / RUN find /etc/cont-init.d /etc/s6-overlay /defaults /usr/local/bin -type f \ - \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; && \ + \( -name "*.sh" -o -name "run" -o -name "finish" -o -name "ha-cli" \) -print -exec chmod +x {} \; && \ chmod +x /usr/local/bin/claude # Uses /bin for compatibility purposes @@ -146,7 +146,7 @@ RUN /usr/local/bin/rtk --version && /usr/local/bin/tokensave --version # installer used for the additional_pip option). RUN apt-get update && \ apt-get install -y --no-install-recommends nodejs && \ - pip3 install --break-system-packages "headroom-ai[proxy,code,mcp]" mcp-proxy uv && \ + pip3 install --break-system-packages "headroom-ai[proxy,code,mcp]" mcp-proxy uv websockets && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* /root/.cache diff --git a/claude_desktop/README.md b/claude_desktop/README.md index fd5600d25b..50c138bfb2 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -111,6 +111,7 @@ Git synchronization hooks. A repository is indexed only when it is listed in | `enable_ha_mcp` | `false` | Register Home Assistant's MCP server in Claude (requires `ha_mcp_token`). | | `ha_mcp_url` | `http://homeassistant:8123/api/mcp` | Streamable HTTP endpoint of Home Assistant's MCP Server integration. | | `ha_mcp_token` | | Home Assistant long-lived access token used by the MCP bridge. | +| `enable_ha_api_helper` | `true` | Ship the `ha-cli` Core-API helper and add guidance so Claude can configure Home Assistant without a `/config` mount. | | `additional_apps` | | Comma-separated Debian apt packages to install at startup. | | `additional_pip` | | Comma-separated pip packages installed at startup (via `uv`). | | `data_location` | `/data/data` | Persistent home directory for Claude and tooling. | @@ -216,6 +217,45 @@ The add-on bridges Claude to the integration's stateless Streamable HTTP endpoint (`/api/mcp`) with `mcp-proxy`. Override `ha_mcp_url` only if your Home Assistant instance is not reachable as `homeassistant:8123` from add-ons. +## Configuring Home Assistant (API helper) + +When `enable_ha_api_helper` is on (the default), the add-on ships a `ha-cli` +command and tells Claude — via a managed block in `~/.claude/CLAUDE.md` — that +it can configure Home Assistant through the Home Assistant **Core API** rather +than a filesystem mount. This is deliberately more contained than mapping +`/config`: the API cannot read `configuration.yaml`, `secrets.yaml`, or any +other add-on's stored credentials. + +`ha-cli` authenticates automatically with the add-on's `SUPERVISOR_TOKEN` +through the Supervisor Core-API proxy (the add-on already sets +`homeassistant_api: true`), so there is nothing to configure. It can create and +edit automations, scripts, and scenes; call any service; read entity states; +and, over WebSocket, manage helpers, dashboards, and the area/label/floor/entity +registries. Run `ha-cli --help` inside the add-on for the full command +reference. + +```bash +ha-cli config # connectivity check +ha-cli get config/automation/config/ # read one automation +ha-cli post config/automation/config/ @new.json # create/update it +ha-cli call automation.reload # apply YAML-mode changes +ha-cli ws '{"type":"config/area_registry/list"}' +``` + +Security notes: + +- The Supervisor proxy token grants **admin-equivalent** Core API access (it can + call any service and edit any UI-managed configuration), but it cannot reach + the raw YAML files or other add-ons' data. For a tighter scope, set + `HA_BASE_URL`/`HA_TOKEN` (or the `ha_mcp_token` option) to a limited Home + Assistant user's long-lived token — `ha-cli` prefers those when present. +- The guidance instructs Claude to read each object and show you the intended + change before writing, but Claude Code's own tool-permission prompts remain + the real gate: each `ha-cli` call still needs your approval unless + `permission_mode` is set to `bypass`. +- Set `enable_ha_api_helper: false` to remove both the guidance block and the + helper's registration if you do not want Claude configuring Home Assistant. + ## Custom scripts The add-on includes the repository standard custom-script executor. On first diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index d3606e84c1..39dc679aaa 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -42,6 +42,7 @@ options: enable_ha_mcp: false ha_mcp_url: http://homeassistant:8123/api/mcp ha_mcp_token: "" + enable_ha_api_helper: true github_token: "" github_username: "" enable_tools_health_report: true @@ -86,6 +87,7 @@ schema: enable_ha_mcp: bool? ha_mcp_url: str? ha_mcp_token: password? + enable_ha_api_helper: bool? github_token: password? github_username: str? enable_tools_health_report: bool @@ -103,5 +105,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.22" +version: "1.23" video: true diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index cd8e9fbf9e..ae9e881392 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -251,6 +251,61 @@ if new != text: PY fi +# Tell Claude Code that it can configure Home Assistant over the Core API via the shipped +# `ha-cli` helper (no /config filesystem mount needed). Managed, idempotent block appended to +# the user's global CLAUDE.md; removed when the helper is disabled. Mirrors the headroom block. +HA_HELPER_GUIDE_BEGIN="" +if bashio::config.true 'enable_ha_api_helper'; then + mkdir -p "$(dirname "$CLAUDE_MD")" + if ! { [ -f "$CLAUDE_MD" ] && grep -qF "$HA_HELPER_GUIDE_BEGIN" "$CLAUDE_MD"; }; then + bashio::log.info "Adding Home Assistant API helper guidance to CLAUDE.md" + { + [ -s "$CLAUDE_MD" ] && printf '\n' + cat <<'MD' + +## Configuring Home Assistant + +You can configure this Home Assistant instance through its Core API using the `ha-cli` +command (on `PATH`). It authenticates automatically with the add-on's `$SUPERVISOR_TOKEN`, +so no token setup is needed. There is **no `/config` filesystem mount** — work only through +`ha-cli`, and never try to read or write Home Assistant YAML files directly. + +What is editable this way: automations, scripts, and scenes +(`ha-cli get|post|delete config/automation/config/` and the `script`/`scene` equivalents); +service calls (`ha-cli call ''`); state reads (`ha-cli states`); and, +over WebSocket, helpers, dashboards, and area/label/floor/entity registries +(`ha-cli ws '{"type":"..."}'`). Run `ha-cli --help` for the full reference. Raw YAML +(`configuration.yaml`, `secrets.yaml`) is intentionally unreachable — if a change needs it, +say so instead of working around it. + +Rules: run `ha-cli config` first to confirm connectivity; **read the current object and show +the user the intended change, then wait for confirmation** before any create/update/delete or +any state-changing `call`; after writing, read the object back and reload if needed +(e.g. `ha-cli call automation.reload`). + +MD + } >> "$CLAUDE_MD" + fi +elif [ -f "$CLAUDE_MD" ] && grep -qF "$HA_HELPER_GUIDE_BEGIN" "$CLAUDE_MD"; then + bashio::log.info "Removing Home Assistant API helper guidance from CLAUDE.md" + CLAUDE_MD="$CLAUDE_MD" python3 - <<'PY' || bashio::log.warning "Unable to remove Home Assistant API helper guidance automatically" +import os +import re +from pathlib import Path + +path = Path(os.environ["CLAUDE_MD"]) +text = path.read_text() +pattern = re.compile( + r"\n*.*?" + r"\n?", + re.DOTALL, +) +new = pattern.sub("", text) +if new != text: + path.write_text(new) +PY +fi + if bashio::config.true 'install_rtk'; then if command -v rtk &> /dev/null; then bashio::log.info "Configuring rtk Claude Code integration" diff --git a/claude_desktop/rootfs/usr/local/bin/ha-cli b/claude_desktop/rootfs/usr/local/bin/ha-cli new file mode 100755 index 0000000000..aba01d1dd8 --- /dev/null +++ b/claude_desktop/rootfs/usr/local/bin/ha-cli @@ -0,0 +1,213 @@ +#!/usr/bin/env python3 +"""ha-cli — talk to the local Home Assistant Core API from inside the add-on. + +Lets Claude Code configure Home Assistant (automations, scripts, scenes, +helpers, dashboards, areas/labels, service calls) through the API, without any +`/config` filesystem mount. `secrets.yaml` and other add-ons' credentials are +therefore never reachable. + +Authentication and the base URL are resolved automatically, in this order: + + 1. $HA_BASE_URL + $HA_TOKEN explicit override (advanced/scoped) + 2. $SUPERVISOR_TOKEN Supervisor Core-API proxy + (needs homeassistant_api: true, + which this add-on sets — zero setup) + 3. `ha_mcp_token` in /data/options.json user long-lived token -> :8123 + +Subcommands: + ha-cli get GET e.g. get config/automation/config/1700000000 + ha-cli post [BODY] POST BODY = inline JSON, @file, or - (stdin) + ha-cli delete DELETE + ha-cli call [BODY] call a service (BODY = JSON service data) + ha-cli states [entity_id] all states, or one entity + ha-cli config GET /config (sanity check / core info) + ha-cli ws one WebSocket command (BODY = JSON, @file, or -) + +`` is relative to the REST API root; a leading slash and/or `api/` prefix +are optional. Responses are printed as formatted JSON. Exit code is non-zero on +HTTP or API errors. + +Use the WebSocket subcommand for things the REST API does not expose: + ha-cli ws '{"type":"config/area_registry/list"}' + ha-cli ws '{"type":"input_boolean/create","name":"Guest mode","icon":"mdi:account"}' + ha-cli ws '{"type":"lovelace/config","url_path":null}' +""" + +import json +import os +import sys +import urllib.error +import urllib.request + + +def _load_option(name): + """Read a single option from the add-on's /data/options.json, if present.""" + try: + with open("/data/options.json", encoding="utf-8") as handle: + return json.load(handle).get(name) + except (OSError, ValueError): + return None + + +def resolve_endpoint(): + """Return (rest_base, ws_url, token) for the best available auth path.""" + base = os.environ.get("HA_BASE_URL") + token = os.environ.get("HA_TOKEN") + if base and token: + rest = base.rstrip("/") + ws = rest.replace("http", "ws", 1).rsplit("/api", 1)[0] + "/api/websocket" + return rest, ws, token + + token = os.environ.get("SUPERVISOR_TOKEN") + if token: + return "http://supervisor/core/api", "ws://supervisor/core/websocket", token + + token = _load_option("ha_mcp_token") + if token: + return ( + "http://homeassistant:8123/api", + "ws://homeassistant:8123/api/websocket", + token, + ) + + sys.exit( + "ha-cli: no credentials. Expected $SUPERVISOR_TOKEN (default inside the " + "add-on), or $HA_BASE_URL+$HA_TOKEN, or ha_mcp_token in the add-on options." + ) + + +def _url(base, path): + path = path.lstrip("/") + if path.startswith("api/"): + path = path[len("api/"):] + return base.rstrip("/") + "/" + path + + +def _read_body(arg): + """Resolve an inline-JSON / @file / - (stdin) body argument to a dict/list.""" + if arg is None: + return None + if arg == "-": + raw = sys.stdin.read() + elif arg.startswith("@"): + with open(arg[1:], encoding="utf-8") as handle: + raw = handle.read() + else: + raw = arg + raw = raw.strip() + if not raw: + return None + try: + return json.loads(raw) + except ValueError as exc: + sys.exit(f"ha-cli: body is not valid JSON: {exc}") + + +def _print(obj): + if isinstance(obj, (dict, list)): + print(json.dumps(obj, indent=2, ensure_ascii=False)) + elif obj not in (None, ""): + print(obj) + + +def rest(method, base, token, path, body=None): + data = None + headers = {"Authorization": f"Bearer {token}"} + if body is not None: + data = json.dumps(body).encode("utf-8") + headers["Content-Type"] = "application/json" + req = urllib.request.Request(_url(base, path), data=data, method=method, headers=headers) + try: + with urllib.request.urlopen(req, timeout=30) as resp: + text = resp.read().decode("utf-8") + except urllib.error.HTTPError as exc: + detail = exc.read().decode("utf-8", "replace").strip() + sys.exit(f"ha-cli: HTTP {exc.code} {exc.reason} on {method} {path}\n{detail}") + except urllib.error.URLError as exc: + sys.exit(f"ha-cli: cannot reach Home Assistant ({exc.reason}) on {method} {path}") + try: + return json.loads(text) if text.strip() else None + except ValueError: + return text + + +def ws_command(ws_url, token, command): + try: + import asyncio + + import websockets + except ImportError: + sys.exit( + "ha-cli: the 'websockets' Python package is required for the ws " + "subcommand. REST subcommands work without it." + ) + + async def run(): + async with websockets.connect(ws_url, max_size=None) as sock: + hello = json.loads(await sock.recv()) + if hello.get("type") != "auth_required": + raise SystemExit(f"ha-cli: unexpected WS greeting: {hello}") + await sock.send(json.dumps({"type": "auth", "access_token": token})) + if json.loads(await sock.recv()).get("type") != "auth_ok": + raise SystemExit("ha-cli: WebSocket authentication failed") + payload = dict(command) + payload["id"] = 1 + await sock.send(json.dumps(payload)) + while True: + msg = json.loads(await sock.recv()) + if msg.get("id") == 1 and msg.get("type") == "result": + return msg + + result = asyncio.run(run()) + if not result.get("success", True): + _print(result.get("error", result)) + sys.exit(1) + return result.get("result", result) + + +def main(argv): + if not argv or argv[0] in ("-h", "--help", "help"): + print(__doc__) + return 0 + + rest_base, ws_url, token = resolve_endpoint() + cmd, args = argv[0], argv[1:] + + if cmd == "get": + if len(args) != 1: + sys.exit("usage: ha-cli get ") + _print(rest("GET", rest_base, token, args[0])) + elif cmd == "post": + if not args: + sys.exit("usage: ha-cli post [BODY]") + body = _read_body(args[1]) if len(args) > 1 else None + _print(rest("POST", rest_base, token, args[0], body)) + elif cmd == "delete": + if len(args) != 1: + sys.exit("usage: ha-cli delete ") + _print(rest("DELETE", rest_base, token, args[0])) + elif cmd == "call": + if not args or "." not in args[0]: + sys.exit("usage: ha-cli call [BODY]") + domain, service = args[0].split(".", 1) + body = _read_body(args[1]) if len(args) > 1 else None + _print(rest("POST", rest_base, token, f"services/{domain}/{service}", body or {})) + elif cmd == "states": + path = f"states/{args[0]}" if args else "states" + _print(rest("GET", rest_base, token, path)) + elif cmd == "config": + _print(rest("GET", rest_base, token, "config")) + elif cmd == "ws": + if len(args) != 1: + sys.exit("usage: ha-cli ws ") + command = _read_body(args[0]) + if not isinstance(command, dict) or "type" not in command: + sys.exit('ha-cli: ws BODY must be a JSON object with a "type" field') + _print(ws_command(ws_url, token, command)) + else: + sys.exit(f"ha-cli: unknown subcommand '{cmd}' (try: ha-cli --help)") + return 0 + + +if __name__ == "__main__": + sys.exit(main(sys.argv[1:])) From 0223cc351138f62508d042d42870b80183b7d11c Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 15 Jul 2026 14:24:17 +0200 Subject: [PATCH 234/538] fix(claude_desktop): address ha-cli review findings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Check ha_mcp_token before SUPERVISOR_TOKEN: this add-on always sets homeassistant_api, so the admin-equivalent Supervisor token was always present and silently shadowed a user's deliberately scoped-down ha_mcp_token, defeating the documented scoping path (Codex P1). - Make ha-cli itself refuse to run when enable_ha_api_helper is false, instead of only removing the CLAUDE.md guidance text — disabling the option now actually disables the helper (Codex P2). - Normalize HA_BASE_URL to include /api when the user omits it, so REST calls don't 404 (CodeRabbit). - Read/write CLAUDE.md with explicit UTF-8 in the ha-api-helper removal block, matching the emoji/special characters Claude tends to write there (CodeRabbit). Co-Authored-By: Claude Sonnet 5 --- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 4 +- claude_desktop/rootfs/usr/local/bin/ha-cli | 43 ++++++++++++++----- 2 files changed, 35 insertions(+), 12 deletions(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index ae9e881392..03c343c1f6 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -294,7 +294,7 @@ import re from pathlib import Path path = Path(os.environ["CLAUDE_MD"]) -text = path.read_text() +text = path.read_text(encoding="utf-8") pattern = re.compile( r"\n*.*?" r"\n?", @@ -302,7 +302,7 @@ pattern = re.compile( ) new = pattern.sub("", text) if new != text: - path.write_text(new) + path.write_text(new, encoding="utf-8") PY fi diff --git a/claude_desktop/rootfs/usr/local/bin/ha-cli b/claude_desktop/rootfs/usr/local/bin/ha-cli index aba01d1dd8..6d521ef256 100755 --- a/claude_desktop/rootfs/usr/local/bin/ha-cli +++ b/claude_desktop/rootfs/usr/local/bin/ha-cli @@ -9,10 +9,15 @@ therefore never reachable. Authentication and the base URL are resolved automatically, in this order: 1. $HA_BASE_URL + $HA_TOKEN explicit override (advanced/scoped) - 2. $SUPERVISOR_TOKEN Supervisor Core-API proxy - (needs homeassistant_api: true, - which this add-on sets — zero setup) - 3. `ha_mcp_token` in /data/options.json user long-lived token -> :8123 + 2. `ha_mcp_token` in /data/options.json scoped user long-lived token -> :8123 + 3. $SUPERVISOR_TOKEN Supervisor Core-API proxy fallback + (admin-equivalent; needs + homeassistant_api: true, which this + add-on sets — zero setup) + +The scoped token is checked before the Supervisor fallback so setting +`ha_mcp_token` actually narrows access instead of being shadowed by the +always-present admin-equivalent Supervisor token. Subcommands: ha-cli get GET e.g. get config/automation/config/1700000000 @@ -49,19 +54,26 @@ def _load_option(name): return None +def _helper_enabled(): + """Mirror config.yaml's enable_ha_api_helper default (true) when unset.""" + value = _load_option("enable_ha_api_helper") + return value is not False + + def resolve_endpoint(): """Return (rest_base, ws_url, token) for the best available auth path.""" base = os.environ.get("HA_BASE_URL") token = os.environ.get("HA_TOKEN") if base and token: rest = base.rstrip("/") + if not rest.endswith("/api"): + rest += "/api" ws = rest.replace("http", "ws", 1).rsplit("/api", 1)[0] + "/api/websocket" return rest, ws, token - token = os.environ.get("SUPERVISOR_TOKEN") - if token: - return "http://supervisor/core/api", "ws://supervisor/core/websocket", token - + # Checked before SUPERVISOR_TOKEN: this add-on always sets homeassistant_api, + # so the admin-equivalent Supervisor token is otherwise always present and + # would shadow a user's deliberately scoped-down ha_mcp_token. token = _load_option("ha_mcp_token") if token: return ( @@ -70,9 +82,14 @@ def resolve_endpoint(): token, ) + token = os.environ.get("SUPERVISOR_TOKEN") + if token: + return "http://supervisor/core/api", "ws://supervisor/core/websocket", token + sys.exit( - "ha-cli: no credentials. Expected $SUPERVISOR_TOKEN (default inside the " - "add-on), or $HA_BASE_URL+$HA_TOKEN, or ha_mcp_token in the add-on options." + "ha-cli: no credentials. Expected ha_mcp_token in the add-on options " + "(scoped user), $SUPERVISOR_TOKEN (admin-equivalent fallback, default " + "inside the add-on), or an explicit $HA_BASE_URL+$HA_TOKEN override." ) @@ -170,6 +187,12 @@ def main(argv): print(__doc__) return 0 + if not _helper_enabled(): + sys.exit( + "ha-cli: disabled (enable_ha_api_helper is false in the add-on " + "options). Enable it there to let Claude configure Home Assistant." + ) + rest_base, ws_url, token = resolve_endpoint() cmd, args = argv[0], argv[1:] From f990177df85b64066a397a3d5c41ca2c021ca6b1 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 15 Jul 2026 14:32:35 +0200 Subject: [PATCH 235/538] fix(claude_desktop): resolve headroom binary via PATH in claude wrapper The /usr/local/bin/claude wrapper hardcoded HEADROOM_BIN as /usr/local/bin/headroom, but the binary is installed at /usr/bin/headroom (symlink to /lsiopy/bin/headroom). The -x check therefore always failed and terminal Claude Code sessions never routed through the Headroom proxy at 127.0.0.1:8787. Resolve the binary with "command -v headroom" instead; an empty result still fails the -x check safely and falls back to launching Claude Code directly. Co-Authored-By: Claude Fable 5 --- claude_desktop/CHANGELOG.md | 4 ++++ claude_desktop/config.yaml | 2 +- claude_desktop/rootfs/usr/local/bin/claude | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index c92bbdc23e..1729842d4d 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.24 (15-07-2026) + +- Fix the `/usr/local/bin/claude` wrapper never routing terminal Claude Code sessions through the Headroom proxy: it hardcoded `HEADROOM_BIN="/usr/local/bin/headroom"` while the binary is installed at `/usr/bin/headroom`, so the executable check always failed and the wrapper fell back to launching Claude Code directly. Resolve the binary with `command -v headroom` instead. + ## 1.23 (15-07-2026) - Add a `ha-cli` helper that lets Claude configure Home Assistant (automations, scripts, scenes, helpers, dashboards, area/label/floor/entity registries, and service calls) through the Home Assistant Core API instead of a filesystem mount. It authenticates automatically with the add-on's `SUPERVISOR_TOKEN` via the Supervisor Core-API proxy (no token setup), and deliberately cannot reach `configuration.yaml`/`secrets.yaml` or other add-ons' credentials. Toggle with the new `enable_ha_api_helper` option (default on), which also controls a managed guidance block appended to `~/.claude/CLAUDE.md`. diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 39dc679aaa..e2b62075d2 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -105,5 +105,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.23" +version: "1.24" video: true diff --git a/claude_desktop/rootfs/usr/local/bin/claude b/claude_desktop/rootfs/usr/local/bin/claude index ec56d152be..f928a846c3 100644 --- a/claude_desktop/rootfs/usr/local/bin/claude +++ b/claude_desktop/rootfs/usr/local/bin/claude @@ -3,7 +3,7 @@ set -o pipefail REAL_CLAUDE="/usr/bin/claude" -HEADROOM_BIN="/usr/local/bin/headroom" +HEADROOM_BIN="$(command -v headroom || true)" HEADROOM_URL="http://127.0.0.1:8787" PERMISSION_MODE="$(bashio::config 'permission_mode')" declare -a CLAUDE_PERMISSION_ARGS=() From 7d2c6eb9b2ea805088428e3e46933711f4078c3a Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 15 Jul 2026 14:42:41 +0200 Subject: [PATCH 236/538] fix(claude_desktop): self-heal TokenSave graph against corruption on startup The startup indexer chose init vs sync purely on whether .tokensave/tokensave.db existed, so an interrupted init or a hard add-on stop mid-write could leave a partial or malformed SQLite graph that every subsequent boot then ran `sync` against, failing (and staying broken) forever. Prepare each configured repo defensively instead: - serialize the operation under a startup-scoped flock so an overlapping restart or a mid-boot git post-commit/checkout sync hook can't write the same DB concurrently; - refresh an existing index with a retried incremental sync, since SQLITE_BUSY from lock contention is transient, not corruption; - quarantine a genuinely unreadable index (sync still failing after retries) or a half-written one (an interrupted init, detected via a sentinel file) to .tokensave/corrupt-/ and rebuild from scratch, so the graph self-heals rather than propagating corruption. All file operations run as the abc runtime user because the repo .tokensave directory is outside this script's final ownership pass. Co-Authored-By: Claude Fable 5 --- claude_desktop/CHANGELOG.md | 1 + .../rootfs/etc/cont-init.d/82-claude_tools.sh | 67 ++++++++++++++++--- 2 files changed, 59 insertions(+), 9 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 1729842d4d..1ea78aa7d0 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,6 +1,7 @@ ## 1.24 (15-07-2026) - Fix the `/usr/local/bin/claude` wrapper never routing terminal Claude Code sessions through the Headroom proxy: it hardcoded `HEADROOM_BIN="/usr/local/bin/headroom"` while the binary is installed at `/usr/bin/headroom`, so the executable check always failed and the wrapper fell back to launching Claude Code directly. Resolve the binary with `command -v headroom` instead. +- Harden startup TokenSave indexing so an interrupted `init`/`sync` or a hard add-on stop can no longer leave a corrupt semantic graph that fails every subsequent boot. Each configured repository is now prepared under a startup-scoped `flock` (serialised against overlapping restarts and mid-boot git sync hooks); an existing index is refreshed with a retried incremental `sync` (transient `SQLITE_BUSY` no longer looks like corruption); and only a genuinely unreadable index — or a half-written one flagged by an `init` sentinel — is quarantined to `.tokensave/corrupt-/` and rebuilt from scratch, so the graph self-heals instead of propagating corruption. ## 1.23 (15-07-2026) diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 03c343c1f6..be0f65cca4 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -193,15 +193,64 @@ if $TOKENSAVE_ENABLED; then fi TOKENSAVE_REPOS_SEEN[$repo_root]=1 - if [ -f "$repo_root/.tokensave/tokensave.db" ]; then - bashio::log.info "Synchronizing TokenSave index: ${repo_root}" - run_as_runtime_user tokensave sync "$repo_root" \ - || bashio::log.warning "TokenSave sync failed for ${repo_root}" - else - bashio::log.info "Initializing TokenSave index: ${repo_root}" - run_as_runtime_user tokensave init "$repo_root" \ - || bashio::log.warning "TokenSave initialization failed for ${repo_root}" - fi + bashio::log.info "Preparing TokenSave index: ${repo_root}" + # Prepare the per-repo semantic graph defensively so a hard add-on stop or storage + # hiccup can never leave a broken index that fails every subsequent boot: + # * a startup-scoped flock serializes against an overlapping restart (and any git + # post-commit/checkout sync hook that fires mid-boot), so two writers never race; + # * an existing index is refreshed with a cheap incremental `sync`, retried a few + # times because SQLITE_BUSY under lock contention is transient, not corruption; + # * only a genuinely unreadable/malformed index (sync still failing after retries) + # or a half-written one from an interrupted `init` is quarantined and rebuilt, + # so the graph self-heals instead of propagating corruption; + # * `init` is bracketed by a sentinel file so an interrupted full build is detected + # as incomplete on the next start and rebuilt rather than trusted. + # All file operations run as the abc runtime user because the repo `.tokensave` + # directory is not covered by this script's final ownership pass. + # shellcheck disable=SC2016 # single-quoted on purpose: $1/$db/etc. expand in the abc shell + run_as_runtime_user bash -c ' + set -o pipefail + repo_root="$1" + ts_dir="$repo_root/.tokensave" + db="$ts_dir/tokensave.db" + lock="$ts_dir/.startup.lock" + initflag="$ts_dir/.init-incomplete" + mkdir -p "$ts_dir" + exec 9>"$lock" + if ! flock -n 9; then + echo "TokenSave: index busy for $repo_root; skipping startup sync" >&2 + exit 0 + fi + quarantine() { + stamp="$(date +%Y%m%d-%H%M%S)" + bdir="$ts_dir/corrupt-$stamp" + mkdir -p "$bdir" + for f in "$db" "$db-wal" "$db-shm"; do + [ -e "$f" ] && mv -f "$f" "$bdir/" 2>/dev/null || true + done + echo "TokenSave: quarantined suspect index to $bdir" >&2 + } + if [ -f "$db" ] && [ ! -f "$initflag" ]; then + attempt=1 + while :; do + tokensave sync "$repo_root" && exit 0 + [ "$attempt" -ge 3 ] && break + echo "TokenSave: sync attempt $attempt failed for $repo_root; retrying" >&2 + attempt=$((attempt + 1)) + sleep 2 + done + echo "TokenSave: sync failed after retries for $repo_root; rebuilding index" >&2 + quarantine + elif [ -f "$db" ]; then + echo "TokenSave: previous init did not finish for $repo_root; rebuilding index" >&2 + quarantine + fi + : > "$initflag" + tokensave init "$repo_root" && { rm -f "$initflag"; exit 0; } + echo "TokenSave: init failed for $repo_root; will retry on next start" >&2 + exit 1 + ' _ "$repo_root" \ + || bashio::log.warning "TokenSave preparation failed for ${repo_root}" done < <(bashio::config.array 'tokensave_project_paths') fi From b328ae242f83a3f545e6d8c23b356bc3aa75a215 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 15 Jul 2026 14:01:27 +0000 Subject: [PATCH 237/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index 035154a108..0b16ca0905 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,4 +1,5 @@ ## ⚠ Open Issue : [🐛 [qBittorrent] Cant update to 5.2.3 (opened 2026-07-09)](https://github.com/alexbelgium/hassio-addons/issues/2836) by [@tschoehuijs](https://github.com/tschoehuijs) +## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From 2a1412d9571d1c0633b39edaad143c2d319f3207 Mon Sep 17 00:00:00 2001 From: Maksim Kashapov <56276969+crazyrokr@users.noreply.github.com> Date: Wed, 15 Jul 2026 16:10:54 +0200 Subject: [PATCH 238/538] Fix Gitea HEALTHCHECK in case of SSL setup --- gitea/Dockerfile | 2 +- gitea/rootfs/etc/cont-init.d/99-run.sh | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/gitea/Dockerfile b/gitea/Dockerfile index cfc429fd8b..4c6d771cd5 100644 --- a/gitea/Dockerfile +++ b/gitea/Dockerfile @@ -133,4 +133,4 @@ HEALTHCHECK \ --retries=5 \ --start-period=30s \ --timeout=25s \ - CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 + CMD curl -A "HealthCheck: Docker/1.0" -s -f -k --http1.1 "$(cat /run/health_protocol 2>/dev/null || echo http)://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 diff --git a/gitea/rootfs/etc/cont-init.d/99-run.sh b/gitea/rootfs/etc/cont-init.d/99-run.sh index e163ccfb65..c6b28e3d7e 100755 --- a/gitea/rootfs/etc/cont-init.d/99-run.sh +++ b/gitea/rootfs/etc/cont-init.d/99-run.sh @@ -55,6 +55,7 @@ for file in /config/app.ini /etc/templates/app.ini; do PROTOCOL=http sed -i "/server/a PROTOCOL=http" "$file" fi + echo -n "${PROTOCOL}" > /run/health_protocol ################## # ADAPT ROOT_URL # From ff43c4eeba6a624933f2624c798749429039795a Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 17:05:51 +0200 Subject: [PATCH 239/538] Update CHANGELOG.md --- gitea/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index 72102123d6..2e76eaf83c 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,3 +1,4 @@ +- Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. ## 1.26.4 (2026-06-23) - Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) From 9ec6c44f0394fb3747d6ca59b630518cc890adec Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 17:06:02 +0200 Subject: [PATCH 240/538] Update config.yaml --- gitea/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gitea/config.yaml b/gitea/config.yaml index 83de67d1a4..cad067b70c 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.26.4" +version: "1.27" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" From b26da2e16163ca962f95aecca58b8af6f7f58675 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 15 Jul 2026 15:08:23 +0000 Subject: [PATCH 241/538] GitHub bot: changelog [nobuild] --- gitea/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index 2e76eaf83c..a807064de8 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,3 +1,4 @@ +## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. ## 1.26.4 (2026-06-23) From 259517289a0767c3923463c91ca2347716d4fbf3 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 17:12:15 +0200 Subject: [PATCH 242/538] build --- claude_desktop/config.yaml | 2 +- .../cont-init.d/19-claude_bypass_runtime.sh | 48 ------------------- .../rootfs/etc/cont-init.d/20-folders.sh | 6 +-- 3 files changed, 4 insertions(+), 52 deletions(-) delete mode 100755 claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index e2b62075d2..62da971837 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -105,5 +105,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.24" +version: "1.25" video: true diff --git a/claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh b/claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh deleted file mode 100755 index c55d307825..0000000000 --- a/claude_desktop/rootfs/etc/cont-init.d/19-claude_bypass_runtime.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -# Claude Code deliberately refuses bypass-permissions mode when its effective UID is 0. -# The add-on historically defaults PUID to 0, so switch the shared `abc` desktop user to -# an unused non-root UID before storage ownership and Selkies runtime directories are set up. -# Keep abc's configured primary group (commonly group 0) so existing group-based access to -# Home Assistant mounts is preserved. Strict and auto permission modes are unchanged. -if [ "$(bashio::config 'permission_mode')" != "bypass" ]; then - exit 0 -fi - -CURRENT_UID="$(id -u abc)" -if [ "$CURRENT_UID" -ne 0 ]; then - bashio::log.info "Claude bypass runtime already uses non-root UID ${CURRENT_UID}" - exit 0 -fi - -find_available_uid() { - local candidate owner - for candidate in 1000 911 $(seq 1001 1099); do - owner="$(getent passwd "$candidate" | cut -d: -f1 || true)" - if [ -z "$owner" ] || [ "$owner" = "abc" ]; then - printf '%s' "$candidate" - return 0 - fi - done - return 1 -} - -TARGET_UID="$(find_available_uid || true)" -if [ -z "$TARGET_UID" ]; then - bashio::exit.nok "Claude bypass mode requires a non-root runtime user, but no free fallback UID was found" -fi - -usermod --uid "$TARGET_UID" abc - -if [ "$(id -u abc)" -eq 0 ]; then - bashio::exit.nok "Unable to switch the Claude Desktop runtime away from root for bypass mode" -fi - -mkdir -p /run/s6/container_environment -printf '%s' "$TARGET_UID" > /run/s6/container_environment/CLAUDE_RUNTIME_UID -printf '%s' "$(id -g abc)" > /run/s6/container_environment/CLAUDE_RUNTIME_GID - -bashio::log.warning "Claude bypass mode cannot run as root; remapped abc from UID 0 to UID ${TARGET_UID} (GID $(id -g abc))" diff --git a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh index 6f936d26e0..275db5e2f7 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh @@ -5,8 +5,8 @@ set -e # Use the effective shared desktop user identity. In bypass mode an earlier init script may # remap abc away from UID 0 because Claude Code rejects bypass permissions when run as root. -PUID="$(id -u abc)" -PGID="$(id -g abc)" +PUID=1000 +PGID=1000 # Check data location LOCATION="$(bashio::config 'data_location')" @@ -82,7 +82,7 @@ fi ln -sfn /tmp/cache "$LOCATION/.cache" bashio::log.info "Setting ownership to $PUID:$PGID" -chown -R "$PUID":"$PGID" "$LOCATION" /tmp/cache "$XDG_RUNTIME_DIR" +chown -R "$PUID":"$PGID" "$LOCATION" /tmp/cache "$XDG_RUNTIME_DIR" /data chmod -R 700 "$LOCATION" # The base init-selkies-config script overrides XDG_RUNTIME_DIR to $HOME/.XDG, which lands From 64c7f2dd5bcb7d70cb0cf6bae165f259bff07085 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 15 Jul 2026 15:24:28 +0000 Subject: [PATCH 243/538] GitHub bot: changelog [nobuild] --- claude_desktop/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 1ea78aa7d0..783f74f10a 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,5 @@ +## 1.25 (15-07-2026) +- Minor bugs fixed ## 1.24 (15-07-2026) - Fix the `/usr/local/bin/claude` wrapper never routing terminal Claude Code sessions through the Headroom proxy: it hardcoded `HEADROOM_BIN="/usr/local/bin/headroom"` while the binary is installed at `/usr/bin/headroom`, so the executable check always failed and the wrapper fell back to launching Claude Code directly. Resolve the binary with `command -v headroom` instead. From 26c26e3668d5dbfd2a65306bccdae3fbc7070b86 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 15 Jul 2026 17:29:54 +0200 Subject: [PATCH 244/538] Update ownership to user 'abc' in 20-folders.sh Change ownership of specified directories to user 'abc'. --- claude_desktop/rootfs/etc/cont-init.d/20-folders.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh index 275db5e2f7..f9b93ac23e 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh @@ -82,7 +82,7 @@ fi ln -sfn /tmp/cache "$LOCATION/.cache" bashio::log.info "Setting ownership to $PUID:$PGID" -chown -R "$PUID":"$PGID" "$LOCATION" /tmp/cache "$XDG_RUNTIME_DIR" /data +chown -R abc "$LOCATION" /tmp/cache "$XDG_RUNTIME_DIR" /data chmod -R 700 "$LOCATION" # The base init-selkies-config script overrides XDG_RUNTIME_DIR to $HOME/.XDG, which lands From 0cfe28a4055eb5cbf35b530f8ad61bb030fda239 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 15 Jul 2026 16:17:53 +0000 Subject: [PATCH 245/538] fix(claude_desktop): align abc runtime identity so Claude Desktop can start Version 1.25 chowned the data location to a hardcoded 1000:1000 but never mapped the shared abc desktop user to that UID: during cont-init abc was still the image default (911), so TokenSave, RTK, nginx, PulseAudio, the Mesa shader cache, and Claude Desktop itself failed with Permission denied. The base image's init-adduser then remapped abc to root mid-startup because it reads PUID/PGID from add-on options (fallback 0) where they were never defined, which additionally made Claude Code reject bypass mode. - Add PUID/PGID add-on options (default 1000:1000) and remap abc to that identity at the top of 20-folders.sh, before any ownership pass and before any service resolves the user; pin init-adduser to the same effective identity so it cannot diverge mid-startup. - In permission_mode bypass, fall back from a configured PUID 0 to UID 1000, since Claude Code refuses bypass permissions as root. - Replace the nonexistent bashio::config.array (only present in the repo's standalone bashio) with bashio::config in the TokenSave repository setup, tools configuration, and claude-tools-doctor.sh. - Chown managed Claude configuration files to the effective abc identity instead of the raw configured PUID/PGID, which fell back to root. - Pre-create /tmp/.X11-unix (sticky 1777) so Xorg running as non-root abc on the tmpfs /tmp can create its socket. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01KN8i26JrKSaBdvTrpVEyQ6 --- claude_desktop/CHANGELOG.md | 9 +++++ claude_desktop/README.md | 19 ++++----- claude_desktop/config.yaml | 6 ++- .../rootfs/etc/cont-init.d/20-folders.sh | 40 ++++++++++++++++--- .../cont-init.d/81-tokensave_repositories.sh | 6 ++- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 16 +++++--- .../etc/cont-init.d/83-claude_permissions.sh | 10 +++-- .../84-claude_runtime_ownership.sh | 8 ++-- .../usr/local/bin/claude-tools-doctor.sh | 4 +- 9 files changed, 85 insertions(+), 33 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 783f74f10a..b15957c674 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,12 @@ +## 1.26 (15-07-2026) + +- Fix startup permission failures that prevented Claude Desktop from starting: storage was chowned to a hardcoded `1000:1000`, but the shared `abc` desktop user was never mapped to that UID. During init `abc` was still the image default (`911`), so TokenSave (`.claude.json.new`), RTK (`RTK.md`), nginx, PulseAudio, the Mesa shader cache, and Claude Desktop itself all hit `Permission denied`; the base image's `init-adduser` then remapped `abc` to root mid-startup (PUID/PGID were read from add-on options where they did not exist, falling back to `0`), which also made Claude Code reject `permission_mode: bypass`. +- Add `PUID`/`PGID` add-on options (default `1000:1000`) and remap `abc` to that identity at the very start of folder setup, before any ownership is applied and before any service resolves the user. The base image's `init-adduser` is pinned to the same effective identity so it can no longer remap `abc` mid-startup. +- In `permission_mode: bypass`, a configured `PUID: 0` automatically falls back to UID `1000` (Claude Code refuses bypass permissions as root), retaining the configured group. +- Fix `bashio::config.array: command not found` in the TokenSave repository setup, tools configuration, and `claude-tools-doctor.sh`: the function only exists in the repo's standalone bashio, not in the real bashio shipped in the image. Use `bashio::config`, which prints list entries one per line. +- Return managed Claude configuration files to the effective `abc` identity instead of the raw configured `PUID`/`PGID` (which previously fell back to `0` and left the files root-owned). +- Pre-create `/tmp/.X11-unix` with the standard sticky mode so Xorg, which runs as the non-root `abc` user on a tmpfs `/tmp`, no longer fails to create its socket directory (`_XSERVTransmkdir: euid != 0`). + ## 1.25 (15-07-2026) - Minor bugs fixed ## 1.24 (15-07-2026) diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 50c138bfb2..6e2e59c5be 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -35,9 +35,10 @@ PATH tools. `/usr/bin/claude` directly, the session remains functional and still has the shared permission mode and Headroom MCP tools, but transparent proxy compression cannot be injected. -- When `permission_mode: bypass` is selected while `PUID` is `0`, the add-on - automatically remaps the shared `abc` desktop account to an unused non-root - UID before Selkies and Claude Desktop start. Claude Code refuses bypass mode +- The shared `abc` desktop account runs under the configured `PUID`/`PGID` + (default `1000:1000`). When `permission_mode: bypass` is selected while + `PUID` is `0`, the add-on automatically falls back to UID `1000` before + Selkies and Claude Desktop start, because Claude Code refuses bypass mode under an effective root UID. - **gnome-keyring** provides the Secret Service backend Electron needs to persist sign-in and dispatch permission grants across restarts. @@ -88,7 +89,7 @@ Git synchronization hooks. A repository is indexed only when it is listed in | Option | Default | Description | | ------ | ------- | ----------- | -| `PUID` / `PGID` | `0` / `0` | Numeric user and group applied by LinuxServer initialization. In bypass mode, a root `PUID` is automatically replaced at runtime by an unused non-root UID while the configured group is retained. | +| `PUID` / `PGID` | `1000` / `1000` | Numeric user and group of the shared `abc` desktop account that owns the data location and runs Claude Desktop. In bypass mode, a root `PUID` is automatically replaced at runtime by UID `1000` while the configured group is retained. | | `TZ` | | Optional timezone, for example `Europe/Brussels`. | | `KEYBOARD` | | Optional Selkies keyboard layout. | | `PASSWORD` | | Optional password for direct Selkies ports. | @@ -131,11 +132,11 @@ permission_mode: auto `--dangerously-skip-permissions` for wrapper-launched sessions. Claude Code does not permit bypass mode when its effective UID is `0`. If the -add-on is configured with `PUID: 0`, selecting `bypass` remaps only the shared -`abc` runtime account to an available non-root UID (preferring `1000`, then -`911`) before storage ownership and Desktop startup. Its configured primary -GID is retained, so group-based access to mounted Home Assistant paths remains -available. Strict and auto modes keep the configured identity unchanged. +add-on is configured with `PUID: 0`, selecting `bypass` runs the shared `abc` +runtime account as UID `1000` instead, before storage ownership and Desktop +startup. Its configured primary GID is retained, so group-based access to +mounted Home Assistant paths remains available. Strict and auto modes keep the +configured identity unchanged. A root shell invoking `/usr/local/bin/claude` in bypass mode is also dropped to the remapped `abc` account. Directly invoking `/usr/bin/claude` as root still diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 62da971837..0cfdfb153d 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -34,6 +34,8 @@ name: Claude Desktop options: env_vars: [] DNS_server: 8.8.8.8 + PGID: 1000 + PUID: 1000 data_location: /data/data additional_apps: "" additional_pip: "" @@ -75,6 +77,8 @@ schema: DRINODE: list(/dev/dri/card0|/dev/dri/card1|/dev/dri/card2|/dev/dri/renderD128|/dev/dri/renderD129|)? KEYBOARD: list(da-dk-qwerty|de-de-qwertz|en-gb-qwerty|en-us-qwerty|es-es-qwerty|fr-ch-qwertz|fr-fr-azerty|it-it-qwerty|ja-jp-qwerty|pt-br-qwerty|sv-se-qwerty|tr-tr-qwerty)? PASSWORD: str? + PGID: int + PUID: int TZ: match([A-Z][a-z]*./[A-Z][a-z]*.)? additional_apps: str? additional_pip: str? @@ -105,5 +109,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.25" +version: "1.26" video: true diff --git a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh index f9b93ac23e..6ef48206a9 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh @@ -3,10 +3,35 @@ # shellcheck disable=SC2046 set -e -# Use the effective shared desktop user identity. In bypass mode an earlier init script may -# remap abc away from UID 0 because Claude Code rejects bypass permissions when run as root. -PUID=1000 -PGID=1000 +# Align the shared desktop user (abc) with the configured PUID/PGID before any storage is +# chowned and before any service or s6-setuidgid call resolves abc. The base image's +# init-adduser applies the same remap, but it runs after cont-init, so doing it here first is +# what lets the tokensave/rtk/git setup in the 8x scripts run under the final identity. +PUID="$(if bashio::config.has_value 'PUID'; then bashio::config 'PUID'; else echo '1000'; fi)" +PGID="$(if bashio::config.has_value 'PGID'; then bashio::config 'PGID'; else echo '1000'; fi)" + +# Claude Code refuses bypass-permissions mode under an effective root UID, so bypass mode +# always needs a non-root desktop user. +if [ "$(bashio::config 'permission_mode')" = "bypass" ] && [ "$PUID" -eq 0 ]; then + bashio::log.warning "permission_mode: bypass cannot run Claude Code as root; using UID 1000 instead of the configured PUID 0" + PUID=1000 +fi + +groupmod -o -g "$PGID" abc 2> /dev/null || true +usermod -o -u "$PUID" abc 2> /dev/null || true +if [ "$(id -u abc)" -ne "$PUID" ] || [ "$(id -g abc)" -ne "$PGID" ]; then + PUID="$(id -u abc)" + PGID="$(id -g abc)" + bashio::log.warning "Unable to remap the abc desktop user; continuing with its current identity ${PUID}:${PGID}" +fi + +# The base image's init-adduser reads PUID/PGID from the raw add-on options (default 0) and +# runs mid-startup, racing the services. Pin it to the effective identity chosen above so it +# can never remap abc away from the ownership applied below. +ADDUSER_RUN="/etc/s6-overlay/s6-rc.d/init-adduser/run" +if [ -f "$ADDUSER_RUN" ]; then + sed -i "s|^PUID=.*|PUID=${PUID}|;s|^PGID=.*|PGID=${PGID}|" "$ADDUSER_RUN" +fi # Check data location LOCATION="$(bashio::config 'data_location')" @@ -71,6 +96,11 @@ mkdir -p "$LOCATION" /tmp/cache "$XDG_RUNTIME_DIR" chmod 755 /tmp/cache chmod 700 "$XDG_RUNTIME_DIR" +# /tmp is a tmpfs and Xorg runs as the non-root abc user, which cannot create the X11 socket +# directory itself (_XSERVTransmkdir: euid != 0). Pre-create it with the standard sticky mode. +mkdir -p /tmp/.X11-unix +chmod 1777 /tmp/.X11-unix + # Pre-create the Selkies joystick log so the base image's "chmod 777 /tmp/selkies*" # calls (in init-selkies-config and svc-de) never fail on an empty glob. touch /tmp/selkies_js.log @@ -82,7 +112,7 @@ fi ln -sfn /tmp/cache "$LOCATION/.cache" bashio::log.info "Setting ownership to $PUID:$PGID" -chown -R abc "$LOCATION" /tmp/cache "$XDG_RUNTIME_DIR" /data +chown -R "${PUID}:${PGID}" "$LOCATION" /tmp/cache "$XDG_RUNTIME_DIR" /data chmod -R 700 "$LOCATION" # The base init-selkies-config script overrides XDG_RUNTIME_DIR to $HOME/.XDG, which lands diff --git a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh index 4b36dbc397..c9ee94147f 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh @@ -11,7 +11,7 @@ declare -A REPOS_SEEN=() while IFS= read -r configured_path; do configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" - [ -n "$configured_path" ] || continue + [ -n "$configured_path" ] && [ "$configured_path" != "null" ] || continue case "$configured_path" in /*) ;; @@ -33,4 +33,6 @@ while IFS= read -r configured_path; do s6-setuidgid abc env HOME="$HOME" git config --global --add safe.directory "$repo_root" bashio::log.info "Marked TokenSave repository as safe for Git: ${repo_root}" fi -done < <(bashio::config.array 'tokensave_project_paths') +# bashio::config prints list options one entry per line ("null" when the key is absent); +# bashio::config.array only exists in the repo's standalone bashio, not in the real bashio here. +done < <(bashio::config 'tokensave_project_paths') diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index be0f65cca4..b6c6e3cee1 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -3,8 +3,10 @@ set -e set -o pipefail -PUID="$(if bashio::config.has_value 'PUID'; then bashio::config 'PUID'; else echo '0'; fi)" -PGID="$(if bashio::config.has_value 'PGID'; then bashio::config 'PGID'; else echo '0'; fi)" +# 20-folders.sh already remapped abc to the effective runtime identity (never root in bypass +# mode), so follow abc instead of re-reading the raw PUID/PGID options here. +RUNTIME_UID="$(id -u abc)" +RUNTIME_GID="$(id -g abc)" mkdir -p "$HOME/.claude" run_as_runtime_user() { @@ -169,7 +171,7 @@ if $TOKENSAVE_ENABLED; then # Trim surrounding whitespace while preserving spaces inside paths. configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" - [ -n "$configured_path" ] || continue + [ -n "$configured_path" ] && [ "$configured_path" != "null" ] || continue case "$configured_path" in /*) ;; @@ -251,7 +253,9 @@ if $TOKENSAVE_ENABLED; then exit 1 ' _ "$repo_root" \ || bashio::log.warning "TokenSave preparation failed for ${repo_root}" - done < <(bashio::config.array 'tokensave_project_paths') + # bashio::config prints list options one entry per line ("null" when the key is absent); + # bashio::config.array only exists in the repo's standalone bashio, not in the real bashio here. + done < <(bashio::config 'tokensave_project_paths') fi # Guide Claude to actually use the Headroom compression tools so the MCP integration produces @@ -461,9 +465,9 @@ else fi # Startup configuration runs as root, while Claude Desktop runs as abc. Return managed -# persistent files to the configured runtime UID/GID after all writes complete. +# persistent files to the effective runtime UID/GID after all writes complete. for managed_path in "$HOME/.claude" "$HOME/.claude.json" "$HOME/.config/Claude"; do if [ -e "$managed_path" ]; then - chown -R -- "${PUID}:${PGID}" "$managed_path" || bashio::log.warning "Unable to set ownership on $managed_path" + chown -R -- "${RUNTIME_UID}:${RUNTIME_GID}" "$managed_path" || bashio::log.warning "Unable to set ownership on $managed_path" fi done diff --git a/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh b/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh index 11c3affb22..99df9ed7e5 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh @@ -3,8 +3,10 @@ set -e set -o pipefail -PUID="$(if bashio::config.has_value 'PUID'; then bashio::config 'PUID'; else echo '0'; fi)" -PGID="$(if bashio::config.has_value 'PGID'; then bashio::config 'PGID'; else echo '0'; fi)" +# 20-folders.sh already remapped abc to the effective runtime identity (never root in bypass +# mode), so follow abc instead of re-reading the raw PUID/PGID options here. +RUNTIME_UID="$(id -u abc)" +RUNTIME_GID="$(id -g abc)" PERMISSION_MODE="$(bashio::config 'permission_mode')" SETTINGS_PATH="$HOME/.claude/settings.json" STATE_PATH="$HOME/.claude/.addon-permission-mode.json" @@ -86,7 +88,7 @@ case "$PERMISSION_MODE" in ;; esac -chown -- "${PUID}:${PGID}" "$SETTINGS_PATH" 2> /dev/null || true +chown -- "${RUNTIME_UID}:${RUNTIME_GID}" "$SETTINGS_PATH" 2> /dev/null || true if [ -e "$STATE_PATH" ]; then - chown -- "${PUID}:${PGID}" "$STATE_PATH" 2> /dev/null || true + chown -- "${RUNTIME_UID}:${RUNTIME_GID}" "$STATE_PATH" 2> /dev/null || true fi diff --git a/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh b/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh index 45402914f4..61126da708 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/84-claude_runtime_ownership.sh @@ -2,10 +2,10 @@ # shellcheck shell=bash set -e -# Earlier configuration scripts intentionally run as root and may use the configured PUID/PGID -# values when returning files to the runtime user. In bypass mode PUID can still be configured as -# 0 even though 19-claude_bypass_runtime.sh remapped abc to a non-root UID. Reconcile ownership -# with the effective desktop identity after all Claude configuration writes are complete. +# Earlier configuration scripts intentionally run as root. 20-folders.sh remapped abc to the +# effective runtime identity (never root in bypass mode, where Claude Code refuses to run as +# root). Reconcile ownership with that identity after all Claude configuration writes are +# complete, as a safety net in case any intermediate step re-owned a managed path. RUNTIME_UID="$(id -u abc)" RUNTIME_GID="$(id -g abc)" diff --git a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh index 150b73f46d..d34647c461 100755 --- a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh +++ b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh @@ -150,7 +150,7 @@ if bashio::config.true 'install_tokensave'; then tokensave doctor --agent claude || true tokensave gain --all --range 30d || true while IFS= read -r configured_path; do - [ -n "$configured_path" ] || continue + [ -n "$configured_path" ] && [ "$configured_path" != "null" ] || continue repo_root="$(s6-setuidgid abc env HOME="$HOME" git -c safe.directory='*' -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" if [ -z "$repo_root" ]; then echo "${configured_path}: not a Git repository" @@ -159,7 +159,7 @@ if bashio::config.true 'install_tokensave'; then else echo "${repo_root}: NOT INITIALIZED" fi - done < <(bashio::config.array 'tokensave_project_paths') + done < <(bashio::config 'tokensave_project_paths') else echo "disabled" fi From 2347cb9eae067e50ea27efd02acef27f068fc4a1 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 15 Jul 2026 16:47:00 +0000 Subject: [PATCH 246/538] style(claude_desktop): use explicit if for the null path guard (SC2015) Codacy flagged the `A && B || continue` short-circuit pattern in the three tokensave path loops; rewrite it as an explicit if so the fallback can never run when both tests pass. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01KN8i26JrKSaBdvTrpVEyQ6 --- .../rootfs/etc/cont-init.d/81-tokensave_repositories.sh | 4 +++- claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh | 4 +++- claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh index c9ee94147f..7ff5292f28 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh @@ -11,7 +11,9 @@ declare -A REPOS_SEEN=() while IFS= read -r configured_path; do configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" - [ -n "$configured_path" ] && [ "$configured_path" != "null" ] || continue + if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then + continue + fi case "$configured_path" in /*) ;; diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index b6c6e3cee1..719460c6bd 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -171,7 +171,9 @@ if $TOKENSAVE_ENABLED; then # Trim surrounding whitespace while preserving spaces inside paths. configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" - [ -n "$configured_path" ] && [ "$configured_path" != "null" ] || continue + if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then + continue + fi case "$configured_path" in /*) ;; diff --git a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh index d34647c461..1d2c3c8c6a 100755 --- a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh +++ b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh @@ -150,7 +150,9 @@ if bashio::config.true 'install_tokensave'; then tokensave doctor --agent claude || true tokensave gain --all --range 30d || true while IFS= read -r configured_path; do - [ -n "$configured_path" ] && [ "$configured_path" != "null" ] || continue + if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then + continue + fi repo_root="$(s6-setuidgid abc env HOME="$HOME" git -c safe.directory='*' -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" if [ -z "$repo_root" ]; then echo "${configured_path}: not a Git repository" From 2f245c77e1489085305f8ed83fbb096ce8503b54 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 15 Jul 2026 16:49:56 +0000 Subject: [PATCH 247/538] fix(claude_desktop): keep the final tokensave path from bashio::config bashio::config prints its result via printf without a trailing newline, so a plain while-read loop drops the last (often only) configured project path and no TokenSave repository would be initialized. Use the read || [ -n ... ] idiom in the three path loops so the final unterminated record is still processed. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01KN8i26JrKSaBdvTrpVEyQ6 --- .../rootfs/etc/cont-init.d/81-tokensave_repositories.sh | 4 +++- claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh | 4 +++- claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh index 7ff5292f28..1bb0e63c4a 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh @@ -8,7 +8,9 @@ if ! bashio::config.true 'install_tokensave' || ! command -v git > /dev/null 2>& fi declare -A REPOS_SEEN=() -while IFS= read -r configured_path; do +# bashio::config prints its result without a trailing newline, so the last record arrives +# with read returning non-zero; the extra test keeps that final path in the loop. +while IFS= read -r configured_path || [ -n "$configured_path" ]; do configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 719460c6bd..be6a8bf53d 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -167,7 +167,9 @@ PY # requires one-time per-project opt-in; an empty list therefore has no startup or storage cost. if $TOKENSAVE_ENABLED; then declare -A TOKENSAVE_REPOS_SEEN=() - while IFS= read -r configured_path; do + # bashio::config prints its result without a trailing newline, so the last record arrives + # with read returning non-zero; the extra test keeps that final path in the loop. + while IFS= read -r configured_path || [ -n "$configured_path" ]; do # Trim surrounding whitespace while preserving spaces inside paths. configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" diff --git a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh index 1d2c3c8c6a..41a25e847b 100755 --- a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh +++ b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh @@ -149,7 +149,7 @@ section "TokenSave" if bashio::config.true 'install_tokensave'; then tokensave doctor --agent claude || true tokensave gain --all --range 30d || true - while IFS= read -r configured_path; do + while IFS= read -r configured_path || [ -n "$configured_path" ]; do if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then continue fi From 3bff6b65de6dab8b7142c8a94811c425e47d287e Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 15 Jul 2026 17:28:14 +0000 Subject: [PATCH 248/538] GitHub bot : README updated --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 90c687072f..6b8adefb7d 100644 --- a/README.md +++ b/README.md @@ -258,13 +258,15 @@ If you want to do add the repository manually, please follow the procedure highl ![amd64][amd64-badge] ![ingress][ingress-badge] -✓ ![image](https://api.iconify.design/mdi/robot-happy.svg) [Claude Desktop](claude_desktop/) : Claude Desktop with Headroom MCP context compression and RTK acceleration +✓ ![image](https://api.iconify.design/mdi/robot-happy.svg) [Claude Desktop](claude_desktop/) : Claude Desktop with Headroom, RTK, and TokenSave optimization   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fclaude_desktop%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fclaude_desktop%2Fupdater.json) ![aarch64][aarch64-badge] ![amd64][amd64-badge] ![ingress][ingress-badge] +![smb][smb-badge] +![localdisks][localdisks-badge] ✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Cleanuparr](cleanuparr/) : Automatically removes stuck and unwanted downloads from your *arr and download clients From 3354af026f990bb041a6ed0c9d6695ff1ddaab6b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 15 Jul 2026 20:55:27 +0200 Subject: [PATCH 249/538] fix(claude_desktop): make Headroom actually save tokens (cowork routing + Kompress) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Headroom kept reporting zero savings for two independent reasons: 1. Desktop cowork/local-agent-mode sessions never reached the proxy. Desktop spawns its bundled Claude Code binary at an absolute path (bypassing the PATH wrapper) with ANTHROPIC_BASE_URL pinned to the production endpoint (headroom #869). Manage env.ANTHROPIC_BASE_URL in ~/.claude/settings.json instead — Claude Code writes settings `env` entries over the inherited environment at startup, and cowork sessions load user settings. Managed-value semantics: only set or remove the variable when absent or equal to the add-on-managed proxy URL, so a user-customized endpoint is never clobbered. 2. Even proxied traffic compressed nothing (175 requests, 0 saved). The proxy's startup preload is cache-only, but the HF model cache defaulted to ~/.cache -> tmpfs, wiped every restart, so the Kompress ONNX model and its separately fetched ModernBERT tokenizer were never cached and the engine idled in "deferred" mode forever (misleadingly logged as "Kompress: not installed"). svc-headroom now sets HF_HOME to persistent ~/.headroom/hf and pre-warms the cache once at startup, bounded at 300s so an offline install still starts the proxy in pass-through mode and retries next boot. The proxy extra's ONNX runtime suffices — the multi-GB PyTorch [ml] extra is deliberately not installed. Verified live: proxy logs "Kompress: ENABLED (ModernBERT token compressor)" after restart, and a terminal `claude -p` round-trip increments the proxy's api_requests counter. Co-Authored-By: Claude Fable 5 --- claude_desktop/CHANGELOG.md | 5 ++ claude_desktop/Dockerfile | 5 +- claude_desktop/config.yaml | 2 +- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 57 +++++++++++++++++++ .../etc/s6-overlay/s6-rc.d/svc-headroom/run | 21 +++++++ 5 files changed, 88 insertions(+), 2 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index b15957c674..970d50d0a4 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,8 @@ +## 1.27 (15-07-2026) + +- Route Claude Desktop cowork/local-agent-mode sessions through the Headroom proxy. Desktop spawns its bundled Claude Code binary at an absolute path (bypassing the add-on's PATH wrapper) with `ANTHROPIC_BASE_URL` pinned to the production endpoint, so those sessions never produced proxy savings. The add-on now manages `env.ANTHROPIC_BASE_URL` in `~/.claude/settings.json` — settings `env` entries replace inherited environment values at CLI startup — gated on `headroom_wrap_claude_code` and never overwriting a user-customized endpoint. +- Fix Headroom's Kompress compression engine never activating, which made even proxied traffic record zero token savings (e.g. 175 requests, 0 saved). The proxy's startup preload is deliberately cache-only, but the HuggingFace model cache defaulted to `~/.cache` — tmpfs in this add-on, wiped every restart — so the ONNX model (plus the separately fetched `answerdotai/ModernBERT-base` tokenizer) was never cached and the engine idled in "deferred" mode forever, misleadingly logged as `Kompress: not installed`. `svc-headroom` now points `HF_HOME` at persistent storage (`~/.headroom/hf`, ~270 MB) and pre-warms the cache once at startup (bounded at 300 s, so an offline install still starts the proxy in pass-through mode and retries next boot). The already-installed `proxy` extra's ONNX runtime is sufficient — the multi-gigabyte PyTorch `ml` extra is deliberately not installed. + ## 1.26 (15-07-2026) - Fix startup permission failures that prevented Claude Desktop from starting: storage was chowned to a hardcoded `1000:1000`, but the shared `abc` desktop user was never mapped to that UID. During init `abc` was still the image default (`911`), so TokenSave (`.claude.json.new`), RTK (`RTK.md`), nginx, PulseAudio, the Mesa shader cache, and Claude Desktop itself all hit `Permission denied`; the base image's `init-adduser` then remapped `abc` to root mid-startup (PUID/PGID were read from add-on options where they did not exist, falling back to `0`), which also made Claude Code reject `permission_mode: bypass`. diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index fc90eb52d2..8b8a936ab2 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -143,7 +143,10 @@ RUN /usr/local/bin/rtk --version && /usr/local/bin/tokensave --version # Install only the Headroom proxy, code-compression, and MCP features used by this add-on, # plus mcp-proxy (stdio->HTTP bridge for the Home Assistant MCP server) and uv (fast -# installer used for the additional_pip option). +# installer used for the additional_pip option). The `proxy` extra already ships the ONNX +# runtime + transformers needed by the Kompress compressor — the `ml` extra (full PyTorch, +# ~5 GB with CUDA wheels) is deliberately NOT installed; svc-headroom pre-warms the ONNX +# model into the persistent HF cache instead. RUN apt-get update && \ apt-get install -y --no-install-recommends nodejs && \ pip3 install --break-system-packages "headroom-ai[proxy,code,mcp]" mcp-proxy uv websockets && \ diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 0cfdfb153d..6dfd48e420 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -109,5 +109,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.26" +version: "1.27" video: true diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index be6a8bf53d..ff8da41be1 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -308,6 +308,63 @@ if new != text: PY fi +# Route every Claude Code session through the Headroom proxy via the `env` block in the user's +# ~/.claude/settings.json. Claude Code writes settings `env` entries into the process +# environment at startup, replacing inherited values — this is the only supported way to reach +# Desktop cowork/local-agent-mode sessions, which spawn the bundled CLI at an absolute path +# (bypassing the PATH wrapper) with ANTHROPIC_BASE_URL pinned to the production endpoint +# (headroom #869). Managed-value semantics: only set or remove the variable when it is absent +# or already equals the add-on-managed proxy URL, so a user-customized endpoint is never +# clobbered. The svc-headroom longrun is s6-supervised, so a crashed proxy restarts within +# seconds; the terminal wrapper's per-launch health check remains as an extra safety net. +if $HEADROOM_ENABLED && bashio::config.true 'headroom_wrap_claude_code'; then + HEADROOM_ROUTE_ACTION="add" +else + HEADROOM_ROUTE_ACTION="remove" +fi +HEADROOM_ROUTE_ACTION="$HEADROOM_ROUTE_ACTION" python3 - <<'PY' || bashio::log.warning "Unable to manage the Claude Code proxy routing env" +import json +import os +from pathlib import Path + +MANAGED_URL = "http://127.0.0.1:8787" + +path = Path.home() / ".claude" / "settings.json" +try: + data = json.loads(path.read_text()) if path.exists() else {} + if not isinstance(data, dict): + data = {} +except Exception: + if path.exists(): + path.rename(path.with_suffix(path.suffix + ".bak")) + data = {} + +env = data.get("env") +if not isinstance(env, dict): + env = {} +current = env.get("ANTHROPIC_BASE_URL") +changed = False + +if os.environ["HEADROOM_ROUTE_ACTION"] == "add": + if current is None or current == MANAGED_URL: + if current != MANAGED_URL: + env["ANTHROPIC_BASE_URL"] = MANAGED_URL + changed = True + else: + print(f"Claude settings env already sets ANTHROPIC_BASE_URL={current}; leaving it untouched") +elif current == MANAGED_URL: + del env["ANTHROPIC_BASE_URL"] + changed = True + +if changed: + if env: + data["env"] = env + elif "env" in data: + del data["env"] + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(json.dumps(data, indent=2) + "\n") +PY + # Tell Claude Code that it can configure Home Assistant over the Core API via the shipped # `ha-cli` helper (no /config filesystem mount needed). Managed, idempotent block appended to # the user's global CLAUDE.md; removed when the helper is disabled. Mirrors the headroom block. diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run index a1ee38d6b8..2119c40834 100755 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run @@ -10,6 +10,27 @@ if bashio::config.true 'expose_headroom_dashboard'; then fi if bashio::config.true 'install_headroom' && command -v headroom > /dev/null 2>&1; then + # Kompress (the ONNX compression engine) needs its model in the local HF cache: the + # proxy's startup preload is deliberately cache-only, and the default HF cache lands + # under ~/.cache, which the add-on points at tmpfs (/tmp/cache) — wiped on every + # restart. Without a warm persistent cache the proxy runs forever in "deferred" mode + # and records zero compression savings. Cache on persistent storage and pre-warm it + # once (bounded so an offline install still starts the proxy, in pass-through mode, + # and retries the download on the next start). + export HF_HOME="${HOME}/.headroom/hf" + mkdir -p "$HF_HOME" + chown abc:abc "$HF_HOME" 2> /dev/null || true + # headroom lives in the lsiopy virtualenv; plain `python3` does not see its packages, + # so derive the venv interpreter from the resolved headroom entry script. + headroom_python="$(dirname "$(readlink -f "$(command -v headroom)")")/python3" + if ! s6-setuidgid abc "$headroom_python" -c \ + 'from headroom.transforms.kompress_compressor import _load_kompress; _load_kompress(allow_download=False)' \ + > /dev/null 2>&1; then + bashio::log.info "svc-headroom: pre-warming the Kompress model cache (one-time download)" + timeout 300 s6-setuidgid abc "$headroom_python" -c \ + 'from headroom.transforms.kompress_compressor import _load_kompress; _load_kompress()' \ + || bashio::log.warning "svc-headroom: Kompress pre-warm failed; compression stays deferred until the model can be downloaded" + fi bashio::log.info "svc-headroom: starting local Headroom proxy on ${host}:${port}" exec s6-setuidgid abc headroom proxy --host "${host}" --port "${port}" --code-aware fi From b8c7cc3815f2a5a6c57d87b63df095335f995ac8 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 15 Jul 2026 22:19:01 +0200 Subject: [PATCH 250/538] fix(claude_desktop): address CodeRabbit findings on TokenSave startup hardening flock -n silently skipped TokenSave prep on lock contention with no retry until next restart; wait up to 60s instead (kernel releases flock the instant its owner exits, so only a truly stuck lock can't clear within that window). Quarantine fired on any sync failure after 3 retries, including transient causes (permissions, disk full, missing binary) unrelated to corruption. Now only quarantines when stderr names actual database corruption (SQLite malformed/not-a-database/disk-image wording); other failures leave the index untouched and retry next start. Co-Authored-By: Claude Fable 5 --- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 32 +++++++++++++------ 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index ff8da41be1..8f01b01db2 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -203,12 +203,17 @@ if $TOKENSAVE_ENABLED; then # Prepare the per-repo semantic graph defensively so a hard add-on stop or storage # hiccup can never leave a broken index that fails every subsequent boot: # * a startup-scoped flock serializes against an overlapping restart (and any git - # post-commit/checkout sync hook that fires mid-boot), so two writers never race; + # post-commit/checkout sync hook that fires mid-boot); waits up to 60s for the + # other writer to finish rather than silently skipping, since a held lock clears + # itself the moment its holder exits or dies (the kernel releases flock on exit); # * an existing index is refreshed with a cheap incremental `sync`, retried a few # times because SQLITE_BUSY under lock contention is transient, not corruption; - # * only a genuinely unreadable/malformed index (sync still failing after retries) - # or a half-written one from an interrupted `init` is quarantined and rebuilt, - # so the graph self-heals instead of propagating corruption; + # * quarantine is reserved for sync failures whose stderr actually names database + # corruption (SQLite's own "malformed"/"not a database"/"disk image" wording) or + # a half-written index from an interrupted `init` (sentinel-flagged). Any other + # failure (permissions, disk full, missing binary, ...) leaves the existing index + # untouched and simply retries on the next start — corruption should self-heal, + # a transient environment problem should not nuke a healthy graph; # * `init` is bracketed by a sentinel file so an interrupted full build is detected # as incomplete on the next start and rebuilt rather than trusted. # All file operations run as the abc runtime user because the repo `.tokensave` @@ -223,10 +228,13 @@ if $TOKENSAVE_ENABLED; then initflag="$ts_dir/.init-incomplete" mkdir -p "$ts_dir" exec 9>"$lock" - if ! flock -n 9; then - echo "TokenSave: index busy for $repo_root; skipping startup sync" >&2 + if ! flock -w 60 9; then + echo "TokenSave: index still locked for $repo_root after 60s; skipping startup sync" >&2 exit 0 fi + is_corruption() { + printf "%s" "$1" | grep -qiE "malformed|not a database|file is encrypted|disk image|database.*corrupt" + } quarantine() { stamp="$(date +%Y%m%d-%H%M%S)" bdir="$ts_dir/corrupt-$stamp" @@ -239,14 +247,20 @@ if $TOKENSAVE_ENABLED; then if [ -f "$db" ] && [ ! -f "$initflag" ]; then attempt=1 while :; do - tokensave sync "$repo_root" && exit 0 + sync_err="$(tokensave sync "$repo_root" 2>&1 1>/dev/null)" && exit 0 [ "$attempt" -ge 3 ] && break echo "TokenSave: sync attempt $attempt failed for $repo_root; retrying" >&2 attempt=$((attempt + 1)) sleep 2 done - echo "TokenSave: sync failed after retries for $repo_root; rebuilding index" >&2 - quarantine + if is_corruption "$sync_err"; then + echo "TokenSave: sync failed after retries for $repo_root (corruption detected); rebuilding index" >&2 + quarantine + else + echo "TokenSave: sync failed after retries for $repo_root (no corruption signature); leaving index in place, will retry next start" >&2 + echo "TokenSave: last sync error: $sync_err" >&2 + exit 1 + fi elif [ -f "$db" ]; then echo "TokenSave: previous init did not finish for $repo_root; rebuilding index" >&2 quarantine From b3c27024d83854bffb494aeaa8736cf3ae69f8f9 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 08:20:50 +0200 Subject: [PATCH 251/538] fix(claude_desktop): remove blocking Kompress pre-warm, use proxy's own background loader Codex flagged that the synchronous pre-warm (up to 300s) blocked the proxy port bind, defeating the terminal wrapper's health-check fallback and, combined with the new settings-managed ANTHROPIC_BASE_URL, could send terminal Claude Code launches to a proxy that was not listening yet. The proxy already has a non-blocking answer to a cold cache: content_router.py calls compressor.ensure_background_load() on first use and passes the request through uncompressed until the model lands, so the port always binds immediately. Persisting HF_HOME alone is enough -- Kompress self-heals within the first couple of requests on a cold boot and loads instantly (eager preload) on every boot after. Co-Authored-By: Claude Fable 5 --- claude_desktop/CHANGELOG.md | 2 +- .../etc/s6-overlay/s6-rc.d/svc-headroom/run | 24 +++++++------------ 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 970d50d0a4..d24ce18659 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,7 +1,7 @@ ## 1.27 (15-07-2026) - Route Claude Desktop cowork/local-agent-mode sessions through the Headroom proxy. Desktop spawns its bundled Claude Code binary at an absolute path (bypassing the add-on's PATH wrapper) with `ANTHROPIC_BASE_URL` pinned to the production endpoint, so those sessions never produced proxy savings. The add-on now manages `env.ANTHROPIC_BASE_URL` in `~/.claude/settings.json` — settings `env` entries replace inherited environment values at CLI startup — gated on `headroom_wrap_claude_code` and never overwriting a user-customized endpoint. -- Fix Headroom's Kompress compression engine never activating, which made even proxied traffic record zero token savings (e.g. 175 requests, 0 saved). The proxy's startup preload is deliberately cache-only, but the HuggingFace model cache defaulted to `~/.cache` — tmpfs in this add-on, wiped every restart — so the ONNX model (plus the separately fetched `answerdotai/ModernBERT-base` tokenizer) was never cached and the engine idled in "deferred" mode forever, misleadingly logged as `Kompress: not installed`. `svc-headroom` now points `HF_HOME` at persistent storage (`~/.headroom/hf`, ~270 MB) and pre-warms the cache once at startup (bounded at 300 s, so an offline install still starts the proxy in pass-through mode and retries next boot). The already-installed `proxy` extra's ONNX runtime is sufficient — the multi-gigabyte PyTorch `ml` extra is deliberately not installed. +- Fix Headroom's Kompress compression engine never activating, which made even proxied traffic record zero token savings (e.g. 175 requests, 0 saved). The proxy's startup preload is deliberately cache-only, but the HuggingFace model cache defaulted to `~/.cache` — tmpfs in this add-on, wiped every restart — so the ONNX model (plus the separately fetched `answerdotai/ModernBERT-base` tokenizer) was never cached and the engine idled in "deferred" mode forever, misleadingly logged as `Kompress: not installed`. `svc-headroom` now points `HF_HOME` at persistent storage (`~/.headroom/hf`, ~270 MB); the proxy's own request path already downloads a missing model in the background on first use and passes requests through uncompressed until it lands, so no blocking startup pre-warm is needed — the port binds immediately either way, and Kompress activates within the first couple of requests on the first boot, then loads instantly on every boot after. The already-installed `proxy` extra's ONNX runtime is sufficient — the multi-gigabyte PyTorch `ml` extra is deliberately not installed. ## 1.26 (15-07-2026) diff --git a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run index 2119c40834..f1dcbcbd98 100755 --- a/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run +++ b/claude_desktop/rootfs/etc/s6-overlay/s6-rc.d/svc-headroom/run @@ -13,24 +13,18 @@ if bashio::config.true 'install_headroom' && command -v headroom > /dev/null 2>& # Kompress (the ONNX compression engine) needs its model in the local HF cache: the # proxy's startup preload is deliberately cache-only, and the default HF cache lands # under ~/.cache, which the add-on points at tmpfs (/tmp/cache) — wiped on every - # restart. Without a warm persistent cache the proxy runs forever in "deferred" mode - # and records zero compression savings. Cache on persistent storage and pre-warm it - # once (bounded so an offline install still starts the proxy, in pass-through mode, - # and retries the download on the next start). + # restart. Without a warm persistent cache the proxy ran forever in "deferred" mode + # and recorded zero compression savings. Point the cache at persistent storage; + # nothing else is needed here — the proxy's own request path already downloads a + # missing model in the background on first use (ensure_background_load) and passes + # requests through uncompressed until it lands, so this self-heals within a couple of + # requests on the first boot and loads instantly (eager preload) on every boot after. + # A synchronous pre-warm was tried here and removed: it blocked the port bind for up + # to the download's duration, which left the settings-managed ANTHROPIC_BASE_URL + # (see 82-claude_tools.sh) pointing at a proxy that wasn't listening yet. export HF_HOME="${HOME}/.headroom/hf" mkdir -p "$HF_HOME" chown abc:abc "$HF_HOME" 2> /dev/null || true - # headroom lives in the lsiopy virtualenv; plain `python3` does not see its packages, - # so derive the venv interpreter from the resolved headroom entry script. - headroom_python="$(dirname "$(readlink -f "$(command -v headroom)")")/python3" - if ! s6-setuidgid abc "$headroom_python" -c \ - 'from headroom.transforms.kompress_compressor import _load_kompress; _load_kompress(allow_download=False)' \ - > /dev/null 2>&1; then - bashio::log.info "svc-headroom: pre-warming the Kompress model cache (one-time download)" - timeout 300 s6-setuidgid abc "$headroom_python" -c \ - 'from headroom.transforms.kompress_compressor import _load_kompress; _load_kompress()' \ - || bashio::log.warning "svc-headroom: Kompress pre-warm failed; compression stays deferred until the model can be downloaded" - fi bashio::log.info "svc-headroom: starting local Headroom proxy on ${host}:${port}" exec s6-setuidgid abc headroom proxy --host "${host}" --port "${port}" --code-aware fi From 4872bd89c9c8b918d947a4f93f8647f86fcddaed Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 08:24:18 +0200 Subject: [PATCH 252/538] Remove healthcheck from Dockerfile --- filebrowser_quantum/Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/filebrowser_quantum/Dockerfile b/filebrowser_quantum/Dockerfile index 5af712163e..ae928d2076 100644 --- a/filebrowser_quantum/Dockerfile +++ b/filebrowser_quantum/Dockerfile @@ -115,4 +115,5 @@ LABEL \ # 6 Healthcheck # ################# -# Upstream +HEALTHCHECK --interval=30s --timeout=3s --start-period=10s --retries=3 \ + CMD curl -f http://localhost:3001/health || exit 1 From e70b8db0faa18788bf2618e036bb8681b709868c Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 08:24:28 +0200 Subject: [PATCH 253/538] Update config.yaml --- filebrowser_quantum/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/filebrowser_quantum/config.yaml b/filebrowser_quantum/config.yaml index e428b0fc14..1ff5d361fe 100644 --- a/filebrowser_quantum/config.yaml +++ b/filebrowser_quantum/config.yaml @@ -114,4 +114,4 @@ schema: slug: filebrowser_quantum udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.4.0" +version: "1.4.0-2" From 39efd5602f1f8e323f2a9512715fec2abe5a8120 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 16 Jul 2026 06:26:26 +0000 Subject: [PATCH 254/538] GitHub bot: changelog [nobuild] --- filebrowser_quantum/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/filebrowser_quantum/CHANGELOG.md b/filebrowser_quantum/CHANGELOG.md index bdf07f6793..f317278e6e 100644 --- a/filebrowser_quantum/CHANGELOG.md +++ b/filebrowser_quantum/CHANGELOG.md @@ -1,3 +1,5 @@ +## 1.4.0-2 (16-07-2026) +- Minor bugs fixed ## 1.4.0 (2026-06-20) - Update to latest version from gtsteffaniak/filebrowser (changelog : https://github.com/gtsteffaniak/filebrowser/releases) From 297102e9084b3972d19a591d20d94ae5e3f90d29 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 08:40:49 +0200 Subject: [PATCH 255/538] Update Dockerfile --- claude_desktop/Dockerfile | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 8b8a936ab2..3d047e78f5 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -108,27 +108,22 @@ RUN install -d -m 0755 /etc/apt/keyrings && \ rm -rf /var/lib/apt/lists/* # Install the current upstream hadolint and actionlint releases for both supported -# architectures. The GitHub release API resolves the latest asset at build time, so these -# developer tools are intentionally not version-pinned. +ARG HADOLINT_VERSION=v2.14.0 +ARG ACTIONLINT_VERSION=v1.7.12 + RUN set -eux; \ case "${BUILD_ARCH}" in \ amd64) hadolint_arch="x86_64"; actionlint_arch="amd64" ;; \ aarch64) hadolint_arch="arm64"; actionlint_arch="arm64" ;; \ *) echo "Unsupported validation-tools architecture: ${BUILD_ARCH}" >&2; exit 1 ;; \ esac; \ - hadolint_name="hadolint-linux-${hadolint_arch}"; \ - hadolint_url="$(curl -fsSL https://api.github.com/repos/hadolint/hadolint/releases/latest \ - | jq -r --arg name "${hadolint_name}" '.assets[] | select(.name == $name) | .browser_download_url' \ - | head -n 1)"; \ - test -n "${hadolint_url}"; \ - curl -fsSL --retry 3 --retry-delay 2 -o /usr/local/bin/hadolint "${hadolint_url}"; \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o /usr/local/bin/hadolint \ + "https://github.com/hadolint/hadolint/releases/download/${HADOLINT_VERSION}/hadolint-linux-${hadolint_arch}"; \ chmod 0755 /usr/local/bin/hadolint; \ - actionlint_suffix="_linux_${actionlint_arch}.tar.gz"; \ - actionlint_url="$(curl -fsSL https://api.github.com/repos/rhysd/actionlint/releases/latest \ - | jq -r --arg suffix "${actionlint_suffix}" '.assets[] | select(.name | endswith($suffix)) | .browser_download_url' \ - | head -n 1)"; \ - test -n "${actionlint_url}"; \ - curl -fsSL --retry 3 --retry-delay 2 -o /tmp/actionlint.tar.gz "${actionlint_url}"; \ + curl -fsSL --retry 3 --retry-delay 2 \ + -o /tmp/actionlint.tar.gz \ + "https://github.com/rhysd/actionlint/releases/download/${ACTIONLINT_VERSION}/actionlint_${ACTIONLINT_VERSION#v}_linux_${actionlint_arch}.tar.gz"; \ tar -xzf /tmp/actionlint.tar.gz -C /tmp actionlint; \ install -m 0755 /tmp/actionlint /usr/local/bin/actionlint; \ rm -f /tmp/actionlint /tmp/actionlint.tar.gz; \ From 3114a6cc945f0ff03c433616db55c98f73c4c214 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 08:41:05 +0200 Subject: [PATCH 256/538] Update config.yaml --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 6dfd48e420..7cd8b5630a 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -109,5 +109,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.27" +version: "1.28" video: true From ae2c29b977c2af7926d5165c1ddbdc17af83a050 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 16 Jul 2026 06:54:55 +0000 Subject: [PATCH 257/538] GitHub bot: changelog [nobuild] --- claude_desktop/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index d24ce18659..2da9444603 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,5 @@ +## 1.28 (16-07-2026) +- Minor bugs fixed ## 1.27 (15-07-2026) - Route Claude Desktop cowork/local-agent-mode sessions through the Headroom proxy. Desktop spawns its bundled Claude Code binary at an absolute path (bypassing the add-on's PATH wrapper) with `ANTHROPIC_BASE_URL` pinned to the production endpoint, so those sessions never produced proxy savings. The add-on now manages `env.ANTHROPIC_BASE_URL` in `~/.claude/settings.json` — settings `env` entries replace inherited environment values at CLI startup — gated on `headroom_wrap_claude_code` and never overwriting a user-customized endpoint. From bdc6231aa365affcd8a41c416a09160677581a19 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 10:36:05 +0200 Subject: [PATCH 258/538] fix(claude_desktop): repair Headroom MCP model cache, HOME dedup, gitconfig owner Three add-on runtime-environment bugs, all found while investigating a Headroom dashboard stuck at 0 gain. Headroom MCP server had no HF_HOME. 1.27 fixed the Kompress model cache for the svc-headroom proxy longrun by exporting HF_HOME there, but the MCP server is a different process: Claude Desktop and Claude Code spawn it from the registered mcpServers entry, so it never saw that export and kept resolving the HuggingFace cache to ~/.cache, which this add-on symlinks to tmpfs. Its Kompress ML path therefore never found the model, re-downloaded ~270 MB into tmpfs on every boot, and lost it on the next one -- headroom_compress returned router:noop (output unchanged) for prose and other unstructured content. Rule-based compression (SmartCrusher, structured tool output) was unaffected and worked throughout, which is why the failure only showed on some payloads. Carry env.HF_HOME on the managed headroom entry in both claude_desktop_config.json and ~/.claude.json. ~/.gitconfig was written as root and left unreadable by abc. `git config --global` ran as root during init and rewrites the file on every start, so 20-folders.sh's earlier recursive chown never stuck to it; .config/gh survived abc-owned only because the "already authenticated" branch skips rewriting it. The user that actually runs git, gh and Claude could not read its own committer identity or the gh credential helper: every commit failed with "Author identity unknown" and authenticated pushes fell back to prompting. Run the git/gh setup as abc via s6-setuidgid, matching 81-tokensave_repositories.sh, and reclaim root-owned copies left by earlier versions before writing. ~/.bashrc accumulated stale HOME/FM_HOME exports across data_location changes. The idempotency guard only tested for the current $LOCATION, so changing the option and later changing it back appended a second block while leaving the first, and the last one written won for every interactive shell. $HOME then pointed at a directory the add-on no longer manages, so anything resolving config through it read the wrong path -- `headroom doctor` reported "claude: not routed (no ~/.claude/settings.json)" against a correctly routed install, and bare `headroom` invocations created a stray .headroom tree under the old location. Make the block marker-delimited and rewrite it from scratch each boot. Verified on a running add-on: headroom_compress now reports 1909 -> 1122 tokens (41.2%, router:mixed) through the live MCP server; `headroom doctor` reports "claude: routed via /data/data/.claude/settings.json"; and git commits work as abc without a repo-local identity override. Co-Authored-By: Claude Opus 4.8 --- claude_desktop/CHANGELOG.md | 8 +++- claude_desktop/config.yaml | 2 +- .../rootfs/etc/cont-init.d/20-folders.sh | 15 ++++++- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 6 +++ .../rootfs/etc/cont-init.d/83-github_cli.sh | 39 +++++++++++++++---- 5 files changed, 59 insertions(+), 11 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 2da9444603..00c950b8b6 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,5 +1,9 @@ -## 1.28 (16-07-2026) -- Minor bugs fixed +## 1.29 (16-07-2026) + +- Point the Headroom MCP server at the persistent Kompress model cache. 1.27 set `HF_HOME` on the `svc-headroom` proxy longrun only, but the MCP server is a separate process spawned by Claude Desktop / Claude Code from the registered `mcpServers` entry, so it never inherited that export and kept resolving the HuggingFace cache to `~/.cache` — symlinked to tmpfs here and wiped on every restart. Its Kompress ML path therefore never found the model, re-downloaded ~270 MB into tmpfs on each boot, and lost it again on the next one; `headroom_compress` fell back to `router:noop` (unchanged output) on prose and other unstructured content. The managed `headroom` entry in both `claude_desktop_config.json` and `~/.claude.json` now carries `env.HF_HOME` pointing at the same `~/.headroom/hf` cache the proxy warms. Rule-based compression (SmartCrusher, structured tool output) was unaffected and worked throughout. +- Fix `~/.gitconfig` being written as `root` and left unreadable by the `abc` runtime user, which broke git for the user that actually runs it: every commit failed with `Author identity unknown` and the `gh` credential helper was invisible to authenticated pushes. `git config --global` ran as root during init and rewrites the file on every start, so `20-folders.sh`'s earlier recursive chown never stuck to it (`.config/gh` survived abc-owned only because the "already authenticated" branch skips rewriting it). The git/gh setup now runs as `abc` via `s6-setuidgid`, matching `81-tokensave_repositories.sh`, and reclaims any root-owned copies left by an earlier version before writing. +- Fix `~/.bashrc` accumulating stale `HOME`/`FM_HOME` exports when `data_location` changes. The idempotency guard only tested for the *current* `$LOCATION`, so changing the option and later changing it back appended a second block while leaving the first, and the last one written won for every interactive shell — leaving `$HOME` pointing at a directory the add-on no longer manages. Any tool that resolves config through `$HOME` then read the wrong path (`headroom doctor` reported `claude: not routed (no ~/.claude/settings.json)` against a correctly routed install, and bare `headroom` invocations created a stray `.headroom` tree under the old location). The block is now marker-delimited and rewritten from scratch on every boot, so it is idempotent across any number of `data_location` changes. + ## 1.27 (15-07-2026) - Route Claude Desktop cowork/local-agent-mode sessions through the Headroom proxy. Desktop spawns its bundled Claude Code binary at an absolute path (bypassing the add-on's PATH wrapper) with `ANTHROPIC_BASE_URL` pinned to the production endpoint, so those sessions never produced proxy savings. The add-on now manages `env.ANTHROPIC_BASE_URL` in `~/.claude/settings.json` — settings `env` entries replace inherited environment values at CLI startup — gated on `headroom_wrap_claude_code` and never overwriting a user-customized endpoint. diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 7cd8b5630a..bbfd56b2da 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -109,5 +109,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.28" +version: "1.29" video: true diff --git a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh index 6ef48206a9..845c9aa3d9 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/20-folders.sh @@ -85,10 +85,23 @@ printf "%s" "$LOCATION" > "$S6_ENVDIR/HOME" printf "%s" "$LOCATION" > "$S6_ENVDIR/FM_HOME" printf "%s" "/tmp/cache" > "$S6_ENVDIR/XDG_CACHE_HOME" printf "%s" "$XDG_RUNTIME_DIR" > "$S6_ENVDIR/XDG_RUNTIME_DIR" -grep -qxF "export HOME=\"$LOCATION\"" ~/.bashrc 2>/dev/null || { +# Re-derived on every boot rather than gated on a "does it already say $LOCATION" grep: that +# guard only ever recognized the CURRENT $LOCATION, so a user who changed data_location and +# later changed it back left two stale HOME/FM_HOME exports in ~/.bashrc, with the last one +# (not necessarily the correct one) winning for every interactive shell. The marker makes this +# idempotent regardless of how many times $LOCATION has changed: strip any previously managed +# block, then append one that reflects the current value. +BASHRC_HOME_BEGIN="# --- BEGIN ADDON HOME (managed) ---" +BASHRC_HOME_END="# --- END ADDON HOME (managed) ---" +if [ -f ~/.bashrc ]; then + sed -i "/^${BASHRC_HOME_BEGIN}\$/,/^${BASHRC_HOME_END}\$/d" ~/.bashrc +fi +{ + printf "%s\n" "$BASHRC_HOME_BEGIN" printf "%s\n" "export HOME=\"$LOCATION\"" printf "%s\n" "export FM_HOME=\"$LOCATION\"" printf "%s\n" "export XDG_CACHE_HOME=\"/tmp/cache\"" + printf "%s\n" "$BASHRC_HOME_END" } >> ~/.bashrc bashio::log.info "Creating $LOCATION" diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 8f01b01db2..4cf1a023b2 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -76,6 +76,7 @@ if bashio::config.true 'enable_ha_mcp'; then fi HEADROOM_ENABLED="$HEADROOM_ENABLED" HEADROOM_BIN="$(command -v headroom || echo headroom)" \ + HEADROOM_HF_HOME="${HOME}/.headroom/hf" \ TOKENSAVE_ENABLED="$TOKENSAVE_ENABLED" TOKENSAVE_BIN="$(command -v tokensave || echo tokensave)" \ HA_MCP_ENABLED="$HA_MCP_ENABLED" HA_MCP_URL="$HA_MCP_URL" HA_MCP_TOKEN="$HA_MCP_TOKEN" \ MCP_PROXY_BIN="$(command -v mcp-proxy || echo mcp-proxy)" \ @@ -96,6 +97,11 @@ if os.environ["HEADROOM_ENABLED"] == "true": desired["headroom"] = { "command": os.environ["HEADROOM_BIN"], "args": ["mcp", "serve", "--proxy-url", "http://127.0.0.1:8787"], + # The MCP server is a separate process from the svc-headroom proxy longrun and does + # not inherit its HF_HOME export, so Kompress falls back to the default (tmpfs, wiped + # every restart) cache dir, never finds the model, and silently no-ops every + # compression request. Point it at the same persistent cache the proxy warms. + "env": {"HF_HOME": os.environ["HEADROOM_HF_HOME"]}, } if os.environ["TOKENSAVE_ENABLED"] == "true": desired["tokensave"] = {"command": os.environ["TOKENSAVE_BIN"], "args": ["serve"]} diff --git a/claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh b/claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh index a836bef8b1..14b1a47af2 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh @@ -17,25 +17,50 @@ if ! command -v gh > /dev/null 2>&1; then exit 0 fi +# Everything below writes into the abc runtime user's HOME, so it must run AS abc. cont-init +# runs as root with HOME already pointing at the persistent data location, so plain +# `git config --global` recreated ~/.gitconfig owned by root:root on every start — and because +# that file is rewritten each boot, 20-folders.sh's earlier recursive chown never stuck to it. +# The user who actually runs git, gh and Claude was then unable to read its own committer +# identity or the gh credential helper, so every commit failed with "Author identity unknown" +# and authenticated pushes fell back to prompting. 20-folders.sh already remapped abc to the +# effective runtime identity (never root in bypass mode), so follow abc rather than re-reading +# the raw PUID/PGID options here. +RUNTIME_UID="$(id -u abc)" +RUNTIME_GID="$(id -g abc)" + +run_as_runtime_user() { + s6-setuidgid abc env HOME="$HOME" "$@" +} + +# Reclaim any root-owned copies left by an earlier add-on version before writing as abc: +# these paths are not covered by 82-claude_tools.sh's ownership pass, and a root-owned +# ~/.gitconfig would make the first `git config` below fail outright under `set -e`. +for managed_path in "$HOME/.gitconfig" "$HOME/.config/gh"; do + if [ -e "$managed_path" ]; then + chown -R -- "${RUNTIME_UID}:${RUNTIME_GID}" "$managed_path" || bashio::log.warning "Unable to set ownership on $managed_path" + fi +done + if bashio::config.has_value 'github_username'; then - git config --global user.name "$(bashio::config 'github_username')" + run_as_runtime_user git config --global user.name "$(bashio::config 'github_username')" fi if bashio::config.has_value 'github_email'; then - git config --global user.email "$(bashio::config 'github_email')" + run_as_runtime_user git config --global user.email "$(bashio::config 'github_email')" fi if bashio::config.has_value 'github_token'; then token="$(bashio::config 'github_token')" - mkdir -p "$HOME/.config/gh" - chmod 700 "$HOME/.config/gh" - if env -u GH_TOKEN -u GITHUB_TOKEN gh auth status --hostname github.com > /dev/null 2>&1; then + run_as_runtime_user mkdir -p "$HOME/.config/gh" + run_as_runtime_user chmod 700 "$HOME/.config/gh" + if run_as_runtime_user env -u GH_TOKEN -u GITHUB_TOKEN gh auth status --hostname github.com > /dev/null 2>&1; then bashio::log.info "GitHub CLI already authenticated for github.com" else bashio::log.info "Configuring GitHub CLI authentication for github.com" - printf '%s\n' "$token" | env -u GH_TOKEN -u GITHUB_TOKEN gh auth login --hostname github.com --with-token || bashio::log.warning "GitHub CLI authentication failed" + printf '%s\n' "$token" | run_as_runtime_user env -u GH_TOKEN -u GITHUB_TOKEN gh auth login --hostname github.com --with-token || bashio::log.warning "GitHub CLI authentication failed" fi - env -u GH_TOKEN -u GITHUB_TOKEN gh auth setup-git --hostname github.com || bashio::log.warning "GitHub CLI git credential setup failed" + run_as_runtime_user env -u GH_TOKEN -u GITHUB_TOKEN gh auth setup-git --hostname github.com || bashio::log.warning "GitHub CLI git credential setup failed" else bashio::log.info "GitHub CLI available. Set github_token to authenticate gh and git operations." fi From 95641d253cf2310d0e4701905e6a92bbc0d050f1 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 13:49:02 +0200 Subject: [PATCH 259/538] Update 83-github_cli.sh --- claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh b/claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh index 14b1a47af2..3df1f2f9ee 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/83-github_cli.sh @@ -36,6 +36,10 @@ run_as_runtime_user() { # Reclaim any root-owned copies left by an earlier add-on version before writing as abc: # these paths are not covered by 82-claude_tools.sh's ownership pass, and a root-owned # ~/.gitconfig would make the first `git config` below fail outright under `set -e`. + +mkdir -p "$HOME/.config" +chown -- "${RUNTIME_UID}:${RUNTIME_GID}" "$HOME/.config" + for managed_path in "$HOME/.gitconfig" "$HOME/.config/gh"; do if [ -e "$managed_path" ]; then chown -R -- "${RUNTIME_UID}:${RUNTIME_GID}" "$managed_path" || bashio::log.warning "Unable to set ownership on $managed_path" From 7e2c8eda5e79805893f31031e62639066f339b93 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 14:28:31 +0200 Subject: [PATCH 260/538] Fix generated package-lock conflicts when merging review PRs --- birdnet-go-dev/merge-prs.sh | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/birdnet-go-dev/merge-prs.sh b/birdnet-go-dev/merge-prs.sh index a7e6dcdb3c..b3430adc19 100755 --- a/birdnet-go-dev/merge-prs.sh +++ b/birdnet-go-dev/merge-prs.sh @@ -77,10 +77,27 @@ for entry in "${prs[@]}"; do # Fetch the PR head commit by number; works unauthenticated for public repos. git fetch --no-tags origin "refs/pull/${number}/head" if ! git merge --no-edit --no-ff -m "Merge PR #${number}: ${title}" "${sha}"; then - echo "!!! Merge conflict while merging PR #${number} (${title})." >&2 - echo "!!! Resolve the conflict in the fork or pause this PR, then rebuild." >&2 - git merge --abort || true - exit 1 + mapfile -t conflicted_files < <(git diff --name-only --diff-filter=U) + + # package-lock.json is generated content and stacked PRs can carry an + # older copy even when their source changes merge cleanly. Keep the + # lockfile already assembled from upstream and earlier PRs, but only + # when it is the sole conflict. Any source conflict remains fatal. + if [ "${#conflicted_files[@]}" -eq 1 ] \ + && [ "${conflicted_files[0]}" = "frontend/package-lock.json" ]; then + log "Resolving generated frontend/package-lock.json conflict using the accumulated tree" + git checkout --ours -- frontend/package-lock.json + git add frontend/package-lock.json + git commit --no-edit + else + echo "!!! Merge conflict while merging PR #${number} (${title})." >&2 + if [ "${#conflicted_files[@]}" -gt 0 ]; then + printf '!!! Conflicting file: %s\n' "${conflicted_files[@]}" >&2 + fi + echo "!!! Resolve the conflict in the fork or pause this PR, then rebuild." >&2 + git merge --abort || true + exit 1 + fi fi done From e345752d00a38ebbcd59f940eb09b8c60e125094 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 14:30:21 +0200 Subject: [PATCH 261/538] Update config.yaml --- birdnet-go-dev/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/birdnet-go-dev/config.yaml b/birdnet-go-dev/config.yaml index 4cd5713f39..5744cddfcb 100644 --- a/birdnet-go-dev/config.yaml +++ b/birdnet-go-dev/config.yaml @@ -127,5 +127,5 @@ slug: birdnet-go-dev udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "source-20260714" +version: "source-20260716" video: true From 9bbd72e70a3b943c759c1f138334600714a3c839 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 14:31:11 +0200 Subject: [PATCH 262/538] feat(claude_desktop): auto-compress large tool outputs via Headroom PostToolUse hook Desktop-spawned Claude Code sessions (cowork/dispatch) pin ANTHROPIC_BASE_URL to the production endpoint (headroom #869), so the transparent proxy never sees their traffic and compression depended on the model voluntarily calling the headroom MCP tools. A managed PostToolUse hook now compresses Bash/Grep/Glob/WebFetch outputs over ~4000 chars in every session type with Headroom's rule-based pipeline, swapping them in via hookSpecificOutput.updatedToolOutput with a retrieval marker. Originals live in the shared CCR SQLite store, so mcp__headroom__headroom_retrieve recovers them; savings land in the durable ledger (client "posttooluse-hook"). The hook fails open, never compresses stderr, skips sub-50-token savings, and registers idempotently in ~/.claude/settings.json only after a --self-test gate; new headroom_auto_compress option (default true) removes the managed entry cleanly when disabled. Measured: 10781->2964 tokens (73%) on a representative HA states dump, ~1.7 s hook overhead, <100 ms pass-through. Co-Authored-By: Claude Fable 5 --- claude_desktop/CHANGELOG.md | 4 + claude_desktop/README.md | 11 ++ claude_desktop/config.yaml | 4 +- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 86 ++++++++++ .../bin/headroom-posttooluse-compress.py | 154 ++++++++++++++++++ 5 files changed, 258 insertions(+), 1 deletion(-) create mode 100755 claude_desktop/rootfs/usr/local/bin/headroom-posttooluse-compress.py diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 00c950b8b6..255a8f5250 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.30 (16-07-2026) + +- Compress large tool outputs automatically in every Claude Code session with a managed `PostToolUse` hook (new `headroom_auto_compress` option, enabled by default). Desktop-spawned sessions (cowork/dispatch) pin `ANTHROPIC_BASE_URL` to the production endpoint (headroom #869), so the transparent proxy never sees their traffic and compression there depended entirely on the model remembering to call the `headroom` MCP tools per the CLAUDE.md guidance — in practice most large outputs went uncompressed. The new `/usr/local/bin/headroom-posttooluse-compress.py` hook fires on `Bash`/`Grep`/`Glob`/`WebFetch` results over ~4000 characters, compresses them with Headroom's rule-based pipeline (SmartCrusher and friends; the Kompress ML path is disabled because its background model load can never complete inside a short-lived hook process), and swaps the result in via `hookSpecificOutput.updatedToolOutput` with a retrieval marker appended. Originals are stored in the shared CCR SQLite store (`~/.headroom/ccr_store.db` — the same one the headroom MCP server reads), so `mcp__headroom__headroom_retrieve` always recovers the full output; savings are recorded to the durable ledger (client `posttooluse-hook`) and show up in the existing gains report. The hook fails open (any error leaves the tool output untouched), never touches `stderr` fields so error text reaches the model verbatim, skips anything below a 50-token savings floor, and is registered idempotently in `~/.claude/settings.json` only after a `--self-test` confirms the interpreter can import headroom; disabling the option (or Headroom) removes the managed entry without touching user-defined hooks. Measured on a representative Home Assistant `states` dump: 10781 -> 2964 tokens (73% saved) at ~1.7 s hook overhead, with sub-100 ms pass-through for small outputs. + ## 1.29 (16-07-2026) - Point the Headroom MCP server at the persistent Kompress model cache. 1.27 set `HF_HOME` on the `svc-headroom` proxy longrun only, but the MCP server is a separate process spawned by Claude Desktop / Claude Code from the registered `mcpServers` entry, so it never inherited that export and kept resolving the HuggingFace cache to `~/.cache` — symlinked to tmpfs here and wiped on every restart. Its Kompress ML path therefore never found the model, re-downloaded ~270 MB into tmpfs on each boot, and lost it again on the next one; `headroom_compress` fell back to `router:noop` (unchanged output) on prose and other unstructured content. The managed `headroom` entry in both `claude_desktop_config.json` and `~/.claude.json` now carries `env.HF_HOME` pointing at the same `~/.headroom/hf` cache the proxy warms. Rule-based compression (SmartCrusher, structured tool output) was unaffected and worked throughout. diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 6e2e59c5be..5468d5cb7b 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -99,6 +99,7 @@ Git synchronization hooks. A repository is indexed only when it is listed in | `permission_mode` | `auto` | Claude Code permission policy: `strict`, `auto`, or `bypass`. | | `install_headroom` | `true` | Register Headroom MCP and run the supervised local proxy. | | `headroom_wrap_claude_code` | `true` | Route PATH-based Claude Code launches through the already-running Headroom proxy. | +| `headroom_auto_compress` | `true` | Auto-compress large tool outputs in every Claude Code session via a managed `PostToolUse` hook. | | `expose_headroom_dashboard` | `false` | Bind Headroom to all interfaces. Port `8787/tcp` must also be mapped manually. | | `install_rtk` | `true` | Configure RTK's Claude Code `PreToolUse` Bash hook. | | `install_tokensave` | `true` | Install TokenSave's complete global Claude integration. | @@ -175,6 +176,16 @@ the MCP integration. The `/usr/local/bin/claude` wrapper routes PATH-based Claud Code sessions through `headroom wrap claude --no-proxy`, reusing the supervised backend without starting a second proxy. +With `headroom_auto_compress` enabled (the default), a managed Claude Code +`PostToolUse` hook additionally compresses large `Bash`/`Grep`/`Glob`/`WebFetch` +outputs (over ~4000 characters) in **every** session type — terminal, Desktop +cowork, dispatch, and cron — without the model having to remember to call the +MCP tools. The original output is kept in Headroom's local store for one hour +and can always be recovered with `mcp__headroom__headroom_retrieve` using the +hash printed in the compression marker. Error text (`stderr`) is never +compressed, and plain prose passes through unchanged; the savings come from +structured output such as JSON dumps, search results, and logs. + The dashboard is disabled externally by default. To expose it: 1. Set `expose_headroom_dashboard: true`. diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index bbfd56b2da..52b55e8ab4 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -49,6 +49,7 @@ options: github_username: "" enable_tools_health_report: true expose_headroom_dashboard: false + headroom_auto_compress: true headroom_wrap_claude_code: true install_caveman: false install_github_cli: true @@ -96,6 +97,7 @@ schema: github_username: str? enable_tools_health_report: bool expose_headroom_dashboard: bool + headroom_auto_compress: bool? headroom_wrap_claude_code: bool install_caveman: bool install_github_cli: bool @@ -109,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.29" +version: "1.30" video: true diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 4cf1a023b2..9c18e3995f 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -385,6 +385,92 @@ if changed: path.write_text(json.dumps(data, indent=2) + "\n") PY +# Compress large tool outputs automatically in every Claude Code session via a managed +# PostToolUse hook (settings.json hooks apply to terminal, cowork, dispatch and cron sessions +# alike). Desktop-spawned sessions pin ANTHROPIC_BASE_URL to the production endpoint +# (headroom #869) so the proxy never sees their traffic, and the CLAUDE.md guidance above only +# helps when the model remembers to call the MCP tools. The hook closes that gap: outputs over +# ~4000 chars from Bash/Grep/Glob/WebFetch are compressed with Headroom's rule-based pipeline +# and swapped in through hookSpecificOutput.updatedToolOutput, with the original kept in the +# shared CCR store so the model can fetch it back with mcp__headroom__headroom_retrieve. The +# script fails open (any error leaves the tool output untouched) and its --self-test gate +# keeps a broken interpreter path from registering a hook that would warn on every tool call. +HEADROOM_HOOK_CMD="/usr/local/bin/headroom-posttooluse-compress.py" +HEADROOM_HOOK_ACTION="remove" +if $HEADROOM_ENABLED && bashio::config.true 'headroom_auto_compress'; then + if run_as_runtime_user "$HEADROOM_HOOK_CMD" --self-test; then + HEADROOM_HOOK_ACTION="add" + bashio::log.info "Registering the Headroom PostToolUse auto-compression hook" + else + bashio::log.warning "headroom-posttooluse-compress.py --self-test failed; not registering the auto-compression hook" + fi +fi +HEADROOM_HOOK_ACTION="$HEADROOM_HOOK_ACTION" HEADROOM_HOOK_CMD="$HEADROOM_HOOK_CMD" \ + HEADROOM_HOOK_MATCHER="Bash|Grep|Glob|WebFetch" \ + python3 - <<'PY' || bashio::log.warning "Unable to manage the Headroom auto-compression hook" +import json +import os +from pathlib import Path + +action = os.environ["HEADROOM_HOOK_ACTION"] +command = os.environ["HEADROOM_HOOK_CMD"] +matcher = os.environ["HEADROOM_HOOK_MATCHER"] + +path = Path.home() / ".claude" / "settings.json" +original = path.read_text() if path.exists() else None +try: + data = json.loads(original) if original is not None else {} + if not isinstance(data, dict): + data = {} +except Exception: + if action != "add": + raise SystemExit(0) + path.rename(path.with_suffix(path.suffix + ".bak")) + original = None + data = {} + +hooks = data.get("hooks") if isinstance(data.get("hooks"), dict) else {} +entries = hooks.get("PostToolUse") if isinstance(hooks.get("PostToolUse"), list) else [] + +# Strip the managed command everywhere first, then re-append when enabled: the same pass +# handles removal, de-duplication, and matcher migration on version upgrades. The final +# text comparison keeps the write idempotent across boots. +filtered = [] +for entry in entries: + if not isinstance(entry, dict) or not isinstance(entry.get("hooks"), list): + filtered.append(entry) + continue + kept = [ + item + for item in entry["hooks"] + if not (isinstance(item, dict) and item.get("command") == command) + ] + if len(kept) != len(entry["hooks"]): + if not kept: + continue + entry = dict(entry) + entry["hooks"] = kept + filtered.append(entry) +entries = filtered + +if action == "add": + entries.append({"matcher": matcher, "hooks": [{"type": "command", "command": command}]}) + +if entries: + hooks["PostToolUse"] = entries +else: + hooks.pop("PostToolUse", None) +if hooks: + data["hooks"] = hooks +else: + data.pop("hooks", None) + +serialized = json.dumps(data, indent=2) + "\n" +if serialized != original: + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(serialized) +PY + # Tell Claude Code that it can configure Home Assistant over the Core API via the shipped # `ha-cli` helper (no /config filesystem mount needed). Managed, idempotent block appended to # the user's global CLAUDE.md; removed when the helper is disabled. Mirrors the headroom block. diff --git a/claude_desktop/rootfs/usr/local/bin/headroom-posttooluse-compress.py b/claude_desktop/rootfs/usr/local/bin/headroom-posttooluse-compress.py new file mode 100755 index 0000000000..a1a5db453d --- /dev/null +++ b/claude_desktop/rootfs/usr/local/bin/headroom-posttooluse-compress.py @@ -0,0 +1,154 @@ +#!/lsiopy/bin/python3 +"""Claude Code PostToolUse hook: auto-compress large tool outputs through Headroom. + +Registered in ~/.claude/settings.json by 82-claude_tools.sh (managed entry, matcher +"Bash|Grep|Glob|WebFetch"). Desktop-spawned Claude Code sessions cannot be routed +through the Headroom proxy (the Electron app pins ANTHROPIC_BASE_URL to the +production endpoint, headroom #869), so compression there used to depend on the +model voluntarily calling the headroom MCP tools. This hook makes it automatic for +every session type: when a matched tool returns a large output, the hook compresses +it with Headroom's rule-based pipeline and replaces the tool output via +hookSpecificOutput.updatedToolOutput, appending a retrieval marker. The original is +stored in Headroom's shared CCR store (SQLite at ~/.headroom/ccr_store.db — the +same store the headroom MCP server reads), so the model can always get the full +output back with mcp__headroom__headroom_retrieve. + +Design constraints: +- Fail open: any error or non-compressible payload exits 0 with no output, leaving + the tool result untouched. A hook crash must never break a session. +- Fast path first: the payload is inspected before importing headroom (~0.6 s); + small outputs never pay the import cost. +- ML text compression (Kompress) is disabled: its model loads in the background, + which never completes inside a short-lived hook process. The rule-based + transforms (SmartCrusher for JSON, search/log/diff/tabular compressors) carry + the savings on tool output anyway; plain prose passes through unchanged. +- stderr fields are never compressed — error text must reach the model verbatim + (matching Headroom's own error-protection policy). +""" + +import json +import os +import sys + +MIN_CHARS = int(os.environ.get("HEADROOM_HOOK_MIN_CHARS", "4000")) +MIN_SAVED_TOKENS = int(os.environ.get("HEADROOM_HOOK_MIN_SAVED_TOKENS", "50")) +TTL_SECONDS = 3600 # matches the headroom MCP server's session TTL +SKIP_KEYS = {"stderr"} + + +def self_test() -> int: + """Exit 0 when the interpreter can import headroom (used at registration time).""" + try: + import headroom # noqa: F401 + + return 0 + except Exception: + return 1 + + +def main() -> int: + if os.environ.get("HEADROOM_HOOK_DISABLE"): + return 0 + try: + payload = json.load(sys.stdin) + except Exception: + return 0 + if not isinstance(payload, dict): + return 0 + response = payload.get("tool_response") + + # Find big string fields before paying the headroom import cost. + if isinstance(response, str): + candidates = ["__whole__"] if len(response) >= MIN_CHARS else [] + elif isinstance(response, dict): + candidates = [ + key + for key, value in response.items() + if key not in SKIP_KEYS and isinstance(value, str) and len(value) >= MIN_CHARS + ] + else: + candidates = [] + if not candidates: + return 0 + + # Keep Kompress's cache probe away from the tmpfs-backed ~/.cache default. + os.environ.setdefault("HF_HOME", os.path.expanduser("~/.headroom/hf")) + from headroom import savings_ledger + from headroom.cache.compression_store import get_compression_store + from headroom.compress import compress + + store = None + totals = [0, 0] # tokens before, tokens after (only for rewritten fields) + + def shrink(text): + nonlocal store + result = compress( + [{"role": "tool", "content": text}], + protect_recent=0, + kompress_model="disabled", + ) + compressed = result.messages[0].get("content") + if not isinstance(compressed, str): + compressed = json.dumps(compressed) + saved = result.tokens_before - result.tokens_after + if saved < MIN_SAVED_TOKENS: + return None + if store is None: + store = get_compression_store() + hash_key = store.store( + original=text, + compressed=compressed, + original_tokens=result.tokens_before, + compressed_tokens=result.tokens_after, + compression_strategy="posttooluse_hook", + ttl=TTL_SECONDS, + ) + totals[0] += result.tokens_before + totals[1] += result.tokens_after + return ( + f"{compressed}\n" + f"[headroom: output compressed {result.tokens_before}->{result.tokens_after} tokens; " + f"call mcp__headroom__headroom_retrieve with hash={hash_key} if you need the full original]" + ) + + updated = None + if isinstance(response, str): + updated = shrink(response) + else: + rewritten = dict(response) + changed = False + for key in candidates: + new_value = shrink(rewritten[key]) + if new_value is not None: + rewritten[key] = new_value + changed = True + if changed: + updated = rewritten + if updated is None: + return 0 + + savings_ledger.record_savings_event( + tokens_before=totals[0], + tokens_after=totals[1], + client="posttooluse-hook", + source="hook", + ) + json.dump( + { + "hookSpecificOutput": { + "hookEventName": "PostToolUse", + "updatedToolOutput": updated, + } + }, + sys.stdout, + ) + return 0 + + +if __name__ == "__main__": + if "--self-test" in sys.argv: + sys.exit(self_test()) + try: + sys.exit(main()) + except Exception: + sys.exit(0) From a4764364dafff5e84fdbd9112ce71f43e01b409a Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 16 Jul 2026 12:37:00 +0000 Subject: [PATCH 263/538] GitHub bot: changelog [nobuild] --- birdnet-go-dev/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/birdnet-go-dev/CHANGELOG.md b/birdnet-go-dev/CHANGELOG.md index 5babe31d6b..730e0e5f56 100644 --- a/birdnet-go-dev/CHANGELOG.md +++ b/birdnet-go-dev/CHANGELOG.md @@ -1,3 +1,5 @@ +## source-20260716 (16-07-2026) +- Minor bugs fixed ## source-20260714 (14-07-2026) - Minor bugs fixed ## source-20260709 (09-07-2026) From 26101a11046ab860ec4a80d5fe514e61a370ff39 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 14:46:10 +0200 Subject: [PATCH 264/538] fix(claude_desktop): guard env parsing and truncate file-list arrays in headroom hook MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two review findings on PR #2871: - coderabbitai: MIN_CHARS/MIN_SAVED_TOKENS parsed with a bare int() at module import time, before any try/except could catch a bad value — a malformed env_vars passthrough would crash the hook on every matched tool call instead of failing open as documented. Wrapped in _int_env() with a safe fallback. - chatgpt-codex-connector: Glob and Grep (files_with_matches mode) return a `filenames: string[]` field per the CLI's own output schema, which the hook's string-only candidate scan never touched — large file listings, the exact case named in the CLAUDE.md guidance this add-on installs, passed through uncompressed. Verified empirically that routing such an array through compress()/SmartCrusher (as done for JSON-blob string fields) silently subsamples it — 600 paths collapsed to ~15 with no visible marker, unsafe for paths the model needs to act on individually. Added a separate deterministic path: arrays over ARRAY_KEEP (40) entries are truncated in order with one labeled marker entry appended, full array recoverable from the CCR store by hash. Verified round-trip on Glob- and Grep-shaped payloads (600 and 200 entries); confirmed order preservation and that small arrays still pass through untouched. Co-Authored-By: Claude Fable 5 --- .../bin/headroom-posttooluse-compress.py | 80 +++++++++++++++++-- 1 file changed, 72 insertions(+), 8 deletions(-) diff --git a/claude_desktop/rootfs/usr/local/bin/headroom-posttooluse-compress.py b/claude_desktop/rootfs/usr/local/bin/headroom-posttooluse-compress.py index a1a5db453d..987bef0114 100755 --- a/claude_desktop/rootfs/usr/local/bin/headroom-posttooluse-compress.py +++ b/claude_desktop/rootfs/usr/local/bin/headroom-posttooluse-compress.py @@ -24,14 +24,31 @@ Design constraints: the savings on tool output anyway; plain prose passes through unchanged. - stderr fields are never compressed — error text must reach the model verbatim (matching Headroom's own error-protection policy). +- File-list arrays (Glob's `filenames`, Grep's `filenames` in files_with_matches + mode — both typed `string[]` by the CLI's own output schema) are handled + separately from prose/JSON-blob fields: Headroom's SmartCrusher subsamples + JSON arrays for informational dumps, which is fine for e.g. a list of sensor + states but silently drops most paths from a file listing the model needs to + act on. Those fields are truncated deterministically instead (keep the first + N entries, append one marker string) so the model always sees a labeled cut + point rather than a shorter list it might mistake for the complete result. """ import json import os import sys -MIN_CHARS = int(os.environ.get("HEADROOM_HOOK_MIN_CHARS", "4000")) -MIN_SAVED_TOKENS = int(os.environ.get("HEADROOM_HOOK_MIN_SAVED_TOKENS", "50")) + +def _int_env(name: str, default: str) -> int: + try: + return int(os.environ.get(name, default)) + except (TypeError, ValueError): + return int(default) + + +MIN_CHARS = _int_env("HEADROOM_HOOK_MIN_CHARS", "4000") +MIN_SAVED_TOKENS = _int_env("HEADROOM_HOOK_MIN_SAVED_TOKENS", "50") +ARRAY_KEEP = _int_env("HEADROOM_HOOK_ARRAY_KEEP", "40") TTL_SECONDS = 3600 # matches the headroom MCP server's session TTL SKIP_KEYS = {"stderr"} @@ -57,18 +74,26 @@ def main() -> int: return 0 response = payload.get("tool_response") - # Find big string fields before paying the headroom import cost. + # Find big string/array fields before paying the headroom import cost. + def is_string_array(value): + return isinstance(value, list) and len(value) > ARRAY_KEEP and all(isinstance(v, str) for v in value) + if isinstance(response, str): - candidates = ["__whole__"] if len(response) >= MIN_CHARS else [] + string_candidates = ["__whole__"] if len(response) >= MIN_CHARS else [] + array_candidates = [] elif isinstance(response, dict): - candidates = [ + string_candidates = [ key for key, value in response.items() if key not in SKIP_KEYS and isinstance(value, str) and len(value) >= MIN_CHARS ] + array_candidates = [ + key for key, value in response.items() if key not in SKIP_KEYS and is_string_array(value) + ] else: - candidates = [] - if not candidates: + string_candidates = [] + array_candidates = [] + if not string_candidates and not array_candidates: return 0 # Keep Kompress's cache probe away from the tmpfs-backed ~/.cache default. @@ -111,17 +136,56 @@ def main() -> int: f"call mcp__headroom__headroom_retrieve with hash={hash_key} if you need the full original]" ) + def shrink_array(items): + nonlocal store + original_json = json.dumps(items) + if len(original_json) < MIN_CHARS: + return None + kept = items[:ARRAY_KEEP] + truncated_json = json.dumps(kept) + # No ML/token-counter call needed for a plain truncation decision; a char/4 + # estimate is the same fallback Headroom's own cost estimator uses and is + # only used here to decide eligibility and annotate the marker. + tokens_before = max(1, len(original_json) // 4) + tokens_after = max(1, len(truncated_json) // 4) + if tokens_before - tokens_after < MIN_SAVED_TOKENS: + return None + if store is None: + store = get_compression_store() + hash_key = store.store( + original=original_json, + compressed=truncated_json, + original_tokens=tokens_before, + compressed_tokens=tokens_after, + compression_strategy="posttooluse_hook_array_truncate", + ttl=TTL_SECONDS, + ) + totals[0] += tokens_before + totals[1] += tokens_after + remaining = len(items) - len(kept) + marker = ( + f"[headroom: {remaining} more of {len(items)} entries omitted " + f"({tokens_before}->{tokens_after} tokens); call mcp__headroom__headroom_retrieve " + f"with hash={hash_key} for the complete list]" + ) + return kept + [marker] + updated = None if isinstance(response, str): updated = shrink(response) else: rewritten = dict(response) changed = False - for key in candidates: + for key in string_candidates: new_value = shrink(rewritten[key]) if new_value is not None: rewritten[key] = new_value changed = True + for key in array_candidates: + new_value = shrink_array(rewritten[key]) + if new_value is not None: + rewritten[key] = new_value + changed = True if changed: updated = rewritten if updated is None: From 51288da9d082a31cedcaed625ec54f1916be3361 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 19:09:42 +0200 Subject: [PATCH 265/538] Nobuild --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 52b55e8ab4..1d87301864 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -111,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.30" +version: "1.29" video: true From dd885ceaee481ea37ee0fdbc961da609ee06f559 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 19:14:48 +0200 Subject: [PATCH 266/538] Update version from 1.29 to 1.30 Nobuild --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 1d87301864..52b55e8ab4 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -111,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.29" +version: "1.30" video: true From 8c763216c807d86b2217d947631ed22f540d7a6b Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 16 Jul 2026 17:31:31 +0000 Subject: [PATCH 267/538] fix(claude_desktop): grant GPU access before graphical services start The Selkies web client stayed on "waiting for stream" and Claude Desktop never appeared, with "libEGL warning: failed to open /dev/dri/card0: Permission denied" in the log. The LinuxServer base image adds the desktop user (abc) to the /dev/dri render group in its init-video s6 oneshot, but that oneshot is not a dependency of svc-xorg/svc-selkies/svc-de. On Home Assistant those long-running services start (via s6-setuidgid abc) before init-video has added abc to the render group, so Xorg/Selkies/pixelflux open the render device without permission and the video pipeline never produces frames. Prepare the exposed DRI nodes in a new 21-gpu_permissions.sh cont-init script: cont-init.d completes before any s6-rc service starts, so abc is added to each node's owning group (and the node is made world read/write as a timing-independent fallback) in time for the graphical services. Best-effort and a no-op when no GPU is exposed. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_014iAzC9599AaN45Ko6RXtSW --- claude_desktop/CHANGELOG.md | 4 ++ claude_desktop/config.yaml | 2 +- .../etc/cont-init.d/21-gpu_permissions.sh | 52 +++++++++++++++++++ 3 files changed, 57 insertions(+), 1 deletion(-) create mode 100755 claude_desktop/rootfs/etc/cont-init.d/21-gpu_permissions.sh diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 255a8f5250..9aae42b3a2 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.31 (16-07-2026) + +- Fix Claude Desktop never appearing — the Selkies web client stayed on "waiting for stream" forever with `libEGL warning: failed to open /dev/dri/card0: Permission denied` in the log. The LinuxServer base image grants the desktop user (`abc`) access to the `/dev/dri` render nodes in its `init-video` s6 oneshot, but that oneshot is not a dependency of `svc-xorg`/`svc-selkies`/`svc-de`, so on Home Assistant those long-running services regularly start (via `s6-setuidgid abc`) *before* `abc` has been added to the render group. Xorg/Selkies/pixelflux then open the render device without permission, the video pipeline produces no frames, and the stream never starts. Prepare the exposed DRI nodes in a new `21-gpu_permissions.sh` cont-init script instead: `cont-init.d` runs to completion before any s6-rc service starts, so `abc` is added to each node's owning group (and the node is made world read/write as a timing-independent fallback) in time for the graphical services to use the GPU. Best-effort and a no-op on hosts that expose no GPU. + ## 1.30 (16-07-2026) - Compress large tool outputs automatically in every Claude Code session with a managed `PostToolUse` hook (new `headroom_auto_compress` option, enabled by default). Desktop-spawned sessions (cowork/dispatch) pin `ANTHROPIC_BASE_URL` to the production endpoint (headroom #869), so the transparent proxy never sees their traffic and compression there depended entirely on the model remembering to call the `headroom` MCP tools per the CLAUDE.md guidance — in practice most large outputs went uncompressed. The new `/usr/local/bin/headroom-posttooluse-compress.py` hook fires on `Bash`/`Grep`/`Glob`/`WebFetch` results over ~4000 characters, compresses them with Headroom's rule-based pipeline (SmartCrusher and friends; the Kompress ML path is disabled because its background model load can never complete inside a short-lived hook process), and swaps the result in via `hookSpecificOutput.updatedToolOutput` with a retrieval marker appended. Originals are stored in the shared CCR SQLite store (`~/.headroom/ccr_store.db` — the same one the headroom MCP server reads), so `mcp__headroom__headroom_retrieve` always recovers the full output; savings are recorded to the durable ledger (client `posttooluse-hook`) and show up in the existing gains report. The hook fails open (any error leaves the tool output untouched), never touches `stderr` fields so error text reaches the model verbatim, skips anything below a 50-token savings floor, and is registered idempotently in `~/.claude/settings.json` only after a `--self-test` confirms the interpreter can import headroom; disabling the option (or Headroom) removes the managed entry without touching user-defined hooks. Measured on a representative Home Assistant `states` dump: 10781 -> 2964 tokens (73% saved) at ~1.7 s hook overhead, with sub-100 ms pass-through for small outputs. diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 52b55e8ab4..46e5af66a1 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -111,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.30" +version: "1.31" video: true diff --git a/claude_desktop/rootfs/etc/cont-init.d/21-gpu_permissions.sh b/claude_desktop/rootfs/etc/cont-init.d/21-gpu_permissions.sh new file mode 100755 index 0000000000..e4fbfe88e8 --- /dev/null +++ b/claude_desktop/rootfs/etc/cont-init.d/21-gpu_permissions.sh @@ -0,0 +1,52 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e + +# Grant the shared desktop user (abc) access to the exposed GPU render nodes *before* the +# graphical services start. +# +# The LinuxServer base image already sets up /dev/dri group access, but it does so in its +# init-video s6 oneshot, which is NOT a dependency of svc-xorg/svc-selkies/svc-de. On Home +# Assistant those long-running services routinely start (as abc, via s6-setuidgid) before +# init-video has added abc to the render group, so Xorg/Selkies/pixelflux open the render +# device with the wrong credentials and fail: +# +# libEGL warning: failed to open /dev/dri/card0: Permission denied +# +# With no usable render node the video pipeline never produces frames, so the Selkies web +# client stays on "waiting for stream" indefinitely and Claude Desktop never appears. +# +# cont-init.d runs to completion before any s6-rc service is started, so preparing the DRI +# nodes here wins that race. Everything is best-effort: a host that exposes no GPU simply has +# no nodes to touch and this is a no-op. + +shopt -s nullglob +dri_nodes=(/dev/dri/card* /dev/dri/render*) +if [ "${#dri_nodes[@]}" -eq 0 ]; then + bashio::log.info "No /dev/dri render nodes exposed; skipping GPU permission setup" + exit 0 +fi + +for node in "${dri_nodes[@]}"; do + [ -e "$node" ] || continue + + # Mirror the base image's init-video logic (add abc to the node's owning group, creating + # the group when the GID is unnamed) but early enough that the s6-setuidgid at service + # start picks the membership up. + gid="$(stat -c '%g' "$node")" + gname="$(getent group "$gid" | awk -F: '{print $1}')" + if [ -z "$gname" ]; then + gname="dri${gid}" + groupadd -o -g "$gid" "$gname" 2> /dev/null || true + fi + if ! id -G abc 2> /dev/null | tr ' ' '\n' | grep -qx "$gid"; then + usermod -a -G "$gname" abc 2> /dev/null || true + fi + + # Guarantee access even where group propagation is unreliable inside the add-on sandbox: + # this is a single-user desktop container, so world read/write on the local render node + # is acceptable and removes any dependency on group-membership timing. + chmod o+rw "$node" 2> /dev/null || true + + bashio::log.info "GPU: prepared ${node} (group ${gname}:${gid}) for the desktop user" +done From 0b61865f3615db80b9bace258c1ae252e8e6c70b Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 16 Jul 2026 18:29:31 +0000 Subject: [PATCH 268/538] fix(claude_desktop): pin selkies base image to a fixed version build.json used the rolling ghcr.io/linuxserver/baseimage-selkies :*-debianbookworm tag, which LinuxServer rebuilds continuously (and which itself installs selkies "latest" at base-build time). The desktop/stream runtime could therefore change under the add-on with no change to its own files. Pin both architectures to the current version (45960cc3-ls113). The versioned tags resolve to exactly the image the rolling tag points at today (amd64 sha256:6a4d5154..., aarch64 sha256:90914dfd...), so this is a no-op for the current build but makes future builds reproducible; the base now only moves when this value is bumped deliberately. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_014iAzC9599AaN45Ko6RXtSW --- claude_desktop/CHANGELOG.md | 1 + claude_desktop/build.json | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 9aae42b3a2..50733300cc 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,5 +1,6 @@ ## 1.31 (16-07-2026) +- Pin the LinuxServer selkies base image to a fixed version (`…-debianbookworm-45960cc3-ls113`) instead of the rolling `…-debianbookworm` tag. The rolling tag is rebuilt continuously (and itself installs selkies "latest" at base-build time), so the desktop/stream runtime could change under the add-on with no change to its own files — builds are now reproducible and the base only moves when this value is bumped deliberately. The pinned tags resolve to exactly the image the rolling tag currently points at (amd64 `sha256:6a4d5154…`, aarch64 `sha256:90914dfd…`). - Fix Claude Desktop never appearing — the Selkies web client stayed on "waiting for stream" forever with `libEGL warning: failed to open /dev/dri/card0: Permission denied` in the log. The LinuxServer base image grants the desktop user (`abc`) access to the `/dev/dri` render nodes in its `init-video` s6 oneshot, but that oneshot is not a dependency of `svc-xorg`/`svc-selkies`/`svc-de`, so on Home Assistant those long-running services regularly start (via `s6-setuidgid abc`) *before* `abc` has been added to the render group. Xorg/Selkies/pixelflux then open the render device without permission, the video pipeline produces no frames, and the stream never starts. Prepare the exposed DRI nodes in a new `21-gpu_permissions.sh` cont-init script instead: `cont-init.d` runs to completion before any s6-rc service starts, so `abc` is added to each node's owning group (and the node is made world read/write as a timing-independent fallback) in time for the graphical services to use the GPU. Best-effort and a no-op on hosts that expose no GPU. ## 1.30 (16-07-2026) diff --git a/claude_desktop/build.json b/claude_desktop/build.json index 5ab1765eeb..826ca38614 100644 --- a/claude_desktop/build.json +++ b/claude_desktop/build.json @@ -1,6 +1,6 @@ { "build_from": { - "aarch64": "ghcr.io/linuxserver/baseimage-selkies:arm64v8-debianbookworm", - "amd64": "ghcr.io/linuxserver/baseimage-selkies:amd64-debianbookworm" + "aarch64": "ghcr.io/linuxserver/baseimage-selkies:arm64v8-debianbookworm-45960cc3-ls113", + "amd64": "ghcr.io/linuxserver/baseimage-selkies:amd64-debianbookworm-45960cc3-ls113" } } From 295c3d912f9f88318601dea5ed2814564b2066c6 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 21:21:41 +0200 Subject: [PATCH 269/538] Downgrade version from 1.31 to 1.29 Nobuild --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 46e5af66a1..1d87301864 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -111,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.31" +version: "1.29" video: true From 7a375df1deb0a7cb5190d9d088b58af7a03d92cc Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 21:23:46 +0200 Subject: [PATCH 270/538] Change version to 1.27 nobuild Downgrade version from 1.29 to 1.27 in config.yaml --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 1d87301864..90ef37271e 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -111,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.29" +version: "1.27" video: true From 510bd46128867582a85fa86945d916beba27c0cf Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 21:34:56 +0200 Subject: [PATCH 271/538] Downgrade version from 1.27 to 1.26 Nobuild --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 90ef37271e..ca606f6ff5 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -111,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.27" +version: "1.26" video: true From 4804041920ed4be9ae0c4da5ed764ad77aa0b2c7 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 22:00:16 +0200 Subject: [PATCH 272/538] Update version from 1.26 to 1.29 in config.yaml Nobuild --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index ca606f6ff5..1d87301864 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -111,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.26" +version: "1.29" video: true From 778ef33359460f794957fda3b99525089fe69d31 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 22:16:39 +0200 Subject: [PATCH 273/538] Update version from 1.29 to 1.31 Nobuild --- claude_desktop/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 1d87301864..46e5af66a1 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -111,5 +111,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.29" +version: "1.31" video: true From dc5c0855981db5eddc0d2d6f0cee6c66d2397972 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 22:45:48 +0200 Subject: [PATCH 274/538] Update config.yaml --- filebrowser_quantum/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/filebrowser_quantum/config.yaml b/filebrowser_quantum/config.yaml index 1ff5d361fe..f47c41fb49 100644 --- a/filebrowser_quantum/config.yaml +++ b/filebrowser_quantum/config.yaml @@ -114,4 +114,4 @@ schema: slug: filebrowser_quantum udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.4.0-2" +version: "1.4.0.2" From 99ccd61c142862eed38e3a97d927f148192e0d36 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:53:20 +0200 Subject: [PATCH 275/538] Updater bot : autobrr updated to 1.82.1 --- autobrr/CHANGELOG.md | 3 +++ autobrr/Dockerfile | 2 +- autobrr/config.yaml | 2 +- autobrr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/autobrr/CHANGELOG.md b/autobrr/CHANGELOG.md index 9347c9608b..71117a5b88 100644 --- a/autobrr/CHANGELOG.md +++ b/autobrr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.82.1 (2026-07-16) +- Update to latest version from autobrr/autobrr (changelog : https://github.com/autobrr/autobrr/releases) + ## 1.81.0 (2026-07-04) - Update to latest version from autobrr/autobrr (changelog : https://github.com/autobrr/autobrr/releases) ## 1.80.0 (2026-06-05) diff --git a/autobrr/Dockerfile b/autobrr/Dockerfile index 32d9578142..5efdf8e788 100644 --- a/autobrr/Dockerfile +++ b/autobrr/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="1.81.0" +ARG BUILD_UPSTREAM="1.82.1" FROM ${BUILD_FROM} ################## diff --git a/autobrr/config.yaml b/autobrr/config.yaml index 7367ce076a..860fd67f30 100644 --- a/autobrr/config.yaml +++ b/autobrr/config.yaml @@ -108,4 +108,4 @@ schema: slug: autobrr udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/autobrr -version: "1.81.0" +version: "1.82.1" diff --git a/autobrr/updater.json b/autobrr/updater.json index ea28dbf617..e110d1ddfb 100644 --- a/autobrr/updater.json +++ b/autobrr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "autborr", "source": "github", "upstream_repo": "autobrr/autobrr", - "upstream_version": "1.81.0" + "upstream_version": "1.82.1" } From 9add537dc63837570b2d4a91d2a4fb6e890e66e6 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:53:52 +0200 Subject: [PATCH 276/538] Updater bot : birdnet-go updated to 20260716 --- birdnet-go/CHANGELOG.md | 3 +++ birdnet-go/config.yaml | 2 +- birdnet-go/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/birdnet-go/CHANGELOG.md b/birdnet-go/CHANGELOG.md index 65848421d9..44f337dcf0 100644 --- a/birdnet-go/CHANGELOG.md +++ b/birdnet-go/CHANGELOG.md @@ -1,4 +1,7 @@ +## 20260716 (2026-07-16) +- Update to latest version from tphakala/birdnet-go (changelog : https://github.com/tphakala/birdnet-go/releases) + ## 20260712 (2026-07-13) - Update to latest version from tphakala/birdnet-go (changelog : https://github.com/tphakala/birdnet-go/releases) ## nightly-20260615-4 (09-07-2026) diff --git a/birdnet-go/config.yaml b/birdnet-go/config.yaml index fb39e8ef78..d0b59cd00f 100644 --- a/birdnet-go/config.yaml +++ b/birdnet-go/config.yaml @@ -128,4 +128,4 @@ slug: birdnet-go udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-go usb: true -version: "20260712" +version: "20260716" diff --git a/birdnet-go/updater.json b/birdnet-go/updater.json index ac89bbe8fe..8dca8a75fc 100644 --- a/birdnet-go/updater.json +++ b/birdnet-go/updater.json @@ -2,10 +2,10 @@ "github_beta": true, "github_exclude": "-4", "github_fulltag": true, - "last_update": "2026-07-13", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "birdnet-go", "source": "github", "upstream_repo": "tphakala/birdnet-go", - "upstream_version": "20260712" + "upstream_version": "20260716" } From b6fc7f2c3a44cb7a1b73aadc384382b5886b2f09 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:55:00 +0200 Subject: [PATCH 277/538] Updater bot : browser_brave updated to 1.92.140-ls113 --- browser_brave/CHANGELOG.md | 3 +++ browser_brave/config.yaml | 2 +- browser_brave/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/browser_brave/CHANGELOG.md b/browser_brave/CHANGELOG.md index b2485c0403..a621c5736e 100644 --- a/browser_brave/CHANGELOG.md +++ b/browser_brave/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.92.140-ls113 (2026-07-16) +- Update to latest version from linuxserver/docker-brave (changelog : https://github.com/linuxserver/docker-brave/releases) + ## 1.92.139-ls112 (2026-07-11) - Update to latest version from linuxserver/docker-brave (changelog : https://github.com/linuxserver/docker-brave/releases) diff --git a/browser_brave/config.yaml b/browser_brave/config.yaml index 060a5126db..dc567b7ffd 100644 --- a/browser_brave/config.yaml +++ b/browser_brave/config.yaml @@ -69,5 +69,5 @@ slug: brave tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.92.139-ls112" +version: "1.92.140-ls113" video: true diff --git a/browser_brave/updater.json b/browser_brave/updater.json index 1dab2f51b8..319574d376 100644 --- a/browser_brave/updater.json +++ b/browser_brave/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "brave", "source": "github", "upstream_repo": "linuxserver/docker-brave", - "upstream_version": "1.92.139-ls112" + "upstream_version": "1.92.140-ls113" } From 680a947ced3b48fbf4ff943ee6f3eb5fc40a1d5e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:55:20 +0200 Subject: [PATCH 278/538] Updater bot : browser_chromium updated to version-ae9a7fca --- browser_chromium/CHANGELOG.md | 3 +++ browser_chromium/config.yaml | 2 +- browser_chromium/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/browser_chromium/CHANGELOG.md b/browser_chromium/CHANGELOG.md index 4f031a23ae..574031896f 100644 --- a/browser_chromium/CHANGELOG.md +++ b/browser_chromium/CHANGELOG.md @@ -1,4 +1,7 @@ +## version-ae9a7fca (2026-07-16) +- Update to latest version from linuxserver/docker-chromium (changelog : https://github.com/linuxserver/docker-chromium/releases) + ## version-30a7c401 (2026-07-11) - Update to latest version from linuxserver/docker-chromium (changelog : https://github.com/linuxserver/docker-chromium/releases) diff --git a/browser_chromium/config.yaml b/browser_chromium/config.yaml index 623d2962d7..920bc32f52 100644 --- a/browser_chromium/config.yaml +++ b/browser_chromium/config.yaml @@ -71,5 +71,5 @@ slug: chromium tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "version-30a7c401" +version: "version-ae9a7fca" video: true diff --git a/browser_chromium/updater.json b/browser_chromium/updater.json index 5634b3b463..39a2c64bf5 100644 --- a/browser_chromium/updater.json +++ b/browser_chromium/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "chromium", "source": "github", "upstream_repo": "linuxserver/docker-chromium", - "upstream_version": "version-30a7c401" + "upstream_version": "version-ae9a7fca" } From cf918a2c2bcc265f1707cd47159d9465e7328c97 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:55:26 +0200 Subject: [PATCH 279/538] Updater bot : browserless_chrome updated to 2.55.0 --- browserless_chrome/CHANGELOG.md | 3 +++ browserless_chrome/config.yaml | 2 +- browserless_chrome/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/browserless_chrome/CHANGELOG.md b/browserless_chrome/CHANGELOG.md index 9bcc3b6b1a..df12760d21 100644 --- a/browserless_chrome/CHANGELOG.md +++ b/browserless_chrome/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.55.0 (2026-07-16) +- Update to latest version from browserless/chrome (changelog : https://github.com/browserless/chrome/releases) + ## 2.54.2 (2026-07-04) - Update to latest version from browserless/chrome (changelog : https://github.com/browserless/chrome/releases) diff --git a/browserless_chrome/config.yaml b/browserless_chrome/config.yaml index 1a8a77f26e..c5cb667cdf 100644 --- a/browserless_chrome/config.yaml +++ b/browserless_chrome/config.yaml @@ -86,5 +86,5 @@ schema: slug: browserless_chrome udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/browserless_chrome -version: "2.54.2" +version: "2.55.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]/docs" diff --git a/browserless_chrome/updater.json b/browserless_chrome/updater.json index 01b32e4758..c17b2f9802 100644 --- a/browserless_chrome/updater.json +++ b/browserless_chrome/updater.json @@ -1,9 +1,9 @@ { "github_tagfilter": "v", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "browserless_chrome", "source": "github", "upstream_repo": "browserless/chrome", - "upstream_version": "2.54.2" + "upstream_version": "2.55.0" } From 15853bd66177b3dbf6a46143d0f0c48d359791f8 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:55:45 +0200 Subject: [PATCH 280/538] Updater bot : changedetection.io updated to 0.55.8 --- changedetection.io/CHANGELOG.md | 3 +++ changedetection.io/config.yaml | 2 +- changedetection.io/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/changedetection.io/CHANGELOG.md b/changedetection.io/CHANGELOG.md index 0057732e59..4a4a4fdb94 100644 --- a/changedetection.io/CHANGELOG.md +++ b/changedetection.io/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 0.55.8 (2026-07-16) +- Update to latest version from linuxserver/docker-changedetection.io (changelog : https://github.com/linuxserver/docker-changedetection.io/releases) ## 0.55.7 (2026-05-30) - Update to latest version from linuxserver/docker-changedetection.io (changelog : https://github.com/linuxserver/docker-changedetection.io/releases) diff --git a/changedetection.io/config.yaml b/changedetection.io/config.yaml index 7f9afabba3..a856f305a4 100644 --- a/changedetection.io/config.yaml +++ b/changedetection.io/config.yaml @@ -34,4 +34,4 @@ schema: slug: changedetection.io udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/changedetection.io -version: "0.55.7" +version: "0.55.8" diff --git a/changedetection.io/updater.json b/changedetection.io/updater.json index 24fc0a4247..59c357b29a 100644 --- a/changedetection.io/updater.json +++ b/changedetection.io/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "false", - "last_update": "2026-05-30", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "changedetection.io", "source": "github", "upstream_repo": "linuxserver/docker-changedetection.io", - "upstream_version": "0.55.7" + "upstream_version": "0.55.8" } From 920591631d63c801718c53bbe0b726dc7c08ee7a Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:56:23 +0200 Subject: [PATCH 281/538] Updater bot : codex updated to 2.2.0 --- codex/CHANGELOG.md | 3 +++ codex/config.yaml | 2 +- codex/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/codex/CHANGELOG.md b/codex/CHANGELOG.md index 60d82b411a..6a2e894dff 100644 --- a/codex/CHANGELOG.md +++ b/codex/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.2.0 (2026-07-16) +- Update to latest version from ajslater/codex (changelog : https://github.com/ajslater/codex/releases) + ## 2.1.2 (2026-07-11) - Update to latest version from ajslater/codex (changelog : https://github.com/ajslater/codex/releases) diff --git a/codex/config.yaml b/codex/config.yaml index b0a7afc4e7..403844f944 100644 --- a/codex/config.yaml +++ b/codex/config.yaml @@ -101,4 +101,4 @@ schema: slug: codex udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.1.2" +version: "2.2.0" diff --git a/codex/updater.json b/codex/updater.json index 668c9c8eca..6291bc654f 100644 --- a/codex/updater.json +++ b/codex/updater.json @@ -1,9 +1,9 @@ { "github_beta": "true", - "last_update": "2026-07-11", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "codex", "source": "github", "upstream_repo": "ajslater/codex", - "upstream_version": "2.1.2" + "upstream_version": "2.2.0" } From a6d93753e9085b36f3c7dc52ad614d7fcfbc897e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:56:28 +0200 Subject: [PATCH 282/538] Updater bot : collabora updated to 1.3.0 --- collabora/CHANGELOG.md | 3 +++ collabora/config.yaml | 2 +- collabora/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/collabora/CHANGELOG.md b/collabora/CHANGELOG.md index 9175f644e9..116a541546 100644 --- a/collabora/CHANGELOG.md +++ b/collabora/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.3.0 (2026-07-16) +- Update to latest version from CollaboraOnline/online (changelog : https://github.com/CollaboraOnline/online/releases) + ## 1.2.2 (2026-07-04) - Update to latest version from CollaboraOnline/online (changelog : https://github.com/CollaboraOnline/online/releases) diff --git a/collabora/config.yaml b/collabora/config.yaml index 920ae948f7..a152277ecb 100644 --- a/collabora/config.yaml +++ b/collabora/config.yaml @@ -45,5 +45,5 @@ schema: username: str slug: collabora url: https://github.com/alexbelgium/hassio-addons -version: "1.2.2" +version: "1.3.0" webui: "[PROTO:ssl]://[HOST]:[PORT:9980]/browser/dist/admin/admin.html" diff --git a/collabora/updater.json b/collabora/updater.json index 2fb949d0c6..35f757568b 100644 --- a/collabora/updater.json +++ b/collabora/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "collabora", "source": "github", "upstream_repo": "CollaboraOnline/online", - "upstream_version": "1.2.2" + "upstream_version": "1.3.0" } From 49dcc057d589e579cadd278d67f158759488a87b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:56:54 +0200 Subject: [PATCH 283/538] Updater bot : ente updated to 4.4.24 --- ente/CHANGELOG.md | 3 +++ ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 15c481b126..5f1e8b0a49 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.4.24 (2026-07-16) +- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) + ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 72d2fc618c..5bd0afb53e 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.23" +version: "4.4.24" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index d8d8dd2093..932b479bcb 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-06-11", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.23" + "upstream_version": "4.4.24" } From d9e08a447b7ef5cb7f094f4c3d9feae209ff5ad9 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:57:21 +0200 Subject: [PATCH 284/538] Updater bot : flexget updated to 3.19.27 --- flexget/CHANGELOG.md | 3 +++ flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index fb73412a31..341e0e62e7 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.19.27 (2026-07-16) +- Update to latest version from wiserain/flexget + ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index ad1b7f6538..5c2831b377 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.26" +version: "3.19.27" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 82ed3e79df..c3d5bdcf23 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.26" + "upstream_version": "3.19.27" } From acee58b78dd95c4516e29a8225f0402294517c00 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:57:33 +0200 Subject: [PATCH 285/538] Updater bot : gitea updated to 1.27.0 --- gitea/CHANGELOG.md | 3 +++ gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index a807064de8..1b51177b1c 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.27.0 (2026-07-16) +- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index cad067b70c..9230114be6 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27" +version: "1.27.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index a8e3aeb675..8bc933f563 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-23", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.26.4" + "upstream_version": "1.27.0" } From 4a05b9a28745a7c32b82d66b2d5ff56a732a1a06 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:57:43 +0200 Subject: [PATCH 286/538] Updater bot : grav updated to 2.0.11 --- grav/CHANGELOG.md | 3 +++ grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 06165ba207..3c79b261a8 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.11 (2026-07-16) +- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) + ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 0894d6e150..058f12514f 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.6" +ARG BUILD_UPSTREAM="2.0.11" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 540412f15c..508347de55 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.6" +version: "2.0.11" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 3936e662ab..98e85af232 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.6" + "upstream_version": "2.0.11" } From 8d67dea5f107735e61da0ba007b1651f9c433a64 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:57:51 +0200 Subject: [PATCH 287/538] Updater bot : immich updated to 3.0.3 --- immich/CHANGELOG.md | 3 +++ immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index a8ab336381..06ba3fd9cd 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-16) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 4537b0473b..66e32162ab 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 63ac0aca0a..eaac09ce52 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 179863a7b0c8bb81251a9ed08a70a630870c0640 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:57:56 +0200 Subject: [PATCH 288/538] Updater bot : immich_cuda updated to 3.0.3 --- immich_cuda/CHANGELOG.md | 3 +++ immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 95bec50a58..5ff393b7c0 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-16) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index b7c3dd3c48..73c96d22b4 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 63ac0aca0a..eaac09ce52 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From f85151b52cc20834bbbd33bf96b4334f13382373 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:58:02 +0200 Subject: [PATCH 289/538] Updater bot : immich_frame updated to 1.0.36.0 --- immich_frame/CHANGELOG.md | 3 +++ immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 443763661a..a7ceed71e0 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.0.36.0 (2026-07-16) +- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) + ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 44a6fcb111..9f274d93d9 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.34.0" +version: "1.0.36.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 8408fb021e..5ca0f401b6 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.34.0" + "upstream_version": "1.0.36.0" } From c3e81e8761b4072f5424ed2cc9a83092a8b0d80b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:58:08 +0200 Subject: [PATCH 290/538] Updater bot : immich_noml updated to 3.0.3 --- immich_noml/CHANGELOG.md | 3 +++ immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 0c354e8271..5d61f3d1c7 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-16) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 42ee4dc3dd..9774a2f395 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 63ac0aca0a..eaac09ce52 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 090b200cb13c129539c951e819c5e2b1a130146b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:58:14 +0200 Subject: [PATCH 291/538] Updater bot : immich_openvino updated to 3.0.3 --- immich_openvino/CHANGELOG.md | 3 +++ immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 1b604106d2..032e0cabf1 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-16) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 52c6cd1a44..30337862a9 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 63ac0aca0a..eaac09ce52 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From c7bc78f3066fe06076f969a137f0e32f1eb8db11 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:58:24 +0200 Subject: [PATCH 292/538] Updater bot : jackett updated to 0.24.2226 --- jackett/CHANGELOG.md | 3 +++ jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index fdcaa4afa4..f448200c85 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.24.2226 (2026-07-16) +- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) + ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index c393744967..d07a6f2b70 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2166" +version: "0.24.2226" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0a816abd2c..74b620c5d9 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2166" + "upstream_version": "0.24.2226" } From 36e0800596bb0cfd2f46a0fa75557bfd5cd435bd Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:58:52 +0200 Subject: [PATCH 293/538] Updater bot : linkwarden updated to 2.15.1 --- linkwarden/CHANGELOG.md | 3 +++ linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 90b6ee06ff..bfe14b2f83 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 2.15.1 (2026-07-16) +- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index 33fb3c849d..b1d3213f17 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.14.1" +version: "2.15.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 18d72d7a97..c4910f8ed0 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-04-23", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.14.1" + "upstream_version": "2.15.1" } From 1b32956a2ac282befc26a8cd14f92078a0f05767 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:58:57 +0200 Subject: [PATCH 294/538] Updater bot : maintainerr updated to 3.17.1 --- maintainerr/CHANGELOG.md | 3 +++ maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6625d46e2d..8c12def170 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.17.1 (2026-07-16) +- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) + ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index eadb42fa43..a05b7bb794 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.16.0" +ARG BUILD_UPSTREAM="3.17.1" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index 65d02cfd17..bb266ddf2b 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.16.0" +version: "3.17.1" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index fd48a580bc..dee5919922 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.16.0" + "upstream_version": "3.17.1" } From 8ee044b6978a43c2876c854fc0745fe08b549042 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:59:21 +0200 Subject: [PATCH 295/538] Updater bot : navidrome updated to 0.63.2 --- navidrome/CHANGELOG.md | 3 +++ navidrome/config.yaml | 2 +- navidrome/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/navidrome/CHANGELOG.md b/navidrome/CHANGELOG.md index 1d3e82672a..ee83670c28 100644 --- a/navidrome/CHANGELOG.md +++ b/navidrome/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 0.63.2 (2026-07-16) +- Update to latest version from navidrome/navidrome (changelog : https://github.com/navidrome/navidrome/releases) ## 0.62.0-2 (19-06-2026) - Minor bugs fixed diff --git a/navidrome/config.yaml b/navidrome/config.yaml index e1c6c8bc59..fd93f83dc2 100644 --- a/navidrome/config.yaml +++ b/navidrome/config.yaml @@ -119,5 +119,5 @@ schema: slug: navidrome udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/navidrome -version: "0.62.0-2" +version: "0.63.2" webui: "[PROTO:ssl]://[HOST]:[PORT:4533]" diff --git a/navidrome/updater.json b/navidrome/updater.json index 68986b5735..38f368a156 100644 --- a/navidrome/updater.json +++ b/navidrome/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-11", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "navidrome", "source": "github", "upstream_repo": "navidrome/navidrome", - "upstream_version": "0.62.0" + "upstream_version": "0.63.2" } From 6ad65abc8e6a8213db0e37a79edc2bab3c52f470 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:59:39 +0200 Subject: [PATCH 296/538] Updater bot : nzbget updated to v26.2-ls253 --- nzbget/CHANGELOG.md | 3 +++ nzbget/config.yaml | 2 +- nzbget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nzbget/CHANGELOG.md b/nzbget/CHANGELOG.md index 054fcb4480..175d3160b1 100644 --- a/nzbget/CHANGELOG.md +++ b/nzbget/CHANGELOG.md @@ -1,4 +1,7 @@ +## v26.2-ls253 (2026-07-16) +- Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) + ## v26.2-ls251 (2026-07-04) - Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) diff --git a/nzbget/config.yaml b/nzbget/config.yaml index 4c2658da96..2abdc16346 100644 --- a/nzbget/config.yaml +++ b/nzbget/config.yaml @@ -104,4 +104,4 @@ schema: slug: nzbget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "v26.2-ls251" +version: "v26.2-ls253" diff --git a/nzbget/updater.json b/nzbget/updater.json index 15dca4e6a3..3c2bd6ee79 100644 --- a/nzbget/updater.json +++ b/nzbget/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "nzbget", "source": "github", "upstream_repo": "linuxserver/docker-nzbget", - "upstream_version": "v26.2-ls251" + "upstream_version": "v26.2-ls253" } From dcf80737344a9435bea46e283ebbecd371935260 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 22:59:49 +0200 Subject: [PATCH 297/538] Updater bot : openproject updated to 17.6.0 --- openproject/CHANGELOG.md | 3 +++ openproject/config.yaml | 2 +- openproject/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/openproject/CHANGELOG.md b/openproject/CHANGELOG.md index 26524b7076..5847acd5ca 100644 --- a/openproject/CHANGELOG.md +++ b/openproject/CHANGELOG.md @@ -1,4 +1,7 @@ +## 17.6.0 (2026-07-16) +- Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) + ## 17.5.1 (2026-06-17) - Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) diff --git a/openproject/config.yaml b/openproject/config.yaml index 4dd820eb68..476c58e113 100644 --- a/openproject/config.yaml +++ b/openproject/config.yaml @@ -34,5 +34,5 @@ schema: slug: openproject udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/openproject -version: "17.5.1" +version: "17.6.0" webui: "[PROTO:ssl]://[HOST]:[PORT:8080]" diff --git a/openproject/updater.json b/openproject/updater.json index 9ac77fed1e..5b0f2718f0 100644 --- a/openproject/updater.json +++ b/openproject/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-17", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "openproject", "source": "github", "upstream_repo": "opf/openproject", - "upstream_version": "17.5.1" + "upstream_version": "17.6.0" } From 63fcca6f743397e0b08fdf59248998225cdc729d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 23:00:01 +0200 Subject: [PATCH 298/538] Updater bot : plex updated to 1.43.3.10828-00f62d37d-ls315 --- plex/CHANGELOG.md | 3 +++ plex/config.yaml | 2 +- plex/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/plex/CHANGELOG.md b/plex/CHANGELOG.md index e86cb587b1..c76937f367 100644 --- a/plex/CHANGELOG.md +++ b/plex/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.43.3.10828-00f62d37d-ls315 (2026-07-16) +- Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) + ## 1.43.2.10687-563d026ea-ls311 (2026-07-04) - Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) diff --git a/plex/config.yaml b/plex/config.yaml index b1104de51b..5af53761c6 100644 --- a/plex/config.yaml +++ b/plex/config.yaml @@ -175,6 +175,6 @@ slug: plex_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/plex usb: true -version: "1.43.2.10687-563d026ea-ls311" +version: "1.43.3.10828-00f62d37d-ls315" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:32400]/web" diff --git a/plex/updater.json b/plex/updater.json index aaa88c7248..8f2f9ac134 100644 --- a/plex/updater.json +++ b/plex/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "plex", "source": "github", "upstream_repo": "linuxserver/docker-plex", - "upstream_version": "1.43.2.10687-563d026ea-ls311" + "upstream_version": "1.43.3.10828-00f62d37d-ls315" } From 881821e17c9832192c094d9d41bbb191b779b9f3 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 16 Jul 2026 23:00:05 +0200 Subject: [PATCH 299/538] Update config.yaml --- birdnet-go-dev/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/birdnet-go-dev/config.yaml b/birdnet-go-dev/config.yaml index 5744cddfcb..901a56b548 100644 --- a/birdnet-go-dev/config.yaml +++ b/birdnet-go-dev/config.yaml @@ -127,5 +127,5 @@ slug: birdnet-go-dev udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "source-20260716" +version: "source-20260716.02" video: true From 2bdf65187c9f4f71a52e9cb21e6599390b12b93a Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 23:00:15 +0200 Subject: [PATCH 300/538] Updater bot : prowlarr updated to nightly-2.5.1.5478-ls7 --- prowlarr/CHANGELOG.md | 3 +++ prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index 8c8d189e62..44e2a73cc6 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## nightly-2.5.1.5478-ls7 (2026-07-16) +- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) + ## develop-2.5.1.5464-ls268 (2026-07-13) - Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index b32ce3c98c..b43239ffd8 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "develop-2.5.1.5464-ls268" +version: "nightly-2.5.1.5478-ls7" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 3f7f5a9f95..1336432f31 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-13", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "develop-2.5.1.5464-ls268" + "upstream_version": "nightly-2.5.1.5478-ls7" } From 2fa921734b5a009e024cc0017ee6f18a269df18e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 23:01:15 +0200 Subject: [PATCH 301/538] Updater bot : social_to_mealie updated to 1.7.2 --- social_to_mealie/CHANGELOG.md | 3 +++ social_to_mealie/config.yaml | 2 +- social_to_mealie/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/social_to_mealie/CHANGELOG.md b/social_to_mealie/CHANGELOG.md index 659d407245..b2088f5e01 100644 --- a/social_to_mealie/CHANGELOG.md +++ b/social_to_mealie/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.7.2 (2026-07-16) +- Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) + ## 1.7.1 (2026-07-13) - Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) diff --git a/social_to_mealie/config.yaml b/social_to_mealie/config.yaml index 1bacf3d008..8712f1b471 100644 --- a/social_to_mealie/config.yaml +++ b/social_to_mealie/config.yaml @@ -1,5 +1,5 @@ name: Social to Mealie -version: "1.7.1" +version: "1.7.2" slug: social_to_mealie description: Import recipes from social media directly into Mealie url: https://github.com/alexbelgium/hassio-addons diff --git a/social_to_mealie/updater.json b/social_to_mealie/updater.json index 7b86e115a8..eeb96d082d 100644 --- a/social_to_mealie/updater.json +++ b/social_to_mealie/updater.json @@ -1,10 +1,10 @@ { "dockerhub_by_date": true, "dockerhub_list_size": 2, - "last_update": "2026-07-13", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "social_to_mealie", "source": "github", "upstream_repo": "GerardPolloRebozado/social-to-mealie", - "upstream_version": "1.7.1" + "upstream_version": "1.7.2" } From 1a50bbe522472688d28ffe463648fc738deb382b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Thu, 16 Jul 2026 23:02:41 +0200 Subject: [PATCH 302/538] Updater bot : webtop_kde updated to 4.16-r0-ls95 --- webtop_kde/CHANGELOG.md | 3 +++ webtop_kde/Dockerfile | 4 ++-- webtop_kde/config.yaml | 2 +- webtop_kde/updater.json | 4 ++-- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/webtop_kde/CHANGELOG.md b/webtop_kde/CHANGELOG.md index 60386a07f7..fe4a380584 100644 --- a/webtop_kde/CHANGELOG.md +++ b/webtop_kde/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.16-r0-ls95 (2026-07-16) +- Update to latest version from linuxserver/docker-webtop (changelog : https://github.com/linuxserver/docker-webtop/releases) + ## 4.16-r0-ls94 (2026-06-23) - Update to latest version from linuxserver/docker-webtop (changelog : https://github.com/linuxserver/docker-webtop/releases) diff --git a/webtop_kde/Dockerfile b/webtop_kde/Dockerfile index e710bcbf52..f87b69d85a 100644 --- a/webtop_kde/Dockerfile +++ b/webtop_kde/Dockerfile @@ -2,11 +2,11 @@ # ALEXBELGIUM'S DOCKERFILE # #============================# # _.------. -# _.-` ('>.-`"4.16-r0-ls94""-. +# _.-` ('>.-`"4.16-r0-ls95""-. # '.--'` _'` _ .--.) # -' '-.-';` ` # ' - _.' ``'--. -# '---` .-'"4.16-r0-ls94"` +# '---` .-'"4.16-r0-ls95"` # /` #=== Home Assistant Addon ===# diff --git a/webtop_kde/config.yaml b/webtop_kde/config.yaml index 1922c49415..74d3cdd2ed 100644 --- a/webtop_kde/config.yaml +++ b/webtop_kde/config.yaml @@ -143,5 +143,5 @@ slug: webtop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.16-r0-ls94" +version: "4.16-r0-ls95" video: true diff --git a/webtop_kde/updater.json b/webtop_kde/updater.json index 603e26e049..27696b5e98 100644 --- a/webtop_kde/updater.json +++ b/webtop_kde/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-06-23", + "last_update": "2026-07-16", "repository": "alexbelgium/hassio-addons", "slug": "webtop", "source": "github", "upstream_repo": "linuxserver/docker-webtop", - "upstream_version": "4.16-r0-ls94" + "upstream_version": "4.16-r0-ls95" } From bb51a80700da47e798f6096c06a510d5780e7905 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 303/538] Revert "Updater bot : webtop_kde updated to 4.16-r0-ls95" This reverts commit 1a50bbe522472688d28ffe463648fc738deb382b. --- webtop_kde/CHANGELOG.md | 3 --- webtop_kde/Dockerfile | 4 ++-- webtop_kde/config.yaml | 2 +- webtop_kde/updater.json | 4 ++-- 4 files changed, 5 insertions(+), 8 deletions(-) diff --git a/webtop_kde/CHANGELOG.md b/webtop_kde/CHANGELOG.md index fe4a380584..60386a07f7 100644 --- a/webtop_kde/CHANGELOG.md +++ b/webtop_kde/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.16-r0-ls95 (2026-07-16) -- Update to latest version from linuxserver/docker-webtop (changelog : https://github.com/linuxserver/docker-webtop/releases) - ## 4.16-r0-ls94 (2026-06-23) - Update to latest version from linuxserver/docker-webtop (changelog : https://github.com/linuxserver/docker-webtop/releases) diff --git a/webtop_kde/Dockerfile b/webtop_kde/Dockerfile index f87b69d85a..e710bcbf52 100644 --- a/webtop_kde/Dockerfile +++ b/webtop_kde/Dockerfile @@ -2,11 +2,11 @@ # ALEXBELGIUM'S DOCKERFILE # #============================# # _.------. -# _.-` ('>.-`"4.16-r0-ls95""-. +# _.-` ('>.-`"4.16-r0-ls94""-. # '.--'` _'` _ .--.) # -' '-.-';` ` # ' - _.' ``'--. -# '---` .-'"4.16-r0-ls95"` +# '---` .-'"4.16-r0-ls94"` # /` #=== Home Assistant Addon ===# diff --git a/webtop_kde/config.yaml b/webtop_kde/config.yaml index 74d3cdd2ed..1922c49415 100644 --- a/webtop_kde/config.yaml +++ b/webtop_kde/config.yaml @@ -143,5 +143,5 @@ slug: webtop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.16-r0-ls95" +version: "4.16-r0-ls94" video: true diff --git a/webtop_kde/updater.json b/webtop_kde/updater.json index 27696b5e98..603e26e049 100644 --- a/webtop_kde/updater.json +++ b/webtop_kde/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-16", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "webtop", "source": "github", "upstream_repo": "linuxserver/docker-webtop", - "upstream_version": "4.16-r0-ls95" + "upstream_version": "4.16-r0-ls94" } From ac72fac79c10af11583fcbdf0dcc5bd36b6d8c6b Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 304/538] Revert "Updater bot : social_to_mealie updated to 1.7.2" This reverts commit 2fa921734b5a009e024cc0017ee6f18a269df18e. --- social_to_mealie/CHANGELOG.md | 3 --- social_to_mealie/config.yaml | 2 +- social_to_mealie/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/social_to_mealie/CHANGELOG.md b/social_to_mealie/CHANGELOG.md index b2088f5e01..659d407245 100644 --- a/social_to_mealie/CHANGELOG.md +++ b/social_to_mealie/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.7.2 (2026-07-16) -- Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) - ## 1.7.1 (2026-07-13) - Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) diff --git a/social_to_mealie/config.yaml b/social_to_mealie/config.yaml index 8712f1b471..1bacf3d008 100644 --- a/social_to_mealie/config.yaml +++ b/social_to_mealie/config.yaml @@ -1,5 +1,5 @@ name: Social to Mealie -version: "1.7.2" +version: "1.7.1" slug: social_to_mealie description: Import recipes from social media directly into Mealie url: https://github.com/alexbelgium/hassio-addons diff --git a/social_to_mealie/updater.json b/social_to_mealie/updater.json index eeb96d082d..7b86e115a8 100644 --- a/social_to_mealie/updater.json +++ b/social_to_mealie/updater.json @@ -1,10 +1,10 @@ { "dockerhub_by_date": true, "dockerhub_list_size": 2, - "last_update": "2026-07-16", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "social_to_mealie", "source": "github", "upstream_repo": "GerardPolloRebozado/social-to-mealie", - "upstream_version": "1.7.2" + "upstream_version": "1.7.1" } From 8c1152501d4e845bf3e82950ecad17fe2b9aaeb8 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 305/538] Revert "Updater bot : prowlarr updated to nightly-2.5.1.5478-ls7" This reverts commit 2bdf65187c9f4f71a52e9cb21e6599390b12b93a. --- prowlarr/CHANGELOG.md | 3 --- prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index 44e2a73cc6..8c8d189e62 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,7 +1,4 @@ -## nightly-2.5.1.5478-ls7 (2026-07-16) -- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) - ## develop-2.5.1.5464-ls268 (2026-07-13) - Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index b43239ffd8..b32ce3c98c 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "nightly-2.5.1.5478-ls7" +version: "develop-2.5.1.5464-ls268" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 1336432f31..3f7f5a9f95 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-16", + "last_update": "2026-07-13", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "nightly-2.5.1.5478-ls7" + "upstream_version": "develop-2.5.1.5464-ls268" } From f4877df9cc5556dd1903332afb8e3e1b379003b0 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 306/538] Revert "Update config.yaml" This reverts commit 881821e17c9832192c094d9d41bbb191b779b9f3. --- birdnet-go-dev/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/birdnet-go-dev/config.yaml b/birdnet-go-dev/config.yaml index 901a56b548..5744cddfcb 100644 --- a/birdnet-go-dev/config.yaml +++ b/birdnet-go-dev/config.yaml @@ -127,5 +127,5 @@ slug: birdnet-go-dev udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "source-20260716.02" +version: "source-20260716" video: true From fe60b6d6b18ec068ede2a64404f08a6936a643a0 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 307/538] Revert "Updater bot : plex updated to 1.43.3.10828-00f62d37d-ls315" This reverts commit 63fcca6f743397e0b08fdf59248998225cdc729d. --- plex/CHANGELOG.md | 3 --- plex/config.yaml | 2 +- plex/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/plex/CHANGELOG.md b/plex/CHANGELOG.md index c76937f367..e86cb587b1 100644 --- a/plex/CHANGELOG.md +++ b/plex/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.43.3.10828-00f62d37d-ls315 (2026-07-16) -- Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) - ## 1.43.2.10687-563d026ea-ls311 (2026-07-04) - Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) diff --git a/plex/config.yaml b/plex/config.yaml index 5af53761c6..b1104de51b 100644 --- a/plex/config.yaml +++ b/plex/config.yaml @@ -175,6 +175,6 @@ slug: plex_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/plex usb: true -version: "1.43.3.10828-00f62d37d-ls315" +version: "1.43.2.10687-563d026ea-ls311" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:32400]/web" diff --git a/plex/updater.json b/plex/updater.json index 8f2f9ac134..aaa88c7248 100644 --- a/plex/updater.json +++ b/plex/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "plex", "source": "github", "upstream_repo": "linuxserver/docker-plex", - "upstream_version": "1.43.3.10828-00f62d37d-ls315" + "upstream_version": "1.43.2.10687-563d026ea-ls311" } From 4dd0e22a84bc76ddecc83cc6a57f3dc3f59e78d6 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 308/538] Revert "Updater bot : openproject updated to 17.6.0" This reverts commit dcf80737344a9435bea46e283ebbecd371935260. --- openproject/CHANGELOG.md | 3 --- openproject/config.yaml | 2 +- openproject/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/openproject/CHANGELOG.md b/openproject/CHANGELOG.md index 5847acd5ca..26524b7076 100644 --- a/openproject/CHANGELOG.md +++ b/openproject/CHANGELOG.md @@ -1,7 +1,4 @@ -## 17.6.0 (2026-07-16) -- Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) - ## 17.5.1 (2026-06-17) - Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) diff --git a/openproject/config.yaml b/openproject/config.yaml index 476c58e113..4dd820eb68 100644 --- a/openproject/config.yaml +++ b/openproject/config.yaml @@ -34,5 +34,5 @@ schema: slug: openproject udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/openproject -version: "17.6.0" +version: "17.5.1" webui: "[PROTO:ssl]://[HOST]:[PORT:8080]" diff --git a/openproject/updater.json b/openproject/updater.json index 5b0f2718f0..9ac77fed1e 100644 --- a/openproject/updater.json +++ b/openproject/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-16", + "last_update": "2026-06-17", "repository": "alexbelgium/hassio-addons", "slug": "openproject", "source": "github", "upstream_repo": "opf/openproject", - "upstream_version": "17.6.0" + "upstream_version": "17.5.1" } From e21496f18d269cada078b38060f6644d313c2b9b Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 309/538] Revert "Updater bot : nzbget updated to v26.2-ls253" This reverts commit 6ad65abc8e6a8213db0e37a79edc2bab3c52f470. --- nzbget/CHANGELOG.md | 3 --- nzbget/config.yaml | 2 +- nzbget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/nzbget/CHANGELOG.md b/nzbget/CHANGELOG.md index 175d3160b1..054fcb4480 100644 --- a/nzbget/CHANGELOG.md +++ b/nzbget/CHANGELOG.md @@ -1,7 +1,4 @@ -## v26.2-ls253 (2026-07-16) -- Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) - ## v26.2-ls251 (2026-07-04) - Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) diff --git a/nzbget/config.yaml b/nzbget/config.yaml index 2abdc16346..4c2658da96 100644 --- a/nzbget/config.yaml +++ b/nzbget/config.yaml @@ -104,4 +104,4 @@ schema: slug: nzbget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "v26.2-ls253" +version: "v26.2-ls251" diff --git a/nzbget/updater.json b/nzbget/updater.json index 3c2bd6ee79..15dca4e6a3 100644 --- a/nzbget/updater.json +++ b/nzbget/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "nzbget", "source": "github", "upstream_repo": "linuxserver/docker-nzbget", - "upstream_version": "v26.2-ls253" + "upstream_version": "v26.2-ls251" } From 3725f920e0a0c62628d6242802a98c3575b692ae Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 310/538] Revert "Updater bot : navidrome updated to 0.63.2" This reverts commit 8ee044b6978a43c2876c854fc0745fe08b549042. --- navidrome/CHANGELOG.md | 3 --- navidrome/config.yaml | 2 +- navidrome/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/navidrome/CHANGELOG.md b/navidrome/CHANGELOG.md index ee83670c28..1d3e82672a 100644 --- a/navidrome/CHANGELOG.md +++ b/navidrome/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 0.63.2 (2026-07-16) -- Update to latest version from navidrome/navidrome (changelog : https://github.com/navidrome/navidrome/releases) ## 0.62.0-2 (19-06-2026) - Minor bugs fixed diff --git a/navidrome/config.yaml b/navidrome/config.yaml index fd93f83dc2..e1c6c8bc59 100644 --- a/navidrome/config.yaml +++ b/navidrome/config.yaml @@ -119,5 +119,5 @@ schema: slug: navidrome udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/navidrome -version: "0.63.2" +version: "0.62.0-2" webui: "[PROTO:ssl]://[HOST]:[PORT:4533]" diff --git a/navidrome/updater.json b/navidrome/updater.json index 38f368a156..68986b5735 100644 --- a/navidrome/updater.json +++ b/navidrome/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-16", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "navidrome", "source": "github", "upstream_repo": "navidrome/navidrome", - "upstream_version": "0.63.2" + "upstream_version": "0.62.0" } From 1c981e187f53e87071dc27b5a0d3513e6911e218 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 311/538] Revert "Updater bot : maintainerr updated to 3.17.1" This reverts commit 1b32956a2ac282befc26a8cd14f92078a0f05767. --- maintainerr/CHANGELOG.md | 3 --- maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 8c12def170..6625d46e2d 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.17.1 (2026-07-16) -- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) - ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index a05b7bb794..eadb42fa43 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.17.1" +ARG BUILD_UPSTREAM="3.16.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index bb266ddf2b..65d02cfd17 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.17.1" +version: "3.16.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index dee5919922..fd48a580bc 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.17.1" + "upstream_version": "3.16.0" } From 5dcb1c222aa2715185bc6173a084d43f5dab0002 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 312/538] Revert "Updater bot : linkwarden updated to 2.15.1" This reverts commit 36e0800596bb0cfd2f46a0fa75557bfd5cd435bd. --- linkwarden/CHANGELOG.md | 3 --- linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index bfe14b2f83..90b6ee06ff 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 2.15.1 (2026-07-16) -- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index b1d3213f17..33fb3c849d 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.15.1" +version: "2.14.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index c4910f8ed0..18d72d7a97 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-16", + "last_update": "2026-04-23", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.15.1" + "upstream_version": "2.14.1" } From f35f0baaebf247c7201772633d86ce791823b1db Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 313/538] Revert "Updater bot : jackett updated to 0.24.2226" This reverts commit c7bc78f3066fe06076f969a137f0e32f1eb8db11. --- jackett/CHANGELOG.md | 3 --- jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index f448200c85..fdcaa4afa4 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,7 +1,4 @@ -## 0.24.2226 (2026-07-16) -- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) - ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index d07a6f2b70..c393744967 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2226" +version: "0.24.2166" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 74b620c5d9..0a816abd2c 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2226" + "upstream_version": "0.24.2166" } From cd98281978b848d4adc22a72a8ab6ddccb4f49c0 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 314/538] Revert "Updater bot : immich_openvino updated to 3.0.3" This reverts commit 090b200cb13c129539c951e819c5e2b1a130146b. --- immich_openvino/CHANGELOG.md | 3 --- immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 032e0cabf1..1b604106d2 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-16) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 30337862a9..52c6cd1a44 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index eaac09ce52..63ac0aca0a 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From d6d09a0204a2941eef6f3b91f8c55de9a9d08a07 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 315/538] Revert "Updater bot : immich_noml updated to 3.0.3" This reverts commit c3e81e8761b4072f5424ed2cc9a83092a8b0d80b. --- immich_noml/CHANGELOG.md | 3 --- immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 5d61f3d1c7..0c354e8271 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-16) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 9774a2f395..42ee4dc3dd 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index eaac09ce52..63ac0aca0a 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From 11de95228dc6cf08cf70c3f9221b1dd674dde144 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 316/538] Revert "Updater bot : immich_frame updated to 1.0.36.0" This reverts commit f85151b52cc20834bbbd33bf96b4334f13382373. --- immich_frame/CHANGELOG.md | 3 --- immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index a7ceed71e0..443763661a 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.0.36.0 (2026-07-16) -- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) - ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 9f274d93d9..44a6fcb111 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.36.0" +version: "1.0.34.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 5ca0f401b6..8408fb021e 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.36.0" + "upstream_version": "1.0.34.0" } From 8ad03ce68c8adce141c596c82e851af9fee4fb15 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 317/538] Revert "Updater bot : immich_cuda updated to 3.0.3" This reverts commit 179863a7b0c8bb81251a9ed08a70a630870c0640. --- immich_cuda/CHANGELOG.md | 3 --- immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 5ff393b7c0..95bec50a58 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-16) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index 73c96d22b4..b7c3dd3c48 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index eaac09ce52..63ac0aca0a 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From 6ad59a6e54cbc0e1eb0e6778eddf3d721c198e8e Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 318/538] Revert "Updater bot : immich updated to 3.0.3" This reverts commit 8d67dea5f107735e61da0ba007b1651f9c433a64. --- immich/CHANGELOG.md | 3 --- immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index 06ba3fd9cd..a8ab336381 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-16) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 66e32162ab..4537b0473b 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index eaac09ce52..63ac0aca0a 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From 3d2773db759675c7818471b599d74b04db3a1528 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 319/538] Revert "Updater bot : grav updated to 2.0.11" This reverts commit 4a05b9a28745a7c32b82d66b2d5ff56a732a1a06. --- grav/CHANGELOG.md | 3 --- grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 3c79b261a8..06165ba207 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.0.11 (2026-07-16) -- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) - ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 058f12514f..0894d6e150 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.11" +ARG BUILD_UPSTREAM="2.0.6" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 508347de55..540412f15c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.11" +version: "2.0.6" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 98e85af232..3936e662ab 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.11" + "upstream_version": "2.0.6" } From 6463cc964aaad736610fee97eb9e0fdafa46477f Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 320/538] Revert "Updater bot : gitea updated to 1.27.0" This reverts commit acee58b78dd95c4516e29a8225f0402294517c00. --- gitea/CHANGELOG.md | 3 --- gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index 1b51177b1c..a807064de8 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 1.27.0 (2026-07-16) -- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index 9230114be6..cad067b70c 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27.0" +version: "1.27" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index 8bc933f563..a8e3aeb675 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-16", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.27.0" + "upstream_version": "1.26.4" } From 49130bafc89938c77ddeebaec57b0e174ae50ce1 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 321/538] Revert "Updater bot : flexget updated to 3.19.27" This reverts commit d9e08a447b7ef5cb7f094f4c3d9feae209ff5ad9. --- flexget/CHANGELOG.md | 3 --- flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index 341e0e62e7..fb73412a31 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.19.27 (2026-07-16) -- Update to latest version from wiserain/flexget - ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index 5c2831b377..ad1b7f6538 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.27" +version: "3.19.26" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index c3d5bdcf23..82ed3e79df 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-16", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.27" + "upstream_version": "3.19.26" } From 1b313e591d77a56dea8be07b90adfeeabda12d45 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 16 Jul 2026 21:03:28 +0000 Subject: [PATCH 322/538] Revert "Updater bot : ente updated to 4.4.24" This reverts commit 49dcc057d589e579cadd278d67f158759488a87b. --- ente/CHANGELOG.md | 3 --- ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 5f1e8b0a49..15c481b126 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.4.24 (2026-07-16) -- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) - ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 5bd0afb53e..72d2fc618c 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.24" +version: "4.4.23" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index 932b479bcb..d8d8dd2093 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-16", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.24" + "upstream_version": "4.4.23" } From 3973e5901fd3313f787f4ad9c82d8ca06ea1a72d Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 16 Jul 2026 21:12:59 +0000 Subject: [PATCH 323/538] GitHub bot: changelog [nobuild] --- birdnet-go-dev/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/birdnet-go-dev/CHANGELOG.md b/birdnet-go-dev/CHANGELOG.md index 730e0e5f56..64ca2b6b1e 100644 --- a/birdnet-go-dev/CHANGELOG.md +++ b/birdnet-go-dev/CHANGELOG.md @@ -1,3 +1,5 @@ +## source-20260716.02 (16-07-2026) +- Minor bugs fixed ## source-20260716 (16-07-2026) - Minor bugs fixed ## source-20260714 (14-07-2026) From b942bcf336de64d83acea9a7c7062d0b56380fc9 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 17 Jul 2026 06:37:33 +0000 Subject: [PATCH 324/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index 0b16ca0905..035154a108 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,5 +1,4 @@ ## ⚠ Open Issue : [🐛 [qBittorrent] Cant update to 5.2.3 (opened 2026-07-09)](https://github.com/alexbelgium/hassio-addons/issues/2836) by [@tschoehuijs](https://github.com/tschoehuijs) -## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From 2964b762d1d1875050beb802ed48a27ef8a51b1a Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 17 Jul 2026 06:37:57 +0000 Subject: [PATCH 325/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index 035154a108..724ede4ee8 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,4 +1,3 @@ -## ⚠ Open Issue : [🐛 [qBittorrent] Cant update to 5.2.3 (opened 2026-07-09)](https://github.com/alexbelgium/hassio-addons/issues/2836) by [@tschoehuijs](https://github.com/tschoehuijs) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From 476f02924d5a14df82f7c0204b9488ebcd284341 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:00:51 +0200 Subject: [PATCH 326/538] Switch Free Games Claimer upstream --- free_games_claimer/build.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/free_games_claimer/build.json b/free_games_claimer/build.json index 0c0dfd3e63..9ab49f15ee 100644 --- a/free_games_claimer/build.json +++ b/free_games_claimer/build.json @@ -1,6 +1,6 @@ { "build_from": { - "aarch64": "ghcr.io/vogler/free-games-claimer:latest", - "amd64": "ghcr.io/vogler/free-games-claimer:latest" + "aarch64": "debian:bookworm-slim", + "amd64": "debian:bookworm-slim" } } From 4c068c6792df83d8b681e69edc2124c165088e5d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:01:09 +0200 Subject: [PATCH 327/538] Configure remaster runtime --- free_games_claimer/config.yaml | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/free_games_claimer/config.yaml b/free_games_claimer/config.yaml index 438d051921..6b353a9554 100644 --- a/free_games_claimer/config.yaml +++ b/free_games_claimer/config.yaml @@ -1,9 +1,9 @@ arch: - aarch64 - amd64 -description: - automatically claims free games on the Epic Games Store, Amazon Prime - Gaming and GOG +description: >- + Automatically claims free games from Epic Games Store, Amazon Prime Gaming, + GOG, Steam, and optional GamerPower-supported stores. devices: - /dev/dri - /dev/dri/card0 @@ -73,25 +73,29 @@ init: false map: - addon_config:rw - homeassistant_config:rw -name: Free Games Claimer (NoVNC not working) +name: Free Games Claimer options: env_vars: [] CMD_ARGUMENTS: node epic-games ; node prime-gaming ; node gog + STORES: "" + RUN_ONCE: true CONFIG_LOCATION: /config/config.env ports: 5900/tcp: null 6080/tcp: 6080 ports_description: 5900/tcp: VNC port - 6080/tcp: NOVNC port + 6080/tcp: noVNC web interface schema: env_vars: - name: match(^[A-Za-z0-9_]+$) value: str? - CMD_ARGUMENTS: str + CMD_ARGUMENTS: str? + STORES: str? + RUN_ONCE: bool CONFIG_LOCATION: str slug: free_games_claimer udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.8" +version: "2.0.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6080]" From 8eb51526a1996356218a65d79e6a8a91f246dafc Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:01:50 +0200 Subject: [PATCH 328/538] Build Free Games Claimer Remaster --- free_games_claimer/Dockerfile | 223 ++++++++++++++++++++-------------- 1 file changed, 129 insertions(+), 94 deletions(-) diff --git a/free_games_claimer/Dockerfile b/free_games_claimer/Dockerfile index 45869b4e87..85da3927f3 100644 --- a/free_games_claimer/Dockerfile +++ b/free_games_claimer/Dockerfile @@ -1,91 +1,13 @@ #============================# # ALEXBELGIUM'S DOCKERFILE # #============================# -# _.------. -# _.-` ('>.-`"""-. -# '.--'` _'` _ .--.) -# -' '-.-';` ` -# ' - _.' ``'--. -# '---` .-'""` -# /` -#=== Home Assistant Addon ===# +#=== Home Assistant Add-on ===# -################# -# 1 Build Image # -################# - -ARG BUILD_FROM -ARG BUILD_VERSION +ARG BUILD_FROM="debian:bookworm-slim" FROM ${BUILD_FROM} -################## -# 2 Modify Image # -################## - -# Set S6 wait time -ENV S6_CMD_WAIT_FOR_SERVICES=1 \ - S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ - S6_SERVICES_GRACETIME=0 - -################## -# 3 Install apps # -################## - -# Add rootfs -COPY rootfs/ / -RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; - -# Uses /bin for compatibility purposes -# hadolint ignore=DL4005 -RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \ - if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/bash /bin/bash; fi - -# Modules -ARG MODULES="00-banner.sh 01-custom_script.sh" - -# Automatic modules download -COPY ha_automodules.sh /ha_automodules.sh -RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_automodules.sh - -# Manual apps -ENV PACKAGES="" - -# Automatic apps & bashio -COPY ha_autoapps.sh /ha_autoapps.sh -RUN chmod 744 /ha_autoapps.sh && /ha_autoapps.sh "$PACKAGES" && rm /ha_autoapps.sh - -################ -# 4 Entrypoint # -################ - -# Add entrypoint -ENV S6_STAGE2_HOOK=/ha_entrypoint.sh -COPY ha_entrypoint.sh /ha_entrypoint.sh -RUN chmod 777 /ha_entrypoint.sh - -# Install bashio -COPY bashio-standalone.sh /usr/local/lib/bashio-standalone.sh -RUN chmod 0755 /usr/local/lib/bashio-standalone.sh - -RUN \ - # Change data folder - sed -i "s|/fgc|/data|g" /usr/local/bin/docker-entrypoint.sh && \ - # Run scripts only once - sed -i "1a if [ -f /done ]; then exit 0; fi && touch /done" /ha_entrypoint.sh && \ - sed -i "s=x11vnc=[[ \"\$(ps aux | grep \"x11vnc\" | grep -v grep)\" ]] || x11vnc=g" /usr/local/bin/docker-entrypoint.sh && \ - # Update playwright - npx playwright install-deps && \ - npx playwright install - -WORKDIR /data -ENTRYPOINT [ "/usr/bin/env" ] -CMD [ "/ha_entrypoint.sh" ] SHELL ["/bin/bash", "-o", "pipefail", "-c"] -############ -# 5 Labels # -############ - ARG BUILD_ARCH ARG BUILD_DATE ARG BUILD_DESCRIPTION @@ -93,28 +15,141 @@ ARG BUILD_NAME ARG BUILD_REF ARG BUILD_REPOSITORY ARG BUILD_VERSION -ENV BUILD_VERSION="${BUILD_VERSION}" +ARG UPSTREAM_REPOSITORY="P-Adamiec/Free-Games-Claimer-Remaster" +ARG UPSTREAM_REF="cca4992354215cef8807b748575af797606627f4" + +ENV DEBIAN_FRONTEND="noninteractive" \ + S6_CMD_WAIT_FOR_SERVICES="1" \ + S6_CMD_WAIT_FOR_SERVICES_MAXTIME="0" \ + S6_SERVICES_GRACETIME="0" \ + VNC_PORT="5900" \ + NOVNC_PORT="6080" \ + WIDTH="1280" \ + HEIGHT="720" \ + DEPTH="24" \ + SHOW="1" + +# Install the dependencies used by Free Games Claimer Remaster. The upstream +# Dockerfile supports both amd64 (Google Chrome) and arm64 (Chromium), so the +# add-on keeps its existing multi-architecture support. +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + ca-certificates \ + curl \ + dos2unix \ + gnupg \ + gzip \ + jq \ + python3 \ + python3-pip \ + tar \ + tini \ + && mkdir -p /etc/apt/keyrings \ + && curl --proto "=https" --tlsv1.2 -fsSL https://packagecloud.io/dcommander/virtualgl/gpgkey \ + | gpg --dearmor -o /etc/apt/trusted.gpg.d/VirtualGL.gpg \ + && curl --proto "=https" --tlsv1.2 -fsSL https://packagecloud.io/dcommander/turbovnc/gpgkey \ + | gpg --dearmor -o /etc/apt/trusted.gpg.d/TurboVNC.gpg \ + && curl --proto "=https" --tlsv1.2 -fsSL https://raw.githubusercontent.com/VirtualGL/repo/main/VirtualGL.list \ + > /etc/apt/sources.list.d/VirtualGL.list \ + && curl --proto "=https" --tlsv1.2 -fsSL https://raw.githubusercontent.com/TurboVNC/repo/main/TurboVNC.list \ + > /etc/apt/sources.list.d/TurboVNC.list \ + && apt-get update \ + && apt-get install -y --no-install-recommends \ + novnc \ + ratpoison \ + turbovnc \ + virtualgl \ + websockify \ + libasound2 \ + libatk-bridge2.0-0 \ + libatk1.0-0 \ + libatspi2.0-0 \ + libcairo2 \ + libcups2 \ + libgbm1 \ + libnspr4 \ + libnss3 \ + libpango-1.0-0 \ + libxcomposite1 \ + libxdamage1 \ + libxfixes3 \ + libxkbcommon0 \ + && if [ "$(dpkg --print-architecture)" = "amd64" ]; then \ + curl -fsSL https://dl.google.com/linux/linux_signing_key.pub \ + | gpg --dearmor -o /etc/apt/keyrings/google-chrome.gpg; \ + echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/google-chrome.gpg] https://dl.google.com/linux/chrome/deb/ stable main" \ + > /etc/apt/sources.list.d/google-chrome.list; \ + apt-get update; \ + apt-get install -y --no-install-recommends google-chrome-stable; \ + else \ + apt-get install -y --no-install-recommends chromium; \ + fi \ + && ln -sf /usr/share/novnc/vnc_auto.html /usr/share/novnc/index.html \ + && ln -sf /usr/bin/python3 /usr/bin/python \ + && apt-get purge -y gnupg \ + && apt-get autoremove -y \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* /var/cache/* /var/tmp/* /tmp/* /usr/share/doc/* + +# Install a deterministic snapshot of the replacement upstream. Updating the +# upstream reference is intentionally explicit so image contents cannot change +# without an add-on version bump. +WORKDIR /fgc +RUN curl --proto "=https" --tlsv1.2 -fsSL \ + "https://github.com/${UPSTREAM_REPOSITORY}/archive/${UPSTREAM_REF}.tar.gz" \ + -o /tmp/free-games-claimer-remaster.tar.gz \ + && tar -xzf /tmp/free-games-claimer-remaster.tar.gz --strip-components=1 -C /fgc \ + && python3 -m pip install --no-cache-dir --break-system-packages -r requirements.txt \ + && dos2unix ./*.sh \ + && chmod +x ./*.sh \ + && cp docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh \ + && chmod 0755 /usr/local/bin/docker-entrypoint.sh \ + && rm -f /tmp/free-games-claimer-remaster.tar.gz \ + && rm -rf /fgc/data \ + && ln -s /data /fgc/data + +# Add Home Assistant integration files and shared helper modules. +COPY rootfs/ / +RUN find /etc/cont-init.d /usr/local/bin -type f -name "*.sh" -exec chmod 0755 {} + \ + && chmod 0755 /usr/local/bin/migrate_vogler_data.py + +ARG MODULES="00-banner.sh 01-custom_script.sh" +COPY ha_automodules.sh /ha_automodules.sh +RUN chmod 0755 /ha_automodules.sh \ + && /ha_automodules.sh "${MODULES}" \ + && rm /ha_automodules.sh + +ENV PACKAGES="" +COPY ha_autoapps.sh /ha_autoapps.sh +RUN chmod 0755 /ha_autoapps.sh \ + && /ha_autoapps.sh "${PACKAGES}" \ + && rm /ha_autoapps.sh + +ENV S6_STAGE2_HOOK="/ha_entrypoint.sh" +COPY ha_entrypoint.sh /ha_entrypoint.sh +COPY bashio-standalone.sh /usr/local/lib/bashio-standalone.sh +RUN chmod 0755 /ha_entrypoint.sh /usr/local/lib/bashio-standalone.sh + +EXPOSE 5900 6080 +ENTRYPOINT ["/usr/bin/env"] +CMD ["/ha_entrypoint.sh"] + LABEL \ io.hass.name="${BUILD_NAME}" \ io.hass.description="${BUILD_DESCRIPTION}" \ io.hass.arch="${BUILD_ARCH}" \ io.hass.type="addon" \ - io.hass.version=${BUILD_VERSION} \ + io.hass.version="${BUILD_VERSION}" \ maintainer="alexbelgium (https://github.com/alexbelgium)" \ org.opencontainers.image.title="${BUILD_NAME}" \ org.opencontainers.image.description="${BUILD_DESCRIPTION}" \ org.opencontainers.image.vendor="Home Assistant Add-ons" \ org.opencontainers.image.authors="alexbelgium (https://github.com/alexbelgium)" \ - org.opencontainers.image.licenses="MIT" \ - org.opencontainers.image.url="https://github.com/alexbelgium" \ + org.opencontainers.image.licenses="AGPL-3.0" \ + org.opencontainers.image.url="https://github.com/${BUILD_REPOSITORY}" \ org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \ - org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/main/README.md" \ - org.opencontainers.image.created=${BUILD_DATE} \ - org.opencontainers.image.revision=${BUILD_REF} \ - org.opencontainers.image.version=${BUILD_VERSION} - -#################### -# 6 HealthcheckNOT # -#################### - -# Can't be implemented as container is optimized for memory usage, so the webserver and Node are spun down during idle + org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/master/free_games_claimer/README.md" \ + org.opencontainers.image.created="${BUILD_DATE}" \ + org.opencontainers.image.revision="${BUILD_REF}" \ + org.opencontainers.image.version="${BUILD_VERSION}" \ + io.hass.upstream="https://github.com/${UPSTREAM_REPOSITORY}/tree/${UPSTREAM_REF}" From cc8b4029424d2046b69f3a7c76454eb0c425d96a Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:02:23 +0200 Subject: [PATCH 329/538] Adapt launcher for remaster --- .../rootfs/etc/cont-init.d/99-run.sh | 186 +++++++++++------- 1 file changed, 120 insertions(+), 66 deletions(-) diff --git a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh index e7dc2759c1..d5505d417f 100755 --- a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh +++ b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh @@ -1,85 +1,139 @@ #!/usr/bin/env bashio # shellcheck shell=bash -set -e +set -euo pipefail -############## -# Initialize # -############## +CONFIG_FILE="$(bashio::config 'CONFIG_LOCATION')" +CONFIG_DIR="$(dirname "${CONFIG_FILE}")" +RUNTIME_CONFIG="/data/config.env" -CONFIG_HOME="$(bashio::config "CONFIG_LOCATION")" -CONFIG_HOME="$(dirname "$CONFIG_HOME")" +mkdir -p "${CONFIG_DIR}" /data -# Use new config file -if [ ! -f "$CONFIG_HOME/config.env" ]; then - # Copy default config.env - cp /templates/config.env "$CONFIG_HOME/" - chmod 755 "$CONFIG_HOME/config.env" - bashio::log.warning "A default config.env file was copied to $CONFIG_HOME. Please customize according to https://github.com/vogler/free-games-claimer/tree/main#configuration--options and restart the add-on" +# Recover from an old add-on bug that could create config.env as a directory. +if [ -d "${CONFIG_FILE}" ]; then + bashio::log.warning "Found a directory at ${CONFIG_FILE}; replacing it with a configuration file" + rm -rf "${CONFIG_FILE}" +fi + +if [ ! -f "${CONFIG_FILE}" ]; then + install -m 0600 /templates/config.env "${CONFIG_FILE}" + bashio::log.warning \ + "Created ${CONFIG_FILE}. Add account credentials there and restart the add-on if automatic login is required." else - bashio::log.info "Using existing config.env file in $CONFIG_HOME. Please customize according to https://github.com/vogler/free-games-claimer/tree/main#configuration--options and restart the add-on" + bashio::log.info "Using configuration from ${CONFIG_FILE}" fi -# Remove erroneous folder named config.env (bug fix for looping issue) -if [ -d "$CONFIG_HOME/config.env" ]; then - bashio::log.warning "Found directory named config.env, deleting it..." - rm -rf "$CONFIG_HOME/config.env" # Fix: Ensures directory removal even if it exists - cp /templates/config.env "$CONFIG_HOME/config.env" # Recreate as a valid file - chmod 755 "$CONFIG_HOME/config.env" -fi +# The remaster reads /fgc/data/config.env. /fgc/data is linked to Home +# Assistant's persistent /data volume by the Dockerfile. +install -m 0600 "${CONFIG_FILE}" "${RUNTIME_CONFIG}" +sed -i 's/\r$//' "${RUNTIME_CONFIG}" -# Copy new file -mkdir -p /data/data -cp "$CONFIG_HOME/config.env" /data/data/ - -# Permissions -chmod -R 755 "$CONFIG_HOME" - -# Export variables +# Export values needed by the VNC entrypoint as well as by the Python app. set -a -echo "" -bashio::log.info "Sourcing variables from $CONFIG_HOME/config.env" -cp "$CONFIG_HOME"/config.env /config.env -# Remove previous instance -sed -i "s|export ||g" /config.env -# Add export for non empty lines -sed -i '/\S/s/^/export /' /config.env -# Delete lines starting with # -sed -i '/export #/d' /config.env -# Get variables # shellcheck source=/dev/null -source /config.env -rm /config.env +source "${RUNTIME_CONFIG}" set +a -############## -# Launch App # -############## +# The Home Assistant port mapping is intentionally kept at 6080 for a seamless +# upgrade from the previous add-on, even though the new upstream defaults to 7080. +if [ -n "${NOVNC_PORT:-}" ] && [ "${NOVNC_PORT}" != "6080" ]; then + bashio::log.warning "NOVNC_PORT=${NOVNC_PORT} is not supported by the add-on port mapping; using 6080" +fi +export NOVNC_PORT="6080" +export VNC_PORT="5900" -# Go to folder -cd /data || true +# Absolute paths from the former image pointed to its Firefox profile. The +# replacement uses Chromium profiles and must start with a separate directory. +if [ "${BROWSER_DIR:-}" = "/data/data/browser" ]; then + bashio::log.warning "Remapping legacy Firefox BROWSER_DIR to the remaster Chromium profile directory" + export BROWSER_DIR="/fgc/data/browser" +fi +if [ "${SCREENSHOTS_DIR:-}" = "/data/data/screenshots" ]; then + export SCREENSHOTS_DIR="/fgc/data/screenshots" +fi -# Fetch commands -CMD_ARGUMENTS="$(bashio::config "CMD_ARGUMENTS")" -IFS=';' -read -ar strarr <<< "$CMD_ARGUMENTS" +append_store() { + local store="${1}" + local current="${2}" -# Sanitizes commands -trim() { - local var="$*" - var="${var#"${var%%[![:space:]]*}"}" - var="${var%"${var##*[![:space:]]}"}" - printf '%s' "$var" + if [[ ",${current}," == *",${store},"* ]]; then + printf '%s' "${current}" + elif [ -n "${current}" ]; then + printf '%s,%s' "${current}" "${store}" + else + printf '%s' "${store}" + fi } -# Add docker-entrypoint command -for val in "${strarr[@]}"; do - val="$(trim "$val")" - echo " " - bashio::log.info "Starting the app with arguments \"$val\"" - echo " " - echo "$val" | xargs docker-entrypoint.sh || true -done +legacy_commands_to_stores() { + local commands="${1}" + local selected="" + local command="" + local normalized="" + local command_list=() -bashio::log.info "All actions concluded. Stopping in 10 seconds." -sleep 10 -bashio::addon.stop + IFS=';' read -ra command_list <<< "${commands}" + for command in "${command_list[@]}"; do + normalized="${command,,}" + case "${normalized}" in + *epic-games*|*epicgames*|*" epic "*) + selected="$(append_store "epic" "${selected}")" + ;; + *prime-gaming*|*primegaming*|*" prime "*|*" amazon "*) + selected="$(append_store "prime" "${selected}")" + ;; + *steam-games*|*" steam "*) + selected="$(append_store "steam" "${selected}")" + ;; + *gamerpower*) + selected="$(append_store "gamerpower" "${selected}")" + ;; + *" gog"*|gog*) + selected="$(append_store "gog" "${selected}")" + ;; + esac + done + + printf '%s' "${selected}" +} + +# A non-empty STORES add-on option takes priority. Otherwise retain a STORES +# value from config.env, then fall back to translating the legacy commands. +STORES_OPTION="$(bashio::config 'STORES')" +if [ -n "${STORES_OPTION}" ]; then + export STORES="${STORES_OPTION}" +elif [ -z "${STORES:-}" ]; then + CMD_ARGUMENTS="$(bashio::config 'CMD_ARGUMENTS')" + STORES="$(legacy_commands_to_stores "${CMD_ARGUMENTS}")" + export STORES="${STORES:-epic,prime,gog}" +fi + +bashio::log.info "Enabled stores: ${STORES:-epic,prime,gog}" + +# Import claim history from vogler/free-games-claimer once. Legacy files and +# browser data are retained under /data/data for rollback and manual recovery. +/usr/local/bin/migrate_vogler_data.py + +APP_COMMAND=(python3 /fgc/main.py) +if bashio::config.true 'RUN_ONCE'; then + APP_COMMAND+=(--once) + bashio::log.info "Starting a single claiming run (legacy-compatible mode)" + + set +e + /usr/local/bin/docker-entrypoint.sh "${APP_COMMAND[@]}" + exit_code=$? + set -e + + if [ "${exit_code}" -ne 0 ]; then + bashio::log.error "Free Games Claimer exited with status ${exit_code}" + else + bashio::log.info "Claiming run completed" + fi + + bashio::log.info "Stopping the add-on" + sleep 2 + bashio::addon.stop + exit "${exit_code}" +fi + +bashio::log.info "Starting the built-in scheduler" +exec /usr/local/bin/docker-entrypoint.sh "${APP_COMMAND[@]}" From 324dc560c2837ff106169683eda005c6ef493214 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:03:00 +0200 Subject: [PATCH 330/538] Migrate legacy claim history --- .../usr/local/bin/migrate_vogler_data.py | 248 ++++++++++++++++++ 1 file changed, 248 insertions(+) create mode 100644 free_games_claimer/rootfs/usr/local/bin/migrate_vogler_data.py diff --git a/free_games_claimer/rootfs/usr/local/bin/migrate_vogler_data.py b/free_games_claimer/rootfs/usr/local/bin/migrate_vogler_data.py new file mode 100644 index 0000000000..1c11bf6e3b --- /dev/null +++ b/free_games_claimer/rootfs/usr/local/bin/migrate_vogler_data.py @@ -0,0 +1,248 @@ +#!/usr/bin/env python3 +"""Migrate legacy vogler/free-games-claimer JSON history to the remaster DB.""" + +from __future__ import annotations + +import json +import os +import shutil +import sqlite3 +import sys +from datetime import datetime, timezone +from pathlib import Path +from typing import Any, Iterator + +DATA_DIR = Path(os.environ.get("FGC_DATA_DIR", "/data")) +LEGACY_DIR = DATA_DIR / "data" +DATABASE = DATA_DIR / "fgc.db" +MARKER = DATA_DIR / ".vogler-remaster-migrated-v1.json" +BACKUP = DATA_DIR / "fgc.db.pre-vogler-migration" + +SOURCES = { + "epic": "epic-games.json", + "prime": "prime-gaming.json", + "gog": "gog.json", +} + + +def log(message: str) -> None: + print(f"[legacy migration] {message}", flush=True) + + +def locate_source(filename: str) -> Path | None: + """Prefer the old nested data directory, with a root fallback.""" + for candidate in (LEGACY_DIR / filename, DATA_DIR / filename): + if candidate.is_file(): + return candidate + return None + + +def normalize_timestamp(value: Any) -> str: + if isinstance(value, str) and value.strip(): + raw = value.strip().replace("Z", "+00:00") + try: + parsed = datetime.fromisoformat(raw) + if parsed.tzinfo is not None: + parsed = parsed.astimezone(timezone.utc).replace(tzinfo=None) + return parsed.isoformat(sep=" ", timespec="seconds") + except ValueError: + pass + return datetime.now(timezone.utc).replace(tzinfo=None).isoformat( + sep=" ", timespec="seconds" + ) + + +def clean(value: Any, *, default: str = "", limit: int | None = None) -> str: + result = default if value is None else str(value) + if limit is not None: + result = result[:limit] + return result + + +def iter_records(store: str, payload: Any, source: Path) -> Iterator[dict[str, Any]]: + if not isinstance(payload, dict): + raise ValueError(f"{source} does not contain a JSON object") + + for user, games in payload.items(): + if not isinstance(games, dict): + continue + + for legacy_id, value in games.items(): + record = value if isinstance(value, dict) else {} + title = clean(record.get("title"), default=clean(legacy_id), limit=512) + game_id = clean(legacy_id, default=title, limit=256) + if not game_id: + game_id = title[:256] or "unknown" + + legacy_store = record.get("store") + extra = { + "migration_source": str(source), + "legacy_store": legacy_store, + "legacy_time": record.get("time") or record.get("timestamp"), + } + extra = {key: val for key, val in extra.items() if val not in (None, "")} + + yield { + "store": store, + "user": clean(user, default="unknown", limit=128) or "unknown", + "game_id": game_id, + "title": title or game_id, + "url": clean(record.get("url"), limit=None) or None, + "status": clean(record.get("status"), default="unknown", limit=64) + or "unknown", + "code": clean(record.get("code"), limit=128) or None, + "extra": json.dumps(extra, ensure_ascii=False) if extra else None, + "created_at": normalize_timestamp( + record.get("time") or record.get("timestamp") + ), + } + + +def ensure_schema(connection: sqlite3.Connection) -> None: + connection.executescript( + """ + CREATE TABLE IF NOT EXISTS claimed_games ( + id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, + store VARCHAR(32) NOT NULL, + user VARCHAR(128) NOT NULL, + game_id VARCHAR(256) NOT NULL, + title VARCHAR(512) NOT NULL, + url TEXT, + status VARCHAR(64) NOT NULL DEFAULT 'unknown', + code VARCHAR(128), + extra TEXT, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP + ); + CREATE INDEX IF NOT EXISTS ix_claimed_games_store ON claimed_games (store); + CREATE INDEX IF NOT EXISTS ix_claimed_games_user ON claimed_games (user); + CREATE INDEX IF NOT EXISTS ix_claimed_games_game_id ON claimed_games (game_id); + """ + ) + + +def migrate() -> int: + DATA_DIR.mkdir(parents=True, exist_ok=True) + + if MARKER.exists(): + log("Legacy claim history was already migrated") + return 0 + + sources = { + store: source + for store, filename in SOURCES.items() + if (source := locate_source(filename)) is not None + } + legacy_browser = LEGACY_DIR / "browser" + + if not sources: + if legacy_browser.exists(): + log( + "Legacy Firefox browser data was found but cannot be converted to " + "the remaster Chromium profile; a one-time login may be required" + ) + MARKER.write_text( + json.dumps( + { + "migrated_at": datetime.now(timezone.utc).isoformat(), + "imported": 0, + "sources": [], + }, + indent=2, + ), + encoding="utf-8", + ) + log("No legacy claim-history files were found") + return 0 + + if DATABASE.exists() and not BACKUP.exists(): + shutil.copy2(DATABASE, BACKUP) + log(f"Backed up the existing database to {BACKUP}") + + imported = 0 + skipped = 0 + errors: list[str] = [] + + try: + with sqlite3.connect(DATABASE) as connection: + ensure_schema(connection) + + for store, source in sources.items(): + try: + payload = json.loads(source.read_text(encoding="utf-8")) + source_imported = 0 + for record in iter_records(store, payload, source): + exists = connection.execute( + """ + SELECT 1 FROM claimed_games + WHERE store = ? AND user = ? AND game_id = ? + LIMIT 1 + """, + (record["store"], record["user"], record["game_id"]), + ).fetchone() + if exists: + skipped += 1 + continue + + connection.execute( + """ + INSERT INTO claimed_games ( + store, user, game_id, title, url, status, code, + extra, created_at, updated_at + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + """, + ( + record["store"], + record["user"], + record["game_id"], + record["title"], + record["url"], + record["status"], + record["code"], + record["extra"], + record["created_at"], + record["created_at"], + ), + ) + imported += 1 + source_imported += 1 + + connection.commit() + log(f"Imported {source_imported} record(s) from {source}") + except (OSError, ValueError, json.JSONDecodeError, sqlite3.Error) as err: + connection.rollback() + message = f"Failed to import {source}: {err}" + errors.append(message) + log(message) + except sqlite3.Error as err: + log(f"Database migration failed: {err}") + return 1 + + if legacy_browser.exists(): + log( + "Legacy Firefox browser data remains in /data/data/browser. It is " + "not compatible with Chromium, so use noVNC for a one-time login if needed." + ) + + if errors: + log("Migration was incomplete and will be retried on the next start") + return 0 + + MARKER.write_text( + json.dumps( + { + "migrated_at": datetime.now(timezone.utc).isoformat(), + "imported": imported, + "skipped_existing": skipped, + "sources": [str(path) for path in sources.values()], + }, + indent=2, + ), + encoding="utf-8", + ) + log(f"Migration complete: {imported} imported, {skipped} already present") + return 0 + + +if __name__ == "__main__": + sys.exit(migrate()) From 408f9ee05b0211f95a5148a6c007072b0e962072 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:03:12 +0200 Subject: [PATCH 331/538] Update remaster configuration template --- .../rootfs/templates/config.env | 42 ++++++++++++++++--- 1 file changed, 37 insertions(+), 5 deletions(-) diff --git a/free_games_claimer/rootfs/templates/config.env b/free_games_claimer/rootfs/templates/config.env index 2f89573aeb..eef9136db2 100644 --- a/free_games_claimer/rootfs/templates/config.env +++ b/free_games_claimer/rootfs/templates/config.env @@ -1,7 +1,39 @@ -HEIGHT=1280 -LOGIN_TIMEOUT=180 -NOTIFY_TITLE='Free Games Claimer' -# List of environment variables, see : https://github.com/vogler/free-games-claimer#configuration--options +# Free Games Claimer Remaster configuration +# Complete option reference: +# https://github.com/P-Adamiec/Free-Games-Claimer-Remaster#configuration + +# Browser and noVNC SHOW=1 -TIMEOUT=60 WIDTH=1280 +HEIGHT=720 +TIMEOUT=60 +LOGIN_TIMEOUT=180 +VNC_LOGIN_TIMEOUT=180 +NOVNC_PORT=6080 + +# Keep the previous add-on's default stores. Add steam or gamerpower if wanted. +STORES=epic,prime,gog + +# Used only when RUN_ONCE is disabled in the add-on options. +SCHEDULER_HOURS=12 + +# Common credentials can be used as fallbacks for all stores. +# EMAIL= +# PASSWORD= + +# Store-specific credentials take priority over EMAIL/PASSWORD. +# EG_EMAIL= +# EG_PASSWORD= +# EG_OTPKEY= +# EG_PARENTALPIN= +# PG_EMAIL= +# PG_PASSWORD= +# PG_OTPKEY= +# GOG_EMAIL= +# GOG_PASSWORD= +# STEAM_USERNAME= +# STEAM_PASSWORD= + +# Notifications (Apprise or Discord) +# NOTIFY= +# DISCORD_WEBHOOK= From a240dd8d00e30bc47ec9491ca3b7c7273660e304 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:03:20 +0200 Subject: [PATCH 332/538] Track remaster upstream --- free_games_claimer/updater.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/free_games_claimer/updater.json b/free_games_claimer/updater.json index f0df127f39..4ace3cb402 100644 --- a/free_games_claimer/updater.json +++ b/free_games_claimer/updater.json @@ -1,10 +1,10 @@ { - "dockerhub_by_date": true, + "dockerhub_by_date": false, "dockerhub_list_size": 2, - "last_update": "17-05-2025", + "last_update": "17-07-2026", "repository": "alexbelgium/hassio-addons", "slug": "free_games_claimer", "source": "github", - "upstream_repo": "vogler/free-games-claimer", - "upstream_version": "1.8" + "upstream_repo": "P-Adamiec/Free-Games-Claimer-Remaster", + "upstream_version": "1.1" } From 0019b52f4a8511a40b467c04ac3f946994ef8a36 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:03:54 +0200 Subject: [PATCH 333/538] Document remaster migration --- free_games_claimer/README.md | 169 ++++++++++++++++++++--------------- 1 file changed, 96 insertions(+), 73 deletions(-) diff --git a/free_games_claimer/README.md b/free_games_claimer/README.md index db1bfdcb73..5773c3283b 100644 --- a/free_games_claimer/README.md +++ b/free_games_claimer/README.md @@ -1,128 +1,151 @@ -## ⚠ VNC not working on several machines. Please use config.env to execute the script +# Home Assistant add-on: Free Games Claimer -# Home assistant add-on: Free Games Claimer - - -I maintain this and other Home Assistant add-ons in my free time: keeping up with upstream changes, HA changes, and testing on real hardware takes a lot of time (and some money). I use around 5-10 of my >110 addons so regularly I install test machines (and purchase some test services such as vpn) that I don't use myself to troubleshoot and improve the addons - -If this add-on saves you time or makes your setup easier, I would be very grateful for your support! +I maintain this and other Home Assistant add-ons in my free time. Keeping up +with upstream changes, Home Assistant changes, and testing on real hardware +takes a significant amount of time. [![Buy me a coffee][donation-badge]](https://www.buymeacoffee.com/alexbelgium) [![Donate via PayPal][paypal-badge]](https://www.paypal.com/donate/?hosted_button_id=DZFULJZTP3UQA) -## Addon informations +## Add-on information ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Ffree_games_claimer%2Fconfig.yaml) -![Ingress](https://img.shields.io/badge/dynamic/yaml?label=Ingress&query=%24.ingress&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Ffree_games_claimer%2Fconfig.yaml) ![Arch](https://img.shields.io/badge/dynamic/yaml?color=success&label=Arch&query=%24.arch&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Ffree_games_claimer%2Fconfig.yaml) -[![Codacy Badge](https://app.codacy.com/project/badge/Grade/9c6cf10bdbba45ecb202d7f579b5be0e)](https://www.codacy.com/gh/alexbelgium/hassio-addons/dashboard?utm_source=github.com&utm_medium=referral&utm_content=alexbelgium/hassio-addons&utm_campaign=Badge_Grade) [![GitHub Super-Linter](https://img.shields.io/github/actions/workflow/status/alexbelgium/hassio-addons/weekly-supelinter.yaml?label=Lint%20code%20base)](https://github.com/alexbelgium/hassio-addons/actions/workflows/weekly-supelinter.yaml) [![Builder](https://img.shields.io/github/actions/workflow/status/alexbelgium/hassio-addons/onpush_builder.yaml?label=Builder)](https://github.com/alexbelgium/hassio-addons/actions/workflows/onpush_builder.yaml) [donation-badge]: https://img.shields.io/badge/Buy%20me%20a%20coffee-%23d32f2f?logo=buy-me-a-coffee&style=flat&logoColor=white [paypal-badge]: https://img.shields.io/badge/Donate%20via%20PayPal-0070BA?logo=paypal&style=flat&logoColor=white -_Thanks to everyone having starred my repo! To star it click on the image below, then it will be on top right. Thanks!_ - -[![Stargazers repo roster for @alexbelgium/hassio-addons](https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.github/stars2.svg)](https://github.com/alexbelgium/hassio-addons/stargazers) - -![downloads evolution](https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/free_games_claimer/stats.png) - ## About -[Free Games Claimer](https://github.com/vogler/free-games-claimer) : Claims free games periodically on +This add-on is based on +[Free Games Claimer Remaster](https://github.com/P-Adamiec/Free-Games-Claimer-Remaster). +It can claim free games from: - Epic Games Store - Amazon Prime Gaming - GOG -- Live Games with Gold - planned +- Steam +- GamerPower-supported stores, when explicitly enabled -This addon is based on the docker image https://github.com/vogler/free-games-claimer +For compatibility with previous add-on releases, the default store selection +remains Epic Games, Prime Gaming, and GOG. -## Configuration +## Web interface -Webui can be found at (NoVNC interface - currently has issues on some machines). +The noVNC interface remains available on port `6080`: -### Options - -| Option | Type | Default | Description | -|--------|------|---------|-------------| -| `CMD_ARGUMENTS` | str | `node epic-games ; node prime-gaming ; node gog` | Commands to run for claiming games | -| `CONFIG_LOCATION` | str | `/config/config.env` | Location of the configuration file | - -### Example Configuration - -```yaml -CMD_ARGUMENTS: "node epic-games ; node prime-gaming ; node gog" -CONFIG_LOCATION: "/config/config.env" +```text +http://homeassistant:6080 ``` -### Environment Configuration +It can be used for initial sign-in, CAPTCHA handling, or other manual browser +interaction. Set `VNC_PASSWORD` in `config.env` to protect the VNC session. -All main configuration is done via the `config.env` file located at `/config/addons_config/free_games_claimer/config.env`. +## Add-on options -If this file doesn't exist, it will be created at first boot with default settings. +| Option | Default | Description | +|--------|---------|-------------| +| `CONFIG_LOCATION` | `/config/config.env` | Persistent environment configuration file | +| `RUN_ONCE` | `true` | Run all selected claimers once, then stop the add-on as previous releases did | +| `STORES` | empty | Optional comma-separated override, such as `epic,prime,gog,steam` | +| `CMD_ARGUMENTS` | `node epic-games ; node prime-gaming ; node gog` | Deprecated compatibility option; recognized legacy command names are converted to `STORES` | +| `env_vars` | `[]` | Additional environment variables passed to the add-on | -### Required Environment Variables +### Run modes -Add these to your `config.env` file: +With `RUN_ONCE: true`, the add-on performs one claiming pass and stops. This is +the default and preserves the behavior of the former vogler-based add-on. + +With `RUN_ONCE: false`, the remaster remains running and uses its internal +scheduler. Set `SCHEDULER_HOURS` in `config.env` to control the interval. + +## Environment configuration + +The add-on keeps its configuration in `CONFIG_LOCATION`, which defaults to +`/config/config.env`. From Home Assistant this is stored in the add-on's +private `addon_configs` directory and can be edited with a compatible file +browser add-on. + +A template is created on first start. Common examples are: ```env -# Epic Games Store +# Preserve the former default selection +STORES=epic,prime,gog + +# Epic Games EG_EMAIL=your-email@example.com EG_PASSWORD=your-password +EG_OTPKEY= # Amazon Prime Gaming PG_EMAIL=your-amazon-email@example.com -PG_PASSWORD=your-amazon-password +PG_PASSWORD=your-password +PG_OTPKEY= -# GOG (optional) +# GOG GOG_EMAIL=your-gog-email@example.com -GOG_PASSWORD=your-gog-password +GOG_PASSWORD=your-password -# Notifications (optional) -EMAIL_SMTP_HOST=smtp.gmail.com -EMAIL_SMTP_PORT=587 -EMAIL_USER=notifications@example.com -EMAIL_PASS=your-app-password -EMAIL_TO=recipient@example.com +# Optional Steam support +STEAM_USERNAME=your-steam-username +STEAM_PASSWORD=your-password + +# Optional notifications +NOTIFY=tgram://bot-token/chat-id +# DISCORD_WEBHOOK=https://discord.com/api/webhooks/... ``` -### Additional Options +Existing variables such as `EG_EMAIL`, `EG_PASSWORD`, `PG_EMAIL`, +`PG_PASSWORD`, `PG_OTPKEY`, `GOG_EMAIL`, `GOG_PASSWORD`, `SHOW`, `WIDTH`, +`HEIGHT`, `TIMEOUT`, `LOGIN_TIMEOUT`, `DRYRUN`, and `NOTIFY` remain compatible. +See the +[upstream configuration reference](https://github.com/P-Adamiec/Free-Games-Claimer-Remaster#configuration) +for all available settings. -For complete configuration options and advanced settings, see: https://github.com/vogler/free-games-claimer#configuration--options +## Upgrade from version 1.8 -### Important Notes +Version 2.0 changes the application engine from +`vogler/free-games-claimer` (Node.js, Playwright, and Firefox) to +`P-Adamiec/Free-Games-Claimer-Remaster` (Python, nodriver, and Chromium). +The add-on performs the following migration automatically on first start: -- **VNC Issues**: The NoVNC web interface is currently not working reliably on several machines -- **Recommended**: Use the `config.env` file for configuration instead of the web interface -- **Security**: Store credentials securely and consider using app-specific passwords where available +1. The existing `config.env` remains at the same configured location. +2. Legacy `epic-games.json`, `prime-gaming.json`, and `gog.json` claim history + is imported into the remaster SQLite database at `/data/fgc.db`. +3. Existing database rows are detected and are not duplicated if migration is + retried. +4. A pre-migration database backup is created when an existing `fgc.db` is + present. +5. All old files remain under `/data/data` for rollback or manual recovery. -### Custom Scripts and Environment Variables +Browser sessions cannot be converted because the old add-on used a shared +Firefox profile while the remaster uses separate Chromium profiles per store. +Credentials remain available through `config.env`, but accounts that require +interactive authentication may need a one-time login through noVNC after the +upgrade. The old Firefox profile is retained and is never deleted. -This addon supports custom scripts and environment variables through the `addon_config` mapping: - -- **Custom scripts**: See [Running Custom Scripts in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Running-custom-scripts-in-Addons) -- **env_vars option**: Use the add-on `env_vars` option to pass extra environment variables (uppercase or lowercase names). See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details. +The external noVNC port remains `6080`, although the standalone remaster image +normally uses port `7080`. ## Installation -The installation of this add-on is pretty straightforward and not different in comparison to installing any other add-on. +1. Add this add-on repository to the Home Assistant add-on store. +2. Install **Free Games Claimer**. +3. Configure the add-on options as needed. +4. Start the add-on and review its log. +5. Open noVNC if an account needs manual authentication. -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) - [![Open your Home Assistant instance and show the add add-on repository dialog with a specific repository URL pre-filled.](https://my.home-assistant.io/badges/supervisor_add_addon_repository.svg)](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. Set the add-on options to your preferences -1. Start the add-on. -1. Check the logs of the add-on to see if everything went well. -1. Open the webUI and adapt the software options +[![Open your Home Assistant instance and show the add add-on repository dialog with a specific repository URL pre-filled.](https://my.home-assistant.io/badges/supervisor_add_addon_repository.svg)](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons) + +## Custom scripts and environment variables + +- [Running custom scripts in add-ons](https://github.com/alexbelgium/hassio-addons/wiki/Running-custom-scripts-in-Addons) +- [Passing environment variables to an add-on](https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2) ## Support -Create an issue on github - -[repository]: https://github.com/alexbelgium/hassio-addons - - +Open an issue in the +[add-on repository](https://github.com/alexbelgium/hassio-addons/issues). From e32a134ee207f85fbcb0b23af326ee0005e7eaba Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:04:11 +0200 Subject: [PATCH 334/538] Update Free Games Claimer changelog --- free_games_claimer/CHANGELOG.md | 44 ++++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 4 deletions(-) diff --git a/free_games_claimer/CHANGELOG.md b/free_games_claimer/CHANGELOG.md index 9c68a0ac5d..74d984ba3a 100644 --- a/free_games_claimer/CHANGELOG.md +++ b/free_games_claimer/CHANGELOG.md @@ -1,20 +1,51 @@ -- 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. +## 2.0.0 (2026-07-17) + +- Replaced the abandoned `vogler/free-games-claimer` upstream with + `P-Adamiec/Free-Games-Claimer-Remaster`. +- Reworked the image build for the remaster's Python, Chromium, TurboVNC, and + noVNC runtime on both amd64 and aarch64. +- Preserved the previous default one-shot behavior and Epic, Prime Gaming, and + GOG store selection. +- Kept noVNC on port 6080 for upgrade compatibility. +- Added `RUN_ONCE` and `STORES` options while retaining `CMD_ARGUMENTS` as a + deprecated compatibility input. +- Added an automatic, idempotent migration of legacy Epic, Prime Gaming, and + GOG JSON claim history into the remaster SQLite database. +- Preserved legacy files for rollback and documented the required one-time + Chromium login when a Firefox session cannot be migrated. +- Updated the configuration template, upstream metadata, and documentation. +- Added support for configuring extra environment variables via the `env_vars` + add-on option. ## 1.8 (2025-05-17) -- Update to latest version from vogler/free-games-claimer (changelog : https://github.com/vogler/free-games-claimer/releases) + +- Update to latest version from vogler/free-games-claimer (changelog: https://github.com/vogler/free-games-claimer/releases) ## 1.7 (2025-03-08) -- Update to latest version from vogler/free-games-claimer (changelog : https://github.com/vogler/free-games-claimer/releases) + +- Update to latest version from vogler/free-games-claimer (changelog: https://github.com/vogler/free-games-claimer/releases) + ## 1.6-6 (2024-12-29) + - Minor bugs fixed + ## 1.6-5 (2024-12-13) + - Minor bugs fixed + ## 1.6-4 (2024-12-07) -- ⚠ MAJOR CHANGE : switch to the new config logic from homeassistant. Your configuration files will have migrated from /config/hassio_addons/free_games_claimer in a folder only accessible from my Filebrowser addon called /addon_configs/db21ed7f_free_games_claimer. This avoids the addon to mess with your homeassistant configuration folder, and allows to backup the options. For more information, see here : https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/ + +- Major change: switch to the new Home Assistant add-on configuration logic. + Configuration files were migrated from + `/config/hassio_addons/free_games_claimer` to the private add-on configuration + directory available through compatible file browser add-ons. ## 1.6-3 (2024-12-05) + - Minor bugs fixed + ## 1.6-2 (2024-12-05) + - Minor bugs fixed ## 1.6 (2023-12-30) @@ -28,18 +59,23 @@ ## 1.4 (2023-05-27) - Update to latest version from vogler/free-games-claimer + ## 1.4-5 (2023-05-26) - Minor bugs fixed + ## 1.4-4 (2023-05-26) - Minor bugs fixed + ## 1.4-3 (2023-05-26) - Minor bugs fixed + ## 1.4-2 (2023-05-25) - Minor bugs fixed + ## NOT_WORKING (2023-05-22) - Minor bugs fixed From a55c410b9c2f12c5a71734a3b207382d86a1145a Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:06:57 +0200 Subject: [PATCH 335/538] Relax legacy config parsing --- free_games_claimer/rootfs/etc/cont-init.d/99-run.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh index d5505d417f..982e822961 100755 --- a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh +++ b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bashio # shellcheck shell=bash -set -euo pipefail +set -eo pipefail CONFIG_FILE="$(bashio::config 'CONFIG_LOCATION')" CONFIG_DIR="$(dirname "${CONFIG_FILE}")" From 49fbbbf59c3d0f7302b4be1a2f2a2793dc2cc0af Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:08:09 +0200 Subject: [PATCH 336/538] Improve legacy store mapping --- free_games_claimer/rootfs/etc/cont-init.d/99-run.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh index 982e822961..72a5cf13f6 100755 --- a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh +++ b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh @@ -75,13 +75,13 @@ legacy_commands_to_stores() { for command in "${command_list[@]}"; do normalized="${command,,}" case "${normalized}" in - *epic-games*|*epicgames*|*" epic "*) + *epic-games*|*epicgames*|*" epic"*|epic*) selected="$(append_store "epic" "${selected}")" ;; - *prime-gaming*|*primegaming*|*" prime "*|*" amazon "*) + *prime-gaming*|*primegaming*|*" prime"*|prime*|*" amazon"*|amazon*) selected="$(append_store "prime" "${selected}")" ;; - *steam-games*|*" steam "*) + *steam-games*|*" steam"*|steam*) selected="$(append_store "steam" "${selected}")" ;; *gamerpower*) From 766abd5ec3d93c4629b8e64766f7522d7ef66832 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:09:59 +0200 Subject: [PATCH 337/538] Trigger add-on validation --- free_games_claimer/config.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/free_games_claimer/config.yaml b/free_games_claimer/config.yaml index 6b353a9554..04ba1a1288 100644 --- a/free_games_claimer/config.yaml +++ b/free_games_claimer/config.yaml @@ -1,3 +1,4 @@ +# Free Games Claimer Remaster arch: - aarch64 - amd64 From 923215692452544b31c28ec8035e99d975356db1 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:11:01 +0200 Subject: [PATCH 338/538] Fix remaster browser profile path --- free_games_claimer/rootfs/etc/cont-init.d/99-run.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh index 72a5cf13f6..507426abd7 100755 --- a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh +++ b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh @@ -45,7 +45,7 @@ export VNC_PORT="5900" # replacement uses Chromium profiles and must start with a separate directory. if [ "${BROWSER_DIR:-}" = "/data/data/browser" ]; then bashio::log.warning "Remapping legacy Firefox BROWSER_DIR to the remaster Chromium profile directory" - export BROWSER_DIR="/fgc/data/browser" + export BROWSER_DIR="data/browser" fi if [ "${SCREENSHOTS_DIR:-}" = "/data/data/screenshots" ]; then export SCREENSHOTS_DIR="/fgc/data/screenshots" From 1f177e26f42679c784a4c18d7807c5039dc7a399 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:13:13 +0200 Subject: [PATCH 339/538] Preserve defaults for existing installs --- .../rootfs/etc/cont-init.d/99-run.sh | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh index 507426abd7..e1cf0aa3dc 100755 --- a/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh +++ b/free_games_claimer/rootfs/etc/cont-init.d/99-run.sh @@ -2,7 +2,10 @@ # shellcheck shell=bash set -eo pipefail -CONFIG_FILE="$(bashio::config 'CONFIG_LOCATION')" +CONFIG_FILE="/config/config.env" +if bashio::config.has_value 'CONFIG_LOCATION'; then + CONFIG_FILE="$(bashio::config 'CONFIG_LOCATION')" +fi CONFIG_DIR="$(dirname "${CONFIG_FILE}")" RUNTIME_CONFIG="/data/config.env" @@ -98,11 +101,17 @@ legacy_commands_to_stores() { # A non-empty STORES add-on option takes priority. Otherwise retain a STORES # value from config.env, then fall back to translating the legacy commands. -STORES_OPTION="$(bashio::config 'STORES')" +STORES_OPTION="" +if bashio::config.has_value 'STORES'; then + STORES_OPTION="$(bashio::config 'STORES')" +fi if [ -n "${STORES_OPTION}" ]; then export STORES="${STORES_OPTION}" elif [ -z "${STORES:-}" ]; then - CMD_ARGUMENTS="$(bashio::config 'CMD_ARGUMENTS')" + CMD_ARGUMENTS="" + if bashio::config.has_value 'CMD_ARGUMENTS'; then + CMD_ARGUMENTS="$(bashio::config 'CMD_ARGUMENTS')" + fi STORES="$(legacy_commands_to_stores "${CMD_ARGUMENTS}")" export STORES="${STORES:-epic,prime,gog}" fi @@ -114,7 +123,11 @@ bashio::log.info "Enabled stores: ${STORES:-epic,prime,gog}" /usr/local/bin/migrate_vogler_data.py APP_COMMAND=(python3 /fgc/main.py) -if bashio::config.true 'RUN_ONCE'; then +RUN_ONCE="true" +if bashio::config.has_value 'RUN_ONCE' && ! bashio::config.true 'RUN_ONCE'; then + RUN_ONCE="false" +fi +if [ "${RUN_ONCE}" = "true" ]; then APP_COMMAND+=(--once) bashio::log.info "Starting a single claiming run (legacy-compatible mode)" From 101c252b716635f769512955446e36b60bf8962e Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:18:58 +0200 Subject: [PATCH 340/538] Harden remaster build metadata --- free_games_claimer/Dockerfile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/free_games_claimer/Dockerfile b/free_games_claimer/Dockerfile index 85da3927f3..f35c71a8d7 100644 --- a/free_games_claimer/Dockerfile +++ b/free_games_claimer/Dockerfile @@ -8,6 +8,7 @@ FROM ${BUILD_FROM} SHELL ["/bin/bash", "-o", "pipefail", "-c"] +ARG DEBIAN_FRONTEND="noninteractive" ARG BUILD_ARCH ARG BUILD_DATE ARG BUILD_DESCRIPTION @@ -18,8 +19,7 @@ ARG BUILD_VERSION ARG UPSTREAM_REPOSITORY="P-Adamiec/Free-Games-Claimer-Remaster" ARG UPSTREAM_REF="cca4992354215cef8807b748575af797606627f4" -ENV DEBIAN_FRONTEND="noninteractive" \ - S6_CMD_WAIT_FOR_SERVICES="1" \ +ENV S6_CMD_WAIT_FOR_SERVICES="1" \ S6_CMD_WAIT_FOR_SERVICES_MAXTIME="0" \ S6_SERVICES_GRACETIME="0" \ VNC_PORT="5900" \ @@ -27,7 +27,10 @@ ENV DEBIAN_FRONTEND="noninteractive" \ WIDTH="1280" \ HEIGHT="720" \ DEPTH="24" \ - SHOW="1" + SHOW="1" \ + COMMIT="${UPSTREAM_REF}" \ + BRANCH="main" \ + NOW="${BUILD_DATE}" # Install the dependencies used by Free Games Claimer Remaster. The upstream # Dockerfile supports both amd64 (Google Chrome) and arm64 (Chromium), so the From fa83755108ee55d118495e9d1c975e6cc82d6f98 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:19:12 +0200 Subject: [PATCH 341/538] Pause unsafe automatic upstream bumps --- free_games_claimer/updater.json | 1 + 1 file changed, 1 insertion(+) diff --git a/free_games_claimer/updater.json b/free_games_claimer/updater.json index 4ace3cb402..fe2dd30949 100644 --- a/free_games_claimer/updater.json +++ b/free_games_claimer/updater.json @@ -2,6 +2,7 @@ "dockerhub_by_date": false, "dockerhub_list_size": 2, "last_update": "17-07-2026", + "paused": true, "repository": "alexbelgium/hassio-addons", "slug": "free_games_claimer", "source": "github", From feaf4f5c92e8b740e4e6f0053c6e48b1ecc03848 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:20:10 +0200 Subject: [PATCH 342/538] Document controlled upstream updates --- free_games_claimer/README.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/free_games_claimer/README.md b/free_games_claimer/README.md index 5773c3283b..e12eea312f 100644 --- a/free_games_claimer/README.md +++ b/free_games_claimer/README.md @@ -130,6 +130,19 @@ upgrade. The old Firefox profile is retained and is never deleted. The external noVNC port remains `6080`, although the standalone remaster image normally uses port `7080`. +## Upstream update policy + +The image is built from an explicit upstream commit in the Dockerfile. This +keeps amd64 and aarch64 images reproducible and prevents an upstream branch or +container tag from changing without an add-on review and version bump. + +The repository updater is intentionally paused for this add-on because the +add-on uses its own `2.x` version series while the replacement upstream uses a +`1.x` version series. An automatic replacement would risk a Home Assistant +version regression and would not safely update the pinned commit. A maintainer +upstream update must therefore update `UPSTREAM_REF`, `upstream_version`, the +add-on version, and `CHANGELOG.md` together. + ## Installation 1. Add this add-on repository to the Home Assistant add-on store. From 25945f5a37eb112943d998d620121f63d103d7c9 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:20:45 +0200 Subject: [PATCH 343/538] Document pinned upstream policy --- free_games_claimer/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/free_games_claimer/CHANGELOG.md b/free_games_claimer/CHANGELOG.md index 74d984ba3a..05c250e1b9 100644 --- a/free_games_claimer/CHANGELOG.md +++ b/free_games_claimer/CHANGELOG.md @@ -13,6 +13,8 @@ GOG JSON claim history into the remaster SQLite database. - Preserved legacy files for rollback and documented the required one-time Chromium login when a Firefox session cannot be migrated. +- Pinned the reviewed upstream source commit and paused automatic upstream + updates so the add-on's independent `2.x` version cannot regress to `1.x`. - Updated the configuration template, upstream metadata, and documentation. - Added support for configuring extra environment variables via the `env_vars` add-on option. From 865e1c8e6dd73dd06c841c5e4eb0d4f2c66f2dce Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:21:32 +0200 Subject: [PATCH 344/538] Run final add-on validation --- free_games_claimer/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/free_games_claimer/config.yaml b/free_games_claimer/config.yaml index 04ba1a1288..7fa2606bf5 100644 --- a/free_games_claimer/config.yaml +++ b/free_games_claimer/config.yaml @@ -1,4 +1,4 @@ -# Free Games Claimer Remaster +# Free Games Claimer Remaster add-on arch: - aarch64 - amd64 From 0397e2b84981bd23c9ac862075e26e45046b591d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Fri, 17 Jul 2026 09:22:14 +0200 Subject: [PATCH 345/538] fix(claude_desktop): fix silent TokenSave indexing, simplify startup logic, bump tokensave MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit TokenSave repository indexing was silently processing zero paths on every boot: bashio::config's read -d '' always returns non-zero, and process substitution inherits the errexit that the bashio wrapper enables, so `done < <(bashio::config 'tokensave_project_paths')` died before printing anything. Fixed by capturing with command substitution first. Also a simplification pass over the startup scripts — three duplicated settings.json hook mutators collapse into one helper, two duplicated CLAUDE.md guidance managers collapse into another, 81-tokensave_repositories.sh merges into 82's loop, and several dead code paths (apk/pacman installers, pip3 fallback, the /tmp/claude-desktop-command indirection, a stale auto_update option, a redundant chown pass) are removed. No change to what gets configured — Headroom/RTK/TokenSave still auto-apply to every session type. tokensave bumped 7.2.0 -> 7.4.0 (rtk and headroom-ai were already at latest). See CHANGELOG.md for full detail. Co-Authored-By: Claude Sonnet 5 --- claude_desktop/CHANGELOG.md | 13 + claude_desktop/Dockerfile | 2 +- claude_desktop/README.md | 4 +- claude_desktop/config.yaml | 3 +- claude_desktop/rootfs/defaults/autostart | 24 +- .../etc/cont-init.d/80-configuration.sh | 42 +- .../cont-init.d/81-tokensave_repositories.sh | 42 -- .../rootfs/etc/cont-init.d/82-claude_tools.sh | 622 ++++++++---------- .../etc/cont-init.d/83-claude_permissions.sh | 47 +- .../usr/local/bin/claude-tools-doctor.sh | 6 +- 10 files changed, 327 insertions(+), 478 deletions(-) delete mode 100755 claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 50733300cc..8dac59a729 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,16 @@ +## 1.32 (17-07-2026) + +- Bump `tokensave` from 7.2.0 to 7.4.0 (`rtk` was already pinned to its current latest GitHub release, `v0.43.0`; `headroom-ai` is intentionally installed unpinned from PyPI, so it already tracks latest at every build and had nothing to bump). Reviewed the intervening 7.3.0/7.4.0 release notes against every tokensave surface this add-on drives (`install --agent claude --git-hook yes`, `uninstall --agent claude`, `sync`, `init`, `doctor --agent claude`, `gain --all --range 30d`, and the `mcp__tokensave__*` tool set granted in `settings.json`): no flag, output shape, or MCP tool name used here changed. Directly relevant fixes carried along: `tokensave sync` auto-migrates a v12 database (missing the trait-dispatch caller cache) to v13 as a normal part of syncing, which the add-on's corruption-quarantine logic won't mistake for corruption since the schema migration doesn't produce a "malformed"/"not a database" error; and `install`/`uninstall`'s JSON writer now resolves a symlinked `~/.claude/settings.json` before its atomic rename instead of replacing the symlink with a plain file, so a dotfiles-managed settings file survives untouched. +- Fix startup TokenSave repository preparation silently doing nothing: both `81-tokensave_repositories.sh` and the indexing loop in `82-claude_tools.sh` read `tokensave_project_paths` through `done < <(bashio::config ...)`, but `bashio::config` begins with a `read -d ''` heredoc that always returns non-zero, and a process substitution inherits the `errexit` enabled by the bashio wrapper itself — so the subshell died before printing and every boot iterated over an empty list (no `safe.directory` persistence, no startup `sync`/`init`; command substitutions were unaffected because subshells drop `errexit` when `inherit_errexit` is off, which is why every other option lookup worked). Repositories only got indexed when tokensave's own git hooks or a manual `tokensave init` happened to run. The list is now captured with a command substitution first and the loop reads from the captured variable (here-string); same fix applied to `claude-tools-doctor.sh`. The indexing loop also moved ahead of the MCP-registration merge, and the merge now re-tightens the 0600 mode on the token-bearing configs even on no-change boots — a first-time `tokensave init` rewrites `~/.claude.json` itself at default permissions, which previously could leave the stored Home Assistant token world-readable until the next registration change. +- Simplification pass over the startup logic: every remaining line now serves a live purpose, with no change to what gets configured — Headroom (proxy routing, MCP registration, CLAUDE.md guidance, PostToolUse auto-compression, dashboard exposure), RTK (global files + PreToolUse hook), and TokenSave (full agent integration + per-repo indexing) are still applied automatically to every new session type (terminal, Desktop cowork/dispatch, cron). + - `82-claude_tools.sh`: the three hand-rolled `~/.claude/settings.json` hook mutators (rtk add, rtk remove, headroom PostToolUse) are replaced by one shared `manage_settings_hook` helper using the proven strip-then-re-append pass (same dedup/matcher-migration semantics; additionally no longer creates an empty `settings.json` when asked to remove a hook from a machine that never had one). The two copy-pasted CLAUDE.md guidance managers (headroom, ha-api-helper) collapse into one `manage_claude_md_block` helper producing byte-identical blocks, so existing installs are recognized without a rewrite. + - `81-tokensave_repositories.sh` is merged into the TokenSave loop of `82-claude_tools.sh`: the same path list was parsed twice with identical trimming/validation only so `safe.directory` could be persisted before repository detection ran as root. Detection now runs directly as the runtime user with a one-shot `safe.directory` override (the persisted entry is still written for tokensave's git hooks and Claude sessions), removing the duplicate loop and the root-reads-abc-gitconfig coupling. The battle-tested defensive sync/init block (flock, retries, corruption quarantine, init sentinel) is unchanged. + - The `/tmp/claude-desktop-command` indirection is gone: `82-claude_tools.sh` wrote the default launch command to a file that only `defaults/autostart` read, with the identical default hardcoded as its fallback — nothing else ever wrote it. `autostart` now launches Claude Desktop directly (keyring bootstrap unchanged). + - `82-claude_tools.sh` no longer ends with its own recursive chown of `~/.claude`, `~/.claude.json`, and `~/.config/Claude`: `84-claude_runtime_ownership.sh` already reconciles exactly those paths after all Claude configuration scripts have run. + - `83-claude_permissions.sh` drops the hidden `.addon-permission-mode.json` state file in favor of the same managed-value semantics used for `ANTHROPIC_BASE_URL`: `auto`/`bypass` set `permissions.defaultMode`, `strict` removes it only while it still holds an add-on-managed value (`auto`/`bypassPermissions`), and a hand-set custom value is never deleted. The old restore-from-state behavior could resurrect a stale value recorded on the first managed boot; the stale state file is cleaned up on upgrade. + - `80-configuration.sh` sheds branches that were unreachable in this image: `apk`/`pacman` installers (the base is Debian), the `pip3` fallback (`uv` is always baked in), and the no-op timezone error path (invalid `TZ` values are now actually detected against `/usr/share/zoneinfo` before the symlink is written). + - Remove the dead `auto_update` option from `config.yaml` and the README: its schema entry was removed back in 1.22 and `81-claude_update.sh` has updated Claude Desktop unconditionally (best-effort, offline-safe) ever since; the README now states that behavior instead of documenting a switch that did nothing. + ## 1.31 (16-07-2026) - Pin the LinuxServer selkies base image to a fixed version (`…-debianbookworm-45960cc3-ls113`) instead of the rolling `…-debianbookworm` tag. The rolling tag is rebuilt continuously (and itself installs selkies "latest" at base-build time), so the desktop/stream runtime could change under the add-on with no change to its own files — builds are now reproducible and the base only moves when this value is bumped deliberately. The pinned tags resolve to exactly the image the rolling tag currently points at (amd64 `sha256:6a4d5154…`, aarch64 `sha256:90914dfd…`). diff --git a/claude_desktop/Dockerfile b/claude_desktop/Dockerfile index 3d047e78f5..3894c5acb9 100644 --- a/claude_desktop/Dockerfile +++ b/claude_desktop/Dockerfile @@ -11,7 +11,7 @@ ARG BUILD_FROM ARG BUILD_VERSION ARG RTK_VERSION="v0.43.0" ARG RTK_COMMIT="5a7880d404db8364d602f2ecdc41dd790f64013f" -ARG TOKENSAVE_VERSION="7.2.0" +ARG TOKENSAVE_VERSION="7.4.0" # The upstream aarch64 release is cross-built on ubuntu-latest and requires # GLIBC 2.39. Build the pinned source on Bookworm instead so it is compatible diff --git a/claude_desktop/README.md b/claude_desktop/README.md index 5468d5cb7b..b08069ac96 100644 --- a/claude_desktop/README.md +++ b/claude_desktop/README.md @@ -70,7 +70,8 @@ Git synchronization hooks. A repository is indexed only when it is listed in approval, or explicit full bypass for trusted installations. - Automatic non-root runtime enforcement for bypass mode, including root-console wrapper launches. -- Optional runtime Claude Desktop updates from Anthropic's apt repository. +- Best-effort Claude Desktop update from Anthropic's apt repository at every + startup (skipped silently when offline). - Optional extra apt and pip package installation (pip installs use `uv`). - Baked-in `git`, GitHub CLI (`gh`), `ripgrep`, `jq`, `shellcheck`, `yamllint`, `hadolint`, and `actionlint`. @@ -95,7 +96,6 @@ Git synchronization hooks. A repository is indexed only when it is listed in | `PASSWORD` | | Optional password for direct Selkies ports. | | `DRINODE` | | Optional GPU device override for Selkies. | | `DNS_server` | `8.8.8.8` | DNS server used by the standard DNS module. | -| `auto_update` | `true` | Upgrade `claude-desktop` from Anthropic's apt repository at startup. | | `permission_mode` | `auto` | Claude Code permission policy: `strict`, `auto`, or `bypass`. | | `install_headroom` | `true` | Register Headroom MCP and run the supervised local proxy. | | `headroom_wrap_claude_code` | `true` | Route PATH-based Claude Code launches through the already-running Headroom proxy. | diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 46e5af66a1..9e1cd469e9 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -39,7 +39,6 @@ options: data_location: /data/data additional_apps: "" additional_pip: "" - auto_update: true github_email: "" enable_ha_mcp: false ha_mcp_url: http://homeassistant:8123/api/mcp @@ -111,5 +110,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.31" +version: "1.32" video: true diff --git a/claude_desktop/rootfs/defaults/autostart b/claude_desktop/rootfs/defaults/autostart index a2ee4e6ad4..07421c580c 100644 --- a/claude_desktop/rootfs/defaults/autostart +++ b/claude_desktop/rootfs/defaults/autostart @@ -12,23 +12,7 @@ export GNOME_KEYRING_CONTROL SSH_AUTH_SOCK dbus-update-activation-environment --all >/dev/null 2>&1 || true # --password-store=gnome-libsecret forces Electron onto the libsecret backend instead of -# falling back to plaintext (and warning that the sign-in will not be saved). -CLAUDE_DESKTOP_COMMAND_FILE="/tmp/claude-desktop-command" -DEFAULT_CLAUDE_DESKTOP_COMMAND="claude-desktop --no-sandbox --disable-dev-shm-usage --password-store=gnome-libsecret" -if [ -s "$CLAUDE_DESKTOP_COMMAND_FILE" ]; then - CLAUDE_DESKTOP_COMMAND="$(cat "$CLAUDE_DESKTOP_COMMAND_FILE")" -else - CLAUDE_DESKTOP_COMMAND="$DEFAULT_CLAUDE_DESKTOP_COMMAND" -fi - -# Headroom is intentionally not injected into the Desktop process. Claude Desktop overrides -# ANTHROPIC_BASE_URL, so Desktop uses the registered Headroom MCP tools instead. - -# Launch the configured command. If a custom/wrapped command fails to start, fall back to -# the plain Claude Desktop launch so the app always comes up for the user. -if ! sh -c "$CLAUDE_DESKTOP_COMMAND"; then - if [ "$CLAUDE_DESKTOP_COMMAND" != "$DEFAULT_CLAUDE_DESKTOP_COMMAND" ]; then - echo "autostart: '$CLAUDE_DESKTOP_COMMAND' failed; falling back to default Claude Desktop launch" >&2 - exec sh -c "$DEFAULT_CLAUDE_DESKTOP_COMMAND" - fi -fi +# falling back to plaintext (and warning that the sign-in will not be saved). Headroom is +# intentionally not injected into the Desktop process: Claude Desktop force-overrides +# ANTHROPIC_BASE_URL (headroom #869), so Desktop uses the registered Headroom MCP tools. +exec claude-desktop --no-sandbox --disable-dev-shm-usage --password-store=gnome-libsecret diff --git a/claude_desktop/rootfs/etc/cont-init.d/80-configuration.sh b/claude_desktop/rootfs/etc/cont-init.d/80-configuration.sh index 1e920d46fa..fec6070156 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/80-configuration.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/80-configuration.sh @@ -1,58 +1,48 @@ #!/usr/bin/with-contenv bashio # shellcheck shell=bash -# shellcheck disable=SC2015 set -e +# The image is Debian-based (apt) and always ships uv, so those are the only installers used. if bashio::config.has_value 'additional_apps'; then bashio::log.info "Installing additional apps :" - NEWAPPS=$(bashio::config 'additional_apps') - if command -v "apt-get" &> /dev/null; then - apt-get update -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 &> /dev/null || bashio::log.warning "Unable to update apt package lists" - fi - for packagestoinstall in ${NEWAPPS//,/ }; do + apt-get update -o Acquire::http::Timeout=10 -o Acquire::https::Timeout=10 &> /dev/null || bashio::log.warning "Unable to update apt package lists" + for packagestoinstall in $(bashio::config 'additional_apps' | tr ',' ' '); do bashio::log.green "... $packagestoinstall" - if command -v "apk" &> /dev/null; then - apk add --no-cache "$packagestoinstall" &> /dev/null || (bashio::log.fatal "Error : $packagestoinstall not found") - elif command -v "apt-get" &> /dev/null; then - apt-get install -yqq --no-install-recommends "$packagestoinstall" &> /dev/null || (bashio::log.fatal "Error : $packagestoinstall not found") - elif command -v "pacman" &> /dev/null; then - pacman --noconfirm -S "$packagestoinstall" &> /dev/null || (bashio::log.fatal "Error : $packagestoinstall not found") - fi + apt-get install -yqq --no-install-recommends "$packagestoinstall" &> /dev/null || bashio::log.fatal "Error : $packagestoinstall not found" done fi if bashio::config.has_value 'additional_pip'; then for p in $(bashio::config 'additional_pip' | tr ',' ' '); do bashio::log.green "... pip: $p" - # Prefer uv (much faster resolver/installer); fall back to pip3 when unavailable. - if command -v uv &> /dev/null; then - uv pip install --system --break-system-packages "$p" || bashio::log.fatal "Error: pip package $p failed" - else - pip3 install --break-system-packages "$p" || bashio::log.fatal "Error: pip package $p failed" - fi + uv pip install --system --break-system-packages "$p" || bashio::log.fatal "Error: pip package $p failed" done fi if bashio::config.has_value 'TZ'; then TIMEZONE=$(bashio::config 'TZ') - bashio::log.info "Setting timezone to $TIMEZONE" - ln -snf /usr/share/zoneinfo/"$TIMEZONE" /etc/localtime - echo "$TIMEZONE" > /etc/timezone -fi || (bashio::log.fatal "Error : $TIMEZONE not found. Here is a list of valid timezones : https://manpages.ubuntu.com/manpages/focal/man3/DateTime::TimeZone::Catalog.3pm.html") + if [ -f "/usr/share/zoneinfo/$TIMEZONE" ]; then + bashio::log.info "Setting timezone to $TIMEZONE" + ln -snf "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime + echo "$TIMEZONE" > /etc/timezone + else + bashio::log.fatal "Error : $TIMEZONE not found. Here is a list of valid timezones : https://manpages.ubuntu.com/manpages/focal/man3/DateTime::TimeZone::Catalog.3pm.html" + fi +fi if bashio::config.has_value 'KEYBOARD'; then KEYBOARD=$(bashio::config 'KEYBOARD') bashio::log.info "Setting keyboard to $KEYBOARD" if [ -d /var/run/s6/container_environment ]; then printf "%s" "$KEYBOARD" > /var/run/s6/container_environment/KEYBOARD; fi -grep -qxF "KEYBOARD=\"$KEYBOARD\"" ~/.bashrc 2>/dev/null || printf "%s\n" "KEYBOARD=\"$KEYBOARD\"" >> ~/.bashrc -fi || true + grep -qxF "KEYBOARD=\"$KEYBOARD\"" ~/.bashrc 2> /dev/null || printf "%s\n" "KEYBOARD=\"$KEYBOARD\"" >> ~/.bashrc +fi if bashio::config.has_value 'PASSWORD'; then bashio::log.info "Setting password to the value defined in options" PASSWORD=$(bashio::config 'PASSWORD') passwd -d abc echo -e "$PASSWORD\n$PASSWORD" | passwd abc -elif ! bashio::config.has_value 'PASSWORD' && { [[ -n "$(bashio::addon.port "3000")" ]] || [[ -n "$(bashio::addon.port "3001")" ]] }; then +elif [[ -n "$(bashio::addon.port "3000")" ]] || [[ -n "$(bashio::addon.port "3001")" ]]; then bashio::log.warning "SEVERE RISK IDENTIFIED" bashio::log.warning "You are opening an external port but your password is not defined" bashio::log.warning "You risk being hacked ! Please disable the external ports, or use a password" diff --git a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh b/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh deleted file mode 100755 index 1bb0e63c4a..0000000000 --- a/claude_desktop/rootfs/etc/cont-init.d/81-tokensave_repositories.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/with-contenv bashio -# shellcheck shell=bash -set -e -set -o pipefail - -if ! bashio::config.true 'install_tokensave' || ! command -v git > /dev/null 2>&1; then - exit 0 -fi - -declare -A REPOS_SEEN=() -# bashio::config prints its result without a trailing newline, so the last record arrives -# with read returning non-zero; the extra test keeps that final path in the loop. -while IFS= read -r configured_path || [ -n "$configured_path" ]; do - configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" - configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" - if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then - continue - fi - - case "$configured_path" in - /*) ;; - *) continue ;; - esac - [ -d "$configured_path" ] || continue - - # The one-shot safe.directory override is used only to discover the repository root. - # Persist the resolved root in the shared runtime user's Git config before 82-claude_tools.sh - # performs normal repository detection, avoiding Git's dubious-ownership rejection. - repo_root="$(s6-setuidgid abc env HOME="$HOME" \ - git -c safe.directory='*' -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" - [ -n "$repo_root" ] && [ "$repo_root" != "/" ] || continue - [[ -z "${REPOS_SEEN[$repo_root]:-}" ]] || continue - REPOS_SEEN[$repo_root]=1 - - if ! s6-setuidgid abc env HOME="$HOME" git config --global --get-all safe.directory \ - | grep -Fxq -- "$repo_root"; then - s6-setuidgid abc env HOME="$HOME" git config --global --add safe.directory "$repo_root" - bashio::log.info "Marked TokenSave repository as safe for Git: ${repo_root}" - fi -# bashio::config prints list options one entry per line ("null" when the key is absent); -# bashio::config.array only exists in the repo's standalone bashio, not in the real bashio here. -done < <(bashio::config 'tokensave_project_paths') diff --git a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh index 9c18e3995f..07b5096e3d 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/82-claude_tools.sh @@ -3,19 +3,125 @@ set -e set -o pipefail -# 20-folders.sh already remapped abc to the effective runtime identity (never root in bypass -# mode), so follow abc instead of re-reading the raw PUID/PGID options here. -RUNTIME_UID="$(id -u abc)" -RUNTIME_GID="$(id -g abc)" mkdir -p "$HOME/.claude" +CLAUDE_MD="$HOME/.claude/CLAUDE.md" run_as_runtime_user() { s6-setuidgid abc env HOME="$HOME" "$@" } -CLAUDE_DESKTOP_COMMAND_FILE="/tmp/claude-desktop-command" -DEFAULT_CLAUDE_DESKTOP_COMMAND='claude-desktop --no-sandbox --disable-dev-shm-usage --password-store=gnome-libsecret' -printf '%s\n' "$DEFAULT_CLAUDE_DESKTOP_COMMAND" > "$CLAUDE_DESKTOP_COMMAND_FILE" +# Managed, idempotent guidance block in the user's global CLAUDE.md, delimited by +# "" markers. `add` appends the +# block (body on stdin) unless the marker is already present; `remove` strips the whole +# block, surrounding blank padding included, and leaves everything else untouched. +manage_claude_md_block() { + local name="$1" action="$2" + local begin="" + if [ "$action" = "add" ]; then + if ! { [ -f "$CLAUDE_MD" ] && grep -qF "$begin" "$CLAUDE_MD"; }; then + bashio::log.info "Adding ${name} guidance to CLAUDE.md" + mkdir -p "$(dirname "$CLAUDE_MD")" + { + [ -s "$CLAUDE_MD" ] && printf '\n' + printf '%s\n' "$begin" + cat + printf '%s\n' "" + } >> "$CLAUDE_MD" + fi + elif [ -f "$CLAUDE_MD" ] && grep -qF "$begin" "$CLAUDE_MD"; then + bashio::log.info "Removing ${name} guidance from CLAUDE.md" + CLAUDE_MD="$CLAUDE_MD" BLOCK_NAME="$name" python3 - <<'PY' || bashio::log.warning "Unable to remove the ${name} guidance automatically" +import os +import re +from pathlib import Path + +path = Path(os.environ["CLAUDE_MD"]) +name = re.escape(os.environ["BLOCK_NAME"]) +text = path.read_text(encoding="utf-8") +pattern = re.compile( + rf"\n*.*?" + rf"\n?", + re.DOTALL, +) +new = pattern.sub("", text) +if new != text: + path.write_text(new, encoding="utf-8") +PY + fi +} + +# Managed hook entry in ~/.claude/settings.json (settings hooks apply to terminal, cowork, +# dispatch and cron sessions alike). The managed command is stripped everywhere first and +# re-appended when adding, so one pass handles removal, de-duplication, and matcher migration +# on upgrades; hooks owned by other tools (e.g. tokensave's own entries) are preserved, and +# the final text comparison keeps the write idempotent across boots. +manage_settings_hook() { + # manage_settings_hook + HOOK_EVENT="$1" HOOK_MATCHER="$2" HOOK_COMMAND="$3" HOOK_ACTION="$4" \ + python3 - <<'PY' || bashio::log.warning "Unable to update the $1 hook for '$3'" +import json +import os +from pathlib import Path + +event = os.environ["HOOK_EVENT"] +matcher = os.environ["HOOK_MATCHER"] +command = os.environ["HOOK_COMMAND"] +action = os.environ["HOOK_ACTION"] + +path = Path.home() / ".claude" / "settings.json" +original = path.read_text() if path.exists() else None +if original is None and action != "add": + raise SystemExit(0) +try: + data = json.loads(original) if original is not None else {} + if not isinstance(data, dict): + data = {} +except Exception: + if action != "add": + raise SystemExit(0) + path.rename(path.with_suffix(path.suffix + ".bak")) + original = None + data = {} + +hooks = data.get("hooks") if isinstance(data.get("hooks"), dict) else {} +entries = hooks.get(event) if isinstance(hooks.get(event), list) else [] + +filtered = [] +for entry in entries: + if not isinstance(entry, dict) or not isinstance(entry.get("hooks"), list): + filtered.append(entry) + continue + kept = [ + item + for item in entry["hooks"] + if not (isinstance(item, dict) and item.get("command") == command) + ] + if len(kept) != len(entry["hooks"]): + if not kept: + continue + entry = dict(entry) + entry["hooks"] = kept + filtered.append(entry) +entries = filtered + +if action == "add": + entries.append({"matcher": matcher, "hooks": [{"type": "command", "command": command}]}) + +if entries: + hooks[event] = entries +else: + hooks.pop(event, None) +if hooks: + data["hooks"] = hooks +else: + data.pop("hooks", None) + +serialized = json.dumps(data, indent=2) + "\n" +if serialized != original: + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(serialized) +PY +} # Headroom's proxy routing works by setting ANTHROPIC_BASE_URL, which the Claude Desktop # Electron app force-overrides to the production endpoint (headroom #869). Desktop therefore @@ -57,6 +163,136 @@ elif command -v tokensave &> /dev/null; then || bashio::log.warning "tokensave Claude Code integration removal failed" fi +# Initialize or incrementally sync only explicitly configured repositories. TokenSave deliberately +# requires one-time per-project opt-in; an empty list therefore has no startup or storage cost. +# Runs before the MCP registration merge below on purpose: a first-time `tokensave init` also +# rewrites ~/.claude.json itself (at default permissions), and the merge afterwards reconciles +# the managed entries and re-tightens the file mode around the stored HA token. +if $TOKENSAVE_ENABLED; then + declare -A TOKENSAVE_REPOS_SEEN=() + # Capture the list BEFORE looping: bashio::config's internals trip the errexit that + # process substitution inherits from the bashio wrapper (a `read -d ''` that always + # returns non-zero), so `done < <(bashio::config ...)` silently fed the loop an EMPTY + # list — the startup index/sync never ran. Command substitution runs without errexit + # (inherit_errexit is off), making this form reliable. bashio::config prints list + # entries one per line, without a trailing newline and as "null" when the key is absent + # (bashio::config.array only exists in the repo's standalone bashio, not the real one + # here); the `|| [ -n ... ]` test keeps the final unterminated record in the loop. + TOKENSAVE_PROJECT_PATHS="$(bashio::config 'tokensave_project_paths')" + while IFS= read -r configured_path || [ -n "$configured_path" ]; do + # Trim surrounding whitespace while preserving spaces inside paths. + configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" + configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" + if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then + continue + fi + + case "$configured_path" in + /*) ;; + *) + bashio::log.warning "Skipping non-absolute tokensave_project_paths entry: ${configured_path}" + continue + ;; + esac + if [ ! -d "$configured_path" ]; then + bashio::log.warning "Skipping missing TokenSave project path: ${configured_path}" + continue + fi + + # The one-shot safe.directory override is used only to discover the repository root. + repo_root="$(run_as_runtime_user git -c safe.directory='*' -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" + if [ -z "$repo_root" ] || [ "$repo_root" = "/" ]; then + bashio::log.warning "Skipping TokenSave path that is not a supported Git repository: ${configured_path}" + continue + fi + if [[ -n "${TOKENSAVE_REPOS_SEEN[$repo_root]:-}" ]]; then + continue + fi + TOKENSAVE_REPOS_SEEN[$repo_root]=1 + + # Persist the resolved root in the runtime user's Git config so the sync/init below, + # tokensave's git hooks, and Claude sessions all pass Git's dubious-ownership check. + if ! run_as_runtime_user git config --global --get-all safe.directory \ + | grep -Fxq -- "$repo_root"; then + run_as_runtime_user git config --global --add safe.directory "$repo_root" + bashio::log.info "Marked TokenSave repository as safe for Git: ${repo_root}" + fi + + bashio::log.info "Preparing TokenSave index: ${repo_root}" + # Prepare the per-repo semantic graph defensively so a hard add-on stop or storage + # hiccup can never leave a broken index that fails every subsequent boot: + # * a startup-scoped flock serializes against an overlapping restart (and any git + # post-commit/checkout sync hook that fires mid-boot); waits up to 60s for the + # other writer to finish rather than silently skipping, since a held lock clears + # itself the moment its holder exits or dies (the kernel releases flock on exit); + # * an existing index is refreshed with a cheap incremental `sync`, retried a few + # times because SQLITE_BUSY under lock contention is transient, not corruption; + # * quarantine is reserved for sync failures whose stderr actually names database + # corruption (SQLite's own "malformed"/"not a database"/"disk image" wording) or + # a half-written index from an interrupted `init` (sentinel-flagged). Any other + # failure (permissions, disk full, missing binary, ...) leaves the existing index + # untouched and simply retries on the next start — corruption should self-heal, + # a transient environment problem should not nuke a healthy graph; + # * `init` is bracketed by a sentinel file so an interrupted full build is detected + # as incomplete on the next start and rebuilt rather than trusted. + # All file operations run as the abc runtime user because the repo `.tokensave` + # directory is not covered by the startup ownership pass. + # shellcheck disable=SC2016 # single-quoted on purpose: $1/$db/etc. expand in the abc shell + run_as_runtime_user bash -c ' + set -o pipefail + repo_root="$1" + ts_dir="$repo_root/.tokensave" + db="$ts_dir/tokensave.db" + lock="$ts_dir/.startup.lock" + initflag="$ts_dir/.init-incomplete" + mkdir -p "$ts_dir" + exec 9>"$lock" + if ! flock -w 60 9; then + echo "TokenSave: index still locked for $repo_root after 60s; skipping startup sync" >&2 + exit 0 + fi + is_corruption() { + printf "%s" "$1" | grep -qiE "malformed|not a database|file is encrypted|disk image|database.*corrupt" + } + quarantine() { + stamp="$(date +%Y%m%d-%H%M%S)" + bdir="$ts_dir/corrupt-$stamp" + mkdir -p "$bdir" + for f in "$db" "$db-wal" "$db-shm"; do + [ -e "$f" ] && mv -f "$f" "$bdir/" 2>/dev/null || true + done + echo "TokenSave: quarantined suspect index to $bdir" >&2 + } + if [ -f "$db" ] && [ ! -f "$initflag" ]; then + attempt=1 + while :; do + sync_err="$(tokensave sync "$repo_root" 2>&1 1>/dev/null)" && exit 0 + [ "$attempt" -ge 3 ] && break + echo "TokenSave: sync attempt $attempt failed for $repo_root; retrying" >&2 + attempt=$((attempt + 1)) + sleep 2 + done + if is_corruption "$sync_err"; then + echo "TokenSave: sync failed after retries for $repo_root (corruption detected); rebuilding index" >&2 + quarantine + else + echo "TokenSave: sync failed after retries for $repo_root (no corruption signature); leaving index in place, will retry next start" >&2 + echo "TokenSave: last sync error: $sync_err" >&2 + exit 1 + fi + elif [ -f "$db" ]; then + echo "TokenSave: previous init did not finish for $repo_root; rebuilding index" >&2 + quarantine + fi + : > "$initflag" + tokensave init "$repo_root" && { rm -f "$initflag"; exit 0; } + echo "TokenSave: init failed for $repo_root; will retry on next start" >&2 + exit 1 + ' _ "$repo_root" \ + || bashio::log.warning "TokenSave preparation failed for ${repo_root}" + done <<< "$TOKENSAVE_PROJECT_PATHS" +fi + HA_MCP_ENABLED=false HA_MCP_URL="" HA_MCP_TOKEN="" @@ -157,144 +393,24 @@ for config_var, stdio_type in (("CLAUDE_DESKTOP_CONFIG", False), ("CLAUDE_CODE_C elif existing is not None and is_managed(name, existing): del servers[name] changed = True - if not changed: - continue - if servers: - data["mcpServers"] = servers - else: - data.pop("mcpServers", None) - path.parent.mkdir(parents=True, exist_ok=True) - path.write_text(json.dumps(data, indent=2) + "\n") - # The Home Assistant long-lived access token is stored here in clear text. - path.chmod(0o600) + if changed: + if servers: + data["mcpServers"] = servers + else: + data.pop("mcpServers", None) + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text(json.dumps(data, indent=2) + "\n") + # The Home Assistant long-lived access token is stored here in clear text. Enforced even + # on no-change boots because tokensave's own writes can recreate the file with default + # permissions between merges. + if path.exists(): + path.chmod(0o600) PY -# Initialize or incrementally sync only explicitly configured repositories. TokenSave deliberately -# requires one-time per-project opt-in; an empty list therefore has no startup or storage cost. -if $TOKENSAVE_ENABLED; then - declare -A TOKENSAVE_REPOS_SEEN=() - # bashio::config prints its result without a trailing newline, so the last record arrives - # with read returning non-zero; the extra test keeps that final path in the loop. - while IFS= read -r configured_path || [ -n "$configured_path" ]; do - # Trim surrounding whitespace while preserving spaces inside paths. - configured_path="${configured_path#"${configured_path%%[![:space:]]*}"}" - configured_path="${configured_path%"${configured_path##*[![:space:]]}"}" - if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then - continue - fi - - case "$configured_path" in - /*) ;; - *) - bashio::log.warning "Skipping non-absolute tokensave_project_paths entry: ${configured_path}" - continue - ;; - esac - if [ ! -d "$configured_path" ]; then - bashio::log.warning "Skipping missing TokenSave project path: ${configured_path}" - continue - fi - - repo_root="$(git -C "$configured_path" rev-parse --show-toplevel 2> /dev/null || true)" - if [ -z "$repo_root" ] || [ "$repo_root" = "/" ]; then - bashio::log.warning "Skipping TokenSave path that is not a supported Git repository: ${configured_path}" - continue - fi - if [[ -n "${TOKENSAVE_REPOS_SEEN[$repo_root]:-}" ]]; then - continue - fi - TOKENSAVE_REPOS_SEEN[$repo_root]=1 - - bashio::log.info "Preparing TokenSave index: ${repo_root}" - # Prepare the per-repo semantic graph defensively so a hard add-on stop or storage - # hiccup can never leave a broken index that fails every subsequent boot: - # * a startup-scoped flock serializes against an overlapping restart (and any git - # post-commit/checkout sync hook that fires mid-boot); waits up to 60s for the - # other writer to finish rather than silently skipping, since a held lock clears - # itself the moment its holder exits or dies (the kernel releases flock on exit); - # * an existing index is refreshed with a cheap incremental `sync`, retried a few - # times because SQLITE_BUSY under lock contention is transient, not corruption; - # * quarantine is reserved for sync failures whose stderr actually names database - # corruption (SQLite's own "malformed"/"not a database"/"disk image" wording) or - # a half-written index from an interrupted `init` (sentinel-flagged). Any other - # failure (permissions, disk full, missing binary, ...) leaves the existing index - # untouched and simply retries on the next start — corruption should self-heal, - # a transient environment problem should not nuke a healthy graph; - # * `init` is bracketed by a sentinel file so an interrupted full build is detected - # as incomplete on the next start and rebuilt rather than trusted. - # All file operations run as the abc runtime user because the repo `.tokensave` - # directory is not covered by this script's final ownership pass. - # shellcheck disable=SC2016 # single-quoted on purpose: $1/$db/etc. expand in the abc shell - run_as_runtime_user bash -c ' - set -o pipefail - repo_root="$1" - ts_dir="$repo_root/.tokensave" - db="$ts_dir/tokensave.db" - lock="$ts_dir/.startup.lock" - initflag="$ts_dir/.init-incomplete" - mkdir -p "$ts_dir" - exec 9>"$lock" - if ! flock -w 60 9; then - echo "TokenSave: index still locked for $repo_root after 60s; skipping startup sync" >&2 - exit 0 - fi - is_corruption() { - printf "%s" "$1" | grep -qiE "malformed|not a database|file is encrypted|disk image|database.*corrupt" - } - quarantine() { - stamp="$(date +%Y%m%d-%H%M%S)" - bdir="$ts_dir/corrupt-$stamp" - mkdir -p "$bdir" - for f in "$db" "$db-wal" "$db-shm"; do - [ -e "$f" ] && mv -f "$f" "$bdir/" 2>/dev/null || true - done - echo "TokenSave: quarantined suspect index to $bdir" >&2 - } - if [ -f "$db" ] && [ ! -f "$initflag" ]; then - attempt=1 - while :; do - sync_err="$(tokensave sync "$repo_root" 2>&1 1>/dev/null)" && exit 0 - [ "$attempt" -ge 3 ] && break - echo "TokenSave: sync attempt $attempt failed for $repo_root; retrying" >&2 - attempt=$((attempt + 1)) - sleep 2 - done - if is_corruption "$sync_err"; then - echo "TokenSave: sync failed after retries for $repo_root (corruption detected); rebuilding index" >&2 - quarantine - else - echo "TokenSave: sync failed after retries for $repo_root (no corruption signature); leaving index in place, will retry next start" >&2 - echo "TokenSave: last sync error: $sync_err" >&2 - exit 1 - fi - elif [ -f "$db" ]; then - echo "TokenSave: previous init did not finish for $repo_root; rebuilding index" >&2 - quarantine - fi - : > "$initflag" - tokensave init "$repo_root" && { rm -f "$initflag"; exit 0; } - echo "TokenSave: init failed for $repo_root; will retry on next start" >&2 - exit 1 - ' _ "$repo_root" \ - || bashio::log.warning "TokenSave preparation failed for ${repo_root}" - # bashio::config prints list options one entry per line ("null" when the key is absent); - # bashio::config.array only exists in the repo's standalone bashio, not in the real bashio here. - done < <(bashio::config 'tokensave_project_paths') -fi - # Guide Claude to actually use the Headroom compression tools so the MCP integration produces -# real savings when transparent proxying is unavailable. Managed, idempotent block appended to -# the user's global CLAUDE.md; removed when Headroom is disabled. -CLAUDE_MD="$HOME/.claude/CLAUDE.md" -HEADROOM_GUIDE_BEGIN="" +# real savings when transparent proxying is unavailable. if $HEADROOM_ENABLED; then - mkdir -p "$(dirname "$CLAUDE_MD")" - if ! { [ -f "$CLAUDE_MD" ] && grep -qF "$HEADROOM_GUIDE_BEGIN" "$CLAUDE_MD"; }; then - bashio::log.info "Adding headroom usage guidance to CLAUDE.md" - { - [ -s "$CLAUDE_MD" ] && printf '\n' - cat <<'MD' - + manage_claude_md_block headroom add <<'MD' ## Headroom context compression A local Headroom proxy (127.0.0.1:8787) backs the `headroom` MCP tools. To save context tokens: @@ -304,28 +420,9 @@ search results, JSON/config dumps, big command outputs, roughly >500 tokens — the raw content. Call `mcp__headroom__headroom_retrieve` with that hash when you need the full original back. Skip compression for error/stack-trace output (Headroom deliberately protects it) and for small or one-off content. Use `mcp__headroom__headroom_stats` to check savings. - MD - } >> "$CLAUDE_MD" - fi -elif [ -f "$CLAUDE_MD" ] && grep -qF "$HEADROOM_GUIDE_BEGIN" "$CLAUDE_MD"; then - bashio::log.info "Removing headroom usage guidance from CLAUDE.md" - CLAUDE_MD="$CLAUDE_MD" python3 - <<'PY' || bashio::log.warning "Unable to remove headroom guidance automatically" -import os -import re -from pathlib import Path - -path = Path(os.environ["CLAUDE_MD"]) -text = path.read_text() -pattern = re.compile( - r"\n*.*?" - r"\n?", - re.DOTALL, -) -new = pattern.sub("", text) -if new != text: - path.write_text(new) -PY +else + manage_claude_md_block headroom remove fi # Route every Claude Code session through the Headroom proxy via the `env` block in the user's @@ -386,8 +483,7 @@ if changed: PY # Compress large tool outputs automatically in every Claude Code session via a managed -# PostToolUse hook (settings.json hooks apply to terminal, cowork, dispatch and cron sessions -# alike). Desktop-spawned sessions pin ANTHROPIC_BASE_URL to the production endpoint +# PostToolUse hook. Desktop-spawned sessions pin ANTHROPIC_BASE_URL to the production endpoint # (headroom #869) so the proxy never sees their traffic, and the CLAUDE.md guidance above only # helps when the model remembers to call the MCP tools. The hook closes that gap: outputs over # ~4000 chars from Bash/Grep/Glob/WebFetch are compressed with Headroom's rule-based pipeline @@ -405,84 +501,12 @@ if $HEADROOM_ENABLED && bashio::config.true 'headroom_auto_compress'; then bashio::log.warning "headroom-posttooluse-compress.py --self-test failed; not registering the auto-compression hook" fi fi -HEADROOM_HOOK_ACTION="$HEADROOM_HOOK_ACTION" HEADROOM_HOOK_CMD="$HEADROOM_HOOK_CMD" \ - HEADROOM_HOOK_MATCHER="Bash|Grep|Glob|WebFetch" \ - python3 - <<'PY' || bashio::log.warning "Unable to manage the Headroom auto-compression hook" -import json -import os -from pathlib import Path - -action = os.environ["HEADROOM_HOOK_ACTION"] -command = os.environ["HEADROOM_HOOK_CMD"] -matcher = os.environ["HEADROOM_HOOK_MATCHER"] - -path = Path.home() / ".claude" / "settings.json" -original = path.read_text() if path.exists() else None -try: - data = json.loads(original) if original is not None else {} - if not isinstance(data, dict): - data = {} -except Exception: - if action != "add": - raise SystemExit(0) - path.rename(path.with_suffix(path.suffix + ".bak")) - original = None - data = {} - -hooks = data.get("hooks") if isinstance(data.get("hooks"), dict) else {} -entries = hooks.get("PostToolUse") if isinstance(hooks.get("PostToolUse"), list) else [] - -# Strip the managed command everywhere first, then re-append when enabled: the same pass -# handles removal, de-duplication, and matcher migration on version upgrades. The final -# text comparison keeps the write idempotent across boots. -filtered = [] -for entry in entries: - if not isinstance(entry, dict) or not isinstance(entry.get("hooks"), list): - filtered.append(entry) - continue - kept = [ - item - for item in entry["hooks"] - if not (isinstance(item, dict) and item.get("command") == command) - ] - if len(kept) != len(entry["hooks"]): - if not kept: - continue - entry = dict(entry) - entry["hooks"] = kept - filtered.append(entry) -entries = filtered - -if action == "add": - entries.append({"matcher": matcher, "hooks": [{"type": "command", "command": command}]}) - -if entries: - hooks["PostToolUse"] = entries -else: - hooks.pop("PostToolUse", None) -if hooks: - data["hooks"] = hooks -else: - data.pop("hooks", None) - -serialized = json.dumps(data, indent=2) + "\n" -if serialized != original: - path.parent.mkdir(parents=True, exist_ok=True) - path.write_text(serialized) -PY +manage_settings_hook PostToolUse "Bash|Grep|Glob|WebFetch" "$HEADROOM_HOOK_CMD" "$HEADROOM_HOOK_ACTION" # Tell Claude Code that it can configure Home Assistant over the Core API via the shipped -# `ha-cli` helper (no /config filesystem mount needed). Managed, idempotent block appended to -# the user's global CLAUDE.md; removed when the helper is disabled. Mirrors the headroom block. -HA_HELPER_GUIDE_BEGIN="" +# `ha-cli` helper (no /config filesystem mount needed). if bashio::config.true 'enable_ha_api_helper'; then - mkdir -p "$(dirname "$CLAUDE_MD")" - if ! { [ -f "$CLAUDE_MD" ] && grep -qF "$HA_HELPER_GUIDE_BEGIN" "$CLAUDE_MD"; }; then - bashio::log.info "Adding Home Assistant API helper guidance to CLAUDE.md" - { - [ -s "$CLAUDE_MD" ] && printf '\n' - cat <<'MD' - + manage_claude_md_block ha-api-helper add <<'MD' ## Configuring Home Assistant You can configure this Home Assistant instance through its Core API using the `ha-cli` @@ -502,120 +526,25 @@ Rules: run `ha-cli config` first to confirm connectivity; **read the current obj the user the intended change, then wait for confirmation** before any create/update/delete or any state-changing `call`; after writing, read the object back and reload if needed (e.g. `ha-cli call automation.reload`). - MD - } >> "$CLAUDE_MD" - fi -elif [ -f "$CLAUDE_MD" ] && grep -qF "$HA_HELPER_GUIDE_BEGIN" "$CLAUDE_MD"; then - bashio::log.info "Removing Home Assistant API helper guidance from CLAUDE.md" - CLAUDE_MD="$CLAUDE_MD" python3 - <<'PY' || bashio::log.warning "Unable to remove Home Assistant API helper guidance automatically" -import os -import re -from pathlib import Path - -path = Path(os.environ["CLAUDE_MD"]) -text = path.read_text(encoding="utf-8") -pattern = re.compile( - r"\n*.*?" - r"\n?", - re.DOTALL, -) -new = pattern.sub("", text) -if new != text: - path.write_text(new, encoding="utf-8") -PY +else + manage_claude_md_block ha-api-helper remove fi if bashio::config.true 'install_rtk'; then if command -v rtk &> /dev/null; then bashio::log.info "Configuring rtk Claude Code integration" + # `rtk init -g` writes ~/.claude/RTK.md and its @RTK.md include in CLAUDE.md, but in + # non-interactive mode it deliberately refuses to patch settings.json, so the hook + # entry that actually rewrites Bash commands is registered here. run_as_runtime_user env RTK_NONINTERACTIVE=1 rtk init -g \ || bashio::log.warning "rtk global files configuration failed" - python3 - <<'PY' || bashio::log.warning "Unable to configure rtk hook automatically" -import json -from pathlib import Path - -path = Path.home() / ".claude" / "settings.json" -try: - data = json.loads(path.read_text()) if path.exists() else {} - if not isinstance(data, dict): - data = {} -except Exception: - if path.exists(): - path.rename(path.with_suffix(path.suffix + ".bak")) - data = {} -hooks = data.setdefault("hooks", {}) -pre = hooks.setdefault("PreToolUse", []) -rtk_entry = {"matcher": "Bash", "hooks": [{"type": "command", "command": "rtk hook claude"}]} -if not any("rtk hook claude" in json.dumps(entry) for entry in pre if isinstance(entry, dict)): - pre.append(rtk_entry) -path.parent.mkdir(parents=True, exist_ok=True) -path.write_text(json.dumps(data, indent=2) + "\n") -PY + manage_settings_hook PreToolUse Bash "rtk hook claude" add else bashio::log.warning "rtk is not available" fi -elif [ -f "$HOME/.claude/settings.json" ]; then - bashio::log.info "Removing the add-on-managed rtk Claude Code hook" - python3 - <<'PY' || bashio::log.warning "Unable to remove rtk hook automatically" -import json -from pathlib import Path - -path = Path.home() / ".claude" / "settings.json" -data = json.loads(path.read_text()) -if not isinstance(data, dict): - raise TypeError("Claude settings must contain a JSON object") - -hooks = data.get("hooks") -if not isinstance(hooks, dict): - raise SystemExit(0) - -entries = hooks.get("PreToolUse") -if not isinstance(entries, list): - raise SystemExit(0) - -changed = False -filtered_entries = [] -for entry in entries: - if not isinstance(entry, dict) or entry.get("matcher") != "Bash": - filtered_entries.append(entry) - continue - - commands = entry.get("hooks") - if not isinstance(commands, list): - filtered_entries.append(entry) - continue - - filtered_commands = [ - command - for command in commands - if not ( - isinstance(command, dict) - and command.get("type") == "command" - and command.get("command") == "rtk hook claude" - ) - ] - if len(filtered_commands) == len(commands): - filtered_entries.append(entry) - continue - - changed = True - if filtered_commands: - updated_entry = dict(entry) - updated_entry["hooks"] = filtered_commands - filtered_entries.append(updated_entry) - -if changed: - if filtered_entries: - hooks["PreToolUse"] = filtered_entries - else: - hooks.pop("PreToolUse", None) - if hooks: - data["hooks"] = hooks - else: - data.pop("hooks", None) - path.write_text(json.dumps(data, indent=2) + "\n") -PY +else + manage_settings_hook PreToolUse Bash "rtk hook claude" remove fi if bashio::config.true 'install_caveman'; then @@ -631,10 +560,5 @@ else find "$HOME/.claude" -maxdepth 4 -iname '*caveman*' -exec rm -rf {} + 2> /dev/null || true fi -# Startup configuration runs as root, while Claude Desktop runs as abc. Return managed -# persistent files to the effective runtime UID/GID after all writes complete. -for managed_path in "$HOME/.claude" "$HOME/.claude.json" "$HOME/.config/Claude"; do - if [ -e "$managed_path" ]; then - chown -R -- "${RUNTIME_UID}:${RUNTIME_GID}" "$managed_path" || bashio::log.warning "Unable to set ownership on $managed_path" - fi -done +# Ownership of everything written above is reconciled by 84-claude_runtime_ownership.sh after +# the remaining Claude configuration scripts have run. diff --git a/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh b/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh index 99df9ed7e5..ecb016a544 100755 --- a/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh +++ b/claude_desktop/rootfs/etc/cont-init.d/83-claude_permissions.sh @@ -3,31 +3,31 @@ set -e set -o pipefail -# 20-folders.sh already remapped abc to the effective runtime identity (never root in bypass -# mode), so follow abc instead of re-reading the raw PUID/PGID options here. -RUNTIME_UID="$(id -u abc)" -RUNTIME_GID="$(id -g abc)" PERMISSION_MODE="$(bashio::config 'permission_mode')" SETTINGS_PATH="$HOME/.claude/settings.json" -STATE_PATH="$HOME/.claude/.addon-permission-mode.json" case "$PERMISSION_MODE" in - strict|auto|bypass) ;; + strict | auto | bypass) ;; *) bashio::log.warning "Unknown permission_mode '${PERMISSION_MODE}'; falling back to strict" PERMISSION_MODE="strict" ;; esac +# Managed-value semantics, matching the ANTHROPIC_BASE_URL handling in 82-claude_tools.sh: +# auto/bypass set permissions.defaultMode to the add-on-managed value, and strict removes it +# only while it still holds one of those managed values — a defaultMode the user set by hand +# is never deleted. Ownership of the written file is reconciled by 84-claude_runtime_ownership.sh. mkdir -p "$(dirname "$SETTINGS_PATH")" -PERMISSION_MODE="$PERMISSION_MODE" SETTINGS_PATH="$SETTINGS_PATH" STATE_PATH="$STATE_PATH" python3 - <<'PY' +PERMISSION_MODE="$PERMISSION_MODE" SETTINGS_PATH="$SETTINGS_PATH" python3 - <<'PY' import json import os from pathlib import Path +MANAGED_VALUES = {"auto", "bypassPermissions"} + mode = os.environ["PERMISSION_MODE"] settings_path = Path(os.environ["SETTINGS_PATH"]) -state_path = Path(os.environ["STATE_PATH"]) try: settings = json.loads(settings_path.read_text()) if settings_path.exists() else {} @@ -38,33 +38,14 @@ except (OSError, json.JSONDecodeError): if not isinstance(settings, dict): settings = {} -try: - state = json.loads(state_path.read_text()) if state_path.exists() else None -except (OSError, json.JSONDecodeError): - state = None -if not isinstance(state, dict): - state = None - permissions = settings.get("permissions") if not isinstance(permissions, dict): permissions = {} if mode == "strict": - # Restore the value that existed before the add-on first managed this setting. - if state is not None: - if state.get("previous_exists"): - permissions["defaultMode"] = state.get("previous_value") - else: - permissions.pop("defaultMode", None) - state_path.unlink(missing_ok=True) + if permissions.get("defaultMode") in MANAGED_VALUES: + permissions.pop("defaultMode") else: - if state is None: - state = { - "previous_exists": "defaultMode" in permissions, - "previous_value": permissions.get("defaultMode"), - } - state_path.write_text(json.dumps(state, indent=2) + "\n") - state_path.chmod(0o600) permissions["defaultMode"] = "auto" if mode == "auto" else "bypassPermissions" if permissions: @@ -76,6 +57,9 @@ settings_path.write_text(json.dumps(settings, indent=2) + "\n") settings_path.chmod(0o600) PY +# Drop the state file older add-on versions used to remember the pre-add-on defaultMode. +rm -f "$HOME/.claude/.addon-permission-mode.json" + case "$PERMISSION_MODE" in strict) bashio::log.info "Claude Code permission mode: strict (normal prompts)" @@ -87,8 +71,3 @@ case "$PERMISSION_MODE" in bashio::log.warning "Claude Code permission mode: bypass (permission checks disabled for mounted data and available tools)" ;; esac - -chown -- "${RUNTIME_UID}:${RUNTIME_GID}" "$SETTINGS_PATH" 2> /dev/null || true -if [ -e "$STATE_PATH" ]; then - chown -- "${RUNTIME_UID}:${RUNTIME_GID}" "$STATE_PATH" 2> /dev/null || true -fi diff --git a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh index 41a25e847b..81609470ce 100755 --- a/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh +++ b/claude_desktop/rootfs/usr/local/bin/claude-tools-doctor.sh @@ -56,7 +56,6 @@ else: print(f"permissions.defaultMode: {permissions.get('defaultMode', '')}") else: print("permissions: INVALID") -print(f"managed-state marker: {(Path.home() / '.claude/.addon-permission-mode.json').exists()}") PY section "MCP registrations (environment values redacted)" @@ -149,6 +148,9 @@ section "TokenSave" if bashio::config.true 'install_tokensave'; then tokensave doctor --agent claude || true tokensave gain --all --range 30d || true + # Capture before looping — see the matching comment in 82-claude_tools.sh: feeding the + # loop straight from `< <(bashio::config ...)` yields an empty list under errexit. + TOKENSAVE_PROJECT_PATHS="$(bashio::config 'tokensave_project_paths')" while IFS= read -r configured_path || [ -n "$configured_path" ]; do if [ -z "$configured_path" ] || [ "$configured_path" = "null" ]; then continue @@ -161,7 +163,7 @@ if bashio::config.true 'install_tokensave'; then else echo "${repo_root}: NOT INITIALIZED" fi - done < <(bashio::config 'tokensave_project_paths') + done <<< "$TOKENSAVE_PROJECT_PATHS" else echo "disabled" fi From 6f693f39dc0d2ac7aa1e03f7a70f0fa1bfc8f774 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:23:51 +0200 Subject: [PATCH 346/538] Validate Free Games Claimer migration --- free_games_claimer/CHANGELOG.md | 2 +- free_games_claimer/config.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/free_games_claimer/CHANGELOG.md b/free_games_claimer/CHANGELOG.md index 05c250e1b9..d2be5a5acc 100644 --- a/free_games_claimer/CHANGELOG.md +++ b/free_games_claimer/CHANGELOG.md @@ -13,7 +13,7 @@ GOG JSON claim history into the remaster SQLite database. - Preserved legacy files for rollback and documented the required one-time Chromium login when a Firefox session cannot be migrated. -- Pinned the reviewed upstream source commit and paused automatic upstream +- Pinned the reviewed upstream source commit and paused generic automatic updates so the add-on's independent `2.x` version cannot regress to `1.x`. - Updated the configuration template, upstream metadata, and documentation. - Added support for configuring extra environment variables via the `env_vars` diff --git a/free_games_claimer/config.yaml b/free_games_claimer/config.yaml index 7fa2606bf5..9dcef313e2 100644 --- a/free_games_claimer/config.yaml +++ b/free_games_claimer/config.yaml @@ -1,4 +1,4 @@ -# Free Games Claimer Remaster add-on +# Free Games Claimer Remaster add-on (pinned source) arch: - aarch64 - amd64 From 0d344ecd6c1933ebf8aeef327d05d90cb697d5e2 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 17 Jul 2026 07:27:38 +0000 Subject: [PATCH 347/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index 724ede4ee8..b2526e9260 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,3 +1,4 @@ +## ⚠ Open Request : [✨ [REQUEST] qbittorrent (opened 2025-10-11)](https://github.com/alexbelgium/hassio-addons/issues/2139) by [@nyok92](https://github.com/nyok92) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From 5b7de5907f0176735df6add6f75557ee1e72019f Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:28:29 +0200 Subject: [PATCH 348/538] Update config.yaml --- free_games_claimer/config.yaml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/free_games_claimer/config.yaml b/free_games_claimer/config.yaml index 9dcef313e2..d7ef4caf99 100644 --- a/free_games_claimer/config.yaml +++ b/free_games_claimer/config.yaml @@ -1,10 +1,7 @@ -# Free Games Claimer Remaster add-on (pinned source) arch: - aarch64 - amd64 -description: >- - Automatically claims free games from Epic Games Store, Amazon Prime Gaming, - GOG, Steam, and optional GamerPower-supported stores. +description: "Automatically claims free games from Epic Games Store, Amazon Prime Gaming, GOG, Steam, and optional GamerPower-supported stores" devices: - /dev/dri - /dev/dri/card0 From 8042ac6786ad1075f37104c9548d9a66bfc2f436 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:42:27 +0200 Subject: [PATCH 349/538] Update config.yaml --- birdnet-go-dev/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/birdnet-go-dev/config.yaml b/birdnet-go-dev/config.yaml index 5744cddfcb..586ad63936 100644 --- a/birdnet-go-dev/config.yaml +++ b/birdnet-go-dev/config.yaml @@ -127,5 +127,5 @@ slug: birdnet-go-dev udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "source-20260716" +version: "source-20260717" video: true From a72e03e88a3b4237bb5be1fae82458c3da857652 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 17 Jul 2026 07:48:27 +0000 Subject: [PATCH 350/538] GitHub bot: changelog [nobuild] --- birdnet-go-dev/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/birdnet-go-dev/CHANGELOG.md b/birdnet-go-dev/CHANGELOG.md index 64ca2b6b1e..6bbd54aad6 100644 --- a/birdnet-go-dev/CHANGELOG.md +++ b/birdnet-go-dev/CHANGELOG.md @@ -1,3 +1,5 @@ +## source-20260717 (17-07-2026) +- Minor bugs fixed ## source-20260716.02 (16-07-2026) - Minor bugs fixed ## source-20260716 (16-07-2026) From 6b46611a0bb5f401700a4634fce32c98fad33439 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Fri, 17 Jul 2026 09:59:48 +0200 Subject: [PATCH 351/538] Fix Free Games Claimer PR build context --- .github/workflows/onpr_check-pr.yaml | 15 +++++++++++++++ free_games_claimer/CHANGELOG.md | 7 +++++++ free_games_claimer/config.yaml | 3 ++- 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/.github/workflows/onpr_check-pr.yaml b/.github/workflows/onpr_check-pr.yaml index d13d231b36..ecc6ee12fc 100644 --- a/.github/workflows/onpr_check-pr.yaml +++ b/.github/workflows/onpr_check-pr.yaml @@ -93,6 +93,21 @@ jobs: - name: ↩️ Checkout uses: actions/checkout@v7 + - name: Copy templates into addon build context + env: + ADDON: ${{ matrix.addon }} + run: | + set -euo pipefail + TEMPLATES_DIR=".templates" + ADDON_DIR="./$ADDON" + + # Keep PR builds aligned with the production builder. + for script in ha_automodules.sh ha_autoapps.sh ha_entrypoint.sh bashio-standalone.sh ha_lsio.sh; do + if [ -f "$TEMPLATES_DIR/$script" ]; then + cp "$TEMPLATES_DIR/$script" "$ADDON_DIR/$script" + fi + done + - name: ℹ️ Gather addon info id: information uses: frenck/action-addon-information@v1.4 diff --git a/free_games_claimer/CHANGELOG.md b/free_games_claimer/CHANGELOG.md index d2be5a5acc..03e069e080 100644 --- a/free_games_claimer/CHANGELOG.md +++ b/free_games_claimer/CHANGELOG.md @@ -1,3 +1,10 @@ +## 2.0.1 (2026-07-17) + +- Aligned the pull-request build context with the production builder by copying + the shared Home Assistant helper scripts before building the add-on. +- Fixed aarch64 and amd64 PR validation failing on unresolved Dockerfile + `COPY` instructions. Runtime and migration behavior are unchanged. + ## 2.0.0 (2026-07-17) - Replaced the abandoned `vogler/free-games-claimer` upstream with diff --git a/free_games_claimer/config.yaml b/free_games_claimer/config.yaml index d7ef4caf99..69e1f0c7cc 100644 --- a/free_games_claimer/config.yaml +++ b/free_games_claimer/config.yaml @@ -1,3 +1,4 @@ +# Free Games Claimer Remaster arch: - aarch64 - amd64 @@ -95,5 +96,5 @@ schema: slug: free_games_claimer udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.0" +version: "2.0.1" webui: "[PROTO:ssl]://[HOST]:[PORT:6080]" From abc7f6525ecb23bb5672fc0f3f27b9c83e2c955a Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 17 Jul 2026 12:33:25 +0000 Subject: [PATCH 352/538] Github bot : stats updated --- Stats | 262 ++++++++++++++++++++++++++++----------------------------- Stats2 | 260 ++++++++++++++++++++++++++++---------------------------- 2 files changed, 261 insertions(+), 261 deletions(-) diff --git a/Stats b/Stats index c4e9388669..df12a6c6e6 100644 --- a/Stats +++ b/Stats @@ -1,131 +1,131 @@ -2026-07-10 2026-07-03 2026-06-26 2026-06-12 2026-06-05 2026-05-29 2026-05-22 2026-05-15 2026-05-08 2026-05-01 2026-04-24 2026-04-17 2026-04-10 2026-04-03 2026-03-27 2026-03-20 2026-03-13 2026-03-06 2026-02-27 2026-02-20 2026-02-13 2026-02-06 2026-01-30 2026-01-23 2026-01-16 2026-01-09 2026-01-02 2025-12-26 2025-12-19 2025-12-12 2025-12-05 2025-11-28 2025-11-21 2025-11-14 2025-11-07 2025-11-06 2025-10-31 2025-10-24 2025-10-17 2025-10-10 2025-10-03 2025-09-26 2025-09-19 2025-09-12 2025-09-05 2025-08-29 2025-08-22 2025-08-15 2025-08-08 2025-08-01 2025-07-25 2025-07-18 2025-07-11 2025-07-04 2025-06-27 2025-06-20 2025-06-13 2025-06-06 2025-05-30 2025-05-30 2025-05-23 2025-05-16 2025-05-09 2025-05-08 2025-04-11 2025-04-04 2025-03-28 2025-03-21 2025-03-14 2025-03-07 2025-02-28 2025-02-21 2025-02-14 2025-02-07 2025-01-31 2025-01-24 2025-01-17 2025-01-10 2025-01-03 2024-12-27 2024-12-20 2024-12-13 2024-12-06 2024-11-29 2024-11-22 2024-11-15 2024-11-08 2024-11-01 2024-10-25 2024-10-18 2024-10-11 2024-10-04 2024-09-27 2024-09-20 2024-09-13 2024-09-06 2024-08-30 2024-08-23 2024-08-16 2024-08-09 2024-08-02 2024-07-26 2024-07-19 2024-07-12 2024-07-05 2024-06-28 2024-06-21 2024-06-14 2024-06-07 2024-05-31 2024-05-24 2024-05-24 2024-05-17 2024-05-10 2024-05-03 2024-04-26 2024-04-19 2024-04-12 2024-04-05 2024-03-29 2024-03-22 2024-03-15 2024-03-08 2024-03-01 2024-02-16 2024-02-09 2024-02-02 2024-01-26 2024-01-19 2024-01-12 2024-01-05 2023-12-22 2023-12-15 2023-12-08 2023-11-24 2023-11-17 2023-11-10 2023-11-03 2023-10-27 2023-10-20 2023-10-13 2023-10-06 2023-09-29 2023-09-22 2023-09-15 2023-09-08 2023-09-01 2023-08-25 2023-08-18 2023-08-11 2023-08-04 2023-07-28 2023-07-21 2023-07-14 2023-07-07 2023-06-30 2023-06-23 2023-06-16 2023-06-09 2023-06-02 2023-05-26 2023-05-19 2023-05-12 2023-05-05 2023-04-28 2023-04-21 2023-04-14 2023-04-07 2023-03-31 2023-03-24 2023-03-17 2023-03-10 2023-03-03 2023-02-24 2023-02-17 2023-02-10 2023-02-03 2023-01-27 2023-01-21 2023-01-13 2023-01-06 2022-12-30 2022-12-24 2022-12-16 2022-12-09 2022-12-08 Date -626324 508490 295538 187951 202857 207298 140475 196724 195429 192371 161135 168787 147551 141128 128014 125333 116609 115189 108264 102680 82287 69115 77528 69094 60852 63855 80968 76650 76368 76680 74263 72911 76740 86290 85365 84859 - - 93916 89227 85492 81733 82398 80928 80058 77828 76925 73054 77998 74436 75347 75004 72775 69407 74365 76109 75314 73044 68415 68003 74989 75413 95755 95280 94242 91014 90233 88789 86207 85170 85194 86915 84812 82572 80743 84366 86769 84305 81481 76240 76908 75990 74319 76488 77734 75851 75809 74807 73967 74197 71724 73990 73372 74249 73736 71352 83606 88312 89846 87690 86596 92746 94295 90039 80926 72882 71830 70159 69833 67653 69012 69005 70922 69934 66029 66168 66686 64308 67070 65017 73318 76478 73677 74019 70426 62241 55701 53744 52326 49500 48175 42473 42336 39905 34679 46033 42786 42795 40675 39766 38360 36480 37779 40026 39455 41790 43334 50337 49386 48913 46173 43611 43648 42982 41225 38304 38828 30434 30232 30051 32193 31615 29210 26192 19917 20377 19409 19253 18223 18044 16127 15701 14436 13970 13610 14133 12886 12065 11500 10919 9777 7647 7966 4937 3908 3691 TOTAL -86665 59486 31480 20032 18566 17110 15635 14159 12678 11315 10091 9013 7413 6046 4639 3399 3376 3356 3341 3313 3287 3254 3238 3225 3206 3199 3184 3170 3144 3134 3116 3099 3086 3568 3559 3559 - - 3510 3489 3470 3450 3439 3431 3418 3399 3389 3354 3338 3329 3318 3304 3292 3280 3272 3263 3253 3239 3232 3231 3221 3199 3186 3184 3132 3113 3091 3082 3062 3047 3030 3015 2994 2980 2967 2950 2932 2911 2883 2859 2847 2835 2818 2796 2778 2774 2759 2749 2737 2722 2711 2692 2669 2662 2632 2619 2604 2595 2582 2566 2561 2548 2530 2517 2505 2487 2464 2450 2440 2423 2407 2407 2384 2349 2303 2264 2222 2190 2150 2095 2068 2031 1999 1974 1910 1883 1845 1813 1780 1736 1693 1612 1574 1546 1469 1429 1378 1343 1321 1301 1277 1260 1239 1223 1199 1191 1178 1167 1122 1079 1036 1001 959 915 841 787 778 647 635 622 618 589 527 451 353 326 313 300 289 277 262 252 240 227 218 193 183 168 142 126 98 88 75 39 30 29 arpspoof -82801 55582 27559 16050 14551 13058 11558 10047 8509 7130 5849 4717 3063 2295 2074 3473 3399 3345 3289 3011 2747 2690 2651 2608 2568 2536 2501 2472 2435 2402 2361 2327 2296 2281 2251 2249 - - 2182 2149 2107 2083 2057 2022 1996 1960 1919 1875 1836 1793 1749 1714 1678 1639 1607 1577 1530 1482 1446 1442 1412 1381 1338 1334 1152 1102 1059 1005 909 2227 2184 2140 1274 1239 1181 1123 1055 992 924 820 1466 1428 1380 1343 1299 1253 1210 1159 1113 1074 1036 976 918 884 824 767 700 1735 1699 1661 1626 1581 1534 1510 1466 1430 1381 1346 1303 1266 1233 1232 1151 1091 1008 940 880 806 732 628 530 5291 5234 5190 4304 1538 380 500 412 312 700 568 509 427 424 348 333 387 322 281 232 254 219 228 196 161 198 208 770 723 674 621 571 521 431 363 343 205 187 172 156 104 338 263 152 113 92 74 54 35 14 - - - - - - - - - - - - - - - sponsorblockcast -71957 44263 15879 1533 4760 5035 322 12978 11060 9266 7616 6058 3740 6494 4683 3030 2664 2247 695 1615 1136 615 1559 1153 838 1869 1609 1327 803 1332 909 797 1006 1342 1335 1306 - - 3567 3472 3370 3281 3162 3045 2935 2826 2734 2609 2516 2387 2255 2155 2075 1983 1877 1774 1677 1572 1477 1473 1343 1230 1116 1098 1353 1227 1106 985 838 680 296 5 1024 905 870 1718 1609 1501 1373 1252 1160 1060 949 815 1013 878 776 1206 1143 1069 1012 935 843 730 832 733 895 806 691 762 652 5900 5837 4452 2213 814 726 627 609 775 652 651 2399 2319 2230 2155 2068 1983 1896 1811 1727 1643 1565 1462 1259 1167 1071 971 860 768 660 460 351 344 358 373 330 692 630 570 487 426 1712 1662 1590 1542 1500 1457 1373 1302 1234 1154 1075 995 896 818 788 619 561 523 461 375 261 205 495 448 409 353 291 331 285 274 254 173 262 268 268 251 193 193 225 172 181 156 201 196 jellyfin -71762 44486 16436 4822 3168 17372 15885 14386 12788 11218 9779 8500 6664 5074 3427 1945 1845 1723 1625 1548 1376 1277 1218 1121 1059 994 925 842 757 674 569 488 289 600 578 568 - - 564 573 510 442 208 208 208 208 770 719 689 651 624 601 566 530 479 391 324 1576 1538 1538 1514 1481 1459 1455 1363 1335 1309 1289 1260 1230 1211 1177 1152 1122 1097 1068 1040 1011 975 949 916 892 868 847 825 796 773 751 737 714 689 658 635 613 583 572 552 525 493 466 450 412 377 348 319 329 391 371 347 309 545 545 497 462 405 354 296 526 480 424 382 330 245 238 396 346 299 223 157 343 297 200 167 221 124 183 265 228 194 181 163 150 136 131 125 118 251 241 206 152 191 146 356 314 243 184 171 129 114 99 384 352 293 226 130 111 95 88 100 94 82 146 138 128 117 112 100 90 70 56 44 39 34 11 7 6 flaresolverr -69221 37756 41777 24666 20162 15315 1256 16250 13204 23749 20942 18923 16185 13117 13099 14344 13274 11743 13667 12086 8907 6058 4539 4066 3568 3045 9930 7365 5640 6404 5642 2945 7502 7128 6676 6621 - - 14629 12198 9690 7034 6552 6090 5414 5364 5520 4076 8230 5640 6309 5852 5180 2206 6224 5295 4448 3405 242 6 5682 7272 6290 6205 10604 8139 7186 6648 6146 5424 5515 9115 6697 6111 5412 7159 11125 10594 8800 6024 5941 5275 5828 5119 7030 6671 6207 5639 4939 4263 3415 4999 5472 4814 5539 4890 18272 17557 17232 16970 16729 16499 16274 14119 11142 8709 7725 7470 7186 6864 6583 6582 6246 5910 5512 5013 4412 5496 5045 4389 12880 12601 12221 11881 10434 7402 5947 5571 5139 4655 4160 3131 2395 2557 2129 5838 5509 5176 4858 4541 4136 3752 3228 3684 3192 5490 5246 4979 4713 4452 4159 3836 3472 3016 4488 4238 4010 3585 3255 2851 3665 3335 2880 3319 2766 4137 3852 3527 3207 2848 2476 2542 2400 2836 2366 3080 2786 2538 2238 1987 1630 1327 1176 847 588 555 portainer -65589 38416 10433 9826 8389 6967 5524 4069 2603 1251 16 833 658 478 290 109 101 97 95 89 83 80 78 77 74 73 69 68 67 65 56 51 50 50 48 48 - - 42 34 34 33 33 30 28 25 73 66 65 64 63 59 57 57 56 53 52 50 47 47 44 43 41 38 32 30 29 26 54 47 45 41 39 34 31 27 377 377 376 374 372 366 364 353 344 342 342 342 339 335 333 331 329 328 321 321 321 319 317 316 315 312 308 307 301 299 295 295 293 293 293 293 258 244 209 185 152 128 94 64 48 184 162 146 103 79 54 40 97 70 41 121 98 76 28 105 75 48 35 34 29 27 25 22 21 20 17 52 120 87 50 390 359 327 263 214 211 90 87 84 81 56 189 129 38 26 20 17 17 46 43 40 34 28 27 23 21 20 25 25 24 22 19 6 3 3 mylar3 -25511 38165 10023 608 4057 2526 116 2420 2304 2356 488 2549 2328 1739 1143 1295 1205 1020 1035 1131 658 559 455 439 693 653 586 464 642 595 525 621 546 588 515 497 - - 511 507 515 491 705 665 619 558 494 230 503 204 489 473 479 637 583 518 505 522 537 532 677 613 546 535 596 529 586 522 518 533 581 518 528 598 523 654 600 523 509 484 496 479 602 534 469 467 513 446 457 527 463 452 515 447 449 461 435 433 427 471 411 417 415 415 532 491 433 489 410 503 436 436 450 449 532 449 461 554 457 530 443 443 398 475 384 439 446 549 461 535 441 495 425 504 337 376 385 374 343 346 385 324 367 312 232 316 413 358 352 353 348 339 437 364 400 303 364 260 310 306 404 326 354 432 288 279 250 254 307 243 252 236 226 196 225 281 231 243 288 288 237 181 298 226 195 195 plex_nas -24950 25575 9600 337 3 1775 72 1894 1785 1604 261 2012 1275 1781 1782 598 581 537 536 718 334 263 297 249 163 146 289 248 291 311 306 300 305 298 294 291 - - 295 294 288 297 296 305 295 305 301 295 285 288 273 279 291 296 293 279 295 280 306 305 294 317 303 293 285 304 286 294 292 298 295 296 288 285 286 294 289 304 272 272 301 272 274 270 265 273 261 262 261 246 263 259 241 243 230 242 232 243 234 235 228 238 233 230 242 234 235 245 253 239 283 282 275 275 287 267 268 279 286 253 274 272 234 222 2600 1318 270 257 258 211 268 250 236 241 215 229 237 221 205 203 187 195 195 194 195 195 192 237 231 219 224 219 233 244 241 189 247 188 193 187 220 184 239 253 183 177 181 171 169 161 159 154 148 110 134 140 111 129 118 118 94 106 136 104 95 95 jackett_nas -21558 19966 19356 9643 24812 22468 2430 22305 25659 24171 21797 23876 20636 24120 21748 24134 21638 21185 19921 17876 12032 8215 11110 8649 3807 5314 11483 10156 10195 10314 10172 10081 10076 10043 11067 10951 - - 11537 10765 9557 9367 11692 11023 10227 8929 8833 7902 8340 7762 8427 8277 8285 8229 8228 11416 10904 10325 9669 9633 8767 7401 26982 26925 25607 25173 24774 24363 23957 23559 23174 22845 22434 22023 21617 21190 20760 20328 19788 19317 18902 18464 17966 17528 17159 16773 16375 15944 15536 15163 14735 14288 13905 13564 13225 12882 12557 12187 11830 11475 11150 10830 10519 10206 9880 9545 9204 8880 8509 8102 7701 7701 7265 6739 6139 5257 6152 5411 9957 9569 9181 8879 8506 8131 7318 6854 6384 5921 5304 4283 4406 3468 5309 4756 3599 6078 5712 5363 5001 4643 4144 3597 4034 3492 4252 3817 3241 8250 8000 7767 7521 7293 7034 6803 6575 6325 6136 5808 5613 5426 5247 5029 4775 4482 4212 3978 3759 3498 3263 3035 2810 2532 2229 1960 1569 2036 1730 1356 1359 1359 1070 888 727 477 285 264 filebrowser -11758 11304 10999 10101 9699 9262 8852 8362 7977 7565 7246 6833 6473 6031 5642 5248 4976 4696 4487 4257 3947 3753 3627 3492 3384 3252 3077 2936 2821 2718 2574 2440 2299 2166 2023 2013 - - 1647 1511 1387 1298 1172 1037 893 733 1262 1115 966 805 646 418 573 250 141 262 184 95 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - postgres_17 -7594 4502 3948 7706 9960 9417 8697 7732 10309 9774 9165 8442 7216 5738 4860 3040 670 6846 6020 4442 4315 3305 4492 3804 2138 1145 3090 2566 1 197 192 3312 3150 2996 2728 2664 - - 1748 1512 2499 2397 2271 2122 1970 1840 1626 1374 1366 2482 2332 1872 1220 910 759 587 1229 1003 842 834 1184 1069 955 943 656 980 874 753 595 456 517 405 207 353 239 0 64 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - netalertx -5131 5095 5038 4944 4896 4839 4760 4713 4594 4402 4181 3971 3725 3475 3236 3002 2914 2858 2813 2772 2711 2672 2638 2601 2568 2535 2483 2450 2413 2377 2344 2309 2264 2246 2214 2208 - - 2118 2080 2042 2013 1975 1942 1908 1868 1833 1785 1733 1648 1578 1511 1400 1243 991 1479 1387 1225 15 3 2846 2726 2630 2610 2068 1946 1842 1719 1577 1441 1293 1076 1394 1227 1053 792 705 965 1370 1168 1005 861 372 3232 3124 3028 2943 2844 2744 2647 2554 2460 2359 2274 2169 2067 1973 1894 1793 1709 1611 1513 1435 1394 1345 1310 1255 1202 1163 1115 1071 1071 999 950 886 831 764 708 633 537 467 399 322 243 341 263 170 690 629 561 493 376 313 252 128 164 254 194 158 130 95 69 51 37 72 29 289 274 226 183 141 102 62 16 223 166 163 31 18 5 - - - - - - - - - - - - - - - - - - - - - - - - - - postgres -4533 4039 5006 4366 3910 3918 404 2609 4234 3827 1790 4213 3922 3508 3514 3524 4060 3798 3402 2324 1903 1445 1310 1172 1000 67 818 1443 974 131 1731 1589 1436 1571 1397 1356 - - 1318 1364 744 1299 1547 1446 1274 1264 558 551 549 1137 1170 1035 573 9 1987 1940 1898 1856 1777 1773 1746 1687 1637 1633 1372 1268 1129 1338 1246 1077 1325 1202 1073 640 1084 959 821 195 877 711 567 446 951 1051 904 793 660 1005 889 704 303 574 571 1153 1041 920 738 1030 951 831 1064 978 889 765 799 654 690 629 718 632 730 730 641 477 327 627 716 622 809 705 595 554 648 583 619 519 286 6 972 914 853 732 689 641 533 485 421 347 289 233 808 771 732 710 680 660 631 607 567 520 468 415 372 330 258 197 168 175 142 230 203 153 169 321 231 185 129 606 588 562 542 501 465 434 404 373 368 328 276 192 142 7 90 53 38 35 mealie -3273 3143 3079 2959 2879 2781 2693 2607 2462 2382 2340 2273 2215 2131 2061 1930 1815 1753 1699 1625 1527 1441 1366 1253 715 4301 4238 4201 4177 4123 4081 4033 3997 4042 4001 3996 - - 3910 3884 3861 3830 3802 3772 3749 3718 3683 3640 3608 3575 3540 3511 3489 3454 3431 3405 3375 3351 3328 3326 3291 3269 3249 3244 3165 3132 3089 3058 3022 2992 2943 2902 2863 2828 2793 2760 2705 2656 2584 2546 2506 2462 2415 2350 2292 2252 2206 2173 2135 2086 2023 1966 1914 1871 1820 1781 1730 1681 1633 1576 1525 1477 1447 1412 1357 1314 1258 1179 1093 548 2125 2125 2052 1970 1870 1794 1714 1654 1561 1466 1383 1282 1092 910 927 1710 1628 1527 1419 1289 1169 916 951 831 477 1416 1310 1145 1001 874 811 755 653 860 797 726 640 511 860 753 639 533 1392 1321 1240 1163 1124 965 939 910 887 836 761 656 515 492 834 803 755 709 672 607 450 490 416 365 279 254 504 397 403 272 289 35 59 39 myelectricaldata -2851 2837 2831 2809 2795 2779 2761 2751 2724 2693 2681 2661 2647 2624 2604 2546 2512 2504 2490 2460 2421 2368 2356 2337 2331 2321 2309 2294 2285 2279 2261 2247 2232 2695 2689 2688 - - 2665 2646 2630 2625 2615 2607 2594 2585 2572 2555 2546 2533 2532 2527 2519 2508 2504 2499 2491 2482 2476 2476 2468 2462 2450 2448 2411 2401 2394 2388 2369 2359 2350 2345 2339 2328 2316 2303 2291 2280 2266 2252 2245 2239 2232 2214 2201 2197 2187 2179 2171 2155 2134 2113 2106 2101 2086 2085 2079 2066 2059 2054 2049 2038 2030 2021 2007 2001 1990 1986 1979 1967 1961 1961 1941 1909 1872 1828 1796 1762 1724 1676 1650 1626 1607 1583 1534 1508 1483 1463 1436 1401 1378 1297 1259 1218 1156 1117 1083 1054 1037 1023 1017 1007 1003 1000 994 988 982 977 946 909 867 829 785 747 679 628 617 489 480 472 462 432 376 310 215 189 177 170 166 158 153 138 126 114 104 89 87 82 64 52 46 43 37 19 13 13 teamspeak -2837 2490 2842 994 2391 3288 3074 2773 2428 3448 3211 2892 2483 2488 3587 3334 3078 2724 2368 2280 1424 1181 1004 801 708 524 1379 1220 1067 950 788 552 1566 1377 1246 1225 - - 1242 1060 1321 1181 1003 458 1277 1125 954 1399 1296 1183 1064 895 472 1266 1141 985 1340 1228 1118 1111 942 23 1246 1231 898 751 580 953 36 926 1126 950 1404 1262 1130 950 1463 1335 1198 1054 886 875 652 537 1001 838 1113 996 843 1139 1018 849 1000 839 830 959 816 31 1019 917 752 1073 986 897 740 488 538 352 732 65 65 65 45 31 9 1160 1016 883 730 1132 1001 867 625 1101 836 665 798 653 479 339 619 457 546 315 302 760 579 750 620 443 453 545 403 455 342 211 353 203 429 700 576 419 500 653 653 545 456 558 499 404 758 649 497 310 481 367 209 298 299 359 394 249 365 269 316 429 325 238 468 468 405 328 283 193 124 94 nextcloud_ocr -2814 2806 2806 2788 2780 2774 2767 2750 2686 2525 2351 2172 1986 1793 1610 1419 1401 1382 1376 1353 1338 1310 1288 1269 1254 1228 1205 1172 1152 1128 1107 1089 1072 1056 1035 1033 - - 981 959 944 929 917 895 874 852 832 812 787 773 757 724 710 693 684 673 653 629 603 603 584 551 527 521 440 395 2286 2265 2238 2206 2193 2162 2137 2101 2068 2043 2004 1976 1939 1902 1878 1857 1839 1815 1791 1763 1727 1699 1680 1659 1632 1614 1591 1571 1549 1532 1515 1488 1462 1433 1407 1382 1357 1322 1297 1271 1246 1234 1222 1207 1194 1194 1182 1154 1128 1100 1076 1056 1026 991 963 948 924 898 859 832 807 779 758 723 695 627 599 566 516 486 450 418 402 386 377 357 340 328 318 302 296 283 245 207 169 131 308 280 226 183 166 562 550 541 522 477 417 348 242 221 209 196 186 180 171 145 144 133 119 102 103 150 132 119 99 73 64 33 27 27 overseerr -2785 2503 2191 1238 930 2191 1773 2108 1823 1776 944 1860 1527 1457 1620 1327 1467 1178 962 943 764 568 423 298 145 67 70 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - filebrowser_quantum -2373 3518 3129 2362 1976 1428 85 3567 3099 2595 2110 2218 2226 2123 2131 3075 2788 2439 2121 1669 1114 768 1620 1480 1340 1195 1009 720 1234 1098 913 725 1035 854 595 567 - - 1005 842 794 652 451 24 708 433 621 901 742 688 1137 1026 903 781 642 830 703 489 30 30 1015 889 774 743 224 681 870 766 598 37 423 40 698 575 549 649 505 823 697 483 462 307 560 418 441 427 423 498 405 506 405 402 462 368 359 333 391 346 369 301 290 288 301 304 336 251 270 459 397 343 279 278 323 255 250 398 329 263 252 221 205 207 188 203 315 250 552 495 442 380 314 208 145 138 62 160 147 149 105 137 90 92 69 35 105 98 82 111 103 87 97 92 94 92 35 205 194 100 80 54 74 74 174 124 42 34 46 58 53 70 60 48 21 23 29 22 29 28 2 2 0 - - - - - immich -2176 2009 1989 1901 1853 1815 1792 1751 1695 1646 1583 1536 1468 1408 1336 1286 1208 1160 1112 1049 982 925 874 829 779 702 560 171 2012 1793 1577 1438 1390 1351 1313 1308 - - 1227 1202 1171 1146 1122 1097 1067 1036 1015 983 947 920 888 862 835 808 780 747 702 657 593 591 634 583 1170 1164 1051 1027 999 965 932 887 851 816 790 747 714 672 633 587 537 478 753 711 670 632 595 554 505 452 488 436 510 446 472 436 495 461 412 409 666 633 612 594 558 535 521 488 461 424 393 344 476 476 414 347 512 456 403 355 401 334 133 119 576 541 447 410 358 295 264 448 389 299 251 302 211 414 353 302 262 247 217 187 157 192 166 135 498 476 419 364 309 262 199 143 296 229 207 53 47 28 41 - - - - - - - - - - - - - - - - - - - - - - - - - portainer_agent -2170 2090 2045 1925 1848 1798 1744 1673 1613 1551 1496 1414 1331 1238 1141 989 1095 1010 452 780 685 621 571 539 495 444 397 332 5 911 880 836 797 757 717 713 - - 607 561 528 496 424 287 280 788 740 690 637 553 236 1242 1210 1194 1181 1148 1110 1075 1052 1049 1012 976 947 938 835 803 768 733 688 640 605 574 531 470 413 1174 1128 1087 1042 1010 984 951 925 880 842 798 760 714 668 609 497 1584 1539 1501 1458 1417 1384 1358 1332 1307 1273 1233 1208 1185 1155 1136 1099 1064 1037 993 962 961 905 860 809 756 705 652 582 506 412 1111 1054 1013 923 877 835 789 732 687 631 531 490 453 322 357 547 492 453 420 350 302 247 242 199 169 137 415 352 660 606 554 506 456 367 281 404 279 291 215 394 345 272 137 235 373 337 306 282 232 284 228 298 268 243 201 170 122 188 144 176 150 131 91 59 57 guacamole -1870 1818 1782 1729 1699 1660 1606 1570 1519 1487 1457 1421 1381 1319 1278 1234 1203 1181 1154 1142 1093 1056 1040 1027 1002 985 968 948 923 892 869 848 830 808 793 793 - - 747 725 710 693 672 658 638 618 600 573 548 526 508 491 467 447 417 398 366 335 301 300 251 507 491 487 390 361 336 292 258 577 554 527 511 481 440 413 373 310 257 310 269 266 111 1733 1703 1673 1645 1616 1593 1563 1543 1515 1500 1480 1464 1444 1432 1394 1359 1346 1319 1296 1275 1249 1227 1205 1178 1146 1126 1097 1076 1076 1044 1001 951 907 866 824 788 736 696 664 617 574 498 466 410 364 311 262 202 369 317 245 129 224 169 715 685 653 621 597 573 553 519 490 465 440 399 358 301 255 196 146 77 22 124 40 26 37 6 - - - - - - - - - - - - - - - - - - - - - - - - - free_games_claimer -1837 1823 1795 1724 1714 1688 1665 1649 1573 1396 1216 1023 832 644 450 260 224 198 162 123 99 79 65 49 24 4 128 119 103 84 63 40 14 6 72 72 - - 71 67 66 66 66 66 66 66 66 61 61 60 60 59 59 59 53 49 53 78 68 68 61 44 57 54 50 55 60 45 57 48 55 61 52 59 49 54 56 53 51 49 57 50 55 54 51 55 47 51 70 58 54 61 150 145 133 120 111 104 96 76 61 65 71 59 60 77 67 67 75 68 124 124 96 140 105 85 114 20 120 103 106 98 107 87 129 102 99 115 114 116 115 118 107 134 67 146 115 82 82 83 89 90 79 90 82 79 76 106 99 97 95 88 87 110 111 72 111 79 71 64 84 105 116 143 79 70 57 58 56 71 65 60 59 49 60 48 54 62 52 52 43 39 65 49 42 41 readarr_nas -1735 1719 1703 1665 1653 1630 1605 1589 1523 1355 1171 979 787 601 413 219 195 185 167 153 137 132 119 107 95 39 159 144 132 118 108 89 123 112 98 96 - - 99 143 137 125 116 96 80 186 174 159 151 142 131 122 117 106 95 88 142 132 117 117 109 101 93 89 103 88 141 134 128 118 111 100 87 156 141 134 118 108 99 82 146 126 117 103 95 88 77 94 85 74 111 102 93 86 74 117 112 99 92 84 77 74 174 163 156 149 143 138 131 122 110 110 215 188 147 110 365 330 292 248 216 185 148 120 385 355 318 296 262 234 199 131 334 295 228 191 150 120 94 81 105 97 94 91 84 79 77 110 116 111 104 101 110 139 133 77 205 76 55 71 141 109 224 150 82 76 66 64 75 69 60 60 62 50 67 58 43 65 58 58 52 42 68 51 45 44 lidarr_nas -1715 1675 1612 1514 1466 1390 1329 1252 1182 1109 1062 992 921 839 783 728 651 581 514 432 364 249 312 267 50 370 339 298 269 215 334 291 232 448 427 424 - - 342 311 293 262 215 578 551 532 505 483 468 443 423 410 390 363 348 329 304 275 245 244 171 1001 983 983 911 890 876 862 843 824 799 769 746 718 696 670 648 623 586 890 842 794 767 734 703 679 643 605 563 519 475 419 394 355 310 274 237 196 156 116 142 58 86 24 473 439 402 375 347 312 273 273 202 148 158 878 828 762 702 625 552 493 419 359 224 128 46 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - whatsapper -1677 2055 1950 1700 4641 4392 4168 3939 3677 3414 3198 2982 2728 2451 2210 1956 1824 1599 1080 959 798 656 2480 2442 2410 2355 2311 2259 2215 2172 2124 2078 2029 2015 1948 1940 - - 1808 1765 1731 1691 1651 1612 1567 1539 1500 1463 1433 1394 1359 1323 1274 1246 1212 1170 1122 1080 1041 1038 996 963 917 909 749 704 656 605 550 480 425 0 685 625 538 455 776 724 622 539 429 1945 1874 1825 1770 1714 1640 1587 1524 1474 1433 1384 1341 1287 1237 1182 1137 1082 1034 990 948 903 849 800 738 648 1184 1137 1102 1061 1015 1015 941 850 772 679 593 499 716 602 499 390 82 1556 1399 1331 1255 1164 1085 995 885 673 525 412 1073 989 910 836 771 719 668 628 572 513 452 380 354 285 267 265 291 272 271 280 283 234 316 313 246 225 233 263 271 321 319 216 211 213 221 274 203 206 277 145 202 333 260 277 254 254 294 218 282 205 204 195 transmission_ls -1668 1738 1484 2297 2238 2164 2089 2009 1891 1730 740 1734 1723 1739 2236 2147 2049 1915 1739 1730 1006 692 1379 1318 1262 1208 1143 1081 1016 947 824 785 1031 983 927 921 - - 730 827 742 715 750 415 755 756 570 471 738 681 615 568 518 454 481 448 409 683 583 575 360 1121 1073 1067 842 750 737 743 1101 1049 911 537 481 547 475 546 455 475 669 609 553 486 412 469 403 571 533 480 424 363 530 492 463 424 390 358 313 440 404 378 341 310 270 684 651 634 620 603 579 560 539 539 482 438 384 335 282 31 352 279 329 271 362 305 334 268 162 250 468 419 374 272 215 216 336 289 234 187 151 116 251 233 218 208 189 167 223 193 452 411 365 320 266 209 196 150 240 99 176 145 179 407 339 251 259 232 211 194 169 139 200 167 150 123 143 132 184 157 93 114 94 73 52 44 34 32 tandoor_recipes -1641 1453 1364 1020 847 653 470 275 2403 2072 1791 1474 1145 798 482 162 149 138 138 130 116 110 102 93 233 222 211 207 200 197 179 176 164 160 154 154 - - 134 121 107 105 103 96 87 77 71 54 74 214 208 205 199 197 189 182 176 173 165 164 158 158 153 153 142 137 134 128 124 116 110 102 100 90 83 69 63 55 9 109 102 86 91 470 458 449 438 429 424 418 412 407 397 390 379 363 356 350 339 336 327 323 313 303 288 282 279 276 274 266 256 256 235 206 172 134 92 179 136 95 682 655 626 589 513 481 443 405 343 302 269 198 160 125 46 187 128 81 57 112 109 99 90 87 75 71 67 66 29 187 150 115 74 644 571 518 510 386 384 376 374 352 301 240 145 113 107 106 101 97 90 84 74 64 67 61 56 51 29 29 20 8 44 28 26 26 webtrees -1569 1450 1208 1393 1 1489 1245 1371 1635 1485 1313 1404 1384 1432 1449 1435 1425 1406 1394 1489 1059 946 879 809 712 1061 981 898 809 682 298 646 606 751 660 640 - - 679 755 670 673 657 977 931 887 843 758 678 672 859 784 695 1578 1534 1494 1451 1395 1352 1350 1304 1234 1175 1167 971 931 877 823 757 658 998 941 870 797 701 1156 1089 1007 926 818 696 1054 981 926 858 811 737 645 862 807 742 650 701 602 894 846 804 740 661 573 671 579 781 718 678 590 1025 970 921 863 814 814 718 619 84 839 764 687 562 586 584 595 501 501 511 773 675 579 696 583 782 539 522 543 1171 1097 1007 918 855 785 726 673 615 573 503 447 463 659 583 485 623 537 452 622 531 441 492 465 567 496 392 596 490 620 472 711 651 561 472 692 642 565 495 397 374 437 353 493 407 393 377 98 359 91 321 313 epicgamesfree -1537 1482 1460 1396 1362 1307 1254 1215 1161 1115 1077 1024 974 923 876 823 751 674 572 1284 1241 1196 1171 1142 1115 1092 1055 1026 998 970 944 913 883 851 825 824 - - 766 733 708 685 669 647 615 595 573 543 518 498 465 451 435 402 371 337 302 259 83 73 112 136 118 115 102 84 71 65 59 61 52 8 54 35 16 25 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - webtop -1515 1695 1514 792 1334 1460 228 1628 1473 1478 805 1642 1415 1623 1460 1423 1408 1331 1441 1687 906 2208 2146 2105 2049 1990 1943 1908 1878 1849 1804 1769 1733 1709 1670 1665 - - 1562 1534 1500 1474 1447 1413 1402 1383 1355 1317 1294 1267 1226 1208 1188 1168 1135 1114 1092 1057 1029 1026 936 896 870 867 782 763 749 728 714 694 670 653 635 611 590 567 538 517 484 464 438 420 391 361 336 196 327 577 563 532 508 482 466 449 415 399 375 343 310 278 240 374 361 339 315 292 268 236 474 439 416 416 377 340 297 256 202 345 307 259 205 274 229 645 568 541 501 457 433 392 345 256 218 180 100 274 230 196 166 484 470 453 438 426 419 404 385 371 332 300 271 242 208 179 124 79 503 411 391 371 363 335 289 233 159 131 131 266 256 237 225 203 184 171 150 150 136 113 91 89 71 43 60 38 22 20 scrutiny-fa -1247 1156 1073 367 1479 1425 1374 1321 1249 1195 1145 1047 951 957 433 972 900 830 782 717 623 580 538 480 440 188 616 580 548 512 476 413 552 522 495 491 - - 589 555 518 492 450 389 664 640 622 590 553 533 493 464 447 420 371 434 411 366 394 392 493 459 431 423 438 387 371 463 425 386 471 444 395 528 493 456 393 481 423 368 484 452 421 368 444 419 366 404 362 446 420 380 472 450 417 388 352 434 419 385 341 496 473 449 411 369 544 519 497 454 409 409 559 510 449 370 804 758 706 644 594 543 440 357 863 797 756 703 643 582 497 590 518 447 387 513 443 343 442 386 414 362 299 519 481 451 420 376 704 640 567 497 436 354 599 529 491 341 286 291 291 267 503 411 280 382 347 322 281 250 86 290 257 222 235 191 186 208 200 200 128 95 91 47 31 29 radarr_nas -1237 1172 1112 1003 907 990 825 1037 914 912 466 955 822 866 867 900 867 804 790 392 309 248 418 347 112 540 514 492 475 457 406 400 397 399 395 382 - - 402 459 422 392 372 411 370 367 427 392 350 380 341 388 349 338 384 347 351 352 398 395 351 349 428 425 359 339 375 334 359 323 333 344 382 361 327 347 313 342 295 293 328 284 379 344 314 271 286 316 298 279 349 334 315 291 249 275 244 287 259 228 175 128 216 126 246 221 264 249 225 201 117 117 279 227 215 211 257 212 298 250 222 186 261 229 156 244 195 154 186 143 168 177 138 109 80 102 91 38 99 65 50 48 31 36 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - changedetection.io -1195 1042 1198 1026 1246 1186 1107 1012 1320 1295 1239 1167 1082 980 970 1179 1112 986 788 641 519 39 583 530 477 199 465 686 655 612 579 535 499 447 425 418 - - 699 668 644 626 592 559 527 499 464 387 601 577 544 515 492 459 404 403 768 741 719 719 688 655 634 629 512 465 405 408 457 414 482 440 488 426 409 419 421 423 408 404 400 405 398 427 383 396 387 454 426 373 392 388 360 420 376 374 373 364 409 370 364 385 1510 2162 1045 382 370 378 394 388 483 483 417 416 460 379 428 23 433 430 436 426 352 356 403 457 460 457 474 485 468 454 518 439 377 430 422 336 384 391 65 65 65 65 65 65 65 65 35 1424 1360 1294 1246 1191 1107 1033 1008 865 829 803 773 722 639 546 425 380 346 320 283 247 246 288 248 191 243 192 192 217 146 146 121 90 88 55 37 35 sonarr_nas -1106 1074 1051 995 964 934 909 862 819 799 765 739 707 660 632 606 569 517 491 457 424 402 389 360 339 317 304 276 254 227 202 181 145 243 220 219 - - 147 112 192 184 169 151 129 107 83 63 35 7 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - omni-tools -1081 1191 910 473 1110 1221 1066 1082 1079 1219 1025 1315 1156 991 1036 1028 1133 952 974 989 591 287 565 502 287 916 853 811 769 725 668 629 583 524 442 423 - - 470 467 495 434 585 539 492 437 485 413 587 531 458 369 471 389 542 492 418 494 458 456 383 514 458 452 377 390 474 435 366 438 378 345 279 208 803 749 706 654 584 450 653 533 312 434 378 337 287 348 321 270 262 272 304 257 434 380 331 226 205 285 252 193 254 217 260 195 230 204 217 185 129 128 264 200 9 723 668 606 559 501 456 409 340 279 152 171 104 367 326 275 212 270 230 185 86 219 164 288 244 203 164 112 128 171 134 676 654 633 590 546 509 461 418 380 301 253 230 133 113 87 413 377 330 266 188 158 126 109 95 79 119 92 66 42 277 270 243 225 193 164 139 109 97 61 43 40 browserless_chrome -1063 1028 988 916 872 820 769 687 607 514 248 823 786 748 705 615 563 501 457 415 344 306 279 242 195 204 852 832 815 796 760 724 700 673 650 648 - - 574 548 519 495 468 447 424 399 376 354 331 303 280 259 239 219 193 175 152 129 110 108 88 63 35 33 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - librespeed -1024 1020 1020 1018 1018 1016 1016 1008 1006 1000 996 984 976 976 958 948 940 939 939 939 939 939 939 939 939 939 939 939 939 939 931 931 931 1390 1387 1384 - - 1384 1378 1378 1378 1378 1378 1378 1378 1378 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1369 1369 1369 1369 1368 1368 1368 1368 1368 1368 1368 1368 1368 1368 1362 1356 1356 1356 1356 1356 1356 1356 1354 1354 1354 1348 1348 1348 1348 1348 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1334 1314 1280 1256 1228 1194 1169 1143 1123 1101 1085 1071 1036 1020 1004 988 962 947 923 875 853 831 783 759 728 704 691 691 691 691 691 691 691 691 691 691 659 629 599 569 539 508 446 398 398 278 278 275 275 251 203 143 53 38 31 31 31 31 31 31 30 30 120 110 99 91 68 65 53 42 35 16 11 9 papermerge -988 953 905 835 799 766 735 686 641 603 556 502 414 868 813 765 707 666 623 567 457 922 876 849 811 793 761 739 718 703 667 628 598 575 553 550 - - 496 471 446 422 401 371 326 436 413 378 354 336 307 285 259 236 217 197 177 160 135 131 0 778 753 750 664 638 614 602 590 572 563 544 528 509 492 476 459 439 420 392 370 342 313 276 556 536 506 486 475 460 434 411 376 362 334 301 280 257 228 296 279 260 221 902 886 873 860 841 828 813 791 791 770 738 697 656 621 587 555 518 485 458 422 400 329 288 249 217 182 385 335 256 219 193 116 155 113 143 274 252 238 215 201 185 172 156 129 137 149 139 46 139 144 154 152 108 146 111 101 61 103 46 111 99 102 84 21 107 94 84 101 105 88 51 23 66 10 86 22 22 73 72 81 69 73 69 calibre_web -936 909 889 847 825 803 772 743 721 699 677 645 593 569 541 511 477 447 423 399 369 343 314 299 284 279 263 253 235 220 194 170 134 3428 3412 3409 - - 3367 3355 3336 3324 3312 3306 3294 3274 3258 3238 3216 3211 3182 3175 3163 3161 3151 3141 3133 3126 3114 3113 3104 3085 3065 3063 3019 3008 2989 2968 2959 2938 2925 2913 2899 2874 2853 2838 2818 2788 2765 2735 2718 2700 2686 2666 2650 2639 2627 2617 2589 2576 2558 2537 2521 2496 2472 2458 2450 2440 2423 2414 2404 2391 2381 2367 2357 2342 2327 2310 2299 2289 2268 2268 2249 2215 2165 2131 2088 2053 2010 1967 1936 1903 1867 1837 1767 1733 1693 1656 1626 1578 1540 1468 1429 1388 1314 1285 1253 1208 1183 1176 1163 1152 1141 1134 1125 1113 1105 1084 1038 995 949 907 867 827 759 707 700 577 568 557 544 519 461 389 283 261 249 238 231 219 210 195 189 179 166 152 133 123 108 98 80 66 51 23 15 14 xteve -910 878 866 828 794 763 731 709 657 641 608 594 570 545 515 479 433 417 391 371 340 320 299 285 276 271 247 232 211 191 178 166 142 296 284 281 - - 263 236 221 211 202 185 170 160 144 115 88 403 391 377 360 345 332 312 286 268 244 242 230 204 182 178 411 401 380 358 343 318 307 296 275 260 251 240 229 218 203 183 172 151 138 112 308 291 276 257 250 238 229 211 198 190 177 167 159 145 130 105 376 368 362 354 340 335 321 304 290 279 265 265 213 182 133 618 576 545 508 446 410 382 351 324 260 221 163 127 83 13 32 267 223 186 112 78 36 1065 1044 1031 1023 1011 1006 998 989 982 979 973 937 897 864 827 789 750 685 633 623 498 489 483 471 438 383 317 223 203 193 190 183 171 165 154 149 143 132 122 118 104 85 76 67 56 49 24 20 18 baikal -905 863 804 674 678 2414 2372 2296 2164 1964 1749 1515 1309 1090 891 694 663 623 585 553 480 422 405 370 323 401 373 351 319 290 339 312 266 276 1242 1241 1222 1206 1193 1174 1156 1136 1120 1104 1083 1074 1061 1039 1025 993 974 954 938 922 894 873 848 836 814 814 793 784 769 767 712 694 685 662 646 636 618 603 577 562 539 517 492 468 448 426 405 388 373 348 326 305 281 261 233 1015 996 972 952 934 919 911 896 882 861 848 837 830 809 797 778 764 745 721 700 676 655 655 609 571 512 451 399 344 289 208 645 601 560 524 450 404 346 289 228 147 714 624 564 521 419 380 323 270 231 200 173 144 218 200 177 158 140 394 350 301 250 205 139 466 376 315 298 149 133 531 520 478 417 328 216 186 170 155 138 121 88 303 282 266 241 221 198 168 148 125 102 87 80 45 21 19 addons_updater -893 846 818 706 664 588 509 451 357 301 327 266 182 168 94 16 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bentopdf -886 41574 13233 6367 4500 3735 1912 1879 5209 3682 2341 2132 1882 1707 129 2857 2626 2425 2131 1774 1711 43 1161 57 1377 1236 1062 870 1920 1759 1541 795 496 2233 2125 2113 - - 1840 1761 1661 1575 1480 1381 1246 1115 957 1098 950 333 974 808 1338 1287 2120 2043 1948 1862 1734 1731 1599 1428 2508 2501 2125 2029 1919 1834 1695 1528 1352 2305 2193 2085 1974 1860 1743 1602 1417 1234 1629 1492 1349 1150 1438 1316 1117 1004 883 693 1119 1246 1081 1383 1270 1149 1019 1952 1865 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1787 1711 1640 1561 1508 1417 1321 1214 1112 981 1255 1165 1165 1059 933 801 647 1201 1063 887 1843 1734 1654 1540 1439 1180 1009 832 615 803 787 557 181 428 826 472 819 643 582 819 712 590 485 894 828 739 638 1466 1404 1300 1216 1123 1019 916 817 672 526 610 384 352 1101 1049 963 847 694 481 709 627 556 461 359 363 504 363 293 364 340 340 325 323 323 337 312 407 266 240 225 qbittorrent -823 759 713 612 539 442 345 778 722 702 662 632 584 564 542 496 441 413 375 351 310 274 244 206 169 361 332 297 275 254 231 209 154 267 253 252 - - 179 143 272 250 231 211 183 157 145 114 91 303 286 268 245 229 216 198 184 156 138 138 115 91 61 59 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - emby_stable -804 909 801 412 749 778 103 900 788 785 428 898 708 899 789 765 751 744 709 805 463 866 823 790 756 726 683 663 628 610 579 558 523 504 478 473 - - 399 368 335 313 289 246 225 195 158 127 1041 1022 983 966 943 919 901 883 867 833 808 805 666 597 579 575 509 499 488 475 468 445 432 416 406 382 366 353 335 317 298 283 270 249 234 213 189 104 182 321 314 300 292 277 265 240 214 194 168 59 191 168 136 230 210 201 187 167 150 126 353 337 326 326 283 244 205 167 125 237 209 174 128 220 164 606 540 497 460 420 386 345 308 237 200 150 70 220 177 144 114 797 792 778 770 757 751 740 732 717 684 658 631 603 575 545 497 459 442 348 335 320 313 290 248 188 112 91 104 158 144 132 119 103 81 130 127 112 97 74 81 81 67 48 84 58 58 58 scrutiny -799 584 464 1035 827 637 404 341 329 299 136 448 405 381 341 309 248 292 215 247 201 178 153 117 351 336 322 308 294 285 269 261 243 233 221 220 - - 184 161 143 130 165 146 126 224 204 187 173 154 138 116 331 309 301 293 282 271 260 260 241 218 200 199 1298 1291 1282 1272 1261 1244 1236 1222 1201 1182 1161 1151 1135 1112 1094 1078 1069 1051 1031 1016 997 981 969 955 934 921 911 897 889 879 866 858 850 832 824 814 806 788 774 767 749 733 720 707 694 683 678 678 665 642 612 585 564 538 510 473 451 431 414 393 346 318 295 267 231 207 188 126 100 138 74 98 53 267 248 234 214 206 195 189 186 178 171 162 129 94 50 548 510 485 435 399 395 307 304 293 290 274 236 184 115 94 81 76 66 52 43 169 153 143 138 131 119 111 89 75 65 55 46 29 17 15 wger -796 766 756 726 704 682 648 615 548 510 279 268 623 532 573 551 521 478 444 408 363 340 331 318 296 276 232 215 253 394 374 361 340 324 302 301 - - 294 268 239 291 273 254 221 246 212 250 226 207 205 222 216 204 283 268 253 234 212 211 187 146 269 263 377 354 335 317 303 277 261 248 235 207 173 127 201 284 253 233 211 187 147 221 185 384 359 336 316 301 277 262 237 227 191 173 147 121 161 142 116 86 289 258 243 228 206 192 168 149 135 135 102 73 254 220 185 143 111 53 21 3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - linkwarden -752 712 689 614 584 511 48 655 591 515 255 698 652 595 553 519 457 404 355 354 308 274 241 206 187 161 122 254 303 260 458 440 427 406 388 386 - - 325 294 255 321 265 367 324 267 368 344 327 293 262 519 505 492 476 456 436 419 407 406 379 361 342 338 241 330 318 290 260 250 256 768 752 729 717 685 666 645 627 596 578 558 536 518 498 482 462 443 430 412 394 376 363 347 331 314 303 272 245 216 186 875 860 841 822 803 780 765 743 725 712 712 686 665 634 607 579 541 504 467 440 410 382 354 285 250 203 159 266 227 185 247 218 187 86 213 157 166 129 173 156 140 117 450 433 421 409 386 344 306 257 215 164 272 199 129 331 194 184 171 153 247 177 97 203 180 151 138 120 104 108 150 133 116 96 159 149 130 105 85 69 74 81 48 24 23 joplin -738 772 981 872 758 975 918 833 740 940 862 758 841 721 838 760 829 727 719 579 471 395 643 605 550 507 457 415 362 368 438 384 231 362 451 448 - - 230 4 362 466 418 352 380 325 311 202 485 428 358 340 466 414 353 530 511 479 450 448 416 364 457 448 365 355 346 541 512 462 433 365 332 446 419 374 329 428 383 327 420 373 330 409 368 318 378 338 291 391 359 314 323 287 376 334 284 371 326 278 335 292 261 315 278 382 343 317 275 257 374 374 333 283 360 293 325 262 366 314 261 24 215 324 212 332 286 237 300 249 343 234 307 262 129 193 127 252 196 189 125 181 171 151 172 976 968 953 927 881 841 800 757 718 666 616 598 501 477 453 436 396 350 291 219 187 148 161 186 150 145 86 127 83 155 124 112 127 115 115 125 98 112 86 107 69 calibre -711 696 676 653 625 600 578 558 527 507 479 430 387 340 281 209 821 793 765 737 684 665 656 637 626 618 604 587 579 573 559 540 520 515 494 491 - - 461 443 428 419 408 396 385 379 366 350 327 312 303 295 282 267 250 239 217 180 1708 1708 1693 1684 1671 1669 1624 1602 1571 1558 1543 1530 1522 1502 1493 1483 1465 1454 1437 1421 1399 1373 1357 1331 1311 1300 1276 1261 1237 1224 1204 1190 1181 1166 1156 1147 1132 1113 1105 1087 1073 1062 1054 1038 1029 1013 992 977 956 947 938 918 901 901 883 844 798 763 715 683 638 586 546 520 485 456 386 347 311 272 244 198 133 218 170 135 372 325 281 228 200 182 165 157 144 135 111 83 1008 994 954 904 863 824 772 735 657 594 577 444 422 414 397 360 297 222 109 95 256 245 233 216 204 183 162 148 140 117 90 72 145 145 126 80 97 67 54 54 transmission_openvpn -709 980 931 837 772 659 68 407 654 669 286 793 717 644 628 685 605 582 572 559 360 314 270 212 241 15 432 372 448 403 369 421 368 373 372 359 - - 327 317 289 251 416 378 342 300 410 367 343 301 261 293 247 277 233 247 280 238 243 241 204 230 253 252 280 247 251 208 452 401 403 361 369 490 426 493 431 445 486 417 567 525 475 405 434 594 560 511 475 443 391 597 576 548 512 478 430 391 343 108 77 532 498 469 425 357 335 456 420 382 597 597 530 477 392 553 489 405 471 388 469 383 556 496 347 437 359 443 367 374 343 448 388 337 179 395 316 336 271 357 302 257 238 270 232 244 329 281 412 348 283 272 442 382 286 222 293 262 224 340 313 251 386 287 220 217 217 249 224 215 226 214 395 371 339 300 287 251 207 169 163 144 110 68 47 47 fireflyiii -699 681 681 655 649 623 608 594 566 558 546 528 508 486 475 456 439 433 400 388 374 360 356 346 335 325 310 301 292 289 280 275 265 262 247 247 - - 226 213 211 202 192 186 182 173 164 156 146 131 123 118 110 100 93 73 214 206 201 200 193 184 176 176 151 145 138 130 118 98 87 257 252 243 230 218 212 198 182 170 158 137 133 116 103 83 1597 1585 1579 1569 1560 1548 1543 1538 1527 1521 1514 1511 1503 1496 1491 1481 1476 1470 1455 1445 1443 1430 1423 1417 1409 1409 1396 1375 1355 1326 1298 1269 1248 1219 1197 1180 1151 1132 1077 1056 1025 1010 991 968 935 879 858 832 788 764 741 720 706 702 698 687 681 676 670 662 659 649 620 590 559 529 503 478 422 385 376 292 279 269 260 232 193 146 76 47 61 49 35 39 31 17 9 - - - - - - - - - - - - - binance_trading_bot -681 670 668 660 648 642 637 632 628 618 608 592 582 578 570 568 560 556 556 554 554 551 550 549 544 543 540 537 530 528 522 521 519 513 512 512 - - 505 500 496 494 491 491 488 488 487 482 479 477 475 472 471 471 471 469 466 466 462 462 462 462 461 461 452 450 447 447 447 443 438 435 429 423 421 416 412 411 409 409 408 405 402 393 389 386 385 383 380 377 375 373 370 368 362 357 357 356 351 350 349 345 339 332 329 326 324 316 307 297 290 290 260 236 207 177 148 119 89 57 30 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - comixed -669 595 471 691 653 583 74 695 642 540 258 716 682 642 587 514 462 433 387 362 331 281 245 341 331 301 265 237 293 272 235 287 267 242 241 237 - - 310 286 265 244 219 297 281 257 231 222 271 253 227 283 264 243 212 217 277 256 241 238 221 294 272 270 212 193 240 224 191 214 198 219 194 242 228 218 197 246 223 194 180 221 194 282 265 252 241 221 205 178 225 216 194 179 157 270 259 245 229 217 202 192 175 157 218 209 197 182 159 318 305 305 276 253 221 180 252 218 166 142 140 171 127 32 170 141 167 129 209 183 148 134 56 133 65 83 160 130 109 97 84 85 76 91 77 133 113 94 129 92 132 101 85 117 61 310 299 215 209 203 189 163 114 134 102 68 20 69 62 94 87 74 59 45 79 72 63 53 39 57 38 45 32 21 14 12 gitea -658 565 536 216 480 501 46 486 438 415 200 414 372 364 377 380 310 287 262 242 151 106 92 61 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - brave -647 635 623 599 585 565 532 508 488 463 443 423 411 394 371 349 323 291 277 261 237 224 213 204 191 180 170 160 149 143 128 114 311 298 291 290 - - 272 251 239 231 221 210 204 194 174 156 144 127 112 142 131 115 80 20 265 252 242 242 232 225 220 218 179 172 150 133 524 514 499 478 462 449 431 409 394 384 370 354 331 322 307 291 278 272 260 253 241 231 213 193 171 145 132 107 92 197 186 172 160 156 151 142 126 111 96 75 143 128 113 113 66 1929 1888 1853 1821 1790 1754 1705 1684 1660 1631 1603 1532 1495 1457 1431 1393 1352 1310 1240 1202 1168 1107 1067 1033 994 976 971 962 952 939 933 928 923 917 906 870 837 797 757 719 680 615 566 556 435 426 412 406 377 323 259 162 142 128 117 108 94 83 76 61 57 55 45 39 31 37 37 19 11 28 12 10 8 resiliosync -617 581 532 539 497 546 461 499 473 528 251 380 497 581 567 357 303 512 459 535 303 181 283 225 158 291 294 361 335 293 305 510 483 461 435 431 - - 362 322 284 292 297 285 401 374 350 321 281 279 324 293 289 547 528 515 495 464 437 437 410 380 353 353 470 452 428 409 386 353 330 301 266 314 281 406 374 348 322 308 272 342 302 265 262 253 257 440 420 411 385 359 334 316 293 266 244 245 275 233 305 285 260 225 409 393 366 350 331 315 287 287 241 339 293 239 290 246 227 232 231 453 408 373 307 250 230 416 383 352 307 231 221 217 146 216 171 125 213 191 229 206 161 201 173 283 262 235 175 334 278 228 176 484 413 357 342 215 204 187 164 467 406 331 227 198 174 147 114 147 130 184 179 157 135 114 107 114 102 102 87 72 61 33 22 20 cloudcommander -612 600 591 583 571 561 552 541 533 527 509 495 487 473 448 434 420 412 400 398 379 371 368 362 359 356 353 349 346 344 339 324 316 312 302 301 - - 287 274 268 265 258 257 248 243 233 226 217 212 206 198 193 189 183 183 180 173 165 165 162 157 156 154 140 136 134 131 127 119 116 116 109 101 96 77 62 129 107 76 87 82 76 75 83 80 78 64 917 912 905 903 899 889 876 866 860 857 852 846 840 835 830 819 811 804 793 783 780 776 768 768 753 728 686 654 625 587 552 507 477 453 426 399 344 322 292 261 239 215 189 115 79 43 194 166 130 93 78 75 63 58 49 831 824 821 819 806 767 728 695 664 632 599 534 485 474 348 344 335 328 297 248 188 88 71 62 59 54 51 41 31 27 79 70 63 56 46 29 25 55 49 45 27 23 22 spotweb -609 605 605 589 581 581 568 563 555 553 551 539 527 519 501 491 483 483 483 481 479 479 477 475 474 473 472 469 464 462 458 458 457 501 501 501 - - 498 491 489 489 487 486 485 485 484 475 474 470 468 466 465 464 463 459 459 458 456 456 455 454 452 451 450 448 447 447 446 441 441 439 439 437 436 433 431 429 427 423 420 413 412 403 395 393 390 389 387 379 376 371 369 367 359 358 356 352 350 343 333 326 312 307 297 294 281 270 262 253 238 238 196 168 130 204 172 133 456 408 376 360 323 302 249 218 188 156 120 469 432 360 332 296 227 188 156 121 101 94 88 77 66 87 79 72 57 70 84 88 88 83 83 107 104 47 184 54 60 60 79 94 198 131 68 52 46 44 41 55 53 47 51 44 53 44 37 56 59 45 42 33 63 33 32 31 plex-media-manager -520 494 456 412 394 363 343 288 247 389 359 323 284 249 208 240 167 139 10 122 88 53 80 66 53 35 15 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - social_to_mealie -515 740 786 324 0 779 80 753 739 771 314 757 728 790 699 703 693 800 679 704 389 303 370 322 323 149 367 290 412 380 333 334 341 386 337 334 - - 322 319 313 312 316 309 286 309 316 306 343 304 299 298 307 349 302 294 303 317 315 312 312 321 336 329 323 329 316 330 307 303 313 317 311 308 297 307 303 324 293 294 299 295 280 283 271 281 283 282 274 270 281 265 260 274 281 303 280 291 266 259 259 264 256 255 275 267 263 266 268 269 303 303 310 296 305 298 304 306 309 296 300 302 250 250 284 311 311 331 344 340 352 323 299 308 270 300 296 290 272 257 264 257 252 244 244 245 235 268 254 254 253 230 251 261 253 214 256 226 212 201 237 241 244 273 183 186 177 170 168 173 168 157 146 123 148 151 120 138 129 129 120 114 142 100 114 113 prowlarr -511 489 461 400 370 484 434 376 698 686 653 612 577 528 490 440 383 392 156 332 279 249 229 209 187 28 195 144 207 190 205 284 268 259 240 238 - - 507 472 450 425 411 392 375 361 343 312 282 260 238 215 451 440 430 409 394 372 351 351 323 282 251 242 291 265 242 301 263 216 791 775 762 732 709 690 665 645 625 594 572 548 526 513 465 443 419 388 368 348 318 284 243 426 403 383 369 353 329 311 296 268 230 320 304 285 249 210 245 226 251 251 1141 1107 1059 1018 970 922 874 815 776 738 695 669 599 560 527 494 466 426 371 284 235 168 163 186 254 213 180 137 423 406 384 371 359 339 332 318 288 255 197 135 398 350 288 246 235 126 269 247 228 191 133 207 108 121 278 261 246 225 214 112 170 152 126 96 91 87 143 143 121 112 103 78 81 81 photoprism -510 1431 1334 958 760 524 52 694 513 459 217 524 636 417 620 445 370 332 302 274 220 416 396 379 363 348 324 299 276 258 239 225 206 188 160 154 - - 256 232 217 202 184 156 130 182 158 133 112 173 148 136 122 106 97 73 49 32 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_power_tools -504 482 468 432 400 362 330 281 573 545 499 475 445 419 385 343 325 287 138 286 257 236 221 208 193 169 148 195 162 142 158 130 139 741 729 728 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - monica -501 489 477 448 440 421 402 363 348 335 318 292 270 258 238 220 206 178 163 153 140 131 122 107 85 156 114 2612 2594 2584 2569 2555 2544 3008 3000 3000 - - 2975 2963 2955 2948 2938 2932 2920 2913 2908 2897 2887 2878 2870 2863 2856 2849 2846 2842 2839 2827 2823 2823 2813 2797 2793 2789 2742 2733 2725 2722 2711 2698 2683 2675 2659 2640 2631 2611 2602 2587 2575 2555 2539 2532 2520 2495 2478 2461 2452 2440 2431 2428 2417 2409 2399 2392 2378 2372 2370 2364 2353 2344 2336 2324 2315 2303 2290 2283 2275 2262 2252 2241 2234 2234 2205 2180 2142 2105 2076 2030 1989 1939 1910 1884 1855 1830 1780 1737 1692 1669 1642 1605 1564 1494 1452 1414 1345 1318 1279 1245 1213 1208 1196 1185 1176 1168 1153 1141 1137 1129 1084 1045 1000 960 919 877 805 749 741 608 595 582 577 541 481 414 313 288 275 263 249 240 231 214 200 190 171 157 148 134 110 100 85 78 70 37 25 22 organizr -427 764 742 694 657 608 580 539 507 473 428 364 467 425 393 328 327 316 294 275 226 193 163 117 217 204 182 163 137 232 214 203 192 175 156 154 - - 275 261 247 240 223 205 182 164 150 122 97 86 56 74 54 42 45 55 34 14 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_frame -425 417 417 399 383 370 352 338 320 304 294 280 272 260 252 229 211 185 175 173 173 172 165 161 157 153 147 143 129 119 110 103 95 86 76 74 - - 74 60 261 260 256 252 247 245 237 229 226 226 222 221 216 212 207 207 204 198 192 192 188 186 180 180 157 154 153 150 148 146 136 131 124 111 101 95 89 81 71 66 685 681 675 665 657 653 650 643 638 635 628 623 620 619 610 608 602 600 596 593 583 580 577 574 565 560 558 553 551 548 544 544 533 513 487 470 449 430 409 385 365 352 335 318 281 259 240 215 199 178 160 109 91 71 26 85 54 68 53 49 39 36 27 584 580 579 575 572 549 525 503 477 454 429 381 342 339 255 254 250 246 225 192 150 88 76 68 63 60 58 55 50 47 45 41 39 33 29 20 16 8 24 18 5 7 7 fireflyiii_fints_importer -418 924 818 713 569 310 38 762 655 888 844 768 690 604 307 603 699 645 562 468 338 297 261 200 148 290 259 186 360 344 318 298 271 264 226 219 - - 231 274 251 230 170 213 202 241 205 192 173 144 142 197 138 286 268 258 249 208 180 179 138 83 231 228 82 81 130 84 118 103 85 25 87 72 56 45 9 97 68 75 143 129 114 100 86 75 59 48 32 63 43 33 157 151 142 133 126 114 104 96 77 64 55 45 28 34 35 46 2 49 151 151 111 70 68 15 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-go -414 402 388 365 349 336 316 283 249 233 124 351 308 266 336 310 274 256 248 234 204 193 189 176 161 139 180 172 164 155 136 220 214 204 192 191 - - 153 93 78 148 510 506 495 481 471 450 439 429 420 417 407 398 392 387 383 371 363 363 353 343 330 328 289 275 266 248 235 226 212 200 186 170 143 298 280 267 250 241 231 219 209 197 177 165 146 179 171 160 137 1162 1149 1143 1132 1119 1111 1104 1092 1085 1080 1056 1050 1043 1038 1034 1019 1006 998 988 983 983 966 938 903 873 833 791 748 698 661 629 603 573 520 478 440 412 382 346 305 237 201 164 87 184 138 196 168 156 147 133 124 117 109 96 91 767 725 685 650 613 579 539 471 416 406 278 270 249 242 215 154 75 103 76 54 259 251 240 232 218 216 204 199 180 168 148 135 119 97 82 72 41 32 29 whoogle-search -400 365 347 315 286 209 188 159 619 589 559 541 519 487 461 440 399 343 287 236 183 164 147 126 107 79 171 131 301 294 280 264 246 240 220 220 - - 163 1013 1002 991 981 970 961 946 934 921 906 890 875 861 851 832 819 810 792 767 752 752 741 723 710 710 645 619 595 574 558 540 513 488 464 447 426 402 382 354 338 321 305 278 270 246 222 196 175 149 360 346 323 304 282 262 225 207 181 147 2203 2186 2174 2158 2129 2107 2080 2063 2044 2032 2009 1985 1968 1968 1946 1910 1853 1801 1755 1702 1655 1599 1562 1514 1484 1460 1380 1342 1298 1260 1219 1173 1125 1032 995 957 869 825 766 723 687 659 636 619 608 588 576 552 540 529 477 415 364 306 255 200 119 864 836 693 659 637 621 586 516 434 302 271 235 212 178 144 121 76 188 170 121 148 113 223 174 119 117 123 104 45 19 14 zoneminder -396 357 323 276 260 224 196 146 122 149 129 303 264 224 201 161 117 79 98 60 77 58 48 34 20 21 18 37 37 37 31 31 30 37 36 36 - - 36 30 24 24 22 21 21 21 20 13 13 18 18 18 18 18 17 17 17 17 32 32 31 30 30 30 27 27 27 26 26 23 20 20 20 21 30 30 29 25 23 20 29 38 36 30 23 24 22 24 23 27 26 39 38 38 32 29 27 26 39 37 34 33 31 134 133 133 133 129 128 128 128 128 110 86 344 320 293 262 227 201 175 155 133 119 92 69 43 24 1 319 287 213 184 145 75 95 181 145 122 116 105 96 77 71 60 50 218 212 175 138 88 130 87 628 556 499 491 367 362 353 343 314 260 193 90 63 50 51 207 193 186 167 160 149 140 133 119 103 80 64 50 39 26 7 4 4 vaultwarden -384 358 338 128 360 346 302 331 293 625 605 569 551 527 504 470 450 426 401 389 365 341 325 303 291 280 269 258 247 237 228 204 182 170 159 158 - - 205 191 184 170 156 144 127 178 163 152 146 132 123 108 223 215 208 203 196 181 175 175 168 158 150 149 124 167 152 145 137 122 111 95 73 195 185 168 159 148 132 107 112 247 231 221 210 202 194 184 171 158 153 143 132 123 115 106 92 5318 5316 5304 5295 5289 5283 3973 1822 130 118 105 97 150 145 145 113 103 273 250 224 200 167 142 107 212 192 175 130 104 196 171 149 122 356 299 277 256 213 188 166 135 114 105 93 77 105 99 94 85 78 104 81 83 84 77 72 94 85 58 103 50 49 47 61 82 94 120 49 44 31 33 28 31 27 23 20 16 11 7 2 - - - - - - - - - sabnzbd -381 377 375 373 367 365 354 352 343 337 333 325 309 293 283 273 253 249 243 239 229 228 225 222 217 212 207 207 206 204 193 184 176 179 173 172 - - 163 154 151 149 143 142 141 141 139 130 128 126 126 125 123 121 114 110 106 98 96 96 91 88 86 86 75 71 65 57 52 43 37 32 11 146 140 136 130 123 120 119 114 107 102 89 81 80 78 69 65 59 54 47 44 42 31 31 25 13 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tor -380 305 285 251 227 120 195 488 450 398 190 383 410 372 428 373 367 239 38 245 222 201 181 165 153 83 280 257 245 229 216 204 187 165 174 171 - - 133 84 137 121 156 147 126 155 137 118 97 97 89 188 181 188 188 178 186 166 154 153 141 125 108 107 184 207 183 278 268 256 242 224 196 3 194 199 207 212 238 221 216 196 174 199 174 237 228 210 198 188 173 161 146 202 181 163 135 152 133 105 200 190 174 160 140 247 237 227 211 194 173 173 128 317 274 219 267 215 150 2 314 281 237 181 190 241 197 206 327 287 225 307 267 228 147 243 197 136 225 212 198 184 162 151 135 127 122 328 285 239 194 141 222 180 114 253 243 110 427 419 414 382 327 256 156 134 120 99 86 95 177 156 131 132 118 103 84 83 77 73 62 51 47 23 16 15 fireflyiii_data_importer -374 364 362 350 338 330 323 317 311 307 291 281 269 257 241 223 211 203 197 195 192 190 185 181 176 173 165 160 155 151 141 131 121 117 111 111 - - 91 79 74 69 66 64 59 54 267 255 251 249 246 243 243 239 234 229 228 217 213 213 212 206 203 203 189 186 184 182 169 164 163 153 149 146 143 132 128 125 123 122 118 114 106 95 85 79 74 65 56 70 65 63 52 1817 1807 1801 1801 1798 1793 1784 1779 1774 1768 1764 1754 1750 1739 1730 1726 1723 1721 1721 1711 1685 1649 1621 1589 1559 1524 1485 1448 1430 1407 1382 1342 1313 1288 1264 1237 1209 1176 1106 1079 1048 994 970 929 903 889 885 883 878 869 866 858 856 853 850 817 784 749 711 675 645 580 519 509 385 381 372 366 335 287 227 136 119 110 106 98 89 82 71 67 62 56 49 44 37 68 68 57 41 37 19 10 9 ubooquity -357 345 332 314 300 273 265 253 230 196 188 166 132 116 102 80 64 36 28 20 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - netbird-server -351 327 325 319 311 291 278 266 236 220 208 184 164 128 206 180 168 148 128 112 96 89 84 69 54 50 40 26 1874 1865 1856 1848 1845 2325 2318 2318 - - 2298 2288 2283 2275 2274 2268 2264 2261 2258 2250 2245 2244 2233 2222 2216 2213 2209 2205 2201 2198 2190 2190 2190 2187 2177 2177 2155 2152 2149 2145 2136 2123 2118 2105 2101 2088 2076 2057 2043 2024 2010 1997 1988 1985 1970 1951 1932 1928 1916 1909 1903 1899 1890 1884 1875 1869 1861 1849 1847 1840 1837 1830 1824 1822 1818 1812 1808 1806 1804 1799 1796 1793 1785 1785 1768 1739 1693 1658 1620 1596 1555 1514 1486 1467 1441 1419 1377 1350 1328 1304 1279 1236 1209 1151 1128 1098 1035 1005 968 931 912 908 905 900 895 893 889 888 879 874 843 810 777 742 708 676 615 563 560 438 436 431 427 396 344 279 188 169 150 143 139 133 123 105 83 125 117 108 92 89 68 53 47 38 29 13 7 7 gazpar2mqtt -327 278 235 134 0 294 232 302 273 295 162 425 284 256 216 178 154 134 344 303 174 146 218 204 184 167 142 106 149 132 132 130 149 134 119 115 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - grampsweb -322 282 304 107 259 281 22 315 295 308 91 288 360 212 245 202 224 191 208 228 151 39 81 28 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - chromium -292 242 200 162 754 715 657 569 504 433 190 429 318 612 560 516 464 394 335 275 164 99 224 206 185 167 148 130 107 152 138 121 102 248 238 237 - - 203 192 176 170 156 144 131 121 108 95 79 108 95 82 68 96 90 82 76 61 112 110 94 87 77 77 30 24 45 39 65 54 43 24 71 64 56 44 49 35 36 147 142 132 117 96 83 72 63 59 49 39 35 24 18 45 23 15 14 7 79 74 69 60 50 44 31 24 17 3 4 - 17 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - navidrome -289 283 283 281 279 276 266 262 254 244 234 218 212 200 190 180 170 166 164 152 130 111 99 82 74 47 0 98 91 86 38 358 351 345 341 340 - - 324 313 313 310 300 293 291 288 283 272 270 266 262 258 253 249 239 236 234 224 219 219 214 208 202 201 179 172 167 165 158 150 145 135 122 112 102 94 83 244 233 230 225 221 216 205 198 191 182 172 161 158 155 151 147 139 130 123 118 110 105 94 77 1046 1036 1032 1028 1021 1015 1015 1008 1004 1002 1002 975 959 924 889 859 827 789 750 714 694 674 648 607 577 554 528 511 476 442 377 348 317 248 216 180 149 128 119 110 104 98 92 85 75 64 608 570 529 482 448 410 376 307 258 250 118 109 91 82 341 287 220 121 103 90 88 84 80 73 59 93 92 87 81 73 65 50 40 39 30 24 9 4 4 ombi -283 259 247 203 382 366 342 325 309 276 104 789 757 731 698 664 609 539 691 1326 1242 1184 1143 1104 1069 1030 997 941 908 879 835 793 751 718 688 680 - - 591 564 532 493 454 426 383 349 292 357 328 270 264 372 337 307 265 267 506 475 455 453 414 379 357 356 226 270 231 225 400 373 341 305 288 262 231 197 243 209 449 427 394 369 340 305 151 211 189 164 135 243 226 204 192 164 140 127 112 62 284 268 245 235 220 205 184 154 131 148 129 362 340 340 284 246 205 159 1035 987 951 900 859 829 801 754 665 629 599 568 529 493 443 376 342 313 239 204 166 130 107 99 88 79 66 52 57 44 37 610 561 521 480 440 399 357 281 228 223 88 78 65 55 102 45 26 - - - - - - - - - - - - - - - - - - - - - - jellyseerr -241 551 537 485 461 431 391 360 323 295 237 590 567 522 488 448 420 358 291 257 210 157 201 183 166 64 316 306 292 271 258 241 234 228 218 218 - - 193 175 144 320 314 304 293 288 277 266 257 245 239 230 226 220 212 208 202 186 172 171 154 364 350 349 316 302 285 278 264 254 248 244 229 219 212 195 171 153 146 266 254 245 234 218 207 197 182 172 166 151 140 155 134 276 265 261 251 238 230 220 208 202 195 190 179 172 163 147 614 608 597 597 561 521 484 447 413 385 350 308 270 241 187 153 173 473 435 404 374 338 302 217 176 128 120 259 214 172 143 183 160 151 144 128 359 352 343 331 293 251 201 145 154 253 174 445 441 311 299 287 268 227 169 206 101 158 140 132 122 117 106 98 127 120 117 107 93 80 84 84 49 103 98 75 69 68 bazarr -233 227 225 216 209 200 191 187 183 175 165 143 139 125 111 98 82 74 67 57 43 39 36 34 32 82 72 57 48 44 37 27 21 136 133 133 - - 118 108 102 97 89 88 87 85 85 79 78 73 65 62 56 53 46 44 38 26 38 36 28 19 34 34 22 29 25 31 26 25 31 26 25 46 35 30 26 102 90 79 72 58 45 29 25 56 47 36 34 29 23 20 30 20 34 30 23 17 15 22 39 36 32 30 25 28 25 20 69 64 58 58 35 80 53 36 34 37 64 39 37 56 30 48 31 50 33 31 34 32 79 32 36 31 29 40 38 31 31 17 21 15 29 13 14 18 22 323 299 277 251 229 206 184 139 103 94 8 5 14 33 42 52 70 28 20 13 11 17 13 15 17 17 10 19 17 14 27 43 38 34 30 24 7 13 11 omada_v3 -229 176 158 124 120 94 12 322 290 264 224 217 233 226 230 295 258 228 179 184 118 83 162 151 136 121 100 69 127 118 103 79 77 63 5 71 - - 93 73 70 9 36 4 54 26 48 64 50 39 76 76 68 61 51 62 48 35 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_openvino -225 215 213 192 178 175 165 155 140 132 116 84 68 167 139 120 115 2 160 156 146 139 135 132 130 125 123 117 114 108 94 90 84 83 77 75 - - 71 65 61 57 53 49 48 47 44 39 35 34 29 232 231 231 225 223 220 213 210 210 204 199 195 195 183 179 176 173 171 169 167 165 159 158 153 151 143 137 134 132 125 117 111 103 97 93 90 82 79 76 75 71 69 68 62 60 57 52 50 43 55 49 36 281 281 276 269 258 253 247 241 241 222 204 179 154 131 116 92 68 50 24 138 125 95 74 52 52 80 58 35 197 179 156 118 94 72 53 41 39 31 25 18 22 16 103 100 92 67 41 60 38 213 191 145 112 108 21 213 209 205 188 153 111 47 37 30 27 36 35 28 21 29 26 22 23 17 25 32 32 21 22 20 11 9 9 unpackerr -225 149 83 354 273 201 135 48 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - nginx_webserver_proxy -220 216 210 204 198 190 177 170 154 149 147 119 102 94 80 62 54 42 40 40 38 33 32 29 25 6 49 41 909 906 901 894 889 1101 1099 1099 - - 1097 1088 1087 1085 1084 1083 1081 1079 1077 1070 1069 1065 1063 1062 1059 1053 1051 1050 1046 1046 1041 1041 1040 1038 1036 1036 1031 1027 1025 1022 1019 1012 1010 1007 1006 1000 999 995 995 995 995 994 992 991 990 981 973 971 966 958 953 947 946 940 937 933 921 918 914 909 905 903 900 897 895 892 887 883 882 875 868 860 856 856 834 806 766 728 695 659 622 585 560 534 511 489 436 405 371 339 300 276 242 169 132 99 33 98 59 531 500 488 476 476 475 473 467 462 462 461 431 401 366 336 304 271 202 153 152 30 28 19 334 306 256 194 101 88 82 76 74 71 67 63 61 55 55 51 50 48 34 33 31 32 32 20 18 18 joal -219 199 189 157 140 119 86 70 272 240 224 204 174 140 114 92 74 56 36 92 74 61 100 90 80 67 48 75 36 242 224 210 185 177 164 163 - - 133 120 106 95 85 1664 1660 1649 1637 1625 1613 1601 1593 1584 1572 1553 1546 1541 1529 1514 1504 1504 1499 1478 1470 1468 1428 1419 1401 1391 1380 1366 1357 1350 1343 1338 1331 1313 1305 1292 1278 1258 1251 1239 1233 1220 1210 1201 1197 1185 1179 1172 1162 1153 1147 1135 1125 1122 1113 1105 1095 1090 1082 1069 1061 1057 1034 1028 1024 1014 1008 999 993 993 978 952 909 877 844 809 774 724 693 673 641 614 554 518 482 454 424 384 341 276 236 206 146 106 73 35 11 8 6 1 546 535 527 519 512 504 467 436 404 365 326 285 217 163 157 30 59 48 44 291 240 174 77 51 40 34 32 54 46 38 29 22 38 34 19 25 61 61 50 49 43 21 17 17 seafile -210 206 193 189 185 180 178 176 175 171 171 171 169 165 163 161 157 157 157 151 147 144 142 140 138 132 115 102 94 83 72 60 48 554 544 544 - - 526 519 513 508 507 503 498 491 487 481 478 473 463 460 451 444 442 438 433 425 416 412 402 395 393 392 375 372 369 365 357 350 345 338 328 325 320 314 307 298 278 270 255 243 229 213 203 192 180 162 154 145 138 133 128 116 96 85 67 67 66 68 63 77 73 75 78 73 79 72 78 81 97 97 89 99 92 96 90 92 95 86 80 85 57 76 87 96 90 86 91 109 143 92 105 69 103 148 153 149 165 134 160 124 332 332 332 332 332 332 312 292 272 252 232 212 170 138 138 58 58 111 119 128 142 166 110 109 112 105 103 97 108 95 115 76 82 75 79 84 127 105 93 88 78 53 51 51 omada -206 174 158 66 222 192 154 188 171 145 84 168 144 32 148 144 174 132 116 127 88 80 92 79 43 107 95 87 74 86 103 93 80 76 118 118 - - 81 111 97 83 76 91 78 96 80 80 105 82 65 97 87 69 58 89 70 60 589 588 582 576 569 567 541 527 517 506 497 484 467 457 441 426 414 405 388 374 361 345 337 322 312 298 284 277 261 242 235 225 209 200 189 183 165 151 144 135 126 111 99 93 80 72 58 49 34 27 19 10 20 20 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - openproject -198 207 214 226 222 295 284 266 240 309 256 306 270 279 261 265 281 267 264 166 149 133 197 185 175 167 156 139 142 153 205 199 185 162 147 144 - - 160 176 169 163 157 164 153 171 175 163 169 8 172 180 205 183 199 181 191 194 200 200 205 217 219 217 0 322 287 248 241 242 324 295 250 274 237 291 249 311 249 260 224 298 273 221 252 218 548 506 472 436 401 368 331 296 240 185 271 217 175 198 166 165 269 215 179 165 151 144 157 142 188 188 179 191 185 177 170 240 181 182 153 211 147 114 109 197 177 173 170 164 158 164 200 157 115 135 142 134 128 120 124 82 107 115 126 102 100 129 136 555 509 463 420 380 309 250 239 105 131 108 127 228 159 181 112 108 90 105 286 266 248 221 200 179 161 123 107 85 150 150 145 127 99 60 72 66 emby -186 182 180 170 162 152 146 128 124 122 116 112 100 92 82 64 50 42 38 38 38 37 35 26 3 281 273 271 269 266 258 256 252 262 259 259 - - 254 246 244 244 242 240 239 237 233 226 224 222 221 221 220 220 219 218 216 215 215 215 214 213 212 212 206 206 201 197 195 190 188 187 186 184 177 172 169 163 158 157 155 148 145 136 123 113 109 102 100 99 94 90 85 83 76 72 67 66 60 55 102 95 91 90 84 82 73 67 70 66 446 446 413 391 350 322 293 268 237 184 131 113 77 55 50 86 81 165 136 112 85 83 161 119 53 129 91 132 105 89 86 73 64 63 57 58 52 93 116 70 74 73 73 331 269 216 203 80 77 72 61 263 211 144 49 39 99 87 78 72 69 63 54 28 17 20 17 22 69 62 41 28 45 18 7 5 myelectricaldata_dev -184 165 144 188 156 169 16 170 202 175 78 166 178 166 172 154 183 158 74 92 78 66 57 49 38 33 26 15 111 98 87 74 79 122 116 115 - - 84 83 122 113 95 81 147 140 130 124 117 112 100 90 82 74 64 71 73 67 121 121 102 88 81 81 71 60 94 87 76 69 0 65 63 67 57 175 170 155 149 135 128 119 113 105 86 79 68 59 32 1532 1531 1528 1524 1520 1512 1509 1504 1495 1488 1485 1482 1474 1471 1463 1455 1450 1442 1439 1434 1432 1425 1425 1407 1381 1347 1316 1284 1250 1215 1176 1142 1118 1094 1069 1020 992 966 940 905 877 842 775 750 723 667 634 594 564 547 540 536 529 521 516 514 512 508 501 464 427 391 356 314 277 209 159 153 29 287 280 277 248 197 130 34 39 26 55 46 42 37 29 22 26 55 51 43 37 44 44 40 31 30 12 8 7 tdarr -184 132 90 50 171 110 5 156 135 143 61 314 267 194 157 164 242 187 135 169 102 102 84 48 47 34 82 96 81 152 123 95 110 100 124 124 - - 165 127 92 124 93 162 131 95 93 95 108 93 123 98 117 184 134 119 109 104 742 742 722 698 677 675 602 575 552 533 507 487 463 431 397 356 265 647 625 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 592 553 513 477 434 349 314 326 325 375 318 605 568 518 475 433 401 352 255 896 872 840 821 805 771 744 723 707 679 654 630 605 577 554 554 516 473 423 377 325 274 125 1223 1190 1165 1111 1075 994 953 910 868 824 778 728 640 600 553 483 438 378 330 281 252 224 200 169 152 118 96 65 115 85 55 109 80 984 928 841 778 758 610 579 562 544 496 427 342 226 183 149 140 143 130 137 156 125 97 113 118 152 127 122 122 120 86 122 79 67 65 webtop_kde -165 157 153 151 128 115 104 90 186 168 152 133 127 125 109 91 79 73 72 64 60 55 53 51 45 33 57 49 42 33 34 47 40 36 127 127 - - 115 103 100 92 85 83 77 72 63 53 46 35 120 118 117 114 114 111 104 100 96 95 92 89 84 84 55 48 44 38 47 38 0 98 93 87 83 77 63 54 50 40 76 73 66 56 42 53 45 35 127 121 111 102 93 88 81 75 69 65 57 49 44 35 266 264 261 258 251 250 246 236 230 230 189 163 117 73 256 216 183 147 122 100 58 157 98 64 186 155 125 102 72 70 594 563 494 459 429 395 377 371 362 354 351 347 341 333 331 325 286 248 202 160 120 82 300 250 244 115 113 107 99 67 267 201 100 84 67 59 47 39 35 25 17 15 38 32 23 26 32 32 22 19 53 33 27 26 piwigo -160 148 128 183 163 144 111 108 104 138 108 90 76 72 80 56 42 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cleanuparr -153 148 144 66 155 0 148 150 150 154 74 144 148 166 146 203 169 160 182 166 99 69 82 101 85 109 95 81 83 83 90 86 86 83 83 83 - - 91 82 76 74 81 74 94 84 89 82 84 86 79 74 78 78 73 79 81 70 77 77 61 85 86 86 77 74 73 75 81 79 0 78 69 79 75 81 82 93 80 66 68 71 75 81 71 67 69 73 65 70 67 66 62 70 63 59 64 61 64 61 66 63 60 58 66 61 62 61 60 61 92 92 1885 1858 1824 1786 1759 1714 1677 1638 1618 1595 1565 1544 1494 1456 1420 1392 1360 1322 1283 1219 1187 1156 1111 1078 1048 1018 990 984 977 968 957 952 950 944 941 936 894 856 819 781 747 711 645 594 584 458 449 443 440 405 352 292 194 174 160 154 150 146 138 129 115 112 109 100 94 72 62 62 76 61 84 57 50 50 nzbget -147 233 213 140 104 47 0 196 167 135 111 124 93 93 113 213 179 156 126 101 66 32 127 104 91 76 55 27 75 56 39 28 45 25 33 29 - - 49 29 16 10 6 0 19 12 12 23 12 9 27 22 15 8 4 20 12 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_noml -145 126 90 310 298 285 285 276 243 234 196 167 127 201 193 177 171 157 147 135 180 180 175 169 164 155 145 142 139 133 124 117 113 105 100 99 - - 76 111 110 107 100 95 86 79 68 169 166 162 155 148 142 136 135 128 123 110 104 104 100 95 87 85 51 182 178 170 166 158 158 151 147 136 131 119 111 107 104 103 98 93 88 77 68 62 56 52 44 38 25 57 50 48 40 34 30 22 13 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - kometa -129 182 175 133 164 138 116 134 143 208 186 146 193 163 72 148 66 168 147 123 84 64 113 100 90 84 75 64 79 62 93 79 61 98 92 92 - - 60 55 76 68 59 98 88 82 75 51 70 55 94 90 86 79 71 62 105 91 86 85 74 59 87 87 88 79 66 78 62 96 84 74 61 50 82 69 54 52 44 47 50 51 58 67 54 55 60 48 59 51 82 72 63 48 61 50 77 68 59 54 42 82 71 67 52 42 149 140 130 115 108 108 72 157 117 83 161 117 80 149 128 106 59 98 99 62 61 54 218 186 145 70 89 55 30 92 52 35 30 24 40 40 27 40 186 173 163 154 113 73 337 299 262 222 151 99 87 68 64 52 47 132 76 133 36 29 21 14 22 13 1 - - - - - - - - - - - - - - - autobrr -122 125 103 186 174 152 134 117 105 294 290 266 242 214 186 171 155 135 111 95 74 53 48 44 36 4 109 105 93 85 71 90 78 78 72 72 - - 133 119 110 88 77 75 67 416 410 405 398 383 373 366 359 353 344 339 330 320 311 310 301 297 291 289 257 252 246 241 230 221 214 190 180 167 162 154 149 139 125 120 118 112 100 86 77 70 54 60 215 209 199 195 191 182 170 166 166 162 156 147 136 134 129 123 119 113 107 101 92 87 75 75 240 225 190 167 151 131 101 72 282 266 246 226 182 158 132 114 97 72 301 254 227 207 154 125 100 72 53 44 39 266 262 256 247 239 230 219 182 146 108 67 265 229 163 109 103 58 45 126 114 84 236 170 75 56 42 35 30 13 9 42 27 98 87 73 72 65 45 38 55 48 43 21 10 9 grav -117 107 103 91 301 290 278 267 248 232 226 220 208 198 186 168 158 150 144 142 139 135 131 128 127 126 126 122 115 108 101 93 86 84 82 81 - - 68 58 54 41 107 100 97 93 91 81 77 72 67 64 64 61 54 53 47 184 181 181 178 175 172 172 164 160 159 153 148 140 138 134 131 129 125 120 112 106 103 95 93 89 88 76 70 69 62 56 52 49 48 42 37 369 362 359 359 353 351 347 344 342 340 337 335 331 327 326 324 322 315 315 276 248 213 181 150 120 82 39 1349 1322 1284 1267 1224 1197 1172 1144 1119 1091 1069 1019 994 973 921 887 856 829 815 810 804 802 801 797 795 790 787 785 751 715 679 647 613 579 511 461 457 335 331 324 322 298 247 184 91 75 67 64 63 60 60 58 55 52 51 49 45 41 28 24 25 22 18 4 1 1 requestrr -111 110 88 112 88 54 14 83 44 54 12 8 58 66 32 42 15 14 10 28 9 7 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pipy -110 106 106 102 94 93 83 73 65 65 61 47 39 31 25 15 7 6 6 6 5 5 5 5 5 5 5 5 5 5 1 1 1 1 1 1 - - 1326 1313 1307 1301 1288 1276 1268 1256 1248 1232 1220 1212 1203 1195 1190 1181 1176 1170 1159 1149 1139 1138 1132 1122 1117 1115 1097 1091 1085 1077 1067 1054 1046 1031 1028 1017 1011 999 993 987 979 969 961 953 948 931 913 909 903 893 889 884 878 868 861 854 836 824 817 813 805 792 788 781 776 769 761 752 740 737 730 712 698 698 679 656 614 578 547 514 477 433 401 377 339 309 264 230 206 175 142 106 47 386 351 321 249 212 171 134 107 97 83 77 71 568 563 556 551 548 505 469 431 393 358 324 260 206 199 69 63 55 407 373 323 255 157 137 126 120 114 109 104 98 91 86 79 78 74 71 59 46 40 34 29 12 7 7 inadyn -109 98 90 74 500 486 475 467 465 459 447 427 397 391 381 363 349 341 335 326 315 307 299 296 292 284 277 271 269 265 258 253 250 248 244 244 - - 236 228 226 224 222 219 217 217 209 203 201 199 195 192 190 184 180 178 173 172 165 165 163 162 160 159 142 139 137 132 122 112 110 104 93 82 5 93 152 143 139 135 134 130 125 114 95 101 108 101 148 143 131 123 109 128 140 134 121 118 128 127 124 153 136 152 141 150 177 162 225 215 195 195 191 318 292 257 218 318 287 238 339 282 381 465 478 403 378 402 375 445 370 350 352 319 150 1274 1214 1155 1121 1094 1070 1043 1025 1003 979 956 942 922 868 814 764 709 657 605 511 433 400 238 311 284 252 227 137 301 244 187 351 322 301 262 236 202 158 111 176 148 152 108 134 134 123 84 104 57 86 80 paperless_ng -104 90 72 521 495 475 447 429 400 372 338 302 276 238 204 170 234 210 193 167 113 82 56 40 101 90 76 64 67 130 106 93 80 69 56 54 - - 61 44 48 31 12 43 27 8 23 4 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - collabora -100 86 74 109 107 99 97 95 87 79 73 56 46 34 22 14 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 566 558 557 - - 537 526 510 507 501 490 482 480 474 465 459 454 450 443 434 428 421 412 405 395 393 393 388 383 380 379 357 352 345 343 339 336 332 328 321 310 304 294 283 270 254 248 246 234 230 219 205 201 189 180 176 161 152 148 143 138 129 114 106 99 90 82 66 36 1348 1341 1338 1327 1321 1315 1309 1303 1292 1292 1282 1256 1231 1210 1188 1166 1142 1111 1092 1072 1043 1026 976 956 933 912 896 877 853 810 793 772 730 707 680 663 647 641 637 635 628 621 615 610 607 597 571 545 523 498 474 449 404 369 363 276 269 263 251 225 189 146 83 70 62 59 54 49 41 26 90 85 86 78 72 69 52 47 45 31 31 13 7 7 elasticsearch -97 88 80 44 84 70 6 64 66 68 74 61 38 6 60 28 52 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - maintainerr -92 82 78 20 6 66 60 74 115 76 34 99 67 46 93 69 38 34 36 43 31 11 53 45 36 24 36 58 48 39 27 18 26 33 7 7 - - 31 13 73 67 60 53 43 39 26 16 15 1 13 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ente -80 64 52 20 30 18 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - aurral -78 82 78 72 76 76 74 74 80 78 74 80 84 84 81 78 90 81 80 84 43 41 40 42 38 42 45 50 48 48 46 45 44 44 45 44 - - 50 44 38 44 44 39 38 40 42 41 45 42 42 42 38 32 35 38 55 38 45 45 42 39 39 39 48 39 38 40 45 45 48 46 45 36 43 43 35 40 39 38 49 47 57 46 43 43 40 60 50 42 57 49 41 41 58 50 46 40 38 46 42 36 37 55 48 37 35 37 37 39 80 80 54 73 62 69 117 96 64 57 58 57 61 41 55 64 64 52 54 60 45 48 43 50 35 626 592 559 544 540 536 531 529 525 520 517 511 511 474 437 400 359 325 283 217 167 161 35 35 31 106 73 86 111 52 41 29 45 32 38 32 33 32 30 31 36 26 37 30 23 20 24 38 22 26 26 flexget -76 82 66 97 74 97 6 102 101 103 100 86 87 136 114 92 82 23 64 55 43 26 33 28 31 61 53 42 36 51 41 57 49 46 43 43 - - 46 40 38 31 28 31 30 54 51 34 27 32 56 50 43 38 38 71 65 64 58 58 54 50 47 47 53 49 47 45 35 97 87 80 77 72 70 68 66 59 54 53 49 44 39 28 27 30 23 25 21 25 21 31 30 26 46 41 39 37 23 20 22 18 18 22 19 19 27 41 28 18 122 122 93 61 36 46 27 28 28 21 42 21 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - codex -72 86 52 96 68 42 60 48 71 46 60 34 68 54 44 20 18 0 24 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - manyfold -66 70 74 75 68 78 4 91 79 71 28 81 76 88 68 76 78 92 86 80 52 45 48 43 38 54 51 41 59 54 57 47 59 62 57 54 - - 61 62 56 60 65 59 51 56 62 63 55 52 57 62 56 63 55 60 54 73 68 68 61 72 62 61 79 74 69 68 90 81 70 86 81 76 70 97 96 91 81 70 115 112 104 88 81 83 141 133 130 126 119 97 123 116 106 97 84 124 123 117 109 94 89 108 102 86 95 155 152 146 134 134 123 220 179 137 133 265 223 192 159 178 158 292 171 233 167 389 342 290 229 265 209 154 102 290 227 169 120 186 155 125 110 326 306 290 267 244 195 144 202 143 305 255 166 208 176 195 181 152 128 371 305 232 118 194 161 140 119 88 98 146 119 104 139 121 98 75 155 155 134 110 95 82 17 17 code_server -56 32 61 148 144 132 98 109 95 75 30 92 68 50 96 74 53 31 4 50 29 25 31 19 22 12 29 27 26 26 20 14 8 22 33 33 - - 32 19 18 17 22 19 16 22 18 16 26 25 24 23 19 17 18 16 41 37 35 35 31 30 29 29 22 17 19 18 15 23 20 18 6 21 19 23 21 19 16 12 35 32 30 20 46 46 43 43 40 35 31 28 26 21 17 19 17 32 29 27 24 20 13 7 2 50 31 13 12 8 38 38 109 87 54 34 32 105 76 45 19 25 178 160 117 92 75 51 22 172 146 94 68 46 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - signalk -32 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - claude_desktop -30 14 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scrutiny-original -24 12 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scrutiny-fa-original -14 8 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - zoraxy -14 66 62 50 48 38 34 26 16 14 8 6 6 10 14 20 6 4 2 2 1 3 44 35 18 9 5 53 37 32 22 8 8 6 6 6 - - 9 4 4 2 2 0 6 2 6 5 5 4 9 13 11 9 8 13 9 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_cuda -6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - spotify_to_plex -4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-go-dev -1 380 291 492 464 426 402 357 333 315 289 270 253 232 199 165 130 104 213 367 290 201 319 145 493 398 308 212 9 149 81 218 73 100 28 61 - - 217 151 244 187 72 155 269 177 126 182 164 203 80 448 380 370 352 342 326 302 276 274 233 198 162 159 118 106 56 107 49 49 121 88 9 72 206 639 409 87 207 190 180 163 150 134 119 110 96 61 111 94 71 58 57 76 113 104 95 82 15 33 77 68 58 55 65 36 37 47 3 28 33 33 34 82 19 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pi -1 380 291 492 464 426 402 357 333 315 289 270 253 232 199 165 130 104 213 367 290 201 319 145 493 398 308 212 9 149 81 218 73 100 28 61 - - 217 151 244 187 72 155 269 177 126 182 164 203 80 448 380 370 352 342 326 302 276 274 233 198 162 159 118 106 56 107 49 49 121 88 9 72 206 639 409 87 207 190 180 163 150 134 119 110 96 61 111 94 71 58 57 76 113 104 95 82 15 33 77 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - battybirdnet-pi -0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pi-zach -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 11 6 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - test -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 43 35 23 17 8 22 11 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - overleaf +2026-07-17 2026-07-10 2026-07-03 2026-06-26 2026-06-12 2026-06-05 2026-05-29 2026-05-22 2026-05-15 2026-05-08 2026-05-01 2026-04-24 2026-04-17 2026-04-10 2026-04-03 2026-03-27 2026-03-20 2026-03-13 2026-03-06 2026-02-27 2026-02-20 2026-02-13 2026-02-06 2026-01-30 2026-01-23 2026-01-16 2026-01-09 2026-01-02 2025-12-26 2025-12-19 2025-12-12 2025-12-05 2025-11-28 2025-11-21 2025-11-14 2025-11-07 2025-11-06 2025-10-31 2025-10-24 2025-10-17 2025-10-10 2025-10-03 2025-09-26 2025-09-19 2025-09-12 2025-09-05 2025-08-29 2025-08-22 2025-08-15 2025-08-08 2025-08-01 2025-07-25 2025-07-18 2025-07-11 2025-07-04 2025-06-27 2025-06-20 2025-06-13 2025-06-06 2025-05-30 2025-05-30 2025-05-23 2025-05-16 2025-05-09 2025-05-08 2025-04-11 2025-04-04 2025-03-28 2025-03-21 2025-03-14 2025-03-07 2025-02-28 2025-02-21 2025-02-14 2025-02-07 2025-01-31 2025-01-24 2025-01-17 2025-01-10 2025-01-03 2024-12-27 2024-12-20 2024-12-13 2024-12-06 2024-11-29 2024-11-22 2024-11-15 2024-11-08 2024-11-01 2024-10-25 2024-10-18 2024-10-11 2024-10-04 2024-09-27 2024-09-20 2024-09-13 2024-09-06 2024-08-30 2024-08-23 2024-08-16 2024-08-09 2024-08-02 2024-07-26 2024-07-19 2024-07-12 2024-07-05 2024-06-28 2024-06-21 2024-06-14 2024-06-07 2024-05-31 2024-05-24 2024-05-24 2024-05-17 2024-05-10 2024-05-03 2024-04-26 2024-04-19 2024-04-12 2024-04-05 2024-03-29 2024-03-22 2024-03-15 2024-03-08 2024-03-01 2024-02-16 2024-02-09 2024-02-02 2024-01-26 2024-01-19 2024-01-12 2024-01-05 2023-12-22 2023-12-15 2023-12-08 2023-11-24 2023-11-17 2023-11-10 2023-11-03 2023-10-27 2023-10-20 2023-10-13 2023-10-06 2023-09-29 2023-09-22 2023-09-15 2023-09-08 2023-09-01 2023-08-25 2023-08-18 2023-08-11 2023-08-04 2023-07-28 2023-07-21 2023-07-14 2023-07-07 2023-06-30 2023-06-23 2023-06-16 2023-06-09 2023-06-02 2023-05-26 2023-05-19 2023-05-12 2023-05-05 2023-04-28 2023-04-21 2023-04-14 2023-04-07 2023-03-31 2023-03-24 2023-03-17 2023-03-10 2023-03-03 2023-02-24 2023-02-17 2023-02-10 2023-02-03 2023-01-27 2023-01-21 2023-01-13 2023-01-06 2022-12-30 2022-12-24 2022-12-16 2022-12-09 2022-12-08 Date +669538 626324 508490 295538 187951 202857 207298 140475 196724 195429 192371 161135 168787 147551 141128 128014 125333 116609 115189 108264 102680 82287 69115 77528 69094 60852 63855 80968 76650 76368 76680 74263 72911 76740 86290 85365 84859 - - 93916 89227 85492 81733 82398 80928 80058 77828 76925 73054 77998 74436 75347 75004 72775 69407 74365 76109 75314 73044 68415 68003 74989 75413 95755 95280 94242 91014 90233 88789 86207 85170 85194 86915 84812 82572 80743 84366 86769 84305 81481 76240 76908 75990 74319 76488 77734 75851 75809 74807 73967 74197 71724 73990 73372 74249 73736 71352 83606 88312 89846 87690 86596 92746 94295 90039 80926 72882 71830 70159 69833 67653 69012 69005 70922 69934 66029 66168 66686 64308 67070 65017 73318 76478 73677 74019 70426 62241 55701 53744 52326 49500 48175 42473 42336 39905 34679 46033 42786 42795 40675 39766 38360 36480 37779 40026 39455 41790 43334 50337 49386 48913 46173 43611 43648 42982 41225 38304 38828 30434 30232 30051 32193 31615 29210 26192 19917 20377 19409 19253 18223 18044 16127 15701 14436 13970 13610 14133 12886 12065 11500 10919 9777 7647 7966 4937 3908 3691 TOTAL +102238 86665 59486 31480 20032 18566 17110 15635 14159 12678 11315 10091 9013 7413 6046 4639 3399 3376 3356 3341 3313 3287 3254 3238 3225 3206 3199 3184 3170 3144 3134 3116 3099 3086 3568 3559 3559 - - 3510 3489 3470 3450 3439 3431 3418 3399 3389 3354 3338 3329 3318 3304 3292 3280 3272 3263 3253 3239 3232 3231 3221 3199 3186 3184 3132 3113 3091 3082 3062 3047 3030 3015 2994 2980 2967 2950 2932 2911 2883 2859 2847 2835 2818 2796 2778 2774 2759 2749 2737 2722 2711 2692 2669 2662 2632 2619 2604 2595 2582 2566 2561 2548 2530 2517 2505 2487 2464 2450 2440 2423 2407 2407 2384 2349 2303 2264 2222 2190 2150 2095 2068 2031 1999 1974 1910 1883 1845 1813 1780 1736 1693 1612 1574 1546 1469 1429 1378 1343 1321 1301 1277 1260 1239 1223 1199 1191 1178 1167 1122 1079 1036 1001 959 915 841 787 778 647 635 622 618 589 527 451 353 326 313 300 289 277 262 252 240 227 218 193 183 168 142 126 98 88 75 39 30 29 arpspoof +98379 82801 55582 27559 16050 14551 13058 11558 10047 8509 7130 5849 4717 3063 2295 2074 3473 3399 3345 3289 3011 2747 2690 2651 2608 2568 2536 2501 2472 2435 2402 2361 2327 2296 2281 2251 2249 - - 2182 2149 2107 2083 2057 2022 1996 1960 1919 1875 1836 1793 1749 1714 1678 1639 1607 1577 1530 1482 1446 1442 1412 1381 1338 1334 1152 1102 1059 1005 909 2227 2184 2140 1274 1239 1181 1123 1055 992 924 820 1466 1428 1380 1343 1299 1253 1210 1159 1113 1074 1036 976 918 884 824 767 700 1735 1699 1661 1626 1581 1534 1510 1466 1430 1381 1346 1303 1266 1233 1232 1151 1091 1008 940 880 806 732 628 530 5291 5234 5190 4304 1538 380 500 412 312 700 568 509 427 424 348 333 387 322 281 232 254 219 228 196 161 198 208 770 723 674 621 571 521 431 363 343 205 187 172 156 104 338 263 152 113 92 74 54 35 14 - - - - - - - - - - - - - - - sponsorblockcast +88165 69221 37756 41777 24666 20162 15315 1256 16250 13204 23749 20942 18923 16185 13117 13099 14344 13274 11743 13667 12086 8907 6058 4539 4066 3568 3045 9930 7365 5640 6404 5642 2945 7502 7128 6676 6621 - - 14629 12198 9690 7034 6552 6090 5414 5364 5520 4076 8230 5640 6309 5852 5180 2206 6224 5295 4448 3405 242 6 5682 7272 6290 6205 10604 8139 7186 6648 6146 5424 5515 9115 6697 6111 5412 7159 11125 10594 8800 6024 5941 5275 5828 5119 7030 6671 6207 5639 4939 4263 3415 4999 5472 4814 5539 4890 18272 17557 17232 16970 16729 16499 16274 14119 11142 8709 7725 7470 7186 6864 6583 6582 6246 5910 5512 5013 4412 5496 5045 4389 12880 12601 12221 11881 10434 7402 5947 5571 5139 4655 4160 3131 2395 2557 2129 5838 5509 5176 4858 4541 4136 3752 3228 3684 3192 5490 5246 4979 4713 4452 4159 3836 3472 3016 4488 4238 4010 3585 3255 2851 3665 3335 2880 3319 2766 4137 3852 3527 3207 2848 2476 2542 2400 2836 2366 3080 2786 2538 2238 1987 1630 1327 1176 847 588 555 portainer +87974 71957 44263 15879 1533 4760 5035 322 12978 11060 9266 7616 6058 3740 6494 4683 3030 2664 2247 695 1615 1136 615 1559 1153 838 1869 1609 1327 803 1332 909 797 1006 1342 1335 1306 - - 3567 3472 3370 3281 3162 3045 2935 2826 2734 2609 2516 2387 2255 2155 2075 1983 1877 1774 1677 1572 1477 1473 1343 1230 1116 1098 1353 1227 1106 985 838 680 296 5 1024 905 870 1718 1609 1501 1373 1252 1160 1060 949 815 1013 878 776 1206 1143 1069 1012 935 843 730 832 733 895 806 691 762 652 5900 5837 4452 2213 814 726 627 609 775 652 651 2399 2319 2230 2155 2068 1983 1896 1811 1727 1643 1565 1462 1259 1167 1071 971 860 768 660 460 351 344 358 373 330 692 630 570 487 426 1712 1662 1590 1542 1500 1457 1373 1302 1234 1154 1075 995 896 818 788 619 561 523 461 375 261 205 495 448 409 353 291 331 285 274 254 173 262 268 268 251 193 193 225 172 181 156 201 196 jellyfin +87430 71762 44486 16436 4822 3168 17372 15885 14386 12788 11218 9779 8500 6664 5074 3427 1945 1845 1723 1625 1548 1376 1277 1218 1121 1059 994 925 842 757 674 569 488 289 600 578 568 - - 564 573 510 442 208 208 208 208 770 719 689 651 624 601 566 530 479 391 324 1576 1538 1538 1514 1481 1459 1455 1363 1335 1309 1289 1260 1230 1211 1177 1152 1122 1097 1068 1040 1011 975 949 916 892 868 847 825 796 773 751 737 714 689 658 635 613 583 572 552 525 493 466 450 412 377 348 319 329 391 371 347 309 545 545 497 462 405 354 296 526 480 424 382 330 245 238 396 346 299 223 157 343 297 200 167 221 124 183 265 228 194 181 163 150 136 131 125 118 251 241 206 152 191 146 356 314 243 184 171 129 114 99 384 352 293 226 130 111 95 88 100 94 82 146 138 128 117 112 100 90 70 56 44 39 34 11 7 6 flaresolverr +81138 65589 38416 10433 9826 8389 6967 5524 4069 2603 1251 16 833 658 478 290 109 101 97 95 89 83 80 78 77 74 73 69 68 67 65 56 51 50 50 48 48 - - 42 34 34 33 33 30 28 25 73 66 65 64 63 59 57 57 56 53 52 50 47 47 44 43 41 38 32 30 29 26 54 47 45 41 39 34 31 27 377 377 376 374 372 366 364 353 344 342 342 342 339 335 333 331 329 328 321 321 321 319 317 316 315 312 308 307 301 299 295 295 293 293 293 293 258 244 209 185 152 128 94 64 48 184 162 146 103 79 54 40 97 70 41 121 98 76 28 105 75 48 35 34 29 27 25 22 21 20 17 52 120 87 50 390 359 327 263 214 211 90 87 84 81 56 189 129 38 26 20 17 17 46 43 40 34 28 27 23 21 20 25 25 24 22 19 6 3 3 mylar3 +23997 21558 19966 19356 9643 24812 22468 2430 22305 25659 24171 21797 23876 20636 24120 21748 24134 21638 21185 19921 17876 12032 8215 11110 8649 3807 5314 11483 10156 10195 10314 10172 10081 10076 10043 11067 10951 - - 11537 10765 9557 9367 11692 11023 10227 8929 8833 7902 8340 7762 8427 8277 8285 8229 8228 11416 10904 10325 9669 9633 8767 7401 26982 26925 25607 25173 24774 24363 23957 23559 23174 22845 22434 22023 21617 21190 20760 20328 19788 19317 18902 18464 17966 17528 17159 16773 16375 15944 15536 15163 14735 14288 13905 13564 13225 12882 12557 12187 11830 11475 11150 10830 10519 10206 9880 9545 9204 8880 8509 8102 7701 7701 7265 6739 6139 5257 6152 5411 9957 9569 9181 8879 8506 8131 7318 6854 6384 5921 5304 4283 4406 3468 5309 4756 3599 6078 5712 5363 5001 4643 4144 3597 4034 3492 4252 3817 3241 8250 8000 7767 7521 7293 7034 6803 6575 6325 6136 5808 5613 5426 5247 5029 4775 4482 4212 3978 3759 3498 3263 3035 2810 2532 2229 1960 1569 2036 1730 1356 1359 1359 1070 888 727 477 285 264 filebrowser +12212 11758 11304 10999 10101 9699 9262 8852 8362 7977 7565 7246 6833 6473 6031 5642 5248 4976 4696 4487 4257 3947 3753 3627 3492 3384 3252 3077 2936 2821 2718 2574 2440 2299 2166 2023 2013 - - 1647 1511 1387 1298 1172 1037 893 733 1262 1115 966 805 646 418 573 250 141 262 184 95 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - postgres_17 +8506 7594 4502 3948 7706 9960 9417 8697 7732 10309 9774 9165 8442 7216 5738 4860 3040 670 6846 6020 4442 4315 3305 4492 3804 2138 1145 3090 2566 1 197 192 3312 3150 2996 2728 2664 - - 1748 1512 2499 2397 2271 2122 1970 1840 1626 1374 1366 2482 2332 1872 1220 910 759 587 1229 1003 842 834 1184 1069 955 943 656 980 874 753 595 456 517 405 207 353 239 0 64 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - netalertx +5165 5131 5095 5038 4944 4896 4839 4760 4713 4594 4402 4181 3971 3725 3475 3236 3002 2914 2858 2813 2772 2711 2672 2638 2601 2568 2535 2483 2450 2413 2377 2344 2309 2264 2246 2214 2208 - - 2118 2080 2042 2013 1975 1942 1908 1868 1833 1785 1733 1648 1578 1511 1400 1243 991 1479 1387 1225 15 3 2846 2726 2630 2610 2068 1946 1842 1719 1577 1441 1293 1076 1394 1227 1053 792 705 965 1370 1168 1005 861 372 3232 3124 3028 2943 2844 2744 2647 2554 2460 2359 2274 2169 2067 1973 1894 1793 1709 1611 1513 1435 1394 1345 1310 1255 1202 1163 1115 1071 1071 999 950 886 831 764 708 633 537 467 399 322 243 341 263 170 690 629 561 493 376 313 252 128 164 254 194 158 130 95 69 51 37 72 29 289 274 226 183 141 102 62 16 223 166 163 31 18 5 - - - - - - - - - - - - - - - - - - - - - - - - - - postgres +4890 4533 4039 5006 4366 3910 3918 404 2609 4234 3827 1790 4213 3922 3508 3514 3524 4060 3798 3402 2324 1903 1445 1310 1172 1000 67 818 1443 974 131 1731 1589 1436 1571 1397 1356 - - 1318 1364 744 1299 1547 1446 1274 1264 558 551 549 1137 1170 1035 573 9 1987 1940 1898 1856 1777 1773 1746 1687 1637 1633 1372 1268 1129 1338 1246 1077 1325 1202 1073 640 1084 959 821 195 877 711 567 446 951 1051 904 793 660 1005 889 704 303 574 571 1153 1041 920 738 1030 951 831 1064 978 889 765 799 654 690 629 718 632 730 730 641 477 327 627 716 622 809 705 595 554 648 583 619 519 286 6 972 914 853 732 689 641 533 485 421 347 289 233 808 771 732 710 680 660 631 607 567 520 468 415 372 330 258 197 168 175 142 230 203 153 169 321 231 185 129 606 588 562 542 501 465 434 404 373 368 328 276 192 142 7 90 53 38 35 mealie +3406 3273 3143 3079 2959 2879 2781 2693 2607 2462 2382 2340 2273 2215 2131 2061 1930 1815 1753 1699 1625 1527 1441 1366 1253 715 4301 4238 4201 4177 4123 4081 4033 3997 4042 4001 3996 - - 3910 3884 3861 3830 3802 3772 3749 3718 3683 3640 3608 3575 3540 3511 3489 3454 3431 3405 3375 3351 3328 3326 3291 3269 3249 3244 3165 3132 3089 3058 3022 2992 2943 2902 2863 2828 2793 2760 2705 2656 2584 2546 2506 2462 2415 2350 2292 2252 2206 2173 2135 2086 2023 1966 1914 1871 1820 1781 1730 1681 1633 1576 1525 1477 1447 1412 1357 1314 1258 1179 1093 548 2125 2125 2052 1970 1870 1794 1714 1654 1561 1466 1383 1282 1092 910 927 1710 1628 1527 1419 1289 1169 916 951 831 477 1416 1310 1145 1001 874 811 755 653 860 797 726 640 511 860 753 639 533 1392 1321 1240 1163 1124 965 939 910 887 836 761 656 515 492 834 803 755 709 672 607 450 490 416 365 279 254 504 397 403 272 289 35 59 39 myelectricaldata +3151 886 41574 13233 6367 4500 3735 1912 1879 5209 3682 2341 2132 1882 1707 129 2857 2626 2425 2131 1774 1711 43 1161 57 1377 1236 1062 870 1920 1759 1541 795 496 2233 2125 2113 - - 1840 1761 1661 1575 1480 1381 1246 1115 957 1098 950 333 974 808 1338 1287 2120 2043 1948 1862 1734 1731 1599 1428 2508 2501 2125 2029 1919 1834 1695 1528 1352 2305 2193 2085 1974 1860 1743 1602 1417 1234 1629 1492 1349 1150 1438 1316 1117 1004 883 693 1119 1246 1081 1383 1270 1149 1019 1952 1865 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1787 1711 1640 1561 1508 1417 1321 1214 1112 981 1255 1165 1165 1059 933 801 647 1201 1063 887 1843 1734 1654 1540 1439 1180 1009 832 615 803 787 557 181 428 826 472 819 643 582 819 712 590 485 894 828 739 638 1466 1404 1300 1216 1123 1019 916 817 672 526 610 384 352 1101 1049 963 847 694 481 709 627 556 461 359 363 504 363 293 364 340 340 325 323 323 337 312 407 266 240 225 qbittorrent +3079 2837 2490 2842 994 2391 3288 3074 2773 2428 3448 3211 2892 2483 2488 3587 3334 3078 2724 2368 2280 1424 1181 1004 801 708 524 1379 1220 1067 950 788 552 1566 1377 1246 1225 - - 1242 1060 1321 1181 1003 458 1277 1125 954 1399 1296 1183 1064 895 472 1266 1141 985 1340 1228 1118 1111 942 23 1246 1231 898 751 580 953 36 926 1126 950 1404 1262 1130 950 1463 1335 1198 1054 886 875 652 537 1001 838 1113 996 843 1139 1018 849 1000 839 830 959 816 31 1019 917 752 1073 986 897 740 488 538 352 732 65 65 65 45 31 9 1160 1016 883 730 1132 1001 867 625 1101 836 665 798 653 479 339 619 457 546 315 302 760 579 750 620 443 453 545 403 455 342 211 353 203 429 700 576 419 500 653 653 545 456 558 499 404 758 649 497 310 481 367 209 298 299 359 394 249 365 269 316 429 325 238 468 468 405 328 283 193 124 94 nextcloud_ocr +2870 2851 2837 2831 2809 2795 2779 2761 2751 2724 2693 2681 2661 2647 2624 2604 2546 2512 2504 2490 2460 2421 2368 2356 2337 2331 2321 2309 2294 2285 2279 2261 2247 2232 2695 2689 2688 - - 2665 2646 2630 2625 2615 2607 2594 2585 2572 2555 2546 2533 2532 2527 2519 2508 2504 2499 2491 2482 2476 2476 2468 2462 2450 2448 2411 2401 2394 2388 2369 2359 2350 2345 2339 2328 2316 2303 2291 2280 2266 2252 2245 2239 2232 2214 2201 2197 2187 2179 2171 2155 2134 2113 2106 2101 2086 2085 2079 2066 2059 2054 2049 2038 2030 2021 2007 2001 1990 1986 1979 1967 1961 1961 1941 1909 1872 1828 1796 1762 1724 1676 1650 1626 1607 1583 1534 1508 1483 1463 1436 1401 1378 1297 1259 1218 1156 1117 1083 1054 1037 1023 1017 1007 1003 1000 994 988 982 977 946 909 867 829 785 747 679 628 617 489 480 472 462 432 376 310 215 189 177 170 166 158 153 138 126 114 104 89 87 82 64 52 46 43 37 19 13 13 teamspeak +2822 2814 2806 2806 2788 2780 2774 2767 2750 2686 2525 2351 2172 1986 1793 1610 1419 1401 1382 1376 1353 1338 1310 1288 1269 1254 1228 1205 1172 1152 1128 1107 1089 1072 1056 1035 1033 - - 981 959 944 929 917 895 874 852 832 812 787 773 757 724 710 693 684 673 653 629 603 603 584 551 527 521 440 395 2286 2265 2238 2206 2193 2162 2137 2101 2068 2043 2004 1976 1939 1902 1878 1857 1839 1815 1791 1763 1727 1699 1680 1659 1632 1614 1591 1571 1549 1532 1515 1488 1462 1433 1407 1382 1357 1322 1297 1271 1246 1234 1222 1207 1194 1194 1182 1154 1128 1100 1076 1056 1026 991 963 948 924 898 859 832 807 779 758 723 695 627 599 566 516 486 450 418 402 386 377 357 340 328 318 302 296 283 245 207 169 131 308 280 226 183 166 562 550 541 522 477 417 348 242 221 209 196 186 180 171 145 144 133 119 102 103 150 132 119 99 73 64 33 27 27 overseerr +2388 2176 2009 1989 1901 1853 1815 1792 1751 1695 1646 1583 1536 1468 1408 1336 1286 1208 1160 1112 1049 982 925 874 829 779 702 560 171 2012 1793 1577 1438 1390 1351 1313 1308 - - 1227 1202 1171 1146 1122 1097 1067 1036 1015 983 947 920 888 862 835 808 780 747 702 657 593 591 634 583 1170 1164 1051 1027 999 965 932 887 851 816 790 747 714 672 633 587 537 478 753 711 670 632 595 554 505 452 488 436 510 446 472 436 495 461 412 409 666 633 612 594 558 535 521 488 461 424 393 344 476 476 414 347 512 456 403 355 401 334 133 119 576 541 447 410 358 295 264 448 389 299 251 302 211 414 353 302 262 247 217 187 157 192 166 135 498 476 419 364 309 262 199 143 296 229 207 53 47 28 41 - - - - - - - - - - - - - - - - - - - - - - - - - portainer_agent +2261 2170 2090 2045 1925 1848 1798 1744 1673 1613 1551 1496 1414 1331 1238 1141 989 1095 1010 452 780 685 621 571 539 495 444 397 332 5 911 880 836 797 757 717 713 - - 607 561 528 496 424 287 280 788 740 690 637 553 236 1242 1210 1194 1181 1148 1110 1075 1052 1049 1012 976 947 938 835 803 768 733 688 640 605 574 531 470 413 1174 1128 1087 1042 1010 984 951 925 880 842 798 760 714 668 609 497 1584 1539 1501 1458 1417 1384 1358 1332 1307 1273 1233 1208 1185 1155 1136 1099 1064 1037 993 962 961 905 860 809 756 705 652 582 506 412 1111 1054 1013 923 877 835 789 732 687 631 531 490 453 322 357 547 492 453 420 350 302 247 242 199 169 137 415 352 660 606 554 506 456 367 281 404 279 291 215 394 345 272 137 235 373 337 306 282 232 284 228 298 268 243 201 170 122 188 144 176 150 131 91 59 57 guacamole +1861 1677 2055 1950 1700 4641 4392 4168 3939 3677 3414 3198 2982 2728 2451 2210 1956 1824 1599 1080 959 798 656 2480 2442 2410 2355 2311 2259 2215 2172 2124 2078 2029 2015 1948 1940 - - 1808 1765 1731 1691 1651 1612 1567 1539 1500 1463 1433 1394 1359 1323 1274 1246 1212 1170 1122 1080 1041 1038 996 963 917 909 749 704 656 605 550 480 425 0 685 625 538 455 776 724 622 539 429 1945 1874 1825 1770 1714 1640 1587 1524 1474 1433 1384 1341 1287 1237 1182 1137 1082 1034 990 948 903 849 800 738 648 1184 1137 1102 1061 1015 1015 941 850 772 679 593 499 716 602 499 390 82 1556 1399 1331 1255 1164 1085 995 885 673 525 412 1073 989 910 836 771 719 668 628 572 513 452 380 354 285 267 265 291 272 271 280 283 234 316 313 246 225 233 263 271 321 319 216 211 213 221 274 203 206 277 145 202 333 260 277 254 254 294 218 282 205 204 195 transmission_ls +1859 1837 1823 1795 1724 1714 1688 1665 1649 1573 1396 1216 1023 832 644 450 260 224 198 162 123 99 79 65 49 24 4 128 119 103 84 63 40 14 6 72 72 - - 71 67 66 66 66 66 66 66 66 61 61 60 60 59 59 59 53 49 53 78 68 68 61 44 57 54 50 55 60 45 57 48 55 61 52 59 49 54 56 53 51 49 57 50 55 54 51 55 47 51 70 58 54 61 150 145 133 120 111 104 96 76 61 65 71 59 60 77 67 67 75 68 124 124 96 140 105 85 114 20 120 103 106 98 107 87 129 102 99 115 114 116 115 118 107 134 67 146 115 82 82 83 89 90 79 90 82 79 76 106 99 97 95 88 87 110 111 72 111 79 71 64 84 105 116 143 79 70 57 58 56 71 65 60 59 49 60 48 54 62 52 52 43 39 65 49 42 41 readarr_nas +1817 1641 1453 1364 1020 847 653 470 275 2403 2072 1791 1474 1145 798 482 162 149 138 138 130 116 110 102 93 233 222 211 207 200 197 179 176 164 160 154 154 - - 134 121 107 105 103 96 87 77 71 54 74 214 208 205 199 197 189 182 176 173 165 164 158 158 153 153 142 137 134 128 124 116 110 102 100 90 83 69 63 55 9 109 102 86 91 470 458 449 438 429 424 418 412 407 397 390 379 363 356 350 339 336 327 323 313 303 288 282 279 276 274 266 256 256 235 206 172 134 92 179 136 95 682 655 626 589 513 481 443 405 343 302 269 198 160 125 46 187 128 81 57 112 109 99 90 87 75 71 67 66 29 187 150 115 74 644 571 518 510 386 384 376 374 352 301 240 145 113 107 106 101 97 90 84 74 64 67 61 56 51 29 29 20 8 44 28 26 26 webtrees +1772 1735 1719 1703 1665 1653 1630 1605 1589 1523 1355 1171 979 787 601 413 219 195 185 167 153 137 132 119 107 95 39 159 144 132 118 108 89 123 112 98 96 - - 99 143 137 125 116 96 80 186 174 159 151 142 131 122 117 106 95 88 142 132 117 117 109 101 93 89 103 88 141 134 128 118 111 100 87 156 141 134 118 108 99 82 146 126 117 103 95 88 77 94 85 74 111 102 93 86 74 117 112 99 92 84 77 74 174 163 156 149 143 138 131 122 110 110 215 188 147 110 365 330 292 248 216 185 148 120 385 355 318 296 262 234 199 131 334 295 228 191 150 120 94 81 105 97 94 91 84 79 77 110 116 111 104 101 110 139 133 77 205 76 55 71 141 109 224 150 82 76 66 64 75 69 60 60 62 50 67 58 43 65 58 58 52 42 68 51 45 44 lidarr_nas +1759 1715 1675 1612 1514 1466 1390 1329 1252 1182 1109 1062 992 921 839 783 728 651 581 514 432 364 249 312 267 50 370 339 298 269 215 334 291 232 448 427 424 - - 342 311 293 262 215 578 551 532 505 483 468 443 423 410 390 363 348 329 304 275 245 244 171 1001 983 983 911 890 876 862 843 824 799 769 746 718 696 670 648 623 586 890 842 794 767 734 703 679 643 605 563 519 475 419 394 355 310 274 237 196 156 116 142 58 86 24 473 439 402 375 347 312 273 273 202 148 158 878 828 762 702 625 552 493 419 359 224 128 46 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - whatsapper +1680 1569 1450 1208 1393 1 1489 1245 1371 1635 1485 1313 1404 1384 1432 1449 1435 1425 1406 1394 1489 1059 946 879 809 712 1061 981 898 809 682 298 646 606 751 660 640 - - 679 755 670 673 657 977 931 887 843 758 678 672 859 784 695 1578 1534 1494 1451 1395 1352 1350 1304 1234 1175 1167 971 931 877 823 757 658 998 941 870 797 701 1156 1089 1007 926 818 696 1054 981 926 858 811 737 645 862 807 742 650 701 602 894 846 804 740 661 573 671 579 781 718 678 590 1025 970 921 863 814 814 718 619 84 839 764 687 562 586 584 595 501 501 511 773 675 579 696 583 782 539 522 543 1171 1097 1007 918 855 785 726 673 615 573 503 447 463 659 583 485 623 537 452 622 531 441 492 465 567 496 392 596 490 620 472 711 651 561 472 692 642 565 495 397 374 437 353 493 407 393 377 98 359 91 321 313 epicgamesfree +1577 1537 1482 1460 1396 1362 1307 1254 1215 1161 1115 1077 1024 974 923 876 823 751 674 572 1284 1241 1196 1171 1142 1115 1092 1055 1026 998 970 944 913 883 851 825 824 - - 766 733 708 685 669 647 615 595 573 543 518 498 465 451 435 402 371 337 302 259 83 73 112 136 118 115 102 84 71 65 59 61 52 8 54 35 16 25 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - webtop +1554 1668 1738 1484 2297 2238 2164 2089 2009 1891 1730 740 1734 1723 1739 2236 2147 2049 1915 1739 1730 1006 692 1379 1318 1262 1208 1143 1081 1016 947 824 785 1031 983 927 921 - - 730 827 742 715 750 415 755 756 570 471 738 681 615 568 518 454 481 448 409 683 583 575 360 1121 1073 1067 842 750 737 743 1101 1049 911 537 481 547 475 546 455 475 669 609 553 486 412 469 403 571 533 480 424 363 530 492 463 424 390 358 313 440 404 378 341 310 270 684 651 634 620 603 579 560 539 539 482 438 384 335 282 31 352 279 329 271 362 305 334 268 162 250 468 419 374 272 215 216 336 289 234 187 151 116 251 233 218 208 189 167 223 193 452 411 365 320 266 209 196 150 240 99 176 145 179 407 339 251 259 232 211 194 169 139 200 167 150 123 143 132 184 157 93 114 94 73 52 44 34 32 tandoor_recipes +1378 1515 1695 1514 792 1334 1460 228 1628 1473 1478 805 1642 1415 1623 1460 1423 1408 1331 1441 1687 906 2208 2146 2105 2049 1990 1943 1908 1878 1849 1804 1769 1733 1709 1670 1665 - - 1562 1534 1500 1474 1447 1413 1402 1383 1355 1317 1294 1267 1226 1208 1188 1168 1135 1114 1092 1057 1029 1026 936 896 870 867 782 763 749 728 714 694 670 653 635 611 590 567 538 517 484 464 438 420 391 361 336 196 327 577 563 532 508 482 466 449 415 399 375 343 310 278 240 374 361 339 315 292 268 236 474 439 416 416 377 340 297 256 202 345 307 259 205 274 229 645 568 541 501 457 433 392 345 256 218 180 100 274 230 196 166 484 470 453 438 426 419 404 385 371 332 300 271 242 208 179 124 79 503 411 391 371 363 335 289 233 159 131 131 266 256 237 225 203 184 171 150 150 136 113 91 89 71 43 60 38 22 20 scrutiny-fa +1275 1195 1042 1198 1026 1246 1186 1107 1012 1320 1295 1239 1167 1082 980 970 1179 1112 986 788 641 519 39 583 530 477 199 465 686 655 612 579 535 499 447 425 418 - - 699 668 644 626 592 559 527 499 464 387 601 577 544 515 492 459 404 403 768 741 719 719 688 655 634 629 512 465 405 408 457 414 482 440 488 426 409 419 421 423 408 404 400 405 398 427 383 396 387 454 426 373 392 388 360 420 376 374 373 364 409 370 364 385 1510 2162 1045 382 370 378 394 388 483 483 417 416 460 379 428 23 433 430 436 426 352 356 403 457 460 457 474 485 468 454 518 439 377 430 422 336 384 391 65 65 65 65 65 65 65 65 35 1424 1360 1294 1246 1191 1107 1033 1008 865 829 803 773 722 639 546 425 380 346 320 283 247 246 288 248 191 243 192 192 217 146 146 121 90 88 55 37 35 sonarr_nas +1136 1106 1074 1051 995 964 934 909 862 819 799 765 739 707 660 632 606 569 517 491 457 424 402 389 360 339 317 304 276 254 227 202 181 145 243 220 219 - - 147 112 192 184 169 151 129 107 83 63 35 7 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - omni-tools +1105 1063 1028 988 916 872 820 769 687 607 514 248 823 786 748 705 615 563 501 457 415 344 306 279 242 195 204 852 832 815 796 760 724 700 673 650 648 - - 574 548 519 495 468 447 424 399 376 354 331 303 280 259 239 219 193 175 152 129 110 108 88 63 35 33 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - librespeed +1028 1024 1020 1020 1018 1018 1016 1016 1008 1006 1000 996 984 976 976 958 948 940 939 939 939 939 939 939 939 939 939 939 939 939 939 931 931 931 1390 1387 1384 - - 1384 1378 1378 1378 1378 1378 1378 1378 1378 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1372 1369 1369 1369 1369 1368 1368 1368 1368 1368 1368 1368 1368 1368 1368 1362 1356 1356 1356 1356 1356 1356 1356 1354 1354 1354 1348 1348 1348 1348 1348 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1346 1334 1314 1280 1256 1228 1194 1169 1143 1123 1101 1085 1071 1036 1020 1004 988 962 947 923 875 853 831 783 759 728 704 691 691 691 691 691 691 691 691 691 691 659 629 599 569 539 508 446 398 398 278 278 275 275 251 203 143 53 38 31 31 31 31 31 31 30 30 120 110 99 91 68 65 53 42 35 16 11 9 papermerge +1016 988 953 905 835 799 766 735 686 641 603 556 502 414 868 813 765 707 666 623 567 457 922 876 849 811 793 761 739 718 703 667 628 598 575 553 550 - - 496 471 446 422 401 371 326 436 413 378 354 336 307 285 259 236 217 197 177 160 135 131 0 778 753 750 664 638 614 602 590 572 563 544 528 509 492 476 459 439 420 392 370 342 313 276 556 536 506 486 475 460 434 411 376 362 334 301 280 257 228 296 279 260 221 902 886 873 860 841 828 813 791 791 770 738 697 656 621 587 555 518 485 458 422 400 329 288 249 217 182 385 335 256 219 193 116 155 113 143 274 252 238 215 201 185 172 156 129 137 149 139 46 139 144 154 152 108 146 111 101 61 103 46 111 99 102 84 21 107 94 84 101 105 88 51 23 66 10 86 22 22 73 72 81 69 73 69 calibre_web +1015 2785 2503 2191 1238 930 2191 1773 2108 1823 1776 944 1860 1527 1457 1620 1327 1467 1178 962 943 764 568 423 298 145 67 70 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - filebrowser_quantum +1000 799 584 464 1035 827 637 404 341 329 299 136 448 405 381 341 309 248 292 215 247 201 178 153 117 351 336 322 308 294 285 269 261 243 233 221 220 - - 184 161 143 130 165 146 126 224 204 187 173 154 138 116 331 309 301 293 282 271 260 260 241 218 200 199 1298 1291 1282 1272 1261 1244 1236 1222 1201 1182 1161 1151 1135 1112 1094 1078 1069 1051 1031 1016 997 981 969 955 934 921 911 897 889 879 866 858 850 832 824 814 806 788 774 767 749 733 720 707 694 683 678 678 665 642 612 585 564 538 510 473 451 431 414 393 346 318 295 267 231 207 188 126 100 138 74 98 53 267 248 234 214 206 195 189 186 178 171 162 129 94 50 548 510 485 435 399 395 307 304 293 290 274 236 184 115 94 81 76 66 52 43 169 153 143 138 131 119 111 89 75 65 55 46 29 17 15 wger +992 1247 1156 1073 367 1479 1425 1374 1321 1249 1195 1145 1047 951 957 433 972 900 830 782 717 623 580 538 480 440 188 616 580 548 512 476 413 552 522 495 491 - - 589 555 518 492 450 389 664 640 622 590 553 533 493 464 447 420 371 434 411 366 394 392 493 459 431 423 438 387 371 463 425 386 471 444 395 528 493 456 393 481 423 368 484 452 421 368 444 419 366 404 362 446 420 380 472 450 417 388 352 434 419 385 341 496 473 449 411 369 544 519 497 454 409 409 559 510 449 370 804 758 706 644 594 543 440 357 863 797 756 703 643 582 497 590 518 447 387 513 443 343 442 386 414 362 299 519 481 451 420 376 704 640 567 497 436 354 599 529 491 341 286 291 291 267 503 411 280 382 347 322 281 250 86 290 257 222 235 191 186 208 200 200 128 95 91 47 31 29 radarr_nas +960 936 909 889 847 825 803 772 743 721 699 677 645 593 569 541 511 477 447 423 399 369 343 314 299 284 279 263 253 235 220 194 170 134 3428 3412 3409 - - 3367 3355 3336 3324 3312 3306 3294 3274 3258 3238 3216 3211 3182 3175 3163 3161 3151 3141 3133 3126 3114 3113 3104 3085 3065 3063 3019 3008 2989 2968 2959 2938 2925 2913 2899 2874 2853 2838 2818 2788 2765 2735 2718 2700 2686 2666 2650 2639 2627 2617 2589 2576 2558 2537 2521 2496 2472 2458 2450 2440 2423 2414 2404 2391 2381 2367 2357 2342 2327 2310 2299 2289 2268 2268 2249 2215 2165 2131 2088 2053 2010 1967 1936 1903 1867 1837 1767 1733 1693 1656 1626 1578 1540 1468 1429 1388 1314 1285 1253 1208 1183 1176 1163 1152 1141 1134 1125 1113 1105 1084 1038 995 949 907 867 827 759 707 700 577 568 557 544 519 461 389 283 261 249 238 231 219 210 195 189 179 166 152 133 123 108 98 80 66 51 23 15 14 xteve +939 893 846 818 706 664 588 509 451 357 301 327 266 182 168 94 16 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bentopdf +938 910 878 866 828 794 763 731 709 657 641 608 594 570 545 515 479 433 417 391 371 340 320 299 285 276 271 247 232 211 191 178 166 142 296 284 281 - - 263 236 221 211 202 185 170 160 144 115 88 403 391 377 360 345 332 312 286 268 244 242 230 204 182 178 411 401 380 358 343 318 307 296 275 260 251 240 229 218 203 183 172 151 138 112 308 291 276 257 250 238 229 211 198 190 177 167 159 145 130 105 376 368 362 354 340 335 321 304 290 279 265 265 213 182 133 618 576 545 508 446 410 382 351 324 260 221 163 127 83 13 32 267 223 186 112 78 36 1065 1044 1031 1023 1011 1006 998 989 982 979 973 937 897 864 827 789 750 685 633 623 498 489 483 471 438 383 317 223 203 193 190 183 171 165 154 149 143 132 122 118 104 85 76 67 56 49 24 20 18 baikal +935 905 863 804 674 678 2414 2372 2296 2164 1964 1749 1515 1309 1090 891 694 663 623 585 553 480 422 405 370 323 401 373 351 319 290 339 312 266 276 1242 1241 1222 1206 1193 1174 1156 1136 1120 1104 1083 1074 1061 1039 1025 993 974 954 938 922 894 873 848 836 814 814 793 784 769 767 712 694 685 662 646 636 618 603 577 562 539 517 492 468 448 426 405 388 373 348 326 305 281 261 233 1015 996 972 952 934 919 911 896 882 861 848 837 830 809 797 778 764 745 721 700 676 655 655 609 571 512 451 399 344 289 208 645 601 560 524 450 404 346 289 228 147 714 624 564 521 419 380 323 270 231 200 173 144 218 200 177 158 140 394 350 301 250 205 139 466 376 315 298 149 133 531 520 478 417 328 216 186 170 155 138 121 88 303 282 266 241 221 198 168 148 125 102 87 80 45 21 19 addons_updater +883 823 759 713 612 539 442 345 778 722 702 662 632 584 564 542 496 441 413 375 351 310 274 244 206 169 361 332 297 275 254 231 209 154 267 253 252 - - 179 143 272 250 231 211 183 157 145 114 91 303 286 268 245 229 216 198 184 156 138 138 115 91 61 59 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - emby_stable +836 738 772 981 872 758 975 918 833 740 940 862 758 841 721 838 760 829 727 719 579 471 395 643 605 550 507 457 415 362 368 438 384 231 362 451 448 - - 230 4 362 466 418 352 380 325 311 202 485 428 358 340 466 414 353 530 511 479 450 448 416 364 457 448 365 355 346 541 512 462 433 365 332 446 419 374 329 428 383 327 420 373 330 409 368 318 378 338 291 391 359 314 323 287 376 334 284 371 326 278 335 292 261 315 278 382 343 317 275 257 374 374 333 283 360 293 325 262 366 314 261 24 215 324 212 332 286 237 300 249 343 234 307 262 129 193 127 252 196 189 125 181 171 151 172 976 968 953 927 881 841 800 757 718 666 616 598 501 477 453 436 396 350 291 219 187 148 161 186 150 145 86 127 83 155 124 112 127 115 115 125 98 112 86 107 69 calibre +815 709 980 931 837 772 659 68 407 654 669 286 793 717 644 628 685 605 582 572 559 360 314 270 212 241 15 432 372 448 403 369 421 368 373 372 359 - - 327 317 289 251 416 378 342 300 410 367 343 301 261 293 247 277 233 247 280 238 243 241 204 230 253 252 280 247 251 208 452 401 403 361 369 490 426 493 431 445 486 417 567 525 475 405 434 594 560 511 475 443 391 597 576 548 512 478 430 391 343 108 77 532 498 469 425 357 335 456 420 382 597 597 530 477 392 553 489 405 471 388 469 383 556 496 347 437 359 443 367 374 343 448 388 337 179 395 316 336 271 357 302 257 238 270 232 244 329 281 412 348 283 272 442 382 286 222 293 262 224 340 313 251 386 287 220 217 217 249 224 215 226 214 395 371 339 300 287 251 207 169 163 144 110 68 47 47 fireflyiii +806 752 712 689 614 584 511 48 655 591 515 255 698 652 595 553 519 457 404 355 354 308 274 241 206 187 161 122 254 303 260 458 440 427 406 388 386 - - 325 294 255 321 265 367 324 267 368 344 327 293 262 519 505 492 476 456 436 419 407 406 379 361 342 338 241 330 318 290 260 250 256 768 752 729 717 685 666 645 627 596 578 558 536 518 498 482 462 443 430 412 394 376 363 347 331 314 303 272 245 216 186 875 860 841 822 803 780 765 743 725 712 712 686 665 634 607 579 541 504 467 440 410 382 354 285 250 203 159 266 227 185 247 218 187 86 213 157 166 129 173 156 140 117 450 433 421 409 386 344 306 257 215 164 272 199 129 331 194 184 171 153 247 177 97 203 180 151 138 120 104 108 150 133 116 96 159 149 130 105 85 69 74 81 48 24 23 joplin +768 804 909 801 412 749 778 103 900 788 785 428 898 708 899 789 765 751 744 709 805 463 866 823 790 756 726 683 663 628 610 579 558 523 504 478 473 - - 399 368 335 313 289 246 225 195 158 127 1041 1022 983 966 943 919 901 883 867 833 808 805 666 597 579 575 509 499 488 475 468 445 432 416 406 382 366 353 335 317 298 283 270 249 234 213 189 104 182 321 314 300 292 277 265 240 214 194 168 59 191 168 136 230 210 201 187 167 150 126 353 337 326 326 283 244 205 167 125 237 209 174 128 220 164 606 540 497 460 420 386 345 308 237 200 150 70 220 177 144 114 797 792 778 770 757 751 740 732 717 684 658 631 603 575 545 497 459 442 348 335 320 313 290 248 188 112 91 104 158 144 132 119 103 81 130 127 112 97 74 81 81 67 48 84 58 58 58 scrutiny +731 510 1431 1334 958 760 524 52 694 513 459 217 524 636 417 620 445 370 332 302 274 220 416 396 379 363 348 324 299 276 258 239 225 206 188 160 154 - - 256 232 217 202 184 156 130 182 158 133 112 173 148 136 122 106 97 73 49 32 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_power_tools +723 711 696 676 653 625 600 578 558 527 507 479 430 387 340 281 209 821 793 765 737 684 665 656 637 626 618 604 587 579 573 559 540 520 515 494 491 - - 461 443 428 419 408 396 385 379 366 350 327 312 303 295 282 267 250 239 217 180 1708 1708 1693 1684 1671 1669 1624 1602 1571 1558 1543 1530 1522 1502 1493 1483 1465 1454 1437 1421 1399 1373 1357 1331 1311 1300 1276 1261 1237 1224 1204 1190 1181 1166 1156 1147 1132 1113 1105 1087 1073 1062 1054 1038 1029 1013 992 977 956 947 938 918 901 901 883 844 798 763 715 683 638 586 546 520 485 456 386 347 311 272 244 198 133 218 170 135 372 325 281 228 200 182 165 157 144 135 111 83 1008 994 954 904 863 824 772 735 657 594 577 444 422 414 397 360 297 222 109 95 256 245 233 216 204 183 162 148 140 117 90 72 145 145 126 80 97 67 54 54 transmission_openvpn +711 699 681 681 655 649 623 608 594 566 558 546 528 508 486 475 456 439 433 400 388 374 360 356 346 335 325 310 301 292 289 280 275 265 262 247 247 - - 226 213 211 202 192 186 182 173 164 156 146 131 123 118 110 100 93 73 214 206 201 200 193 184 176 176 151 145 138 130 118 98 87 257 252 243 230 218 212 198 182 170 158 137 133 116 103 83 1597 1585 1579 1569 1560 1548 1543 1538 1527 1521 1514 1511 1503 1496 1491 1481 1476 1470 1455 1445 1443 1430 1423 1417 1409 1409 1396 1375 1355 1326 1298 1269 1248 1219 1197 1180 1151 1132 1077 1056 1025 1010 991 968 935 879 858 832 788 764 741 720 706 702 698 687 681 676 670 662 659 649 620 590 559 529 503 478 422 385 376 292 279 269 260 232 193 146 76 47 61 49 35 39 31 17 9 - - - - - - - - - - - - - binance_trading_bot +687 681 670 668 660 648 642 637 632 628 618 608 592 582 578 570 568 560 556 556 554 554 551 550 549 544 543 540 537 530 528 522 521 519 513 512 512 - - 505 500 496 494 491 491 488 488 487 482 479 477 475 472 471 471 471 469 466 466 462 462 462 462 461 461 452 450 447 447 447 443 438 435 429 423 421 416 412 411 409 409 408 405 402 393 389 386 385 383 380 377 375 373 370 368 362 357 357 356 351 350 349 345 339 332 329 326 324 316 307 297 290 290 260 236 207 177 148 119 89 57 30 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - comixed +655 647 635 623 599 585 565 532 508 488 463 443 423 411 394 371 349 323 291 277 261 237 224 213 204 191 180 170 160 149 143 128 114 311 298 291 290 - - 272 251 239 231 221 210 204 194 174 156 144 127 112 142 131 115 80 20 265 252 242 242 232 225 220 218 179 172 150 133 524 514 499 478 462 449 431 409 394 384 370 354 331 322 307 291 278 272 260 253 241 231 213 193 171 145 132 107 92 197 186 172 160 156 151 142 126 111 96 75 143 128 113 113 66 1929 1888 1853 1821 1790 1754 1705 1684 1660 1631 1603 1532 1495 1457 1431 1393 1352 1310 1240 1202 1168 1107 1067 1033 994 976 971 962 952 939 933 928 923 917 906 870 837 797 757 719 680 615 566 556 435 426 412 406 377 323 259 162 142 128 117 108 94 83 76 61 57 55 45 39 31 37 37 19 11 28 12 10 8 resiliosync +643 617 581 532 539 497 546 461 499 473 528 251 380 497 581 567 357 303 512 459 535 303 181 283 225 158 291 294 361 335 293 305 510 483 461 435 431 - - 362 322 284 292 297 285 401 374 350 321 281 279 324 293 289 547 528 515 495 464 437 437 410 380 353 353 470 452 428 409 386 353 330 301 266 314 281 406 374 348 322 308 272 342 302 265 262 253 257 440 420 411 385 359 334 316 293 266 244 245 275 233 305 285 260 225 409 393 366 350 331 315 287 287 241 339 293 239 290 246 227 232 231 453 408 373 307 250 230 416 383 352 307 231 221 217 146 216 171 125 213 191 229 206 161 201 173 283 262 235 175 334 278 228 176 484 413 357 342 215 204 187 164 467 406 331 227 198 174 147 114 147 130 184 179 157 135 114 107 114 102 102 87 72 61 33 22 20 cloudcommander +624 612 600 591 583 571 561 552 541 533 527 509 495 487 473 448 434 420 412 400 398 379 371 368 362 359 356 353 349 346 344 339 324 316 312 302 301 - - 287 274 268 265 258 257 248 243 233 226 217 212 206 198 193 189 183 183 180 173 165 165 162 157 156 154 140 136 134 131 127 119 116 116 109 101 96 77 62 129 107 76 87 82 76 75 83 80 78 64 917 912 905 903 899 889 876 866 860 857 852 846 840 835 830 819 811 804 793 783 780 776 768 768 753 728 686 654 625 587 552 507 477 453 426 399 344 322 292 261 239 215 189 115 79 43 194 166 130 93 78 75 63 58 49 831 824 821 819 806 767 728 695 664 632 599 534 485 474 348 344 335 328 297 248 188 88 71 62 59 54 51 41 31 27 79 70 63 56 46 29 25 55 49 45 27 23 22 spotweb +615 609 605 605 589 581 581 568 563 555 553 551 539 527 519 501 491 483 483 483 481 479 479 477 475 474 473 472 469 464 462 458 458 457 501 501 501 - - 498 491 489 489 487 486 485 485 484 475 474 470 468 466 465 464 463 459 459 458 456 456 455 454 452 451 450 448 447 447 446 441 441 439 439 437 436 433 431 429 427 423 420 413 412 403 395 393 390 389 387 379 376 371 369 367 359 358 356 352 350 343 333 326 312 307 297 294 281 270 262 253 238 238 196 168 130 204 172 133 456 408 376 360 323 302 249 218 188 156 120 469 432 360 332 296 227 188 156 121 101 94 88 77 66 87 79 72 57 70 84 88 88 83 83 107 104 47 184 54 60 60 79 94 198 131 68 52 46 44 41 55 53 47 51 44 53 44 37 56 59 45 42 33 63 33 32 31 plex-media-manager +525 511 489 461 400 370 484 434 376 698 686 653 612 577 528 490 440 383 392 156 332 279 249 229 209 187 28 195 144 207 190 205 284 268 259 240 238 - - 507 472 450 425 411 392 375 361 343 312 282 260 238 215 451 440 430 409 394 372 351 351 323 282 251 242 291 265 242 301 263 216 791 775 762 732 709 690 665 645 625 594 572 548 526 513 465 443 419 388 368 348 318 284 243 426 403 383 369 353 329 311 296 268 230 320 304 285 249 210 245 226 251 251 1141 1107 1059 1018 970 922 874 815 776 738 695 669 599 560 527 494 466 426 371 284 235 168 163 186 254 213 180 137 423 406 384 371 359 339 332 318 288 255 197 135 398 350 288 246 235 126 269 247 228 191 133 207 108 121 278 261 246 225 214 112 170 152 126 96 91 87 143 143 121 112 103 78 81 81 photoprism +518 504 482 468 432 400 362 330 281 573 545 499 475 445 419 385 343 325 287 138 286 257 236 221 208 193 169 148 195 162 142 158 130 139 741 729 728 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - monica +513 501 489 477 448 440 421 402 363 348 335 318 292 270 258 238 220 206 178 163 153 140 131 122 107 85 156 114 2612 2594 2584 2569 2555 2544 3008 3000 3000 - - 2975 2963 2955 2948 2938 2932 2920 2913 2908 2897 2887 2878 2870 2863 2856 2849 2846 2842 2839 2827 2823 2823 2813 2797 2793 2789 2742 2733 2725 2722 2711 2698 2683 2675 2659 2640 2631 2611 2602 2587 2575 2555 2539 2532 2520 2495 2478 2461 2452 2440 2431 2428 2417 2409 2399 2392 2378 2372 2370 2364 2353 2344 2336 2324 2315 2303 2290 2283 2275 2262 2252 2241 2234 2234 2205 2180 2142 2105 2076 2030 1989 1939 1910 1884 1855 1830 1780 1737 1692 1669 1642 1605 1564 1494 1452 1414 1345 1318 1279 1245 1213 1208 1196 1185 1176 1168 1153 1141 1137 1129 1084 1045 1000 960 919 877 805 749 741 608 595 582 577 541 481 414 313 288 275 263 249 240 231 214 200 190 171 157 148 134 110 100 85 78 70 37 25 22 organizr +458 380 305 285 251 227 120 195 488 450 398 190 383 410 372 428 373 367 239 38 245 222 201 181 165 153 83 280 257 245 229 216 204 187 165 174 171 - - 133 84 137 121 156 147 126 155 137 118 97 97 89 188 181 188 188 178 186 166 154 153 141 125 108 107 184 207 183 278 268 256 242 224 196 3 194 199 207 212 238 221 216 196 174 199 174 237 228 210 198 188 173 161 146 202 181 163 135 152 133 105 200 190 174 160 140 247 237 227 211 194 173 173 128 317 274 219 267 215 150 2 314 281 237 181 190 241 197 206 327 287 225 307 267 228 147 243 197 136 225 212 198 184 162 151 135 127 122 328 285 239 194 141 222 180 114 253 243 110 427 419 414 382 327 256 156 134 120 99 86 95 177 156 131 132 118 103 84 83 77 73 62 51 47 23 16 15 fireflyiii_data_importer +433 241 551 537 485 461 431 391 360 323 295 237 590 567 522 488 448 420 358 291 257 210 157 201 183 166 64 316 306 292 271 258 241 234 228 218 218 - - 193 175 144 320 314 304 293 288 277 266 257 245 239 230 226 220 212 208 202 186 172 171 154 364 350 349 316 302 285 278 264 254 248 244 229 219 212 195 171 153 146 266 254 245 234 218 207 197 182 172 166 151 140 155 134 276 265 261 251 238 230 220 208 202 195 190 179 172 163 147 614 608 597 597 561 521 484 447 413 385 350 308 270 241 187 153 173 473 435 404 374 338 302 217 176 128 120 259 214 172 143 183 160 151 144 128 359 352 343 331 293 251 201 145 154 253 174 445 441 311 299 287 268 227 169 206 101 158 140 132 122 117 106 98 127 120 117 107 93 80 84 84 49 103 98 75 69 68 bazarr +430 414 402 388 365 349 336 316 283 249 233 124 351 308 266 336 310 274 256 248 234 204 193 189 176 161 139 180 172 164 155 136 220 214 204 192 191 - - 153 93 78 148 510 506 495 481 471 450 439 429 420 417 407 398 392 387 383 371 363 363 353 343 330 328 289 275 266 248 235 226 212 200 186 170 143 298 280 267 250 241 231 219 209 197 177 165 146 179 171 160 137 1162 1149 1143 1132 1119 1111 1104 1092 1085 1080 1056 1050 1043 1038 1034 1019 1006 998 988 983 983 966 938 903 873 833 791 748 698 661 629 603 573 520 478 440 412 382 346 305 237 201 164 87 184 138 196 168 156 147 133 124 117 109 96 91 767 725 685 650 613 579 539 471 416 406 278 270 249 242 215 154 75 103 76 54 259 251 240 232 218 216 204 199 180 168 148 135 119 97 82 72 41 32 29 whoogle-search +429 425 417 417 399 383 370 352 338 320 304 294 280 272 260 252 229 211 185 175 173 173 172 165 161 157 153 147 143 129 119 110 103 95 86 76 74 - - 74 60 261 260 256 252 247 245 237 229 226 226 222 221 216 212 207 207 204 198 192 192 188 186 180 180 157 154 153 150 148 146 136 131 124 111 101 95 89 81 71 66 685 681 675 665 657 653 650 643 638 635 628 623 620 619 610 608 602 600 596 593 583 580 577 574 565 560 558 553 551 548 544 544 533 513 487 470 449 430 409 385 365 352 335 318 281 259 240 215 199 178 160 109 91 71 26 85 54 68 53 49 39 36 27 584 580 579 575 572 549 525 503 477 454 429 381 342 339 255 254 250 246 225 192 150 88 76 68 63 60 58 55 50 47 45 41 39 33 29 20 16 8 24 18 5 7 7 fireflyiii_fints_importer +424 1081 1191 910 473 1110 1221 1066 1082 1079 1219 1025 1315 1156 991 1036 1028 1133 952 974 989 591 287 565 502 287 916 853 811 769 725 668 629 583 524 442 423 - - 470 467 495 434 585 539 492 437 485 413 587 531 458 369 471 389 542 492 418 494 458 456 383 514 458 452 377 390 474 435 366 438 378 345 279 208 803 749 706 654 584 450 653 533 312 434 378 337 287 348 321 270 262 272 304 257 434 380 331 226 205 285 252 193 254 217 260 195 230 204 217 185 129 128 264 200 9 723 668 606 559 501 456 409 340 279 152 171 104 367 326 275 212 270 230 185 86 219 164 288 244 203 164 112 128 171 134 676 654 633 590 546 509 461 418 380 301 253 230 133 113 87 413 377 330 266 188 158 126 109 95 79 119 92 66 42 277 270 243 225 193 164 139 109 97 61 43 40 browserless_chrome +422 396 357 323 276 260 224 196 146 122 149 129 303 264 224 201 161 117 79 98 60 77 58 48 34 20 21 18 37 37 37 31 31 30 37 36 36 - - 36 30 24 24 22 21 21 21 20 13 13 18 18 18 18 18 17 17 17 17 32 32 31 30 30 30 27 27 27 26 26 23 20 20 20 21 30 30 29 25 23 20 29 38 36 30 23 24 22 24 23 27 26 39 38 38 32 29 27 26 39 37 34 33 31 134 133 133 133 129 128 128 128 128 110 86 344 320 293 262 227 201 175 155 133 119 92 69 43 24 1 319 287 213 184 145 75 95 181 145 122 116 105 96 77 71 60 50 218 212 175 138 88 130 87 628 556 499 491 367 362 353 343 314 260 193 90 63 50 51 207 193 186 167 160 149 140 133 119 103 80 64 50 39 26 7 4 4 vaultwarden +417 384 358 338 128 360 346 302 331 293 625 605 569 551 527 504 470 450 426 401 389 365 341 325 303 291 280 269 258 247 237 228 204 182 170 159 158 - - 205 191 184 170 156 144 127 178 163 152 146 132 123 108 223 215 208 203 196 181 175 175 168 158 150 149 124 167 152 145 137 122 111 95 73 195 185 168 159 148 132 107 112 247 231 221 210 202 194 184 171 158 153 143 132 123 115 106 92 5318 5316 5304 5295 5289 5283 3973 1822 130 118 105 97 150 145 145 113 103 273 250 224 200 167 142 107 212 192 175 130 104 196 171 149 122 356 299 277 256 213 188 166 135 114 105 93 77 105 99 94 85 78 104 81 83 84 77 72 94 85 58 103 50 49 47 61 82 94 120 49 44 31 33 28 31 27 23 20 16 11 7 2 - - - - - - - - - sabnzbd +412 400 365 347 315 286 209 188 159 619 589 559 541 519 487 461 440 399 343 287 236 183 164 147 126 107 79 171 131 301 294 280 264 246 240 220 220 - - 163 1013 1002 991 981 970 961 946 934 921 906 890 875 861 851 832 819 810 792 767 752 752 741 723 710 710 645 619 595 574 558 540 513 488 464 447 426 402 382 354 338 321 305 278 270 246 222 196 175 149 360 346 323 304 282 262 225 207 181 147 2203 2186 2174 2158 2129 2107 2080 2063 2044 2032 2009 1985 1968 1968 1946 1910 1853 1801 1755 1702 1655 1599 1562 1514 1484 1460 1380 1342 1298 1260 1219 1173 1125 1032 995 957 869 825 766 723 687 659 636 619 608 588 576 552 540 529 477 415 364 306 255 200 119 864 836 693 659 637 621 586 516 434 302 271 235 212 178 144 121 76 188 170 121 148 113 223 174 119 117 123 104 45 19 14 zoneminder +387 381 377 375 373 367 365 354 352 343 337 333 325 309 293 283 273 253 249 243 239 229 228 225 222 217 212 207 207 206 204 193 184 176 179 173 172 - - 163 154 151 149 143 142 141 141 139 130 128 126 126 125 123 121 114 110 106 98 96 96 91 88 86 86 75 71 65 57 52 43 37 32 11 146 140 136 130 123 120 119 114 107 102 89 81 80 78 69 65 59 54 47 44 42 31 31 25 13 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - tor +386 374 364 362 350 338 330 323 317 311 307 291 281 269 257 241 223 211 203 197 195 192 190 185 181 176 173 165 160 155 151 141 131 121 117 111 111 - - 91 79 74 69 66 64 59 54 267 255 251 249 246 243 243 239 234 229 228 217 213 213 212 206 203 203 189 186 184 182 169 164 163 153 149 146 143 132 128 125 123 122 118 114 106 95 85 79 74 65 56 70 65 63 52 1817 1807 1801 1801 1798 1793 1784 1779 1774 1768 1764 1754 1750 1739 1730 1726 1723 1721 1721 1711 1685 1649 1621 1589 1559 1524 1485 1448 1430 1407 1382 1342 1313 1288 1264 1237 1209 1176 1106 1079 1048 994 970 929 903 889 885 883 878 869 866 858 856 853 850 817 784 749 711 675 645 580 519 509 385 381 372 366 335 287 227 136 119 110 106 98 89 82 71 67 62 56 49 44 37 68 68 57 41 37 19 10 9 ubooquity +367 351 327 325 319 311 291 278 266 236 220 208 184 164 128 206 180 168 148 128 112 96 89 84 69 54 50 40 26 1874 1865 1856 1848 1845 2325 2318 2318 - - 2298 2288 2283 2275 2274 2268 2264 2261 2258 2250 2245 2244 2233 2222 2216 2213 2209 2205 2201 2198 2190 2190 2190 2187 2177 2177 2155 2152 2149 2145 2136 2123 2118 2105 2101 2088 2076 2057 2043 2024 2010 1997 1988 1985 1970 1951 1932 1928 1916 1909 1903 1899 1890 1884 1875 1869 1861 1849 1847 1840 1837 1830 1824 1822 1818 1812 1808 1806 1804 1799 1796 1793 1785 1785 1768 1739 1693 1658 1620 1596 1555 1514 1486 1467 1441 1419 1377 1350 1328 1304 1279 1236 1209 1151 1128 1098 1035 1005 968 931 912 908 905 900 895 893 889 888 879 874 843 810 777 742 708 676 615 563 560 438 436 431 427 396 344 279 188 169 150 143 139 133 123 105 83 125 117 108 92 89 68 53 47 38 29 13 7 7 gazpar2mqtt +367 1237 1172 1112 1003 907 990 825 1037 914 912 466 955 822 866 867 900 867 804 790 392 309 248 418 347 112 540 514 492 475 457 406 400 397 399 395 382 - - 402 459 422 392 372 411 370 367 427 392 350 380 341 388 349 338 384 347 351 352 398 395 351 349 428 425 359 339 375 334 359 323 333 344 382 361 327 347 313 342 295 293 328 284 379 344 314 271 286 316 298 279 349 334 315 291 249 275 244 287 259 228 175 128 216 126 246 221 264 249 225 201 117 117 279 227 215 211 257 212 298 250 222 186 261 229 156 244 195 154 186 143 168 177 138 109 80 102 91 38 99 65 50 48 31 36 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - changedetection.io +347 327 278 235 134 0 294 232 302 273 295 162 425 284 256 216 178 154 134 344 303 174 146 218 204 184 167 142 106 149 132 132 130 149 134 119 115 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - grampsweb +326 418 924 818 713 569 310 38 762 655 888 844 768 690 604 307 603 699 645 562 468 338 297 261 200 148 290 259 186 360 344 318 298 271 264 226 219 - - 231 274 251 230 170 213 202 241 205 192 173 144 142 197 138 286 268 258 249 208 180 179 138 83 231 228 82 81 130 84 118 103 85 25 87 72 56 45 9 97 68 75 143 129 114 100 86 75 59 48 32 63 43 33 157 151 142 133 126 114 104 96 77 64 55 45 28 34 35 46 2 49 151 151 111 70 68 15 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-go +319 1 380 291 492 464 426 402 357 333 315 289 270 253 232 199 165 130 104 213 367 290 201 319 145 493 398 308 212 9 149 81 218 73 100 28 61 - - 217 151 244 187 72 155 269 177 126 182 164 203 80 448 380 370 352 342 326 302 276 274 233 198 162 159 118 106 56 107 49 49 121 88 9 72 206 639 409 87 207 190 180 163 150 134 119 110 96 61 111 94 71 58 57 76 113 104 95 82 15 33 77 68 58 55 65 36 37 47 3 28 33 33 34 82 19 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pi +319 1 380 291 492 464 426 402 357 333 315 289 270 253 232 199 165 130 104 213 367 290 201 319 145 493 398 308 212 9 149 81 218 73 100 28 61 - - 217 151 244 187 72 155 269 177 126 182 164 203 80 448 380 370 352 342 326 302 276 274 233 198 162 159 118 106 56 107 49 49 121 88 9 72 206 639 409 87 207 190 180 163 150 134 119 110 96 61 111 94 71 58 57 76 113 104 95 82 15 33 77 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - battybirdnet-pi +293 289 283 283 281 279 276 266 262 254 244 234 218 212 200 190 180 170 166 164 152 130 111 99 82 74 47 0 98 91 86 38 358 351 345 341 340 - - 324 313 313 310 300 293 291 288 283 272 270 266 262 258 253 249 239 236 234 224 219 219 214 208 202 201 179 172 167 165 158 150 145 135 122 112 102 94 83 244 233 230 225 221 216 205 198 191 182 172 161 158 155 151 147 139 130 123 118 110 105 94 77 1046 1036 1032 1028 1021 1015 1015 1008 1004 1002 1002 975 959 924 889 859 827 789 750 714 694 674 648 607 577 554 528 511 476 442 377 348 317 248 216 180 149 128 119 110 104 98 92 85 75 64 608 570 529 482 448 410 376 307 258 250 118 109 91 82 341 287 220 121 103 90 88 84 80 73 59 93 92 87 81 73 65 50 40 39 30 24 9 4 4 ombi +293 283 259 247 203 382 366 342 325 309 276 104 789 757 731 698 664 609 539 691 1326 1242 1184 1143 1104 1069 1030 997 941 908 879 835 793 751 718 688 680 - - 591 564 532 493 454 426 383 349 292 357 328 270 264 372 337 307 265 267 506 475 455 453 414 379 357 356 226 270 231 225 400 373 341 305 288 262 231 197 243 209 449 427 394 369 340 305 151 211 189 164 135 243 226 204 192 164 140 127 112 62 284 268 245 235 220 205 184 154 131 148 129 362 340 340 284 246 205 159 1035 987 951 900 859 829 801 754 665 629 599 568 529 493 443 376 342 313 239 204 166 130 107 99 88 79 66 52 57 44 37 610 561 521 480 440 399 357 281 228 223 88 78 65 55 102 45 26 - - - - - - - - - - - - - - - - - - - - - - jellyseerr +241 219 199 189 157 140 119 86 70 272 240 224 204 174 140 114 92 74 56 36 92 74 61 100 90 80 67 48 75 36 242 224 210 185 177 164 163 - - 133 120 106 95 85 1664 1660 1649 1637 1625 1613 1601 1593 1584 1572 1553 1546 1541 1529 1514 1504 1504 1499 1478 1470 1468 1428 1419 1401 1391 1380 1366 1357 1350 1343 1338 1331 1313 1305 1292 1278 1258 1251 1239 1233 1220 1210 1201 1197 1185 1179 1172 1162 1153 1147 1135 1125 1122 1113 1105 1095 1090 1082 1069 1061 1057 1034 1028 1024 1014 1008 999 993 993 978 952 909 877 844 809 774 724 693 673 641 614 554 518 482 454 424 384 341 276 236 206 146 106 73 35 11 8 6 1 546 535 527 519 512 504 467 436 404 365 326 285 217 163 157 30 59 48 44 291 240 174 77 51 40 34 32 54 46 38 29 22 38 34 19 25 61 61 50 49 43 21 17 17 seafile +237 233 227 225 216 209 200 191 187 183 175 165 143 139 125 111 98 82 74 67 57 43 39 36 34 32 82 72 57 48 44 37 27 21 136 133 133 - - 118 108 102 97 89 88 87 85 85 79 78 73 65 62 56 53 46 44 38 26 38 36 28 19 34 34 22 29 25 31 26 25 31 26 25 46 35 30 26 102 90 79 72 58 45 29 25 56 47 36 34 29 23 20 30 20 34 30 23 17 15 22 39 36 32 30 25 28 25 20 69 64 58 58 35 80 53 36 34 37 64 39 37 56 30 48 31 50 33 31 34 32 79 32 36 31 29 40 38 31 31 17 21 15 29 13 14 18 22 323 299 277 251 229 206 184 139 103 94 8 5 14 33 42 52 70 28 20 13 11 17 13 15 17 17 10 19 17 14 27 43 38 34 30 24 7 13 11 omada_v3 +233 225 215 213 192 178 175 165 155 140 132 116 84 68 167 139 120 115 2 160 156 146 139 135 132 130 125 123 117 114 108 94 90 84 83 77 75 - - 71 65 61 57 53 49 48 47 44 39 35 34 29 232 231 231 225 223 220 213 210 210 204 199 195 195 183 179 176 173 171 169 167 165 159 158 153 151 143 137 134 132 125 117 111 103 97 93 90 82 79 76 75 71 69 68 62 60 57 52 50 43 55 49 36 281 281 276 269 258 253 247 241 241 222 204 179 154 131 116 92 68 50 24 138 125 95 74 52 52 80 58 35 197 179 156 118 94 72 53 41 39 31 25 18 22 16 103 100 92 67 41 60 38 213 191 145 112 108 21 213 209 205 188 153 111 47 37 30 27 36 35 28 21 29 26 22 23 17 25 32 32 21 22 20 11 9 9 unpackerr +228 220 216 210 204 198 190 177 170 154 149 147 119 102 94 80 62 54 42 40 40 38 33 32 29 25 6 49 41 909 906 901 894 889 1101 1099 1099 - - 1097 1088 1087 1085 1084 1083 1081 1079 1077 1070 1069 1065 1063 1062 1059 1053 1051 1050 1046 1046 1041 1041 1040 1038 1036 1036 1031 1027 1025 1022 1019 1012 1010 1007 1006 1000 999 995 995 995 995 994 992 991 990 981 973 971 966 958 953 947 946 940 937 933 921 918 914 909 905 903 900 897 895 892 887 883 882 875 868 860 856 856 834 806 766 728 695 659 622 585 560 534 511 489 436 405 371 339 300 276 242 169 132 99 33 98 59 531 500 488 476 476 475 473 467 462 462 461 431 401 366 336 304 271 202 153 152 30 28 19 334 306 256 194 101 88 82 76 74 71 67 63 61 55 55 51 50 48 34 33 31 32 32 20 18 18 joal +214 210 206 193 189 185 180 178 176 175 171 171 171 169 165 163 161 157 157 157 151 147 144 142 140 138 132 115 102 94 83 72 60 48 554 544 544 - - 526 519 513 508 507 503 498 491 487 481 478 473 463 460 451 444 442 438 433 425 416 412 402 395 393 392 375 372 369 365 357 350 345 338 328 325 320 314 307 298 278 270 255 243 229 213 203 192 180 162 154 145 138 133 128 116 96 85 67 67 66 68 63 77 73 75 78 73 79 72 78 81 97 97 89 99 92 96 90 92 95 86 80 85 57 76 87 96 90 86 91 109 143 92 105 69 103 148 153 149 165 134 160 124 332 332 332 332 332 332 312 292 272 252 232 212 170 138 138 58 58 111 119 128 142 166 110 109 112 105 103 97 108 95 115 76 82 75 79 84 127 105 93 88 78 53 51 51 omada +198 186 182 180 170 162 152 146 128 124 122 116 112 100 92 82 64 50 42 38 38 38 37 35 26 3 281 273 271 269 266 258 256 252 262 259 259 - - 254 246 244 244 242 240 239 237 233 226 224 222 221 221 220 220 219 218 216 215 215 215 214 213 212 212 206 206 201 197 195 190 188 187 186 184 177 172 169 163 158 157 155 148 145 136 123 113 109 102 100 99 94 90 85 83 76 72 67 66 60 55 102 95 91 90 84 82 73 67 70 66 446 446 413 391 350 322 293 268 237 184 131 113 77 55 50 86 81 165 136 112 85 83 161 119 53 129 91 132 105 89 86 73 64 63 57 58 52 93 116 70 74 73 73 331 269 216 203 80 77 72 61 263 211 144 49 39 99 87 78 72 69 63 54 28 17 20 17 22 69 62 41 28 45 18 7 5 myelectricaldata_dev +194 658 565 536 216 480 501 46 486 438 415 200 414 372 364 377 380 310 287 262 242 151 106 92 61 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - brave +192 198 207 214 226 222 295 284 266 240 309 256 306 270 279 261 265 281 267 264 166 149 133 197 185 175 167 156 139 142 153 205 199 185 162 147 144 - - 160 176 169 163 157 164 153 171 175 163 169 8 172 180 205 183 199 181 191 194 200 200 205 217 219 217 0 322 287 248 241 242 324 295 250 274 237 291 249 311 249 260 224 298 273 221 252 218 548 506 472 436 401 368 331 296 240 185 271 217 175 198 166 165 269 215 179 165 151 144 157 142 188 188 179 191 185 177 170 240 181 182 153 211 147 114 109 197 177 173 170 164 158 164 200 157 115 135 142 134 128 120 124 82 107 115 126 102 100 129 136 555 509 463 420 380 309 250 239 105 131 108 127 228 159 181 112 108 90 105 286 266 248 221 200 179 161 123 107 85 150 150 145 127 99 60 72 66 emby +175 165 157 153 151 128 115 104 90 186 168 152 133 127 125 109 91 79 73 72 64 60 55 53 51 45 33 57 49 42 33 34 47 40 36 127 127 - - 115 103 100 92 85 83 77 72 63 53 46 35 120 118 117 114 114 111 104 100 96 95 92 89 84 84 55 48 44 38 47 38 0 98 93 87 83 77 63 54 50 40 76 73 66 56 42 53 45 35 127 121 111 102 93 88 81 75 69 65 57 49 44 35 266 264 261 258 251 250 246 236 230 230 189 163 117 73 256 216 183 147 122 100 58 157 98 64 186 155 125 102 72 70 594 563 494 459 429 395 377 371 362 354 351 347 341 333 331 325 286 248 202 160 120 82 300 250 244 115 113 107 99 67 267 201 100 84 67 59 47 39 35 25 17 15 38 32 23 26 32 32 22 19 53 33 27 26 piwigo +161 145 126 90 310 298 285 285 276 243 234 196 167 127 201 193 177 171 157 147 135 180 180 175 169 164 155 145 142 139 133 124 117 113 105 100 99 - - 76 111 110 107 100 95 86 79 68 169 166 162 155 148 142 136 135 128 123 110 104 104 100 95 87 85 51 182 178 170 166 158 158 151 147 136 131 119 111 107 104 103 98 93 88 77 68 62 56 52 44 38 25 57 50 48 40 34 30 22 13 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - kometa +149 184 165 144 188 156 169 16 170 202 175 78 166 178 166 172 154 183 158 74 92 78 66 57 49 38 33 26 15 111 98 87 74 79 122 116 115 - - 84 83 122 113 95 81 147 140 130 124 117 112 100 90 82 74 64 71 73 67 121 121 102 88 81 81 71 60 94 87 76 69 0 65 63 67 57 175 170 155 149 135 128 119 113 105 86 79 68 59 32 1532 1531 1528 1524 1520 1512 1509 1504 1495 1488 1485 1482 1474 1471 1463 1455 1450 1442 1439 1434 1432 1425 1425 1407 1381 1347 1316 1284 1250 1215 1176 1142 1118 1094 1069 1020 992 966 940 905 877 842 775 750 723 667 634 594 564 547 540 536 529 521 516 514 512 508 501 464 427 391 356 314 277 209 159 153 29 287 280 277 248 197 130 34 39 26 55 46 42 37 29 22 26 55 51 43 37 44 44 40 31 30 12 8 7 tdarr +139 72 86 52 96 68 42 60 48 71 46 60 34 68 54 44 20 18 0 24 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - manyfold +129 160 148 128 183 163 144 111 108 104 138 108 90 76 72 80 56 42 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cleanuparr +127 117 107 103 91 301 290 278 267 248 232 226 220 208 198 186 168 158 150 144 142 139 135 131 128 127 126 126 122 115 108 101 93 86 84 82 81 - - 68 58 54 41 107 100 97 93 91 81 77 72 67 64 64 61 54 53 47 184 181 181 178 175 172 172 164 160 159 153 148 140 138 134 131 129 125 120 112 106 103 95 93 89 88 76 70 69 62 56 52 49 48 42 37 369 362 359 359 353 351 347 344 342 340 337 335 331 327 326 324 322 315 315 276 248 213 181 150 120 82 39 1349 1322 1284 1267 1224 1197 1172 1144 1119 1091 1069 1019 994 973 921 887 856 829 815 810 804 802 801 797 795 790 787 785 751 715 679 647 613 579 511 461 457 335 331 324 322 298 247 184 91 75 67 64 63 60 60 58 55 52 51 49 45 41 28 24 25 22 18 4 1 1 requestrr +121 109 98 90 74 500 486 475 467 465 459 447 427 397 391 381 363 349 341 335 326 315 307 299 296 292 284 277 271 269 265 258 253 250 248 244 244 - - 236 228 226 224 222 219 217 217 209 203 201 199 195 192 190 184 180 178 173 172 165 165 163 162 160 159 142 139 137 132 122 112 110 104 93 82 5 93 152 143 139 135 134 130 125 114 95 101 108 101 148 143 131 123 109 128 140 134 121 118 128 127 124 153 136 152 141 150 177 162 225 215 195 195 191 318 292 257 218 318 287 238 339 282 381 465 478 403 378 402 375 445 370 350 352 319 150 1274 1214 1155 1121 1094 1070 1043 1025 1003 979 956 942 922 868 814 764 709 657 605 511 433 400 238 311 284 252 227 137 301 244 187 351 322 301 262 236 202 158 111 176 148 152 108 134 134 123 84 104 57 86 80 paperless_ng +114 110 106 106 102 94 93 83 73 65 65 61 47 39 31 25 15 7 6 6 6 5 5 5 5 5 5 5 5 5 5 1 1 1 1 1 1 - - 1326 1313 1307 1301 1288 1276 1268 1256 1248 1232 1220 1212 1203 1195 1190 1181 1176 1170 1159 1149 1139 1138 1132 1122 1117 1115 1097 1091 1085 1077 1067 1054 1046 1031 1028 1017 1011 999 993 987 979 969 961 953 948 931 913 909 903 893 889 884 878 868 861 854 836 824 817 813 805 792 788 781 776 769 761 752 740 737 730 712 698 698 679 656 614 578 547 514 477 433 401 377 339 309 264 230 206 175 142 106 47 386 351 321 249 212 171 134 107 97 83 77 71 568 563 556 551 548 505 469 431 393 358 324 260 206 199 69 63 55 407 373 323 255 157 137 126 120 114 109 104 98 91 86 79 78 74 71 59 46 40 34 29 12 7 7 inadyn +111 225 149 83 354 273 201 135 48 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - nginx_webserver_proxy +110 100 86 74 109 107 99 97 95 87 79 73 56 46 34 22 14 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 0 0 566 558 557 - - 537 526 510 507 501 490 482 480 474 465 459 454 450 443 434 428 421 412 405 395 393 393 388 383 380 379 357 352 345 343 339 336 332 328 321 310 304 294 283 270 254 248 246 234 230 219 205 201 189 180 176 161 152 148 143 138 129 114 106 99 90 82 66 36 1348 1341 1338 1327 1321 1315 1309 1303 1292 1292 1282 1256 1231 1210 1188 1166 1142 1111 1092 1072 1043 1026 976 956 933 912 896 877 853 810 793 772 730 707 680 663 647 641 637 635 628 621 615 610 607 597 571 545 523 498 474 449 404 369 363 276 269 263 251 225 189 146 83 70 62 59 54 49 41 26 90 85 86 78 72 69 52 47 45 31 31 13 7 7 elasticsearch +108 92 82 78 20 6 66 60 74 115 76 34 99 67 46 93 69 38 34 36 43 31 11 53 45 36 24 36 58 48 39 27 18 26 33 7 7 - - 31 13 73 67 60 53 43 39 26 16 15 1 13 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ente +102 111 110 88 112 88 54 14 83 44 54 12 8 58 66 32 42 15 14 10 28 9 7 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pipy +94 56 32 61 148 144 132 98 109 95 75 30 92 68 50 96 74 53 31 4 50 29 25 31 19 22 12 29 27 26 26 20 14 8 22 33 33 - - 32 19 18 17 22 19 16 22 18 16 26 25 24 23 19 17 18 16 41 37 35 35 31 30 29 29 22 17 19 18 15 23 20 18 6 21 19 23 21 19 16 12 35 32 30 20 46 46 43 43 40 35 31 28 26 21 17 19 17 32 29 27 24 20 13 7 2 50 31 13 12 8 38 38 109 87 54 34 32 105 76 45 19 25 178 160 117 92 75 51 22 172 146 94 68 46 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - signalk +84 322 282 304 107 259 281 22 315 295 308 91 288 360 212 245 202 224 191 208 228 151 39 81 28 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - chromium +68 1870 1818 1782 1729 1699 1660 1606 1570 1519 1487 1457 1421 1381 1319 1278 1234 1203 1181 1154 1142 1093 1056 1040 1027 1002 985 968 948 923 892 869 848 830 808 793 793 - - 747 725 710 693 672 658 638 618 600 573 548 526 508 491 467 447 417 398 366 335 301 300 251 507 491 487 390 361 336 292 258 577 554 527 511 481 440 413 373 310 257 310 269 266 111 1733 1703 1673 1645 1616 1593 1563 1543 1515 1500 1480 1464 1444 1432 1394 1359 1346 1319 1296 1275 1249 1227 1205 1178 1146 1126 1097 1076 1076 1044 1001 951 907 866 824 788 736 696 664 617 574 498 466 410 364 311 262 202 369 317 245 129 224 169 715 685 653 621 597 573 553 519 490 465 440 399 358 301 255 196 146 77 22 124 40 26 37 6 - - - - - - - - - - - - - - - - - - - - - - - - - free_games_claimer +62 80 64 52 20 30 18 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - aurral +60 66 70 74 75 68 78 4 91 79 71 28 81 76 88 68 76 78 92 86 80 52 45 48 43 38 54 51 41 59 54 57 47 59 62 57 54 - - 61 62 56 60 65 59 51 56 62 63 55 52 57 62 56 63 55 60 54 73 68 68 61 72 62 61 79 74 69 68 90 81 70 86 81 76 70 97 96 91 81 70 115 112 104 88 81 83 141 133 130 126 119 97 123 116 106 97 84 124 123 117 109 94 89 108 102 86 95 155 152 146 134 134 123 220 179 137 133 265 223 192 159 178 158 292 171 233 167 389 342 290 229 265 209 154 102 290 227 169 120 186 155 125 110 326 306 290 267 244 195 144 202 143 305 255 166 208 176 195 181 152 128 371 305 232 118 194 161 140 119 88 98 146 119 104 139 121 98 75 155 155 134 110 95 82 17 17 code_server +56 357 345 332 314 300 273 265 253 230 196 188 166 132 116 102 80 64 36 28 20 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - netbird-server +48 129 182 175 133 164 138 116 134 143 208 186 146 193 163 72 148 66 168 147 123 84 64 113 100 90 84 75 64 79 62 93 79 61 98 92 92 - - 60 55 76 68 59 98 88 82 75 51 70 55 94 90 86 79 71 62 105 91 86 85 74 59 87 87 88 79 66 78 62 96 84 74 61 50 82 69 54 52 44 47 50 51 58 67 54 55 60 48 59 51 82 72 63 48 61 50 77 68 59 54 42 82 71 67 52 42 149 140 130 115 108 108 72 157 117 83 161 117 80 149 128 106 59 98 99 62 61 54 218 186 145 70 89 55 30 92 52 35 30 24 40 40 27 40 186 173 163 154 113 73 337 299 262 222 151 99 87 68 64 52 47 132 76 133 36 29 21 14 22 13 1 - - - - - - - - - - - - - - - autobrr +40 104 90 72 521 495 475 447 429 400 372 338 302 276 238 204 170 234 210 193 167 113 82 56 40 101 90 76 64 67 130 106 93 80 69 56 54 - - 61 44 48 31 12 43 27 8 23 4 10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - collabora +38 30 14 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scrutiny-original +38 24 12 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - scrutiny-fa-original +28 76 82 66 97 74 97 6 102 101 103 100 86 87 136 114 92 82 23 64 55 43 26 33 28 31 61 53 42 36 51 41 57 49 46 43 43 - - 46 40 38 31 28 31 30 54 51 34 27 32 56 50 43 38 38 71 65 64 58 58 54 50 47 47 53 49 47 45 35 97 87 80 77 72 70 68 66 59 54 53 49 44 39 28 27 30 23 25 21 25 21 31 30 26 46 41 39 37 23 20 22 18 18 22 19 19 27 41 28 18 122 122 93 61 36 46 27 28 28 21 42 21 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - codex +24 14 8 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - zoraxy +16 6 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - spotify_to_plex +14 2373 3518 3129 2362 1976 1428 85 3567 3099 2595 2110 2218 2226 2123 2131 3075 2788 2439 2121 1669 1114 768 1620 1480 1340 1195 1009 720 1234 1098 913 725 1035 854 595 567 - - 1005 842 794 652 451 24 708 433 621 901 742 688 1137 1026 903 781 642 830 703 489 30 30 1015 889 774 743 224 681 870 766 598 37 423 40 698 575 549 649 505 823 697 483 462 307 560 418 441 427 423 498 405 506 405 402 462 368 359 333 391 346 369 301 290 288 301 304 336 251 270 459 397 343 279 278 323 255 250 398 329 263 252 221 205 207 188 203 315 250 552 495 442 380 314 208 145 138 62 160 147 149 105 137 90 92 69 35 105 98 82 111 103 87 97 92 94 92 35 205 194 100 80 54 74 74 174 124 42 34 46 58 53 70 60 48 21 23 29 22 29 28 2 2 0 - - - - - immich +12 32 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - claude_desktop +6 24950 25575 9600 337 3 1775 72 1894 1785 1604 261 2012 1275 1781 1782 598 581 537 536 718 334 263 297 249 163 146 289 248 291 311 306 300 305 298 294 291 - - 295 294 288 297 296 305 295 305 301 295 285 288 273 279 291 296 293 279 295 280 306 305 294 317 303 293 285 304 286 294 292 298 295 296 288 285 286 294 289 304 272 272 301 272 274 270 265 273 261 262 261 246 263 259 241 243 230 242 232 243 234 235 228 238 233 230 242 234 235 245 253 239 283 282 275 275 287 267 268 279 286 253 274 272 234 222 2600 1318 270 257 258 211 268 250 236 241 215 229 237 221 205 203 187 195 195 194 195 195 192 237 231 219 224 219 233 244 241 189 247 188 193 187 220 184 239 253 183 177 181 171 169 161 159 154 148 110 134 140 111 129 118 118 94 106 136 104 95 95 jackett_nas +4 229 176 158 124 120 94 12 322 290 264 224 217 233 226 230 295 258 228 179 184 118 83 162 151 136 121 100 69 127 118 103 79 77 63 5 71 - - 93 73 70 9 36 4 54 26 48 64 50 39 76 76 68 61 51 62 48 35 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_openvino +4 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-pi-zach +2 796 766 756 726 704 682 648 615 548 510 279 268 623 532 573 551 521 478 444 408 363 340 331 318 296 276 232 215 253 394 374 361 340 324 302 301 - - 294 268 239 291 273 254 221 246 212 250 226 207 205 222 216 204 283 268 253 234 212 211 187 146 269 263 377 354 335 317 303 277 261 248 235 207 173 127 201 284 253 233 211 187 147 221 185 384 359 336 316 301 277 262 237 227 191 173 147 121 161 142 116 86 289 258 243 228 206 192 168 149 135 135 102 73 254 220 185 143 111 53 21 3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - linkwarden +2 669 595 471 691 653 583 74 695 642 540 258 716 682 642 587 514 462 433 387 362 331 281 245 341 331 301 265 237 293 272 235 287 267 242 241 237 - - 310 286 265 244 219 297 281 257 231 222 271 253 227 283 264 243 212 217 277 256 241 238 221 294 272 270 212 193 240 224 191 214 198 219 194 242 228 218 197 246 223 194 180 221 194 282 265 252 241 221 205 178 225 216 194 179 157 270 259 245 229 217 202 192 175 157 218 209 197 182 159 318 305 305 276 253 221 180 252 218 166 142 140 171 127 32 170 141 167 129 209 183 148 134 56 133 65 83 160 130 109 97 84 85 76 91 77 133 113 94 129 92 132 101 85 117 61 310 299 215 209 203 189 163 114 134 102 68 20 69 62 94 87 74 59 45 79 72 63 53 39 57 38 45 32 21 14 12 gitea +2 4 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - birdnet-go-dev +2 292 242 200 162 754 715 657 569 504 433 190 429 318 612 560 516 464 394 335 275 164 99 224 206 185 167 148 130 107 152 138 121 102 248 238 237 - - 203 192 176 170 156 144 131 121 108 95 79 108 95 82 68 96 90 82 76 61 112 110 94 87 77 77 30 24 45 39 65 54 43 24 71 64 56 44 49 35 36 147 142 132 117 96 83 72 63 59 49 39 35 24 18 45 23 15 14 7 79 74 69 60 50 44 31 24 17 3 4 - 17 17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - navidrome +2 206 174 158 66 222 192 154 188 171 145 84 168 144 32 148 144 174 132 116 127 88 80 92 79 43 107 95 87 74 86 103 93 80 76 118 118 - - 81 111 97 83 76 91 78 96 80 80 105 82 65 97 87 69 58 89 70 60 589 588 582 576 569 567 541 527 517 506 497 484 467 457 441 426 414 405 388 374 361 345 337 322 312 298 284 277 261 242 235 225 209 200 189 183 165 151 144 135 126 111 99 93 80 72 58 49 34 27 19 10 20 20 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - openproject +0 97 88 80 44 84 70 6 64 66 68 74 61 38 6 60 28 52 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - maintainerr +0 78 82 78 72 76 76 74 74 80 78 74 80 84 84 81 78 90 81 80 84 43 41 40 42 38 42 45 50 48 48 46 45 44 44 45 44 - - 50 44 38 44 44 39 38 40 42 41 45 42 42 42 38 32 35 38 55 38 45 45 42 39 39 39 48 39 38 40 45 45 48 46 45 36 43 43 35 40 39 38 49 47 57 46 43 43 40 60 50 42 57 49 41 41 58 50 46 40 38 46 42 36 37 55 48 37 35 37 37 39 80 80 54 73 62 69 117 96 64 57 58 57 61 41 55 64 64 52 54 60 45 48 43 50 35 626 592 559 544 540 536 531 529 525 520 517 511 511 474 437 400 359 325 283 217 167 161 35 35 31 106 73 86 111 52 41 29 45 32 38 32 33 32 30 31 36 26 37 30 23 20 24 38 22 26 26 flexget +0 520 494 456 412 394 363 343 288 247 389 359 323 284 249 208 240 167 139 10 122 88 53 80 66 53 35 15 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - social_to_mealie +0 515 740 786 324 0 779 80 753 739 771 314 757 728 790 699 703 693 800 679 704 389 303 370 322 323 149 367 290 412 380 333 334 341 386 337 334 - - 322 319 313 312 316 309 286 309 316 306 343 304 299 298 307 349 302 294 303 317 315 312 312 321 336 329 323 329 316 330 307 303 313 317 311 308 297 307 303 324 293 294 299 295 280 283 271 281 283 282 274 270 281 265 260 274 281 303 280 291 266 259 259 264 256 255 275 267 263 266 268 269 303 303 310 296 305 298 304 306 309 296 300 302 250 250 284 311 311 331 344 340 352 323 299 308 270 300 296 290 272 257 264 257 252 244 244 245 235 268 254 254 253 230 251 261 253 214 256 226 212 201 237 241 244 273 183 186 177 170 168 173 168 157 146 123 148 151 120 138 129 129 120 114 142 100 114 113 prowlarr +0 427 764 742 694 657 608 580 539 507 473 428 364 467 425 393 328 327 316 294 275 226 193 163 117 217 204 182 163 137 232 214 203 192 175 156 154 - - 275 261 247 240 223 205 182 164 150 122 97 86 56 74 54 42 45 55 34 14 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_frame +0 25511 38165 10023 608 4057 2526 116 2420 2304 2356 488 2549 2328 1739 1143 1295 1205 1020 1035 1131 658 559 455 439 693 653 586 464 642 595 525 621 546 588 515 497 - - 511 507 515 491 705 665 619 558 494 230 503 204 489 473 479 637 583 518 505 522 537 532 677 613 546 535 596 529 586 522 518 533 581 518 528 598 523 654 600 523 509 484 496 479 602 534 469 467 513 446 457 527 463 452 515 447 449 461 435 433 427 471 411 417 415 415 532 491 433 489 410 503 436 436 450 449 532 449 461 554 457 530 443 443 398 475 384 439 446 549 461 535 441 495 425 504 337 376 385 374 343 346 385 324 367 312 232 316 413 358 352 353 348 339 437 364 400 303 364 260 310 306 404 326 354 432 288 279 250 254 307 243 252 236 226 196 225 281 231 243 288 288 237 181 298 226 195 195 plex_nas +0 184 132 90 50 171 110 5 156 135 143 61 314 267 194 157 164 242 187 135 169 102 102 84 48 47 34 82 96 81 152 123 95 110 100 124 124 - - 165 127 92 124 93 162 131 95 93 95 108 93 123 98 117 184 134 119 109 104 742 742 722 698 677 675 602 575 552 533 507 487 463 431 397 356 265 647 625 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 592 553 513 477 434 349 314 326 325 375 318 605 568 518 475 433 401 352 255 896 872 840 821 805 771 744 723 707 679 654 630 605 577 554 554 516 473 423 377 325 274 125 1223 1190 1165 1111 1075 994 953 910 868 824 778 728 640 600 553 483 438 378 330 281 252 224 200 169 152 118 96 65 115 85 55 109 80 984 928 841 778 758 610 579 562 544 496 427 342 226 183 149 140 143 130 137 156 125 97 113 118 152 127 122 122 120 86 122 79 67 65 webtop_kde +0 153 148 144 66 155 0 148 150 150 154 74 144 148 166 146 203 169 160 182 166 99 69 82 101 85 109 95 81 83 83 90 86 86 83 83 83 - - 91 82 76 74 81 74 94 84 89 82 84 86 79 74 78 78 73 79 81 70 77 77 61 85 86 86 77 74 73 75 81 79 0 78 69 79 75 81 82 93 80 66 68 71 75 81 71 67 69 73 65 70 67 66 62 70 63 59 64 61 64 61 66 63 60 58 66 61 62 61 60 61 92 92 1885 1858 1824 1786 1759 1714 1677 1638 1618 1595 1565 1544 1494 1456 1420 1392 1360 1322 1283 1219 1187 1156 1111 1078 1048 1018 990 984 977 968 957 952 950 944 941 936 894 856 819 781 747 711 645 594 584 458 449 443 440 405 352 292 194 174 160 154 150 146 138 129 115 112 109 100 94 72 62 62 76 61 84 57 50 50 nzbget +0 147 233 213 140 104 47 0 196 167 135 111 124 93 93 113 213 179 156 126 101 66 32 127 104 91 76 55 27 75 56 39 28 45 25 33 29 - - 49 29 16 10 6 0 19 12 12 23 12 9 27 22 15 8 4 20 12 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_noml +0 14 66 62 50 48 38 34 26 16 14 8 6 6 10 14 20 6 4 2 2 1 3 44 35 18 9 5 53 37 32 22 8 8 6 6 6 - - 9 4 4 2 2 0 6 2 6 5 5 4 9 13 11 9 8 13 9 5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - immich_cuda +0 122 125 103 186 174 152 134 117 105 294 290 266 242 214 186 171 155 135 111 95 74 53 48 44 36 4 109 105 93 85 71 90 78 78 72 72 - - 133 119 110 88 77 75 67 416 410 405 398 383 373 366 359 353 344 339 330 320 311 310 301 297 291 289 257 252 246 241 230 221 214 190 180 167 162 154 149 139 125 120 118 112 100 86 77 70 54 60 215 209 199 195 191 182 170 166 166 162 156 147 136 134 129 123 119 113 107 101 92 87 75 75 240 225 190 167 151 131 101 72 282 266 246 226 182 158 132 114 97 72 301 254 227 207 154 125 100 72 53 44 39 266 262 256 247 239 230 219 182 146 108 67 265 229 163 109 103 58 45 126 114 84 236 170 75 56 42 35 30 13 9 42 27 98 87 73 72 65 45 38 55 48 43 21 10 9 grav +- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 11 6 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - test +- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 43 35 23 17 8 22 11 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - overleaf diff --git a/Stats2 b/Stats2 index be622bb0bd..0a49353545 100644 --- a/Stats2 +++ b/Stats2 @@ -1,132 +1,132 @@ Name Total amd64 aarch64 ------------------------------ -tor 381 225 156 -plex-media-manager 609 387 222 -papermerge 1024 527 497 -paperless_ng 109 72 37 -overseerr 2814 2266 548 -ombi 289 203 86 -omada_v3 233 145 88 -omada 210 148 62 -jellyseerr 283 181 102 -code_server 66 42 24 -zoraxy 14 8 6 -zoneminder 400 283 117 -xteve 936 659 277 -whoogle-search 414 263 151 -whatsapper 1715 1302 413 -wger 799 235 564 -webtrees 1641 212 1429 -webtop_kde 184 127 57 -webtop 1537 1125 412 -unpackerr 225 127 98 -ubooquity 374 214 160 -transmission_openvpn 711 424 287 -transmission_ls 1677 1104 573 -teamspeak 2851 1648 1203 -tdarr 184 119 65 -tandoor_recipes 1668 1106 562 -spotweb 612 428 184 -spotify_to_plex 6 4 2 -sponsorblockcast 82801 81645 1156 -sonarr_nas 1195 832 363 -social_to_mealie 520 327 193 -signalk 56 24 32 -seerr 270 150 120 -seafile 219 108 111 -scrutiny-original 30 14 16 -scrutiny-fa-original 24 12 12 -scrutiny-fa 1515 1005 510 -scrutiny 804 489 315 -sabnzbd 384 286 98 -resiliosync 647 354 293 -requestrr 117 67 50 -readarr_nas 1837 1600 237 -radarr_nas 1247 835 412 -qbittorrent 886 404 482 -prowlarr 515 353 162 -postgres_17 11758 5857 5901 -postgres 5131 3736 1395 -portainer_agent 2176 1501 675 -portainer 69221 61061 8160 -plex_nas 25511 25149 362 -piwigo 165 83 82 -photoprism 511 296 215 -organizr 501 325 176 -openproject 206 146 60 -omni-tools 1106 656 450 -nzbget 153 88 65 -nginx_webserver_proxy 225 114 111 -nextcloud_ocr 2837 1678 1159 -netbird-server 357 215 142 -netalertx 7594 5026 2568 -netalertx 7594 5026 2568 -navidrome 292 189 103 -mylar3 65589 65573 16 -monica 504 293 211 -mealie 4533 2923 1610 -manyfold 72 46 26 -maintainerr 97 62 35 -linkwarden 796 484 312 -lidarr_nas 1735 1549 186 -librespeed 1063 694 369 -kometa 145 101 44 -joplin 752 456 296 -joal 220 117 103 -jellyfin 71957 69572 2385 -jackett_nas 24950 24761 189 -inadyn 110 61 49 -immich_power_tools 510 268 242 -immich_openvino 229 229 - -immich_noml 147 64 83 -immich_frame 427 305 122 -immich_cuda 14 14 - -immich 2373 1505 868 -guacamole 2170 1529 641 -grav 122 73 49 -grampsweb 327 202 125 -gitea 669 387 282 -gazpar2mqtt 351 230 121 -free_games_claimer 1870 1078 792 -flexget 78 42 36 -flaresolverr 71762 70937 825 -fireflyiii_fints_importer 425 249 176 -fireflyiii_data_importer 380 238 142 -fireflyiii 709 423 286 -filebrowser_quantum 2785 1839 946 -filebrowser 21558 14322 7236 -epicgamesfree 1569 1118 451 -ente 92 52 40 -myelectricaldata_dev 186 109 77 -myelectricaldata 3273 1876 1397 -emby 198 128 70 -emby_stable 823 590 233 -elasticsearch 100 84 16 -comixed 681 317 364 -collabora 104 68 36 -codex 76 48 28 -cloudcommander 617 436 181 -cleanuparr 160 110 50 -claude_desktop 32 26 6 -changedetection.io 1237 756 481 -calibre_web 988 577 411 -calibre 738 506 232 -browserless_chrome 1081 710 371 -chromium 322 189 133 -brave 658 478 180 -calibre_web 988 577 411 -vaultwarden 396 260 136 -birdnet-pipy 111 80 31 -birdnet-pi-zach 0 0 0 -birdnet-pi 1 1 0 -birdnet-go-dev 4 4 - -birdnet-go 418 326 92 -binance_trading_bot 699 437 262 -bentopdf 893 565 328 -bazarr 241 175 66 -battybirdnet-pi 422 263 159 -baikal 910 522 388 -autobrr 129 71 58 -aurral 80 52 28 -arpspoof 86665 85063 1602 -addons_updater 905 580 325 +tor 387 229 158 +plex-media-manager 615 391 224 +papermerge 1028 529 499 +paperless_ng 121 82 39 +overseerr 2822 2272 550 +ombi 293 205 88 +omada_v3 237 147 90 +omada 214 150 64 +jellyseerr 293 185 108 +code_server 60 38 22 +zoraxy 24 14 10 +zoneminder 412 291 121 +xteve 960 667 293 +whoogle-search 430 275 155 +whatsapper 1759 1332 427 +wger 1000 251 749 +webtrees 1817 218 1599 +webtop_kde 0 0 0 +webtop 1577 1147 430 +unpackerr 233 131 102 +ubooquity 386 216 170 +transmission_openvpn 723 430 293 +transmission_ls 1861 1228 633 +teamspeak 2870 1656 1214 +tdarr 149 95 54 +tandoor_recipes 1554 1022 532 +spotweb 624 436 188 +spotify_to_plex 16 10 6 +sponsorblockcast 98379 97207 1172 +sonarr_nas 1275 884 391 +social_to_mealie 0 0 0 +signalk 94 37 57 +seerr 361 200 161 +seafile 241 126 115 +scrutiny-original 38 16 22 +scrutiny-fa-original 38 22 16 +scrutiny-fa 1378 905 473 +scrutiny 768 461 307 +sabnzbd 417 311 106 +resiliosync 655 360 295 +requestrr 127 71 56 +readarr_nas 1859 1618 241 +radarr_nas 992 661 331 +qbittorrent 3151 1865 1286 +prowlarr 0 0 0 +postgres_17 12212 6053 6159 +postgres 5165 3760 1405 +portainer_agent 2388 1697 691 +portainer 88165 77291 10874 +plex_nas 0 0 0 +piwigo 175 87 88 +photoprism 525 302 223 +organizr 513 329 184 +openproject 2 2 0 +omni-tools 1136 674 462 +nzbget 0 0 0 +nginx_webserver_proxy 111 57 54 +nextcloud_ocr 3079 1829 1250 +netbird-server 56 40 16 +netalertx 8506 5625 2881 +netalertx 8506 5625 2881 +navidrome 2 2 0 +mylar3 81138 81120 18 +monica 518 299 219 +mealie 4890 3160 1730 +manyfold 139 93 46 +maintainerr 0 0 0 +linkwarden 2 0 2 +lidarr_nas 1772 1575 197 +librespeed 1105 726 379 +kometa 161 111 50 +joplin 806 488 318 +joal 228 121 107 +jellyfin 87974 85279 2695 +jackett_nas 6 4 2 +inadyn 114 63 51 +immich_power_tools 731 303 428 +immich_openvino 4 4 - +immich_noml 0 0 0 +immich_frame 0 0 0 +immich_cuda 0 0 - +immich 14 10 4 +guacamole 2261 1596 665 +grav 0 0 0 +grampsweb 347 214 133 +gitea 2 1 1 +gazpar2mqtt 367 238 129 +free_games_claimer 68 52 16 +flexget 0 0 0 +flaresolverr 87430 86560 870 +fireflyiii_fints_importer 429 251 178 +fireflyiii_data_importer 458 274 184 +fireflyiii 815 463 352 +filebrowser_quantum 1015 661 354 +filebrowser 23997 15841 8156 +epicgamesfree 1680 1195 485 +ente 108 62 46 +myelectricaldata_dev 198 119 79 +myelectricaldata 3406 1962 1444 +emby 192 130 62 +emby_stable 883 640 243 +elasticsearch 110 88 22 +comixed 687 319 368 +collabora 40 30 10 +codex 28 18 10 +cloudcommander 643 456 187 +cleanuparr 129 87 42 +claude_desktop 12 8 4 +changedetection.io 367 234 133 +calibre_web 1016 595 421 +calibre 836 559 277 +browserless_chrome 424 290 134 +chromium 84 48 36 +brave 194 144 50 +calibre_web 1016 595 421 +vaultwarden 422 274 148 +birdnet-pipy 102 72 30 +birdnet-pi-zach 4 2 2 +birdnet-pi 319 223 96 +birdnet-go-dev 2 2 - +birdnet-go 326 258 68 +binance_trading_bot 711 447 264 +bentopdf 939 591 348 +bazarr 433 300 133 +battybirdnet-pi 436 269 167 +baikal 938 538 400 +autobrr 48 30 18 +aurral 62 42 20 +arpspoof 102238 100622 1616 +addons_updater 935 594 341 From 5d63e966444a01990891f4b78a92b0784d4ae6e6 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 17 Jul 2026 12:34:27 +0000 Subject: [PATCH 353/538] GitHub bot : graphs updated --- .github/stars.svg | 170 +++++++++++------------ .github/stats.png | Bin 1828 -> 3880 bytes .github/stats_addons.png | Bin 4543 -> 9864 bytes addons_updater/stats.png | Bin 1606 -> 3446 bytes arpspoof/stats.png | Bin 1244 -> 2515 bytes aurral/stats.png | Bin 1350 -> 2510 bytes autobrr/stats.png | Bin 1449 -> 3375 bytes baikal/stats.png | Bin 1576 -> 3434 bytes battybirdnet-pi/stats.png | Bin 1704 -> 3588 bytes bazarr/stats.png | Bin 1502 -> 3084 bytes bentopdf/stats.png | Bin 1423 -> 2629 bytes binance-trading-bot/stats.png | Bin 1756 -> 3590 bytes birdnet-go-dev/stats.png | Bin 1165 -> 2253 bytes birdnet-go/stats.png | Bin 1505 -> 3327 bytes birdnet-pi-zach/stats.png | Bin 1910 -> 2466 bytes birdnet-pi/stats.png | Bin 1994 -> 4693 bytes birdnet-pipy/stats.png | Bin 1318 -> 2642 bytes bitwarden/stats.png | Bin 1450 -> 3172 bytes browser_brave/stats.png | Bin 1283 -> 2858 bytes browser_chromium/stats.png | Bin 1343 -> 3061 bytes browserless_chrome/stats.png | Bin 1516 -> 3402 bytes calibre/stats.png | Bin 1612 -> 3451 bytes changedetection.io/stats.png | Bin 1461 -> 3193 bytes claude_desktop/stats.png | Bin 1178 -> 2284 bytes cleanuparr/stats.png | Bin 1430 -> 2761 bytes cloudcommander/stats.png | Bin 1408 -> 3085 bytes codex/stats.png | Bin 1525 -> 3553 bytes collabora/stats.png | Bin 1479 -> 3075 bytes comixed/stats.png | Bin 1320 -> 2689 bytes elasticsearch/stats.png | Bin 1707 -> 3511 bytes emby/stats.png | Bin 1401 -> 2999 bytes emby_beta/stats.png | Bin 1368 -> 2879 bytes enedisgateway2mqtt/stats.png | Bin 1609 -> 3491 bytes enedisgateway2mqtt_dev/stats.png | Bin 1712 -> 3630 bytes ente/stats.png | Bin 1585 -> 3392 bytes epicgamesfree/stats.png | Bin 1610 -> 3513 bytes filebrowser/stats.png | Bin 1590 -> 3505 bytes filebrowser_quantum/stats.png | Bin 1383 -> 0 bytes fireflyiii/stats.png | Bin 1577 -> 3234 bytes fireflyiii_data_importer/stats.png | Bin 1705 -> 3824 bytes fireflyiii_fints_importer/stats.png | Bin 1814 -> 4155 bytes flaresolverr/stats.png | Bin 1238 -> 2709 bytes flexget/stats.png | Bin 1341 -> 3187 bytes free_games_claimer/stats.png | Bin 1705 -> 4201 bytes gazpar2mqtt/stats.png | Bin 1598 -> 3466 bytes gitea/stats.png | Bin 1292 -> 3249 bytes grampsweb/stats.png | Bin 1422 -> 2831 bytes grav/stats.png | Bin 1629 -> 3746 bytes guacamole/stats.png | Bin 1453 -> 3044 bytes immich/stats.png | Bin 1335 -> 3174 bytes immich_cuda/stats.png | Bin 1520 -> 3486 bytes immich_frame/stats.png | Bin 1411 -> 3344 bytes immich_noml/stats.png | Bin 1336 -> 3198 bytes immich_openvino/stats.png | Bin 1462 -> 3336 bytes immich_power_tools/stats.png | Bin 1449 -> 2832 bytes inadyn/stats.png | Bin 1587 -> 3542 bytes jackett/stats.png | Bin 1213 -> 2678 bytes jellyfin/stats.png | Bin 1240 -> 2695 bytes joal/stats.png | Bin 1568 -> 3491 bytes joplin/stats.png | Bin 1616 -> 3515 bytes kometa/stats.png | Bin 1560 -> 3274 bytes librespeed/stats.png | Bin 1477 -> 2851 bytes lidarr/stats.png | Bin 1402 -> 3113 bytes linkwarden/stats.png | Bin 1434 -> 3394 bytes maintainerr/stats.png | Bin 1495 -> 3296 bytes manyfold/stats.png | Bin 1384 -> 2795 bytes mealie/stats.png | Bin 1423 -> 3116 bytes monica/stats.png | Bin 1491 -> 2979 bytes mylar3/stats.png | Bin 1168 -> 2610 bytes navidrome/stats.png | Bin 1402 -> 3206 bytes netbird-server/stats.png | Bin 1336 -> 3153 bytes nextcloud/stats.png | Bin 1417 -> 3032 bytes nginx_webserver_proxy/stats.png | Bin 1431 -> 2884 bytes nzbget/stats.png | Bin 1531 -> 3328 bytes omni-tools/stats.png | Bin 1489 -> 2799 bytes openproject/stats.png | Bin 1567 -> 3504 bytes organizr/stats.png | Bin 1557 -> 3402 bytes photoprism/stats.png | Bin 1530 -> 3256 bytes piwigo/stats.png | Bin 1391 -> 2916 bytes plex/stats.png | Bin 1195 -> 2676 bytes portainer/stats.png | Bin 1324 -> 2894 bytes portainer_agent/stats.png | Bin 1390 -> 2915 bytes postgres_17/stats.png | Bin 1381 -> 2601 bytes prowlarr/stats.png | Bin 1339 -> 3138 bytes qbittorrent/stats.png | Bin 1561 -> 3635 bytes radarr/stats.png | Bin 1444 -> 3067 bytes readarr/stats.png | Bin 1343 -> 2956 bytes requestrr/stats.png | Bin 1527 -> 3316 bytes resiliosync/stats.png | Bin 1650 -> 3478 bytes sabnzbd/stats.png | Bin 1255 -> 2689 bytes scrutiny/stats.png | Bin 1687 -> 3473 bytes scrutiny_fa/stats.png | Bin 1362 -> 2927 bytes scrutiny_fa_original/stats.png | Bin 1304 -> 2600 bytes scrutiny_original/stats.png | Bin 1347 -> 2469 bytes seafile/stats.png | Bin 1634 -> 3566 bytes signalk/stats.png | Bin 1687 -> 3776 bytes social_to_mealie/stats.png | Bin 1328 -> 3100 bytes sonarr/stats.png | Bin 1365 -> 2864 bytes sponsorblockcast/stats.png | Bin 1291 -> 2699 bytes spotify_to_plex/stats.png | Bin 2170 -> 2290 bytes spotweb/stats.png | Bin 1766 -> 3961 bytes tandoor_recipes/stats.png | Bin 1394 -> 2884 bytes tdarr/stats.png | Bin 1566 -> 3381 bytes teamspeak/stats.png | Bin 1379 -> 2888 bytes transmission/stats.png | Bin 1631 -> 3305 bytes transmission_openvpn/stats.png | Bin 1711 -> 3664 bytes ubooquity/stats.png | Bin 1615 -> 3449 bytes unpackerr/stats.png | Bin 1707 -> 3780 bytes webtop/stats.png | Bin 1417 -> 2956 bytes webtop_kde/stats.png | Bin 1579 -> 3244 bytes webtrees/stats.png | Bin 1391 -> 3007 bytes wger/stats.png | Bin 1625 -> 3620 bytes whatsapper/stats.png | Bin 1676 -> 3502 bytes whoogle/stats.png | Bin 1699 -> 3603 bytes xteve/stats.png | Bin 0 -> 3381 bytes zoneminder/stats.png | Bin 1599 -> 3385 bytes zoraxy/stats.png | Bin 1320 -> 2640 bytes zzz_archived_code-server/stats.png | Bin 1379 -> 2940 bytes zzz_archived_jellyseerr/stats.png | Bin 1651 -> 3284 bytes zzz_archived_omada/stats.png | Bin 1459 -> 3372 bytes zzz_archived_omada_v3/stats.png | Bin 1487 -> 3272 bytes zzz_archived_ombi/stats.png | Bin 1544 -> 3258 bytes zzz_archived_overseerr/stats.png | Bin 1568 -> 3284 bytes zzz_archived_paperless_ngx/stats.png | Bin 1567 -> 3372 bytes zzz_archived_papermerge/stats.png | Bin 1409 -> 3057 bytes zzz_archived_plex_meta_manager/stats.png | Bin 1348 -> 2861 bytes zzz_archived_tor/stats.png | Bin 1500 -> 3044 bytes 127 files changed, 85 insertions(+), 85 deletions(-) diff --git a/.github/stars.svg b/.github/stars.svg index bcb208bd9a..e5b9e4842b 100644 --- a/.github/stars.svg +++ b/.github/stars.svg @@ -52,19 +52,19 @@ -\nlitinoveweedle +\nclaude - + -\nclaude +\nlitinoveweedle - + @@ -116,19 +116,19 @@ -\nm4dm4rtig4n +\nSuncuss - + -\nSuncuss +\nm4dm4rtig4n - + @@ -236,203 +236,203 @@ -\nandrew-codechimp +\njuhenriquez + + + + +\nandrew-codechimp + + + -\nbaflo - +\nbaflo + - + -\nairtonix - +\nairtonix + - + -\nilike2burnthing - +\nilike2burnthing + - + -\nmarciogranzotto - +\nmarciogranzotto + - + -\ntyjtyj - +\ntyjtyj + - + -\nfkhofmann - +\nfkhofmann + - + -\nreedy - +\nreedy + - + -\nPierreNa - +\nPierreNa + - + -\niBobik - +\niBobik + - + -\nleokeba - +\nleokeba + - + -\nproffalken - +\nproffalken + - + -\noverride80 - +\noverride80 + - + -\nmyhomeiot - +\nmyhomeiot + - + -\nmechanarchy - +\nmechanarchy + - + -\nghisch - +\nghisch + - + -\neburi - +\neburi + - + -\nash286 - +\nash286 + - + -\nSilvioMessi - +\nSilvioMessi + - + -\nrojuvi - +\nrojuvi + - + -\nMiSebCo - +\nMiSebCo + - + -\nMarquo1 - +\nMarquo1 + - + -\nEalenn - +\nEalenn + - + -\nmarcjay - - - - - - - -\njuhenriquez +\nmarcjay - + diff --git a/.github/stats.png b/.github/stats.png index 8b40dc4c558bab19732cc797a5cc5801498d0471..639035b6d2572ef2d336d074cefb04b3de6eba04 100644 GIT binary patch literal 3880 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 DXgZF5 diff --git a/.github/stats_addons.png b/.github/stats_addons.png index 11c9a21d41b5e65633bc8a6bdf8aff3ee2325df8..601686fa3e79435cda3572350d976eb21531ca6b 100644 GIT binary patch literal 9864 zcma)iWn5HI_wE6dPzeP@KvFuTI|LNz?otG#8-@l6krqclI;2y&K|#8kff+)&h8$qX zdwBo%et3WP!@VEQ#6J6+v-Y!|wf3{u*%9ih^7s!Z9smG!@7;lsz)nC30JMOD+$(Lbv^|7x4GHQK^MP4=@rBD}n|Fyc(O?#4 zFiV>*@8A!)j=!*>1OzNi!>!8Yr}x`$CPQW&X^5C%goyC#mI3t8k`warS?Rv-T znwn071P=htm1g(AF$7%`Apt-#)ENgjpbHfPf(Ys07=Rz{G6Aq8iwgk&8kq(x;GC#~ z3iuuVf4Vw7^fz{6eD++_UnEGD2)X2t!=kwJqEAXcC&o&H49iX$Gy%b@yZ*LR>|)ZQ#(~;kCxRq(EY#U=1 zlVM@RQ`?-d6l(z!Vlg8m{v}+8&`|Uq035#@zC%)UtwerDbi&)wwq7puZ#gnntF@w9|K$tQ)bU<-ZoxmQZV8*ZZ-A*V;0>qYYMM zWv-;WC^#X&CheTYWK)@wrJLzxHP0Furjln^tU+sTHcpqFJ-61s7^4SPUTdegz~s-} zNE>0oHy5u|J*NT#R~*R+yI#vjyWs%VVO2VgY1a711QXVy8w3FLsQEO`e|sMIXoEv# zTW`Y`=n%zC^&BLKwUB#!J;s{>;9e41A!BYiV(!lue6{kVt)|YWIvX>o#kS6cX@4xx zWrvcXV$#w!Sb9P!I#MhjV{F4?b~2Q=W?^0QJT1k<5*XG-zx>?kpRXMfMksBb4Q3_y0=W(|j;;22qqZ#^?#{TH>DFz`20 zu)TSUxxhF$$3T)7f`#s8yYZnS)qr-XF#p69UoRDQLm%qzEWfJl0sSb84ogI^i?-SWd) z{R{IKUPm^UMrjX`9&G=1ADz*1%mBc!22<5{=3<)?xrv-4!kAQaF?49KjEbUcJp@KoS6Bd%qXfGM-b=nx&#=&+(=oX?~b^E4Y0|d zxE@<~#O6Rzm%89U`=1Y_k_a+MC3e7hsmKmcE7%8pwqhk~q7Y{5|M=hRcaM^FN@N05!+ zS-iWbN=SY`grXR3a+6m{w0CYakuCWsk}vke326w)9-#uV%3*91RI+#cRm$%7oXBX& zjs#P9VF_(jt4j@-!Hq3#9+V_Qqv+>T-_{s&lig8SYH(3lK;%o?GxJN$yVTA+mAYm7 zGOT!kvEN%0yFx$Kxz*-w3h0c+8D=L}i`7Zgt+@AznBApZXt_@ka+e}1c*zg@k0Z7O z#ppu0Cuhrx#YuQi_WU_@^y1D#IO~#F!H^2-v1VqsA;aYp5lMXJIdOddlY)!HWY_-? z12l4^kZh;hs30Zzc}W!ejMmIk%4Nz#W^og*gY(^QtGQ#@?32`EHB0% z`jyaFX}zC`V4+gwK=OHKdp}g$0JCl|INYA1Q^_g8PMrwlZMk2zhDF7%E1K`yu{ReF zyY9*;5{0F>ZyFPcVSw~I<*P0!MrP-!XvI`GoZHJ*i}Pi!+XYYUh+$ z+=JiY5uek0s%c!d-j{Y_kp~7v*4tU+Goupks!Iy+PF!y8y2ZAG&B^{+mU%BzBYA^2 z`<&12Iu4Ff**Vd{Ul`MOe92*EF3MRW00bulzj_cRxTTj$+8r1w&OPQ$#9m7J`JC$g z>$?HahWhy>7J-)AQWx2pYxFv=XzjiAw$wQN7bPIrrA7CKAp=fJiQom^Nv%Y@ZDQW! z;*{RbZFkYYuI0Vu`8_oKgM{p1C4;ycS_wALC@`6Zf94YyI7EdRq*rJ~Xv3VvHlo3) zmnEvAQ|dZiRL4T9 zbr4;UL7`?e#aXsc+Z6s+F3Kxkb1T-JG}KFt-f>HBhsZ;IVAi9D9FR`>Gdb~jLbrD9 zYaC8}A*@=#r~itjO}yvP8~Qw3dKKTQHOI+~SPL9r!&<(`j!zz)^~%V|qs+0QYDzhE z?MI_abmOJ)J_g9 zORri*60mhr%BtLKxJJ|wCtYdoV5ZMnjEK) z#CA|Rn)8=-%IPYFF}`DAT{Rm3r2k~8YUS5jDnvHKbx=W-Fld(|=>(}hSQ*Uef!rl> z&Lf&3Eg=z}(?jsC%Rj^b8alQD!ZbsbLic}yv(nJ_6=Cg8(bf06{fDvG zTKf3;?ZuJfU1YY(-{Qi4VD3+i@op=YV1J@t#K>}pW~SfDP%lk`qk7-z5 zRyjVZ5Bft!&A%XFQ8meH@yvl+OA~^|m;&XYs@9O9=6XdMqFBd#utr`-OTYHDjZ2te z*m}bGP9CRyE&zg;p?3A z0n+m|vuf}5U0Go;#mIsmhWsisyKL1%(Sp6*k8}XseBMf;64`Jl@EAllTTmxyKUB1La^Y+@e$fUF@D0BkU4aqkJh?(_6Z})2F(kNWQ@W@P(jMf@=<~=h>^VMV~tBZ zI*D=k|4ukSHAiaBw>7r(*yg&Pj5I5if)`v8D@u%S-r-}CafV-u8xPgW!$?hPPceu;eA`L~kG zzq8f_$D0O~g1UJ%W>PWJ+sfZ#2$u@SPPs=NR1hr;+Mqk{c%_g;iKpkkaMUaC1{n)9 zg!bVj2&=_^b237Daz4ifmgwwt3)PJ|w7HJ7>u((kpL7+s@0H>MLCv#i>JbN(>Uq6A z<2TLOY}{S3iDJM##rL0MzB+UKC29CUXoS@F0)SvvXodS@MWPaSx#&=d=OOsrjW7OT z(5hQSDx2ljvwd!AY3ZTn(I093PZ-<-6#?^f=YwU({&}7+3d*3&SRJqzni|55=il2q z(W-}6@_^XEI0kafw<3v9Cy$tNn%Q!%utYxswANN7%HOux@D@x5)A`e~BmHoKq*)K1 zQ>i>Hc2}cEdYTxHXMviHR`}i|h?>-6&KM>@ zK<n<>xIs}+2a`tM#1W}Z0>??hNar^_IrJYTaHrEz4WI6gi<5ajkY3kT`mvPm>W_oR2L)L>D zr*Ij17zVBNY$?%$iNm*+iBT7V@JcNl;GPQWh}NS@bzsq3w9(2i!4ymb9R}n&9E(cf!Q!;CpizLI&gslY=B%$ zrJ;^a8%kUWVRhQClusjoIOvyH{Z5g(2RM_YlAepii;THVtTA*TaMv3!gTn9Fi%%%W zXTSvBN7@$h6NL|?$MxY&mA?&iXX?zwZoZ;KmN8fH<44xGEU9e1*z*7W`f#9D+Pm>K<2N>7g8R6wo_!QBJuQtHQkz-ZNS$>%OWG_Ug6F2edJ}CEAdm4I= z^nV!ll5B}c*wmMNz}f{DqS98XRcn^DVTUkf7&9m2KTSs;jBPR+ge9Rx4N?+QPiIT9 zfS^@1*EL7i`zC|u<_d3f@F9&t*q}BfdXDCa&6at%vZkspF!*%axo6G@OyzvcFk4|k zp>7NP%sM!uYo?ecXeq5!_hT7UmwsR=#hd7!#-HGr?%Kkfl)l>8<~2w?O{Bwbwj6cE z0Rji&TxwA#r7v37XPN$z}r=w;@Z@gz0E&!lL=Y}C^4-ds`D}Xef z=2nt9( zQ5p>;m+&z|FkK}_KBh}Fo14n4AR&&o<@mQl4lcl6eWh7B*O^pCb&R{;hVe>CyMY4` z1QQQ#c{0@A+vdc6ZFjukua7jH2s6Xh*+xld~B)$aA!@&g? zh0!v747o#VJ`iDNeCt93r@d_PQ;C4hqAKBzImrC<8kp7J- zX?5mXM!EN*o!uL!1id3qJtY$tPT%?lVu^_?Y{Zt60(=kD#LFp_n*z7s5 zoITALMoFNx&5up`3&!WE;}`kYR`$E>C=VZYliryG7*y-IU`Q#FqX{Q=A=+FH(2(nJhF7*!VqT2XE%D)rv21+(8eh~u;< z9V@@@egj=_>*BH)=1+5Tu$tU%(3+v$JLZ;MYe#m@1jA$E!KlFy^2s{*yOLaH#Psy6 zODM2yzpo(8E8!1fgji$H9`R3Znd%Fr#P7D#%k{RiG_fA3BdHsY;l$Slb>g?1?FWHU zd^H;oS+fhbMFugtzf!UWFF9~TzfM+i)p8Z3Iy&UU*pP}{D1z8ag=tHa)l@V_tB? zof&J=%;dR8u`*E?tE?c>=HL*wT~r_V-2jF9R0-P(5QV+&zP}B1`WWVPo0=D^1Ea!) z1g*RL#F-t_YnU+w4dM}LtVst01nuOvItZy3xVncB<*oHShWm`PT|<&N+YOGc!aitb zDhtL-_)G|eJYnjZNhfuXNV^h3xi>c?H>4uss|={q$RN$2){xyc0ND;84MsWSVn zO&f}e8Ex*4qH-N$Xq!1?f72td)IK0uhSRO@Gyh_DlU?#h#tVeJ0Pfiec|ec#Ff9y^ zZvTqKcW(w1>lJF5=zmqUm}d*iQl|AyQdWT;h|h^)K?dc7AvP)ElH+@kHGdmmZ5tLg z=N4nau;UN#K?Tplj}xI^g}BlhMNi~x55nao2g@=l7EDHPz#JG;G`+Gn2)fjihQ`K^ z#-nF5n&q3k5dX8oqtiu8UH=b3L`TP!LV>lC&$D&qx2ELtdz-o*?p0LIgBQO^(T}VD zkVoUA--Na6`I=+p4dFBX`TAI8d`>ljvbS53B@8i8y3pro=O~BkFt0O-(65jq{~g`Z zn);4(00c~w?S*f0{08_rK`60{Dz{~{@yo53%mWkFFc=#?fe*Xu)e>&Dkc5)gyKA9e zC%WK)W_9f!m!m?z`kh`E*)AS=hY0F6$Y!k(I7h%s9A|u5sCtc*epBvuyqARad_E5S z${y~6OV^6#-c4%~7Cag4Tbc2s^!Eb!O#_zm=u!lxTc_%36-_bQphDZwn>UXAb<~+y|tc`z9v#(J&!AI;p@T2^-ZF?0WWT z?C~cDVd-%oA(fnbb0@4s1fJVBeQ;kN!*69$(qg)d?^Pp%wEoI1G4t8(6Ai}Mxrb?>LHHcR$A5I6ob=DfmA z(1(}(d1SlAA%7OX?0S8skuEW-EYX0tw76qERo!9q~of#m6KAg+hjPz+r)0^4~r;0bGi+yD=*tT7~ zEYjMcNuRI1;?A{bznzlU!RET`*C7*I2)Nlj^{q$JQYCNkhKhAix$mM6xw)kdb_UF- zcqSP5X+DtJHS6TW>Ze zseA+E3icz$OYrE-Zc1)_5fzfz;v060qKr3Lhu>^9dsK-@>+W|@EmIpGg}y+?6FM%W z&HBw0a|is%)`NQstKp7ukq{8T+^YEfax5f4)S6{_+QfbJNxHz00Dt4sZM5@W3*Gwu zoNP7q*=O#QXNol9zIn*giwtbK46&3&j04_!wD8BsPg%ai`@M4`&rL32FYKfyh8>BE z*aO!950tdMrBto!@9=>Ko|vrD?Z3n=tvoPb3u@_e2eaBfFyu-zwfBe1$&h~nN1PM= zMIYH$ItR}WggTuF%1mideY+2+n%`f-QE|mm;@zK*_X$T7J6RCH&hibuvxkoY#RsnG zI%!6n?Feo?QOk>^B3DKTzD2Wu&e=%H?!-mmx__TlH!-9#mT$f;$9-&EAzw(m=#`L4 zKbR-ix+zO;?_b?#Y$w$Hkj~OH7w7`JHNM@1Q$hw`gtlB?I&pBc4W;{vv{|rJTClWP zyrp1%VTS5HEea9K*M7Y37#@8Obl2H4Oa33vGiI0FA-gq-!;&lG##i06diHB~1NT4$ z!4B7p2iD}jw=3;rI=JdxPPnz52)J_6S^Q(=h1J@k69N@R7T*pnvZM?8xtpJFu2u)O zs(Lh%91=#(Jcsiz3ZTn$e|zFWLN6KTB&|)#{}%d{XrZ%=Lbh9!&@rz9MjQX?1w5I* zN$BWyk|MrTx@|a|oZDBWzF7#ah_|ce#y5EvY4*6jXMeOtIrt9_eMMTAu2VqDCvsS3Mv($_4 z`R!BHn_YbcvJa7@I#3PEGs5;(= zob;jrpNhiO)a@ru^hjxWv-i<9zI;-7pv!`xS`7-bq$}W9l{O|Io;RK7sL$8O>3XbP z8}_2;4-Eyw<-z$_CbiVb$VMFHcfZRkOUe!I`G$9}ZuCG}NxL^LWbt#eqgzA5n`2<;&Gf?~w5*aYA*YEzjRi_gUXA90_79lu)fMveE zJ)sS>5x)9qhnx*SP!)eWYtMw8ua=lL#<9sZ_;SNNJ|Y`IYJBhLJRD1=+QKh*eS{?>WT0_I3m4;u<2NZ@ z@wgQX!5z|61N^rSE)Ey9V;p-N+L5vHGllcf3mwsfO2j9r4X3woNKy9n^u=N4Ok8_y zKugz!b#=4fI!}3()MVG#RbVVPxvhRjL53gd)Dml6%3mi+z$NUqvvt{NR%E$cY(-Y= z?@M7m2nADBA4vmp>6^-0$>+q<@)=y;6noP+*@yk`S^r!*|1ILI`P$4_KZpF}og+O2UrOPuI7o z&|M&=Y^Hs>kZ}RK*}px>Yd5Lk$rJl>-h8|@!d#`tyYIST>bMs6y~v_Zloy>anrhUG zw=%J6sZg589XI{UCwoUQp`t197#}4WS(DCI<#T(W9016#55)|pQYN2O{uRpH`qrE& zB8NLx&hzf`jyJt*Lo+&wj?}tix{=NN0V3cMQF+drNC#_ z^ehSWGbxu4`c@V`$*aau-~N#xXEUeV3U2r!kI4k33oU#;7uxA>e%N(8 zg+@eU0xVw!vJc+Gdt7W$8lHz z=?z(POyFGo|JnnT9gBOW&XW6lCr5Nr!puAW5Zq)#kq9?dQGUAcIYsz7s_VoP-bV|*}ZEQ?feKu2U8?!2jqhHnKa`}Y=egN7>CSP8GA~WBJ zxcPz8M-`5A`y!^q?a^Ncp3{HF853<~lxy&Z$QFiEh?p0N%`LYhe(p!)r4Vf_LhIHP zCa+Mjn%Bce*+))!%T9J%7Epo5QYqqLDJ&1=R8~`1c0y9DcY;#*uUcFRnW!EkQQy*k zT-FX{g3p+<7ch%$7H~mIX!wUaA4*gj5?_h&v`sIh6h3hO&tLgPX#PW|awepjxu!o$ zGCG>~90ze=5%R5;n-h{)YwDG1_Ydwn{_Co)m08y=IFNa+<1oYeA>>4&vc#E>xtRuh th5b(K%&8FEZL|lf^8feVtI=DWDE=|e3J$fe;CnVe;kBwR7L;)|K%SM+NkijRN(-gb5^wJ=AZ%q z005K$)9~a%`}fE7>Uzq7=n8hStUKK1!}Z|GR`=|o@9Ot{!OgYBTi>LoW5K31mAG1+N+aHCNl{k5ClOG1VIo4K@bE%5ClOGbhxOe_`AW6U2j5WVi!FLtM@6O=NY<3 znYDNxIt@Pde{4P!H4=~^&^HvR5PJA2^MkH`e?W#q-)89{V*f|@gaEtg%{%Aa5zg*; zI~P4BP+lB52!bF8f*=TjAP9mWlD)Y|e#QxNPX(Kv;C?_khE4&!h|~eSpe=kNbP8o( zsvSA1bAC(f$ql}Ay?H)JItkZJ1@z-&OmPh=lP?n;uEWyvlsiMC(8HlRWp4fRf5&N| zQ>>+^vPhV1-q{FGX!Q*A^91b+2#(ybD}?zqsM+S7ilAf2meaN9g?e59df^1HvBH zq2G=G9nb+i_i6!pZfDylprb+p(DN0piPW;j_VMO}a;@7rpyy;lnEqz>Qe@lU;k%&LC zVKbuo`-R@+;Zf{RFz6_20(3w>%^sMsmsjsE`U)5cL0MCV+`PcUmw_%_)%fRw`ctdePJZ^g==(0J`Cwc(hQJ0($YPlL0-?`#3~umtv7Oe_=Szt6v0kgV%TG z7n`E7{aZxgI1l>u4A9NZe%wH&!D5kYnz=9>=R$w=q0~b2d1QxG{vM0MaVzMb zGmU$=pu*);bEq_-NTL4vscIcL8aHAJ=vh?#NhNd|ue1R4EJA-$23^1tTXbbnSD#OJ zs%qKd?K>Pf?OSWIe-r0gpkv6Et^FNH#8XcV{rXiI^t~EtKtEssa4sz_x@=sq>1K2l zIa0oUeNg7e!P1YP2FWiW$AsXR8pg;fa-@8z4Elcj0G%APlS_~m$3$fV=!D(qBUJP9 zb`9N5P+IRD&HD-VcL-)(C}kIw|Y8#)}hlkDaY*}a9WSmiC9xzC*dx|JaG>Dk@Qfr-Ks8ryr7dqe{0&v4}O z;dnUU9`thL;uT@$)pc?{x21l-7Dk+4H z;7k#r$1|WQMGABVpn`CuPuM(SaZt6VNlI`lUkX*n!a)=y%$tR#D5A z2k1$Fs31CnTDDB;O0w1=X+9lE6sACTR6!>Q&Hy@~e`i)@=k@_Pa>avwqi~iD&`nUY zq6|7L-5ltR8}#YLgWdsjK*!W-0iY9YQ>%bp1n6+&jL^NK4mzqqI-uAg-zxPKLWd(~2=uX1OGoo=g6b2s(Ba6L0ez+pI)(Rc zg03cye=~&6)EV+fCQhyk;^1>$yx_QBNxoMU|G0Ff1{ns7Yy`4of$qsOkC^j$E?sJsqQQu2WZ|42EDS7t#yDSXS%Kcy@=5JdZA-y2a>^nTwk`pMT!x{#y!P@ ze@;-#mOTwGyPBcH(lZEsBwNZR6??}PT^ZE)bM$&g)YY=Vk;}e1`}r~e^kT{RTqnbxVOQk>LGMqV z+{BsbQrFtBfSx&ZDvQahJDuL6*u$kTnmP;T)}2{>`-1mgpkeyE<4v;te8bWU1>Fn1 z|NDcf)#8lUrj{3lo&I}7M6Ni_`}Exl$o0O5u=L_UpRYpiZ(nn4uv?rF+o_5 zgQdUot5&^fmzWV-cNLI3qY886VCfl?-K@7rxg0w0eQ#5?>CayqwQNT>K3^r>%-8>v z>~J>Si^BGPe(Sno@2F)HsI)RZU!e`^WbW)ide_oC^=*_yWZ@Xf@tGRl(D)SF7Aa`buh_)Q8ubx;E&EnSI9@E!HY6qRV~}L!{NxSk#95UmaXLro2^)5KXpc4hFs64 zNQ^v+`&LhFlZw9aD&EDrBes#7A$NcO1?We2-(symU8@%tyfx`9T<9%(fA|gP`pvu~ z*%T{y%tT*l*FWah&&{*pA3#5?nQybp1IG!Xcb(>M)qd_QA0Gi-t6J&8Zi=akPgm*O z+W*a_%RfUv*Xp!455lCfaVJiFzG%O8dvAZ|fUZ#zp%+_sra!GglayYq8&4YqJf>`;8lrJChx;0eadNzSEw~ z-g;kvu0J>CnADjO0Mntb-MEkW1sQag(jzuN*WkXX9JqyJeYQg<9rsbX`Ec4~a3?=v z19Tnko4S;WFsjFOf9R`o_Af68X*`@skJtcRi~FW5GG_}rboc!Zsa;ImU)*83>>L}Q zs|va5>DI%?h3nA0F5_adaDTaJ^xjr;Y?j`QdkT;ZtGrOfKD1-tI&{yacdC6aBy%?y zua=v!H1Ern_hN@?&+b)87O00VV1zlbYqd4!+2GB~inOprf7c?k7XX4Z(W94bI;lUo8v!vh5ALU90pq!5Ei&^`rwp_V`Nl3A*q?u-z&{u{|-aXV^%bG5~2%zty-u*TTwc5!qu0jNcKKBOcR(EjM`}qd+L)u(%8&J&{ z^Rj2??jYUs*&Chl&mTaSCw|}C+1qD{d8vG{3dVTDf3$~&yYk2*pv&5LZ?`2^EA8ws zC$>AaM*8ca`T2k>rE{f<2%Q-w-H%hoVA>k7y8(e!B73`o&&&Lp#C+AbTh{qn-f}aUSnH2w)jyXUDG4kxgyNfL zOfpY~e|JLu$>YDmeF})Eaks4Qx&Nx+EgJ~vB29<)JH0iTmN)@!9AuhDNc>TTooaO*xbww4Fm$rq$9XpfdUQ0M zBC_SVY{vzj!r)W41)@L5vfAW)9e`aMdS{PZe2IRed4nt61E|(Dx{GFavr?JTI}u=KT>_b2vHS=sLz;ez+h&Zj+bld6+NZS-gB{ zx*5>ZrY`yHy$9rwCN!I}+`ilp1FGKxyT<+>ul3KPgwO#JR!<@P@lVMlzn@0@9+(eIm&>QZ+$!P&%2AHQ_Q$; z>W{W|-`3Wq|C1%|8n>&TKVR#OR`y4(2s&HvK;@FnzofeHzjrd$Isd!(n1u&C+@!x3 z8y70XAEhBBH^qs@SXE^&wjo=)PMiJ9!~Le(ASRJZz)AL{JcRod*1qp z+z6kC-K4kN3;(unhZr92x41$r$5ZxfKI_QPB57YiyuzN z_LqB{oTNRu=5-#PdSB9Cc`Aq9Uw(uews9{bR~I{+y_(2N`I9G|Eydxx zFP%tTdS*^e(%y90Rpo;3kK9NaU$7?a;c`c>-qLzFmAQ18qb09J`pTtlV`}E>_9Hk$ z%A{q zKbMEjSc;$_@n15ZuAeQs^>gl}_~;!cCn-<9%PwGec$hMuG1;NIFTU^JpceeIeYQ^Gea>@ zP{G3Vl6};R#i@aiV`NG4Dn&#=?p$#EFX;7Chi$-$1c?_(3iB}2QK@?x<&KsE3M{ce zHvgpooVNZC{_A*|BMzTsa=zz#y|(Z&ZEaIX|8Z_WSk~X?b=|gHsl=)F61xY_8mM2Rvj_&G**de4HEjFd`Xg zcDLt(8gK9ok}qNgtE!x?Ope(fRH+fvIo?#ln+YN4A*#{2hsNx`DJkyy`8av*9CweM z>_dJ<`&K-)5n*!!JTh6$*cKsgU+5>W8Ofn|?+yI_DF5+-(2VZT0m8y_cW=d7VrvN( zaJ{olzs1FF_hB<6RRI#m#aV)-%6Nak$Vq^}hrMym;_XFVAfok7WABAv?O~P}5ZCJe zZ)vBDbN@_@T&-p@0X(o0w6*M@FJjk;_e}8Jyk;#n5h_zqmtW*$V5f7kM*b#qNj|j@6=H@y`DGD$Nyg zdkRk_o>Lw5T;*d$+X8Mw?jm9zHOXjkeZ0g{aPe#6rLeXtT8Z8Eg;o`8;O0*)t_Wq# z?|8JrtCItPS@dhq=(OrJaCMX{O06{p4IDwuj+H>{#z1G5Q%4pY$jufTIJ35U2P#NIYf<7!3IQL(N@k zu3id=gOt{KpB#q(8Wj=s*6|*weWw%dUwMGLCGSOacb&N_$~YVD<8EtJ`^!Jju`404G+Nc z=evphv}xV*{he5_F$rS%4i&vCWrdwgb;9g^$>)bTifIp!%|BLG@T}`}F_f%h@w`Uq zPhMtg4H61mb>X$h7@rzy=EgajmJ|w{!)&!aJ6mf=`sjKrIa0a)5J}T3pxb>G+i!6oPX7K?`JvQjsQgJy)&u{V zcg-(f>0#k48%n#S^%SJYV$aXtpWUs`G>E1b6?A_4RnQHy*Tik3#|!@N97evs)DkAZ zwcn`1zzY@SN97GUo#_u!F=UP5bs5bcO2B))TxXb7JNoxR+Q)b+fx+aSXt*Mq3J(f} zIRKZ2=-trMkykKYKL`8M1_~zBULP%OpahIX^2P=GVe;~zQ7iqKEkN7q=R_vBLS6nF zV%QNXro!Sc3Ykwty*=vVye4LJN($UWd$E!+R}s*&VRy@gfBwMvj-|{CSnVGGp{7$F zD4CJgkCmz>S9y%mwFH?O)FsaJ9@Iwyd+*-unnH_jsZ|A0s*^k0#vi2qdrPD5%+U$o~e59sY*R~ipbamX*%V;^67na zTmhE;R)ZoYJiy!%N$b?(*~0HXJ%{-M`lz3Ue4@tX3*JfLN9dw z_c&&46J!+@G)25!Ph#&fnalf&Ls!+cVaU@RYmd^ts27sdL%xR6%E$;$fb&{bcu)w-9J zs1h2pI%9}tendpx-=Zf7|72t*A{b*$Un%fOKNyrc-!{j|xL;LaZoYqQ1G1WUnEZ2% z=33S>yunOmf*Zl>(Qxs#@3Hqi!bRTXeyc@+pKHBOL{K3c#%1{6w{95E;Q6JxHyi*1 z1AqTQ|Akc7qlrkH=HMzT4)4MWCHXhM1hd-knDKd(jCO@j??33IsD3RY6o*2U! zd|a%-04LcJz9?w5le4#pM7rzNk?mdO&!sq`bGe^u7`k>UC+H3$jx3OU%Uu}YtqqtM zxvllx&3)x!<+NeKPaew6=La`(DAgZGoO`9a^r~Ze4ccRN0<}{m^>V!CPr_~`U?6}M zZ)&f4zpMfdH{jLspQ$S>GQ=rTj;QmhQ#|cK*uGLk5I*2b7JSfr+i75&h#~7(ESIi4 z{A%MIM4BP3t<>_fw@2NDsNh7C)88hp8y0piFHMvxf*k&>suD+p#8cP#ZTh(x_HHjV zgvhjnYw8Ck=)O&R*84N0FD++|JdHrd99h#Cvnw0p$q1@8*c+yR`*Xd^5|iZ(P^1x5 zm)}M1@N)O$dC+Bk`-#pBr_CX2U);D@TG^rGLAfi(QPJZpz8fH^Ze&wDgaq^8xswt~ zE^4xv{+;!@K!zgsC8gQsT{O zKID}K$G^rdn^-ZlRh}mCpXv4OH=eBG64WZ-@yaMgprtu1E{JuFtf@P$o%We?%;7DJ zWP9Fqik^Q5l+c;fAvKewZi<#t>E8K0xxja`Pg}4xoa$df!*1K!>&Vp1W!XJKQ zsV&_h_90IpOUsy0y5OGMJb3^rqS=da?G9FVge{;R(#%w!%C< zB9>@iMJXd~J7Ek3YDWud;P=F)1^zw6%n+&Wy1XlBcVv}Ddok=Gg*R@~eME#F?&@ZqUn9Q|2zNP^m>68nOrzwUb;t+xU+c?*V5so)59$}8G`6e?uevNm}L#$ zZE*XohQpg_Zmq85WFzUrOAqcgH3sB&lrJ2JN(x=p!85Itt#|bfNUjL~n6|QB<}R9> z{RZcWc6ef3V^p-yxN{Mx>!dZb)0ZBrByT<-#6vzE{rsc4$yt`?qrWmRkgaBzfmt-^ zKt+{_x5b775&faAone_Vxl{fTw}GhY^WdZzPS@}KFS^lUG^$(&=(<+ty?clmTvB)_ z75L!k-R-W!ZxSQ5RB~6YkalZNH{P=+%HhdMl~ju2ti#!t<5v6rk3TNLflpWUNyeiM zc5=Xm8JXHvpzXoe90??)ATJfb%z>lW z#7ER#*UE;0-OGOxMjEAXCL?dic(F4rI^Zqwy*=G1>TyHUe6e!JvqIC_yN{Ic7YV)f|}8^^WB!Qw1wAtrc*J^F=1=wI$L+#j?I1#vWpfWt3Sn@ zt)J1RnaJ)SZ#;=_NTZni4ZL|0TPE?QC2F)xO?IvS%mV{(|O=%iOcz_B~lN= zE|-20Rb3YrAG6k4*&;2w`ChSeD>ZAz!{Aax#4Ujki7zwfZdv;jPLbgEQ{U~?`-La@ zY)%lhw8GnlF0d7*8?z delta 1580 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 e!#lcO{{RK~5)N%NAcx!l0000=V diff --git a/aurral/stats.png b/aurral/stats.png index e7734047f75e736f70d0572f74023f57bdfd346d..98a4e4f1b2d1d6aa4f79f3ab46f22246140396bd 100644 GIT binary patch literal 2510 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 delta 1322 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 Q{D6SP-!>+-Mz<3F1Mi20fdBvi delta 1422 zcmV;91#$YX8mSAA86yJ#0019Did_Hz01r@1R7L;){{R30l?2qkW#!&aflB~ zeP?_!??6WgA%qY@2qA_sQ^C*$=pzIX$-&HMiKIICQOFKcPO;n7%QGdc%ty zROtnbi~0NpibkIp`FZ4Yp@hrc&!L`n`Iag^m}4`(ROrWl+Gr^H{9V01f2rRbk!x*g z1ZSk^0!FRvrXF3VIB&k6OZJC6-8{za>>x!KFfOMP1MctMVb=b=A^-b>DZYSFt~GKc z7clCRLDzKkkPBt>jy$=eJh-#N^79S!Yurm46Q7I7T{||uTu|T0zhp5xJCudKgxm*c z$@+7NogE57w*tn%$4lUlv>ub_)a%1AE8g12zTurXx&h`R3Yfz zbBd$&rhQE~nT#yd<4(I#<3V5YCn0;+_JMtU#tb=6YXZ8IG+qG)e?GhyYt1|@cQZaI z;mGAinWFlF>1uSZbB{hSPhZkPv>U=#1&NL>I_aXj*Bg!MLtoOfi7((L<+`+wy{g|? z9r}`-L(U?n8@BRmS%hh#8dmOr9y|-b3~t$-)!bz~4>5uSbWcnzeNUn&pJj{iQ@%f1 z#y%Hxla8eSGc%VEf03wEwBxwai4`CHGCYbQ(+J&ZbIz0<5uw=8Cp%$m+;9OgibMvp@~dDW_@OL?@Y zjCe}}?7be@fW(eSoC zYs5$Wa<`50elGGt-_8~^Sr8FL+8ib z_ThRPoScx8pJ4O;Y^{_EX{C~mrIL>Xj=5hWA| c^N!lmKVs4j{JU?*{r~^~07*qoM6N<$g7yf+e*gdg diff --git a/baikal/stats.png b/baikal/stats.png index 999defeec7921364cc651f3dfa2a0d601fba60df..44ed9a49e9cb0c9d9f3b9c8320714b8800a705ac 100644 GIT binary patch literal 3434 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 delta 1550 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 XGniZA6y-(Mw+>jE+n9YYy>k0M-a`dw delta 1679 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 se*e^xAU_~;L3pM9FcfD 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 I*1{|0Uqu;4DgXcg delta 1396 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 delta 1732 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 delta 1136 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 delta 1479 zcmV;&1vvWu8Q}|%872b&0019Did_Hz01{A4R7L;){{R30l>*etfa&DE^sqzURoo9Q zks%j<1$9Y8K~#9!?VaIbs~`+UiNgE8^0uzFih!u7K+gB0tJg@m9>EX;8iNo*2qALI2;BFL^UHfAi@AfZkL0KGFR&_i4|6^7??eva5r0fDl3mA%qY@2qE+Q6DjWl zDTqnUA3Z=_NlOPh(2;8Bf?Cmmr;rgxPEKSf-D|46(2^ZAeSIrQnm|{WqzQC|Nt!@c zn4~GGU6M!}5;DYVOwt^p%7!k{iUr1OKyM{UQ<6bfiCzmpZ#YR)%k+xz`__QTa9-aF}1&oY1c^>&>$;p}De(+SR8@3-5$ zaC~|+SMt%SFoE%wq=*ZTBQer{RQi1U!UIdrT7~*8H}uockANaLQz!HML&X$x?ScL< z^AgZWmuif8_L%L+WCx(v$^1NYR*YS%o_wxO(8t4#Jxq>SUf>#(_6GL|Z!4A7*~#yFhT{nr6NgdnY*4BXh=o=?a=L9e;qjg;WplfN?K)>~-T^(#9a>`nF9x2&9WCM2Puya|mXQ1PK)4c=y z-q>j;5jmZ}&xBzcAE)aDex{|j3;p$qO1;4KLH}>ys)3h=F5&eo?THvz!4_%NH}G>g za`_Rt-`7jo?QqANb^u9y4@2-u=dw*%-M`%JsRpb=Wh z=tHS{$|a`C3qAX2bpai5Ye?QNEGGrP#a%Z7)*J$HRN%nu=Gfke&;~yBD+GH%d60<-@;V#N?lndt8=8# z&6=9*LQQ^6FF2{&Q`cV|%J(G?-sZP|F~MB{OV9LEzliC7Ydq=ev=m&~*5p}@msr&!{002ovPDHLkV1nd@^K$?I diff --git a/birdnet-pi-zach/stats.png b/birdnet-pi-zach/stats.png index 7dd11766393bb4728a4a13b0ea8d1c95672db210..a52324c500db7f796eab5ef77c1631ff2bd8e92b 100644 GIT binary patch delta 2435 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 delta 1875 zcmZ{kYc$(i8pi)=M$%E2)6&wqL@x+x)uiJd_c}(AYNedIR4sxU4Wc3(@(=APJ*Z2S zy6Zs^rzk~(L)4`rCC;c(O%N5gA_x)@baH0atobzi%U|3};rRHF-w=zvVLxB*sY#_^5mJy;m%Gob0aZlOUy zmFXV=2W;bVEa{XBu@s0iAAsg?Ag~KGsNCNOaMdiHf{_+OhICjj$7zU<`(GmGWpZ!eGSu3))Fy@&xnqV+-}2m4SU%=)e&qzx?bW)P!7lS(ZOy)6do1mGb4tMAExR@S4I#7Xjx z9|nuL8J2?0u>6$G6?+^b!hHX)1(k|ZoA+Rov>ZuJ=(P{e`qdHw z4I}WXw}a!KHoN%YiL`@ggE;0qcbt0zLAi8cgG|pOA(BJq48^?S4{5G0@Y`|}4N-(JFljp3x@-aY* zOjM(rfD4+@%=zch{S9pv>sDld?nd1A`>7%C_2ZLjAR7QEM9Vw5Z z)#3D0j@ark3MHBCTFQ5fBn&GKMXMjW9ol`dLI*n9!W&1muK@>F^KfLYyByGK6sbz5 zdwkqfnJ-~gqeX*%fa&slxuWU7&K+*HG!(Sql(EKl_mC4+XB(S@G6U@~I44Kod9UPl22ksNAt-+!emO8~>X0 zrQE)V?AAS_kc8lY7@dT(i3rWhSRUk5{#HQ!#VvQytuHXrXEH%?%t$X2*hZS~Q|=0Z zy%r4L#l&j|w&X1cD;SCb+}-OJ>bVM|dUI0fkOiD)Q;@x?1u1vX6o_0XI5=|+doO=R z>QbHMhk-A7;jx25F97$Uo*4cOv~8x4i3&pjpkK6-5}iW){wHiCd}*qEQBxMRg*F%g z?tkSf+!Sk+J28r$*E{=ZAtvI~jimWT(Nf|M@Oyb<5UTlG@0VI$!_rUsZIMj<$B8ql zpMdh@6~=*)(|eEbvfwVCjh0yNc$ENYw8+=B1^y(=q@!wu~|irm&reuoip_s&&`{`Fkj28!6(TN z%QTafXEjU%UGloi)C8i&g=xV8tY+0)vpx}j`2v3DG-a`KG#bvmyYNRal6nEyo36)t z_s4f8|Lu|m`ug}KjL(@)*n#z>Lx}4b<3pWyYrV1OJC%GUO$Ar7`nwemz9;DpHfLOd zPYOz#^5> zUAxwulH&;SqR*%F80(c|$AdLJQyW)9yomnRCw+QYrl$J5$+kBc)?jzeO^F9Q$0K9Q zCGndHB13u!vuSMNfzX#7Un|o+L#gh=L&`Pl?^MICT!k=A?(H`TtYef*%}7 z;^w->OCZ9hXR4B?L1jO1MVimE-)C&C&7F7ZipoC9>RKu}n%3v}HDgoq!zD zywz1p0=>V;4Le;Rg}~BS)LVBE63S^`tiK2~qI?5j4h1xHH8dBHE@wx~m3sR-$^Qa6 C9i+1W diff --git a/birdnet-pi/stats.png b/birdnet-pi/stats.png index 8f5965dfcfc959572b084775ea91e5b288405139..fe4824f7d2c535a88f0c9219a5815049b928b05c 100644 GIT binary patch literal 4693 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 delta 1971 zcmV;k2Tb_YB+3tv8AJmB0019Did_Hz05DKYR7L;){{R300-kh~0n;&hl2((Y((PL1uOt_tX%ek>f-;kHa#p&S8o9Ss^{*#d*7k>vpNklxzK|?wL_kw$_X>G_+m~<7z+0>!!`45&M@fb;+CP+`PP7|ajSf>fn6Rgvuty=`r z?^dUo8(~d4f%F*bG`C2%Ug{wIUUizpJji#D9)IzinQ0Pi`HGZuRcCzkj2ec;bBu*_ z(u;eL?&*0iCFYTvrpe(Rks+TB(!G(+*a4fSX}3^D^&)kogY_?*vUiYe^u!O_G)*w% z&MH0nJjdDp9kXege9Q=t?n*i>MCOuA`eoB}W`wmN2R}WKcxOt5DIL0L8l+!hCLEjG zf`532pU#k4O`dd!_q0eSW?wc5(qjt4g7oBdx^XWXNROCwWZ4oRos5A6ke-lEN0u#a z>wRs!Bg+K-$Luxg8aMfZL0;$!=p`keIV8}&{ zQsbkwb->LIApLyKbqZYa5;{F%*{+YprY=jL0E^4&2wgOz?o&ROB+wYj|60UH=E%6V_UKYVRqr1b`M7;@)8?#S<| z#+w~tL$Rl`-2(84$mvkl;P=2@KhDXkc9FX*Dv_N@dw*eNq&dlV^1&rV6z427k3Hui#Fw>vI+lAwm{gYD zn2Xbf%9%L}S!#w5WWTbbsZifO#!X z#I)eM{!{7GmH#rI9&eVd&4jHA;DroeD=G`V$70P}neSaFbsQ(@g1gKQUddl1N*hQ$ z@h-j8Y9B=VGJMuK^3Z>i_?mJN>hE`{nIdN^{fb$(f$_3;gX%9f^$9KyBCiccxs%UE z_doA_pt^30<{36^dW~Dx-hceGP1;LO#ZI2!P(5>ZKfUaQdfPn79s?bD)7lF9-aF2^ zAL41;L7$YNW4R8F`prqN>w#sdP}vN5lHF(g*EFL3<;!KOji~4c%0oYjR7meV-bU|1 z^~CQ;(;_b(9v0s#qO#ME6j>GgVK_u*$On^jq3noV4D(63udr$Gbt8X_r`N_+sy--)v!lvX`; z&R|jwriCakQbu?4eEMK?3kQd;ry-xAt%I(;FdWhEPt(#+!?X=(L8(AH_7Me z<JIf_S9XgO*7Ni`MXY4V|zfZ z2R$p;w+%+-PI6lt`~k|@86i3L1 zpAQeTBR#kNzJK!JP4(QVX&ASNhD~{)-|Vm;9k>@54vzzHY8ppSi5eG=J|NM6fN8~ z{iU|)Y&7$`tG2Xo30K{c;y7-M;D@HnZUE-7I*cI9Sbv=cyJfx8yc=3yGWD+c-g3^V z!5(F7i(e(nZdXmozNuxe+hcWj2IoImqa!}al9xcC>4?G4<@~SE-qSTz+P=qT=yrCr z;byn%rdxykuGh`6jw{Kg+jYzB2g@8DtmR-$sa0CehOJqqYf8*C%h$TbFd=E_R_u-7 zho*+XDr8MJ7mxi2!i?2vur|j_nGAz*rf8cI(=}bS)&AV#^*gF964xoerfOrS4g@4>BAa{u+A5{PV002ovPDHLk FV1hIK=L7%% diff --git a/birdnet-pipy/stats.png b/birdnet-pipy/stats.png index 2f5cc5a5bb071a471b18fc028fd06d878246e9ef..6e56b7fd0049de5b12695449f9be27c009fa3cbe 100644 GIT binary patch literal 2642 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 A^8f$< diff --git a/bitwarden/stats.png b/bitwarden/stats.png index 26a429982e17b65f7f79f7355d50d6cd7e823441..94cb62e396b082a7527755ed2a7964cdfb888d61 100644 GIT binary patch literal 3172 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 diff --git a/browser_brave/stats.png b/browser_brave/stats.png index af734e5d2dba2ad06240ee15245e9861d6c0eca2..c798c0dd908287cd10e9b6427520fb6ae3c48966 100644 GIT binary patch literal 2858 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 delta 1255 zcmV*egV&veq^Y7xtdyyd* ze*~IIL_t(|+U=d|ma8BPMv3zN&pgvj;_Vdi=*Ystk^po;bLskOqJ1DIN{f_4Z*7#; zEm!GVSXyRp1s~9X4s;94Hi2$%*{0NR_&`@)wz<6j&k|KKbOHJd%QlyaBRzSj16@^1 zO?M3R8RVC?F_=h`n;?&K>C%d?+}`Eei@H1|Ls$+Y|0Q)~%Fe|A8h zdzha^?|btefe!Vlm=nkuGwtVr92vRW4fFFrj(PeWnFHOLX~(=<9Ojf(O)@{>g?Yc7 zX+Pv8E`8Y~&?g$^1ac;sU*Z+r%Lep$O#5Z%RM~DY%+Gj9sMHGd*_mJU=~UU&Ec;r= zv>!+B`{11_o1!zXhx`ziP-PnifBEX&Xj^4~K8G*QSwsQ!doX8*%kan-@47-KBd3pi zb$z$LQd(7?rLAt*JmO^@06R z2RBY~W|(|iXV^ejAKu;#c=RO6nd(DZ!dWCrAW{0WPy+ga!iIKBxYf{X1-7k=vqO|I9-*uBS zqmOg~wsPom9TSRCudsnpfA$;HhYjQy;?~~mzz{c7;*=jo$CXNWiP z=_5n$x|Yz+NFUg|dypFo?&BpC*ZV^ke^uxdO_h!m)2p(1 zQmslOU9ZZ9CpT74$CH~2aN3_3HkvCVq}=q!er zv9u~IYrSig%{8d9v8>hDl#NA>=Abhrw+Edmxi#pXDY>oOJD%L!u2np_y^)S5H@0h) z#&)&eO`ndMt`B^A3h}BJiB4}RY$rmyyg79UGi;bKDE#ne{QZ?oP7Q`zW$8O?&atv zV$I9?-L;krt@n+k=$4E6E`8i*mmV8)@;+Gb-R|qp!yjK(^H9V6_oR3G_bIJ)S=Yh7 zT}j_Xk6X?zJ@jI>ZBT#prx$82E}?m#p(L7!(yK1(x~zHj^Qv;`o1eihG?2)jDa|FN zd8A*L)^D)2IZJF^)^%C)aAViBZ>DUN;1JZ2k=zVIh}=8Eyd#!SAj~@&OF!f?4oSwU RFu?!-002ovPDHLkV1i-hj-CJj diff --git a/browser_chromium/stats.png b/browser_chromium/stats.png index 6dd1264523aef74723bf7fee764de7014d2b5cd5..bb1f61657f01eef5265fbd73b3149dfa51c1b6a8 100644 GIT binary patch literal 3061 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 AN&o-= delta 1315 zcmV+;1>E}e7rzRS86yJ#0019Did_Hz01r@1R7L;){{R30lmXMeWaZwm@)T-j^^qYL ze+1S^L_t(|+U=c-a;q>5M7=Tp|IN3TrU?lqG5Bqro#{+SM=`MIVOcWH0RR9100000 z00000006n66W@ZVNeA;1F0Fq*%xgVd|8)Pfel4Dg36=cG?VbGlhnGVzBk7w@PtpbH zvzqq@>3>GuZEU{q`Tzg`000000002Mf3?e3lAW@Yt#r=4BrL)FdJgFpmn8)0CVhH< zbb+yuBal<0LM64Uk7{+vS;iLSW%jByA>ClLCZrpz)`WC})tbuT@FBgMYR%grqDdE| z&seRgk4abU)3Enxo*;eB@bI1V?PK?voZ&uBJSX_obV#3B)Av68ExLg8*+>sDf4&JG z-3vatTe2ys_VaXYlX9eCJE7dW!hxI|r1#~_y({mI(e$C6`31g?%{#1*;ml*`k|U6t z%9)d#u}b-;=>0^`6Qqws`MDwre@LH#ax!uTDW{0SAmwzp7^M7U^iH$G43wW+S{2O> zGf;jZ4NJ2_eJnmFyDjya z9RmA8-nSH+D);{1a>h`*_!duqFEfSy%Jv1hMWrIh9x~CBZZ%<;)H)GjGRH!bDHwv!&V`DcAvgfx`(L- z=5Gd3?PPU+f;YgFZSgJV)*qt1=P7OGiq)UYGfS%j)Va*FQbNwE>YgNwme^>X8e&?-w4?Fpe0=adP1LIkv_rA-en$O7Ci2|cO0qH$A zJHWWJ)$D*9H}^Nuq&x1LVSZqKKq=3QmvYShS~=Dl^elrMos&AZd|(xjv2_DDy~MY9Qsy}5z&6{WB;<*%RK8vPTPQ#++oz%$H({$EQ&81;kLpAqSW!6ybt+L_F z`zJln?I7A#CO7Yae{KiSwlaAj7wC2n;oJPtyK<0D_%@QJ2S^v;+q4TVyUju`KRKja z?ImYWb91Dl=Js;$sJXq}rBHKL*#KRupzAqr^8p-{=BJeu9>(?uMKr;WRl)(Ppou#zr0Y3$V7{q59`bWV?r1s`&6haVrlOX4BH{qMvN zyMBt3P8&Knb+$_xJLz`o+o>zO-@6WVGv?;+4UCHr4+tvKM5LZ|+R$m@m+x1WQ-663 zcABYrThiyJp6?INYqhE5X?3%jCYGi7554!}AvlA8elkb4K1cR&dRz`TRL Z@DCPt4piaxHKzao002ovPDHLkV1n(mqNV@< diff --git a/browserless_chrome/stats.png b/browserless_chrome/stats.png index 13898ec0266e10e19eabb76b8e4aecdebdb3bda7..6228c4904d0d01d5b5abbb41fa9bdb1727619e46 100644 GIT binary patch literal 3402 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 diff --git a/calibre/stats.png b/calibre/stats.png index 24bf108574bc2afd08d1b409037196d1bf575397..600e30a454daf2504af402dd068d2fbea7167467 100644 GIT binary patch delta 3440 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 B(mVhF delta 1587 zcmV-32F&^U8q5rk872b&0019Did_Hz01{A4R7L;){{R30l>*e_y7RP4;md;Rj6HTr zks%j<1>i|UK~#9!?VW*g;~)$~ksSa3FW)3ha*l&B5Ca0eqUKf$>6EzfTcvfo$oz63*B_tT|sewRDl^7jJ_O1gZL z?lAPh-Mf>GqksPCeHQ=#00000000000M{aaJiYw}CYWZHcR*TTeHKfHbVvtNlP;ha zB+oq_3OUJ4N$RoqRE@7x6)2jm3F#ANYeM>j*_x0(VYa4(Zb`Ur*?k()4P41JHc0O!TT_B+Q4Ze)NFP8ECir*3(g!9z^dTSVu-?;vKNx^R$jxNw4TF22VV@3v z>1MI4x5r3qy;{8|PRGDRJ<9dAE|1^V4BCmv^@!VTbFu2B?wyF7Q8QmYUxDRPAxA{c zx|u&-f?ILY_vw+4-qg(R(BkeLOK*wQXVvRkT73x-xrVOYOK+loKOu^UoGs{qWJ{EC z;sO(^jMI(T`4P8?{yjs;L3*qH{FqvQB{(yvZog&t07&n=L(hC65}A@fNFE_)Lbzx7 z_pCmhak?$%ewj}Wta&0LXGytNN}_;tBayg@>Pws>B4VAO?Jm#RlO4|Gxe)=s{E_|Iv2}mX`}b!3RmRBMypJ zQx6c+&?@03u`T3cdhAwVxj43W2EQck0NNt<-a0s=?NW*^FJ;7Sp>1pB?p)Q6_JiyS$1 zWn-7icf@pPs(V<#m}b42G47gYje9paa$2VNMdPmd4%n?RWJ~UUrnPun1=35Cu2+U~ zUIOg~;g(6y(c_-!ikCCTyn7&B^G5bBhTo7xDJEyxN|H{8J|F3DKA(Gs zbE{$4LJ_%pBn?7;EQevQ9;Y+u*@2~BL;C-WB?jknkUn$9(m13`+M#+d-c^p=&k;EU zTW_)V-;2Y!<={*i(&2nYO9yr>-Ow2>z*1tQK>BFzUCuu)kUo}shx7^6yA&l|IxaqL z<0Ew32kD>}*gcF5^b(^5-FNq}4(VWc-+n=l4|?Q1kT3OrF;?5YAhH*Dp7PEeUZz$r z;p!rapEf>Fz*qgQ_-W&dJ(|?UpDkP6_qbGZw`6zTzU>- zjw_#D{Bf&)Oz|3xFIGI6sql`GA3cM7U4A_WiT4b?;(_Yr^9_xueSg1ge?Bu1*5ylWE&u=k07*qoM6N;tV1l9V8kztA diff --git a/changedetection.io/stats.png b/changedetection.io/stats.png index fdd34da2b93f1126b6eea3d44ae040b92ec8af17..05f33d4d870238821dff4b5a26d98f84005467c7 100644 GIT binary patch literal 3193 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 Cy)(D~ delta 1434 zcmV;L1!emA7_|$K86yJ#0019Did_Hz01r@1R7L;){{R30l>^kiW8~qu^9TLeLXjaC ze+5iQL_t(|+U=czlB*yLMak;_fAh|^+66=qq%9%m&b&9RQe-_6AOUm^A%qY@2qAxAs%ZRhuf8P^NC$u{3(!_T;XG93CYW2!AzuAG%s_tG~VF9BMTAk6j z^JWKgJ$F2E78~^1H#-1b{b;RmoDOvD%q!pQ0Cc6(CYU*6ojD!3u}%BxJ`bImK3_F& z+z=S&%)l#B-xN=0Et`@x4Mf=n_rEOBi?0{whJxW)G~ocZ1Dz(^nC~5nKA>~vozMYptfm8e*qZ*Hcsjt3S> zy;PX@e$XFP9N-#y@6rqUvx>{@wnpBa!2nnIauF`{;{xbNe~Vb*fE>$EtvB~j2RfSG zws&apkw)(4ZM_6zHU9yT=Llb-!JN1#fxD4Ff8yGUKBVH?cPD)VB;No2<6hR6_ z$Yu~FNEG1!J-1_IY~G`$Camg*2Ta1T!SN9-CJ4QOZ0RCojZIX>lPhG-r!uI&3tuk6 zW%t_lm`K{#d+ykX$ o%^-yEy(7#!VhRPqyrWU{3l4A)h5qZQY5)KL07*qoM6N<$g2?B}ZU6uP diff --git a/claude_desktop/stats.png b/claude_desktop/stats.png index dd44a52031cb5ff42a1708c7e16d9d79dbcb9317..9e35a055a2b609f058d5e42c7012cc82971b6a46 100644 GIT binary patch literal 2284 zcmai0dpHyR8s9itl=&r>2QgjbRuq=XW)sRaaxHTyVp6BAwi?Y`DyG~z(1(r^VfNv^T+4?ywCf5-}m{v@Avt>&-a$^@nh<0`f30G zK;7NV#SZ`g{!;jb81CyNgpm{Jq%;MBeAu z+Mv_Os#hoxUOV2FF*F4T59?;nCEzvquigQ7`!~5^Y;Mc&KI>$R zt})cdDP@D+0Km?Ts{B7;HuXcfb(858$5iz@VNbE;Rzs$vz#+}0t@Wd>G8Y&!X}$>Z zff{23nCXQKFnOU}QH}Zl4z3ZAqa&7zG;dl~T-?*Zdr#v@O%{T9tkA@l1q7&W1V%Wq zbyl*}g=6J9gpQ_q{_Fd)C;!PjzH~SJ%bc|kMmXKRX!8_q)e3@5M(N<83(oo)BtfluNdXJHB zn@kt^QpYFl#V3k0VDO{^YBy?&d|f;(h45(dxkZdTzI2wXWOreIZ>x~Vmv*gACwHyS z&9EVkYtlZShZ67uYia6vkIT=PpSZ2j=_8QK@`-^`OgQfaacRKb8pC_}!aYPAsk(zq zJpR#BE?Zt|XAeUnD=aW=mPTRBzdJJkl)z>g&6TfCud5oRV2*!*$@%$q0d7` z3Ui%Y^~AX)%X29G#ES4~^2*bkdji^#8yaH`87<7(yGMH9XX7-+gsaN+!&%Xt`HmJ< zbs&#LFWBn~4Ym;9?DNra3WcpMA}*bg1PV&CV*-c#`hl#S+FB6tPQkuoBg*b&2ppoZ z6RSbtD7&jle=6v$iK-OV^3jXhysr(Evme)ds}BD71hX}|r}VIN%xgAPyY8@bvz3u} zyFc-CFOc<`!l6T<#1?Rj-qb7CU3votQPpZC*J6uXqh-z?#>f%uPtMtDAwLKNl^*ye zb;q&4fq{$r+sGD`YEruA`bESpORi5%9XYaU`7i(W1e;c=zTv2YUq)3OY5MxpJ7HfI zxaH%LSXWty)%$K8o#QD?4@!rR$n2Yby^ErKJ*_R`Gh06TRKw==>w6>PG|aUwsk3Ib zjAcj9a6d-HX|&u+MlS3VB$=lldhF>03LpdW0Sm#WmH7v&$qsPxmn?`hoZ4aWu)WLzAcg?yKTgmzqygiVL($);A>TW*54BRd$_cq)}pep&V*qjF z0k$O=7bxbBKDYAgrUO=KlWFB{ZfZV-Q)A3cy za>L_3XA>c1qem&nU;xldxaJ?xZyJyrpwOqE_4~!l=qC!m*b=-t4GS_m!mWF$ptt$n zziFa>EXiD&=73}rrXP|ZR@*Y#qH`3PKpGx0wfeIUlb@Jjt}FmQ{(?P{1YKc$oIMaC z(@nX}B(L20PU2_Ar|6U5D=a!L@2$heow_OhOoBLUa)Kj0jyP{Zc^ zw0;jn;xj=3nD){Z2V|9wMy-->^E{A6Y-mD*YS{<5^r#0K5?ILqV%sP`w>jN`Pu&y! zE2?!tr~J_mt-i2tducpVuc8LoUIR&>WNS?4FjHe?weAk;K1$F;o>^TE>lrkn-P}X^ z0G+hmjh;Ud2ezDf7wov~q-*^rvt9O8P`sqN^~AHuq66V5?aOQK2T)&|riJ|&gSAxN z6S)hcZ!PRe;Qh&Dr>V)E>x`HNm}~!+#AgU*c9;#>i(AB6W#rQ0U*O6w>d}6DzjmW= za)PV#M_;9(cM(-al`M9K7D$t=M0aa9iSx7(oaCGTHYIv4KR%Y+gRe?$IYNYmyPk|(-dQ0{O^KHx9L4PDS1ucDA_OB$_FJlI=i<(o5N} b3Vy!FKC|3+##Qls0l2#!cWF9u`ucwWdy$h| delta 1149 zcmV-@1cLkQ5t<2*865)v0019Did_Hz00~e`R7L;){{R30lmOG4kvbodAs2rHH%UZ6 zRCwC$o$GR=Fbsu#`u-2SvkgnY$k#AzEPdxkrnD$_eUL3ASxyN6000000000000000 z_#9IHi}Izc8^DUJLwYPF*T&)BpY;3V@9*B)|GwOB*`)s63szL|jqKBhj(_{T+=<_w zlKp0|Ea}qm0h?XKlIsgCw00000 z007c|ibWp$7Pu%vc&tyM2K>)~0u?$qr$G$Xb#PHLA|a;t7w0d!b&XSi6)5yQe z&m&KINM>>=dQj@Irfyx9nd?_c%!KrSiJ6cdFfkL-114tbz6BrBzaW1x^QVYz(go=r z6EjscE>-otOOU=~Vx|UO=(5!$f8Zc})whNL-}^1j8SrJK8K1e6v5{qDr^>G@^{ePrx|uMD_cXZKUUC13O59On#J(0U)kOrgzqKtoKweGz94$L#vHKLy*p92jC;Litjywb4Fu@h8WJpeeVXV*Ub+2 z-f_+VNC!R)IY^IY$U(aQ#7H!qH679+{klUP(!GaPjS_Z{?mvIDdZ|_l=>ZZW^DJmc z_r7a2SfQbxIC<}V1^>}>SJpe}QmpBa&SnQlXR`yO)$B>KXd$-FDP-w`t zM=qJ!uu2pf3b)xoh3OyCBb@9YG(F164(X6R!O0FWPIgF~>_AZhNXH`w*z5pSF9;0j z#M2?2H67A@l8%4xJ!}qH^h|Lc8-o0zOcx8)Ni9(Pb zPSbJ2#>|mJ(|KisbWT-mBC|qY3E%-#ehX6hPAfyH)|49l#eA8iI8HCB=U(g@zzKLh-=UW`{cp4e247 z$w%@*smGeqL}<0L*#Rtq`!+j(*k^r!g_nC+hjie6ZXZ6+1Nh**>vS$Fb55Fn)NQypv%-^`#}BCX!3am;GrpHQAMYYUz4GKDM|WzM0lhRW?$yVq*!rVjQD z-~P4gA3uLfMD72nUSzIRlqAW1Vot*^tDv-Qk+}*Yfhv4qvrL1*vh7 z*4FjCyr53=VVS>|4==l`DrCuAzv2#|sqUFl8th=_@Re?>Nm(L|-W3fwWu|@CqnZhI zKX$6mPhAbQh0N|Lr3tCg4t8q#WesnSpCQsQ617!0`(ei142HA4pt?|gmnBq?Niz-A zg$hz>N@}o!UBkC)=fLz P00000NkvXXu0mjf<=rD9 diff --git a/cleanuparr/stats.png b/cleanuparr/stats.png index 3c46a278cc2f5d9a80a64144e16f7c754bde365a..ffe178fed6d1cacbe4ca0c7eaa1497204c5d422b 100644 GIT binary patch literal 2761 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 UTA10!?tc$hTi9N#HAg=9H?bNPrvLx| delta 1381 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 delta 1499 zcmV<11tj|68}$p2872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&AB^sqzU6AXeO zks%j<1&K*SK~#9!?VZ_T;~)%05#ay-SKhEFerr(LI@#* z5JCtcgb+dq6_;=cfR085E%N%|{wCm`pmYCFe*gH~18559B5&M4pU1raz!$;1BZLq_ z2qA-r;6 zPgFJ?U?>QN7#g6xsIbi7vFyYedsYgG~vQ^9Hyu5(=krIMYfA8P*-bVqUMQz z;-uQ>=_5LFMC2xPMpwGO863|D2j(ML8x~TAFlR(FjL&Ig+6j`>ZpgW5; zh`o;rUDRRh9q3by=|CUcdp~mCebAvkN|sG>Kg))Q$e}(KQ2>2>M~;L`L$YSkhKSr$ z(u=XmArXO53>QiCUd10 zQ+qf*c$f|7RhfUgb4zU>Y`;$^(Cae)p0p>K_;^Q-o?caphi;0Ak9XvbphLZsjF;_w z6E8S&oicx!_*anbFG9N*V+qcTAiG?K<6nBgx8{eu1^SRq+{Il$YIR)WPHL5Zj!tTo zj!tToj*cTYeMgUc*a7Gxbacja)m!|v`oj)H?4WB6VXwPti5>EX9nc?* z$gOVYviG)$SW)KYsD~WTV^4O-3SHOwL+?!wo`bI&JJ}&4^iAI`*41s|jPMP=9(&!| z$qpHz>pBjrSu)P>?HJ4-TRF4q*=4+!#bkA`ig)-rA&aLRIbCC(Vzn)Q7}9IS`{?GW z)gw!(pP8q%V(BZUA?|DloF1GxwB?x%eEx1;&eB)&7;fj&Gd#ZKmlHlA?)@+*x;j&f&}%-SnE6DYpqdAGni;byI!)70{D&#c9Jj$XkSdZNC$Y zGsshUNeSpy7n^N8u&{Q(Bf1J?*}~lF__#{th}OV8J$sfd*sbQv=hOQ1EEy60mzZ*3k3^X|`oT8)Md^WM#Sd}2>$dL;T!!o3IX5IsLnPZ#Kfy_J5C-mMWFZ9e$yGz5x`fZ$q+I~TO ziQ^nl^3#o|_u(FY>Oe=s+xDapAN9-qV#&Mb<^5vrjrMsrqPoM+=PKrHTwrysla#%f z|H@rgcj}&t!|F3_+rLaH_W!k?PwmRBSL3d#lg*sc^Q||F`5GtQt+%>p+@<#}ZZ&@! zP3>Rqib+_pIH diff --git a/collabora/stats.png b/collabora/stats.png index 865059c6d43ac0b5f7b6861755b5dab8a92da199..5e9eda3a844aec67858a056d413dffc0d1758b60 100644 GIT binary patch delta 3061 zcma);`8V5HAIHD36s4A$R#8N!>)5Kc62a6?Eu9)`X)UResu(o(ud1=MXcf_+ZAQ)5 zq7;oS2(i`PK^i5A2}MyMAtGXV@|@=%cz(L)e$Kt;yx;H7>z@1RmwbHcxuUob008BO zYgcp46+lV6z17cdF|XEW#PE~0s{JgQc!{Tbz`2hYlyt86l2U?xT9kPCHLJ`hk0~bGajRxwixhD*U?DXr5^82VVoHL|RmU-&QxS_-Ms?-lEn>0x0DcyPP6v9iFwqko#iyK zFW=|azu;FeS`>KeAA_Yo-?m24M9r;!+UaOccnlo)7)wD@6igL7H|SifVnn z*U_+-me#i|3?#o%LNb+}rrLy`NdLYh4RlPV$IEq*VH)_=I5VL0#cq9;4ePJUAA|u^ zZ3I56?*q*WtiE*&2$;MeF=JLz6#XjAwiU#}01-!+%o;s2bIk~z_r}<{A zSh5{H>~tRt2gp_yk*}~7CIvv*7~l{+$F}ufwChiVn~MOR0r!VytF;H8lE9ocF~#B( z$SEZEV70K=mgoR-{+SD6A-Bi>D(vWe8{uKc!Uvr6Xz+niVA>0vbRh)6YfbvN^G5%ap$VisgAI@cd3NF zXr~dX9(_pk$e$S;Nu#@!V#GCcwvq!Z&r=js|nb#;E&e zsE^Ku6yBaZAxGT%HoQejWj&4e*Pyn4)nrJY?X%-q({_2~!L>=K?Ui)t>3S!a%+M-z zb5`#kBcPkJu}JssfGZ(1N@I-%-XOlPOZE6Z#IS=fic_S2)fX`7&e@1rbs%Kp_$q0R z(l8;pUV{Z!nrWz1PoP9o*eWb|{$DyJqjlYjOW!sSMp!R5mq!NT*(t z(3Uiawmk^fn$0nq%_dWE6!MBpa@VDm%fT4B%uin$G<_6DY8PfY;u%We6++(}wQI+; zoOn#a?YPnsuUE;=Kp_&CyV}ZeQzrfpv?| zwubb(wa72+F^(P`df2H;)!VWbQEziNq%Bg<7o3_DW78>H4;^8CzE^U2?TmnbiJn&1 z`;Hs)M#LRvhHn@`F+0;RG7_qLskin04(IzbaCR>kT>XT$)vS`?o+-tLfBr|URyG-J z-`6T@&1!c!-dKPzIpJAVEB3cfWK=6&9t~RyPCMrUfDALES$)u$!REg35;mkTeYM@`0Ip(RdUy;@~nz(Z4w`Z zutX!npt0Rq(F`0xZMKCyjMf>(@lvZiMeOT^LzH8x70MQKu!N+!^i^{{Gs8a{hd9j@ zPIl~R{Z7Tpi^0O*%(EjLkOW$XY8uJXm4&-;C@}M1K|Mx{9K{GDh0P zaPbX==gqxMcNYk@y2ewnkxPROL^EFLdd_KGHRjvt(P5PgYq{0oiTJn#KDjH;NMLb` zmaD0!%8V`+uvV~RJe_9*JemxMTPUMF^EEn3y*16FR;wH-30OkO-Lfh4Judt zW-gBI)NB!ojNPB4j_0qdo?{B)a!HKa6J(^yzoS7V&}&P*{V9^%EG^k&&7mZWSm$iytw17Xx}W%D%m?Oce__nP!wJ$jEVI!wrmz=1Q-V@wIx(%qQtIQ z!Qr~hSugTvcVHhu2%5LDtp43a=%zLuG>H}DIpMMwe$mi<1ewCkY~V@*aTVnzF=)c%gxJT0db>OW?zmGO$ME1+W4AVOStTKrQ8w)`iRp!Sru^`CD+lqY z{N@3!tNYOV1)bv!4G|kr^F)}kn21T$>92%$@fD%7l|TMSmD7rSVb-J{eRmm5eCTW| zKf_ZUta)BWf(M$To2|*B)87{e1N+q869y#THu<3>ra0#G92+bD?OS(fhu95_ZVJj4 zOuc%#A%DH3tt3>0p_*GJ#mSLPk2hq$My1F8)a8^WRF6;K>l9;${jO|}Jwn-vJ(&ng zQU0{S?ZqB!@V@@8eAf^QrGhsaiP6nX(al884E;0X;B(2I$6tnb$dAeGG=A;j-k8ho z?I$R;3XBNW@8wIcmoNQd(0Ba<;`~V-GLQV@T6nu^*uzPpm1T2zmWbFHGSN!Dhkm6@ zN{?!fg4)9!^&8DfR;)=3=M-UKxBPos?)FzAxh@EaqY~18%5UnSK^C6>>eywf7wcH( z)0cEtl^KtIhBHc79P_R|i}mW)mg+7Wi3h-qhF>reT2u;qt!6}y3cS6Gz-MJ=tE-Gr z$%Oo0EOUw-qi;Q!cHj{Do39%b{y`gSU$UN=zA1@r$QH6_8;`X-0erfdVYCVWTU*X+ z*pqq48xO^Rp1;jNDg?Lzb2mA8GkWnmAY02GPTa!K7ucqSw^dUyn@Ba-b`Wn@x@dL6 zm4o^|Fj};^vpG(9YmmAi@ll+|*A(JXu|ZR-tAI_Veug$sH$EB^l1N7`== zE)_T=@~wXhF-YXpXa%*1#i-=!B{%ZuN;D#$30w^L(3xuMnXRPZKl7* zNZq4p!2d#8t{fiWKf|pKOwWg^<+n#f$Hlpk)8knmw=Y<&l~%oWZOgbu zRXgQg*|MGXL;9ZwQ_drmP4wVfzWo*KloGTkCyxwLSB`N)-Yzxxwi|QO>RW?o++NV zS268_n;%Cy6V!R-Wm6iw%5yG{!m@BKK2I!h&drm>pH30BGaTSTc z6RJ7%F*ky-@g=t+4X4YGRXiwp`2K?4jr+CB$=g37YkrOWePH(U8*kM!<(`y0nm#4^ z7Maq!eJH^>?NQlMS379aM-E}*jB3g>qQYvB0)fa@=a*yKEB+G$dm0ZyD<;m;zBGSb z3~*SYa6S3vLO`-?#pp!{AQ!?<4P6Fjfn-np8qB4RJA%nZ_w9xdAQ4LSv4QSGpeBLt vL(c`Qlol27r_N!3(vib?4qc?>?aS?)^iZlZ6mM2qAPtWx4K<@`Sf!v6ePM>5uxaSGz{Vt-|r`^fDSI|5y+Y09CSAiV!>2-lG)4YA2 z3Sy61L}7qlNz(!NhJCK!-oP6l9bo1BOvx_Jke*Pb_R#qJ^=xtm==HQL!9`!s&8K7ORXuymaO_2&K1yd^j5^R2 zBG08xAg2*|CUpWiB_VrB>I8DXHS;C?rxSg;&S6?kD*ZLrn_49e`XD3;@92VEh1 zkywtK9W-|4nGT+t9U58vRx_595-5RQWc6D$Qzs3p)2(O4ay;2VHS)Arjwd_lMxNy0 zd9s7P;4Rz1^JIrdQ*X}%Z@CVCoaDDU=gAJw`SrQhKZ_l#M~&0Tz5jSnUdYrV zpX|WYY6IbVb}SdOa)$ZzHp2DnSWcoZ5umr@))O6k)XffJ*p#3tx1Q$UC1yil9?{jD zTTgTF%%>MIv!A*3BnMA&rbI_Rx6q6U=p%IGsiqEe%^i7SEC=*LJ32Ohpx|Bx=*kA< zB^*4^Rrlj*4j$;L`|&jDQi7z=kGJB3rrez<1n8}0V9Eq@Vq)%g7008SWDM`z`M-I?eT@HbJOk-`oT_z!Z#rF6*i#zhdxih9tQf?uz}q% z^v$L*>}o@{pFzi_8+w%X!_c=V9GmXj(iv{GW$BM?N&slBft16p15F1eN-*^#tXkH3u0BTt@MJwQjg#2pUEu&c;_=-oZkfsVTO?O8oO z(#ze^%kQrRIrjXr{mN6wRm6nUWBm0v+hc!wF63_He)KB01p@z*qlkTs-qw_>$B1`t z*i)8H)s^^2$cVH<;?rZVIFMNeu^_T<_#%b5i z?d9&y-{;CW9qYG$l&sgAoG(EmxAmMZ%*%R=vmRr&^7zqF#)j^z#I8kLEjH&1p-4SJ z?Q!Aq4aDWJvEX*;d_R8S9ljN-&|!l@F|HzxLSHv_S&v<0Gv(tC4$Vu|0$MbISRQwkC9tTKh@)VvUGPnCZIiz>)rBvr-Zbm z9rk)4@d*Ruw8o_g%K&fOlX&~02~XFl2h00001X*w&Z?NEi`wQlDqBLG87V;j^=vWnCslzY!(|K zRzxHb<}zE3%B9#G*I~@(`~Lr)?~mVm`8~hq_dM_Wynnn;;n!{VfmA^N0AQcJos}a1 z09@XwiMx00#ENav{_8>e z9YXJFZQ)i&!NS^-QhQ5Jt^elhhqzUv)ksWitT!N?WaNtjJo+cm^zxJckIm59QHPD# zYyuk3aSM7HvKtp(*8q=klSB`53^|pl1Hrl)2Cexap@z9jd$=UO(X%L_rfW?6Z%~jEEiWo#YgY^4J-|K<*HxW#?rSmSQJbRn#j{huLxj9`ev^sOTo$5=UMh*`IR7Dt=ST<=IIWVml zXz(%LfG2xnwtw_iOMjEja!jWS73cp3lq~7BA2}p?legNH7gXf4{z;cc>G!xbY?T{+jcBQIEG@xm|`x(+=ver_2>`fC7SBJ zaIG!TOe};GTyvB}m(hDb%Tz4}F_8F2L{H+f$o7>C#VqEZ#fn_cxzl~LR-bbN50c<0 zFnQ^-c3^zY7IvxL_d`_o-TPkWF8bnXjwUnQSyJbr&_UpD zJppt?Vdv*aP5yi6Z&)Bt;;8mY-&Kt^;{2p3lM`AMClyTQoz=tZWQ?hcG#|60yf$kP zNxu+hek71M(6!zHdEJXCD|E{O@8Mg-GbfU&ZkzT|+#R>ScbG!PBTc_iqt|k?$+);4 zn^!W|CXbs}WJc>wDBcaYm9UJ+;#1sDcLOkI z1<4AEsBd}u=CunGT}{t%b6q?X2jr#i*t_MCi%fEa-5pZ^rRby=|O9? zTFnQk>8)zMZZpNxD!E#Gc_FL8iiyVG6;c_ymj|_+G4*G)N-dLhy*g=rR9$%jKNnoA zrY1@t%Oyq<6&2bFG9>X^dKA#xoN3SJYX_)61ssAVW)xmYt#()=KUina@->Qva$|mf zoJ+RXcD|ETh4yb~tZhQqf@Mx(*&inoP3=c3oEQhvMzC&4Fj(y~Ba^LjaJ8x-RtL(peQ}*5g&XjsO z`Ualsr*VGb6XoE04GZF?pU+Z9-fZf| zeS#4Lhmld_VCMWhAvIs|&tYNZ>&9E5dC-{~@nxqZJ6AQ2D#$B5yrbNj7IeRClF{kc zupfbjkIOAgY*ohi|Hx>rC=8P#4kmpz+5h=dhQu)0Mfp8YFmATK)-mQI{pa>vDu7m3 zJLR3qpOi>NsDdL*nKJ=kvDwr`f9=tDEQ{pV!Q~G-)X3Neg2kaVsOs39dRU6qX#C*Z zYxjFou{xx?^2)5Gpqz7>;;>9LJ128KO*V(p^@U$5ne4ZZIPSKBuKofy!8VTzwf!EG zQo2|zo+e$2r6JQ?eYS2io$8=F8vkx(kdJq7lU>|#@aaT@v*)@HsMy!iIT{|)E|O(} zvZ_GFj00R_?j|DXA$C4QvQ|2x21ICVQqw6W83WYx3K(Z&Yl2ptwr?z6*6yWM!MzFZ z7i!t#GiH0uC}bK$x-i=l7k8}bFhCNdAijI*;vM6bnCO+Erun#4#Lg1tXp@TE#i*eR z8(Dc-C5NqVdN!|k@9=x!g>bsS$zA8+ugjNvAsndjhLeSyYhHfYMsh9rheIXVO7<%V zMj_k1w!uD>Ec3)JzT#cTXZaIQk-gez6=;2PVYc>t^>bc)5^r6roTr>739wlYcS(8} zDOqm3ZOU}jsK)e`XJW#azb^Wt8djBD8To0W9!q8V@9S^$l!BJpq}%+&B45L0qg@$F+ttCnutFOR6+4f;Medh1&j0 zySPSY;N^6COfq0Vh18}rWq2S5F55Z6*Tezt?O#-(0<>CNZv#}QJ|H(mE@2c%q(Q@B z9KA4HZcq8D2Sq}%N;lG_eZJP7tZoAvk&zSzmjG`B|CJEhG8mw=%u)=hUzzMP5)bm_ z%QnkzzL*#CCs5v=CC!i!Td*x_?B%riSg0W{X7_=Z)~80QtE|r*xC1q?e}{>1o=lagP1V~xH{;FnQz{G@X}Y3 cKxGX=qQPH=S=S8h{FDHD>+4pGE6B(H2CPnQxc~qF delta 1292 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 diff --git a/emby/stats.png b/emby/stats.png index b6d21b4bb680355ff4a16b0390f77b773620549b..bc6c947e641e5cd5f8842f494874299e8a84346f 100644 GIT binary patch literal 2999 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 diff --git a/emby_beta/stats.png b/emby_beta/stats.png index ce47c91f1a07e6bef97da83f750405f927c9e718..139a763af7b9b6069bae416bc34a3e58b4a0d53c 100644 GIT binary patch literal 2879 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 delta 1341 zcmV-D1;YBj7T5}q86yJ#0019Did_Hz01r@1R7L;){{R30l>*ehW8~nq@(4WrFp(h_ ze+2JIL_t(|+U=cGl56};LO|V2e*y~V2CcgQ-JW?*Ll-obS~zl|d=QE9_m+2@ zCL8|{AJBmgbPFdpfo|~RrW|d{fj-p9O`laUbOHK|CpYCN76bJ8PHu{8VBdjm@WK|* z=YcM)>E@tIVh~7^Ff8hLrn|y?I?(5t>09$IB0x9j$O+J=cjSum>2%~IJNtc9f45aW z9rf(Jvt=`H-hoa;4(M}2$GqEuE=~x;;>ZD=H67?cN0UHj%f^}x^y$6#iaSq0pZ5^O zGVD(5-HIbeKHcCU3J3K0&AX&V0nm+k@41-{^=Yn0?7xX4M??!<~l`+awEcZiW zmli1Hvc1z?E?g&8{-+lnIvX|^BnL~3!L(!|m-aGN$eUsm`t!=;Dt@Cv|jM3lhupZ*kYx_!H zjTG(W-Pi6b$9Cklof*TOd$oI(_iU^DoNsp6GuE6^A)HOZUfe3LzE8g)_MRH!UT;F3 zu2}>7$C2pu-|TRCYSlMff68>Hx!Ur6FcQ7)$(bAS>FMr^pc3GfbF>H1(- zpPb2Y2tnaYRP1sDd4(mV>av5lYadFGpV5t-x!B(Ej!mq5Vc4xMIwv&`1it(gUB0dV zqCYJgZ{oCqK7HiV)BWQc`!5$Pz^P4K{N7f$i7z|6b7<@S@y_W{e~;n!4b$q0vTu`d zAxwS4#ixQB$IF!eDi{4`eQ8d#+R#T$^V0)#pIF9#|{aH}rEWm;VTRuDeL{KtJoPY{@=XPhj^9y+MLwV=@7L zj+dxI4}t#g?nxA)e+gZ8Q-Z#n>4_{`vwV8=*x^oZt*SlbAHzP7Bi9Hz%tv~wavSI@ z=Jp=)&uZTBLkafKo8;4@r`v}z?=2hyjJv&vT*Qg92OZ;X4?4{4L5Df1RRna@VeB2~ z7GI?ebY?ox=YQTi(9Jt?0`xh}d*M^&fIg9V2f9J;U6i0xf4<-HQfm7JjU~cx$j$$1 z7UZ03aoqs{9gS++Pp$Z9T<*y$E~~xTa%jlb!Aq2PF8lGz`dwxHuCD$M1xm`_-aj?% zPuceW&x>4b+g2Z!10`90*@TkvNA>3`EGu8oeplK4uIhK?{h#yR_m#L!AMQs^u0Wge zqFr8;%PY6Pf4={7%wIO+@255&w{?hS`RDf(%j>saw|o^Z_wlOo!alhC$dUCX;Bcg+ z${*EVGm=x~?{2?(|6~iKpl34dTgN~)Z4%iGn~kHg{qe){NAKeHH diff --git a/enedisgateway2mqtt/stats.png b/enedisgateway2mqtt/stats.png index 5d235f0bd49ddfdb5b47cd64b2e71544abfa76f6..54dd053dc258d24b1f597ddf6b61a353b6afdc7c 100644 GIT binary patch literal 3491 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 RA=Ur@002ovPDHLkV1iQx?PCA{ delta 1584 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 diff --git a/ente/stats.png b/ente/stats.png index a0c5181d941b676978f1a0344c5d126c874e4941..a70fd68815a2788e1389de5f09cf6b572c8fc0cd 100644 GIT binary patch delta 3381 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 BmzV$m delta 1559 zcmV+y2I%>~8nFzJ872b&0019Did_Hz01{A4R7L;){{R30lmXMqfa&DE^sqwTtXvOx zks%j<1;t53K~#9!?VXE~tSSseNu&S&%TxUv<&8);k+tjAtur%-%7PFGpfLy`gb+dq zA%qY@2qA<}e+fkZbaY+Ra>srD-~C^YAJOHTw>8+n8f zLI@#*5JCtcgv_tvPR|)Crm5x%K)t7>(M%D4W}wdp{S|SfG-m44jR#$jE>%YzMZ|UF zqgwk7;`Kp7?mUj%wY_(SY?ybTGb0D|OG3xI&jnqKFb#_%2Xtk+(Wk>4=o2$f z^J2($N#^wF6EaVD?-hHVfIgbm<-A1{n~6H2Yy)dqPi~}vQwe~s$+*`pqHxyF09~VT zKeEGxmag2mAMxHp(4nr#xTkSN{)i)gr`xzQBX>PnOK5ev4*k{=S`|X8*EH_Qcsecp zn#P?zeYVjW(8pnA*X^MZt6fZ=(Hf525G^xA`CbRC>C~a)$o;x`$0^wZ*sX0|7)eX- z3_N4RtFbRPV_5e-tczXPYgb}lmwvpMhHXV|`=qsf_NQ;pd?(6w&~vkWsz}*?Xzg%l zm3VrCU0)7dbmD03XlPZ4r}ww()jVrzQ+;Tac=}Oy-5S$v&c)hu4kf^m`?|Xxr*6+< z&Sr<9&3bVj6;2$R9kd{S=Cd@<%COl%74nC#7Rk!4rss)~K(Cz`wWrpgwY@)Q8n(06 z_54b-l(v7q?C=}QzI4cR-9cV|4&8(=J1FSPoe}>hXQu}6We2@8F=Z9%agT*BJ6vTZ zru#i`i2@K!}5 zKfH3LBlLL5wRo%Q-SwXz2>h%IU7+V0%h7S^&lk2{;6Px%rOUS_suw$dP65B%O=ZB7 zxDp2f_i^M(C#r`qr3#z(fbsODY7V)F)8yvsZ;03QeX zYI~2H)y|;&2D)^IzMQ*%h%7kJhIVEARQf`0JnX*899sF zJ{xp5}U>brZW107x7wm0?oNH6z5FTbq|!5`gUZGD5sFi@%!?1zV; zd+f&&CjAWWBqn`-4>!doM?cHjJ3MAVylW(xz%Qs|4w;t-emGkScDC%UdjWG($S#Fb zm+}erTPs5MaDj-QgJhr5xCNegk5_R^{3Y^t2$w@+f+H{rym#+qH!*gZZxJ}EwXEF*t6pH`53k3@=h2ebXF_l(Z<&IR&f7R|y> zAYyVkc|(aBrCowROLsC2v~*+q95PSo+lu^~#@{l3 zhd?=G3o2h`l9e!urgej!fqS%Q(*5uz0&@vOJZ8>4K5fs*!s+BC`;?g!|9OaaOW(-~ z+`+VzLt%m{7y)OUAsZn$1a&mY+zdj9xp#zlM=YU0n0GXm{s6JC5it<`@NED9002ov JPDHLkV1n7K`j!9y diff --git a/epicgamesfree/stats.png b/epicgamesfree/stats.png index da3c2ad02701c0747eb7437ed2d2aa075a00c184..67dffd0230dbd5ece0d421084513f155e42482a8 100644 GIT binary patch literal 3513 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 B@B9D& delta 1564 zcmV+%2IKj$8@3FP872b&0019Did_Hz01{A4R7L;){{R30l>*e?vhuY~;mUyNkB~$Z zks%j<19^~~QGW`a0&AGS**^q8S&}ZT<{~w>n$Iy7ZnT--~Q_eqpy9c8(`TOMf zN%`|zSnos9Kcvf>{Le6WvM=wqpbzyflMi`+DfQPNkhiEK<^TWy000000002Mo#>{X zMIt93pksgK%PGD10G+$3A>E{~LpthRmf>m8I%*qovL~3WQ@W|*H}01UDr9@6Yn~%W zZ-09xq#N9x3F!v6XG)gBf%Lm<&-6)TlP-|nsjynjCZ4?592?79oiTlKM`Twt8SvGe3q>fjr+^S-ydb#Lr75^ zMlHe2JGE+!@~McAqpmtx|7)%Sv^G&d`ns?$1>0(yQ_e`(*1bzABt8JoKy^L>!HEYO)geo7rzM#)Fdg(ZS!y~tw z@}x@Dk#(Q8-Nu2?>M355u)Unt6!hsR7{;p38A#6*J9osG-ua8~Un#a7#cicPf%J0! zSA7#cgrq_Vo+#TH3$??eqRue;a|8w-2(4bUP*Ya$2`k~(6vT>4&JSxNZx7f$dVQtM=;R>90PuYB(uDVc@iyd{$rf7ll?QDXt7g z*@~m4Ue|P2+9M}%Nw-P5zicY@?$W~!VmB#)zl^OA+@+^h#cEQ5;IE_0pP7^(kz>qY zQi9;ab$lsAZ#e9bu}}+F5~dKR<*-BLg<5si{h3FVIqXnld+T9uYzP;BXN&#KKW!ox}n=29nZ2 z$l{~~{gbYiRiN0K3u8lnH#>Aqx?=v21c|@r6<(N`ZF7Bb@LU-<|p{mx30lNkkM1jM`V zX~@a$3Yo^6Q}2>niR>aBrQV==*Cjo`c#GD%Xp;Vjn2P3P)Kc-gRGw|e%}59BgXD3b z|La)5*3EnL0;Gf9b$hiLAKZ)gtr=e=at~|tR^~`?=hBaVJ1Td%mB)&2)&Avur0I*& zm-b73%d=9<$#e#gc@>X$^1b-9HH*jc%D>f?QGC1UuBhqFRPJ&+Jw}M3#mh>+U#S&WZhA@O1*J005Q<0{{R3A47^=0000FP)t-s|Ns90 z005N))V*Tl;<)p)iZvVn000SaNLh0L01m_e01m_fl`9S#000F3Nkl*<+Y9q4!M#N4)aff(p>D3>{j-2BKNwk0VcrcZ!;Yn;7@reWQnBS61dCCJZWx(P0^ znaF|*3@&Hhew-d~@6L1r&}U^{H2)$%pPKneA{X2^6JJkA>T}ApPYT>3FyP^kZHDwqSskAbcturCUtgd6*OZf?d6*&fIdC* z%o8p@D^UP_2G^dQy^Hw?9qMBz?Ma}%|MRdBmPBrljrot=E^hMbr_DDlU(Sz~~%D3U*{xu8l0iCjak98hw<{b#>fV{U>@B3D8>Lf5?) zVodG-PQ9;JCy{GNJCBszB9(wPYt5BKkcjEonN~h+Gg#%ToW)hmMG1B{Jt^#>rB$aS zma zda{EBxUNJFpRVl54*2wb79!bj0b(|bli(XZcymYKn}v* zhaF^`q67r;4x1<>xG_?ONaPrtDO*oxaHei@#sXX&^o_ht7xb>j^npGebOO0H=nT%( zL1%EL4mwkA*Fu-Op)<>RMAO!Li*VDb@%7+yfA&@Vd$VICX z2!VXb^XZ}IJG6t&6wI)zY|*L&b?fP5ZbK9$h~@9Gssuvjwz7L~J!B({E1QucbJGT$ zK&}ir8{L#aXKQ#2&ybXUC#}Il(+hw$i?&4<}FK2%cf_`4B1$MLr_Pm p=4KE=%)KMrJ7Nn3!o8zW^dGEU5CSIVt)~D0002ovPDHLkV1i^4w^;xH diff --git a/fireflyiii/stats.png b/fireflyiii/stats.png index 5a59a874671c8cea0086e268fc47ebcf0fbf5c28..9320da7e3507fa880d93a29a4dc0efaf84e4bc51 100644 GIT binary patch literal 3234 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 delta 1551 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 X%u0SQb#Rr{(*kD3w~Q(b+++U_*R8Ry delta 1680 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�^DXLA8%q3tu#7XEADV2(O} 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 delta 1313 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 F{{z}{eC+@L delta 1680 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 sNea44OG`0=fJB%XEfo$Bgh~0M&0tZvX%Q delta 1264 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 N^eM-a6zdCd{{?2{WLE$H delta 1395 zcmV-(1&sQS7LE&$86yJ#0019Did_Hz01r@1R7L;){{R30l?2qjWaZ<#^s#AqAdw*# ze+4B;L_t(|+U=duma8BPMLEjG)>8AVmkdcz0mw}!u|j9@i%0p2ft8Hzr7ecJ%PK|tw3kD*3;bw zdp&#g`{nEAK!!TI=6@gK`s-$R{(Ox4e=xVy(=pl*LI@#*5JCtcFfPQb{*z%?;}p;bZ+p?ExL= zK<^<`6X+d=YO2J95A@rFY7S9thOQ9Z!`3^xI8;+fr>g=XgbJ+Fq105UrZN_Ef3pz* z^nT3#$HW43)6f;1(?igq-uUd1x*ss)?Durm>D@u!z8wSf4v*Rc-I5^(^zMfD%`|~- z7`h_Sut2vvyld$b26`WcTqGJ6=$4?%MZ7aWHwj(qb^6=!jvLmn8#cJLiW?T^4A6m& z8i$TY4(ANe8_;mbde1oX1oWnuf4i(83K2wMfqCvxKVswzFwYF4AR6}0@otxg+^~UDO&D_boz6WTIhdE*S_OL3X8R`R4A3nyPwl7E(~UA`PVbO; z9xtL{Q_JLWj3t2>M}H^gS%#d5hE2duko_-G4g63tMlNW`iD=lJH0OKce|qMbhMXMH zum`*ESQh(G-3EK7H0s<9duY5aIMn;0bTn)%{Yb}d*bVb{^?T+pbIzw{p(<&OP2k;0 zTP!3G+>NNX`F#xg;0cVp=LBADe)s#Cla!$P1YT#D-#eY-hE2QG>cT!Y%#Y(~haHRs zQ3M>P=Yc+ieekCpc4$2sfA$;lRfLaX_XnBh9(HIF`Z<&HS=jw?mtKCx$cCW%CSd1b z9|wP~4JOw{ZrHhNHv)U}63&-E{v#=Yf-bsy8*){*F|Tz4`C;(&Pp!7*hHV{qf^Jcl zVAhiz?h3sTOKqp0-~XE?ML(KKJgQIh?wSkC(R7m}vV-KVjfSOrU+`pyD|5pF{JMm|r$@uuTaPuC5LhQi!_vFY%?%q!2<%RahNXA+ zlswP_+fZ)U#PPmGTm!IMhW1=@ zPMT1|&;|4kAJG-ge+Nu%Sj&&-Qp62QZrHx|)5#;pIvwa8JXIO!?6LtJ=*aN!9tej8 zx^+V?5Dp7;^U&Afut4u%$tIxpH@vT)L*0lQ_Qy3Ca(LtrzISBj)GE;F=|Jz{)GE+B zH{@8S8y(&^W|;%Jq2V3q9a`_I16|eUAl;}nH>`hmOe>4 z$M!=rK5CbHC}rfwpS85;zBk%K#ihi9o0TrH?Sk0#Ic4{>CQv-_UFA2ZcKs3aJQy+a z`L*i3d2&W{_q8{cgQKbr!|rKvm2jNzsqfZ@&iY$cP;w=@@A0>qzYaY zU%u<=ks+TAfBh=4^@8X-9IsrzKJ8a=)vZ7O%lXkDr&Rp&@&N1eA=|5JGK)X|bG~3M zQRaeB+4ZH#%BSBFpZ0kDF0cN~FGuMH#S#K9jQSrvJycvSc`L6cfFJjMV8)2NL!hjZ z<4$I4O4OgaAm_90Yfxf`{bPiXoLd=cN)=bU`1*oXMTJ`~h`mFka+lW{7jImV`juI~ zD^`DQ5CtN_0zn-$?VCXe;d@66?}!iz#PE*pr9Xh#5421WAq4;c002ovPDHLkV1jCY Bzn=gA diff --git a/grav/stats.png b/grav/stats.png index d3de083424c7fde57070c0794e212fbdd98c6766..6f3eff539771e6e2200d4bd4689015f76e2640f0 100644 GIT binary patch literal 3746 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 delta 1604 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 M&)Ha%nt4S17llRTx&QzG delta 1426 zcmV;D1#SA|7p)7B86yJ#0019Did_Hz01r@1R7L;){{R30zGLN;1=QcM^4g>aosl6I ze+5KIL_t(|+U=d|ma8BPg^BY1&wQq}wO&Ap2NcM+e{@Y-%3|CmY?6S^0RR9100000 z00000001{bglk}sbuK|~W-KpKW%}#)^7&Z4q+{+~8L_Ni=Fi^5PlUVA8_<)b|6ZJ% z->yi9@{WyNW;>tF`{(xo(i{K)00000e*gdgz}*mV5n=?3dGA>Ck|CZrpz)0D$C zIi$B%r#VKEOu9gNk9C@IC=emN%Q{VQ+59`C8{DA<={=Ax%<1Mx7cAYPr9*l%e;Bi= zciej`7(7DG8vKw^$OS*hm0AVQIQKIlCxH)kVPQyb%em`FcaYwLb62`|x2}nV^d_CV zyAWuNlMd_8aPISl_9e82L&!Bfp&v0Ntke6P(DgzN(re>&2Pyof`{S)9;M znUa9VkDen3>1{aov*3&b4iAi;BM0dXtk%x*=}}9E^oEuD)tm}7axJU4E2JNtBL^J~ zs5oVfoXdNT9C$>Go6{sa2ECoz$v9f9FnW)u3}H zwQA70BjgM^cQ!kOtZB^SL<>0g;f{0Utj+0ucr*Uuy+-24(mvVVW``BkANspAbT&Ku z(il6A|Ly|cqoH4!w!6%-MXV^Ban)q#y5NlTdeD%Mn)IIo=+4lUPj={(^g|mODxp22 z)6qTIp-a;J+00$X)IPe0f1d0h9Udu`VnG#5?Kuryv`-Q0Ovoi#v44F1Hu7YLY?Kd| zR`I%6Pi2N~d!4RT<~j~PcS)wG?#PoJo->{_4%fFwhNx~{DQUHG=0BosXB>vUf87O- zr_pVvR{z`O9yt1V*W=S^^ozSzJ0LxqxC$Elp)wpF+udOLK;XWQNA;ue0}t4};Cb7we;FO5 zYon|cmb$6p_#=qWE6Y}4ycN=OE@whJ4Tk~BJ9F=Aw*9b3mDaeYxMk8^9bwo= zMcblm1$0F^c5I4tj~!bfeGz$v?e0mB33JdZ>7I$Z^4NQ3f6|d^wFPHNlTK8{nx*5^ zYqa!|+nQj!VIe1%y7DkyuX~sCpUVZ($$?hv-V2dV4zyvh@A3{_*skoU~sKM0Wp(qWjM-t5|nQ%@YRibc1(_!58a& zzKV%g{zSd+yKTYI`-P_%DkaW)wYJSkYtnbj2WZt*mKRftxy$6{(w)De1`&J%o zM<%klc{XZg`}4)yVDo7A%hOPjdv~e5-!k}8z0U@n*!`6v3P6PgfOXJxYz6>8>>c3V g0VNaw_YP{oKaCO(uz>)i9smFU07*qoM6N<$f+eKUSpWb4 diff --git a/immich/stats.png b/immich/stats.png index 281a64ce204dc83b079c640b5fea4801e118850a..62ed02da710a10a52262e26cf809724c692b6156 100644 GIT binary patch literal 3174 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 Rx5NMd002ovPDHLkV1g8_lKuby diff --git a/immich_cuda/stats.png b/immich_cuda/stats.png index 2811a5d27d6048b4775035a0adb8530b87b0e995..3c87b487f904303bf969fe518b6e3118a5dbd6f7 100644 GIT binary patch literal 3486 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 delta 1494 zcmV;{1u6QT8}JK|872b&0019Did_Hz01{A4R7L;){{R30lmXM>xbw0{;L3pM7UoQo zks%j<1%ydNK~#9!?VSm7gD?z5Ex`A`a@!$F^8EE!{QV`5pZ8my|9bwl{ts%`rQgh7Xx}e? zocr~z_j}L~&_Ce-Pj5fGKUlxw`X_*|9Qyfx+Sb`o&qoAqjSxZzA%qY@2q9D7hz0$o zVaKb{V7+Fb109Vpsbm9PP>b@PNhINui25~?2EJHms3y|4I8PJk1J2U~`hfE^fj;0o zO}YA)0KK(&n$xLnLl>a;I8Re9vkcI?oTn)!D82)|qcei@3Ny;!45}9TKBUOe|AF3r z8FX=nd!YC2>CVay=v{ldBfKA=L%q$xKMFZK-Rp<|dVhr+=jlKPI^iAYBaFxaeFW%) z_pzXhxzpJJI)xnSE~h)LWdnNm(CM<(pxI6~A#`!IT7h0vc3G?m#O|5X>9Q5}^2yFm z_EVDT{aC!yWh?LIAN)&_E}PJ0t4zy(I;bx*BXR?1+G3uvOrijKS?2rvz8J1>8H{;A zfM-OmS?2lxPiwVZ=4w}`kZYrEcjC2{)@sM+=We>%QtobP z=-i=|N!@?mJ7e!v6mcO*-LJI@^lFN@kfiQY$jRqc2tY5N(Dg~(uaG->I@C*lGS?+_ zp^$5}hzm&S49>J##04aEptoAY1tfJ^tL-LqeNv~j+A?!pQm3`rY!RnV>a{p`TsTM8l<`gsv>##RNT<4d_J^ zdVJ`v!5KWgGUlrC-RH>;T)ifj}Be%^y(A3?wn1+hyuMdb5;4y%$dfS$AwNI*97zE(DC&8nJdoOylx0Q z!r;tom;Xo72Hd|XBXdRh?$b~2zsoi+(_-h)VKZv9L16j9zT2I!T=_0&;*u~~buSJb3)==!H4#EtTE@Mpz?E`4{|LZ5>Y zEy_puAn$WFF+Nv2^a6c<4t?}ZtSCQ62^kap^jvNlA<9RJ7ZZit_sBliaQNgH<%@EC zdIw!L8y?vsMEP9f`4O&KZT&W(f6isIHEN<66n@rf)6f$RquzJivM#O;@2x^l+%UP} zzvW##QfpPb+~KG^J0Vli}R~Yt1jE=Whd)1qy^x;UbVU%;=#3Z6>|Mv)&%sk8x5^r26}hl z9q0pA?~)37zh=^Zz!%dz*|-Vhv+Z~E+Q@Ha zx=qZx8&w;*T^1wTJ+WIfr{j00@AENR4Hexr+a1Z*X2yGeBUMI6tJ}L#u`<`{uJ@yB z>Hn63?_+JfD5vN2hxaMW#CvUT=r_znd^gf%^nDX`R=O>8+gCUx%Gt=#myt`4mA2$cUbxGhT_T6SiXXd@O*P`gwc5SBH#JsyvvpP=M wXu%<bgx@J$)Hjk60EGDt($?;!j3E+ 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 V>R5Or2jhza80nemmg_h_{~sMQW(@!U delta 1384 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 delta 1435 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 diff --git a/inadyn/stats.png b/inadyn/stats.png index 81c7401b154b152c439aa0136602a3f0958bc6d3..6ddab0d7704e3395030abd50b9c10eb8e0648c12 100644 GIT binary patch delta 3532 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 delta 1561 zcmV+!2Il$J8?y|M872b&0019Did_Hz01{A4R7L;){{R30l>*eXOyS_P^2&he@fz}v zks%j<1;a2kaPMT z=>l4THt~4u$VuKxBvZ|Y8oZ;Ntb>A0NFT6Z6VeAP*o5=}3pVBKD}nUZ3O4;AqDdD> z@3CN0PUjIw@3LT1+->>}>3zEXzX_K+f-}G(=^ybr5w|n5Kzc`{%h8`8y=O~zx`YdV zzh(!P{+W(hq2on|I`h$lb#DnG)O0ffFZ#WIY$RM#HQkE9i|R{A-=SP-;syj>H>X4Tr@*UgT;6Ok+Dx@|GfO%zc;`Yk42+tk_Nay3(W z#R&{VMBgR#u+Yv)zkPXT$(7SPasya;Zc(qT?|Mh>m~=tZ zn{ed>M{Z+zzOdld(076}Ys%;H!UE}ab-l&}>q)Kl7HBo8@1$1q23k$}@1#~=!X7IA zrZv+4_LZs* z0J1IZ#r3@{(l`4`V>c>)SeN#~uAJP*p;Van;#Awbv=`R*vy&*yW!Ze15qsx|5Jy_N zwJh7g#k60iYv0V)i$Fd-_GFNAiJyH#JEn2u*2K<98&79HJ4Z#&_5JA;N}#`a>ATlt zJ=SzBQC?2p^;x#!hX+QT6R|nrQFjIAX!@SCRktzbKau!Jsqs`>y_1#=o zW9oX*9I!Fc!>GDmbXGSMdoOi^Mt`&VIt@fQ5Ua&PQ-GlD?~lPg}<(g7Y`a*HW5TU`!U7$=wiZ=Vz-bEh|ZHFAkd8dEB|+DXzV~`SYth%}WeETXQv2F(*bYZ|gdKe`LKB z`1Zc-H9zTSUe<4DOz+$8>kd9&@4HN$Tl#69ed``bHR#ChQ;H}+FX0&g>tN8>3;=-GJ3!t6B@_U82UhS8)@Bhv;Et5d00000 LNkvXXu0mjfADAE+ diff --git a/jackett/stats.png b/jackett/stats.png index 5049411ac855723f35361f30124747d9839e850c..352dd7f2daa6ca1d98813f8236e4abb4232b6b00 100644 GIT binary patch literal 2678 zcmV-+3W@cJP)005Q<0ssI2r~mCZ00009a7bBm000ie z000ie0hKEb8vpI3>iIhjtf&0 z+=20#_!k$^1GIwUy>h%ht zXc>YB9wNW#9mFyT?f?-|mH~*6;0_QW!5tt%f;&Kj1b2W43GM(965IhIG-hzGnU$%> zCIG#S7TmL`ISP|?^xFhrh|z+3VRk(LwrJ#}sIw2$X!CAu+-FEG z7_{Dhsd4VWw00y4FOA?1Ov{qxTOqgubFgIj%*sd0WTz(jzaN-WO}@Mt)=O6&Z&P`% zU$Q)T`!l1fuUC(HJgdrA>)Ru?mREji@}GOljPE{pVEGDZ;^t<$+vYyWMmSDdNA}XD zvO{b(yKp0qmdV2UVq@rHI|k%gvV5T4C$PLM<3>|p6f=a{$fEgJDle!uUa|mSu_~t@ z2(B^(K&EcAOxL#Z7hv;MotD=_l+gjkQeKwnQFG4*ljc+Y&0($Pa|f6~d2r7L|F@5} zr2|U^Yk;k&94*tYxvaEORf+*%29={_dgR^tI6gzp?rQ-Mw;@rk?JZuNI#G3l?}!&v zeIWpL!N@l;^{{#P#z*Qm0qCva4pjjcAVig!yRZ%ru7>&CU9qxqfmMN{|bXuLmVjTbly<=UdAyRM$c0uo0XUboI2vy$11VFe- zhC&wV;4^jxfN@mL=U%!AKoCs%3lJd}Q~@I7f+|3STu=pwkPE5+5gPe|YJLje%;s;~ zYy!~RXjA?s8_~J&#B9d)^zr&l0EQTI%HPdsE*S?x^!4h|w!1LYm{a~1o?BR$2_Oh3 z56)Km$@$aEZFgjl%4PP_yt{XiWQLgTV*{ANll#vPuJ4_n{<7_k42p7fWtkq!FeSN( z;0qrQg_3&xW*e&Wz!Xj%Jiq#z{UrqVAyKaUf@*4DwB3Ae{SJaPummUf&#vD*czGIQ zStg%-&)Xk>Z94nktBYrs*KQu1Kiz)jK1Aj816`Nd1Bk%MgR@(oT{}G5JC7`L&r0n* zYVH7`dvgEz2Y0StIbKA~eTd4@GBfuBUq*4HJ?S-Z z7(mc|&D?M7g+8}ThbI^RyGO@NuDBiz%UW6s=@?yGGm-~i!D?@djAzH%Jh^aH7N&dePG*ou5v zX76CNcer|W7I1tI_$H<$_YDZk)9=m?kM^$J{B?}U5|Z~Z7wgCuWV*Inn6#kN>Kqp9 z0JbQfwx^a*b{})Gj(oIDI(}{pT%AL(2DT-CH8mCbfSHCnR0UjM7v!&|rmo!B4|=_h zhMGITE+{L@Y`^9{gy0VBx*s3Dc>mLP3J)%!=01er4(z&$;4X6q2-%MhU%vn8)xv{n z?f_vc&D^gZ@4r-*0SMPm4_~~u3uPI1egeDW{PdTXrk_OS4HY!_6s+eC$UU>B4Y z+>`Lv>nH~IbQ*wuvqBcEa`F!r_Nmzfm|AJUJ&7-KPu@%kng5};!qk$cbO)BED!9iv z{XjC(!~+9!e}JjQnz=Wup*keQ7ZUc~?Ep-tvgRJ&XqhCphU&nYd++Bip?x5FKmX_A z>ha!{c`~?A&33JFvUzgS*Tf zAUxlE`Td{%{&CF?an{@cBKG*+X_6$L+&!+@C+Of_c@q;r#J>6R`>)ow>-PzI?y$7?h3#R+7x6`L0?cUFUxejSrlOT9^X6t_r0f&@0~UlWKuzA z?&ZNfo6kLQ*C-IOAHIF|-+#XT_sQMk-`~B_rXZ6Fy5?S)xzF5>0^b{emh$0y^S2*< ze)Q27M}Pe5%|HL+sB6m+X6{LD>5Tb<>=q9Vgd(f43<=-$BCNR^D#H}2GOUljI7-whZobb_rlxMh@=VwW!1#AUI3R z+yNM9!ZlO@*cP)w0z{}d6f#TINvey7YF{X6gR#ayvT8j_vT?W4&WzZ8`<(~&q|?q_PfMq6v}u3N&UAW8*Uls@ z62ngIx8HeSPm+mGOVXvTJLzfZ)RSbE(=uClshobGN7!wz(0;a=|8HpQK&PGCcV_+O z{;Bypvz(q3I+M?XbSCRezDwJE!EC)J$;SWDLf%K)?MYG{OK0dz-Na#C+iIyQvbQ-_ zr=7cYW;3?7Z)bRChV*38(^B{vG4p8|*cmUF#^;WHS_*A$@w9a9$<(K%cl-T1Gxv?4 zg^!>%pGY+?;>MjDTP_?utB#G;e#@PQ_hi!3(s+o8PRl5r@q#IB+-WIoeCpFOZu|8+ zkMNZNfTd}h0Ra$@x;s=0WfK5G(Xd#D%pD*^3NHW=s+?OUBl-gbr(v{=$PN&qlA3$t k$WQ^kfTjSiU@wcTzwUHqg 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 W?jKWBTm?T%z|7=N<8njyNB;p=D_Qvf delta 1212 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 diff --git a/joplin/stats.png b/joplin/stats.png index c6ca7663dfe56c48387ecfcc52a2db334ea9a79c..760fb189fdc6aa36a9c9a27889daf69eab755184 100644 GIT binary patch literal 3515 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 IYS=&h4=sP((*OVf delta 1591 zcmV-72FUrl8_*1p872b&0019Did_Hz01{A4R7L;){{R30lmXMVP2u3R^2>wjMAnwO zks%j<1>{LYK~#9!?OltqogfS(0sjA&d(X4#0VN7T!tS)4+EVJcB!o=>=Kufz00000 z00000000000H6hE^*}#=1k5!A0K+uX^XJ#dpO2v5HtF>JGK0H zO!=2$`gnSfK11XNiU9xs00000000007!qrLbrP5*2enK}0CQ;5Absl0BS@di!~c*@ zfG*Ss@8lrE>JQ@}&dj%71L;#5`aWM!&ApB5J+fgI^Sl)%R;w&Q)m@^7ViHLGy- z={Oz8DVJdnZDY3qhnnVgDlzyMKYnMG^LkR9lPJi{vUbN6aMcL<%GC6jRl@m=w}@zUC1s{QGIe7@1%+|6O&<=O0q2NoI!?=IBNgohni>cXK zZa7?+MX$-wCpwfsK+Jl0_=0~JTD$nF;o>whtY~TV9UzZ|aj5G@`Ww1%vxDO3UG~+& zQ(zY*R+_r_y6ZyO21Zh=$ca}tL7Y)(>EijGgN7)zQ&}zP{uTwr`@u4QD-||7yoP~B z(&J59X=syxsV()^IevsJR+60?UTfMzm9#tGc{Z$-Kd;!xddW^W8yz^;-1c)&S}8m*ae; zidNSS(vLG#nM#!i*ItjWZqa+b3@I@fBE!rL+@HQ%a2VGy9Vj=T$Q5iiSZvh?<=03j zH^9AYp)?EmUciI$t0z(9>LTxxVLcXJx5}_CdFITWr%MHoAiTp>+WnSngPhZbK<+-$ zgZ`UU^jdnS{ppy0$@`JsCCgU6Asnzl`Zy=;!oAc*-1sb35+6KIy>l(K|IF9qq?$Po=(pp8#E$;#OUtkuVP!neM?l zNC(XO_DeH9pqKY#k=$ynwj3I?4e%1}oy$I+?B5Cdce4I>8kDr}{(U6xpYrYhH!81| zZL7!SKuNY=zCua+qyF<9mbEW-N;RedG6+ zfBziki;J6o5|7(HsAc=--!*LC{{7pw7x9%l5O_5w(9h#fnJfuBL#q8z|B{iMYTx_) zn}45dgB0nR4Er`Ppv^lGZ7*`8T!XUqNBuit|4!I{>-TTozboxuR73%w!U6#6fNE_9 p003z30Ngu(5()tB9T*G$0EKc91wsVS-2eap07*p#PDHLkV1iiu4YmLP diff --git a/kometa/stats.png b/kometa/stats.png index cde575f32929aa42b3c576b784e80b69eac4f348..b58efe71d5d8180c8ea99637d224b0f008e2cbb9 100644 GIT binary patch delta 3262 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 diff --git a/librespeed/stats.png b/librespeed/stats.png index 840212aff6c965a59af4add891bafaebcbb3fd91..f66aa243adcedd5375f897a3d2bafb53fd7ec2bd 100644 GIT binary patch delta 2836 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 delta 1450 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 delta 1375 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 N002ovPDHLkV1kUs(L4YE diff --git a/maintainerr/stats.png b/maintainerr/stats.png index c217f3c83945157a63543494b752c2aa224d0e9e..165d2fe6718e8c93df044d758678a6f4bcccb3a6 100644 GIT binary patch delta 3284 zcmZu!c{G%58-JL$23bmBCfW5?WG9t`WQ(k0d5wKvLu8cY8E=-*UJ zw;1bK290cEnL-Q(^UZs{|GxA6ai4RabN%k$bzS$hor`qhJ3JlE!43dGF?0PYR!a!v z&M>;IgNVpqpB@N0=PlB?F~MIGvL^jjBK5hO{qQr%Q<4(0jpEPd(_cv%_DY>S5e2`pcnI2(_2JH}Z3&euSPV(Y>CIFH}IbG=`_co@^S zS8WPvQE;h zGn;%h`HtFY$_Up~KFLK%MPT%cSi+;`&l1^FmQ=^UzYeWxbc(^~-l=wPNaH?fKTZ2$ zoW^Eh5@JCy1(8-uw%u1uzbW%ZEY_R@C2jI_r1YIU)xfZAU1J@YwLY@=gpB5g0GqlC z|Hr=nbt3&oaE|HJFp~rL)#h18D#|~W1&DLxQ2OtH$AOca9sjzAyoJ(^EffYya6HL% z4gytNo>XOyx#NM){p)j)I%j!C(6#u^!gx{1KD`d&kJHV=eDFpCl+zQkZ16zP^CE}O?Khw6qtf5 z5OGkOvY?LmG`AKdjaVR=9BS99f9+kG`5wvd!f#lA*=EDiQ*Iice~;wrywE(BmitHN zN6%8b+C9AyEeTePmfJQ0;1?!VJY1lF%d3qO*1fKmHpGutF)JWIN0m`a#{zVvIPYw_ z{`wSYbA$o7sFWF~BRgIj(?|HgTYeC2zO$WVIE)P)hHq`WE`)vpMW4YZdctn7q2H+W zXNOpRBJs5pumi-$9j>|e&qMPrSBQDs$_@k2-)}f2b;qzl0CaAL5{ltqBQMAXEXUHg zN6|@rL>^#Vnu6OV2lC3v&t0Brg_i=vguDDbt;+YBx8}L60ghW0Ah}&8Py9IgHs-I* zoG6y!hxuHbKp@$E;#@_*jD5X^!^G#Bs)_0eT0DLt9zT5o=`HjwT)|{}qV){5X{I{A zPN8l#HzvM2L}|h3ITN8*^2I+DAtF24Zd394otu2n*D8tGDZjhg7hFad%SL;Uz5J!dI2Il?)MpxGkQl}5@S z4=M0DGv~0>$Hm^ds5YKX3N3l0e23zsXaRkagm_7}$;hj(zUn}z+c=2dBZ_?RJe`2a zihMBDy{Y^>a&qn1D^MwC$$i>kW_J|33g;e-fM;_GfK_oCCzD~z*qo(655?Q3w*zwf zqb13)O>fj@+{Cvf&eGj!Y|ti7)R(e1ok;Fyx~j$c43_%aZ=6e>vr=tISvW{3I6PRb zJ&Gq)Z$z z3v&E69qOUOI>}{9@Ud*Rd?_Nv@utc-OtQD&Fis5aTW7p=>6)&<@*VDwjTrW6eVKLw zLj}>UyA>}J<=>+qmSJ}@y_8%VmrRE>o2%*9nLY70US-qY@|B5bNIH%d5fWVvrX?ytl4xc|J!qi@^l_EV*+?JPS+|Pxo>(?#m z{A2c`FT|uyn#JAvqId1C`0*5Mx@_f)6S$fgbT~gq6d4R@4z_!cmx)ufNgoXTGBZ%H z&!9VjZc9y2UDO+kr^ZJ%1t;^{o}JfsOpmQ~X8szeY+_E&-V|++!n}6c%*h0C_itfS z`wkX0g22NC15q$Mayhl6y>4FNf|BQBNf9`*d8fOwpmC$Mwu!$%ic8eYt*Xt)#Hh%y zGj8`VZFYKZLt}Z`xtajH2)J_aHZ|~pEmjJgvuUGj+RC-Zan1m)f75xz`T*9O>g((K!G?q zyU%UA&z%wcRu*}3tvBfA7l&f6NM4?aj*oP0JOFYgPQ*)!D4s-a&^!a-y>pFC+B}pQ zNOIU0{eX5tjtasN(+5M)j(L}a>tK1Wo-x}H{RuBU=3LV7?(;M7554Q(iS_R4O&dKz zi>du_G(!u!d5Yk-Q@z63*JRgC{c4Nr9}U)mN-~MR|xsVa8-f@F|6X#fu zVG|U8GG$9^+H29!+8u5pid^Da$|7VA?sO~dJnDQlrF|=0WV~T-rdX_zPW_~baTng$ zia7tL`vzF??8JKnsHHs5kj;Fs(7@fAGr@x{wiR;a z1zPp?sSW3DXfh6t={us6-UqUJu_p4Kb3I}8%NQ|QNjedX6lk+nMP5mF!#iCE@7G-9 zS_yMej;4D{&2o2Xr448k#O4c zn|${AdfBddRt$W#$RfnAx`1=>i?nRB70pb0`1;}zqc)9IGb-1}W!=Gf>tCL?&?QxK`f^NhDJ9jFJ<+o*kFbs*xZiu;M-#&D#1tdGRC{? zid(EUpVuo~7&#bAJ7ImHTeKTqO3EHfdF>+L40vsFqAsj-i~5}_s1iZ*v>d8P!bc@0 z*z6`FeIBh#QbbQ5_W-V9ZNLpt-#U$R4TS;F@3)y0QK}l^1Vwsuv-5~mfl*!&zf?(m zknh?|%Dv1u3~Q7q^Hs&fy)>XG$npLq&W%3p%R^Z0H(#%p?YH;@36?E%MNJ!-XrkKd zjZ<2^1vybbzqA;QmlVnu&oU#FGoJ9MZ+aDHqUC<`DGM)O2(lhzG{+~7vhQCr%3@(I z;LrSQaLo-4)bc%WhZm@U_w?}{No^|>cOb<&K0kBj{A3$>@1&zEZ3s{CB4 zm{G_M^uwK!8kl=)4^3V}(YS5LdI<1H@h_73F*N5XYH2zE2yYshSmRB<@dDHgS^8kK zS7N5kWe`R{>o72C20NsZm>=_^0f(L0n!iaUX$IF%!UEPRr}wqCnP+*2e3)jd;|cq| z>RtZ$*G@4mE~v!5ul_ zz~&FTgwe3>rs@4m`KHWuXJfg@ab!^s)XDA!SU#jOT9vr-bL`6cm{@=-U3g5rG)itX zk66xyA7Ec_>WP8AnT68y~p|~g6A!*v<_>K zTK6BMc^0j!3l{KJV(tXxZ<5@Y)q>^D9lW#U?o-xd-cG_I!Vc$ivLd6MsUHz5`CiTo zV8>m9PXQzUB<}FpG=E5gvWBtMVaK-nzCU6=Yf@`yUw&UyhOvfs{HD>ns2;Er_IudJ zD%Y3ja~Qj<9=>}oaJHh=XGmS<)9W_`eyiSuw~cSqOE-7Mqtz6!`^P&le&GQh8=J$U zZ`e`aUfKD&GwgHtHfYvI#>~GrT0_(71^6;G=4{q(3P-eVW6hLqkz7j97MJ5h-b(oP z3Z8B~daEo3C^P`92-F=ZWt7tBwrY&)Q868W8RpWbekjA5Cj) z4B;wfQ4iQI{j@pE?vbJsOO71Jb{wIAq2bhZULgJCG`w`kSr9-YRQt0p1)1yAL$s4& z5o~B~wF)^ai91#l`WIK*A-i-s$U89SQDwiPum7!($cB5g^>u8d-zW_#h Lrnf6@x%~Yf%Bp;X delta 1469 zcmV;u1w#7Z8P^Mt872b&0019Did_Hz01{A4R7L;){{R30lmOG=xAU+<-^Y6BvZU>S zks%j<1#3w}K~#9!?Va1Y;vfu#6KUW7mFL@zTA)DbNeTSxV#Z4B#x8Oo1QY=P00000 z0000000000u7$2%1TVoD?1Mh})jx_=pa1;P{l1Fc^I91b_LW*+e9C{m#k=s{drIm1 zf1X0000000000008;^5)`?q(UzrH zZW=aQ4e5{$1|(g9E$s8@>6K-@r5Z`)*SF<+33X+?6lp?w=S7avu;*Sz!At<((!3_r)FEql&v$fUgy&x-H=_crFZ#&3DEaMzOE1ZpmLlioNzWF4Mp`1>LHJmOk=XP*cdaTm-P%v_9QsVlfgFTiz1gAl zDH~3FuyQG!_-&gVS|xo(#qZnf&?f2gV}{QA_-Zhaa}$)`TKC>sat23!E$PjdOEEdS zJolcik<%7_*}+Yw*0l^}UDY zDpLCJ>E9vUD>{PSHY;bYC7qzmMn>+krBx=`O_F}+A^#4-8?1ZJn)gdGa>?I#2L0B^ zWq;!t^tyo&yFOlx+>BixZd=pDy7zFTZtMdvf?I9iO-pS#Cdq_WjT z1-8)pkFkL-oGb{eyL(uNbkMzRKjra(UEY(GQsG=}xeQv%qEas!wx(pI{U@JClIujMMZUSA3N@vl=TOQ_tCQGyS3DVXm(m5 z`ubKXwRcsOD%p*H$K{Wntw*pTVLN))kb;$>MXix&oX^o3(ba=p{f+oiD?}yyD{E2B zb*Ln|dDnb@HX0LSJKMY3C#&mJd+xYM{TwX#xyiD>ZOPrHM3*B8qn>SusupCQue^^I zdf-ta@L8SuUa9_6$cjp2{IVo$cQ(UUc4<|^pkBj&2tQ~|h-xq(gPs*c!`4&} zGQ)gJw7Ro}?xZ?f>T9+?+mEZ%*~nm&?i$&;?J3%8ykr7{pfx2LL}$w|FN=n)N!hd+ zEQ{{xtj|teXSMdOb+?u6&Ps}t4bixDUl9eM!UDiLFrAwL0FZkJn0G)41;D(6w(t+n X;}NZPA-C-e00000NkvXXu0mjfDG2c+ diff --git a/manyfold/stats.png b/manyfold/stats.png index 6dbb218a10c0fcf2499459f3e814f5c99a146e61..86d86e97a4c6a81e123ec6f73460519a26ab4d98 100644 GIT binary patch literal 2795 zcmai0c{CJ!7ygYYQ_`f6Eo+7(vQG#Tva}!#lO??NkC>H}tYaDLm@BOqdr;Yn{@Mv(;oA~ zTJbql;1qX5QQ?@RsdLWz*_`DHyT=WG5+Pfs<4SWwhiLKYq2YCUHj<(H6yZ)SlMfyO z*;$c$A{WawC|QhbKSJ!n_gfrZst*HS)j85(G}EcQ%~~L2RR)OyR0b?m763Wp25GQI zfet~*{eR%{w@%V&cKzIdOv^nStizv@A2eKElP@M5aE@vwX;j?@VQgI>{@6-opR*+W z8bjCa)W-b~VhI&yMG=Su*{9mU&GZ^s9s}R3SGggWeh1fl@+tF1Q+X^@qh3d~EVDZA z(p^LEACMBil_a(1x_}NIt@G(sZeldQ)=!LZU_qJz=Qhwh%mQ*kJ`zCaJ`M(M?<4## za3YlILiVJ|@_{1>5-h1SMz^&n5W4amw}c#dNX3KCVfzDFjvO@j>?w2U<7n^@3rU>e z0iaWV(&{^||0?^7S>~{;gN1`7F7m=;mpQ!Xc&LBdp#Yjbb;QkSOp2KsX&Z68pI*{8 z(AOCg)LOdd;49nz&fU3lfk0e4y&bjlyGkZ2_NIJ;`{}-FXv%RWuf3l7o41BFk$F!- z?D7z>U*NS9w>Ec7=se~djBKWHM$IlEACF~?Ly#xClcoV`-1yDON4zIn0l)%Dn z|8D1ESw?y3L&5O;C1PG!fgkd1hWsexR2h+oCrHFB7jHW8xLNZOysvH3$s4wvM!c?S zKN&}ri8H0$xB?dtH^n9ovv(Y8YgokC%|?~A{!Z-3PUG-_lC%UL>U75qX_TmMZ+oo+ z28T%!F8X`)?@QB{>WNB}9T+I=D3Fce{-oJX8b27cXk@s?>O6k3&=(mncNPS!GfAU$ zzuaQRS#&DVmL^Aip zEkP2^O+)0!ihQdLn;#XSOfq5YtP*YOW7Yd1cNNERPEDuN+jU<}zxLduFRWAj>JG`# z7J4^Q6#nubaxS(cn`^>Q`;P`L&yQu3@_ZyLZTW!^cE;8{h&N%+%3HRa&;aik+il$k zmdtr(LMZJ{)b%j ziz&L2G8!^z-(ZbSBghPC6DWJYwGvx58n$Wg5zj8q_NZKIdQOo()tTX*5C$N-N&UOySC zXc5z7W_JvUB?#tNq+VF06o-iWIYRC$zwIeK_%=h+q(xVvKnv;txknzlv$+cQEp)Hk zSn3%km_G4_y?f+&anbo>I7_-dhW%oyj(rArqhsHb#B1B1Z$CBXmrGvo#w7J>ZNjAv z$Or;O!bjpsF2DlE%b zuHR!$U6d-Uu8RL$%Ndow*$CdnsrL;#UdNWX)FT-t0SQyrdc5XID#Z z!A>2o?FD(X{#~WPBScWgrz~Lj{QM^LX{n+65PN5Cd(!x&ze1JlzR@yCN;MP}Hhruc`WjDj_lw1C_*4(~~FiafOv z$dbUOT&6-r_31{x1308chVWY2o~TpL?DnSgT??ODtym+M8l4P(9T{QWkWDds7mCKb z&zpwJwTyjzhU!#zrn+Eg{PCwSg?tDvPq#X>Hiz15jBJiB+S!yo3nXcx5F&_D9*U6VnGvQp0%BZ%@B$N^>a6`gG6SER

      0DM2cyG zF5#2uUuMi>*RJJ`mzw0OdiS=3$&rsV^2pdRT|6f2-l@iMR%=N~w6{UZc`I>aaju7J zK0)F5;6+^E{B!%csA$Bl0jT<@VKWhtR2R+50b(7l>!IN@3LnCA>=BMtZ>mq*VtSp{ z`9xmRDKuC^jOH_yy#iv|^bdZ48_;Xej&weU$sZ{)GTE`r_>XV z)EjX5B0|Zrtko;mU~}L0I|%+Og4!dh&s9DsNBd^05yjdF8O6}|qEV*d%X*honF7^}W3Svo2GlV1pYWQDDv)x; zN?d)Y^LojGUUWhOd1~%+l!yVIb6kn;fE#>8L>hi;&%doJPk)%N?TmE2wJM6~Ja3c2 zH!H*n?<)DR>jKhQkD0*Wt|8brnN4aG(|q%xzzhPyL$2q3TFwQ)Qvyy{xy%PpmED=q z9OU6cKv$9_P(A5W4B}?>p4lZDC_yley*CI6xVfzb3X;n2Ab4wM``pCQ!daF#tl>fEw zMoaN5n?egwD93CW!L~6Z-@0%FTp@MPlU5wD-c*R=>UERY_h~!k_ioL^GmH!m!5_ zyyar0XjRE4aQ-|}QlglYWEq*A-atBPT*$-@6vx!Y6D@qUZDBy8yGKPF0lvhIjBYF9uC>SaYAG6m9{-%_x{zE1$iZ!V&weim_AP6> Y9=(MBq;Wid_j?7_=WWbOO+Ehn2Y8%R>Hq)$ delta 1357 zcmV-T1+x0<73d0(86yJ#0019Did_Hz01r@1R7L;){{R30mIc(mXXWC$^G**U+mRs` ze+2(YL_t(|+U=c*cH8imcaZKobEeHfafvUBkOgrLA%qY@2qAS2e+VIj5JCtcgb;F#K5bn7LslYHp9d1$4r4)T zpaUHlgf6Hr?VHmj>d47~#Is9H->-qz&vo-f&|}$}KsT7J33P+mnm{+0ttnMQNhFy_ zfZk%Z=8#l1bcr{UaLoqvzOpr?G^r%o0?<3o))cpUd>4AUmUZ9GH~G+^u4c?ge=G=a z*>|;9-td=y>5k$P zk+ap)g>^cP9MB2Q03GP)B~8RXugyeDL+Mqm6Q_^%Chv~98oppMflp`9) zUEX`zc_$+GDC&KbHy0YNNumJye*?VFp}yP)lTFej5xGnI_MN;-xKiW$b`urMTkqSa zcet=*>zFqYxwnD;EUBL6eKd0h=ofYHWblNDoW9OI4DWRCN?tr#)zZ0l1ZO1Uyt7X4 zVD>%`fk`Ar5}et)^lqbrpGlWu*J_8In;f|(T(!nJH#u@fVV`j1Sh8&we_)-!KJLgF zhQ5Z}8)$+v2LSgB`3mn{U%FI;uol4A>`(7KIHS1>-}Y!#I@`dgWg>q2(Q5O-nO@!M zu6C_TW3&N%^)ZAk24{K-jWq7P_mM>L3mn*n(xm`?eHgacp3ZP??8HcV_Ztz^R~QIm~W`-c-8Oe>|*1?C#imJV#Dm_+|&@@#ju~mdahL!aT11i$NZCu_RS87labIn$B#VW$T5{SwQKeMqrdUq8axpA-iREF za&tLy^l@_=7(s3>M-JrXwl#s=9CVPIgAQ_Y&_Uj5L~d{dViZ7^e;rFUcaS=PnC4ER z$d?7s4^XF%x7XA6hG7Sg>wTV{Jmi1Rvrv$C6_LvvKT?_Xfb-Vf{`A~M%GAka*0*al zo7Dzzty`5-WA_AbrNeu|OPd=4z_ssMJ>I@I;&$npK@>}3Nw zyH*iB9kFW_^_&>Vf0E7AK|`BDpld%;4Cn?A4?G9`9@F=0pyqQ)?bt7Oe>8$M#b*KI)fyG*il7t1U0R(!8mwH}y+nwyyrNuDY`8Ccl1}H}!V(R@?$7 z?uy$LRQ8Bz(mmg9T$I%$;Fac0oyanM?6_*wcHKZ$Z_S&2e@b&T2v(;RrhlJGTXxfD^{Nhe_JOm82pkD%9TyDbh!}m%frs6e7uVxujzcf~ZL^Cg$R#!Gt zomgdabxqc%e7ka$4F-(dRfDmvyhQtJFA2xMD~*|Y-r3U3^QL}j)HXg0=1uohc1@?Q zvQm51y34w9WnGL(!89!0mqdZcus~2pUB_k+Ld4z?AHzE$g#t0Wqqg)9i3t!0vq;5! P00000NkvXXu0mjfbJ?n0 diff --git a/mealie/stats.png b/mealie/stats.png index 9ac5df70fe0761fadb7cf75837e40aa675b66d19..9a906e59fb3eac77f0b66e5ab8491508e6a01f22 100644 GIT binary patch delta 3103 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 delta 1396 zcmV-)1&jKu7>^5(872b&0019Did_Hz01{A4R7L;){{R30l>^kgU*zAh@&KN5PA~c+ zks%j<1tUpBK~#9!?VZ_@;~)%0kxl;pmphfM4c-toiIL8INKGm<#rRktB$f~mLI@#* z5JCtcgb+dqp>Ig!@yUbmMV&|B!LsFL-}3wnpRYU}vxY4X@K5${OMmb9XjX-fhf zm?+&4!SJ71ae{+mPen&*Y+RbX&a|S@!L*59q7mLf2S|q^xm_7 z?)@`U1bSUqEs3gS@wLeVmew1m_4yp2A4rl+pV~W9omsks{{oFRPRs5XqR6L1wsa9n zN>7r=TLxXXar(BZGEg#mCC<&Kd+gnl?mdaGO-x-{Z=6;^XUf*{m6(E5uWxDAy#t+y z9MEk-r+fDWU4jsXbs2^QI%7J}uc|nI0NtC$@jOyY*-SELOgEq*p60!)V?sdh!_IY! zC}v@IV(*tQ^tRp?`E(P8u3JPAfNsIiRXbc{lH~(>zlN^#-nT6s>YW(6F13myXTi{k z$oVsLQmdUSj_0OUh19CSVBB6l9ZNTsTw_eP;l@RvA}y;~1K(dtXer0R8u| zw>$6y%(V+6vGi-q&SI_O&Y=YM!!Rf8M#horEZ)jy2MnFf4t@=t%?_4h?B{HD0J?$B zoiMCNL+54(hlbA04h{{Sn;jf~8ag*SI5cz|Id5}xZg%k5yX)rZ#NJI9y7p!VQmY0G zUA1zCe7XrYt|pNN^xh3!x7k4ghZ0yYbj^XlT+wC1jU%7#v3DmpmHl?^@-M|N29K3VMJy?Kt%Vj=BP*RxfoL za~%KqPHBfrUB)MzL{Z$Y$5J2fr?ffb|7>49^mA9c20Holf|0uOyH?q%Y|O-o$ZbT@ z-d=RP^1uxAGwgOYS&GwtH(>W&0D6D8yC(_sqM4Hw!}Sh59hBGPkh2BoE5mKK{`6tp zn#JBP0zHoIZ8ZgcSAVBVDaP1d;~@=s-$K(YTN~&Z#g(AP8H-WO;jRE)v1|2w=y$}c zfTMxvR~y!~xX&4gvHr<@SRU#?N9OzX6GnX0Blq>OUXr=m^aYXJ z!CNRF!s=IT^|D=ELGj(jZxmRnJ}bW4_-2nr+xQK~{D0YdGHpw~PG6VB^3#UM>_4KY z{&jZgT6IOm3mPAPbd3*+#y6||^Aro8{O%!hc~v2MjPv(rt-wNgb#ZA}{CT3Ds(QIn zFJF;#U!)XcQyFevy=7ZCz1N7*4C5HdVL_EyBGNu3P8648EW*vk^xfW z(vaZ#qgg=!m;b*mqlYyoF%JR$MD`^v@B=+Z+|BfHcb>j&;6-tujGX+Mv+tpPgjrno z5bJu48}wZzdp`AXXJ1wmH@o=GVc%YTxI%}fDQ?BECw@dId*-BH4_~yvQp?M<@y=ON z$L=`RUUaOcd(K*mZOmYJ0lW~)9mAhWhsdH8aiCkM2LZH9|JS9MO&_m4F)9H8v5$_i zmS3#?N<1I^1jK}N`o^E0ABO@{(KlFb&{-IY!r8)rea^68YOYw##M7n7!S-+A8yn$H zhaBY;>op~v;)_(W63SCJd(9VeGrQqI6uW{S%1}#>W_KU#Y+@L93dK~r1(t@4>HOaL zQ}eW!{ULySfk%}g$&qJ%Kx7N^?ewSANyrD7pZ<3&LIN*LEVV>i=ZYwa0r7rOO*e`} z5`ChvjQmtgT1|vy%nV4@0)004I)1VkNE=3al(Y$HV$nY6pJtdmE916f3~==?Q9VqcQPzl6Z+=mE zUCFIsoE5ph-u3T-pFHvasEaj9#>QhNd^P+3>qKn}x%V($>J=gyr0g9A!X zn5X?_Vh7&r4T8eP&jcpmz@lb|v2)M@dwzKA_wd+K`^rcxh%s+i;!dzU`-C{PMA+7+ z_wfUvyj?`O^Ck1`s&X8TMp`>{%>n|J{cWafmBctGaK25&{HET;R%ncI&B7$1$zn>RimP$vh}Z{Y%*ps=a*MgpEf>otFvFI; ziD$tkH{rnH`gw+kaA+mpo4b3f>|n|+F5@yZ#-!nKhbP}!em!}j>s^K6{tCr#|EJ+k z<`E#Ol^$tO+!vRV)j7_xRi1=gH^;hkHwQEHJW8S+1Do9CkVE0zDe!G~xzeDw(Wt{` zRj-dT_cn3@8woqh-{tA2fUFpYW13%CfYG`j$ebL~x*g`*btNi#i^ihtNCn}*8^QQ5 z`lLt_OuCiD{znGGVIZ~GU@mxkjhp7B&pr_@3WTz&)Y3hD)ywFReB}iGlHDK$3e<>o z!RCZu=BuG>NDT2~^r!{_omYBrW$Vu3dMn$t7&R!VbuNwl=lqpOYMuw7to^8 zuCkytJK~pTveq;s^ElLP=^B#t4e((R-}U^t8bvDTIw{r+Q6?xkXMm56_+Fx%(4V)G zgFGv5Zh~c+uM1u&@@4vjEp*L)+RV8W`1XF9Eu;U_&hDtU2HCL{x)?^ll6A@YhTA^> zO-1-y)-^d2Jx@AU@q9Ri1FK?whC;4yXsZtoTbbCb(h)F=D3$G*@M}R`$62onRyO@^ z_7@(d%T9$!z>{^8w&3y82>6Oru`5pU4C6$AR-etl?V+Bg`~dVi(bWBcEA6-5hfS#g zqKop9RFZ@N%}j|ejsA0y?5aGOnlOmd|8B`qXm5M`b}J_dzx@1!?kKu%WF3$YwT>jiVcU# zEbq)=!@X+;OqiGVZA0PFR=cuUFWrWTVig>XO|)1i!cUK@kCxt!Q#dzQ{nm_@{$QT3 zJd;V<+nQdoBk6Br^4BmQd`1bzrksCfVSXK7aM@9C)1hl@w%=zZ6n^8W5W=-Kj;NE= zpM7{amuCkHo|w3-RI5;!*@Ui7n&&qiBpCY_%s)LLO#0CX>xbJsT?{c-wEm!rJMnXs zEd#sT#Qx^-wHVTsPa~u|~r$gmEcUb%&TMccy2R(6%X2r(}*IX`fDyD~-mw4cjC_N^ixEUHyriW;}%pMl@%UsIBK_h%W2mCa}-eR4lq zVT4Dqe!<3kldGqpzxTl{K7*LX@VYs3tKSHc!%b| z&YE&wF{O8XN>BE>X*l^U6mmnZK*3cJXXWX6;Q$Y!B4+kf;_hn^j%BVzwiu`yf|jLB zWy%&{GI^#7mTS%KTBk)C6Otds2|C58vgWV-3hNzNdp2Nb&{`jwTqkU*{rIf6QUO$K zJ`A?VWO?sh-C3r3YnXa)IiJ&zmT>BbXlT(zHgEOP8n1Du372Evdzbl@=>?s>pObac z3*i-2&rTChLO7q3ec~?XXY!=P#96RUfq-R32K)BBb9*Z;V0HA-d9zDhj}&OLUb|z3 zuWB#(CLQrmjgeM4RTdsTBJy19vvVF~fOv|*c&$XMC{W?faMV=2zL36+ZO#v1-Nc2q zHV$S_TTL4^J2^2N9BdewDj%o;w3N=+-4wdmjfTMI)jNvpw$2GtVeTJjteuhfXPNt* z0+q-ANC$r`DvDZTmW&5L^R^N$zz&bn z-H`{fDY1Ozwo6TUA9L0an7@D!u}We2ae9s)j0?ziRMJZ)vOEGmx!Ip_8*V)LyK)uY_w5VcKYzFB zoKbCgwvA3p@J93BlM`TkSV&(LP29o_8YL^!a~3dtY&q69cHzxyiK(yN?${ET!qW@b*JbX zp0V|wy@TqpRegv;#n%kjb8vgz?J7KPY!BJcI{HBe}X!Fj*B$lmYt@$wbq#Pj&5_$!REutVgKQqe9kd5b!! zowcsiT}QNIsUP2&5&`e~x`rh{Oxy^={_-yv6$1SKD5T%9oR;WdI&%nUeL*(bB(1_g y4_s0W?aN86+njoB;eG&QXshDJv_MMiKBW1mZ1lEX>MBQd11mFI)7K_f?)?WhB%MY8 delta 1465 zcmV;q1xEU#7t;%n872b&0019Did_Hz01{A4R7L;){{R30l>*etfa&GH^shnR{VoLR zks%j<1!qY_K~#9!?VXEq+#n1^k-`7}%WbxsX8i!0mjlwdGtH!}(6YXk5D0;D00000 z000000000006>2Tj{pFLhAm&VEnk0LMlSz;$omJ->CNSv@;B>m4=;Fn3#7Xp=~%kv zxb2&EC!d~OuygAd%>YlGgs8Bo8lgV5fdO-SdJfpiOdHX+^Mo=s^n;6wT_dp4ISZj&yMu5r(%Tn!|U zZYz+3bfS0nUdxFu&MZ97`7Ql8rbm`x9jq%MU7`U+lyq2EFs5gd4(qd9`oX=6i;(_* z^B3=VrgLn7%6mi7SvE|4_CT&c38p@KAXhR^$J7myj;Y&o?=E2K2J`7_;IYn3dWm~? zVdb$-O1ilF+a`Bn3#M)@kRz1SHKyO)0!=8VD7EU`<=Q)@K0E1hwyEL<>CD>njOij* z`E+J&lSl8TNjAC4vN3C$JIf{&wQS6P+6-2>5X!09M3JF{P;S;huA;&PQ#ZCEhpC%O ztzzniOO-KoOQ}^%eeT7Xs#-QoeZqXYJ1)as)UsjfhO=y#x~i(xEYep@T}2=#Ii!U|jF965G>(2Qi@ z-BYV?|4t~^oo^pTJ3J8o-i`4xzWb(D3FSJ%uT^Ux(kr!U*3`qgIh}L$p}kYD)Yeg8V9{URLZ-B)8a^Glfc#&QATYG2MWvXRuj8e5iNoWyKDki*fhw za9JR{u1V2UyxobBnOQd7re0}(wzry=PsJPN(@RL#XzC3H=*s{vbm2RDaYjU>fOK`H z?pr$B{rmI%GBls-72oV2E-SUFGQ;W@-)pwlnd@5xjK_7@vdj4NY^Hd{(2koO?gR!p zl5Jsq!VJ~i%ckLE3cu*d6KCG+Q26FdAItg0o4whgSaM+?pY~>lV!?TTV>z#7Ab)J< z%=EFGUp!T-iWGVwrt zdQT+_KHVPa!?13a@HAh4(&x=tAbjW}#iWb7_}v|I<_W*B^rl(15e}V#@MrVszj{&`%jcW26%oHF?S$;fNly@e|8Na2q(7}>!!Se} zAsuL5dj~eERsog{OjNCcsViKXF3y1A4;qrDYwuu4_wMeVBgb>p6TM3x(xv-4fDF`| z0rj^@t%AAW3NBm4qmy?9s)l=5hjgIcx95)dKnd?Bqx|Q)u#4&TA>Ns|NaEsVNlV;o z5Nn?!Thf~o@x-%#%I{Eb{job-c5}6z)_;>ZNs51r8GG@Q23v`H4Pu{=BU{p&i2m%( z=jeC2{ZD@3X!I@{``^AS-*>#E#kZe&Sn2)j=uYBpgXkyJE0?QpyAzkb`tu*oMTbtK zIN2U7C>u9(RFf(G{?Gpn{!6rJa3*_fnpFP!E%9yZ^}9TO{h1F((j7WYt;#N_zp(T( zadF94`8WVvy!$63M&uJtWF_f$GJDfPf2u*wcP;BsBE$aSA>NVNHd2t3xWvVe4Gs$L zG>CmdM7hiBjf;1#iGIn{@0#h)-9!P{Dhps8OuaS(0ATGM;NAgSC;;vqjD=E8n T5PDVs00008NkvXXu0mjfuw3U( diff --git a/mylar3/stats.png b/mylar3/stats.png index d05777b73a8fbf821b2f46ff721316f2bff96031..11638a0ce5a7a0b3777b44558a3cae434d3871b1 100644 GIT binary patch literal 2610 zcmZuzdpy(YAOA8ExfJOn%srhbLURjCxh&U24wH?Mjzqc5{aVy9-{J}C4E|Rw$eWCzBc5rWqlHkz_H$;&1_|PYv7>0O-1S&|$|&i4%oOvhM1m zs=q^vEurb!=rmCn8xSw1ib!ey>yUkmzDvRSc!;0ndQ+nqKYua{^ zAvw+XSpH3ZC7A_BM4Cyfc<{c1vTL=`5QgD2*l4khPR|Qr7??!qo-MXas(j=YvTT1+ zuG5^0AIOx{M!#&aR_z!@v!51Wp zWj}6LyFco*4I^MJv0>BO)}p^&0d~+C7o7pqEiUvh{CZJdGXu5~a#W|OM@~D~6SO?o zZRIu*L&k#|?xb$2<3SYRqM?mew_!(oYDw;N-Wn)Jn}DQ@4Tq+2a)+X}(Xna;1vU!4|YP8EdJHG2n?v;?Q=Or`SSy%DXiqQ`xltZHX4)PWIZF{67cE;~QjjK>1x z-QJx!zWiz%OS~&Zx{I;y)32{aRqJ{(gPSy@{4a}zkzXrr>%<)A?0&8_X;4viPs`@i z_$9HvD}wHiMmAn0;1hDP73tB>)2-f&}2+4)^k>$@IYO||qU=&MLTL$R)GD_zfWX>s+R<$B|i);AuV zb$mLbbVK_2EVjM3|Uy6(OZmXUu-k z8u}thbWd%9_IeFokrewbzhRfDsadsjjv4tW2qm zah4os&lOR3Xc(u;`F5wtXjp=RM|L+zw*xz!y{eR~%P6Mqxkdyd36$~H+Yp4RUD_tB zR$rmyi$z3-X>2EP-RXrIuu*CoSt?8uuwj`4bmJf-w}=r;y{T>qR2Z8v3xrC52{!w?7lH~I#5o1At7KJVTE1Km5BJr(+lvxHLtU)SrW~m-8|W_L2oqp+D?BI-V|)M z;&RrttGm6RV+SefrivXacuX?m%bVjYB109*y$dcWT}#ZtUm?Gx+SR zlKGGMr-$~4;X7vJWju2Eng(1M7AmBR0c8nXw+wCuhGwrus(F=&jCf+jIgVBw_tN=v ztfKiXIbjB6TWD{%U#beY0(k4Dz{an+AT zqgHmIX3+Y<5^fbs;`8D=Vbt5iUct9vM0=a+(9dUlPEQ}tpK%jC6V6}X)a!kQ_89fPFKP>i1%Dsw;P^-h-Ta~&ZbU#Q|FUYhxlI$V;xNAtPzGii*6sy#^;O-ccQ{n zl!&5<^lxze?Q|u@(ZF7Zj$9kU+WW%($sRaeHFadTx+gfHAnt=n%1Z^C(DFH&S8-2e z=RV`bodMJQ+#u303Qc%wn3dZbWLW2K1gS7Y2AYNP7L*gQ$oT_Lr5WA(4k)=}Pnsh(Wl&y+iXM4qjwXI8ptEi3opqRlnkh z^0{)(Oj@iHleYZn)MkEa!lIHO2v9$JAp{BpEs+$P^RSWteg*H7jj@F0ANB{NNEG-J zO)e;?F{Cq>C|g)p_9$^}%pH)QuEOgPfWx#OoYaVtD6H6k@Dm8Y>|8Il*&;Lk0XA$W A&j0`b delta 1139 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 HpydAoe6!p) delta 1390 zcmV-!1(EvL7l{jy86yJ#0019Did_Hz01r@1R7L;){{R30lmXM(r0}&(;rD#q&ygV) ze+3{(L_t(|+U=czlB*yLMM?4hzjm%-;nQ@Ovq|2c44s;qFatU^*yU z=C@-0SiY8UFX+;o%iMj>q|2Ukkx*zue>#t^W7211?G~dh;lr)P9-DVyp)U}DX#fBK z00000006iqrlO(`F#IINb|M1St;|M3y0r*2q?_#1v!n~?1@}2}ay>z*yW*xA|4>!r zW>$T+kZv$H6VeUlWY&C)Q^dhLxq$`QwlcfBaW& zrnqwZzIx}9!5Nt8Zn+mq@>R{eOS_EKThAz>=TAH;K+%CbbEa| zO1DP(nR$ox0VZ7b)*VNV;0!~yf2ZO7^qb`9YkBY2);xilcuoGz_cT40L;>mlj43GG zzv9<{h}@{QJ!wzN%ptu2p)X%5t@}xEMpBb(#NHbb`d8v=f1%6yo2za6C+XjphBllHz;(a zmPwZyz>U*Qt&;aXhS0TBtB^i`&{^zY&y7>AS{3KWdmq5Mi~2YZ9J$`DyAyZk&Vt~n z`85_hAaoWx;Ks4o0XL2?e=OFWymy1vos%65T6f*a4vxhRBUpFU$qwH`qsV*jd63S@ z4km@JJlR25?9jg(ryZvYiyiuR&~VG_JmGE&LZb5b};9~DK`X$^f5SR zKHZuVN1tw!^D7f+4B0y8-04@ikOF;Qul+sHe%i#?e>Z@2O`WO?f9bc-{GmG9=QsHZ zKzjFzc3qyI&SHnHT#uAF3%C)gFA`;Zu|tl-@V$@Tjp}y#cBKnLwn*G39Qs_3-O~|W z7Y_9q)s#0(;LS=m9fobRJANWZ&ZyEG?v4q=)??gps)T zu6B?nW$VktY(wIgf6aS#wSzQIc#dIHj9+3ZyV^k-GUumudg0j`<5!uIM@cW5ukb}d zGXsH_N=na?F15p9Df%z4?KoBW;ytw;xnrxF%Rd0!24}p%e%1=T zOD!=SoT*5V0hbpLyr%7MgGLh)ziM*Bg_SI#wc((fWKq{-^+Ffbwk2Jnk?Lp9m)n7@X w0AyGISO;ClW&i-h-T~$vkU{}4@1Pa@0Hzxcl?vp(CjbBd07*qoM6N<$f=j%`qW}N^ diff --git a/nginx_webserver_proxy/stats.png b/nginx_webserver_proxy/stats.png index b6b284d1f34d8e67187a59dd160260999ea09664..bd4a0f8719703803ead29002e1669aa0318a5c74 100644 GIT binary patch literal 2884 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 F`!^-cUjzUE delta 1404 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 delta 1505 zcmV<71s?i<8v6^786yJ#0019Did_Hz01r@1R7L;){{R30l>^kiW#!+p@{=4}0g)jW ze+80BL_t(|+U=cG16O|ZcnRV4`uYd;+d_X*f0F-y20VTQOTV{Me*=F1CNJdg zGXUKd`pmumlE>6txqE~VLI@#*5JCu{f1oQ@v3Nl)GSeR~$VqY<=-x^TfbOuIqzGM* z6*a|ie>WL3ft-9>9l8?$#)m)$A(y0v=f zX)pB_fgVmu&e$+>O#J|K3Cc5aHAEvBxt1Ea)n;(p8nP30jI1^V{E_JZT)v!n0($`$|K0$qxh zelhfOaC!CbZBKSkV(F)?NQ*$P^Y3NoqB#MFsec9P;y^B)xXRq=BG#rSJ7}1)otske zxlMt!dHTs|G@r9JV^4NC-7+K4wLjS*cF5iXU3VZCjr4i1Rjc#$e{AFD>0S7EoVB%Y z2rS{Ej9lz=cNXaT_tT5J{EJ2AF8#ZNqmOl#u^G8&WD-b5&V)TiEIp`P*3>iH@)ye4 zfZo*w`wQhvK<|tt0$m~W&Q#p_cRBiAdyT#FClQaF1cr$frUg{u&Gjegn znhBt9uXZTz@-KE>e{Tf(-e)CC7qd8gnYt(shRjUK-&sBw_ zX6SL~1|~q);NHh#@HAJ~duw&H=|!N214R_J890jN5mgxM_DbDVHLngviMtGBD;AoZRh z*L6`c2m*K&3WFpH2?NVy6e4A}v?0#OdSKWK4?S07L zd-eWnGtiaYA1R_hY(0gbj!frf5JKeM5$+vPLVKb zgAocXGuPH@9yOhi`+1g#YuVr#JmZ%z-;tVe%JOHv8fiMDOFB=?_ZGnSbh7Hiy1U@_v7hwqls5}$m zqEAGE-Piwf(js5YJrR4rDPnLzA4){NH}!T^P`r|0Kt#5&(u?QjCbt<$_hwTO(lQkm zWRsV?%7zVYB7LVu{p&~OJgvf-{NlcS(JT_KS4!b#JHK{Zd@e_pT6B|mKW;3-sEgR+@{xK0Mj!JOwFMUOk-nCFVX*7 z4e^bRE(N`*4)kxhH$-)?&8sKOM-&F*E9 z(6JW_37BAac>ZetQT50%^`fE3L^}AqdFK)}8xr0R@+|-G2awlW$^TG}Ia|^Q&9|DM z(U1JSPK!1PUk@ro0$RiMYnm-^eWX)sqeOLyK=Ixc$&_W)iRPO*RC--T-E7U*68nQa zi=RX)uf9Nh*!(`fy|H3J-`bd+%kYyFvJGj3hid8QKyIsvH~Tlh$Z=9+3asy}IGZ7= zZD!NDeT>_FQvA!$?b!qlm9G{_*cza>&&H{6yW3Ihw zI*W_@7jaqd*3G7#(w5~sk7t@~?tj#3vnmdHa~#d+bf%6In~lJo{eyTls$86EDUIes zW7L}P<3Y?-D>IA3P9aJtNWP`mTaKX=46{^vHW3fLWr_8fHeKDnkz6q>@q{7jTPj>m z`U%{-6FJbEGpQ36NnOu=o?FMaf#S3~-iWVXQw20cXoFbvL=1Tx90CzorLKKW0=m16LGB4o^aq@hy>&H*`DUSsvhM8Yb5M z;WvyixRSWQcx=~j61%GyHhItaFulYfgX9mc%yY-z#p!IV>`)B@;nR9CiIZNenu=+G zYn4!z7nbr6+rOsjarCu?X}0wF$|-fE3of=hdo~OV8KP)TZ&l*%)fJFbMj^M-NUx5v zZiev;W=5=~uSTu{&~~zIH^jOFm--~yOie3Ti5cJA7`M5~o`d}rW0k$gv>q_yaCr1f z@Bw<_Zpw|mB)VM+KU}cep4tnsCc&o*9OKuP-;pmyEi{-f%1V}uG@(SRWdK>Kzy%H>@T z`l+uW)?h^W30~>gB)P?2DmxUaC1vs><>8dD{yv2;g)Hp(>@{XQ+Y&8vUW<9*@uu^x z(~A_S_9e88#gai2i}`ZibN27*dbH7-&EpwMej$$ z3@y>~#vPQIr!Wj7GjxrgmDY#1jx`RKl~P!`IK01GgkhtT=&^Gx+6Jf?AnC(S$O?r{ z^C~P|ZtwZ7jt+tKiYtV5Z3fzExWI0=+qhg0>ssdv()A@MtQ=E0kaNlU31v1FvlE{_ zxl20*)l+QKAO-ipx4wgo?*0;hq_a?XHQg`Is4R( zqu_^wuIx7vVG}@wdT(+d?8K$8cuyko8Pr;gv$G2=OzC>P!@VB_I|6NUN(HDq-QqcJ z;;yXfxmnYb)&=nn(!y^eh(>JoC<)_y@z!e&R9UR@g}9rR^o`$F@_S;|j6kiy10HBd z{_P*o3L-N6vWu`?U3H0S@Nq@;Pw^W0oqx5e6dX8VciBsKCDTrdKy43_H3-(lQ`;5- z_goa{feggz;BbZ2h@Qd!@Lu;MzkhN5m*=2xcj{)hf>#15RC@I9Kgb+l9|R9K z3EpQ~V*0+6YTl}hKPbXZto4FatLdYm=jEBOW_to~B1Xj}BnIso`(w%EXiL9VCsMIp zmVB~#Z4?ilCqK-1zSi@|KK*nWlimACMhqGPmW~Anq)7-sPRZ&8*Vk*5R*(X}2PzZV z)^&?t4R5%;DLAK1c-XJXIAuJLmHascnHUNrF)ECFHRhR90{VHXUW^y_#nGsS9erlX z_WA@E*X|jQ9sK$@wW4bGvzxnyh@R%+!)r`I+gD`RRTh>i1&aIHckT*MrS*bg;QGeV z)xK-WehfAsG!fsxL2q3TZ6mz=eGVL~Pi8O!$fc4wk2|=ppUE@korly<#(3BAlcQ3( z!&JG{D);&FvC**>1*GbuRFb)Iv^>+?I1aO}X!ug0CcE4Gebm|`gj19lZ_#AdQW^cQ ziDt<%7F~D12k*7jKB}%tnh)1m{-^U4w9n`5*R8;i%lI0O;@we4$Dzj9M~p3#mj|ft zIaPK(>R%*ky^JofJN*sTMOpqWQ%^(v-i!-IIo3SQUQKQ|VsWN8d&QyZ)y*j>YM}?7 zD^bufvb~hs&QNH!{oo*K%F5l?Z0{EP`gm+MYS8ze9~s|=EZX|#mw%Za@9-1(RcxmB zgD;|Y3Qfb;#(HMcnY20zIoTO{d2uF|Kh`s%Xhg+4qUd%W*FN0_eQ-LhUtW;P{W?(N zqLe83eXg9NXrd{nwJ+5-q5e!lREMKWz>(iVzd!jd|9sHu?>_&ab&Ch5rxHN)Sn>8X zn4?Wp88)WUC@&PH+5TmMRuq-vDt zi9(;uMz@vacTrXyO;>0dN=+X=7Lk8CPwX;@W;HII9wKs*Omi)l9MWz}m%u(Xt#;kV zGScs)RPtIza|=0&=)adGpX=@Q^%%6N25LQ~q;4@G#YX$Fz(xOQ2*a*a4}^M+`$~}DAaZ{>C7{riA6UMZp;+C85Fnc} Yu8#5yk>{QwJ3m-}x^U63+Q22@e;~G1d;kCd delta 1463 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 KdZnuEi~j>nR@kio delta 1541 zcmV+g2KxE18=nl286yJ#0019Did_Hz01r@1R7L;){{R30l>^klZ06v!@(-Xap^+gM ze+9NlL_t(|+U;G5mfIi(KqZCr_)E`E;d%M<>F3{mdEP~67Y1~jEj@qG@1Onh^(nmX z!qN?qPA^k_U%u{!{T&D|(m}fg_r8C6f7$$-UreOi;mL3}G=^)*XrGL72A_D0S133ce<^#FrdO9AYx~Yz}ITM}h z>45m?9YZ$v?p-XLQpL8egBn+V+^NVn6cw|3YLS*Kc! zO|zx9`|T}(^x7>wxpz)q?JhgVU%;rLw8~7kc^kR0CQ$?(q^HPr*b$_cWag|`w z`INg0=6KP2$|RJl9lUQC_0d7z|v`T)wkm^yP}q#R3+Y56oOY)YUwX7^_5 zq%@F=1J}1=v4hAVTN-JOe-1J<3Ku)1n3Q@EEOr>TJ`E1O>tcuXq|b=1%{zEqY1m17 zhD0Q1#E_n1vg1zVk}fHb+hQ^>B9xzdmlVBEwLasfuH|Hh$uvX+a?44dz9W!rQ&(}a z!vYE-#_3CQ?@RV}G@YSgp6oEcw3_0Y$8R}9!pa@!7`f7sF!Nnc30N(UcD zEOwwUb5nvXu6^w49DHl+L!1qP=N{3ue$=GQ!MDGpQtRmwwqw`j;2GM=OwOd3H2F&z z8)WLv$O)lb)uvM{RppT`hH_1@94`QpM*0?$#(;Qg-+euPh#B+>BVAmfLzY56=MQby z^QSh&RW^wyC<$UcfAu<9Oc3cQCe8cCE1E1uJ(wiBlnXKTt?T2d?LLc>G136{gv+e6p4V>jzs01fj5Wmb&NA;dx~`=6f3BzNn`qpdp&32+UH9H~ z$forK^F#9cHr7;hmSyBpbbEYxaJs?;l)EDxl)EE+1Lf{WPoUfz>B-x z?re9dpS%VhxF<{BR%D)lE~{4mN;;x98-X0PHuCW6Fme+c4IOV5#ikYvf#F+F&WgNC(XO_FFwZpqKaZKB2jz zmyeej(c@cmy31^~*iKK;(l;5c?kj>?ey?`PoM`>Qwl!Pc8+QLMPQ$kRWmfc{&GGI< zmQF*$OSAMbaI9!>Lo~E0P}Y^9!5Cdx%GRQHIyOVsf6MTBw|wvX&V43(K6E>Ml^UD9 zh*G;~W2<#t8P8z-gDnokpT6YRq0n=S!T06yx5(bhiGIkwbSpG_*xIn#>{Ya;?B80g z>bhG}OS4zW`hyLO2ivG@skBPxx1siyd(rR=>HQBJF&MYN(TL)kI9vXo^{q5v?%0s!lP r>f8(f0LZ-qaPI)7Pylf6fGqq2{`3#Ho+M1&00000NkvXXu0mjfxH0=> diff --git a/organizr/stats.png b/organizr/stats.png index cf84c54f7886eed3a9e3156dfc489a805027649d..2f95f9d1a0c2dfa8cbb9201881fe0755f11fa849 100644 GIT binary patch literal 3402 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 G7yTc^5|Hu$ delta 1531 zcmVyYWOyS_P^2&kg=<4)! zks%j<1*u6yK~#9!?Oo}5+b|3hV)^}Fc}<#Rjw>H@bnpOv?3-If(*g^mc~~hC1VIo4 zK@bE%5ClOG1VIo)H-KLOLHOCvxbJB^{)XQ_UYC!n*CpXf!;xOhVsZJD_XqQ2-6QGG zJ&!lzFVaEV?pNMF?f^VDI9~EjxTc>V2!bGg2!bF8f*=SYDUDh^@)7TVG!ZC1y}TgY z)BfD(Bt2FY2}pW8dEX!%gcXSMPe3X=a%fw7rfPVo#U~aJIw;j7>AY!3dW2FAkPxG9c;hNMFb6))Cls7?$6E zrhU>;{t-#{z0>z{E+pOOPM69%S@-xbKu0cuBgcqbKu32;B(Wngs5Bs~DtpEUpc ze3~=m-5J~Sbg-lEBbZP3#rCOvd{ag`<-H}_!&pb!NvtxpDkc1yjlR*5i?O{wJv!xC zw(VXvM0L%-cfsdLE$IinYzX-vR_9@Vdz#gdj67KtcZk zHx=G{!Ffj^)fOnrb{uQ@>Q+*bWkWgFikMlp<}uTb0?&xt(EU9|;3Y*A(MZoBv1j^Q>YWOs&RZyraJF2WPyKUO$|FYC_+U z4qhJSw*-1viP~^|7iZa=bhu<)TfDEn%U@pQf%L4B@oxGqbL5;fFiw+R0aEA4AteXB zZ1XMaUEFPGmaXKett+K0I&$-E*1Wtf`W`Dd^W(nF%J0dUq*vbLQ`Uc5GPN2<*Si|^ z6eG22gz`Q{Jw|HP4CQ_FJwj@KHQS-QkG=S$SOcR$%DWhK(HkTGzl_>K!o?=#J&Zc)9mWSzZbaW@!5LU-V6;nl4}F)N>;M}L zjHW4X@4rKIvV)BVM&p!s(06AiJKW1#jZ@yim2(x5%j(KomFm0TWC!hkq#KL3j&tRp z^4QjEx}Lpo-df)=?rdM``Y2b>vs=$f(PUV^olyC)boWHtHrx&wh2ii@w(+9ehGFq3_be_%Pm) zn{PP)=S}t9+H?Bs+?IELd1$jmdX7SQTcd7@^bp3phf%M`A!y8v==kiON-)`awVN^#NZsqND1N6?M*X-<)G)8fc&HnY{wvPG7Ec8Sj2>jax+*~)Ky zZ?@B?DMiPz1ApbzcD;{m;kWs*1Am2Z)ueNq?>jYD30F(H&sz41zTB6k-wH|3PHWj~ zvHtx@B>H0S)b$l`notZOw>*9)xQm9ORzky>{8pfhb_9v`QoYgOraS#E)PpNES> z5TlchV;+}7VDTV-W0HRKO0kNhQ_+=@ej+k|iS(z(hSq0Awls5Y7k|Q!`yidL0{@4x z5vg(Bl`wDa$vR0V+-rLUi%(eOecRRpg_B*%=P?(?r?hz~ogVwsofv+&_?-cz=~u%K z7vJowkuHA6G5=o{`SIBHak;!*isP3H!Jq$#VESjB=GJt7r-q+ce3C6b2^QaM_V>4V z@|%|&u8xG|EwZ{?ysPH)c=2#F9RB-8J<;^gwD=?*zt8!va=bsgx-2xsoEtA6{`gg! z;XM}LY`B=I?bPZY%YZ+Zf4&EtSBBE?o$2v;hn|^z{rjw diff --git a/photoprism/stats.png b/photoprism/stats.png index 5f422b34a45d4d72540e8b1ac5535aed9405f5ac..59f9885ab183711fe8df617406b54e125e1231ce 100644 GIT binary patch literal 3256 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 R363`aEX}M<%P+g#`yV4tX+Hn} delta 1504 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 delta 1364 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 a3q%dPfhTdu2PgkV0*>~l?P$j_G5-U7K4P%| delta 1166 zcmV;91abTH6srl486yJ#0019Did_Hz01r@1R7L;){{R30l>*eeUE|)b@1LtpI8ToT;|RlAcjOd+?$4&v)4f5@8{VNlcUrXqjvO|fDVuTcy)qpO=(dt5fKEgX z=p<19-Nx{aO~-p@vxCE>Rk7K@e`y$&%?{3%R@ZJ0^wIQa7o1USk&W2WL6P&T3g(=_gPhY<2)T zn;krubi%MeC-2>ZAIHrOKu_H45ZLTs!H+At+2MUv6nXE4p>wl?O+T*iW(Tp^!8mlC zA2q~+%RqkIqxa1YY<4im*xv|>=(S9t?p0_IJ65JL9dKcPD6WUcriUIvsyY#B174C+I2i8H~ z{bFbX`Ki7aqBn@qen3a#i!dBw!OS^xdN9zDgR#At#Yb~-PaaF5$g$wjTbU!pLpc9f zQF+L%JXSna`^ED}f75rRZ+$QMEzde)PFoA0&nmv2>ALu~HM@`Hm0#7CQ9RxBP}KBc zDi66YJ|h&xPKMO9vEV!6O|YIU`5A@-`VuO@8$G)40^`J zt9vJ5|I2KiZjKF)KL7X_FP*47WLADs{LZHLtvqDDm--|MG=F#oK^?h{%^-w`y(5Nq gL<$9Bct`i^4|s|V+pak(@c;k-07*qoM6N<$g0&k&hyVZp diff --git a/portainer/stats.png b/portainer/stats.png index 278e59bb6949798fc9aefb3280f3525e5a9e5f93..5baee2bb9d514b06356c5284409c63dea934eaf8 100644 GIT binary patch literal 2894 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 G-uVx56_!~5 delta 1296 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 KDe=7L-~Rz=HIaG% delta 1363 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 s)@gYbl5E&{{MKME6iwFxNbHzd delta 1354 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 V4>Y+82vPt5002ovPDHLkV1j(Fn(Y7p diff --git a/qbittorrent/stats.png b/qbittorrent/stats.png index eedb1b3f597f96b9f7a21ac1d990b66eac1f326a..c6cf2fcf1376f9251611b706f87aebc1227711ec 100644 GIT binary patch delta 3626 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 delta 1417 zcmV;41$O%T7o-c286yJ#0019Did_Hz01r@1R7L;){{R30lmXM&qwlp(;j~QmF_9q` ze+4^9L_t(|+U=d&a^xTk1(BKm|K`n3JmVW+M2wA~&qJ!5P%KMZLI@1bA%qY@2qA=MQXI7m*Kf zu=g{JZ;d?!edZ4H5u87q5kd$dgb+dqe<9>r%3g`Al9yE z4PAiV<0efx@ioCW@tP?cdTNuVIE8;-d`d7m1C}o51bSA&^1Oa-tf6yfw zUB+_nbf=jW@_gztkLLt({aU&(Wh0OS`VfH}&<70UaPL3|I_@3l1ad&{1G;EFb^yA0 z=n|NxOL{jfz4@G`dV!p5mR*4UAmr`72>+_O%H~*QYd|l*CH;P`2wfZtE>CO5Jr#O) zQN?lc9q9?=9yj!rsq4Hu$r;0jf4+Eiop(<}@9GU%K)*j!p9;LYb`u5An=U_V zBL{RdODmTxtpdF*L%(uqHI$u6Lx=j^q5IVzJA{seOcwvo!;sAR*kM5CeC#kFbJDN_GH2iW zP?I%ocCa#8^Y@+&8~!Wve{{1G^pcw$g7=I7-PV9!L`obBE|v#$_00~8*9W@Q0ljFR zZfe2B``7wzvMP3CY(UrE>|iaB^FNgRwiEZiX`A`vxY&~t6%nE`$dE&u<^`yg{Ze<|wyTv-NSbHD@T@7xf+yZ2zQ3>aFHi+@BW5vJ9v+Dxu||B@awnHb#QS{^jhVL(5p^hluS=Cwx9MZ z9nge^t4WK<-X6AN`6hX<^EyoOh!?pF|-KLpQc2)`g`%n}#*B7}nce zt4~?Fhxlk|SdUX5?p9@j_0jH6Cs=P3dc8ezo{_v!_g?MH84_Q4B1f2|A%h9`3vh+LR#LDx{ZX2Hw$8De^E8-Mj z#D(a?5BE?9I_loHUohe$i`)}OQEcXF>lZ}!0bZcIbJ0g_^^&eGqxfm#69q!m?~0!` zzFOC48=nZwf0u2Mn`ztTas9dk%dZCz`X!@<@Lqif2vdbj>cCj zt|k>n<7?IaHR#OhOEys;c32>&Bh$GVgb=xRgnLJ9p+LBI)QbKA X@IDWO*Me=O00000NkvXXu0mjfvBu2t diff --git a/readarr/stats.png b/readarr/stats.png index 848535dd053b1cde704d9a17bce46d7ab84ba63e..372023397fb3e7e529ae8e5a770c028341ca68c7 100644 GIT binary patch literal 2956 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 delta 1315 zcmV+;1>E|K7rzRS86yJ#0019Did_Hz01r@1R7L;){{R30l>^kfUE|%Z@e2{YpphXL ze+1S^L_t(|+U=d;vZEjjMoIPkpLu7mwY3UJs8~YI_oFjyxh&fwNelr)KnNj(5JCtc zgb+dqA%q%9_z8fH21NWHvMevMdHMT7UYEeyZf$}rLtpU9oALVc{&>@F`3wzU%$JG2 z;k?3@Z97?sgMA1OzL@Qg$sU9L1WYoaG^1 ziJWi;y1VrWpnF`1OhFf9MauQ2Oduz13zNEP?rQLX>aqcf^?(j^pnIs$1iHftO*y;x zj<;-A1#+lCh2|rvV(4;A!|u~^K(|++DJK>uG1GzGSB2*MxXKYnp)=Dv)HF4Wf4=h2 zp>Bk^ks~={o4F49n>5f3GuNAUNta83;oi7?z9;%3BR9lE7tJL>MsA3So+c&Sr+2M+ z3T=ug0?@}Z?j&biPIRC$-GvKh{(kq}#AR}korK@Y?e-4MqG1IL< z*9CIivJK(Vm4O`4jqXz=IpaN!tBv0A>4sf;P%f=zPl1NV0MHYM2Lj!A9H-y43Uu=> zz2;B?HZWR`<3xF8A%UEIm#*CGz%APdE}e2Ihb~>Y*#YPySa(j0bZFgcNTuqffNsRP zSJb^H>!pBh#JcOA><~@He*%3d=<%t}Ot8VrxVQzytd)fRH#<6SF z6dFOigT&ZcAdqzGr>RGP)duast&G^vhTW0fAeAV1| zc|1ooHTwtj2Mr~gNF%_#WJn%&sk!~pA1U@d^zH$Vu8PA0ubSy%xcRt)FNotlpd%|{ zTMOc$EbiSs)PatMx9t~rd}NV(W(VWPz1sEyk$r#{X&*xJf33EA$#+-K{B-b{2C?pU z%})p4?5EKVKEJC;wzgkB|9JUMPTFq=B8UHoqWfpbUaGsI<^_Wfy1@s<;G6aS`V|X* z`IG4V*j11af4eELDsHcCE)AP6C+exXm!1Y6)a~=kHyc9D+I;JU4?7BKM9k?}!o#gn383 Z=pRq^4vg{JvoHVv002ovPDHLkV1fc?pho}z diff --git a/requestrr/stats.png b/requestrr/stats.png index e989427c46383cc15968508f1934ad7c877384d9..3c8231c6f1cbbdebc3ece98adf144f0a02655003 100644 GIT binary patch delta 3304 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 aC&uGXd*Hu0pzJ>laNF#@X^rvI7ykoiRfLrQ delta 1501 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 delta 1625 zcmV-f2B!Iz8}ba0872b&0019Did_Hz01{A4R7L;){{R30l>*etfa&10^0Z6f*dPV0 zks%j<1_nt)K~#9!?Ol!1oFEJ&i0}W(?S1#>DIh_>gzV1r=Bym0t_ev9!8rf`00000 z0000000000008I%diTT8}w}YX$NQ~{YfR!i*85Tk0;gS zzTXI1U=l_C=9{9VKW}Wr9hhSF{$q5j<7uOR?dhWfUatYvyP7OPJkA$?6~8S^MxcMQrz6s;2ko{CdkkP z=>{`2LAt>VO^|LdLzB*4zT8AZAYEF9rca`nbUKD%_hC7Zt}jEAPBczJ(m}fB3{7%> z9Q_VSH|P}PNeAl_C<{8y=>$V=Zb`o}xCh*(-U+1JlXRv}0MZRccR~6T>Kzd|i-uf0 zB8T9NCDOl4gLG5sozm%2c$$dF0XoC?h{)NJbb_A_Lk^@PI0Mo_I!K>}^k_uRDKzB5 zvib#NS4ZR&rb`9CF2OCJ{oHzw8Sg58BXaBd`m%WNU6DjV?*&&qq%S^vFTi?TM9!rp zog`BJtJA^y2~iZ!kyB*Ih2u01*4aB;bh&KH8hH;^a6WTHZe2>>1dv`mNs}f<7C;ik`^B~=SwF=H? zQ0p;;~8?&N%y6bwFl{L zlHg1^m9|Z}O6y(ZoX!wm+ol|IX*F8~`tGIkPA`b{rB%74b2H#fn{w=3t1?OFCp~(Q z&M8VDa06ongN98xrY9~mU8+WZYAu^`96OGzO8xsRa=mi0Spvx79! z*9$t@uzuHEF>>)?v?X9R44cZABH5lfT=ffi@5y{A67HEp)T>T*hz4WtA-x4*W=%QX z$qr&9y@`;THRX6GJLE~HagLgxSI5SQAh#QGYby!0YRa)rb`asR1s`O8%@Xj_g=9WL z)Mq-`q4D-Z57OnI?BE-FSvEyomm$~Qv-TjpsBg8^|DLd`m&a7O+Kiy z6lA9qC?UP4IC^80YazXVtF@)ml)I8Rq=NL$8d#yIhf9e=RQsEehMZRy^KqgVm&sKm zM-L9pbhod)HZc$VDp61-pJpKG{RL5%s9(<^A;;bAkgW1gdR;27$$$&Dtf!|Wo%94> zwTgO^gJ?*)AvdT}w>Mz3t110Gs!n&s91>RlLiHZXyAncW?^^YL!{Xu$1^;6E>r*^d zHoJQm|NqrsVyp5*)oYjyFu+w^m^g5Z>;IpRYsZ65u|%bg~ar%FeETik`t2*l|Ck16rW|FgD=! z%7TFU=^m_ubYObj-eATDH1eL=!T95=ZC?=D8+eiS&LuCo-BZ51g65}#&oqd2ziWOv z_->DeJNW#rCfe$L`u*|q9-Xw`4ulT>5k~i~l)Y4UMa>Ha?|6fEjKO#7{qqzHpZtmS ze(cJTi(hVk60C~bvzt@L=Ff_HtnNwD;2pbtp7YHH*2ra~$Yfc2e)GRueVUILe7ELo zrqWBRhnay6mxt#-<(eVZJkve>zM&<(@9*C`_evhb0EoQoPLDS00000NkvXXu0mjf=Yu4* diff --git a/sabnzbd/stats.png b/sabnzbd/stats.png index 83742d4465ee20fe5dc544ae714e33d06aa5982a..052eb6d9ccb373fd7251e8b3d29625d02f559de5 100644 GIT binary patch literal 2689 zcmZ`*cU05M65h~7Kv2BW0$fBcmq$3m*VDx_&R%GYJlU09fU3Y27eE6|PUKA-Q#VI<_X`MRG0}iOhA1 zGRnbyIb0ViM`AnC4Az@}vI%uE9gj($r|-YWY2PRnptuT zuq7R5#k4pfDO)rW7VGTfoLDEx2!y5WVmJVp73zZnIW2GIaJCE_OjuJi0Q7SHUsq3) zL}F)%^Xn*ZMi@(vi1m!-0C|y5EX?Eyik|%&19eqLXYG{w$VH4E{#}VVs@r0tUTPuV zmo=-E9G~YkQFDTO1~f9 zDWCEcV2#%@%whoPB5ov*{%58tcpSgT0eD4zW9$8|3w@FD>QeUpPO=gVw4v^hXl%D> za6G&KfVAtmj(X#Olm4qCFW&;BOX_c?Dl_vUdBAv%jT`xz1V$ZMA;;xUaiU~ADsIi( zwAKi3$aD=`3wV*D;)YzyfC=9T-q z zCm2{Vhx?MhEE_0a1QJ5QjEp zH3^@7S}=xdDJJKXhiMMN!M%TEEOoB@?VK_BET?VwBIr0*a`G_|ThOfngyY8@cNZx- zXOuImV8Tq*uN@zIIqkh&r0J6!V8Gg!Jx0MT;d>HUaDHU77-m1cXIG^;k(wiGSri4` zeo^4Jd*{4sCJt65MqKO3ZU^Zv#|!cRSaIWFEzj;2V`Bodx9&wmL znS)nAv{EsFc<)K;$pBmQ%%Z46D znqb|v&AeW`vDel+^tU~`c9Knq@)R2NLD5SOfhcy4k#v8PK+jo}Z^N?X651%)y|U)k zpB}D7UVJ!8R@upHs?BMB;jSDooo^GQVOKO%6T5Z-GjxGmE){TXD|~o$qMyF9Rz9&-O!-= z?`d91(+ItK?7Y#vi!z4EZrb^nwZU|}0}qT@9I__~M`Mp*KZBq+>5%6RXxn?z%}jgv zr1gP?cJ)HL;561=1RsH;Uk=MRk)X256`q$;hftEKpnmLZb!nqK3=aK!^Yp3oGnuNL zdrw1KueU2ny(f|&*uYSIFD9dO9M|W{sO~SL=DCwe>t+i028_nHzna+MmJ(pR*oJ*+op=FTDqj$jj?pxQJ|?c}9DphO~y=CWu_5ZdC$ z3ma5{uuZbbdzs{n0KC0v*QAgB4++sG?n=V z(<*EYhiRrX4tsZ%7&-Oe?b684GK{98jl;fDT4Iv!ujVNYk62dlv@5$ket2bVHP zx*{~FsWe5ze>E$um$eXzeNB|sv*gkFj^LQ zBTl?p<2sJEWq~=d10C$16n|m}VuORXSEl=BkcR4HQlK-kp4PwiDSvrU&`K^vO7JJX z7)@K>Dv>SqD;FO=IN06~-fz6w6M3w-v;|rIyGRb|oz{}tirVhUeuZJ_p$FS@Z$suW zgw*uV;Db`m`Q_Z1IF2qvqU`d^;#))wq2iuk_FFq-nTq1$)q%scP%08Tu<@w3LX^TX zX2+k<5Ls!+j}0wMyYWb{_52h>wRdO36=8B>-29BtlQO5mpq7+&4WfxmLW8NdB z7r)G{b#`@lr5-if#(6P}UZl*f&#d_PE+SJh;>2F1$!u?GK?D}Ca?Gwv&ci7C*?SAA zvVr*fLs0tz=jW_Q0BmGhXr2W!0{4%gHt2b2s;=Ci01ig}YQT}TYv86QJsLffNHcF& z>gs1U6QB2W64mr3DwPkCN3GQ^+}sc&2g6c2PkO`1`aM}HIy}@Qv*=J7`5zp-9=+wb z-u6?1aPIvUIc3grV@<6EPh5aRRCH^Qj&tGcs-n(B2!8h5QxxjPl^3`j?|VHgHV;pF zlMjl0dxr-5T7&YYYcT@4Gm=cF&US;%6){kxu%5v0rzvRjHk+Xle|7)Y<*zxJsQu!a(zHhFkaCge5 z{4MBwol8fs_}fvJaVz3ss(#ux8pfYXNsL0969}_9Tpc*(Yj#wKzJnqkim@0{?YXAL z@O%r&C-77) z1>;a#?23AA+xnR$kml$EJJT8@X!xVKJ}!+7giqX6ICmb{-?j-T6F)o+!cCxQQQr2F zzyU75+N6VqL6Mb?$UZ&7J4k0BeG(?D&8|qn&%FZSy-;uMmjme$VKBShM1Kcn;(h2( O32tc{Xw}@bkNg*n_9VUl delta 1227 zcmV;+1T_1B73T?%86yJ#0019Did_Hz01r@1R7L;){{R30lmOGZTjSxl^US$@gpnZ^ ze*}I>L_t(|+U=d~Vyhqwh6#HA*SxLT&JRF9w30mUkDj?xM)hezBmtd62qAF4+FkV@=t*z%$MfsUnX z_3ks?k9{xPJC=?RLI@#*5JCtcgxoh~f2ZB%1sTXVE~loUZUDLf-DDC9=;qve3c8?P z)Gm;d29-%qYxMN4Zak^W{}j5ka1ZD}2fBr7O`sdB)|8{$a-errt?8r6hAu$YSgk2X zb1^_y9}}MO??Bf8oj}f_r8B0RgD!zDfwZ26MUNZPT}eJ2=o&12>)sc42|za#f5-{Y z)dzBg`E)L4N2QLbnu&|^>F9CMJGX4+-8;~kkpsF;=(u-V(8USUumo~IXG{k=(1ET5 zI=5_$=|EQ>y_W{>Kv!8rv72^h?%hBjM?T$P5rqS~e)le+ZvoJaMek`#hkE}-6oLOF zkYh%UTQ*XwTul{|GeEbNPsh?3f75{ubf6Q+0i8e&5y&CNbktjFm1$UGsa2LLn@g=a z^64fEBe8TgB@puI+VbfHax8Y>mW{;@KxeT7(6ugh06NpKK({bC19St>3FPd}y%W9j zWCx%V$N`-vI{;nheY%Rd_t6i-2y~bKWQYD!tHa>NVeli+^D1W)RB2wj_|ZUlPNqD`8*4d@Aj_CP)+(x zH*p45HYM0Y?=hdA#nYInOS5e%o(VnEhK-rJQ#~V>ZNjF?V|7C>aNCy3V|7FKwN;Zq z?-shRtBD7C$I$($5^13K2;HA7jA!n>Kj{9{vZn{dqJCDpb(d;)f0yztR>6D~_C))i z^xtpVfLCehf0yUXQsyVn4&!}+AJ3j?;i}c=LvLUY!*{SJX$KvCt;?5oo=eN0Yn z9+(Baz##H2que)*fAH|Gtz zH1?+p8XfhtE8{OZsq4Es(UU79C6Zp=wE6(C!_$rArbg4we|Z&MNmWZ@9kEjVCo5SXrx@Hvfj6-6|T$$vU*p`__dTiOXnI>>fgm4tu)s zq^i2A?Bf_)>grTauAnDw+1O+bK^>Wz pn?VRM_l|Jy9f%SNgnLI%(GPlb4dt46tQ7zN002ovPDHLkV1nOrXsiGL diff --git a/scrutiny/stats.png b/scrutiny/stats.png index bb99f547521e96389e29a90a9b2a79539d6714a7..a1095e71bc67f1c512bda09e62fd940c9eac6340 100644 GIT binary patch delta 3462 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 ZQp!+0Y@)_h-j55gyli7$e(6r^{{dU`+y(#u delta 1662 zcmV-^27&pJ8v00000 z000000000000006fKIQ#R-^;#5=``Y`Tq0y`}ZS5pMM{p0ZVcIPqHt(AM$?s3|NeI z`qAn1U%>z003XQ**3#~WdOuh{Zh+%6!Y03e?-l?60000000000003ZQkDYEWzz(Mp zWPXmF!1_*-4$?t7uq){V%z~=ylAs|+eUp(?4c}_<1{q}wq-uin4O2Bi`i7~RWSRwM zK>94Hnw0vA!t0=j^$w!sQ#Cn?Y|<%ki-7d$Q#I-NMg!@qrD~EX((g&q!TO4~$~`WB z14C{-$FDSAhpRb1>4L#MKu*#@`hJogQSTJl)Is{X!Q7va;N5%&>1!Br@t6%rU)GSL zsQV7m_aZ&2-og3;!I{XHFywG557HMS9TB;`NGC%G!@`imo{r!QT(+GIxmYn9NMC|< zf}~?le;^&K%YmB&XW}(aFy!Xu97z;^J93VQ+=iUjBvF9$(Qw`#6$`!v=VcWx=X(Kr zdM05uN>=s+*1O}456tAfLfb^8+_2t}r{pQAa zh-7DnSYIH$#=Pg zlbrcwg`lU-(~(5c+I!|^t~b9h;}Dz~8Zq&?s@OeJ$*$I41L=dKWSP1+=jO1!)+eYl z*mT!^}-6P zqS!$!M=mPSPKl^HesOQG=8lna!5MyeL?IV^%@B3g-8)(;IFnN1toV>6YrU+dfKipp zmb|746g;~ZT8s5mt!k=pdC;BW7JR8ODH%*Id$NNZ>CbU4uQ~RbWZkilyS@CYWUv36h*Krzs@Z$xo;8U7+(+xA*#e zwP~O1K%>i=awSP-TW7aWL*RJRnbC$EYrg($3>pH9x3{3I#ff3O6a`Gc*LQaK!wGnkQ?G+33j*V}mpNt_c@^a~DU>Pv@w;Woo3P zv&LdaKdok;qO6IVb>C}8yqlYH^_er=w(VjQO+WEwK1Fbb+n2Tb*E2W+(mRsgBfj=x zJ8q^c^pZ~Eq<1qKk-fQpL$od?-!nwy#$NA(`mbHv*{-2H^^%^u8&>%HHeZn2whR@St{c?SG+_)8#thx3fB zNT(OsY!GoJnKP6sW^H1~LB1!cT5UGoVGEz>lTwHG%HQBXWeNHLa%J z>G|gb($`Y&AbmsYow|}v6Axc^@fmj9g>+yR-~p?Ek$BJ=plQ1Y>mVIiUbi>c@qrn6 zPo&OVe6{lpLU#i%Fy5Hx+tTSNJzd7|$HgZGgr>g@e_VXGOH;b|beB*%>wdca`12h- zj6W}ge*H&(3Z_3w>tfSo4bND-DOGyDB}*~RypJ;+pA(v#=xck|%BGNOA;gLsM!xW5e!k4}Fst;?R>c0{{SG?*P<0fD{S<>K)L6KX)1t1ZJd?mH+?%07*qo IM6N<$g3BL5YXATM diff --git a/scrutiny_fa/stats.png b/scrutiny_fa/stats.png index 96d3523f8805648d9d974644f0e7bfde66885338..b387d8eecf5c4eb591bfd90393a4a6d3b7ef39b5 100644 GIT binary patch literal 2927 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 Fe*q<>t|b5f delta 1335 zcmV-71<3mE7Salk86yJ#0019Did_Hz01r@1R7L;){{R30lmOGeXXV|m@f$K9B9S2% ze+21CL_t(|+U=czlA|CDhKc(A&wRJFYY_p#1#8In&&|%XQikhCNPs|{LkJ;+5JCtc zgb+dqA%yx#yuYz0Xjtgc2T&gZu*mx71@!gr^_CNH-g{neSRW(J%s(sx#^S#xuYMu> zK7bTsmyZ>H4E)mpKBg^O5u|-|e-G~;f3NMmC%%&x9J?tOfDl3mA%qY@2qEMiu}tw= zg$`D#(9m0syX8t2B&~4&HFThx%P9f6Ddv)dE=Y^&_955If_NY&t+J976gSoQo2o)x zGcb_bbFT0@J=8HbQ^(O^o>?qtLT}5oJ8J`WD*76=77*0&8_mKe!a{q6{^WUY2$amHz0X}{7}>UZLR{>bH+ntA=i*6JY3G38z6LJwkV zRf97Rox>m3ZP;4X;mngG`W08f)~Xg~o}fOlwW@jx^~wV7rEbJw2YqI~#RkiKElC=m zt|VrUV!xO+$zcaAF}rgde|9h!vww3xon5xCI`g~p-i3>Xz8kaO0zHy01$5i$V-WZyJ_j>TaTtY$ksQ)e_)HtfpFeX!}10=YlFUQ3n3##&_F+%B|+N;^ks&z9q3rKrL$~9 zPmMXXI@U%dmX7~cZt1riYx)_~A+9TslRs6(pswJep==RhP#l-I_jzWiRd_f$ygO0R_V=ag)AkDjbr~@4hKejjU_(&u7f3&Zc-CWJ@AQA?6k@C(Z zU)EMH`RWRapEf>IAXa@){Iv1izM9&`=Z~$5KlaQ1!|O9SDepH#4*!vg>ffiVQq>g| zFKE20YrLyye7D-SZ?W*3KZ)LtRk`46JocYdfk^r4;?lABdZS)d_41^~yXx|J=Ih9@ zeKvR*InrKMf4;u>>rtQLcQn3R@oG}(t<{5Pki*Nv_aNmXL#%kFdfE5TlG?-P-)(%q z+M}fMmY&^b55t47WgZ79XHyVBZkX?(BRH-j#${z?)BBEtef t9jRWMK?t$-ju_q%DHMp|9X&<=02~<(d$uIbFaQ7m2>?k&PDHLkV1gn?mumn3 diff --git a/scrutiny_fa_original/stats.png b/scrutiny_fa_original/stats.png index 513bba2bee378dd822cac7f28db57c71252ff4ee..0cbd35aa761f2d139a353b7ec4d4dbc8c2ae1da7 100644 GIT binary patch delta 2583 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 delta 1319 zcmV+?1=#wf6T=FS872b&0019Did_Hz01{A4R7L;){{R30;<)q0b?B@*-IM^+Odm&v zks%j<1lLJKK~#9!?VXE~gCGn=33mVgmv`FQs))R_^2oWnv$M5kti9e4AOvFo00000 z0000000000fb)>m-|#v6^F;XmIwrk_F}R1|r!=2`o@obag9Y18`?xIHITLFpYao*?kVHXYLYp!_gSFNof8?|pdn z$(nv9i@+UWTW%odIk43~q_-co$xi>Q*Ka#cFB#4kPah8V-cg*MsdS;AK0us)NgxO5eZ}bv&S>`NklsF~t37%; zYvjn)qI@!y(ywXLYkBp_RLZ$eTk{0zZO7>(Q78@D2;?*ioFs~&JK|^DJ8k-ZFdm)g zU7<%mF|`WmJqw&b&I~xxb`5LtEG}3m#e7f=G$U%B{7!m~*mv!s{`kIv2xIt8x0 zpZ?q(b`+4ri2hH&P;u0$bCRhOdmzC-Dr zVc1%v(|T8&PnUa3iqU$vk|TFdAcr$owmuzau4k5Qow)`v3P?xXy4*Xhx1wQKra^U) zj<}VPPV23QbjDe9k&ZKeS429Iny$5Mh+EI9Rg1WFDV?ZX&#G0TautEx=2;N99=_1f z&VrpC#xE(ht3(6o;};Ly8C6Z2=i;|bt!}2-1@wqt=hcCcvnIhH%{{C`IvC!!m$mqy zd)}S3i`%~1^3r|xVCiG2d4jdcyZHKn&cC>8UG?H}?&5)68)UbChE2A;_3$2@Y35RH z9lE~He06)0e{sh;$Xe3HfAi6!=HeN46>$e;W&7fgh=VcRka@VT5VRH(f9M=@Eh+f^Z>caShoiR1=8?7X0qdxz*_*FCo%>DXTZe<6 z1oNyrcdg4myO(r!ahuUY$08=q+6nWZb=1B4%r}pF^m~h0pEJ+A^9<{VdCWzMyQ#w_ zLXiEI4_BIpt)qdQ-#oDISg!TSi)Y_?s&&kKzX&-ki2{&e0bm_;JvIXXVC)^>-T^5T d0QU}B#6PJ-61}(;I@tgK002ovPDHLkV1f$TsIUM4 diff --git a/seafile/stats.png b/seafile/stats.png index defa08e8ad5b67ff1db18d69d5f8bf678cebe708..d3e29a4765dad29e001076ce733974dc05439f7f 100644 GIT binary patch literal 3566 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 R`vV7D{riSd%_Y~z{{akt5jFq- delta 1609 zcmV-P2DbU`8{!O*872b&0019Did_Hz01{A4R7L;){{R30l>*eXP2u3Q^2&kgy`qxp zks%j<1@=iqK~#9!?OltK+aL@?JpTWed%ZZ0?E{R60SR`elWBS!L%o&|ix9>D00000 z00000000000000$d(iuX2oGZ!&gn!yFeS_XEt+Wmo7s&V<~}dyFZ2GjaC#B{@$m%K zr=|VF{N~el(n0yO-u>;_Kkl859{>OV0001g000000001BdT%zKC23%VEs6J^_Xn_y zrGxaPNQb3^^z$wipaXTOC9yz`YEsaYHeYJ+ow@>=W^01<1+z6l`hwY-Abr7XO)Byv zAYDtgrcI)lbmGXcAYDtgCgoqTs0^D>WY>8!WwMIW9kzVI)U7l z{_-GG!vlCIa=q+ZkbkEKV|xT`N;FtA+BKT^V-xd2y@hutO>xRu}2x(-X(}cmAB7Oot_Ku4Gre;;=)i6a{Gt z;Y0`oIu1KbV(CH(fml6(T$*&!V&+0h{*0Q`sY0Al9>@hJM*tS7$W17J&bWYRl6AAg z1f&b9<~Gp3o5#d=4Wv6SYNiQLp*6}46y9A)rNt?HCvt-%`do+wHtMrsV?EEW{Y z<;YnKZ8>qqLN8j5bjh554;kG8q+4tUEJwP9Hv9xrs-k!4oR1hGRW9?ih%**jf6wH| zDI#3~=K}^whQG;1T4Y#nb!2dPL6s<|s5F6G8CK%9nuJg;LsaIpgN{H>4-r2!Fd1|$JDX9CS$66`x%Q{v5Qg_m` zbb7l%E#+NVuia(qOuAQ1XM5IzZN1B8y34T6nH5mG=wME2RFn6fxTA|8u6232uT{$V zaf|{*ZV@vtdcQY+Me1-LK~3l?TzmiK`r_$~{dD!jc1K`UtV7R{NSg205Ov`|^gsRJ zMFe6kz4QGV;;#>Sa*`8S@4eflNusYFIKvCtTBXNHU(=}@MTLfrO$bh1Kk3wx^gr(F z1u(9lcwiOj8@p}e#KuwRw1Y2*<4&XlT7X-1fjMs11HLeSVz3UBmuCi#`yJ>|PAXns5ROoLeWm*%&FZ}w=ogE!gpi*)q;bpGYn&*-N8 zaUk^PKf>sK%hODCSJb><@P;>d!x((C-uI_i_~dVk%w4-OWa3{BS#`zj+0Ch8^H)VZ zR`(=n@P^%gKF|5#sCwjUq=s-=dw%oZAGK-TWAM$IvzamlN0pBSq0{dVotFZ4?^~>S zrh7WSp(VXve?E5b?Rt+gmACZlKKnI1xQ>kITDpQ#4X$6K&6C|9^E8WlH>JII8GNhW zcY`kMz9xwRn0~Vz0PDcq+6({y(B1*KcK|6A0NgtmAO-&b8A}l>@vp{B00000NkvXX Hu0mjf!D$-P diff --git a/signalk/stats.png b/signalk/stats.png index 68680f550b5cc8aeaaa72d2f129acf1fb1505c61..1fc03f487dc2642ce4108582da9a97f873000139 100644 GIT binary patch delta 3768 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 delta 1662 zcmV-^27&p&9hVJ|872b&0019Did_Hz01{A4R7L;){{R30l>*eUMc?DQ^vZ$i{UfNn zks%j<1}jNKK~#9!?VanE>L3h-NrCr&<+F6WRHY@M&{N>sKOC1sF|tVrA%JrL00000 z0000000000KodyfBT0S?M(+raJ}9+!jh4qdanE;8(&2qX&R1G3?#cU;bb<46X@6__ zopdyPeCz(yXnAY=st0ly|08#+3jMoA=4z|1T`5)nDtaTwA?L>q>G zr6C6yC!}f^7IdQN%+seMUB4Uy=_5OGkUoJU2kFz9cQu=kJ~HX@`2y(^n0MJojD+;j zBXWdc2PZuhk^76#K>CQJOKP6}8qNvBjvI!R5gpJ=^eSPLkS>#B6A|SHW7n4XR#nHf*UQxA+*~sf}?rx^ky~?N9e1 zM88CsYGT}Nv$nGi4}4gk_@MpP0enRDYZ-T&s-Kk@`I0E!14uVhA0nz>&A6Lfxswhh z*t9(n+N&6MlYKua47+1`;sSvcjJw5uFWBtxn+_}HURgL8fxSjs+KuUnbXYO>N?5OL z+;5-7cAFi3kD?HFkW^SdY}_q>_Fc^XvTM3R7+61S+zqX0cjQu}OPT8q>lKZ=e$pld z!5On7r;-KM_1MxP?WE0ivqPD=(D4cDhX!=Zpl-U^p^S8`D6p>Nd^y^LwwoP_NLNRS zU|nU~{lS6sl!%-@CJgHeA1)Slh~k?aibyw5xv=b(Gwq>5TifU9R`1<^l)dFyesM=M zS!Y%4H#;Qm=#o0t-C&?F?MM74d*)2ya9F80PzTmp4-9@fvnnOKn=N73U{+n0*biur z$}6((S~Z4YV*!H^hpyOSD!d}G9SB_D$oV4vJVSfwD5>y@n&-$ZrE?Q(d|@+&<$nif zLb1v+v^NV|wI)3tV2C2_MxEnGIcM9nS?>%@2>#lJa z?hMi`iIFinSZ^JMJArgl7}f^|>zDiW;_QoTq7TC^7wzj)bG~~Lh2)MV$j0@8zv!qo zsoS27n(yp(P&;y!9M4JDTbuoCaTUgUX|1DSMibx8z_p#H`)XW&O}7Hma;35D{`BR% z?6A$}?q^ys#aINR#oc@531{nLW@WI~cYqFD(YU4K4PI+Jf7y{fq3!BjIE8sI)7Xxgt1fWdu{Zm059^Q)hPUm9MtsmO@5x=tvbDiUQhAdV%dEShsh-~ltCUH~ zqp3&LhWlj_MH1p@zANLN%j-_%kh?*_KBX@`yqn zQOF}_$fFfUBTrcp1t7x$z&hwUHUj`4_6{)bfD{UVc?Z|RKV#+*>Y@^PD*ylh07*qo IM6N<$f~nL-M*si- diff --git a/social_to_mealie/stats.png b/social_to_mealie/stats.png index 573c9baa60730dafd5e1047a07287092a3b46ebc..da3bef575a8bb86aebc99d50e8024b531d870033 100644 GIT binary patch delta 3086 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 delta 1300 zcmV+v1?&2p7_bVE872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&AC^sqzUE^Moj zks%j<1jI>1K~#9!?VXL5qaX}MN!9m%<(X-xRs<^Yqd@L=_Ux&{C$d%wO2# z%~;-l?3ym-bAmjuxpg?-7 zq|j8Q%MA0a@4Dq8WlPZsW~hr@x`n(M}30`#`DEX4!4=zKcA{vFNwZ@WGxPj&n@XX1i_@i<;$gkjj08uewF%q7FHKyRl}pAA_y zRiS!G;y_mrs-NXWmu-Mh9iOf+R6iBHpO~cu^oB$A%t;j6VRy#fYYwZ|s^TfU$fsZ6 z#h1#&&rYH+K<}$>R$zsTZ06kqy@$S8k?1{C)1lsG-z*_}>i#EzTwAjt7?JCL6!>f! zTj9ds%y7Vu2WNmj9PopDIyHSn;P`Zfz=5t1IDwo(-~@6CffLBph5e`IfaBBa(QXoU zdTNznSP$uC-MOo2+DWNZmMXiHpQL9q%=RPRgo|3}Z#Uf`<-CcJDrezC*I&_{368HQEZrt@Y8y})_1 zgBB;wn;jH7ao+5pv`yC?$ms^I^34vja^R=?=>v?tCvBCj{LKzsr&j00t+I7R?=nt4 z9Y>zbtJj$`IP&zx4r2P;lmJH_If+8NFYf8@6fETiSM)V*E@|O(!2R*s9f|FCiZ? zb|5FtN80nzHyYahr;rcPv89*|ohq(k^T1tAzs1GKeM1y?-Ext#lT)h}bkvu485=S> zUd@6EEO$UaN4>V~Ssowt%iX)gMMAG$mgAnkV=gh~$%gq??J?ee)`n`gd{fzCLi_d`ad$L-%{)i+z5Iv(78pTeit5JL~6` zqe~AgRhD4gjQR0n-3G=)n0pK*vWdvO>b#=!%#(kwBA0GG22N-ofx{Sci7^k9YvRiF zTAN7gyrT2W{l=zh*>u@R!6B$4C1W!PA;#Vj%{yWW1)_OJZRrPBTM;`b6F<5D0000< KMNUMnLSTYRY@Gc7 diff --git a/sonarr/stats.png b/sonarr/stats.png index dc3532aff506d142938edda9a0cb58c017ee4406..87b0c0b2a96f8f2afd149fc76e0156ad215bd5fd 100644 GIT binary patch literal 2864 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 X+IPv0i;p;8U|?xxV_Ik8`PY8{ZJ~7K delta 1338 zcmV-A1;zTX7S#%n86yJ#0019Did_Hz01r@1R7L;){{R30lmXMcVC3Jk@+WEz?vWuE ze+2AFL_t(|+U=c6mvMIiSzs$az1wYibp>>Bx!agMFM3=z~L7K%daOt9?!+&}VSuL`9)Py`u@-)LY`P z&H+bmu%0eFr{l;0o!|`6fe!RxppzrVm=5&ez4z>dETEG_fpFvyNffA6^Uj!#_YU+a zr&fWEBM0;mp^L}j2ltT!`WV3(fAMS{7~Dq==mX5B2YWiuryA2GwvQaphlL*7M~=%m zUXGl)cON;_g(Jr!+l-DJ&U*Qs2?I0DPpJ2VGKL&cXy?nh-OvT}TaK5^~e+$%4R;@<26+1$g znolbFmURO`Ko_t-f%o8JUI7)_Q%vgSiRjX{B+JU%PJlPOK0Rs3)?W_1Hg~kow%Dv% zy+87(&&}^H*Bx3e8~vA?zZVWJk+3h*I$@~Zk#E$ zAGtnM+pUvr0p2I{f9%PW_1WsqSQ^mlR&^!PW(F8#r-lCLtdN@tI^*$d&@JO}JCAHN zpyPo}_bP3RQJ=1-PrNv7(*52o&U&YgoLsHSGLkoH-sSx3at%6$y;bvG3Oa_p<=1(X zfxa5{vVLM=FLc<(C-`wY=%^R*ItRoSkkb$MPzO31-nQQ`f8wJaxrfJk**&XmZxC@E zJWqM0f`_@)OT4;-;-`&|6!2B=6hCczu}hQN`1rC_+1h^De|b44C*`*dk;5O7QT@8g zDpXxk@r1^!yvD1H#uuyoeH9b0{E7E|tV%hT@p%7)3V6zA7ng#?mmT%8s+X1;ud>U> znJ<>({axqKf3u`Lt$cp*=czKqYc#%C@oZAzsnx^CAcw=lb&zz+;42=fUiNorO6~6X z-!{Hn?Osyxo*tcNcijWGWg^ba<9I9X*EfgW;=$^-yP+i4u2O5S()d!fzdLkd^;eQ8 w5E&K->Zt433_^(5JHospQYaAS9krrANoEeUax;103;+NC07*qoM6N<$f?5E+s{jB1 diff --git a/sponsorblockcast/stats.png b/sponsorblockcast/stats.png index d7047ee2ca3f7878606f8d6ae8eaec370e32c141..9e1c8a4ef38e07bfe7b0611bd4ae7e8437799fd2 100644 GIT binary patch literal 2699 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 Da8kLA delta 2136 zcmZ`(dpy$%8~@F1ktRuqkrL4%=2Fe2aw#I5a*N!~aj9H$owEIQ411AsIgCoAI1ZxF z*cO{h;@u*IFh+Q>9V5AIHr~DGkN5rSeg1qt&+~mg&-eR%o;7*?!JPBpPY$-1+)&S! zCw)d5PaOeVhicM?j5*)GFz#9{;cHpJnq{|4>^Cu2+gv{NF54f3)o<;z0)~XWWOD%E z=QAPNS|o8N`xt0Z&K%58vlkvzL4xi9v_@Q4T1?uyPWH!+w#-Gq-sllxI%uCbqT;C?DVvmq0|+o6+4%{c3kL0z+`q zGbYQVCv$x*Rw}DPOnt;m|FS7Bas@*iBR;`}?8G1|r0_E8r^skFwG`dlKcCNe$0d#X zvtU48N|Q3vIis@A#bffhR-YC>|K>T30=GWT?XN~)o#|d(vE_CPw~?Ljv~%(X=mggz z2kTV_k4iRKw)bq``lR#l*Z)!LU%dI!RBQo(2#%O7f|!GOC-0Md$WSA{Ia;o0f=q39QDK#<`Wi4{eO@q&^6( zznas6HZ^9(LWw;hCdWBDUV_EAhkzGF>Al>u;%prKR4B$8Ik{KPF3RskkCntzZ|4|JLpOw*%izJ< zT1RzvA^#&Km;slx;{WTj+lt^*pde*Va#$FjXT!@HrE{4a0VFziPIkCVob!1m3O{}P zH3Jr1f}*40sc!rmi$VV!!Na2eM1e8&oY*r@GCfRyBiQ4;g*(^Vyaq8r*D;&z7=r8{ zkm=E;xz@Sc#e?FC?rF7Us?cpyeQ_l@gDT=f_e^I`dK7R`39954pAJ~$b_4Pgu|{e7TLH@j6SI&qToCWK>24L!&Rx^-52{$S zU-OF`&gX4`)IhK@WbrhC$+?R!8FRwR(JErnIGS(xyLe=dT7mYSDe1fc5do1F}o7uoybxZ-h2+FQqZ{Yqj# zIg7PeH|J6H*CiqA8^Zn7M>fS54V<|3AVo7Je-hDf!G^c9(cf$nfU&HxmMWP(yPi=> zDyt4t-@Y~}gP%;kwDBAdY@6ELa+NGQ^WTBL3qZ-DoIEO^aD7cFz?u}Pf<^#xiZ0x+ z(uV@rs%`ImZUvf)f2o5LXAePJoRibY6!iR*OTTF9H3ED}_e(^3wybZj$47 zz~xJ9x*mXAG|Q02-m|T?9*J+Mk&!lhgmUi*zM;M*c&k@!Ef$?7@{UMmyix#ekNpGE z(sQYFCrP9^A$?Z^fWP?Q?mgE0uIxwA~ep3;_R|3ec=Vbr)WKZT(26RQ#xNx;qAQs+{ zhlW1A06sf5%(p!|r3284zRfaE^MkI|SbIxLOd~~?lI6_}ODbL*AQptCP=Ix?fK#X& z-=_CU%KUGmv!5*M)L0uRWcRA@wm$Z})$hbN|KrWr^o+jvm9NTPh*po<|d*R9YvXec1Vz@w!0t14Ce4 zp2##-$YqB^sZ=w>L@1XCh9@ge?Q#=4!!lm4C@iV^Z9Q(6yX-~2=bL&0G~d)bP~hh+ z#@Rq>tdq`$@J8!atiZ2>1k8gua(`spR5;;ExNQANqL4myme{>osGx!CUOjrkLa+*2 zb{Mg~F($b)%P0QYse5Pp^^n)cL^Dst2CkyqqsGTS#eNOgDZk+een>h+rt?D4cToCo zTla?^V(twpqRDz4j?3=f6<=d&$*osUgeTQz`gZfyDmTfCzG1BGpa3}a{r8T*1vzy0 z{icng_Ff&0Zz7azPRE3lnY{>U*fLkOBaElaRG8U4_R>x{+-%(E{e>R88U3Z8jg5Ui zVw|=4Y@MwL2{79wes9KWFTRr`bk%-UkN1T8&^Z>@P&_E|M}&W~ig8CS>l-cNOuz;u zVMBKzSu`3x>XA5BnlR#ACD@$E{xK2Nug1%s=sb~VlJerZK(4epnNl?iLsDgXiigD zLP3gL8;Fdnn^4p<+yDY0%GvRma#wDO8MgG454Rs_u%OKfG-?_d#|h;_ct8{mcFwkS I)&VL126**CJOBUy diff --git a/spotweb/stats.png b/spotweb/stats.png index 6f08547313557a8d6b4d8229119887f4ebdc9f8a..8c0959d3aad60b7869fcade9a13f241757fb65c8 100644 GIT binary patch literal 3961 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 delta 1742 zcmV;<1~K{h9_9^@872b&0019Did_Hz01{A4R7L;){{R30l>*eXP2tOf>f*Wc6VHE| zks%j<26{jyA{ zq=R&j4opot0aj4F`FLu`k?e-nP|c?r{DNIc2Z4Ja9i)Tw8KN~o`h?M%l)6Rd<2bP7 zK>7gDntY0E(&_j$IbO4YbSu%Clzzod-vy9vI9ijIV*O5#^ci2G6Vk!DA>%OZfP*1_ zHHZpQ1jiM=qC5o{x05TdOfNemNXDXDDI3n_j20KuZ_<>C0JQqn^Q=nB{Io)JrM17bCa*!WhK1)~tzoG38Z;T-PPr-!Hr+ zek`-PvqE`|A=i`ie*^4Bbb9eu*%#%;oHMUlofRziu|>U>@;d9iTe#G#jMh%;H35(8 zit?KC>HVBD?|jvTt5&@$oy9ud6$0wX`aatnCEF2SrH4@Jk17pg$~8G{ zWhGqdSTPrJ!8%(sV{8vLKJ3tgbZ)@K9dTtZs@+h=$g|nIek`eTOd$U{#)rA3c z4LQDVR^OWq`|J0Hi4tlnJLs;{&$(qS*4T@fS5|h=C!O!Fpm|XYyb$oTN3Gnj$1!rG zUfChVEGu!=Q@^jg_O9%3D(TcCb~R7b8!UC$=H^NxkDR(8m*$m~TpGRfyFh-kipmb^ zOSbfUmLcj*RC5>oE|bZB(7-zV>S5DsgmRV|sO)g{!!Jd>QBFA3t+sCw z4{MyZvcvVR3M=Vltu&HyB7P(Nh^`@bEnpWdnms?2SzT1bt52Z8o+#Ge|n$3y}~oyqb!7)E03Iq?bJ5 zgUMSYPd^X6mEwT(A{W@_0hqOCF0u^09xWvV)-vScos1D;wRhN}>6S}66))L(neIn) z$dzEZ*>fM$Ek6@~Mf#pN>E&h^s}x(hL0NARzn1jgZrF<1^YKWfr_0)PU<{*_^sLxV z*GlrwwaQakmMYZ92ul49QCjIo1}=xkCY8E@)Za0F=NiQfIdDFr?_G4s7Qy+LrL+Y}4*`@+CFxxwh(Nm9 zsnuw6$uoPcRjTZ2qdS1+@zgtAf1N5wj{$TKtKNl32je4K?<6GY8g`3|gsUyKcZ7~V$-GjSK46jeM7-47TJ7}(p}m23(0*A?FH5_pbaxre zF9)A!aMb;-`Q_ln9!=@sua2$0=zeKE=!@e__3UcD2xQeEAY%@f_z`x~0m`~H64!OQi2$W&U=ll$y@ z^I$(RqJ7a9I%}}MJZyg2{p%sx?B18$-c<%K)%#PRGrO+|q5u$K0f2SDv~LCg0QlYk ksCNJzArt`AJ1`2q0B8&nzG+XBlmGw#07*qoM6N<$g26a%J^%m! diff --git a/tandoor_recipes/stats.png b/tandoor_recipes/stats.png index 8523e6f1e189826fff5dcc4d8d07b26325a9846d..bffcb9b57c04f16fe741d8df0a0c2a313ab122e1 100644 GIT binary patch literal 2884 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 delta 1367 zcmV-d1*rPO7V-*^86yJ#0019Did_Hz01r@1R7L;){{R30lmOG&r0=y&;WMn7n2{kD ze+3CiL_t(|+U=d$lH(u@MWs0Z|IITMXYm3UXk#OE?nA2M5Q@&Rgb<5G5JCtcgb+dq zA%qY@2%&oE;f2iaq4A+3!^~CRuPUFvz-a!7cakSc=rLj{V-EN zBZLq_2qAgPI1iHgjnLu~ADpS+z2Z3&ERpukAZ0HK~e-T$@ zYBJLf^dVPes+{KEfo^sLK_KTFy3(h+gRWS*M@t8~KTF5G6UYJGM<5rxaMsi+>NAkj zz=d$y5a@$K7oah-nnyM*n8VR4(MGu_n*O&f1L5--0Mso=%$@}ovG`27=eDhbFT~K=+jL)_bKS< z{~o=U2Jb+>p+m1Tbrw;WO29q;+xYZ+B<}$NxxqrW=|Ay(xL!(~MHJ@3^@F&M9WFkY zmr^HsH#bD9xheiKwF>l3nG?v3K16FwN&_B0dX5~>jW9n*&S>E9!00)0e?Y${h&y#Y zJ!4nj5zy(o}7_Z&HNlcARdatzr9h~kO^IiTBj?j&bC zI(MLZG<2p`9U3}QtL~yWrdC}tXKK|Ua{@Vs%-QVVkU4$2L*{IDaLAm^4te}1w9(68vur(4g46`&6m!qq(4K{--v1m;@tP%#2It6@7& zcIYvLdkRl>@Mh+d@MH&&^JE8*GqnoxYj&*yeE{Sf2<#_hXFk23Qvjb=n>l@Y3yAsi zCDZF%I03rZ+0e)0aKAj3*ZXy#pBjp-&HLEk@A2zEZybFm3_jZze*nE(zdn`p@MXO| z&`pMIt0H%scr~f$nPTd&BcBR_yjPqjeLsv(C4Jb?ZWV=+QxW4&V2q|_qGyUJITiDd z-AwFuP}k5q>6kB_Pmi7{HvAg7Y3`h#lkxwf22|`!F*Th_OTzrnp2Xo(m4_O#eKV)A zAiKM$n_0G#GpDKBe?j~_KYeKEh6h}@_tR6S-l5BIY1q;IHqfQNnGT>|G_3wb;1C}d z`m|WZf=ol-*zI=wJS_*+z%~dy1UQHi(u3?}vp=6p zlYyMpS4FaHBs4<@qx`D8Foo?*5U2>fgJpV%238&uF}qHC_rD->mlUubBDEA4Ko_ zs$}ys?(d&ie}O>x;^Nw{_sx^--JRS2Vs^ z@nTZ(snuQ2pu4xb-$C;|L#TM7dR^b4Ikj&;zqj%2Y7df1TY7SyeH$KZTc*0Xc{b6? z_Untc!Q#>Cm#3j**DkrWU()ziwSNsdv-+Av6o?fTDG2JwbZ!PAMD88o-VsYE5bhoI ZqJIPs4@XLv?w0@n002ovPDHLkV1l(ExflQd diff --git a/tdarr/stats.png b/tdarr/stats.png index 25e42543d2223a08a82108a49feb74cc73fffd71..a37c27756c303e423a181cdb3ea17e0ae551fc52 100644 GIT binary patch literal 3381 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 delta 1540 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 Fe*@tLk0t;B delta 1352 zcmV-O1-JUh7UK$#872b&0019Did_Hz01{A4R7L;){{R30zGUT;0Mp;H@@W8;KD~~4 zks%j<1oufqK~#9!?VXEq;~)%05oQ1XmvKk{QJ>63KELNbzyJOGwS58Z$}D|>J^f6i=f|HH1m>Ec%WTgR z;MvqC%Ch}RAXTO=i=BTS7R2ipfR2NQ5JCulA%qY@2qEO&T$orQ7Qerc_W0Bsk6isi zMpmPMZqL|(PWQgrih#yYJx5O3E@5?5+*IQo>yQez>;WCIk zkpcZL_Gx|t_dfi*^((1t=mPYf_h|Cg3ipBI$PG(> zJTxOEjOqR9G4U%$E*6HBW%lqi42y0dZ`>z~i!ZUc#DWV<+V|_N2jbXr%x{ms;!TX1elgQ~nryYxgbJduPgj_KbGPD4Zf2Y9lY~-htjUToxJLgRkel5s_=? zmp`DiVVv*e)g?vu-l{Xd^7^XPS42vj5Qc5P_Tf6)j)f!lWFlrHm5$iz&_|>V^lD)> zUC^1bX|iv|bc6Pta&vF`_)DC(VM!@fswCsIT>Y)dJub1|% z6E3HjC4CFUp#DtRpH15Z^XWd$hnH!$dy6Y9-OJaDMdkWMm6+c z6#40Tx@t=gCi`{MV|p-5+$wbMo#ULlDMzmA!2ujO9CjQz9CpTZ0x@GkA2}%jMt*N; zb(Pj?v{g2cKUrEGGARMbA8d?&lp&K61du;DwJIYfCGa4BavFKWqy&Uw%pG=MFgJJD z0p#WmJAk~(VTX~RgWOyg7Ubq`b^!Sk=tDYkAUAij1IW$Y>;Q6ejvPUDdpA1}WN$K0 z?>8yIcfJUM>KSJ4=XN0*RIx)OJ*ey%v|O9^w|9l?V)4lf4<6= z%u3K|JsmTDF)2aHe@|t9B@oP9bNBw@lnpbt7m4{V%i}h#GsL;*>T%!;jlQN2AEjt-7fGT^~rva1V8VpdaFv~Baa{<=iV zuNxwV|42dg^EUicby>wT8t=*)?+O~3jplg#a_a=VZ5`29&0h?FlbE)9!M z8TE>)m!2B$ip!sWGoN~n<-NPd$eG8y^5w-pFSRNDM&p|mFD8{_Pu+sZ<)yM%d_)V_HSQ3MvEt_UmusxuHEI< z{z~Ip)xH>XX7zVAQ6P3$AgH6EV>1XLV(*CV9kGQ1(Y>P=Ui2Sc1`knu%S(g+0000< KMNUMnLSTZebEyab diff --git a/transmission/stats.png b/transmission/stats.png index 9ad992aa33779001ffec527671d0adc473532ff0..f78bbe3b81b83309464883bc6f9f67524946d48f 100644 GIT binary patch literal 3305 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 D7{h-( delta 1606 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 GJ^dd6=~t2f delta 1686 zcmV;H25I@w9Ip+K86yJ#0019Did_Hz01r@1R7L;){{R30)tv5>0n@Zh;o|%K%aI`$ ze+EWLL_t(|+U;HIdaNJ}BxK+Jna`fq3tB;ffF#WP=(ko%S%<_h1aJ-j0000000000 z0000000004Akl5Y1Dk+!z#`{F|B0vNWAN$cBhgld_RIAzmKv6u!Hu7aPUV2HEPZ8r zp_(?{oC}%$Exni9e?u$JYhO9k2aHGhf5OX7*wzb{tAKV2Sq@0w-GJMB!1@^&(bOrV zf2V8tNTCC#)r)Ur(q2K(Yu4@p((T0qyVpmA2mk;8000000001h8$rZ&yA}o5m#0q3 zG+3X>(n0!c6Bn>_kban(05m|Jf)WelsBIF{P{pTeyhA3Mfiz5zK4BUrNS`nbe-orn zn1)F%nNA4Om8D^F6xpPcM1}?FTGB8nDZ0|73>#78K)RMROmY(ceuyhT`W)j6azR`H z(k+rsL^2r`k5kQLX?}mGE5iaqS~|w*(~&Noj=|HMPbdcIHUc@2KAn3P@(9vxl1>*t zCMVs0R&o2|y+!v<$;8MRN%vo>f49$H{=HE}4l-;&xxf95KGLrgxqT{sZqg%m?O8GD zbTv-j-sIEEu%TZ+cLwD$EM1B52;|aUeEfJ0;!I`Azxa5NZVjJX|IM07hax98a}BR` zC~~#UT!Dk9`*bakE>~Yzv86j?!yX1{K7SBzCXh>SN zzp1CinVCtCPoAm|FKp;hkRJuMh9v3*>d|NC{5 z4KABJpb|aj9T|4Ze`$J>=hA;}>LYBj#+I+)ey0_$;3n){-N4{(`Jc5Y4m7cv>!3Oa)LP&is88 ztYNGsZEz}D;d-%&4$`mOGAo<-xcm3F8ya!7F`x?4ub&qyf1Ba-{^5p3Tx;B~f^@DB z5f5;fZxq$J;ubbf5YBW12^;_53Vp0N`JWo=E+Scc`tgz|7(&Axm_ zXM(82YKM-2e;hw8py6=5v2x^IAF@3*-LrCGNdX5`{1)Dj4_r*F+Dyfn1lR%D(K_6n=XMY&d#vO*-Dj z&MABntbk&ey-&CaM;k+d8J#t1DRZykDfA~y_93t-7w0D^J=(|f*CLKWzlNA|%KY!-H46rC1T^fbPu$pO8+9i`#8{MjUq_ z9nb=tstZ^;T@NUnH3vXCVBEJ?c;f>ac~7iWK8)4E4npSu@1neO(MxIdl&&tL_-*48 z1+J<;e-*!Ne6vR*ZM;jaU!>6Y)A5gg@6k>9up#v4iwLS;@-$=BWfjk8ypuKF2^!z5 z_U$QVKKa{C=FU|)a@UtZR$X>^adB!`{C7t^QS~%ZRI$<;8z) zwJF}C@y&{hnQ|FRmBS68gc2zu4XgwW!Xin|t`|mcsUG0}lr7b-<&wdUM z&MhN4Z(TvL0_V%i;?e5EJk9LdU2g4N8sDn+&7d=@FG->RkYNFUbwIT?0{{TDcL44k gKneu__YRDLf0Eh|*sy~EIsgCw07*qoM6N<$f;w40a{vGU diff --git a/ubooquity/stats.png b/ubooquity/stats.png index 1bd6d2d873ac592b682d3383cceeae450214662b..3563d0431d39282bd91a20b80226975d21e4191b 100644 GIT binary patch literal 3449 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 delta 1590 zcmV-62FdyP8qW-n86yJ#0019Did_Hz01r@1R7L;){{R30l>*egVC3Ji@`6*6=aC^7 ze+A}AL_t(|+U;G7j^iK<#D@R>=G$v`+cW_hCp>I3BVDCjC}K0UF@7Zk0000000000 z0000000000Xbr00B0QnBNDm<0CEpZ?9s<4jpy!Rp<>M}advBzdK0f||bU&oik?NB2JS|M>p)=EeF!=itc6IbF)wPM(gE57Iq*5(t~e<0wTu}b>Sk^GB=2hyF9p7<-L3!K+UbhBEuO7@QC z`QHWh^n6{bL0-qXyx3DTQZp1RfV7n&02EnrM-bJo4; zci~A~ce+&b0&_;OgYqL=hgK3^^}CmJsmQTM=K>Tv=p{XI99`3lj**i|@768GseY&X zFW;O?`v0zAso&&q&SYP{IhFKnS1{=JHl$Ng(shvDy$hI6{Vsd6e}g7T@2b~*>v!3k z9qOdh*rs4Zq>z{Q$SE@9Mv>uCzl+}Npy$ZO<2DhT({+$OvMmhb%?>I^AKJOsW1C=m zZ+1w7dwwxIa?=gD;gaW2)Jc4|*yW#`Qov{k9Ev@~Mvy+EoufZdm&enKUH-|d&@uM( zi5@w27P*B-PI1##e}?rw>Bu%w-n{u@&5%A-$1+HtLHgV-?9N2p2Ev0+ zcx{i|U_*}Gv@YtJ80@O`w;Bm!y@X2>gSA(!vZpR(8VEN)f4U~|Vi$z#SMR!>Gi#xn ze{iSPLv?6X+cwHN;x_{>{Yhv0uYUTk zjGwqCp>34*m%ODvrZ-go(l2K2zR}jkBUkM5PfeReg<$P7pVd(s> zoW9QGt(Glvf7JaR_6>76xxS;SyRxmeYBedR{ByIu#7>de6nR9BkTywA?EdZLna%&s zFUWq?YK#F;pBPDvruzNWCorP2(NJ*+-BEB6bZc%Y)`s*HLA9mkf%i#&8mWEl#LiZz z+r^)-<330Stia97*noLilYsT@9;}0Oz`bs7u;T+3e|fJ|Fn*lXwm%Ts8+e)VArvpA z(^GxA6T`nQzA_*;{ciZz#dmu&(#6-SnrN&0>GR9ad-P@eb|G~5Lj=?RrtFobJ2m{o z;)87QL9qC4v%j9=$tVBCdOuDTDC93U309}ai-%Lk;m?kGqUlM~;)8g6o%2lrYvwZ3 zWb)j2fBEpotvS1S~!{y;Q(0R>}8(x{7K7XNSX5ZhRyZC;yXPK%? zdNt0zHxKqJBia|VQ)$5dGCRCD{WfLq^z7m6>_ZmcYxb8wpPc?m5(R(^3jnMGrhPL2 o0KoSSK)nM`RD@Ws2;fjBTtbVvK#V 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 G=KlZ(-lUEI delta 1682 zcmV;D25tGo9jgtH872b&0019Did_Hz01{A4R7L;){{R30l>*eug6gwL;N!jYP50N` zks%j<20uweK~#9!?OltK<0uS70{;J(?~<9!IyTr~BrKqNtEM&;hV|0c6Cs=f00000 z000000000000000br6;SqytlNOYc99=*9E<=j#XkeE0kP&ktZG(rLr&FTF&6U(sg> zFbnA)sot=>eH+~0M_?w_x9a;((|^=EfpmC(ZU6uP000000000001tuwrKXU`SZQkl zTTUw`Dna_9o6jH}>YaeGAmPZ7@^%)+KRe!GPjdXdUyu&cLHY`%njn3_QcZHFwPPTC zuu@IVqL_37=`)sU(rJJO(x)udBqyNXLHdI45=ftibb?J^j&w?F=zD74PX{b}?+DqT z-a$Gtav*(5(xKkhBApx|4GTvOq{F6zbdU}_36|pvA=@Ab5jK4}&b^fPUUB9Lq(2HD zw2LSt&awfLh(Xf_%b!}s$`9kj-72Dg0O{70yH`HplIcVN(jQdrtelY}mmwXjj}on2 z(zX9`TL=qBZd5N08M*PjxQMM)cyaB?8IXQU<@)eC8ytKz7_MFHr_V0wF>r_)g#WVr z`m0GnU)ZL<82_JlFB?DY#GB29YfF><5ppj`dk8}MS1(*!+L7BRMlVE+PkPdSY%E+` z*pd5MFCRoG_p;0=g=-5tax9`IuPMLpY^iy1%i467mBw?wAVf>y+O1QoGc+aO*3y&R zbY6=c9YL?#S|xHbG$mkJURcfH(t4Guw^qk*O285oM^%fjq2OCwg}TB>nxH8`T9x1B zr7YfKQ-WT3YL&)sN|4dD_f&9yX=X=W!8ZwdWt0E$n-b(i`i?JGp3D?U8`#n;qVN#VvwGM=T>l zAv`0XVlR*7n;lqqxmd(f$Gh9um2Aa#b>*RqPa@A__+|$d77`Xwoh@1VSXFHoj}}fy z?b&tYSfog#^2NE7qm~G{#!(E%l4`lCYO^;x>}0Mn9Z?)sU;I05FJGw(<~iEA*}?T| zN^n^GwuD6aZ?mE=R`%w9dG^kkx!J){x1-7lk|K9WTb}7)?%{c>Q(oJYpcm=MmA~(| zR%y#DF_C*XlkA+qn;m+P&Y}@2i&)+edSuPnUPEB&)07~`?!8L>f*>{7ntvyCzS9a#SHDKjq<^{RT~257pB;(e?r@vf$jHy>PJc6>cpoE-mTjk z_Cy7inDxzR;fCNU${O=)ZKWNY+a~?guw9sS3BtEjzvhcQ^qA*fVs4Z4b7?-~z)Nn# zMy+lVssCS3%1x5aH;tn2yK<7|i{0Y=-Y?B|+Q*HfP@a%$UcJeGL8zJ<5`r5D8>Q5t zGmU-HixM#WoaZZlM*GWM5H1I6=ZhX8y)Y8zA&vPl(1_Nq=ql%u`nS~B_U#&xa%c16 zp4@4NL{|cO;9OqE4t;Cgwd&69P$v!28H|{8yZwB&X*(IgY(r$_sE|wMta1S ziTT{S28Qr%C$SXk>;T|oA(4`32=57t3CFuiVXviQKbyeC^mQsVB_ z^i9l(@y=y`Ki-_*RnG6~=06!wGXC-Psd@gCZl}L4a$jNF*T?OPk{rK%gp%=B^XDfl z8(;AJuJZX!&F{+BKj*z4Cvm$qJia-(0W#xBdps$RSAPEb_0Mtsqci?~Yxgm6+EH)( z`#Z()`p>UBzKXA0L*Or)K!=Zqqc2pU8B*h~=C65SlT+iLetz}!$qq=7p4nmFI|j6S zCZgSIvvXATzkWIXYJOKazpI>I`}x)9cct@J6;S}FumHe1Fm!GP0089P0jPHXB@_VE cJ75d{0XO&&b8bhvv;Y7A07*qoM6N<$f_}kE&;S4c diff --git a/webtop/stats.png b/webtop/stats.png index 1c82383838874f9cd2bf01a6cf8b02e2724fbc22..6c65c34b20dd1c67478d38d08cc2525aa0e8ce16 100644 GIT binary patch literal 2956 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 BTm1k4 delta 1553 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 Q_8d7d);HIy)V=lSza;zB>i_@% delta 1364 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 F{{y}ow^INB delta 1651 zcmV-(28{Wx8;lK*872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&DE^sqwTZPL)V zks%j<1|Ug9K~#9!?VX8o;~)@38IJ$|<&Cp;Bw3upAqKi@D;uXU!g>ORW@IS^K@bE% z5ClOG1VIo4K@bE%O-0^cAwY+g;!QvL|DQU3J6?YN_9~2PVh!kY@TAX0px(cqf6)Jb zIAv==KRPr0QKr9skFkFt>U4DSPY-_+e)nsCI+ug?i12_Kf*=TjAP9mW2!bFr(dGn9 zi@gj>bv7*FO77Lu0evgz=;?rd-K~OTsB{xD9LP~|W>R%2`Ny2OX@jf6Zf@683h00i z=sP570{U7>npW45D!q~b{rMzKql3zZP9-)hpg*3Z=}c|+yx04-VFQjFpg*0Yscrp# zn0&vOPFEnHPbX))OvLo*|A0Q9jA;>l5mA{9ixV${Ih9-wO>9`Gi>zz2&MKq`=ub+w zAyvE`gEKFKIUKnSnI{4{Kwpu0+>tBe2gKOH@N zQRbM_H)PJ)NP`V4oOxLw_mv0>b4Dif!axqtg)i1PfgGRx$nZt(NY_-O{*&&n;3+NJpINqEdOos(@AspFTB|SJ$(h{3{qi#=%6lyIm4V;Dv-0rX=kk3!j$1X*wWHeg=(WCx+p|GILzC!5)@w=`w8aO7Cy_78TuZV<7RBV?t+tWzLYA+lFmM z%V@jegwAv1Xl5I>X$O6JYIpVt=p@XBZ9OI%x88&v14Y5a$f`i@y^8Acacui)?Sn(S zF$12^J|ai%6JqrUlU$c>>D*dD+<0?F_Y0G{gV`pI0K&sh% zPy8K1&dfZ)&S&FZKWu$4Vx6vYCg;LsiqS?XN%__Z_(L;s2i%{o+o!aNL7oTS4!+@{ z|1O(up4lc4c|7)agD0x)&=7kKXtI;M4iJ;5%U%C=z*Vy+pPbMoE;&*-9I$@1Sp#DyN4(5dCL)3n$V$DFQd8FAbNIwVDSoCAb^r|WG$-Ge%yL(7lt4Q6~u zBKK5gr0)UDpO<;XJf+T8TUlkl#e8qSA2VIbS1i=D%-YUjQsi_{-npf`vzD$c=eE@o zg(HdP_A;-Sx72a$U}bb!FJ6k#*NW1A%w#ElWh#A4aZStrk~#Io$@lVB%=<1*Wy;h1 zqqC%IyOpAU&@m~mX_VJAmDMzr*R+ObE$`O#-@)W`tNJm(oSXk$%=<1*Wyk5c7dw6P zVW_ryDPI#ZEBh)IYZ_5b)4ocDnwC-7SFvEzGPYLfdQF5bv%F%yQlwIqg|1n;t~w&e zOqcQ&3p9-`@0ZrJ!pz8{s%sQ+*nQC`B2bEyN>mm?Xu|sn&S+XHz6n;QQpMyottN>A xLWTtd>X2w}27(}X?+}J}2q_d0hIeQd{R1xA5&MV*Hhcg8002ovPDHLkV1mNUAvyp6 diff --git a/whoogle/stats.png b/whoogle/stats.png index 0bd3878295fa34172629e8c88f090063332d1a2d..40b6abe8bc044ddf8fed6dd11e45f2808a66a90c 100644 GIT binary patch delta 3593 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 UdmN$TYybcN07*qoM6N<$g2q5t`2YX_ diff --git a/xteve/stats.png b/xteve/stats.png index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..aaf1592f80137c61ca0b7043fefc6bb01b37856c 100644 GIT binary patch literal 3381 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 literal 0 HcmV?d00001 diff --git a/zoneminder/stats.png b/zoneminder/stats.png index 0a97d72d14530181f01cf16ccbaeb55a2f6e5771..e7a32ddc6209dd7186d6e2b7df7ef44859bdb02f 100644 GIT binary patch delta 3374 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 ArvLx| delta 1573 zcmV+=2HN?#8ovyX872b&0019Did_Hz01{A4R7L;){{R30l>*e^w)3=1;mU#PdeFKg zks%j<1=C4HK~#9!?OofJgCGnfq5l6bZ*6T?6euWYNM;^(ZA&@SF(Eg=IRF3v00000 z00000000000Js1Yy#x&M4=AAXiTUqLEV-xSI+|cOc!MdUs(>BuKYl$dSvE z4%Ww6zEJ!~?AAHJkW(h<1V0^y97soS2Bd@ZK}q-1gC8EGAE$9N(*2Y0$@+%mgLLhN92dQXA_`5UbMc!7)w|9)Ju!h#50I|b zdQXyT$6=@A*_bg&e@tn=9i;0tkD?D( zwbu7G;H#@ot=6k+{b4!nsnr9e5&BIz<%Zm$Y$;>0!^or`)70usIn{GIUt{`VvBUVB z>(}p!7d!A(p1p;9`WRWZQ;{`)MsOzd;l|i#=v)=Ma#ODEWQSo$KUvtS+?1<3*wizih8(9;gkLe8v=_I&1SQI`m#%5_(a`F zyPkad#J84C=NR|bjMvE`)U*q_c=+5~1cPnH(6T z%gc#z@5zQix)clUT)wW#A!Cp(#DY6xz)zK-7aoH2>K!G0MfH4VZ^}$^FTH+X5@~X# znCSKCQi@l&zb(n-cEeNADbBLVDOlqEwq!v^|IZg|C0$gJ8Xro3s5EsBgB2WnDk>>f zy$d@aFPurc9M_qT`EKqXBPY4-odz$N4m8mj`Kgiiv&m` z-L#nRBYb@%K-gM;HsfNxi#U7jt5z?{l>#?Q`v3B-*%g{Vx%ySB7iUO;W;&UUcICnN zAR7&3n-DBEm0OB6BHhDc8));uHl#0#y|10v*$P!V_yRjFARQP5Y7b)rE~}aZhM(@i zI!Fi9>-GjSJ}@Hh>A9W)Uv2$>(AL0mgYVY+_bwLR`5)H%zALx6 zjr->()gaQox;b@h{@ziqs(X?&cvsy%&-q((e80PS8ClX^*1o>^>!Uu+uNZu{=G9E4 zQ>(j~fp#x+clUwHHAAdy0H5rMHB!kEC8?$3>}*R006Of0O}n;2?YT44oJZt X{>l)C2(xgI00000NkvXXu0mjf7`X*l diff --git a/zoraxy/stats.png b/zoraxy/stats.png index b01691fa98f3b9a63fac3da0962324f53f80a0ae..05d405a8b698b6ae673195a454a333b553b47a19 100644 GIT binary patch literal 2640 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 delta 1292 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 KMNUMnLSTaMtg3hb diff --git a/zzz_archived_jellyseerr/stats.png b/zzz_archived_jellyseerr/stats.png index 234f236c8cc8829fcef3c61446daae08f8bb5132..164290227e6aac0252c53cb5b80f984aa34175a5 100644 GIT binary patch literal 3284 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 C41tvZ delta 1626 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 ZNUI72QR|~i>E9nfU)NZtOzX+3{{enoyrTdB delta 1432 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%0A(M1yUhQ zvQuLg&V0t%Q|Alg<!(@?v;o{V&L|>9O^d-GUXVbZqvGKk_DyC(-Rj zr`TEL_3Q|*bSvxa==S#LMcc@wu@N>VfMIZ|GwwSL|xXdqi7Q+lBbJao3#eQNa^jFi6S`N~jUb8GaQ_q}9p{h!gN z6G+i0DDnz<;?X4o7ub*7QR?J&Plisl^}&^LdAyPD&{p?7)&pFVTVv-yNj0-THF)B8 z{?{|sM^zRyuX4eX%El+%BTxZHeRc|iTbnzu4sBn@>2r_1=Hy`j=4)pqAG0ofv>ooH z2czv~`YdtJZ`0q&QB$MR?F;nN5gM`HUDP`wFBe{68DJeV+8QRj)BP8=mKO$?kneK}n(LSd28b@cx8@+hPwv%a4v+{!n`U5hplYB0($pzPLm?9X|2ur@}sLvVpGt_*ay zQU}C*V$^HLCV{x&s?fn zb{}gRp@*z~=HYr`f6R}td`jgR8Lrb@iFtKR3(M5_rpS2lOMX+h-EC4)bRh1sgP7+J zSko$sxw1IfpEPt?X9Vi$*)fbPsLJ6S0AF6+Kll|rmxF8H7!-7k2Z?XV-#l4CcxwL+ znQFGxQP(!SbjFOs%29dfGvD}>ud|FRjrW8VwK+K*D*#`JGB05hpOVnfXcUubxIYS? zDpX*SvDa69mi&Uw5iCdL#-3CK-B3as!)1|_5F@?}^x4_><@)VQdlsv8B|W3t#0W{5 zJ8gbR*dpcdc)_bbth913x3{%pS;KoDq?+jkyGjKf9K8GP=m0E-!s?`Sgnk1`<`5Hb z@Yfx9IeF5o2btsDb4+LHR~4RIsMO23y*dif;TDbP)@=NyhNZk;qs9o(BQ`ZB)4bnM zr(r3E#y?Q%=HmCuakJ(SWM+Q3uP>yjGh}vcZSUuZ-4y;dx%^5LMp&q-p`2x2QjL8V ziKz8P;HAt}Y|^pcZaU-aj|toOziF+4_7CsHV?NLDzWY6?f?%0_N&M-_mJ~fv)|~)h zAvZSf_0{|J9NsoKc#NWb_G_(9!Vd*Q6+CW~8=k1B$PrDbM zM(-c8gFEg-0|frQrz=0S+3h*cvu35P=!GwHUv!JhL;rn)XV5iH)uR$4fBxl?t}Z&X zM*V=w@MoXO_Dck-oj)%@BUAs@&0rmjkF8OYAJp@Fxz$?fi+n$0Z)^7wa&EkRq}lPN zQ(uzL_aPMt@t1*V6Ny3TR@`nx*PI*2H*#Z0MRILczmlnAYGIH02-w+?u19F4Z4mv& zTX*l~yeOq7`_ z%n<|Kgej@oCeH^8U<6(;OmuR-9s;g*l}ZlFU{i(ru;O;<4jqdvmY!HJ)>3VC@b4Nq$c{+ zy(tAxu@s~swEZ6j{SK5K(lhE+7xZ=El{ADKL?K|;yo%8H^wnxZ&#l$7Izp33y5p)Z z6Iy(#5Cx;XNW_$4y5Bv<%RQ4ix@u4KX+2hlDbHxpb$ee_sady_GKBPbgz0m3h{*@j z7FjzMF$jzyJcvHCUvfAOr#(;DjK+-<>C-z>%ugEfd6LQ36`=Y>my>kv(1|~vlUBt% zZ97b3BpGzhT5U$p>gu1e!c2utO%(ECSDK!3lEc9&Hw-a delta 1461 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 RG~;Ii80Z=6mfn8!{C|~>TvY%7 delta 1518 zcmVtiV6Bcy zks%j<1)NDlK~#9!?VXF3s~`+TNr3J4BmrkR|Al1=jTZe0==>>G=}U-@obgL9fmZ=ztEXHSf>wi+Kli z2!bF8f*=TjAP9mW$o(wq^a@Y?eSu7bCzsfN^y>>`Bfkvj_MpG=PJnJ|Om`XR1W8fb zm`E@baI3+EF3vN$CwW2fDY(N zpkvC0FjD;0lrIW*}?Y8u*2-oTS(fNs~dROp$Q}-46C81N8c&= zYWiUZVbFPKafD&T8+Rk4y7rSDd>rWZ>4Yxck&AxxaG);sF5Y`T(`^m7a=K4;;M@KP zj+|)b23$GKCp++cV}ky9x{%m^JKz3?Do=J0^?W*ycqGE^${7*RuZ+wLM=p6U%nseh zF;734eb^z_(@Att#!gqKGaCZW@5o(sz?FA(o%wYBc?Ag0h-0pNuC5U}|JeBlbeYU` z8+d)tc@AF?(7QS1&wZPVrk7`k?f`nf&AJy35BA{(tIUA@bLg9Ri}&MyL5(x;i^W=W z-J*o(xeqCt3;Hgu8j|l7-?bOjH9*^u!}}|BJ;%Eky6r?k6G8uGoQSUTL`j=m|4sl3 z&D7pEPYj)HG8MP}zBvrbHSu+xbtaJN-(QzQ+x>GE__=)gFSh>XjAyt0za!5&|EojP z@R%iEG(mLokM4vX`1mA$mdJ6=S%2`gh-x!~-v8oM<(n5#l>W)jnM=dcVpnQDFzWR; z_vvwgdAy?{e-enyFbe|5_&Lg*PXH5rMf%8(8N9c9kB%MsgKg`2^~(G#5HnssVX>a5;q!J z7a=%pHntQy4Lx{&4C7Ka4?G9`MSQHEIM@qS+xQAUZUY^XBJ~HXLc`DcfW!~?pbqGe zdfVP%#D^quFKijPnX9dD5ZXI^C@vg1$uA%XN!)pJ$i3rn#-4&uXYSgyi6R#Tvxum`18`3;&(KDSn+03H9JPG zPu0%fKeU|+9NllJ;)UvIdxzH4zQ6w4#*eE#Nvhn_i+T3Fd$4aA(S8SE$`#nZOcu{p zzkbT9x^`DRTl+1IA65IOLswRRW)TI16&4VvL!x6d5CkFi4#B)bSV958yhF3-AHf?B UwD#7DO8@`>07*qoM6N<$f~5xiR{#J2 diff --git a/zzz_archived_overseerr/stats.png b/zzz_archived_overseerr/stats.png index c1983c8ba03fbbdce41d4c203d0e554a4088a5fd..747432287d5894818dc181346a910e5fb3099b19 100644 GIT binary patch literal 3284 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 delta 1542 zcmV+h2Ko8a8K4Z1872b&0019Did_Hz01{A4R7L;){{R30l>yYXP2u0O^2&kgbT^5> zks%j<1++;-K~#9!?VX8|;~)$~5r+T&<(bJfi4E8|2y?vNs-0xRP%IruZHdDe00000 z000000000000000@*wi}*YBU(tJ{m;SMvPe`EU0Rz!;pHC#CYousnVm^Z)wwli3=N z^gGp0^M4uo{oi1GIQRZ?>i0MD=Hms@0RRAh000000001hxioP_hHAbPHASbnXovJU zjUCc)@Ba}Wbb@k1PEN#%UYk!f_)1*?b!i6akPhjiuhWF|3D;>#>LY>lF4k!}zu3o1 z8^vML1=8DIr|EBeF5VTh^h{HS^xE*&7Z1dc-ZoBBj*#n_a}}n9m_8)uX(1O97?0F{ zZGki_xQO$em>w>%nMlC}Ci>t!t=_lpU7pVlkbbRh_x045Y>VoU-kqWE2)W?GnRq=N zGAh9>-{*c(*}#pzms0g~a2ku#vUJJh5z;&H?s@JV(npYSWaMTv^c|*f@8ik16jNe^ zH0+Qv4k0(AcPFOLC*vS}Mng|C#UtB)h%%0tKB0_DsrOv*4(Yvk_xwc^<@U0HYh+v= zQ+vBsVWba3&tF6V>AlOi+#N2-lPDm)4;h!K-o+$IhxJYjJ*Tv~SqO`e>(bE4$jv9? zD6O9KvcKCzPi!1);(2X1IRojzxcX%Kk9*gjp{MHUSbC6h`x#f4r8`3>rspbusb%{u zaGe=Cq-RF*5W$P@%g_;W`H?)p#?qCcBjnCS^3BIR89GAlWF*(fl+`kHV*2Swu4RVN zFP^`Msre2ia7QyRi|Zikex|f4VkSG3Amb_A_K$SBQ`FOc&z#Grn541g52QTadX7U0e*LTwlzUPxrCep~MNhnqp3&b}LO@2h&v~R~2(Agvef`^-Cb`++n@2P~Q!gSgxY;3AHZ7iiQ7K^R-l`Vu zW)^ZzY2mtU)~|E3gWBTduS{Llub+BOALmd4r@2kRHlr`TzuCdaAX}BS=k`=KRz+Ww zIFw)r(!KuN=4WGl&5d#S`IpW~_qN8?gv@Mgok5-4>>#}#O5keEZiX|dA>9rxqLARi zNaaW>6L}jlXchHh$bT4T{Xcm z4PRZl%}098vm*AN*RPRolacPNYiB*qWzuab(*3o5^p)~`9!KSxn3aJ^|C?yv`XLsL zkuH6c?i-tE(*x;}&7$DednY}*+aY=?fk1ipq{lvso=PB4J^<-|sYO)Hk`Cocw<=4s zq(iw*l`VQI!S(fY2j$-$N)XfUu~P|T;(Y4_?!CcBw(6&F&n4sN%GYQf! zBi-GK6sbZ5CO#PH?^VeVxtREPq_3s;=Uq9N_;92rq1lHB+N5K|rmbD8>ZCj3 z^jwyXGHb!oYaU8}fK%^C$jMh-?LUcw_6{0)Zz9C+5!|~X=`h}^dKVqiAMRXNCn~GZ zVF!Oe$9<3vdI6WQfnhIY0f%qiV-_GCjPBbDM10UA@9|hK61agid>?b5y)n_Zx!p^; zy93R42cKvV>VDOHckpUclRNl?F#lim{_)uM@%H`e5^Vo}J`mabM>4v9EW?j=cc}S+ z!JE9nn~cG$_5Pa0gEPN-$lSUsvzo^3_b1jM&_27lC^o;JsF&5fv^02=-9F9v-E+Kt zcl9=~=kZwk{N}fhbeh)~yjt^YrsAd5O=OVG+s!=4anBHHp6FgazoAEZUw?k>;PrYB zGL^RUWSxCgEf3Zs6Ip$ER%&Ja>u+y^&7mBDNE{xax;-Je-R0a#%H sU>$Uwn*jijdk468z!D08dk3xH2SFbZEn_7bumAu607*qoM6N<$g0})0(f|Me diff --git a/zzz_archived_paperless_ngx/stats.png b/zzz_archived_paperless_ngx/stats.png index 93c27dd8764f018d3771e9336168b8ab18d17d91..74ef16d9c5893aa48deaba93c87267490610b81c 100644 GIT binary patch literal 3372 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 delta 1541 zcmV+g2KxD|8lMc186yJ#0019Did_Hz01r@1R7L;){{R30mIc(lW98qn^5ednLuZl02%`T0000000000 z0000064nO~Q8e{9P_`g(P~Y?iBnBk0SuFeAALKo}%jVx$`TzsBEH3@!f9N;e;oTc#>l+yI$53k$5m-K&qx>03lf%^c!ZqfU6RyP@kce@ zu&!)?<(ZKFz~z~c{=ns#kp95snR0bWAicNcnUfd6qzj~vxI9xX#UrE-xja*hf0}=X z^f6}z?~z3zI0ITF{X;5en+Q2DPL|D(WqTCq zhiz=c-bW-|%xUZ$(jPUZL;B$AfBj6nUy}~&{b$)E^IkSUL=H5%hyv2b7jh(AQ16gV zYPA8T0)q=VH(B@p2G$>wTD5k43+sx(nU+c4a1QHg`E=h^-)6S5q)%@D5h`<< zr*|`3QPQnDb^^G}>63lugi28j_i6f&nNP?yVd;}IuwGEe`AL_8^YhSue}b6!OVdJb z3O0W*N^r)y(19L|Lb{h+i>VKrTJ^heOnubU>V;s#!H=3+ozgl4=s2}{J#aIuk0|86 z*)sDs?adAikUrfm0D2qKzq@aSb>+2cqvms+(} z%N;;^RB%S5UTSsH8u%eSf9}Z+6;rF$>UIuNtHDops3+v6+bJ2)+mjuvRaN|cQN)>h6W4AQXPxsXeeq_tL zguFX9@teQr>LiK=f3j@aEcGPheNO$psf&rdgu{mr-`PRwdmltZpMZWm5l5*q@$x3G{rNcV=sBPtwKM_sz*oe3mWm;eoD{ z?{&>M`K6bqwI{`AC2dvCM|w#E4Ae^b?0Uw%Hl)O^QjQBw>>3{d9nMlc7Qz!COlk7mwgWnsr`7pZsYUS ze#+FfSEXO(*^lzz*fNph!E@p(aQt{$+*|#28Gdl>CbaenXsqYK;700000NkvXXu0mjfKJ*Vw diff --git a/zzz_archived_papermerge/stats.png b/zzz_archived_papermerge/stats.png index 431e941c31ca97a28b8c06cc7b80cc75ed421591..fc142256d25efbe647ec38509a48395eaafa6bea 100644 GIT binary patch literal 3057 zcmaKuc|6ox8^C{qY-uFBvWv22Dq$LAiAv-$ieww>6$UYGvngvCYp&%MqHJSdhOsXZ zV|q=|kc{R^vNe=2_IaoKzJI-cynmeYoX_VxpXc*^wsW3GH|(sB2+Iir0C41rjpc6u z09xmsvjus$dl`pi$Q43J8MafMIera1|CaP4a>M1%zLK?|G2su{ zDV2&sDaUyo&V*YV6IBDwuN%Ogk~Zua7gpN*J^4iR(*<{<|9JcE-o75clJP&ZxB34+ z@*yyLC-TFJCWMEy~`52hARm z?fxkQ@@(EI2^d07gv367m+e_yJM_B-k)ldmwA5EGeoTp@Tl^z0CNwwTj)(^)9!EAA zcXODNrkwtolI~Tu!7#o#>Vo$K1ll zm+7$!2Xuee6+}Jn-B?>mn`2H;p@Xckq0g5pEOx#IM9d=_$7s%>4!1d}i<3)27gROz`dxLODmYtQL}O;dcMUdDuA>$H{tzc& z$XG5!hfyl{yx~wypPhi=B+iYF@JX@>rbZ*&PsS}s`9@kG^|i}bpQ-wMOR{ zjl5^p+Fk>#9%-Tdd|MrBz6_RQymZpe7D%I=Mh z&;5&P>8rE^hTm#VbtAj-1N=>DaI?s)FCj3)gLNV#{PQ`O z>E0e|XKjW$XYtMatFPRTe+}BMZBb#t9=eKl%v$h4yL@~4qAXG86`v&`#>f5>sXp91z-}JTPKO+o5=ZzYVOBMf zw=c7({_vq1QGG32LY{_SSDN~sBynTvMV+P^aoG7yTA3c%cl5444kdlyC%+%{F?v<2 zPhPlMCM#~fy$y?4S1DO%2%&Ca?xPz??Y*{9S>AK#4fmze;4h3W{afT9EYe7otuSDg zWrefS;{U7YXQ%$4#y!2r!i6B&R(82+ggbvGTzTGNi}`m_K!!)>?$*U`GA`%g>RGeu zvFnUEC5A?dPvV{OxqNsjHITSF@?ult{?{_t? zMkL%EZufGyf^Q{PCbq^2kBJPqNO!pk89aU^Pv`7WW#1loaYT&L{W9i-6egTXJzBBw zI4BDc`s)=;b^P76$;U+$u;pN8w_w7YH(<1$0S!!52p9lH&o%irEfX-C?x75JSE`Wr zyT>5D(J6@Q`yI7VSqA+!J^;m2!Ia^9Vxh&KPKh?BD>{aZMul}8V46xLd56yZEkxfL zk`E*sy6de~77v+7)Y?RuslymQ2aDgow{g;MBpG+#tRFdawdXA+JhVrgxY0~#etD@( z61>2&9DL;H>0^?g2C^^DHVt7aXTT(%86GP2<*M0Ow7My3*gXgg1fv449jIi77X`cO z_k5A@r)K5ZHPD=mPWqua6&xK2fIu^l%yc3Abjn{eOx$RApjQ7y@1Q6oxG{o!MUg+Z zEl``)ckEoOX6^ZWT6J)YkPxO3Ow0Gy9KPjW4t`nII$v`ivd(af?Ch9zbyV_ty}{rn z$z|=Py1F3`C5UVezy5IDJ}Ov4d;7S&_=yL30U=br6W5NjneR}v3 zT0Zw_Hp%xQ`m+~@=Q)%~Q|T`51lwlNhCW2c6Y;s(h$yODxAr!aCsRIGw~%qXd443b zJ1pZ{&)s_Dtp=MY&k+I)MPF8CmL>TJ_>GVYpm`>D)Sv)@mcN}WZq>j$bgCJu@2jnFMqUjXqX}bF9?4Up)Uf&wj_yC}^kD5bNVW?D56@Kz zS9E<39eMwP`~1Z2hHuw(VYX)GLlM$EX6e~lPS~~l?W|ctZ1;U?oqP{M2ZpjQa?XjP ztacxews$DpUhLQ9i_wl1t*M+v(GyR1zkoHZsv*Gk;v+A3gnmBi^0Ho$bB-5D_7NDB z!oi1PZb^nKanX|8Y`E09IgMDZy?jlx;4PdAbHeT@Z{)AL<2*+KNW2S0MvPdchS;s( z)dXi~ObwxB^6+_h!h=>(yJDV&!6XXp!Lvg!1PmoGL2Wn9 z#(U_k$`xW;Id{>VMe4qP3eEjQt*K%)3VcDfj#tpma<_zZSgrc{OUSeWb8~@d#K1%} z8TsS^>b0mH5~B(c=M?#eveArt!Df@cF%WlbOBgPfb2CZ5 zKQX&@?9Q@SBytJ;B*KTmHtm~I-@3MS;+fq5;d}E8{*)tZwmaDM{z}2=LerJ$`QYlk zz2&B%H#3ORwy>|5D)hwI&VLQmDtyn8Z_E|@WKdlTS?dkc^IK?1xi90xK}enDTK#s7 zeE05c$+Bmn5pu8s54|eW6{ahVDA^?hYJea)C7kvd2Ntey4=cApmaw}XPo9$n0Imo z7=NnN)t*FL5U_UAr$bJay4$bjEZj_E+1cJ<`+l@XG_-$f9eWL1st~B$#XWpK>uCEu z){*H2yX0o6m(Y?jOXJtOJmt?&9V6uyF%3-g-qjX(=^de)Al*#x+M$f`6c)N>;zbvN zBgW2IXyf98MD1qra=X_EfB3XXy_$O6z`4XUI3bIMd5LymX8}9}0A7a49{~aC{ZaA6 zaT^d|YeoH+u}mv(kHouZPz;~!M7Dzs9>{%`Jqh8qsjY(rtur$G6kukE{bKiP?EH?$ YA;R{hB-LJWXL#U>m7Qgcx#z=w0~^ZQP5=M^ delta 1382 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 YA65eAL>>{iD*ylh07*qoM6N<$g6C`H4*&oF delta 1474 zcmV;z1wH!Y7u*Yw872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&A9^RY$WRs({G zks%j<1#n43K~#9!?Va0}t11vhStsWIfBEcACutExz#C9=J@gn!Xc4CrP*C6;LI@#* z5JCtcgb+dqA#|d|BLF%wz+8I${h<$kOEvu$In)h7m!qDWtm>k1M+hN=5JCtcgb+fm zh3TiiKgh)N)7vqPTiVn-1kmlxGYjZOCz=C)=t6zzh>o20FF@Lz;EH=NQw-LWjkk^u z=s*X$g~gjdA8_&J^mzVP$t(XA0(ujRH-A{KD;v6i-pAt2>G2Qv^D*t_721tg9`Du! z=&fja@y-Rl#cK(DW=$5(8J_%YdgNE|N?!VQ8-d;k^2fm)?})!niy9B~d(Ha89X#59 ziV=VJ7z5us2zoHO+G;+zOO{$iI&yMA zzoj*Qx*ONmQPXcR?GJYw^mX$N^|rl#F(soiIXZH~jMH$=bfXiHr+V)NF;750jk&ux zP(nCo#$=91uIc97T@IZ^6vOr4h;Xrrys-C9u)_$*%cfREu)_$*E8MUIJM@mcaBB5i z&4KRPpEa*_&S)hj8sEEXf7ZOh_a507^1Y=PzW4LOlqT2BxpP3jHB1TU^xlqt?#KcC z6ubVs6nSAs4(R7>BQd!~wj&cY{hED4CfDZy!a%RG>9+tc=EZWUj%|A7)GF)Vd$#HI zQ>#Gl9XP=b7rWJ40A3umD(6`D?pk)MAF%E{-pJFDYuK&6zxU2^seu}Df*tGvC)mLt zaDp8S0>=$&5IF1J4Fcz62ZO+Wi%)iN1UqyOy!2#;zav9%!*&atlN}5KFF)Bq1UvK& zynLK4f*pDXUU9Mm!4CH>bYfG28>;t@o|7|tIIkh-ecN+_9g1!Ft9B0qymUigYtZjr zw90%s)tfe*>V2h0Zs;{~({tSFy(_|H)Fsdss(5uxzXAGZgnUjrJ9-O$-W&8c?HP}Q z2h4`5_uSa?@RL@HX zKsW6N?XRXspbNLyuoEu9W}#JY&IE9C&Y5=hQv>=X7inxiHK3pEd#52cx4RTB7;`lp z7mT^6)d}RIbmX#~Gj!Lx-e_p;MF3ylvmr;-h}KZ>*n?@2r&<*!maTEPoiNWdgTMu(+u6 zM+!lveh#lB;cY3IMWh(XOt$Xwx13rpr{q82crn7Sl*}SVBbmw4ny(zX>AZaB3Ez)m znL=I)_enJ0(Zs)hqW7|Ck>&5x_J3D+4`GUpEOIWP^-FYIjP2gLm$jT%t@YisU;$mh z(^`AmJ_(e{!+Tz9_po^JRF*~T5@9j4RSdULjN(VBvMe%aY}WKY3-Vjw?|;ocetw*P z<>nthc5!i@qnBW|d108xcV*`6cmJcpuiWw;l37GAp~NMB;>D0QilMDyq*H8V5xqp@ zAJS8+a*-F>EnnZ@b@NS5s!jiE9+ZB6z2Ae6N~efr5f&r3iNqy(Ek=%GIND8HZY`=* zNA5i+&{~Hk^c2cP6QsI|l2YB5_$Az)OLSU{u(!^TjVU+;b!5ahgAl^^jxg_tB@_tr cj@r`yKzI@nFN;-LQUCw|07*qoM6N<$f;?>CEdT%j From 45e90d860c3257e2af8018a558b8b2e1950904c0 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 17 Jul 2026 17:24:38 +0000 Subject: [PATCH 354/538] GitHub bot : README updated --- README.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 6b8adefb7d..b05607b0f2 100644 --- a/README.md +++ b/README.md @@ -57,13 +57,13 @@ If you want to do add the repository manually, please follow the procedure highl ### Number of addons - In the repository : 136 -- Installed : 626324 +- Installed : 669538 ### Top 3 -1. Arpspoof (86665x) -2. Sponsorblockcast (82801x) -3. Jellyfin (71957x) +1. Arpspoof (102238x) +2. Sponsorblockcast (98379x) +3. Portainer (88165x) ### Architectures used @@ -77,7 +77,7 @@ If you want to do add the repository manually, please follow the procedure highl ## Add-ons provided by this repository %%ADDONS_LIST%% -✓ [Arpspoof (86665x)](arpspoof/) : block internet connection for local network devices +✓ [Arpspoof (102238x)](arpspoof/) : block internet connection for local network devices   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Farpspoof%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Farpspoof%2Fupdater.json) @@ -411,7 +411,7 @@ If you want to do add the repository manually, please follow the procedure highl ![aarch64][aarch64-badge] ![amd64][amd64-badge] -✓ [Free Games Claimer (NoVNC not working)](free_games_claimer/) : automatically claims free games on the Epic Games Store, Amazon Prime Gaming and GOG +✓ [Free Games Claimer](free_games_claimer/) : Automatically claims free games from Epic Games Store, Amazon Prime Gaming, GOG, Steam, and optional GamerPower-supported stores   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Ffree_games_claimer%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Ffree_games_claimer%2Fupdater.json) @@ -522,7 +522,7 @@ If you want to do add the repository manually, please follow the procedure highl ![smb][smb-badge] ![localdisks][localdisks-badge] -✓ ![image](https://api.iconify.design/mdi/billiards-rack.svg) [Jellyfin (71957x) NAS](jellyfin/) : A free Software Media System that puts you in control of managing and streaming your media +✓ ![image](https://api.iconify.design/mdi/billiards-rack.svg) [Jellyfin NAS](jellyfin/) : A free Software Media System that puts you in control of managing and streaming your media   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fjellyfin%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fjellyfin%2Fupdater.json) @@ -585,7 +585,7 @@ If you want to do add the repository manually, please follow the procedure highl ![aarch64][aarch64-badge] ![amd64][amd64-badge] -✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Maintainerr](maintainerr/) : Rule-based media cleanup tool for Plex, Jellyfin (71957x) and Emby. Creates collections and optionally deletes unwatched content. +✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Maintainerr](maintainerr/) : Rule-based media cleanup tool for Plex, Jellyfin and Emby. Creates collections and optionally deletes unwatched content.   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fmaintainerr%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fmaintainerr%2Fupdater.json) @@ -780,7 +780,7 @@ If you want to do add the repository manually, please follow the procedure highl ![smb][smb-badge] ![localdisks][localdisks-badge] -✓ ![image](https://api.iconify.design/mdi/docker.svg) [Portainer](portainer/) : Manage your Docker environment with ease +✓ ![image](https://api.iconify.design/mdi/docker.svg) [Portainer (88165x)](portainer/) : Manage your Docker environment with ease   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fportainer%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fportainer%2Fupdater.json) @@ -788,7 +788,7 @@ If you want to do add the repository manually, please follow the procedure highl ![amd64][amd64-badge] ![ingress][ingress-badge] -✓ [Portainer Agent](portainer_agent/) : An agent used to manage all the resources in a Swarm cluster +✓ [Portainer (88165x) Agent](portainer_agent/) : An agent used to manage all the resources in a Swarm cluster   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fportainer_agent%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fportainer_agent%2Fupdater.json) @@ -899,7 +899,7 @@ If you want to do add the repository manually, please follow the procedure highl ![smb][smb-badge] ![localdisks][localdisks-badge] -✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Seerr](seerr/) : Open-source media request and discovery manager for Jellyfin (71957x), Plex, and Emby +✓ ![image](https://api.iconify.design/mdi/movie-search.svg) [Seerr](seerr/) : Open-source media request and discovery manager for Jellyfin, Plex, and Emby   ![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fseerr%2Fconfig.yaml) ![Update](https://img.shields.io/badge/dynamic/json?label=Updated&query=%24.last_update&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fseerr%2Fupdater.json) From 6a67a54055681ac02378d68439a05bdf041d3ae3 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:26:30 +0200 Subject: [PATCH 355/538] Updater bot : browser_brave updated to 1.92.141-ls115 --- browser_brave/CHANGELOG.md | 3 +++ browser_brave/config.yaml | 2 +- browser_brave/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/browser_brave/CHANGELOG.md b/browser_brave/CHANGELOG.md index a621c5736e..a524e2fced 100644 --- a/browser_brave/CHANGELOG.md +++ b/browser_brave/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.92.141-ls115 (2026-07-18) +- Update to latest version from linuxserver/docker-brave (changelog : https://github.com/linuxserver/docker-brave/releases) + ## 1.92.140-ls113 (2026-07-16) - Update to latest version from linuxserver/docker-brave (changelog : https://github.com/linuxserver/docker-brave/releases) diff --git a/browser_brave/config.yaml b/browser_brave/config.yaml index dc567b7ffd..5760cddd9f 100644 --- a/browser_brave/config.yaml +++ b/browser_brave/config.yaml @@ -69,5 +69,5 @@ slug: brave tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.92.140-ls113" +version: "1.92.141-ls115" video: true diff --git a/browser_brave/updater.json b/browser_brave/updater.json index 319574d376..f217f57b8c 100644 --- a/browser_brave/updater.json +++ b/browser_brave/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-16", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "brave", "source": "github", "upstream_repo": "linuxserver/docker-brave", - "upstream_version": "1.92.140-ls113" + "upstream_version": "1.92.141-ls115" } From 127f15adf34e98acc88de20ad7c796fde838bec6 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:27:21 +0200 Subject: [PATCH 356/538] Updater bot : claude_desktop updated to kali-version-9ad48e7a --- claude_desktop/CHANGELOG.md | 3 +++ claude_desktop/config.yaml | 2 +- claude_desktop/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 8dac59a729..934d5d2226 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,3 +1,6 @@ + +## kali-version-9ad48e7a (2026-07-18) +- Update to latest version from linuxserver/docker-baseimage-selkies (changelog : https://github.com/linuxserver/docker-baseimage-selkies/releases) ## 1.32 (17-07-2026) - Bump `tokensave` from 7.2.0 to 7.4.0 (`rtk` was already pinned to its current latest GitHub release, `v0.43.0`; `headroom-ai` is intentionally installed unpinned from PyPI, so it already tracks latest at every build and had nothing to bump). Reviewed the intervening 7.3.0/7.4.0 release notes against every tokensave surface this add-on drives (`install --agent claude --git-hook yes`, `uninstall --agent claude`, `sync`, `init`, `doctor --agent claude`, `gain --all --range 30d`, and the `mcp__tokensave__*` tool set granted in `settings.json`): no flag, output shape, or MCP tool name used here changed. Directly relevant fixes carried along: `tokensave sync` auto-migrates a v12 database (missing the trait-dispatch caller cache) to v13 as a normal part of syncing, which the add-on's corruption-quarantine logic won't mistake for corruption since the schema migration doesn't produce a "malformed"/"not a database" error; and `install`/`uninstall`'s JSON writer now resolves a symlinked `~/.claude/settings.json` before its atomic rename instead of replacing the symlink with a plain file, so a dotfiles-managed settings file survives untouched. diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 9e1cd469e9..4be2b92ca0 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -110,5 +110,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.32" +version: "kali-version-9ad48e7a" video: true diff --git a/claude_desktop/updater.json b/claude_desktop/updater.json index bfd6f352cf..006668b759 100644 --- a/claude_desktop/updater.json +++ b/claude_desktop/updater.json @@ -4,6 +4,6 @@ "github_fulltag": true, "slug": "claude_desktop", "paused": false, - "upstream_version": "ubunturesolute-version-6dc44b0e", - "last_update": "2026-07-13" + "upstream_version": "kali-version-9ad48e7a", + "last_update": "2026-07-18" } From 4d67768fa112a4d1f9cbcef9647e6f150884f805 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:27:49 +0200 Subject: [PATCH 357/538] Updater bot : emby_beta updated to 4.10.0.20 --- emby_beta/CHANGELOG.md | 3 +++ emby_beta/Dockerfile | 2 +- emby_beta/config.yaml | 2 +- emby_beta/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/emby_beta/CHANGELOG.md b/emby_beta/CHANGELOG.md index 74696a6bfc..5a5b3c803c 100644 --- a/emby_beta/CHANGELOG.md +++ b/emby_beta/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.10.0.20 (2026-07-18) +- Update to latest version from linuxserver/docker-emby (changelog : https://github.com/linuxserver/docker-emby/releases) + ## 4.10.0.19 (2026-07-13) - Update to latest version from linuxserver/docker-emby (changelog : https://github.com/linuxserver/docker-emby/releases) diff --git a/emby_beta/Dockerfile b/emby_beta/Dockerfile index f7abd1baf3..6eee41628e 100644 --- a/emby_beta/Dockerfile +++ b/emby_beta/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="4.10.0.19" +ARG BUILD_UPSTREAM="4.10.0.20" FROM ${BUILD_FROM} ################## diff --git a/emby_beta/config.yaml b/emby_beta/config.yaml index d3207dc1f9..c9b8732730 100644 --- a/emby_beta/config.yaml +++ b/emby_beta/config.yaml @@ -122,5 +122,5 @@ schema: slug: emby_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/emby -version: "4.10.0.19" +version: "4.10.0.20" video: true diff --git a/emby_beta/updater.json b/emby_beta/updater.json index 10142f74bc..a730e9573a 100644 --- a/emby_beta/updater.json +++ b/emby_beta/updater.json @@ -1,9 +1,9 @@ { "github_beta": "true", - "last_update": "2026-07-13", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "emby", "source": "github", "upstream_repo": "linuxserver/docker-emby", - "upstream_version": "4.10.0.19" + "upstream_version": "4.10.0.20" } From b20254470673f1a2a7f48932fc50ec17b754828e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:28:03 +0200 Subject: [PATCH 358/538] Updater bot : ente updated to 4.4.24 --- ente/CHANGELOG.md | 3 +++ ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 15c481b126..0a865fc7ab 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.4.24 (2026-07-18) +- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) + ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 72d2fc618c..5bd0afb53e 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.23" +version: "4.4.24" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index d8d8dd2093..314abf87f7 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-06-11", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.23" + "upstream_version": "4.4.24" } From 1b6f8fff85510010ec50cb4d767c1a76e76f0990 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:28:28 +0200 Subject: [PATCH 359/538] Updater bot : flexget updated to 3.19.28 --- flexget/CHANGELOG.md | 3 +++ flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index fb73412a31..b2c2d1cd79 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.19.28 (2026-07-18) +- Update to latest version from wiserain/flexget + ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index ad1b7f6538..21668cddd3 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.26" +version: "3.19.28" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 82ed3e79df..934d1ab608 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.26" + "upstream_version": "3.19.28" } From 25faa0d224dc1c705dc02bd3dd58cfe62aedda26 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:28:38 +0200 Subject: [PATCH 360/538] Updater bot : gitea updated to 1.27.0 --- gitea/CHANGELOG.md | 3 +++ gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index a807064de8..302979932c 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.27.0 (2026-07-18) +- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index cad067b70c..9230114be6 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27" +version: "1.27.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index a8e3aeb675..ff2b48765b 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-23", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.26.4" + "upstream_version": "1.27.0" } From 7086f1ee0d1478a00533fc890663685c0af6bfb5 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:28:47 +0200 Subject: [PATCH 361/538] Updater bot : grav updated to 2.0.11 --- grav/CHANGELOG.md | 3 +++ grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 06165ba207..1c752a7980 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.11 (2026-07-18) +- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) + ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 0894d6e150..058f12514f 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.6" +ARG BUILD_UPSTREAM="2.0.11" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 540412f15c..508347de55 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.6" +version: "2.0.11" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 3936e662ab..146c596f94 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.6" + "upstream_version": "2.0.11" } From 5c097f1d8f95826cb97c7842b05864389e687604 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:28:55 +0200 Subject: [PATCH 362/538] Updater bot : immich updated to 3.0.3 --- immich/CHANGELOG.md | 3 +++ immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index a8ab336381..6a685b2808 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-18) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 4537b0473b..66e32162ab 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 63ac0aca0a..b320650ea4 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 8e82df50b7fd5fd7bdfa98c6d948e400b7b2906c Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:29:01 +0200 Subject: [PATCH 363/538] Updater bot : immich_cuda updated to 3.0.3 --- immich_cuda/CHANGELOG.md | 3 +++ immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 95bec50a58..27c7746bf1 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-18) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index b7c3dd3c48..73c96d22b4 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 63ac0aca0a..b320650ea4 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 623c7e2e97a7fa9b540dd6a4fdea1b073fe1a7bc Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:29:06 +0200 Subject: [PATCH 364/538] Updater bot : immich_frame updated to 1.0.37.0 --- immich_frame/CHANGELOG.md | 3 +++ immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 443763661a..580a66e717 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.0.37.0 (2026-07-18) +- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) + ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 44a6fcb111..2425d2bf8c 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.34.0" +version: "1.0.37.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 8408fb021e..f66af36638 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.34.0" + "upstream_version": "1.0.37.0" } From f35b105d81ab9f073aa302ee4edb0883f3649a1d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:29:12 +0200 Subject: [PATCH 365/538] Updater bot : immich_noml updated to 3.0.3 --- immich_noml/CHANGELOG.md | 3 +++ immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 0c354e8271..98aa215c57 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-18) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 42ee4dc3dd..9774a2f395 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 63ac0aca0a..b320650ea4 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 3740ad34b191029d348d13eaa96e60a5ecfe4ef7 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:29:17 +0200 Subject: [PATCH 366/538] Updater bot : immich_openvino updated to 3.0.3 --- immich_openvino/CHANGELOG.md | 3 +++ immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 1b604106d2..29712ff040 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-18) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 52c6cd1a44..30337862a9 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 63ac0aca0a..b320650ea4 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 0bfdd994c9388e0bcfd6c42abb7d4a2cf845373e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:29:28 +0200 Subject: [PATCH 367/538] Updater bot : jackett updated to 0.24.2228 --- jackett/CHANGELOG.md | 3 +++ jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index fdcaa4afa4..28db1d0aed 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.24.2228 (2026-07-18) +- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) + ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index c393744967..00e2470998 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2166" +version: "0.24.2228" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0a816abd2c..dee2696eaf 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2166" + "upstream_version": "0.24.2228" } From 957ed48eea253a80f1885389a43715c77f7c7430 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:29:54 +0200 Subject: [PATCH 368/538] Updater bot : linkwarden updated to 2.15.1 --- linkwarden/CHANGELOG.md | 3 +++ linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 90b6ee06ff..b84e485473 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 2.15.1 (2026-07-18) +- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index 33fb3c849d..b1d3213f17 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.14.1" +version: "2.15.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 18d72d7a97..97620e2c45 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-04-23", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.14.1" + "upstream_version": "2.15.1" } From 1a3da0554fcda02df3cd3d2bb8e116a96a6c7db0 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:30:00 +0200 Subject: [PATCH 369/538] Updater bot : maintainerr updated to 3.17.1 --- maintainerr/CHANGELOG.md | 3 +++ maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6625d46e2d..de71074b43 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.17.1 (2026-07-18) +- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) + ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index eadb42fa43..a05b7bb794 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.16.0" +ARG BUILD_UPSTREAM="3.17.1" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index 65d02cfd17..bb266ddf2b 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.16.0" +version: "3.17.1" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index fd48a580bc..a5c6d71c3b 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.16.0" + "upstream_version": "3.17.1" } From 7952d76c3792edbbf0350a875d10f5d74693eabb Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 370/538] Revert "Updater bot : maintainerr updated to 3.17.1" This reverts commit 1a3da0554fcda02df3cd3d2bb8e116a96a6c7db0. --- maintainerr/CHANGELOG.md | 3 --- maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index de71074b43..6625d46e2d 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.17.1 (2026-07-18) -- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) - ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index a05b7bb794..eadb42fa43 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.17.1" +ARG BUILD_UPSTREAM="3.16.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index bb266ddf2b..65d02cfd17 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.17.1" +version: "3.16.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index a5c6d71c3b..fd48a580bc 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.17.1" + "upstream_version": "3.16.0" } From 36aa847eb8b276b47e10fd2814010004993d7de8 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 371/538] Revert "Updater bot : linkwarden updated to 2.15.1" This reverts commit 957ed48eea253a80f1885389a43715c77f7c7430. --- linkwarden/CHANGELOG.md | 3 --- linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index b84e485473..90b6ee06ff 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 2.15.1 (2026-07-18) -- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index b1d3213f17..33fb3c849d 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.15.1" +version: "2.14.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 97620e2c45..18d72d7a97 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-18", + "last_update": "2026-04-23", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.15.1" + "upstream_version": "2.14.1" } From 47d8b8a39b62fc12dfdf190e4c10a7fc3edf1913 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 372/538] Revert "Updater bot : jackett updated to 0.24.2228" This reverts commit 0bfdd994c9388e0bcfd6c42abb7d4a2cf845373e. --- jackett/CHANGELOG.md | 3 --- jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index 28db1d0aed..fdcaa4afa4 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,7 +1,4 @@ -## 0.24.2228 (2026-07-18) -- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) - ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index 00e2470998..c393744967 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2228" +version: "0.24.2166" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index dee2696eaf..0a816abd2c 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2228" + "upstream_version": "0.24.2166" } From cabe828e8dadd76399c0eba69f54e88bf186872f Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 373/538] Revert "Updater bot : immich_openvino updated to 3.0.3" This reverts commit 3740ad34b191029d348d13eaa96e60a5ecfe4ef7. --- immich_openvino/CHANGELOG.md | 3 --- immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 29712ff040..1b604106d2 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-18) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 30337862a9..52c6cd1a44 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index b320650ea4..63ac0aca0a 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From c00d89fdfa966e7bdc1f425cfe25dcbb1bca27e8 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 374/538] Revert "Updater bot : immich_noml updated to 3.0.3" This reverts commit f35b105d81ab9f073aa302ee4edb0883f3649a1d. --- immich_noml/CHANGELOG.md | 3 --- immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 98aa215c57..0c354e8271 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-18) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 9774a2f395..42ee4dc3dd 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index b320650ea4..63ac0aca0a 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From 6cddd5683e43e15a04c3cf2358511c40f028f6ba Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 375/538] Revert "Updater bot : immich_frame updated to 1.0.37.0" This reverts commit 623c7e2e97a7fa9b540dd6a4fdea1b073fe1a7bc. --- immich_frame/CHANGELOG.md | 3 --- immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 580a66e717..443763661a 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.0.37.0 (2026-07-18) -- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) - ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 2425d2bf8c..44a6fcb111 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.37.0" +version: "1.0.34.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index f66af36638..8408fb021e 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.37.0" + "upstream_version": "1.0.34.0" } From 0aaabc2e1452525d703c1459a57e3b064295b532 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 376/538] Revert "Updater bot : immich_cuda updated to 3.0.3" This reverts commit 8e82df50b7fd5fd7bdfa98c6d948e400b7b2906c. --- immich_cuda/CHANGELOG.md | 3 --- immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 27c7746bf1..95bec50a58 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-18) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index 73c96d22b4..b7c3dd3c48 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index b320650ea4..63ac0aca0a 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From e6735cadf542c3b3654069d6be4498e29e8bc106 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 377/538] Revert "Updater bot : immich updated to 3.0.3" This reverts commit 5c097f1d8f95826cb97c7842b05864389e687604. --- immich/CHANGELOG.md | 3 --- immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index 6a685b2808..a8ab336381 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-18) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 66e32162ab..4537b0473b 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index b320650ea4..63ac0aca0a 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From f8f5cf8bec988e938fdbbab828005e11ad1a8482 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 378/538] Revert "Updater bot : grav updated to 2.0.11" This reverts commit 7086f1ee0d1478a00533fc890663685c0af6bfb5. --- grav/CHANGELOG.md | 3 --- grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 1c752a7980..06165ba207 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.0.11 (2026-07-18) -- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) - ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 058f12514f..0894d6e150 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.11" +ARG BUILD_UPSTREAM="2.0.6" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 508347de55..540412f15c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.11" +version: "2.0.6" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 146c596f94..3936e662ab 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.11" + "upstream_version": "2.0.6" } From d82b85fcfd613d69ac5d18362c139ccd9d3bbecb Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 379/538] Revert "Updater bot : gitea updated to 1.27.0" This reverts commit 25faa0d224dc1c705dc02bd3dd58cfe62aedda26. --- gitea/CHANGELOG.md | 3 --- gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index 302979932c..a807064de8 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 1.27.0 (2026-07-18) -- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index 9230114be6..cad067b70c 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27.0" +version: "1.27" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index ff2b48765b..a8e3aeb675 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-18", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.27.0" + "upstream_version": "1.26.4" } From fbc156a93fbf11b78249821536786da6f4234558 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 380/538] Revert "Updater bot : flexget updated to 3.19.28" This reverts commit 1b6f8fff85510010ec50cb4d767c1a76e76f0990. --- flexget/CHANGELOG.md | 3 --- flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index b2c2d1cd79..fb73412a31 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.19.28 (2026-07-18) -- Update to latest version from wiserain/flexget - ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index 21668cddd3..ad1b7f6538 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.28" +version: "3.19.26" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 934d1ab608..82ed3e79df 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-18", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.28" + "upstream_version": "3.19.26" } From 76edbe98f24e1b13ee3d16d10d5af56ad4c6902f Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 17 Jul 2026 23:30:08 +0000 Subject: [PATCH 381/538] Revert "Updater bot : ente updated to 4.4.24" This reverts commit b20254470673f1a2a7f48932fc50ec17b754828e. --- ente/CHANGELOG.md | 3 --- ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 0a865fc7ab..15c481b126 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.4.24 (2026-07-18) -- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) - ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 5bd0afb53e..72d2fc618c 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.24" +version: "4.4.23" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index 314abf87f7..d8d8dd2093 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-18", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.24" + "upstream_version": "4.4.23" } From 0dcc2e50622ef3a25e72a53297cc58ff163df8a0 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:30:22 +0200 Subject: [PATCH 382/538] Updater bot : navidrome updated to 0.63.2 --- navidrome/CHANGELOG.md | 3 +++ navidrome/config.yaml | 2 +- navidrome/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/navidrome/CHANGELOG.md b/navidrome/CHANGELOG.md index 1d3e82672a..ff7500bee5 100644 --- a/navidrome/CHANGELOG.md +++ b/navidrome/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 0.63.2 (2026-07-18) +- Update to latest version from navidrome/navidrome (changelog : https://github.com/navidrome/navidrome/releases) ## 0.62.0-2 (19-06-2026) - Minor bugs fixed diff --git a/navidrome/config.yaml b/navidrome/config.yaml index e1c6c8bc59..fd93f83dc2 100644 --- a/navidrome/config.yaml +++ b/navidrome/config.yaml @@ -119,5 +119,5 @@ schema: slug: navidrome udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/navidrome -version: "0.62.0-2" +version: "0.63.2" webui: "[PROTO:ssl]://[HOST]:[PORT:4533]" diff --git a/navidrome/updater.json b/navidrome/updater.json index 68986b5735..762551abcb 100644 --- a/navidrome/updater.json +++ b/navidrome/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-11", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "navidrome", "source": "github", "upstream_repo": "navidrome/navidrome", - "upstream_version": "0.62.0" + "upstream_version": "0.63.2" } From cbf43e1dfb8469dabe352667f7989c992dcefa2d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:30:39 +0200 Subject: [PATCH 383/538] Updater bot : nzbget updated to v26.2-ls254 --- nzbget/CHANGELOG.md | 3 +++ nzbget/config.yaml | 2 +- nzbget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nzbget/CHANGELOG.md b/nzbget/CHANGELOG.md index 054fcb4480..3c33e8ac96 100644 --- a/nzbget/CHANGELOG.md +++ b/nzbget/CHANGELOG.md @@ -1,4 +1,7 @@ +## v26.2-ls254 (2026-07-18) +- Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) + ## v26.2-ls251 (2026-07-04) - Update to latest version from linuxserver/docker-nzbget (changelog : https://github.com/linuxserver/docker-nzbget/releases) diff --git a/nzbget/config.yaml b/nzbget/config.yaml index 4c2658da96..15b82633e3 100644 --- a/nzbget/config.yaml +++ b/nzbget/config.yaml @@ -104,4 +104,4 @@ schema: slug: nzbget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "v26.2-ls251" +version: "v26.2-ls254" diff --git a/nzbget/updater.json b/nzbget/updater.json index 15dca4e6a3..a9fd38e67b 100644 --- a/nzbget/updater.json +++ b/nzbget/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "nzbget", "source": "github", "upstream_repo": "linuxserver/docker-nzbget", - "upstream_version": "v26.2-ls251" + "upstream_version": "v26.2-ls254" } From ad9fbffec967974aafb716cdef8bc62e5e172741 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:30:48 +0200 Subject: [PATCH 384/538] Updater bot : openproject updated to 17.6.0 --- openproject/CHANGELOG.md | 3 +++ openproject/config.yaml | 2 +- openproject/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/openproject/CHANGELOG.md b/openproject/CHANGELOG.md index 26524b7076..f9692d9114 100644 --- a/openproject/CHANGELOG.md +++ b/openproject/CHANGELOG.md @@ -1,4 +1,7 @@ +## 17.6.0 (2026-07-18) +- Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) + ## 17.5.1 (2026-06-17) - Update to latest version from opf/openproject (changelog : https://github.com/opf/openproject/releases) diff --git a/openproject/config.yaml b/openproject/config.yaml index 4dd820eb68..476c58e113 100644 --- a/openproject/config.yaml +++ b/openproject/config.yaml @@ -34,5 +34,5 @@ schema: slug: openproject udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/openproject -version: "17.5.1" +version: "17.6.0" webui: "[PROTO:ssl]://[HOST]:[PORT:8080]" diff --git a/openproject/updater.json b/openproject/updater.json index 9ac77fed1e..138073c24c 100644 --- a/openproject/updater.json +++ b/openproject/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-17", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "openproject", "source": "github", "upstream_repo": "opf/openproject", - "upstream_version": "17.5.1" + "upstream_version": "17.6.0" } From 9478741c2eee4dc33e13cda0d5beb61da6acb2b0 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:30:59 +0200 Subject: [PATCH 385/538] Updater bot : plex updated to 1.43.3.10828-00f62d37d-ls315 --- plex/CHANGELOG.md | 3 +++ plex/config.yaml | 2 +- plex/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/plex/CHANGELOG.md b/plex/CHANGELOG.md index e86cb587b1..dc923efe2e 100644 --- a/plex/CHANGELOG.md +++ b/plex/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.43.3.10828-00f62d37d-ls315 (2026-07-18) +- Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) + ## 1.43.2.10687-563d026ea-ls311 (2026-07-04) - Update to latest version from linuxserver/docker-plex (changelog : https://github.com/linuxserver/docker-plex/releases) diff --git a/plex/config.yaml b/plex/config.yaml index b1104de51b..5af53761c6 100644 --- a/plex/config.yaml +++ b/plex/config.yaml @@ -175,6 +175,6 @@ slug: plex_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/plex usb: true -version: "1.43.2.10687-563d026ea-ls311" +version: "1.43.3.10828-00f62d37d-ls315" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:32400]/web" diff --git a/plex/updater.json b/plex/updater.json index aaa88c7248..bfd9402d24 100644 --- a/plex/updater.json +++ b/plex/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-04", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "plex", "source": "github", "upstream_repo": "linuxserver/docker-plex", - "upstream_version": "1.43.2.10687-563d026ea-ls311" + "upstream_version": "1.43.3.10828-00f62d37d-ls315" } From 45d5db609502372948cccd29ee4d60ac6015bdd1 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:31:12 +0200 Subject: [PATCH 386/538] Updater bot : prowlarr updated to nightly-2.5.1.5478-ls7 --- prowlarr/CHANGELOG.md | 3 +++ prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index 8c8d189e62..aea1dfaf15 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## nightly-2.5.1.5478-ls7 (2026-07-18) +- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) + ## develop-2.5.1.5464-ls268 (2026-07-13) - Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index b32ce3c98c..b43239ffd8 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "develop-2.5.1.5464-ls268" +version: "nightly-2.5.1.5478-ls7" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 3f7f5a9f95..3d3aa99a7f 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-13", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "develop-2.5.1.5464-ls268" + "upstream_version": "nightly-2.5.1.5478-ls7" } From 9f3786c404c0877ae57b105d4176bb5c8eb6c18b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:31:44 +0200 Subject: [PATCH 387/538] Updater bot : scrutiny updated to v1.67.0 --- scrutiny/CHANGELOG.md | 3 +++ scrutiny/config.yaml | 2 +- scrutiny/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/scrutiny/CHANGELOG.md b/scrutiny/CHANGELOG.md index 2efc58f6bf..402c8cb298 100644 --- a/scrutiny/CHANGELOG.md +++ b/scrutiny/CHANGELOG.md @@ -1,4 +1,7 @@ +## v1.67.0 (2026-07-18) +- Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) + ## v1.66.0 (2026-07-13) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) diff --git a/scrutiny/config.yaml b/scrutiny/config.yaml index 41703d50f5..ee8a842621 100644 --- a/scrutiny/config.yaml +++ b/scrutiny/config.yaml @@ -113,4 +113,4 @@ schema: slug: scrutiny udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.66.0" +version: "v1.67.0" diff --git a/scrutiny/updater.json b/scrutiny/updater.json index e754bfc7dc..28cc1c3ce3 100644 --- a/scrutiny/updater.json +++ b/scrutiny/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": "true", - "last_update": "2026-07-13", + "last_update": "2026-07-18", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "scrutiny", "source": "github", "upstream_repo": "Starosdev/scrutiny", - "upstream_version": "v1.66.0" + "upstream_version": "v1.67.0" } From c5301aa036667abd91aa70c5d74350d4d847253e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:31:49 +0200 Subject: [PATCH 388/538] Updater bot : scrutiny_fa updated to v1.67.0 --- scrutiny_fa/CHANGELOG.md | 3 +++ scrutiny_fa/config.yaml | 2 +- scrutiny_fa/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/scrutiny_fa/CHANGELOG.md b/scrutiny_fa/CHANGELOG.md index 8af67e462e..f388e7aac0 100644 --- a/scrutiny_fa/CHANGELOG.md +++ b/scrutiny_fa/CHANGELOG.md @@ -1,4 +1,7 @@ +## v1.67.0 (2026-07-18) +- Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) + ## v1.66.0 (2026-07-13) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) diff --git a/scrutiny_fa/config.yaml b/scrutiny_fa/config.yaml index 7026b4f275..0ea8dd342a 100644 --- a/scrutiny_fa/config.yaml +++ b/scrutiny_fa/config.yaml @@ -45,4 +45,4 @@ schema: slug: scrutiny_fa udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.66.0" +version: "v1.67.0" diff --git a/scrutiny_fa/updater.json b/scrutiny_fa/updater.json index 4794ef305a..fb23844f00 100644 --- a/scrutiny_fa/updater.json +++ b/scrutiny_fa/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": "true", - "last_update": "2026-07-13", + "last_update": "2026-07-18", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "scrutiny_fa", "source": "github", "upstream_repo": "Starosdev/scrutiny", - "upstream_version": "v1.66.0" + "upstream_version": "v1.67.0" } From a13bad70aa8891d54e4dba093cf3abc5b650f6e9 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:32:11 +0200 Subject: [PATCH 389/538] Updater bot : social_to_mealie updated to 1.7.2 --- social_to_mealie/CHANGELOG.md | 3 +++ social_to_mealie/config.yaml | 2 +- social_to_mealie/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/social_to_mealie/CHANGELOG.md b/social_to_mealie/CHANGELOG.md index 659d407245..2c14fa78ad 100644 --- a/social_to_mealie/CHANGELOG.md +++ b/social_to_mealie/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.7.2 (2026-07-18) +- Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) + ## 1.7.1 (2026-07-13) - Update to latest version from GerardPolloRebozado/social-to-mealie (changelog : https://github.com/GerardPolloRebozado/social-to-mealie/releases) diff --git a/social_to_mealie/config.yaml b/social_to_mealie/config.yaml index 1bacf3d008..8712f1b471 100644 --- a/social_to_mealie/config.yaml +++ b/social_to_mealie/config.yaml @@ -1,5 +1,5 @@ name: Social to Mealie -version: "1.7.1" +version: "1.7.2" slug: social_to_mealie description: Import recipes from social media directly into Mealie url: https://github.com/alexbelgium/hassio-addons diff --git a/social_to_mealie/updater.json b/social_to_mealie/updater.json index 7b86e115a8..d6e74eabc9 100644 --- a/social_to_mealie/updater.json +++ b/social_to_mealie/updater.json @@ -1,10 +1,10 @@ { "dockerhub_by_date": true, "dockerhub_list_size": 2, - "last_update": "2026-07-13", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "social_to_mealie", "source": "github", "upstream_repo": "GerardPolloRebozado/social-to-mealie", - "upstream_version": "1.7.1" + "upstream_version": "1.7.2" } From 2e9aa73d5cb231775b2a720f5d60b23bfeb0af14 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:33:31 +0200 Subject: [PATCH 390/538] Updater bot : webtop_kde updated to 4.16-r0-ls95 --- webtop_kde/CHANGELOG.md | 3 +++ webtop_kde/Dockerfile | 4 ++-- webtop_kde/config.yaml | 2 +- webtop_kde/updater.json | 4 ++-- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/webtop_kde/CHANGELOG.md b/webtop_kde/CHANGELOG.md index 60386a07f7..3b96ff95d9 100644 --- a/webtop_kde/CHANGELOG.md +++ b/webtop_kde/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.16-r0-ls95 (2026-07-18) +- Update to latest version from linuxserver/docker-webtop (changelog : https://github.com/linuxserver/docker-webtop/releases) + ## 4.16-r0-ls94 (2026-06-23) - Update to latest version from linuxserver/docker-webtop (changelog : https://github.com/linuxserver/docker-webtop/releases) diff --git a/webtop_kde/Dockerfile b/webtop_kde/Dockerfile index e710bcbf52..f87b69d85a 100644 --- a/webtop_kde/Dockerfile +++ b/webtop_kde/Dockerfile @@ -2,11 +2,11 @@ # ALEXBELGIUM'S DOCKERFILE # #============================# # _.------. -# _.-` ('>.-`"4.16-r0-ls94""-. +# _.-` ('>.-`"4.16-r0-ls95""-. # '.--'` _'` _ .--.) # -' '-.-';` ` # ' - _.' ``'--. -# '---` .-'"4.16-r0-ls94"` +# '---` .-'"4.16-r0-ls95"` # /` #=== Home Assistant Addon ===# diff --git a/webtop_kde/config.yaml b/webtop_kde/config.yaml index 1922c49415..74d3cdd2ed 100644 --- a/webtop_kde/config.yaml +++ b/webtop_kde/config.yaml @@ -143,5 +143,5 @@ slug: webtop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.16-r0-ls94" +version: "4.16-r0-ls95" video: true diff --git a/webtop_kde/updater.json b/webtop_kde/updater.json index 603e26e049..77e1416983 100644 --- a/webtop_kde/updater.json +++ b/webtop_kde/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-06-23", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "webtop", "source": "github", "upstream_repo": "linuxserver/docker-webtop", - "upstream_version": "4.16-r0-ls94" + "upstream_version": "4.16-r0-ls95" } From f62f22eccf7c000da57d6796155be101efef67a3 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Sat, 18 Jul 2026 01:33:59 +0200 Subject: [PATCH 391/538] Updater bot : zzz_archived_code-server updated to 4.129.0 --- zzz_archived_code-server/CHANGELOG.md | 3 +++ zzz_archived_code-server/config.yaml | 2 +- zzz_archived_code-server/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/zzz_archived_code-server/CHANGELOG.md b/zzz_archived_code-server/CHANGELOG.md index 2df0806944..f27b02ca75 100644 --- a/zzz_archived_code-server/CHANGELOG.md +++ b/zzz_archived_code-server/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.129.0 (2026-07-18) +- Update to latest version from linuxserver/docker-code-server (changelog : https://github.com/linuxserver/docker-code-server/releases) + ## 4.128.0 (2026-07-13) - Update to latest version from linuxserver/docker-code-server (changelog : https://github.com/linuxserver/docker-code-server/releases) diff --git a/zzz_archived_code-server/config.yaml b/zzz_archived_code-server/config.yaml index a98007dc9a..52d5f85e94 100644 --- a/zzz_archived_code-server/config.yaml +++ b/zzz_archived_code-server/config.yaml @@ -101,5 +101,5 @@ schema: slug: code-server udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/coder-server -version: "4.128.0" +version: "4.129.0" webui: "[PROTO:ssl]://[HOST]:[PORT:8443]" diff --git a/zzz_archived_code-server/updater.json b/zzz_archived_code-server/updater.json index 0157fd3a32..cc08b99efd 100644 --- a/zzz_archived_code-server/updater.json +++ b/zzz_archived_code-server/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-13", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "code-server", "source": "github", "upstream_repo": "linuxserver/docker-code-server", - "upstream_version": "4.128.0" + "upstream_version": "4.129.0" } From c7e9d3933f15696371f44557c41e69ccce09fc31 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 18 Jul 2026 07:21:47 +0000 Subject: [PATCH 392/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index b2526e9260..4399373a5b 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,4 +1,4 @@ -## ⚠ Open Request : [✨ [REQUEST] qbittorrent (opened 2025-10-11)](https://github.com/alexbelgium/hassio-addons/issues/2139) by [@nyok92](https://github.com/nyok92) +## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From a575f6e12195656123169b5d377cf77ab9956207 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 18 Jul 2026 10:09:08 +0200 Subject: [PATCH 393/538] scrutiny: remove unsupported s6 startup wait --- scrutiny/Dockerfile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/scrutiny/Dockerfile b/scrutiny/Dockerfile index 225e41bd91..1f53a04583 100644 --- a/scrutiny/Dockerfile +++ b/scrutiny/Dockerfile @@ -35,6 +35,12 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ COPY rootfs/ / RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; +# The Home Assistant entrypoint starts services directly instead of running s6. +# Scrutiny's collector already waits for the API health endpoint, so remove its s6-only wait. +RUN if grep -q 's6-svwait -u /run/service/scrutiny' /etc/services.d/collector-once/run; then \ + sed -i '\|s6-svwait -u /run/service/scrutiny|d' /etc/services.d/collector-once/run; \ + fi + # Uses /bin for compatibility purposes # hadolint ignore=DL4005 RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \ @@ -131,4 +137,4 @@ HEALTHCHECK \ --retries=5 \ --start-period=30s \ --timeout=25s \ - CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 + CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 \ No newline at end of file From affc41083e41863b25aedac7b5394b495efd2758 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 18 Jul 2026 10:09:30 +0200 Subject: [PATCH 394/538] scrutiny-fa: remove unsupported s6 startup wait --- scrutiny_fa/Dockerfile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/scrutiny_fa/Dockerfile b/scrutiny_fa/Dockerfile index c607c3573b..e6cd15a0d2 100644 --- a/scrutiny_fa/Dockerfile +++ b/scrutiny_fa/Dockerfile @@ -35,6 +35,12 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ COPY rootfs/ / RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; +# The Home Assistant entrypoint starts services directly instead of running s6. +# Scrutiny's collector already waits for the API health endpoint, so remove its s6-only wait. +RUN if grep -q 's6-svwait -u /run/service/scrutiny' /etc/services.d/collector-once/run; then \ + sed -i '\|s6-svwait -u /run/service/scrutiny|d' /etc/services.d/collector-once/run; \ + fi + # Uses /bin for compatibility purposes # hadolint ignore=DL4005 RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \ @@ -133,4 +139,4 @@ HEALTHCHECK \ --retries=5 \ --start-period=30s \ --timeout=25s \ - CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 + CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 \ No newline at end of file From 96fb24a1fe0ea6e965c11f8380474ce204d5e61b Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 18 Jul 2026 10:09:50 +0200 Subject: [PATCH 395/538] scrutiny: bump add-on version --- scrutiny/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scrutiny/config.yaml b/scrutiny/config.yaml index ee8a842621..809fca7126 100644 --- a/scrutiny/config.yaml +++ b/scrutiny/config.yaml @@ -113,4 +113,4 @@ schema: slug: scrutiny udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.67.0" +version: "v1.67.0-2" \ No newline at end of file From e9fbacc3f88da4c6395602e26486f5dcc25b7400 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 18 Jul 2026 10:10:00 +0200 Subject: [PATCH 396/538] scrutiny-fa: bump add-on version --- scrutiny_fa/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scrutiny_fa/config.yaml b/scrutiny_fa/config.yaml index 0ea8dd342a..4ad8794017 100644 --- a/scrutiny_fa/config.yaml +++ b/scrutiny_fa/config.yaml @@ -45,4 +45,4 @@ schema: slug: scrutiny_fa udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.67.0" +version: "v1.67.0-2" \ No newline at end of file From f425c6fe6170a956d599daddc26e4c25ab8e6d25 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 18 Jul 2026 10:10:42 +0200 Subject: [PATCH 397/538] scrutiny: document startup fix --- scrutiny/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scrutiny/CHANGELOG.md b/scrutiny/CHANGELOG.md index 402c8cb298..20b134b6e4 100644 --- a/scrutiny/CHANGELOG.md +++ b/scrutiny/CHANGELOG.md @@ -1,4 +1,7 @@ +## v1.67.0-2 (2026-07-18) +- Fix startup with the Home Assistant entrypoint by removing the upstream collector's unsupported s6 service wait. The collector still waits for the Scrutiny API health endpoint before running. + ## v1.67.0 (2026-07-18) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) @@ -178,4 +181,4 @@ ## 27b923b5-ls11 - Enables PUID/PGID options -- Daily update of values +- Daily update of values \ No newline at end of file From 8a3710a9d2ca2f68965a5e682efdf75979265a65 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 18 Jul 2026 10:11:24 +0200 Subject: [PATCH 398/538] scrutiny-fa: document startup fix --- scrutiny_fa/CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scrutiny_fa/CHANGELOG.md b/scrutiny_fa/CHANGELOG.md index f388e7aac0..1fcb0a29e0 100644 --- a/scrutiny_fa/CHANGELOG.md +++ b/scrutiny_fa/CHANGELOG.md @@ -1,4 +1,7 @@ +## v1.67.0-2 (2026-07-18) +- Fix startup with the Home Assistant entrypoint by removing the upstream collector's unsupported s6 service wait. The collector still waits for the Scrutiny API health endpoint before running. + ## v1.67.0 (2026-07-18) - Update to latest version from Starosdev/scrutiny (changelog : https://github.com/Starosdev/scrutiny/releases) @@ -183,4 +186,4 @@ ## 27b923b5-ls11 - Enables PUID/PGID options -- Daily update of values +- Daily update of values \ No newline at end of file From bb47d9820a244e8e5d64a1263b074e9363e9505c Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 18 Jul 2026 08:34:18 +0000 Subject: [PATCH 399/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index 4399373a5b..b2526e9260 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,4 +1,4 @@ -## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) +## ⚠ Open Request : [✨ [REQUEST] qbittorrent (opened 2025-10-11)](https://github.com/alexbelgium/hassio-addons/issues/2139) by [@nyok92](https://github.com/nyok92) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From 505ac96536a450628518867f4d4682ba4e0cd609 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 18 Jul 2026 16:27:44 +0000 Subject: [PATCH 400/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index b2526e9260..4399373a5b 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,4 +1,4 @@ -## ⚠ Open Request : [✨ [REQUEST] qbittorrent (opened 2025-10-11)](https://github.com/alexbelgium/hassio-addons/issues/2139) by [@nyok92](https://github.com/nyok92) +## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From bbaa0900a4409210d1e17036f7d93efa293249d0 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 18 Jul 2026 21:51:14 +0200 Subject: [PATCH 401/538] Fix Scrutiny 1.67 startup and InfluxDB migration (#2880) * scrutiny: back up InfluxDB before 2.9 upgrade * scrutiny: prepare InfluxDB 2.9 migration safely * scrutiny: restore upstream s6 supervision * scrutiny-fa: restore upstream s6 supervision * scrutiny: validate backup contents before migration * scrutiny: keep backup validation bounded * scrutiny: document startup and migration fix * scrutiny-fa: document startup and migration fix * scrutiny: bump version to v1.67.0-3 * scrutiny-fa: bump version to v1.67.0-3 * scrutiny-fa: include migration helper in build context * scrutiny-fa: copy migration helper explicitly * scrutiny-fa: document build-context fix * scrutiny-fa: bump version to v1.67.0-4 * scrutiny-fa: materialize Home Assistant rootfs overlay * scrutiny-fa: use materialized rootfs overlay * scrutiny-fa: bump version with changelog * scrutiny: verify complete InfluxDB backup state * scrutiny-fa: verify complete InfluxDB backup state * scrutiny: support custom day intervals * scrutiny-fa: support custom day intervals * scrutiny: support absolute TLS paths * scrutiny-fa: support absolute TLS paths * scrutiny: harden collector configuration migration * scrutiny-fa: harden collector configuration migration * scrutiny: preserve legacy migration backups * scrutiny-fa: preserve legacy migration backups * scrutiny: restore initialization-only s6 hook * scrutiny-fa: restore initialization-only s6 hook * scrutiny: trigger reviewed release build * scrutiny: finalize reviewed release * scrutiny: finalize combined release metadata * scrutiny: mark review-complete release * scrutiny: normalize release metadata * scrutiny: settle release metadata * scrutiny: finalize metadata formatting * scrutiny: synchronize reviewed release metadata * scrutiny: run isolated reviewed build * scrutiny-fa: run isolated reviewed build * scrutiny: verify backup contents before migration * scrutiny-fa: verify backup contents before migration * scrutiny: test content-verified atomic backups * scrutiny-fa: test content-verified atomic backups * scrutiny: validate content-level backup integrity * scrutiny: remove blocking FIFO test fixture * scrutiny-fa: remove blocking FIFO test fixture * scrutiny: run final content-integrity build * scrutiny-fa: run final content-integrity build * scrutiny: correct nginx readiness comment * scrutiny-fa: correct nginx readiness comment * scrutiny: skip collector symlinks during migration * scrutiny-fa: skip collector symlinks during migration --- scrutiny/CHANGELOG.md | 12 + scrutiny/Dockerfile | 84 +++++-- scrutiny/config.yaml | 2 +- .../etc/cont-init.d/01-configuration.sh | 14 ++ .../etc/cont-init.d/32-nginx_ingress.sh | 4 +- scrutiny/rootfs/etc/cont-init.d/90-run.sh | 24 +- scrutiny/rootfs/etc/services.d/nginx/run | 2 +- .../local/bin/scrutiny-ha-influxdb-preflight | 228 ++++++++++++++++++ scrutiny_fa/CHANGELOG.md | 15 ++ scrutiny_fa/Dockerfile | 91 +++++-- scrutiny_fa/config.yaml | 2 +- .../etc/cont-init.d/01-configuration.sh | 129 ++++++++++ .../etc/cont-init.d/32-nginx_ingress.sh | 36 +++ .../rootfs_overlay/etc/cont-init.d/90-run.sh | 56 +++++ .../etc/nginx/includes/mime.types | 96 ++++++++ .../etc/nginx/includes/proxy_params.conf | 15 ++ .../etc/nginx/includes/resolver.conf | 1 + .../etc/nginx/includes/server_params.conf | 5 + .../etc/nginx/includes/ssl_params.conf | 9 + .../etc/nginx/includes/upstream.conf | 3 + .../rootfs_overlay/etc/nginx/nginx.conf | 56 +++++ .../etc/nginx/servers/ingress.conf | 28 +++ .../etc/services.d/nginx/finish | 9 + .../rootfs_overlay/etc/services.d/nginx/run | 11 + scrutiny_fa/scrutiny-ha-influxdb-preflight | 228 ++++++++++++++++++ 25 files changed, 1116 insertions(+), 44 deletions(-) create mode 100644 scrutiny/rootfs/usr/local/bin/scrutiny-ha-influxdb-preflight create mode 100755 scrutiny_fa/rootfs_overlay/etc/cont-init.d/01-configuration.sh create mode 100755 scrutiny_fa/rootfs_overlay/etc/cont-init.d/32-nginx_ingress.sh create mode 100755 scrutiny_fa/rootfs_overlay/etc/cont-init.d/90-run.sh create mode 100644 scrutiny_fa/rootfs_overlay/etc/nginx/includes/mime.types create mode 100644 scrutiny_fa/rootfs_overlay/etc/nginx/includes/proxy_params.conf create mode 100644 scrutiny_fa/rootfs_overlay/etc/nginx/includes/resolver.conf create mode 100644 scrutiny_fa/rootfs_overlay/etc/nginx/includes/server_params.conf create mode 100644 scrutiny_fa/rootfs_overlay/etc/nginx/includes/ssl_params.conf create mode 100644 scrutiny_fa/rootfs_overlay/etc/nginx/includes/upstream.conf create mode 100644 scrutiny_fa/rootfs_overlay/etc/nginx/nginx.conf create mode 100644 scrutiny_fa/rootfs_overlay/etc/nginx/servers/ingress.conf create mode 100755 scrutiny_fa/rootfs_overlay/etc/services.d/nginx/finish create mode 100755 scrutiny_fa/rootfs_overlay/etc/services.d/nginx/run create mode 100644 scrutiny_fa/scrutiny-ha-influxdb-preflight diff --git a/scrutiny/CHANGELOG.md b/scrutiny/CHANGELOG.md index 20b134b6e4..8725d8005c 100644 --- a/scrutiny/CHANGELOG.md +++ b/scrutiny/CHANGELOG.md @@ -1,4 +1,16 @@ +## v1.67.0-8 (2026-07-18) +- Keep content-level backup validation and atomic replacement tests while removing a blocking synthetic FIFO test fixture from cross-architecture builds. + +## v1.67.0-7 (2026-07-18) +- Verify every backup file checksum and symbolic-link target, record the content-validation method in the migration marker, and preserve the previous archive until a validated replacement is atomically ready. + +## v1.67.0-6 (2026-07-18) +- Address all review findings: restore the initialization-only s6 stage-two hook, verify complete InfluxDB backup manifests and checksums, preserve legacy migration backups, and harden custom scheduling, ingress path handling, and collector configuration migration. + +## v1.67.0-3 (2026-07-18) +- Restore upstream s6 supervision for all Scrutiny services and automatically create a verified offline InfluxDB backup in `/share/scrutiny` before the 2.9 migration. + ## v1.67.0-2 (2026-07-18) - Fix startup with the Home Assistant entrypoint by removing the upstream collector's unsupported s6 service wait. The collector still waits for the Scrutiny API health endpoint before running. diff --git a/scrutiny/Dockerfile b/scrutiny/Dockerfile index 1f53a04583..14a44fb428 100644 --- a/scrutiny/Dockerfile +++ b/scrutiny/Dockerfile @@ -25,7 +25,9 @@ FROM ${BUILD_FROM} # Set S6 wait time ENV S6_CMD_WAIT_FOR_SERVICES=1 \ S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ - S6_SERVICES_GRACETIME=0 + S6_SERVICES_GRACETIME=0 \ + S6_STAGE2_HOOK="/ha_entrypoint.sh" \ + SCRUTINY_HA_ADDON_SLUG="scrutiny" ################## # 3 Install apps # @@ -33,13 +35,9 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ # Add rootfs COPY rootfs/ / -RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; - -# The Home Assistant entrypoint starts services directly instead of running s6. -# Scrutiny's collector already waits for the API health endpoint, so remove its s6-only wait. -RUN if grep -q 's6-svwait -u /run/service/scrutiny' /etc/services.d/collector-once/run; then \ - sed -i '\|s6-svwait -u /run/service/scrutiny|d' /etc/services.d/collector-once/run; \ - fi +RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; && \ + chmod 0755 /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + if [ -d /command ]; then ln -sf /command/* /usr/bin/; fi # Uses /bin for compatibility purposes # hadolint ignore=DL4005 @@ -57,6 +55,7 @@ RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_auto ENV PACKAGES="jq \ curl \ cifs-utils \ + gzip \ nginx" # Automatic apps & bashio @@ -67,17 +66,74 @@ RUN chmod 744 /ha_autoapps.sh && /ha_autoapps.sh "$PACKAGES" && rm /ha_autoapps. # 4 Entrypoint # ################ -# Add entrypoint -ENV S6_STAGE2_HOOK=/ha_entrypoint.sh +# Keep the repository initialization hook, but return after it has prepared the +# cont-init scripts. Upstream s6 remains responsible for supervising services. COPY ha_entrypoint.sh /ha_entrypoint.sh -RUN chmod 777 /ha_entrypoint.sh +RUN chmod 0755 /ha_entrypoint.sh && \ + awk '!inserted && $0 == "if $PID1; then" { \ + print "if ! $PID1; then"; \ + print " echo \"Initialization hook complete\""; \ + print " exit 0"; \ + print "fi"; \ + inserted=1 \ + } { print }' /ha_entrypoint.sh > /ha_entrypoint.sh.tmp && \ + mv /ha_entrypoint.sh.tmp /ha_entrypoint.sh && \ + chmod 0755 /ha_entrypoint.sh # Install bashio COPY bashio-standalone.sh /usr/local/lib/bashio-standalone.sh RUN chmod 0755 /usr/local/lib/bashio-standalone.sh -ENTRYPOINT [ "/usr/bin/env" ] -CMD [ "/ha_entrypoint.sh" ] +# Build-time migration tests cover path and content equality, symbolic links, +# marker checksums, idempotency, and fail-closed marker states. +RUN test -x /init && \ + test -x /ha_entrypoint.sh && \ + bash -n /ha_entrypoint.sh && \ + grep -q 'Initialization hook complete' /ha_entrypoint.sh && \ + bash -n /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + test_root="$(mktemp -d)" && \ + mkdir -p "$test_root/data/influxdb/engine/nested" "$test_root/share" "$test_root/stale/influxdb/engine/nested" && \ + printf 'bolt-test\n' > "$test_root/data/influxdb/influxd.bolt" && \ + printf 'shard-one\n' > "$test_root/data/influxdb/engine/shard-one" && \ + printf 'shard-two\n' > "$test_root/data/influxdb/engine/nested/shard-two" && \ + ln -s nested/shard-two "$test_root/data/influxdb/engine/current-link" && \ + printf 'stale-bolt\n' > "$test_root/stale/influxdb/influxd.bolt" && \ + printf 'stale-one\n' > "$test_root/stale/influxdb/engine/shard-one" && \ + printf 'shard-two\n' > "$test_root/stale/influxdb/engine/nested/shard-two" && \ + ln -s shard-one "$test_root/stale/influxdb/engine/current-link" && \ + tar -C "$test_root/stale" -czf "$test_root/share/influxdb-pre-2.9.tar.gz" influxdb && \ + stale_sha="$(sha256sum "$test_root/share/influxdb-pre-2.9.tar.gz" | awk '{print $1}')" && \ + SCRUTINY_INFLUXDB_DATA_DIR="$test_root/data/influxdb" \ + SCRUTINY_INFLUXDB_BACKUP_DIR="$test_root/share" \ + /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + backup_sha="$(sha256sum "$test_root/share/influxdb-pre-2.9.tar.gz" | awk '{print $1}')" && \ + test "$stale_sha" != "$backup_sha" && \ + test "$(tar -xOzf "$test_root/share/influxdb-pre-2.9.tar.gz" influxdb/engine/shard-one)" = "shard-one" && \ + tar -tvzf "$test_root/share/influxdb-pre-2.9.tar.gz" influxdb/engine/current-link | grep -q ' -> nested/shard-two$' && \ + grep -q '^state=legacy-backup$' "$test_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + grep -q '^validation=content-sha256-v1$' "$test_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + grep -q "^backup_sha256=${backup_sha}$" "$test_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + SCRUTINY_INFLUXDB_DATA_DIR="$test_root/data/influxdb" \ + SCRUTINY_INFLUXDB_BACKUP_DIR="$test_root/share" \ + /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + test "$backup_sha" = "$(sha256sum "$test_root/share/influxdb-pre-2.9.tar.gz" | awk '{print $1}')" && \ + printf 'corrupt\n' > "$test_root/share/influxdb-pre-2.9.tar.gz" && \ + if SCRUTINY_INFLUXDB_DATA_DIR="$test_root/data/influxdb" \ + SCRUTINY_INFLUXDB_BACKUP_DIR="$test_root/share" \ + /usr/local/bin/scrutiny-ha-influxdb-preflight; then exit 1; fi && \ + empty_root="$(mktemp -d)" && \ + mkdir -p "$empty_root/data/influxdb" "$empty_root/share" && \ + SCRUTINY_INFLUXDB_DATA_DIR="$empty_root/data/influxdb" \ + SCRUTINY_INFLUXDB_BACKUP_DIR="$empty_root/share" \ + /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + grep -q '^state=no-legacy-data$' "$empty_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + grep -q '^validation=no-data-v1$' "$empty_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + test ! -e "$empty_root/share/influxdb-pre-2.9.tar.gz" && \ + rm -rf "$test_root" "$empty_root" + +# Scrutiny's image already includes s6-overlay and defines all services under +# /etc/services.d. Keep /init as PID 1 so service readiness and s6-svc calls work. +ENTRYPOINT [ "/init" ] ############ # 5 Labels # @@ -137,4 +193,4 @@ HEALTHCHECK \ --retries=5 \ --start-period=30s \ --timeout=25s \ - CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 \ No newline at end of file + CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 diff --git a/scrutiny/config.yaml b/scrutiny/config.yaml index 809fca7126..24be896ff4 100644 --- a/scrutiny/config.yaml +++ b/scrutiny/config.yaml @@ -113,4 +113,4 @@ schema: slug: scrutiny udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.67.0-2" \ No newline at end of file +version: "v1.67.0-8" diff --git a/scrutiny/rootfs/etc/cont-init.d/01-configuration.sh b/scrutiny/rootfs/etc/cont-init.d/01-configuration.sh index 2e7e7380a0..af7402839b 100755 --- a/scrutiny/rootfs/etc/cont-init.d/01-configuration.sh +++ b/scrutiny/rootfs/etc/cont-init.d/01-configuration.sh @@ -15,6 +15,11 @@ if [ -d /opt/scrutiny/influxdb ]; then rm -r /opt/scrutiny/influxdb; fi ln -s "$DATABASELOCATION"/config /opt/scrutiny ln -s "$DATABASELOCATION"/influxdb /opt/scrutiny +# Upstream 1.67 upgrades InfluxDB from 2.2 to 2.9 and requires a confirmed +# offline backup before starting against existing data. Services have not +# started yet, so this is the safe point to create and verify that backup. +/usr/local/bin/scrutiny-ha-influxdb-preflight + ############################### # Migrating previous database # ############################### @@ -84,6 +89,15 @@ case "$FREQUENCY" in fi ;; + *d) # Matches intervals in days, like "10d" + days="${interval%d}" + if [[ "$days" -gt 0 && "$days" -le 31 ]]; then + cron_schedule="0 0 */$days * *" + else + bashio::log.error "Invalid day interval: $interval" + fi + ;; + *w) # Matches intervals in weeks, like "1w" weeks="${interval%w}" if [[ "$weeks" -gt 0 && "$weeks" -le 4 ]]; then diff --git a/scrutiny/rootfs/etc/cont-init.d/32-nginx_ingress.sh b/scrutiny/rootfs/etc/cont-init.d/32-nginx_ingress.sh index 3b8d0806bd..99d851b34c 100755 --- a/scrutiny/rootfs/etc/cont-init.d/32-nginx_ingress.sh +++ b/scrutiny/rootfs/etc/cont-init.d/32-nginx_ingress.sh @@ -20,8 +20,8 @@ if bashio::var.has_value "${port}"; then keyfile=$(bashio::config 'keyfile') mv /etc/nginx/servers/direct-ssl.disabled /etc/nginx/servers/direct.conf - sed -i "s/%%certfile%%/${certfile}/g" /etc/nginx/servers/direct.conf - sed -i "s/%%keyfile%%/${keyfile}/g" /etc/nginx/servers/direct.conf + sed -i "s|%%certfile%%|${certfile}|g" /etc/nginx/servers/direct.conf + sed -i "s|%%keyfile%%|${keyfile}|g" /etc/nginx/servers/direct.conf else mv /etc/nginx/servers/direct.disabled /etc/nginx/servers/direct.conf diff --git a/scrutiny/rootfs/etc/cont-init.d/90-run.sh b/scrutiny/rootfs/etc/cont-init.d/90-run.sh index 9269a8eacb..581e4ab54a 100755 --- a/scrutiny/rootfs/etc/cont-init.d/90-run.sh +++ b/scrutiny/rootfs/etc/cont-init.d/90-run.sh @@ -9,13 +9,19 @@ set -e if bashio::config.true "expose_collector"; then bashio::log.info "collector.yaml exposed in /share/scrutiny" mkdir -p /share/scrutiny - if [ -f /data/config/collector.yaml ]; then - cp -rnf /data/config/collector.yaml /share/scrutiny || true - rm -R /data/config/collector.yaml + if [ -f /data/config/collector.yaml ] && [ ! -L /data/config/collector.yaml ]; then + if cp -n /data/config/collector.yaml /share/scrutiny; then + rm -f /data/config/collector.yaml + else + bashio::log.warning "Could not copy /data/config/collector.yaml; keeping the source file" + fi fi - if [ -f /opt/scrutiny/config/collector.yaml ]; then - cp -rnf /opt/scrutiny/config/collector.yaml /share/scrutiny || true - rm /opt/scrutiny/config/collector.yaml + if [ -f /opt/scrutiny/config/collector.yaml ] && [ ! -L /opt/scrutiny/config/collector.yaml ]; then + if cp -n /opt/scrutiny/config/collector.yaml /share/scrutiny; then + rm -f /opt/scrutiny/config/collector.yaml + else + bashio::log.warning "Could not copy /opt/scrutiny/config/collector.yaml; keeping the source file" + fi fi touch /share/scrutiny/collector.yaml ln -sf /share/scrutiny/collector.yaml /data/config || true @@ -31,9 +37,9 @@ fi if [[ "$(bashio::config "Mode")" == Collector ]]; then # Clean services bashio::log.warning "Collector only mode. WebUI and Influxdb will be disabled" - rm -r /etc/services.d/influxdb - rm -r /etc/services.d/scrutiny - rm -r /etc/services.d/nginx + rm -rf /etc/services.d/influxdb + rm -rf /etc/services.d/scrutiny + rm -rf /etc/services.d/nginx sed -i "/wait/d" /etc/services.d/collector-once/run sed -i "/scrutiny api not ready/d" /etc/services.d/collector-once/run diff --git a/scrutiny/rootfs/etc/services.d/nginx/run b/scrutiny/rootfs/etc/services.d/nginx/run index 623775fc40..43a7f85308 100755 --- a/scrutiny/rootfs/etc/services.d/nginx/run +++ b/scrutiny/rootfs/etc/services.d/nginx/run @@ -3,7 +3,7 @@ set -e # ============================================================================== -# Wait for transmission to become available +# Wait for Scrutiny to become available bashio::net.wait_for 8080 localhost 900 bashio::log.info "Starting NGinx..." diff --git a/scrutiny/rootfs/usr/local/bin/scrutiny-ha-influxdb-preflight b/scrutiny/rootfs/usr/local/bin/scrutiny-ha-influxdb-preflight new file mode 100644 index 0000000000..7d99aac7d8 --- /dev/null +++ b/scrutiny/rootfs/usr/local/bin/scrutiny-ha-influxdb-preflight @@ -0,0 +1,228 @@ +#!/usr/bin/env bash +# shellcheck shell=bash +set -euo pipefail + +addon_slug="${SCRUTINY_HA_ADDON_SLUG:-scrutiny}" +data_dir="${SCRUTINY_INFLUXDB_DATA_DIR:-/data/influxdb}" +backup_dir="${SCRUTINY_INFLUXDB_BACKUP_DIR:-/share/${addon_slug}}" +marker_file="${data_dir}/.scrutiny-influxdb-2.9-preflight-complete" +marker_tmp="${marker_file}.tmp" +backup_file="${backup_dir}/influxdb-pre-2.9.tar.gz" +temporary_backup="${backup_file}.tmp" +archive_root="$(basename "$data_dir")" +validation_method="content-sha256-v1" +source_manifest="" +archive_manifest="" + +log() { + local level="$1" + local message="$2" + printf 'time="%s" level=%s msg="%s" type=ha-influxdb-upgrade-preflight\n' \ + "$(date -u +"%Y-%m-%dT%H:%M:%SZ")" "$level" "$message" +} + +cleanup() { + rm -f "$temporary_backup" "$marker_tmp" + if [[ -n "$source_manifest" ]]; then rm -f "$source_manifest"; fi + if [[ -n "$archive_manifest" ]]; then rm -f "$archive_manifest"; fi +} +trap cleanup EXIT + +has_existing_data() { + if [[ -e "${data_dir}/influxd.bolt" || -e "${data_dir}/influxd.sqlite" ]]; then + return 0 + fi + + if [[ -d "${data_dir}/engine" ]] && find "${data_dir}/engine" -mindepth 1 -print -quit | grep -q .; then + return 0 + fi + + return 1 +} + +validate_archive() { + local archive="$1" + [[ -s "$archive" ]] || return 1 + gzip -t "$archive" >/dev/null 2>&1 || return 1 + tar -tzf "$archive" >/dev/null 2>&1 +} + +reset_manifests() { + rm -f "$source_manifest" "$archive_manifest" + source_manifest="" + archive_manifest="" +} + +validate_backup_against_source() { + local archive="$1" + local relative_path + local source_path + local archive_member + local listing + local source_checksum + local archive_checksum + local source_target + local archive_target + + validate_archive "$archive" || return 1 + source_manifest="$(mktemp)" + archive_manifest="$(mktemp)" + + ( + cd "$data_dir" + find . -mindepth 1 -print | sed -e 's#^\./##' -e 's#/$##' | LC_ALL=C sort + ) > "$source_manifest" + + tar -tzf "$archive" | \ + sed -e "s#^${archive_root}/##" -e '/^$/d' -e 's#/$##' | \ + LC_ALL=C sort > "$archive_manifest" + + if ! cmp -s "$source_manifest" "$archive_manifest"; then + reset_manifests + return 1 + fi + + while IFS= read -r relative_path; do + source_path="${data_dir}/${relative_path}" + archive_member="${archive_root}/${relative_path}" + listing="$(tar -tvzf "$archive" -- "$archive_member" 2>/dev/null)" || { + reset_manifests + return 1 + } + + if [[ -L "$source_path" ]]; then + [[ "${listing:0:1}" == "l" ]] || { + reset_manifests + return 1 + } + source_target="$(readlink "$source_path")" + archive_target="${listing##* -> }" + [[ "$source_target" == "$archive_target" ]] || { + reset_manifests + return 1 + } + elif [[ -f "$source_path" ]]; then + [[ "${listing:0:1}" == "-" || "${listing:0:1}" == "h" ]] || { + reset_manifests + return 1 + } + source_checksum="$(sha256sum "$source_path" | awk '{print $1}')" + archive_checksum="$(tar -xOzf "$archive" -- "$archive_member" | sha256sum | awk '{print $1}')" + [[ "$source_checksum" == "$archive_checksum" ]] || { + reset_manifests + return 1 + } + elif [[ -d "$source_path" ]]; then + [[ "${listing:0:1}" == "d" ]] || { + reset_manifests + return 1 + } + else + reset_manifests + return 1 + fi + done < "$source_manifest" + + reset_manifests +} + +marker_value() { + local key="$1" + awk -F= -v key="$key" '$1 == key {sub(/^[^=]*=/, ""); print; exit}' "$marker_file" +} + +write_marker() { + local state="$1" + local checksum="${2:-}" + local validation="${3:-}" + + { + printf 'state=%s\n' "$state" + if [[ -n "$validation" ]]; then printf 'validation=%s\n' "$validation"; fi + if [[ -n "$checksum" ]]; then printf 'backup_sha256=%s\n' "$checksum"; fi + } > "$marker_tmp" + mv "$marker_tmp" "$marker_file" +} + +validate_existing_marker() { + local state + local validation + local expected_checksum + local actual_checksum + + state="$(marker_value state)" + validation="$(marker_value validation)" + + case "$state" in + no-legacy-data) + if [[ -n "$validation" && "$validation" != "no-data-v1" ]]; then + log error "no-data migration marker uses an unknown validation method" + return 1 + fi + if [[ -z "$validation" ]]; then + write_marker no-legacy-data "" no-data-v1 + log warning "upgraded no-data migration marker with explicit validation state" + fi + return 0 + ;; + legacy-backup) + if [[ "$validation" != "$validation_method" ]]; then + log error "legacy backup marker lacks content-level validation proof" + return 1 + fi + expected_checksum="$(marker_value backup_sha256)" + if [[ -z "$expected_checksum" ]] || ! validate_archive "$backup_file"; then + log error "legacy backup marker exists but its archive cannot be verified" + return 1 + fi + actual_checksum="$(sha256sum "$backup_file" | awk '{print $1}')" + if [[ "$actual_checksum" != "$expected_checksum" ]]; then + log error "legacy backup checksum does not match the migration marker" + return 1 + fi + return 0 + ;; + *) + log error "legacy migration marker lacks content-level validation proof" + return 1 + ;; + esac +} + +mkdir -p "$data_dir" + +if [[ -f "$marker_file" ]]; then + if validate_existing_marker; then exit 0; fi + exit 1 +fi + +if ! has_existing_data; then + write_marker no-legacy-data "" no-data-v1 + log info "no existing InfluxDB data detected; recorded no-data migration state" + exit 0 +fi + +mkdir -p "$backup_dir" + +if [[ -e "$backup_file" ]] && validate_backup_against_source "$backup_file"; then + log info "using existing content-verified InfluxDB backup at ${backup_file}" +else + if [[ -e "$backup_file" ]]; then + log warning "existing InfluxDB backup is stale, incomplete, or invalid and will be atomically replaced" + fi + + log warning "creating offline InfluxDB backup at ${backup_file}" + tar -C "$(dirname "$data_dir")" -czf "$temporary_backup" "$archive_root" + + if ! validate_backup_against_source "$temporary_backup"; then + log error "created InfluxDB backup failed content-level validation" + exit 1 + fi + + mv -f "$temporary_backup" "$backup_file" + log info "InfluxDB backup created and content-verified at ${backup_file}" +fi + +backup_checksum="$(sha256sum "$backup_file" | awk '{print $1}')" +write_marker legacy-backup "$backup_checksum" "$validation_method" +log info "InfluxDB 2.9 migration marker created with content-validation method and backup checksum" diff --git a/scrutiny_fa/CHANGELOG.md b/scrutiny_fa/CHANGELOG.md index 1fcb0a29e0..72c5514856 100644 --- a/scrutiny_fa/CHANGELOG.md +++ b/scrutiny_fa/CHANGELOG.md @@ -1,4 +1,19 @@ +## v1.67.0-8 (2026-07-18) +- Verify every backup file checksum and symbolic-link target, record the content-validation method in the migration marker, atomically preserve the previous archive until replacement validation succeeds, and remove the blocking synthetic FIFO test fixture. + +## v1.67.0-7 (2026-07-18) +- Address all review findings: restore the initialization-only s6 stage-two hook, verify complete InfluxDB backup manifests and checksums, preserve legacy migration backups, default to `/share/scrutiny_fa`, and harden custom scheduling, ingress path handling, and collector configuration migration. + +## v1.67.0-5 (2026-07-18) +- Replace the legacy cross-directory `rootfs` symlink with a materialized Full Access overlay so the complete add-on builds reproducibly on aarch64 and amd64. + +## v1.67.0-4 (2026-07-18) +- Include the InfluxDB migration helper directly in the Full Access build context so both supported architectures receive and test it reliably. + +## v1.67.0-3 (2026-07-18) +- Restore upstream s6 supervision for all Scrutiny services and automatically create a verified offline InfluxDB backup in `/share/scrutiny_fa` before the 2.9 migration. + ## v1.67.0-2 (2026-07-18) - Fix startup with the Home Assistant entrypoint by removing the upstream collector's unsupported s6 service wait. The collector still waits for the Scrutiny API health endpoint before running. diff --git a/scrutiny_fa/Dockerfile b/scrutiny_fa/Dockerfile index e6cd15a0d2..6047da813a 100644 --- a/scrutiny_fa/Dockerfile +++ b/scrutiny_fa/Dockerfile @@ -25,21 +25,21 @@ FROM ${BUILD_FROM} # Set S6 wait time ENV S6_CMD_WAIT_FOR_SERVICES=1 \ S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ - S6_SERVICES_GRACETIME=0 + S6_SERVICES_GRACETIME=0 \ + S6_STAGE2_HOOK="/ha_entrypoint.sh" \ + SCRUTINY_HA_ADDON_SLUG="scrutiny_fa" ################## # 3 Install apps # ################## -# Add rootfs -COPY rootfs/ / -RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; - -# The Home Assistant entrypoint starts services directly instead of running s6. -# Scrutiny's collector already waits for the API health endpoint, so remove its s6-only wait. -RUN if grep -q 's6-svwait -u /run/service/scrutiny' /etc/services.d/collector-once/run; then \ - sed -i '\|s6-svwait -u /run/service/scrutiny|d' /etc/services.d/collector-once/run; \ - fi +# Add the materialized Home Assistant overlay. Keeping it inside this add-on's +# build context avoids Docker/BuildKit following the legacy cross-directory symlink. +COPY rootfs_overlay/ / +COPY scrutiny-ha-influxdb-preflight /usr/local/bin/scrutiny-ha-influxdb-preflight +RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \; && \ + chmod 0755 /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + if [ -d /command ]; then ln -sf /command/* /usr/bin/; fi # Uses /bin for compatibility purposes # hadolint ignore=DL4005 @@ -57,6 +57,7 @@ RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_auto ENV PACKAGES="jq \ curl \ cifs-utils \ + gzip \ nginx" # Automatic apps & bashio @@ -67,19 +68,77 @@ RUN chmod 744 /ha_autoapps.sh && /ha_autoapps.sh "$PACKAGES" && rm /ha_autoapps. # 4 Entrypoint # ################ -# Add entrypoint -ENV S6_STAGE2_HOOK=/ha_entrypoint.sh +# Keep the repository initialization hook, but return after it has prepared the +# cont-init scripts. Upstream s6 remains responsible for supervising services. COPY ha_entrypoint.sh /ha_entrypoint.sh -RUN chmod 777 /ha_entrypoint.sh +RUN chmod 0755 /ha_entrypoint.sh && \ + awk '!inserted && $0 == "if $PID1; then" { \ + print "if ! $PID1; then"; \ + print " echo \"Initialization hook complete\""; \ + print " exit 0"; \ + print "fi"; \ + inserted=1 \ + } { print }' /ha_entrypoint.sh > /ha_entrypoint.sh.tmp && \ + mv /ha_entrypoint.sh.tmp /ha_entrypoint.sh && \ + chmod 0755 /ha_entrypoint.sh # Install bashio COPY bashio-standalone.sh /usr/local/lib/bashio-standalone.sh RUN chmod 0755 /usr/local/lib/bashio-standalone.sh +# Build-time migration tests cover path and content equality, symbolic links, +# marker checksums, idempotency, and fail-closed marker states. +RUN test -x /init && \ + test -x /ha_entrypoint.sh && \ + bash -n /ha_entrypoint.sh && \ + grep -q 'Initialization hook complete' /ha_entrypoint.sh && \ + bash -n /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + grep -q 'SCRUTINY_HA_ADDON_SLUG:-scrutiny_fa' /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + test_root="$(mktemp -d)" && \ + mkdir -p "$test_root/data/influxdb/engine/nested" "$test_root/share" "$test_root/stale/influxdb/engine/nested" && \ + printf 'bolt-test\n' > "$test_root/data/influxdb/influxd.bolt" && \ + printf 'shard-one\n' > "$test_root/data/influxdb/engine/shard-one" && \ + printf 'shard-two\n' > "$test_root/data/influxdb/engine/nested/shard-two" && \ + ln -s nested/shard-two "$test_root/data/influxdb/engine/current-link" && \ + printf 'stale-bolt\n' > "$test_root/stale/influxdb/influxd.bolt" && \ + printf 'stale-one\n' > "$test_root/stale/influxdb/engine/shard-one" && \ + printf 'shard-two\n' > "$test_root/stale/influxdb/engine/nested/shard-two" && \ + ln -s shard-one "$test_root/stale/influxdb/engine/current-link" && \ + tar -C "$test_root/stale" -czf "$test_root/share/influxdb-pre-2.9.tar.gz" influxdb && \ + stale_sha="$(sha256sum "$test_root/share/influxdb-pre-2.9.tar.gz" | awk '{print $1}')" && \ + SCRUTINY_INFLUXDB_DATA_DIR="$test_root/data/influxdb" \ + SCRUTINY_INFLUXDB_BACKUP_DIR="$test_root/share" \ + /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + backup_sha="$(sha256sum "$test_root/share/influxdb-pre-2.9.tar.gz" | awk '{print $1}')" && \ + test "$stale_sha" != "$backup_sha" && \ + test "$(tar -xOzf "$test_root/share/influxdb-pre-2.9.tar.gz" influxdb/engine/shard-one)" = "shard-one" && \ + tar -tvzf "$test_root/share/influxdb-pre-2.9.tar.gz" influxdb/engine/current-link | grep -q ' -> nested/shard-two$' && \ + grep -q '^state=legacy-backup$' "$test_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + grep -q '^validation=content-sha256-v1$' "$test_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + grep -q "^backup_sha256=${backup_sha}$" "$test_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + SCRUTINY_INFLUXDB_DATA_DIR="$test_root/data/influxdb" \ + SCRUTINY_INFLUXDB_BACKUP_DIR="$test_root/share" \ + /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + test "$backup_sha" = "$(sha256sum "$test_root/share/influxdb-pre-2.9.tar.gz" | awk '{print $1}')" && \ + printf 'corrupt\n' > "$test_root/share/influxdb-pre-2.9.tar.gz" && \ + if SCRUTINY_INFLUXDB_DATA_DIR="$test_root/data/influxdb" \ + SCRUTINY_INFLUXDB_BACKUP_DIR="$test_root/share" \ + /usr/local/bin/scrutiny-ha-influxdb-preflight; then exit 1; fi && \ + empty_root="$(mktemp -d)" && \ + mkdir -p "$empty_root/data/influxdb" "$empty_root/share" && \ + SCRUTINY_INFLUXDB_DATA_DIR="$empty_root/data/influxdb" \ + SCRUTINY_INFLUXDB_BACKUP_DIR="$empty_root/share" \ + /usr/local/bin/scrutiny-ha-influxdb-preflight && \ + grep -q '^state=no-legacy-data$' "$empty_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + grep -q '^validation=no-data-v1$' "$empty_root/data/influxdb/.scrutiny-influxdb-2.9-preflight-complete" && \ + test ! -e "$empty_root/share/influxdb-pre-2.9.tar.gz" && \ + rm -rf "$test_root" "$empty_root" + RUN sed -i "1a if ! bashio::require.unprotected; then bashio::addon.stop; fi" /etc/cont-init.d/90-run.sh -ENTRYPOINT [ "/usr/bin/env" ] -CMD [ "/ha_entrypoint.sh" ] +# Scrutiny's image already includes s6-overlay and defines all services under +# /etc/services.d. Keep /init as PID 1 so service readiness and s6-svc calls work. +ENTRYPOINT [ "/init" ] ############ # 5 Labels # @@ -139,4 +198,4 @@ HEALTHCHECK \ --retries=5 \ --start-period=30s \ --timeout=25s \ - CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 \ No newline at end of file + CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 diff --git a/scrutiny_fa/config.yaml b/scrutiny_fa/config.yaml index 4ad8794017..fe18b44ccf 100644 --- a/scrutiny_fa/config.yaml +++ b/scrutiny_fa/config.yaml @@ -45,4 +45,4 @@ schema: slug: scrutiny_fa udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.67.0-2" \ No newline at end of file +version: "v1.67.0-8" diff --git a/scrutiny_fa/rootfs_overlay/etc/cont-init.d/01-configuration.sh b/scrutiny_fa/rootfs_overlay/etc/cont-init.d/01-configuration.sh new file mode 100755 index 0000000000..af7402839b --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/cont-init.d/01-configuration.sh @@ -0,0 +1,129 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e + +################# +# Create folder # +################# + +DATABASELOCATION="/data" +echo "Updating folders structure" +mkdir -p "$DATABASELOCATION"/config +mkdir -p "$DATABASELOCATION"/influxdb +if [ -d /opt/scrutiny/config ]; then rm -r /opt/scrutiny/config; fi +if [ -d /opt/scrutiny/influxdb ]; then rm -r /opt/scrutiny/influxdb; fi +ln -s "$DATABASELOCATION"/config /opt/scrutiny +ln -s "$DATABASELOCATION"/influxdb /opt/scrutiny + +# Upstream 1.67 upgrades InfluxDB from 2.2 to 2.9 and requires a confirmed +# offline backup before starting against existing data. Services have not +# started yet, so this is the safe point to create and verify that backup. +/usr/local/bin/scrutiny-ha-influxdb-preflight + +############################### +# Migrating previous database # +############################### + +if [ -f /data/scrutiny.db ]; then + bashio::log.warning "Previous database detected, migration will start. Backup stored in /share/scrutiny.db.bak" + cp /data/scrutiny.db /share/scrutiny.db.bak + mv /data/scrutiny.db "$DATABASELOCATION"/config/ +fi + +###### +# TZ # +###### + +# Align timezone with options +if bashio::config.has_value "TZ"; then + TZ="$(bashio::config 'TZ')" + bashio::log.info "Timezone : $TZ" + sed -i "1a export TZ=$TZ" /etc/cont-init.d/01-timezone +fi + +################ +# CRON OPTIONS # +################ + +# Align update with options +FREQUENCY="$(bashio::config 'Updates')" +bashio::log.info "$FREQUENCY updates as defined in the 'Updates' option" + +case "$FREQUENCY" in + "Quarterly") + sed -i "/customize the cron schedule/a export COLLECTOR_CRON_SCHEDULE=\"*/15 * * * *\"" /etc/cont-init.d/50-cron-config + ;; + + "Hourly") + sed -i "/customize the cron schedule/a export COLLECTOR_CRON_SCHEDULE=\"0 * * * *\"" /etc/cont-init.d/50-cron-config + ;; + + "Daily") + sed -i "/customize the cron schedule/a export COLLECTOR_CRON_SCHEDULE=\"0 0 * * *\"" /etc/cont-init.d/50-cron-config + ;; + + "Weekly") + sed -i "/customize the cron schedule/a export COLLECTOR_CRON_SCHEDULE=\"0 0 * * 0\"" /etc/cont-init.d/50-cron-config + ;; + + "Custom") + interval="$(bashio::config 'Updates_custom_time')" + bashio::log.info "... frequency is defined manually as $interval" + + case "$interval" in + *m) # Matches intervals in minutes, like "5m" or "30m" + minutes="${interval%m}" + if [[ "$minutes" -gt 0 && "$minutes" -le 59 ]]; then + cron_schedule="*/$minutes * * * *" + else + bashio::log.error "Invalid minute interval: $interval" + fi + ;; + + *h) # Matches intervals in hours, like "2h" + hours="${interval%h}" + if [[ "$hours" -gt 0 && "$hours" -le 23 ]]; then + cron_schedule="0 */$hours * * *" + else + bashio::log.error "Invalid hour interval: $interval" + fi + ;; + + *d) # Matches intervals in days, like "10d" + days="${interval%d}" + if [[ "$days" -gt 0 && "$days" -le 31 ]]; then + cron_schedule="0 0 */$days * *" + else + bashio::log.error "Invalid day interval: $interval" + fi + ;; + + *w) # Matches intervals in weeks, like "1w" + weeks="${interval%w}" + if [[ "$weeks" -gt 0 && "$weeks" -le 4 ]]; then + cron_schedule="0 0 * * 0" # Weekly on Sunday (adjust if needed for multi-week) + else + bashio::log.error "Invalid week interval: $interval" + fi + ;; + + *mo) # Matches intervals in months, like "1mo" + months="${interval%mo}" + if [[ "$months" -gt 0 && "$months" -le 12 ]]; then + cron_schedule="0 0 1 */$months *" # Monthly on the 1st + else + bashio::log.error "Invalid month interval: $interval" + fi + ;; + + *) + bashio::log.error "Empty or unsupported custom interval. It should be in the format of 5m (every 5 minutes), 10d (every 10 days), 3w (every 3 weeks), 3mo (every 3 months)" + ;; + esac + + if [[ -n "$cron_schedule" ]]; then + sed -i "/customize the cron schedule/a export COLLECTOR_CRON_SCHEDULE=\"$cron_schedule\"" /etc/cont-init.d/50-cron-config + bashio::log.info "Custom cron schedule set to: $cron_schedule" + fi + ;; +esac diff --git a/scrutiny_fa/rootfs_overlay/etc/cont-init.d/32-nginx_ingress.sh b/scrutiny_fa/rootfs_overlay/etc/cont-init.d/32-nginx_ingress.sh new file mode 100755 index 0000000000..99d851b34c --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/cont-init.d/32-nginx_ingress.sh @@ -0,0 +1,36 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e + +################# +# NGINX SETTING # +################# +declare port +declare certfile +declare ingress_interface +declare ingress_port +declare keyfile + +port=$(bashio::addon.port 80) +if bashio::var.has_value "${port}"; then + bashio::config.require.ssl + + if bashio::config.true 'ssl'; then + certfile=$(bashio::config 'certfile') + keyfile=$(bashio::config 'keyfile') + + mv /etc/nginx/servers/direct-ssl.disabled /etc/nginx/servers/direct.conf + sed -i "s|%%certfile%%|${certfile}|g" /etc/nginx/servers/direct.conf + sed -i "s|%%keyfile%%|${keyfile}|g" /etc/nginx/servers/direct.conf + + else + mv /etc/nginx/servers/direct.disabled /etc/nginx/servers/direct.conf + fi +fi + +ingress_port=$(bashio::addon.ingress_port) +ingress_interface=$(bashio::addon.ip_address) +ingress_entry=$(bashio::addon.ingress_entry) +sed -i "s/%%port%%/${ingress_port}/g" /etc/nginx/servers/ingress.conf +sed -i "s/%%interface%%/${ingress_interface}/g" /etc/nginx/servers/ingress.conf +sed -i "s|%%ingress_entry%%|${ingress_entry}|g" /etc/nginx/servers/ingress.conf diff --git a/scrutiny_fa/rootfs_overlay/etc/cont-init.d/90-run.sh b/scrutiny_fa/rootfs_overlay/etc/cont-init.d/90-run.sh new file mode 100755 index 0000000000..581e4ab54a --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/cont-init.d/90-run.sh @@ -0,0 +1,56 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e + +######################### +# EXPOSE COLLECTOR.YAML # +######################### + +if bashio::config.true "expose_collector"; then + bashio::log.info "collector.yaml exposed in /share/scrutiny" + mkdir -p /share/scrutiny + if [ -f /data/config/collector.yaml ] && [ ! -L /data/config/collector.yaml ]; then + if cp -n /data/config/collector.yaml /share/scrutiny; then + rm -f /data/config/collector.yaml + else + bashio::log.warning "Could not copy /data/config/collector.yaml; keeping the source file" + fi + fi + if [ -f /opt/scrutiny/config/collector.yaml ] && [ ! -L /opt/scrutiny/config/collector.yaml ]; then + if cp -n /opt/scrutiny/config/collector.yaml /share/scrutiny; then + rm -f /opt/scrutiny/config/collector.yaml + else + bashio::log.warning "Could not copy /opt/scrutiny/config/collector.yaml; keeping the source file" + fi + fi + touch /share/scrutiny/collector.yaml + ln -sf /share/scrutiny/collector.yaml /data/config || true + mkdir -p /opt/scrutiny/config + ln -sf /share/scrutiny/collector.yaml /opt/scrutiny/config/collector.yaml || true + chmod 755 -R /share/scrutiny +fi + +######## +# MODE # +######## + +if [[ "$(bashio::config "Mode")" == Collector ]]; then + # Clean services + bashio::log.warning "Collector only mode. WebUI and Influxdb will be disabled" + rm -rf /etc/services.d/influxdb + rm -rf /etc/services.d/scrutiny + rm -rf /etc/services.d/nginx + sed -i "/wait/d" /etc/services.d/collector-once/run + sed -i "/scrutiny api not ready/d" /etc/services.d/collector-once/run + + # Check collector + if bashio::config.has_value "COLLECTOR_API_ENDPOINT"; then + echo "export COLLECTOR_API_ENDPOINT=$(bashio::config "COLLECTOR_API_ENDPOINT")" >> /env.sh + sed -i "1a export COLLECTOR_API_ENDPOINT=$(bashio::config "COLLECTOR_API_ENDPOINT")" /etc/services.d/collector-once/run + if [ -d /var/run/s6/container_environment ]; then printf "%s" "$COLLECTOR_API_ENDPOINT" > /var/run/s6/container_environment/COLLECTOR_API_ENDPOINT; fi + printf "%s\n" "IN_BACKGROUND=\"$COLLECTOR_API_ENDPOINT\"" >> ~/.bashrc + bashio::log.info "Using 'COLLECTOR_API_ENDPOINT' $(bashio::config "COLLECTOR_API_ENDPOINT")" + else + bashio::exit.nok "Mode is set to 'Collector', but 'COLLECTOR_API_ENDPOINT' is not defined" + fi +fi diff --git a/scrutiny_fa/rootfs_overlay/etc/nginx/includes/mime.types b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/mime.types new file mode 100644 index 0000000000..7c7cdef2d1 --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/mime.types @@ -0,0 +1,96 @@ +types { + text/html html htm shtml; + text/css css; + text/xml xml; + image/gif gif; + image/jpeg jpeg jpg; + application/javascript js; + application/atom+xml atom; + application/rss+xml rss; + + text/mathml mml; + text/plain txt; + text/vnd.sun.j2me.app-descriptor jad; + text/vnd.wap.wml wml; + text/x-component htc; + + image/png png; + image/svg+xml svg svgz; + image/tiff tif tiff; + image/vnd.wap.wbmp wbmp; + image/webp webp; + image/x-icon ico; + image/x-jng jng; + image/x-ms-bmp bmp; + + font/woff woff; + font/woff2 woff2; + + application/java-archive jar war ear; + application/json json; + application/mac-binhex40 hqx; + application/msword doc; + application/pdf pdf; + application/postscript ps eps ai; + application/rtf rtf; + application/vnd.apple.mpegurl m3u8; + application/vnd.google-earth.kml+xml kml; + application/vnd.google-earth.kmz kmz; + application/vnd.ms-excel xls; + application/vnd.ms-fontobject eot; + application/vnd.ms-powerpoint ppt; + application/vnd.oasis.opendocument.graphics odg; + application/vnd.oasis.opendocument.presentation odp; + application/vnd.oasis.opendocument.spreadsheet ods; + application/vnd.oasis.opendocument.text odt; + application/vnd.openxmlformats-officedocument.presentationml.presentation + pptx; + application/vnd.openxmlformats-officedocument.spreadsheetml.sheet + xlsx; + application/vnd.openxmlformats-officedocument.wordprocessingml.document + docx; + application/vnd.wap.wmlc wmlc; + application/x-7z-compressed 7z; + application/x-cocoa cco; + application/x-java-archive-diff jardiff; + application/x-java-jnlp-file jnlp; + application/x-makeself run; + application/x-perl pl pm; + application/x-pilot prc pdb; + application/x-rar-compressed rar; + application/x-redhat-package-manager rpm; + application/x-sea sea; + application/x-shockwave-flash swf; + application/x-stuffit sit; + application/x-tcl tcl tk; + application/x-x509-ca-cert der pem crt; + application/x-xpinstall xpi; + application/xhtml+xml xhtml; + application/xspf+xml xspf; + application/zip zip; + + application/octet-stream bin exe dll; + application/octet-stream deb; + application/octet-stream dmg; + application/octet-stream iso img; + application/octet-stream msi msp msm; + + audio/midi mid midi kar; + audio/mpeg mp3; + audio/ogg ogg; + audio/x-m4a m4a; + audio/x-realaudio ra; + + video/3gpp 3gpp 3gp; + video/mp2t ts; + video/mp4 mp4; + video/mpeg mpeg mpg; + video/quicktime mov; + video/webm webm; + video/x-flv flv; + video/x-m4v m4v; + video/x-mng mng; + video/x-ms-asf asx asf; + video/x-ms-wmv wmv; + video/x-msvideo avi; +} diff --git a/scrutiny_fa/rootfs_overlay/etc/nginx/includes/proxy_params.conf b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/proxy_params.conf new file mode 100644 index 0000000000..1990d49596 --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/proxy_params.conf @@ -0,0 +1,15 @@ +proxy_http_version 1.1; +proxy_ignore_client_abort off; +proxy_read_timeout 86400s; +proxy_redirect off; +proxy_send_timeout 86400s; +proxy_max_temp_file_size 0; + +proxy_set_header Accept-Encoding ""; +proxy_set_header Connection $connection_upgrade; +proxy_set_header Host $http_host; +proxy_set_header Upgrade $http_upgrade; +proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; +proxy_set_header X-Forwarded-Proto $scheme; +proxy_set_header X-NginX-Proxy true; +proxy_set_header X-Real-IP $remote_addr; diff --git a/scrutiny_fa/rootfs_overlay/etc/nginx/includes/resolver.conf b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/resolver.conf new file mode 100644 index 0000000000..70f4982b9b --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/resolver.conf @@ -0,0 +1 @@ +resolver 127.0.0.11 ipv6=off; diff --git a/scrutiny_fa/rootfs_overlay/etc/nginx/includes/server_params.conf b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/server_params.conf new file mode 100644 index 0000000000..a0ff6baa08 --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/server_params.conf @@ -0,0 +1,5 @@ +server_name $hostname; + +add_header X-Content-Type-Options nosniff; +add_header X-XSS-Protection "1; mode=block"; +add_header X-Robots-Tag none; diff --git a/scrutiny_fa/rootfs_overlay/etc/nginx/includes/ssl_params.conf b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/ssl_params.conf new file mode 100644 index 0000000000..6f15005998 --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/ssl_params.conf @@ -0,0 +1,9 @@ +ssl_protocols TLSv1.2; +ssl_prefer_server_ciphers on; +ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA; +ssl_ecdh_curve secp384r1; +ssl_session_timeout 10m; +ssl_session_cache shared:SSL:10m; +ssl_session_tickets off; +ssl_stapling on; +ssl_stapling_verify on; diff --git a/scrutiny_fa/rootfs_overlay/etc/nginx/includes/upstream.conf b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/upstream.conf new file mode 100644 index 0000000000..b292326bd7 --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/nginx/includes/upstream.conf @@ -0,0 +1,3 @@ +upstream backend { + server 127.0.0.1:8080; +} diff --git a/scrutiny_fa/rootfs_overlay/etc/nginx/nginx.conf b/scrutiny_fa/rootfs_overlay/etc/nginx/nginx.conf new file mode 100644 index 0000000000..7e5bc6f7cb --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/nginx/nginx.conf @@ -0,0 +1,56 @@ +# Run nginx in foreground. +daemon off; + +# This is run inside Docker. +user root; + +# Pid storage location. +pid /var/run/nginx.pid; + +# Set number of worker processes. +worker_processes 1; + +# Enables the use of JIT for regular expressions to speed-up their processing. +pcre_jit on; + +# Write error log to Hass.io add-on log. +error_log /proc/1/fd/1 error; + +# Load allowed environment vars +env HASSIO_TOKEN; + +# Load dynamic modules. +include /etc/nginx/modules/*.conf; + +# Max num of simultaneous connections by a worker process. +events { + worker_connections 512; +} + +http { + include /etc/nginx/includes/mime.types; + + log_format hassio '[$time_local] $status ' + '$http_x_forwarded_for($remote_addr) ' + '$request ($http_user_agent)'; + + access_log /proc/1/fd/1 hassio; + client_max_body_size 4G; + default_type application/octet-stream; + gzip on; + keepalive_timeout 65; + sendfile on; + server_tokens off; + tcp_nodelay on; + tcp_nopush on; + + map $http_upgrade $connection_upgrade { + default upgrade; + '' close; + } + + include /etc/nginx/includes/resolver.conf; + include /etc/nginx/includes/upstream.conf; + + include /etc/nginx/servers/*.conf; +} diff --git a/scrutiny_fa/rootfs_overlay/etc/nginx/servers/ingress.conf b/scrutiny_fa/rootfs_overlay/etc/nginx/servers/ingress.conf new file mode 100644 index 0000000000..70b217f39b --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/nginx/servers/ingress.conf @@ -0,0 +1,28 @@ +server { + listen %%interface%%:%%port%% default_server; + + include /etc/nginx/includes/server_params.conf; + include /etc/nginx/includes/proxy_params.conf; + + client_max_body_size 0; + + root /opt/scrutiny/web; + + location = / { + absolute_redirect off; # Do not add port to redirect + return 301 %%ingress_entry%%/web/dashboard; + } + + location /api { + add_header Access-Control-Allow-Origin *; + proxy_read_timeout 30; + proxy_pass http://backend/api; + } + + location /web/ { + add_header Access-Control-Allow-Origin *; + proxy_read_timeout 30; + proxy_pass http://backend/web/; + } + +} diff --git a/scrutiny_fa/rootfs_overlay/etc/services.d/nginx/finish b/scrutiny_fa/rootfs_overlay/etc/services.d/nginx/finish new file mode 100755 index 0000000000..5ca74f2bf5 --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/services.d/nginx/finish @@ -0,0 +1,9 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +# ============================================================================== +# Stop the container when Nginx fails +# ============================================================================== +if [[ "$1" -ne 0 && "$1" -ne 256 ]]; then + bashio::log.error "Nginx exited with code $1" + kill -15 1 +fi diff --git a/scrutiny_fa/rootfs_overlay/etc/services.d/nginx/run b/scrutiny_fa/rootfs_overlay/etc/services.d/nginx/run new file mode 100755 index 0000000000..43a7f85308 --- /dev/null +++ b/scrutiny_fa/rootfs_overlay/etc/services.d/nginx/run @@ -0,0 +1,11 @@ +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e +# ============================================================================== + +# Wait for Scrutiny to become available +bashio::net.wait_for 8080 localhost 900 + +bashio::log.info "Starting NGinx..." + +exec nginx diff --git a/scrutiny_fa/scrutiny-ha-influxdb-preflight b/scrutiny_fa/scrutiny-ha-influxdb-preflight new file mode 100644 index 0000000000..5f7cfcb6ab --- /dev/null +++ b/scrutiny_fa/scrutiny-ha-influxdb-preflight @@ -0,0 +1,228 @@ +#!/usr/bin/env bash +# shellcheck shell=bash +set -euo pipefail + +addon_slug="${SCRUTINY_HA_ADDON_SLUG:-scrutiny_fa}" +data_dir="${SCRUTINY_INFLUXDB_DATA_DIR:-/data/influxdb}" +backup_dir="${SCRUTINY_INFLUXDB_BACKUP_DIR:-/share/${addon_slug}}" +marker_file="${data_dir}/.scrutiny-influxdb-2.9-preflight-complete" +marker_tmp="${marker_file}.tmp" +backup_file="${backup_dir}/influxdb-pre-2.9.tar.gz" +temporary_backup="${backup_file}.tmp" +archive_root="$(basename "$data_dir")" +validation_method="content-sha256-v1" +source_manifest="" +archive_manifest="" + +log() { + local level="$1" + local message="$2" + printf 'time="%s" level=%s msg="%s" type=ha-influxdb-upgrade-preflight\n' \ + "$(date -u +"%Y-%m-%dT%H:%M:%SZ")" "$level" "$message" +} + +cleanup() { + rm -f "$temporary_backup" "$marker_tmp" + if [[ -n "$source_manifest" ]]; then rm -f "$source_manifest"; fi + if [[ -n "$archive_manifest" ]]; then rm -f "$archive_manifest"; fi +} +trap cleanup EXIT + +has_existing_data() { + if [[ -e "${data_dir}/influxd.bolt" || -e "${data_dir}/influxd.sqlite" ]]; then + return 0 + fi + + if [[ -d "${data_dir}/engine" ]] && find "${data_dir}/engine" -mindepth 1 -print -quit | grep -q .; then + return 0 + fi + + return 1 +} + +validate_archive() { + local archive="$1" + [[ -s "$archive" ]] || return 1 + gzip -t "$archive" >/dev/null 2>&1 || return 1 + tar -tzf "$archive" >/dev/null 2>&1 +} + +reset_manifests() { + rm -f "$source_manifest" "$archive_manifest" + source_manifest="" + archive_manifest="" +} + +validate_backup_against_source() { + local archive="$1" + local relative_path + local source_path + local archive_member + local listing + local source_checksum + local archive_checksum + local source_target + local archive_target + + validate_archive "$archive" || return 1 + source_manifest="$(mktemp)" + archive_manifest="$(mktemp)" + + ( + cd "$data_dir" + find . -mindepth 1 -print | sed -e 's#^\./##' -e 's#/$##' | LC_ALL=C sort + ) > "$source_manifest" + + tar -tzf "$archive" | \ + sed -e "s#^${archive_root}/##" -e '/^$/d' -e 's#/$##' | \ + LC_ALL=C sort > "$archive_manifest" + + if ! cmp -s "$source_manifest" "$archive_manifest"; then + reset_manifests + return 1 + fi + + while IFS= read -r relative_path; do + source_path="${data_dir}/${relative_path}" + archive_member="${archive_root}/${relative_path}" + listing="$(tar -tvzf "$archive" -- "$archive_member" 2>/dev/null)" || { + reset_manifests + return 1 + } + + if [[ -L "$source_path" ]]; then + [[ "${listing:0:1}" == "l" ]] || { + reset_manifests + return 1 + } + source_target="$(readlink "$source_path")" + archive_target="${listing##* -> }" + [[ "$source_target" == "$archive_target" ]] || { + reset_manifests + return 1 + } + elif [[ -f "$source_path" ]]; then + [[ "${listing:0:1}" == "-" || "${listing:0:1}" == "h" ]] || { + reset_manifests + return 1 + } + source_checksum="$(sha256sum "$source_path" | awk '{print $1}')" + archive_checksum="$(tar -xOzf "$archive" -- "$archive_member" | sha256sum | awk '{print $1}')" + [[ "$source_checksum" == "$archive_checksum" ]] || { + reset_manifests + return 1 + } + elif [[ -d "$source_path" ]]; then + [[ "${listing:0:1}" == "d" ]] || { + reset_manifests + return 1 + } + else + reset_manifests + return 1 + fi + done < "$source_manifest" + + reset_manifests +} + +marker_value() { + local key="$1" + awk -F= -v key="$key" '$1 == key {sub(/^[^=]*=/, ""); print; exit}' "$marker_file" +} + +write_marker() { + local state="$1" + local checksum="${2:-}" + local validation="${3:-}" + + { + printf 'state=%s\n' "$state" + if [[ -n "$validation" ]]; then printf 'validation=%s\n' "$validation"; fi + if [[ -n "$checksum" ]]; then printf 'backup_sha256=%s\n' "$checksum"; fi + } > "$marker_tmp" + mv "$marker_tmp" "$marker_file" +} + +validate_existing_marker() { + local state + local validation + local expected_checksum + local actual_checksum + + state="$(marker_value state)" + validation="$(marker_value validation)" + + case "$state" in + no-legacy-data) + if [[ -n "$validation" && "$validation" != "no-data-v1" ]]; then + log error "no-data migration marker uses an unknown validation method" + return 1 + fi + if [[ -z "$validation" ]]; then + write_marker no-legacy-data "" no-data-v1 + log warning "upgraded no-data migration marker with explicit validation state" + fi + return 0 + ;; + legacy-backup) + if [[ "$validation" != "$validation_method" ]]; then + log error "legacy backup marker lacks content-level validation proof" + return 1 + fi + expected_checksum="$(marker_value backup_sha256)" + if [[ -z "$expected_checksum" ]] || ! validate_archive "$backup_file"; then + log error "legacy backup marker exists but its archive cannot be verified" + return 1 + fi + actual_checksum="$(sha256sum "$backup_file" | awk '{print $1}')" + if [[ "$actual_checksum" != "$expected_checksum" ]]; then + log error "legacy backup checksum does not match the migration marker" + return 1 + fi + return 0 + ;; + *) + log error "legacy migration marker lacks content-level validation proof" + return 1 + ;; + esac +} + +mkdir -p "$data_dir" + +if [[ -f "$marker_file" ]]; then + if validate_existing_marker; then exit 0; fi + exit 1 +fi + +if ! has_existing_data; then + write_marker no-legacy-data "" no-data-v1 + log info "no existing InfluxDB data detected; recorded no-data migration state" + exit 0 +fi + +mkdir -p "$backup_dir" + +if [[ -e "$backup_file" ]] && validate_backup_against_source "$backup_file"; then + log info "using existing content-verified InfluxDB backup at ${backup_file}" +else + if [[ -e "$backup_file" ]]; then + log warning "existing InfluxDB backup is stale, incomplete, or invalid and will be atomically replaced" + fi + + log warning "creating offline InfluxDB backup at ${backup_file}" + tar -C "$(dirname "$data_dir")" -czf "$temporary_backup" "$archive_root" + + if ! validate_backup_against_source "$temporary_backup"; then + log error "created InfluxDB backup failed content-level validation" + exit 1 + fi + + mv -f "$temporary_backup" "$backup_file" + log info "InfluxDB backup created and content-verified at ${backup_file}" +fi + +backup_checksum="$(sha256sum "$backup_file" | awk '{print $1}')" +write_marker legacy-backup "$backup_checksum" "$validation_method" +log info "InfluxDB 2.9 migration marker created with content-validation method and backup checksum" From a91f4ce2ee52107d2ce15eac964ba22cd9b891dc Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 18 Jul 2026 19:51:31 +0000 Subject: [PATCH 402/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index 4399373a5b..b2526e9260 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,4 +1,4 @@ -## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) +## ⚠ Open Request : [✨ [REQUEST] qbittorrent (opened 2025-10-11)](https://github.com/alexbelgium/hassio-addons/issues/2139) by [@nyok92](https://github.com/nyok92) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From 503b1effcfb7c94361348e3f2fb8a5c17d0c8062 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 19 Jul 2026 16:49:55 +0000 Subject: [PATCH 403/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index b2526e9260..4d1318656c 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,4 +1,5 @@ ## ⚠ Open Request : [✨ [REQUEST] qbittorrent (opened 2025-10-11)](https://github.com/alexbelgium/hassio-addons/issues/2139) by [@nyok92](https://github.com/nyok92) +## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) # Hass.io Add-ons: Tor with bridges [![Donate][donation-badge]](https://www.buymeacoffee.com/alexbelgium) From 192a5c99afebf26a99f43d27f4c975840662597f Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 19 Jul 2026 23:21:55 +0000 Subject: [PATCH 404/538] Github bot : image compressed --- .github/stats.png | Bin 3880 -> 1846 bytes .github/stats_addons.png | Bin 9864 -> 4018 bytes addons_updater/stats.png | Bin 3446 -> 1583 bytes arpspoof/stats.png | Bin 2515 -> 1184 bytes aurral/stats.png | Bin 2510 -> 1352 bytes autobrr/stats.png | Bin 3375 -> 1510 bytes baikal/stats.png | Bin 3434 -> 1595 bytes battybirdnet-pi/stats.png | Bin 3588 -> 1653 bytes bazarr/stats.png | Bin 3084 -> 1427 bytes bentopdf/stats.png | Bin 2629 -> 1424 bytes binance-trading-bot/stats.png | Bin 3590 -> 1757 bytes birdnet-go-dev/stats.png | Bin 2253 -> 1218 bytes birdnet-go/stats.png | Bin 3327 -> 1495 bytes birdnet-pi-zach/stats.png | Bin 2466 -> 1301 bytes birdnet-pi/stats.png | Bin 4693 -> 1907 bytes birdnet-pipy/stats.png | Bin 2642 -> 1331 bytes bitwarden/stats.png | Bin 3172 -> 1446 bytes browser_brave/stats.png | Bin 2858 -> 1338 bytes browser_chromium/stats.png | Bin 3061 -> 1410 bytes browserless_chrome/stats.png | Bin 3402 -> 1614 bytes calibre/stats.png | Bin 3451 -> 1557 bytes changedetection.io/stats.png | Bin 3193 -> 1549 bytes claude_desktop/stats.png | Bin 2284 -> 1246 bytes cleanuparr/stats.png | Bin 2761 -> 1455 bytes cloudcommander/stats.png | Bin 3085 -> 1418 bytes codex/stats.png | Bin 3553 -> 1576 bytes collabora/stats.png | Bin 3075 -> 1457 bytes comixed/stats.png | Bin 2689 -> 1316 bytes elasticsearch/stats.png | Bin 3511 -> 1700 bytes emby/stats.png | Bin 2999 -> 1408 bytes emby_beta/stats.png | Bin 2879 -> 1384 bytes enedisgateway2mqtt/stats.png | Bin 3491 -> 1621 bytes enedisgateway2mqtt_dev/stats.png | Bin 3630 -> 1709 bytes ente/stats.png | Bin 3392 -> 1620 bytes epicgamesfree/stats.png | Bin 3513 -> 1631 bytes filebrowser/stats.png | Bin 3505 -> 1618 bytes fireflyiii/stats.png | Bin 3234 -> 1508 bytes fireflyiii_data_importer/stats.png | Bin 3824 -> 1752 bytes fireflyiii_fints_importer/stats.png | Bin 4155 -> 1837 bytes flaresolverr/stats.png | Bin 2709 -> 1255 bytes flexget/stats.png | Bin 3187 -> 1379 bytes free_games_claimer/stats.png | Bin 4201 -> 1836 bytes gazpar2mqtt/stats.png | Bin 3466 -> 1588 bytes gitea/stats.png | Bin 3249 -> 1415 bytes grampsweb/stats.png | Bin 2831 -> 1429 bytes grav/stats.png | Bin 3746 -> 1688 bytes guacamole/stats.png | Bin 3044 -> 1471 bytes immich/stats.png | Bin 3174 -> 1396 bytes immich_cuda/stats.png | Bin 3486 -> 1572 bytes immich_frame/stats.png | Bin 3344 -> 1517 bytes immich_noml/stats.png | Bin 3198 -> 1429 bytes immich_openvino/stats.png | Bin 3336 -> 1517 bytes immich_power_tools/stats.png | Bin 2832 -> 1384 bytes inadyn/stats.png | Bin 3542 -> 1609 bytes jackett/stats.png | Bin 2678 -> 1269 bytes jellyfin/stats.png | Bin 2695 -> 1256 bytes joal/stats.png | Bin 3491 -> 1580 bytes joplin/stats.png | Bin 3515 -> 1639 bytes kometa/stats.png | Bin 3274 -> 1572 bytes librespeed/stats.png | Bin 2851 -> 1479 bytes lidarr/stats.png | Bin 3113 -> 1429 bytes linkwarden/stats.png | Bin 3394 -> 1561 bytes maintainerr/stats.png | Bin 3296 -> 1607 bytes manyfold/stats.png | Bin 2795 -> 1329 bytes mealie/stats.png | Bin 3116 -> 1458 bytes monica/stats.png | Bin 2979 -> 1474 bytes mylar3/stats.png | Bin 2610 -> 1208 bytes navidrome/stats.png | Bin 3206 -> 1489 bytes netbird-server/stats.png | Bin 3153 -> 1514 bytes nextcloud/stats.png | Bin 3032 -> 1434 bytes nginx_webserver_proxy/stats.png | Bin 2884 -> 1480 bytes nzbget/stats.png | Bin 3328 -> 1514 bytes omni-tools/stats.png | Bin 2799 -> 1491 bytes openproject/stats.png | Bin 3504 -> 1634 bytes organizr/stats.png | Bin 3402 -> 1561 bytes photoprism/stats.png | Bin 3256 -> 1540 bytes piwigo/stats.png | Bin 2916 -> 1385 bytes plex/stats.png | Bin 2676 -> 1260 bytes portainer/stats.png | Bin 2894 -> 1329 bytes portainer_agent/stats.png | Bin 2915 -> 1420 bytes postgres_17/stats.png | Bin 2601 -> 1364 bytes prowlarr/stats.png | Bin 3138 -> 1425 bytes qbittorrent/stats.png | Bin 3635 -> 1562 bytes radarr/stats.png | Bin 3067 -> 1432 bytes readarr/stats.png | Bin 2956 -> 1349 bytes requestrr/stats.png | Bin 3316 -> 1519 bytes resiliosync/stats.png | Bin 3478 -> 1647 bytes sabnzbd/stats.png | Bin 2689 -> 1267 bytes scrutiny/stats.png | Bin 3473 -> 1699 bytes scrutiny_fa/stats.png | Bin 2927 -> 1350 bytes scrutiny_fa_original/stats.png | Bin 2600 -> 1418 bytes scrutiny_original/stats.png | Bin 2469 -> 1402 bytes seafile/stats.png | Bin 3566 -> 1626 bytes signalk/stats.png | Bin 3776 -> 1698 bytes social_to_mealie/stats.png | Bin 3100 -> 1435 bytes sonarr/stats.png | Bin 2864 -> 1390 bytes sponsorblockcast/stats.png | Bin 2699 -> 1310 bytes spotify_to_plex/icon.png | Bin 14824 -> 12994 bytes spotify_to_plex/logo.png | Bin 14824 -> 12994 bytes spotify_to_plex/stats.png | Bin 2290 -> 1230 bytes spotweb/stats.png | Bin 3961 -> 1733 bytes tandoor_recipes/stats.png | Bin 2884 -> 1424 bytes tdarr/stats.png | Bin 3381 -> 1568 bytes teamspeak/stats.png | Bin 2888 -> 1380 bytes transmission/stats.png | Bin 3305 -> 1625 bytes transmission_openvpn/stats.png | Bin 3664 -> 1747 bytes ubooquity/stats.png | Bin 3449 -> 1619 bytes unpackerr/stats.png | Bin 3780 -> 1710 bytes webtop/stats.png | Bin 2956 -> 1460 bytes webtop_kde/stats.png | Bin 3244 -> 1579 bytes webtrees/stats.png | Bin 3007 -> 1398 bytes wger/stats.png | Bin 3620 -> 1668 bytes whatsapper/stats.png | Bin 3502 -> 1696 bytes whoogle/stats.png | Bin 3603 -> 1706 bytes xteve/stats.png | Bin 3381 -> 1577 bytes zoneminder/stats.png | Bin 3385 -> 1581 bytes zoraxy/stats.png | Bin 2640 -> 1414 bytes zzz_archived_code-server/stats.png | Bin 2940 -> 1376 bytes zzz_archived_jellyseerr/stats.png | Bin 3284 -> 1628 bytes zzz_archived_omada/stats.png | Bin 3372 -> 1491 bytes zzz_archived_omada_v3/stats.png | Bin 3272 -> 1487 bytes zzz_archived_ombi/stats.png | Bin 3258 -> 1560 bytes zzz_archived_overseerr/stats.png | Bin 3284 -> 1566 bytes zzz_archived_paperless_ngx/stats.png | Bin 3372 -> 1559 bytes zzz_archived_papermerge/stats.png | Bin 3057 -> 1423 bytes zzz_archived_plex_meta_manager/stats.png | Bin 2861 -> 1340 bytes zzz_archived_tor/stats.png | Bin 3044 -> 1502 bytes 127 files changed, 0 insertions(+), 0 deletions(-) diff --git a/.github/stats.png b/.github/stats.png index 639035b6d2572ef2d336d074cefb04b3de6eba04..025c0d7f13d8e307c47d55572669ea2d40da277f 100644 GIT binary patch literal 1846 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 R(3}7O002ovPDHLkV1fZe3mgCd literal 9864 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 Hu0mjf{+104 delta 3435 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 By~_Xq diff --git a/arpspoof/stats.png b/arpspoof/stats.png index 6008cf8a902947ff60a3e971a30edb165a7c00f9..ba0e47181d5256cc5fa580bc9d4b535a590d38d2 100644 GIT binary patch delta 1155 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 diff --git a/autobrr/stats.png b/autobrr/stats.png index 7a095148a0b32f221c535fccbc2360179b99a6eb..4c8991924b0077daa0578a4987c73b71f113ff12 100644 GIT binary patch delta 1484 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 Q{D6SP-!>+-Mz<3F1Mi20fdBvi diff --git a/baikal/stats.png b/baikal/stats.png index 44ed9a49e9cb0c9d9f3b9c8320714b8800a705ac..88a64ad11c0cd1d642edf00cc534e1f25d54af01 100644 GIT binary patch delta 1569 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 diff --git a/battybirdnet-pi/stats.png b/battybirdnet-pi/stats.png index 4e7d2fa880d7531c5216dda29a511df1325df08d..08fa001d937d5c8211061c9faf7c8418aa32707e 100644 GIT binary patch delta 1628 zcmV-i2BZ0e9Q6#4872b&0019Did_Hz01{A4R7L;){{R30%7E#W0o3Hb^sqtST`SAR zks%j<1_?<-K~#9!?VXF(n;;N`8G`Ts%I%+oD2gav5-#7Io;E54Vc2Ea1vCZ#00000 z0000000000I0nsrYW6_Uq_d02HK>?$vy*gC6Y0|X@8_@AUw?o6gXeFb#C+~avkYj; zsw7>;6aALp$-U=4@|W*l^3Pr!!KVY2k*<+{XnCm~JAnBx{!Z$}|0C&;UZHv)rB%jr zJSuh1@>?TlD%zS-4{GiShb%z=00000000000P|&UmKM<|&{4bs)_aOZLpr2`9+sU% zNEfIJ`D=}qhMdmFrcNjL#yfOV4Z@A>EzE@U4i{!ZdWQ=$A-%(enMyqpq}R4E^RbG5 z-J}cBTU?l_dGNY;9ZbOXHm=Tl-Nq5oN=WW6IX!A__?F z!H^^1g7psRgjOLPLk z?Y5tFLaPm^c7M}i$aSRJ{cU&sW(P!y%((7bB6W26C>Hy z^mA-@TpxSHK94U#t3T&_OAojmQ@Bj$43b_p=ToNFRejEv9oWEFJm*tUUp3{G^<@VP zx#BsWi28#sJ9NVNm@46w#Utl`?BG9WG+0+X=bxcGF?-ATvO|lc+bPq3{Fh3+ePniy z#N19-P^s!yo`ixwxC&l$!(*3jf)ePl+IDA<1wLxWDx!AnddG^_qZ?4~!GwGJJ zx6w`Vx#VhlwZ0(-TZ6=qbK|v@q;~6zHNi@ zJi2~%-n$!e=C%1|^ZmSk6-0R*^K=_?i{?w-743dd&6h=a1*9h$>=#q716rmu%8Ms` zqrvvJ=e6ygMSOXbr})zEN#D_6JCe9N+I<)CH@Wm~JyPt)QMR32ZH%*a80;^mkR`|F zWpZ{qe3A4F@k|KR|6JTxLZtuwo~{bQi;brrP>az%^2PDg*_;4>IfmS2^P(|Q@g~3; zaDIRK7ouz@q%*2&!O2~#_a75#k~J&bP+qEfzl(G?KzWgd++D|nmbvb@$B*%? z?S8n}kSl#s%QsxkWHMdqJpqKbNxFsI-blwL?~L?P<4ll#oA2GC(kpb%oXP~X-kGGM z*8BUEHfp_5Lr&{|nOKCpV)efBlsO$fZXOh;-Vc(F7rkcdU57}IDR-S7W^{U-I{ywm zR6~1pzd&8!a}L08xi-sTf1RYuTWYws}Yc*-jxmc_Cf+Ny@xs77{EDzAtgY-~#Us6k#8{`{}WrGGfR zWu}*2FV0SXun7`O4li7m@j1?J@;toM@|KyuL$Ziy7D{9huZFZy4Q*8;onotqXcm$G zkPfZNL^`yYci%;K3sp{POdp2_rTcI2d~vCCidYfLYAjwNkwvZ5*y9+EnrZW+MU^t- z-jf2Y88k~zp-ePE%2bq;GGF3Zm@`>aT8*W(&XkQS5FCJY(1~vb0D$iupxyyXC;;jm al!br(h!W>W<@SOA0000<^TZO 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 XGniZA6y-(Mw+>jE+n9YYy>k0M-a`dw diff --git a/bazarr/stats.png b/bazarr/stats.png index 0eead7084ecbf2164375095818fcd69bad51f35c..ede68752b043e01c2caef21a6c725dbffa0247b0 100644 GIT binary patch delta 1400 zcmV-;1&8{K7?TT-872b&0019Did_Hz01{A4R7L;){{R30lmOGTOyS_Q^2>tiN0Myk zks%j<1t&>FK~#9!?VanAgCGn>3Bvoo^0r-jQ&6xXmz?j%&UTkF4o5;rf*OMmLI@#* z5JCtcgb+dqoi1SrfQ~dk7ny&`=N|edw7UFz*rQQ15F4h$F{LKXgZb z0DUA!j(s}NfsT0xy5{se&_{xfdDjJ9OnTWQ&~fC@Kx=yREE~`VhEA4E0d$EK?EqcV znogE&Z0~*Typv@cKg%X$*>L38vS}=$0J;W8j)V)|JJ1`HCAF%Lxtnn0^v!cWky_Pf z+b4f+a0ci-tml(EFP|Pd?m%#+A-!OKFVCN!e}IwLdo{VqeoX3ovwkeK3iPVh{5G|x zm)my0fji>Jy`O>r^lH}JSwGMEQdu@hdrT-k zJ?pSTuXXP`sfnre{rc$_nD@lUE{`?srXZ~<*FBq8hpAPU5O`~wx~*OJ-rY=3i@I4& z#y#)N4*eZqOpdQxMaF&m0Hdsb52$zL$mL|xnx$@evqK@|?NXmSr&dcLZ!AJB z9L<`%JH>F7%J(;2ITJS0J6rEx%AgJv&N;s{LifL{*niW0e%iP_%2oD%wCu>)=mdz5 z)sF>_xnF+(k6p}sH#~0v7ikhS5BGmKg%1R_Ig{)8SASVN=ikln?)Nq;{(C0i(gy-x z8l172L+;NSs3fZzzU|C-j~}@-%VzUN{>(adw|D!bPv0RPDRvojo9Q>78@Sq-$6ZhH zwo|LNiIXtzwe`K=c0I*^51mgp7ad@1CrlFDeQA0b-(}Bxp9UIX9ur!p_!G4c-A!Oo z2i-!Y8g!`y9p*J((N!nQ2J@;jy+)SJ!@TypRH%POZs@ z{1Kr)%`k3ZD@hNjaAIQ7|U7`0bg`m^E-S(1d z`vvtS!f?p&HcjozJ=B4YhPUlMt@x;4?x9s)zV>RLw}vboyg++nq8|_TZ!-HgdHruR zNNHbvd~&YeY`)ij;cMIW_3`sY3AX>dgp~Gs{l_~@YoBoaCiD86>ffY~f6RMdcVZS} zxW02@4bEvVrQ1v4_JyxMfBa+2|82(WTZ@m&KBQ#($NvhpFMs`I+h_3#rB+vKf~-ES zPC-b9WeBz3>p$mC4z;g+{l&*8+8_iyl3`yu2C}#&k;QFCvv5?FU*B!N*T2c^-(>b* z`udCaZ&LfuDxyGCSRkmQu46L@A!6?c^NuK?K$v&bmi_=ym=En(r|%B{000025Tn#6jlIn-M8pu%pavl_B{9fO*_YoCschNFPGw)SCQD?HBvG2o zVC=h?F=H&_oA-PF{Jy`Q=Q`K9&V8=?xu0|HB(4~NSEo2w001aDSXE6xz(B4xq^`D^ zf7U9o9VOHU@7W+OB+o=V^nMZZ1YO=6Zgy_;cT+TXO3GR#7V(LHVN(t`=(IxF9vm^w zYUw@k{dJ+2r;i9feeGiP$|3#UKIP1Z@k4}_Dm)&afydJfW&I!I5^V>_0dpDI`?p?W ztXP2O{c^!70PsMV!~^hwVg!iDwFq@U_qiuKmV<8%fQoj)0WsYsR;>sQKj1m^pDZx~ zU%S%H5EY1L?7vw8kxDmb89{+J8FyXt_LLHK7+-WmEF;vfi}u$__vXU1DPe|I3N| z)pGxFCO7{*i}%7yx7~UatJxlW&#Lg(M55F#n>S?0SP?SIueQxLUZT;zWpZLqifl46#hz^^JbBU z0F-1`t7UuRxRV@`RSUc1&@ZqONAdv|*WTSAatWR|&I%trQxjX7HQ(A>aw} zT4v#e?tl%4+Xkn`AlNJ~A&b;K<))`4O*NZvF+qS(d?q!)kon-xB0FsXX#S?{srX0? z01(aNnvXAofIRwW*QJIQAB&|?J_koQQ{7I3#AxAPN_4s~UM-n#lh!O!%TZifvX2tX~n z_WGx2p`--x8`CWL2H#f9c?1Y6MmwN_Z;G*YfRkq5Qu`FM?b)%SrJ0<4BQU^D9*GK8 z`PBA-t+u)Ph)7@(#eRP*k{IOJCiu{bSk2wXBjV1CDO!IBpiQgCYhL-CzT+NuGkK3q z-ZY?g-ew|z(jtMpuMsj|uXj0R;*pa;Iq=Ihpjx3dfHq23HQJ6Lf4|#jbLSO!bIEtauoWw%_v{zyA1F z;2I8Q);)rhYW`Y}2Gn>izw;9cDTv9Ds~m85FtkcF`jJ$a9X+GA=C_`GR2CnbYkf&N z38_{mX|l8Un&?~Om8K(pj^1zj(EySk8Z*nFW;aGGuiyXS-KgtBW1fT`MI_k^v{ znfEMPYML(ZKHQyhnlIS45}a20tZt7Gu>mSYCalf&?f{J`IBX=hA z&3UU-R|mt`z8s0ZE}}Ka<)Ts`J;x50YY*L}PlT?woY0oCDHk7II(FfEvG44=k=7=7Ov!-J*)9ud&5#)ag)_mcp|ts`sdlasab~=T+3(st zkIfJ>SroWO^E=p`wgIPGMDxp}5FOdN3n-ywx=0YMH6#G^+|5iOukC7Y3%HG%39S_z z5}@-ezl*w4QJKAz4$70GerCYN2($d{Y4H=Gj1#1Bqt-mhALxr4#f96+acmKMxlF8e zTGdX|p${LGX|7v)QBTVTEgZ_%&xHB6F<#TFUXSFopv7=`i7f;?ETz*x_+dm&MUJD@ z=Ip1{9FTg@%~*9Tm3|L&Qa>%3=FIwGCPg#Ep~JJ*HlvURYVSkhU>>Grher zzFIi%KAW0h3;5ru5LEIWTruEXVcMt!T_|bD7aVJmu$_gMI;{X?*B^;ml!|&KEvm!NMO@dW2=;5HYrWx0fY*ke@Ai&w{L?C#znyTbWY` zHH)O5DpK=mZv$H=ca}U)jOxP$cee-{I4M$PvDL?dCUipDTu3|kb7I9us+T4jxJ4m? znbQYx!A3ZSfsxShR8JTMR&`-@RNb<20l!4wdzvAyzVgy`HfRxaDq)hk36gosi8|2E zp3i&Z&msG1TM;SgVoJ<0%=3iu0d2y-P0zJSSf5)&_8L~-;;jl*-CoQMO?+8o#9Q@Q zW$U;NqQ|gtWxC?5?OT~6F2y*U1*oF9&iEa|wgl#I7(11@_J?U6Jh;Ax@*z}YZ8OKX z-3u9YYLDT>UHcs{$eU~_erG|7&^jYcat{IWDR0M}c{jN{@@izsZC@G|*sQrJ&^Ysv zbVhjET;$;0CRl&a;`*qCd2d2g(1cFc)Z0q@+b_F|CT)MufK(MhpHIEuma_GAu)Vv; zSoJHmKRPs)NZ00VcUrRhUFy#f4|n9gr)9Sm(V`GPe8r$Dr5nCnyVhmFskT^sHrcai zrmDvF=18>VMo49yjZL7JXf=$HjnbxEYkH!9eG%nf8rvU=L6jS7N-FlGE72eEckZl5P`N_mOo{o{0)41UQ#~RL( z+>K9Mx`=+NEQ^3bQsKa4T76>sm*Yw9^_asuhqb)!0KQwbTE0KrEFG?rWG`h;RRSxV z1(Nm;yaxW<0 zE%12KLg}z0JC!gqQ z7J9>2vp-hdqu#5GYCqa&JOt)E44RSUT{Zb5-uRNrKPKK7K}~Mx*@il-mY{Xa84E?t zRd3YrKGb1nyQftC+vXrbw618KTo|1AH#GE5LsYx){ycR^2-7$|h#I4+sv>Yv@-FcM znR+RWux!7~*N9)Z*ku~pHGccn{%r~`sZAp!Hy2l^s)=wL>zY8h?2D=*wxT>eL#2fZ zyzIDyPXR#w(CSGDaQMv{k2%JP4Up$gd5_tYTlmK!Dg0#t_)5!V#9uK0dDWxuF*kgf seD0ACFyC4bn+N~^00000 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 I*1{|0Ur$X&D*ylh diff --git a/binance-trading-bot/stats.png b/binance-trading-bot/stats.png index 67eb19eaefc851615c9cd315b32e82a213f1824b..ad7d5267359a522ed4d3c4b5ad3ba4ffe98f4e95 100644 GIT binary patch delta 1733 zcmV;$20HnM9Ni6&872b&0019Did_Hz01{A4R7L;){{R30lmXMqfa$YI;NZ6NwhSFu zks%j<260J5K~#9!?OoeqtRM^|0sjA&&)My^URG3)OG0K|y6uWo$BZEf;2Zz|00000 z0000000000003lxHb1Tp-2Q>i4kO%M*`&KN(j7=wNjkkPmR=mu=lA8)`-|nc%@?$9 zwm%<%b-9-Q(dl2d>F?9$^GeN^Lk^lP=Oed&`U@bL^dGutp><{GpYQ%2gwNCP$L?b3 zYtlixYH5(SNqPGIm;w{7c?p>dK#s%h&Vg0l{k=00000000000000tELpV* zLm@_CB53s;qXbOkEeNEWBYmB91nFinlnK%a(1Pp)WzvzOrgcnX8cFY}<3%+;6)G`* zn-=APbc2^$ zbU-?ZWjv+iY&Jul5iBCo=E(VTr;TBM>EGU^@*$gNe{lqZbT?H*E?!b@lyxfAe)*(_ zaO*Gz>EDq=rKCr`I}T@%J_+eJ&HTr`2kA4&yXTy6oA)4Hy(8y2lSON+Q`WbqlO0Hr z&%S>dM3DZQSfzu6%Skn?wwJkCXD-i?qg_H@9O;qEY}S^*7x-#|vuwWD5oeHpema5C ziA}hKa(lJ(RzD|-4iYZ3&$@`QbkFfgE)JHiFF51**=w0WdP!v#DI2HRb>*lYiKNki zGimBmMC3vZD>Y>56BJQIuH$(#NOxLhxcFLrw;fY2h{(x`y@z^KF-Sic#P8-g2#Cnl zl6G6BUJ{X$L%OdUQelvuO0CL&Aw5(!O)I8;9-PS|ofJ#EB~vH5OsGkn?BE+j%Z;R6 z)COmQZ!!f6q{}6}fwWuF_j){%ZfQ59?|F`#5YmHhH^tR>VWd<`_uSAN8S*aho$k5m zVA_PfQ|U18TM0--u>|zJB(<6>d?&>YoGpDXNUf%pmmVAm*h!b7zOvj+`J-6{_!bDu*O3N+9V*%M8VaFj+({$}%pNsO)jF z$qqh9+vI7!mwC~Gzzsko*k=*S5#Q5j_F&2;^eDe52^;>(hFE?vK|5(Tv;T|p@t&!p=& zEWLRcRz>+C&!p>rw`$~?TDp>wQ|?H3Yh526hE+3-g!?2^IuSl{SLLW^>JWD@@n~Sy zs#mq156@!a<)l}rkqgS^h1O4cyv+NBAzAyH%a2SFhHIYQ?C7#pbmShAu5u=DCEAA* zUOV%$NhS{VE1iSgr*M+ z&djs2$FKjr#g^O8F_H)$K>G9xH*FsUX>5;(y+=!%lsl|0<@zKI0a=zFIpTI3+e+KR z%%^eW=;o<{$Guh}?{u#S{_0dQK-$&F`(x7Mz*G{@YVp8x(r>U$J+nmfbwwj8XEvk* zTA*rIT|nf2ULSz^*F9JV>A>{bUg3=oXypB5DGEw$zKU1k4+r5BZdchj$?uG4xYl0|RQ|8!ZS_W|u2 zb-bvLf#tO-X|ovm?N&)gj<&A-y{GP|5xE1ps*m bq~ISE>;e&>2~eI100000NkvXXu0mjf7R^~Q literal 3590 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 diff --git a/birdnet-go-dev/stats.png b/birdnet-go-dev/stats.png index b5ba5ae5122c980c444da9dadb786851a1fa758d..299ef6936521fbf98ef85ea6edc31790ed273b21 100644 GIT binary patch delta 1189 zcmV;W1X}ye5yA$Xh$UkU!j|O_00000 z00000000000Dxp@@o)8UwXtalh9x~fx+l`5zrX)U)N_0KG<`eoxV0(hAJEhF{P$#A z(eJsQIN?YucR7BD91k4??YFWmS=b(r^mTkQe{llO_bm%C5jEZfH{@0+^-YpsLd z0000000000003c}!74y^6|m>$knVBR0@htW(*?%DC8XbPKfgb>+r557sNmAN<%Pc= zCnBCBNV`F8p2SMxmCtXs3mV?&!OuEX+1zO*) zrx$%jp!HpPdKq~~>wN`sX#EI*T(y>i*7p<0scMcSF7J?ZT;7+w6W%!s3a1PmQKB;_^c!QQ-3Q$PwPTN}@pPyOVc? zvC7Y&^`@hDwBFp%Dq2q1e&LXF4u_59zqP zn?R26&S@Zr);kU4(0b3$bhJK)FUe57e`i{sI<&eNjWJOK+>zF&53O4AbZ1(hF|;b9 z%emOs`qZJ-rM#P4t#>-v0j;MS7Oi)e z_m0+IK{|n)Nv*H4vIAN_QWa=_NH?kV1ac0wzW&M%xIFLaxV)#89SH9zN`TfA$f5O2 zc0lV}6$FNKBU;aRxz$hx`6s-qJ=x(AzBMoMkJgv-bn(h&RqK`CH3R9RX}!V)vmGFReJrhKJl&zz z(+%rT>ur|)M(Y`6L+c^ky~`u-4qcu=&S7{5=?=9X(j96&q&w7lNO!39knT|H>3esm z^~_pzsP%ZdL#=1lszaBjAh1K1Pc1ZLZ)FEZ;ax^aF-RX(>(h$|UMBBqW<0L7va~*V zXjLBz_km%M9LF)OC9u|i2QX3!9@ZfpnAdh5+fI4kddh3@g8tq#bT&~c!#cuPS*KQ^ z3y-iqaIexAuG9JwTJ_RtdB2ZS?B0Hqb%yc5FprPR zo;jVZ5OQdpXI$*mr`F1|mRg+qe-egLn!7wgpgxvg+dpeckbdBt}p73Y+1dx+(heLhlwyg42NP) z-SW1ZUAX9J1@z6pI&j%H0|21!9U$+36bgX6gTC+&bjA`~sNj7I00000NkvXXu0mjf D8Ng-P literal 2253 zcmai0Yc!M#7k($@R!EYLF{7`dix?#h#-N6xhUREQNjgPzbTT2A#wGU(xpQ(EGZoDz zA(i`UL~cXIB}rz6!Q>LJOY+hf&UF5N>-(|yv-jF-?e#osJ!`N1fMj<{L0(-R000FW zYfF0oKrBk?4A~8m{Cs`JNCI*c>kGaBp!oh*AkuXdkpLhYW@CAr9GEl1!=;RVQkA|! z%CA3XZz5l$YxHfClc@V{E!t-DM8}y@4Nv>C2}cgzi;tMwjfN9ubvC)FY_vOC+UYi5?m8TYkrZYvef2X0ARs%SxWXwIx@mWgNn7;R|{ zc5LJcx-*dhJvrREP8T2t+cp7}Bv&un=npim?qP(DoIHwIiqmkliKuQ~Fuxb>&h}JV#;)zciWq-24my>M19G2`GFsZ6`D)Uku834^We?(OPRrU02BCvsRbZguS9! z78tg&xF!^7)=jR9MCPnEr@h>k<~w$e%)TvN7xiV2#@Vf#Xw}INvWVtSW@Uavptl)i zVjA%GkE#Y-7F1JPM=8_PbUis z1ZD+PspR;QpP>JNxu8dh7?N3#-`arww6D>`Nby%HpC2e9Fy+G=@v|?sj#Wzk*vf9F zYUA6o?l6vQMejS%^W?F^3I&RWlHey zZ8@>RXJxkSb5Kfa9CgqbD=O19FdpfaQr#b18L(3P1udc%xG{DVlhJkKv{weH3-oHN zMH`VRO{YqwX|r2FR`*hCNF=0?V&pL6;zk~FSCNxS;g3*)A&!R}u9nmv^2TZL$MKX1O38!c_|nvJViU1# zgBOu`>;x>mGfowXU8*_!+1&4zF!$f3vOA!-7sHx`SFZh62pY=4TGdzzA)m;EF5F&U zwA(qsueaU)(RWDC{VbzFyp@OabXudh*6`V@vD5~z23}ZooZwp+6h{gAeqTC?8Vsm_ z_Y6dKf#F}$dwi8nRJKSI8p;QicPtlU4!>p7(S^fTQ8^wYr6#sHLp_PYX-_+p*4Sin zU&3zTVNXVzYFPtFti~qMUb|b{!qVGH$1ui|e2cx>e?(Pzen%Q>5CH492BB(YLon~c$17(UKRQ=W#29yvhaLw3JVjU!+mfHj;SV> zkCi0jw7Nh>@SQ^|H7s3~)vi)oIA(*396_b9w4P2oVQK8#?7l=dVD5Xtz6)Xg+y-s$ zNIP_(>0)SoE9%$;f2(s*GId8ouKFZ@E5UGx#3NMp0z6~{bMg$a#A_S$#tM$Y%v1xwZe;Y95ZM#8+n%7^C?Kmj;E2J>zPT$xX zeI_g22@iWYAJUYi`w>H=>NiYNgG_r5s}7uf&DFn~U9{j{7*S43ReQvbT*X!83N9jGs}sw3D!Q z=Bl91h0SQ%5{28|NjH0J-yn8JQRP)3l5*rv=0jQ7MtO9{Dx=ri$7S!v%FeW#7LE=2 zZk&)x{Md43k=Q}Kih%UCgJ884t=mx_GpjV%?+nPwnbjd>v9(aiXFVy)N2mb!zZC$P#LNZF*IfNXCNl3 zze@kmCL?xyG}F@IA}%vuQTK2Wip>09(5X}Y3mWzp{tNAV@Rj5?`c2kgC2mTKrpT}} z3#iw|6q9UgA=~9-5oK^e3W(jP@zK$MQSIR%B~Uy%Izl%)@2q{Z6S|a0tdx3bVxoo2 z*Htm)wuscA`VTXce2EdXdm553UN5m+otL#eWw`Wl(hZ?76Z{0Oti^hNb6N=CoH4CB zfvwMV&}U@9do}Kf_Rn8M0hbp0M$U@9wsrZ-(Dm8{iWYr!G_GdMRP!|OBP&MK{nci%BlEC=mp->fZ&aS8`L~X3X5u&= znm0K1QYp2Z`*bCpSfBk#*Wk$d0Kz40U z1$)&ZY)yaK*`pF)YgnO^9aaQ#gPz@fN5T0E$IT4CXP{O&$%~l41n>0BK~4Kfugf#es$&3!i!RRBcZm^&-$!o# t)}}~$8cm~qPQ@dvy-j>17W1svWOX^l-GBP{gycT~Y^>}oi%(pM_y>R7mD>OS diff --git a/birdnet-go/stats.png b/birdnet-go/stats.png index 52ba70745ee1dd7eb9ffc3180fd25f5c7b883110..671b66df2a1cb438b38289fcaded13e680164a45 100644 GIT binary patch delta 1469 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 delta 2447 zcmai0dpHvc8{bH|oK`vq$=pg898rkutgR^FV3@>?D5PB4I*Xahma^36gko4O(FG}# z%Qh|Mv%*kBVvLur=;wT6Z4CebP@`IM zy$3TQ>L9&5jw4gbmZp5~3#i7MBdPs*{=QTJsmHUoVO#z(KD~n5a}+L4*Gl7a+?+Yq zdby!as!jI++Sdnzo)vz2)Y&-sAY{l>Hy!_*nJFMqI`>rraND1*>2&)4QczhjvADR? zTr?3mb}^gg@1ni9oBNCvoMRE1e#bi_EeZIt^5Iv|zuh|ID=RB0zsXeQFgNbG^lK@i zm+vS1#?~0r<>-Hw7}GYr-2>%2pk{f;9%nNIp4pqsujILuz$TPXR1XK5@|wr)X8HA? zj|%RY6GOqqfsWXkV+DVSisn8N1=(}oXQimFl(Kiy9}^beYut4PxYhx%;}tEQhL5qs zSrnMtUxsw00vaU%h*NgM%&1Jrw0$&HW|Pg}XlK;shB(4+w!{E-S#g2?ldc`7%RiXG z65}Kqj~mjg)|!QP$xLsUmVR+GYt79F|X3NaZh~V@; z+2Sj|&GoOvr-#v2eNf z0~SlLl8-MP4mVfqGW4J zk}l4oS)nX~dx2`ro<|b;KFvIybWbuWzo*N6JF6_(9^2)x;Pf~uDSzM?~-4QS@a>!D-jnJ_fdC) zYP)xHFP9MX7#)inQ$tmMptI{ zHBQl5*_ZAIp*Ib=o!5xuz5quP}Hqm3pB)ylK6frgYiBW?0(n? zwolz-<6_R^#OnFN#_9_B_Xk-Jwky~>JkSmnIp?>uimDB(qsaGWLG}x2Lx06}RP8!J z$6hDs`PMD^{O%vOL$qlK%?AaN(qh>W-j8@)Q&yow)LiG6j6`{O&Zsu7dlf}*w&EeC zOhhJ*%65Ua1TuooJZ`-O`S1hRJ$XMDeVVCd_%sYvJ;}l5H619yFf~W8+5vrdkzju= z!->(c632gehEl;g=w%3k3+N%2Xy{1lgfzIvQ!wK033`Yp zk*T%A%RqF76s=A^dOJ3_m(O?x<@@LSkA6B$Z|+Mo$VhSYLIMplqs*B5Z&%EZnO~O86DR^5)v~g4WDc!-!;Er=f z-`ZpN4r-lw!w_T=EBSBj^eAoLXn|JYmY z=p3_0VB1iA`K-#uI__*S(9f`=EeOt05vK-yrxkG|&szdCP~uv?wiCeku< z*)gU2oL?lqNs&D9wjDf^yc*?T!<$Z777@MhHhCQ>cZ&O7-L2st!%rM6h!<)dbaYsi zWSci6zFFh8C!ISdmEP!yxhCwdSUf#zY{MI0EGZ-Ryzd#XC!cK!?w~IJIoQtYnI8Lm zLCDz5Syu`+rrbCCBk^w|tWcbfs&$HO-n#e*YW8FEzWE#lJoN>;%toJw_#SdhN<6Qg z2t}Jf@+jQ=^CM!DUclv9PM@Dkt8hn%*|Pie%aNbR5))*IG+Lp3GFEXjL>3s@0u~AQ z$;yfXW`6^Rx8BCl$hayFhmvD$A(xwQY@57uYv}_XWKY$=A@lkoCZ1}9e`-&b=5}m2 zh_<*!$w#1F=bOqGJu8?cnS_T-vLaiEa*X1Iy5NY1_` z-y5zExPV`ov)};ZT7GODWzSy)#Jx(T{!U~Km{y+JWe?aI7LK}Tp#;`_S6>J=2=SOy ok;W~60(;SJ*s&turA`$vrrHRpIoEMf{dxhsPWpK?oQS;fAA6$xegFUf diff --git a/birdnet-pi/stats.png b/birdnet-pi/stats.png index fe4824f7d2c535a88f0c9219a5815049b928b05c..3b28ac65178c83c73a7914799beb08a592373fcc 100644 GIT binary patch delta 1884 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 diff --git a/birdnet-pipy/stats.png b/birdnet-pipy/stats.png index 6e56b7fd0049de5b12695449f9be27c009fa3cbe..386b385b13c7265073ef130b97f3a14170132096 100644 GIT binary patch delta 1303 zcmV+y1?c+H6tfDD86yJ#0019Did_Hz01r@1R7L;){{R30zGLK+0n^{I^7Qo*HjyD0 ze+0@&L_t(|+U=duwxb{nMH4Uo|IM>Ht+pyE5>z1jJj~Q(bFtk`2mw(9A%qY@2qAVd#~8e5AP%0$=$~@v(EkdK0Mu3!Z+gQJ3$B` zgb+dqA%u`TSgDxGlE_KvayIjT9MvR&?hm>O(B1XvvVyLtEuEc?)cMR~iOEL2-Oz6R z)JHDTwqCQ|4As0s6X*_CXae2g3QeFpT%oBYI((p4vqJN4Q_0X3=sm8`)ZL;hf6%*J zp{XSXbU<%?z(6AB8oJV_*RL=PuQY84rLuR~oN(b5&q`qb4R74xa}?}-dSpI*8cG8F zN#Y~y^@(82-c_TsY(Rh7#rGU~7z%gCK(7G!Q3wxzwnQ!!I@Buxp1kVqpgy=R9+Al1 z&HI(6l>wfRy)$I1Kri4S$Zg|ve~L2|ARmN^oVRXV?k>X;-k6VUkI3oM9U|Y$-cQ`~1oW1WpIt=pQ>bH>tySbXydt|20KFyT zXBSZ{*3SUFl){b3bMA1#(=TxIL8KPw(X%n=P`5?)aQoIlXHSyIHQSj}f06TwoT*iZ z$d8IMK<_7IPn%E2)4NL9>C;^^2l`{7JxHa{3Ge;6If>j;Yg~iW2^~+rDrFynuoDGw zy?*GFVVkM47n@qu^%NY?Yp%bQnObE&y=mlGQ>)5+deg{r?pkF&J!^{?sq0ZZByyJz z(t@|7OS&F}4S^Y)Xb-^e>iuBmEufKi8s)5 z(=fldy+LoUa0YbO18bnue*+!=2705jos~e>mZ3vDcP9#M6FOQ4rLxo@G<1Yd)QzUT{-_&Fx1%i{xtXbb|U_;k}9> z8xv-pDsoiQT|vjWe?39}ENp_d8|WnGo}lC3-k{^(b=}K$J#>gW+g*xsi#JcFhF}ofHMmFG$m&$gXCwK{{2 z+7g?`A?vd~Q1jhA)Pat=kL{)&AGOOpx>=-d?K7pvBmb4Tf2Npc8``frV*Kk3mwn`i z+SY_STlDwOEDn>*fBKMZ^K3)=Rc|zH{K)xjOY+Cg{MKTBaCX(>j-m0xtpr^lEuYhAW5LO8ak%^A%QBA{uK!MYv;SYES=*Y9wk?*n zO<%VjU3w&uY14U9fA*&rGgnD4j~HrVh_GI@t!bNi_V-of(&u{tFH-~EI7~6u6!VRC zC9U14wIo{Gnzot8jpfp|8L}}2hoFv})MgMu)ZP){9kGN05#CW<`Ul|g4ycYKMUMag N002ovPDHLkV1l!(o!9^X literal 2642 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 diff --git a/browser_chromium/stats.png b/browser_chromium/stats.png index bb1f61657f01eef5265fbd73b3149dfa51c1b6a8..d1db6a38ee4255cc93b7f318b62af142580ca3cd 100644 GIT binary patch delta 1383 zcmV-t1(^Ev7lI3r872b&0019Did_Hz01{A4R7L;){{R30lmXM>xAU_};L3pMyQ(w$ zks%j<1r|v}K~#9!?VXL1qaYB3>7eib%D0!xWle+x1Qdp^tF|g;Yl7O&FM~J-00000 z00000000000Mv#uz6GX92X+aU?teeb>wb9u)8o_qYw=VVRPtYLALKtiyc`0Hq;Ed` zk}gQMYTlou|2OJxWAlaA2LJ#7000000001g?z(y<)v1}PmCm`Bf+eu8=a4?*w1gmi zN}nDeU0^KK2;_88qmr)ckGkrTtBft$%jWCWg!Bo!H6eY%ZcRv^uv=3#96qFX)2(@n zBAIkSy2WlyeJr|aUxt08d4hDC;o&>!+sE#;IKzE3oD=-hbV#?X>3g647F|HPHPSw1b1$Qjjik+KoULHZPd9HdVe$YI_g9nvxHkWL^6Y>=*y>XWCN zC0+YGUE87@W!PB)IXOt5&!?m5vymP*@33xW!ewvW3FIiwK)SW)J!8!iq}y$xfOINy zkWLc?uwmZu=|t}=c9?K#RV;Rxv<%CCVu#75R-bAP=~uw7%X1CtvierV8HFaR8PHjuHe><*Idk?%9^6^SBQ?+-$r8#;R{c_<`@Q>fXsr~)ON^vHi?St(7 zJ_SW~Hp%XM9AP~|`+TIAu^pqPF84cY?mp4pIFK8f^vZ09x%cg?dHlMX266*`lm5f_ z8Gg9%!8#V6t!ur;NE@2oRKLFsn!{f~Jf3@Tc76IKY)4bT@M+Y_yl)Np8m3+9t~I{f z)bLh2^v`tbIa8}6^u7C~Z64Jr^4xmn)N0qH_ov^TvTkCrLz7&2FyuV#S*up%Tz`G< zewmx?{9rDNu5JHBAA#J=2ED+4z{^z#?S+c>pz7ZEVh2>bBySsWu>&ez7|RW}*ukUX z(OYw~S%zI+|&dv_cZA4Bl z!~V_C@a5I)`v^NbcrvuQ_C0TB2VJq)0lQw?zUSrXI)Aalie0Z=mCN0K+2QQP4kT$U zoO<6cC4llK_Py(h+zk@j*!PYXJHUCPo0juJ;B!e|;k;GS*6Vya5nMy3-ltEe%-+(HLwjZ-$tF>RfC{tB1&Ezp!>8awrTO>a&*0bFaR-XH03-rT9zAzdVD137hN`t-(& z9Z1wpaq6mJ14N=WlvDqI^d<_OOFD_#Sx#N9!fFRqQF9Wt)0}z@E-R3}qULV4ogEgu z`DD8)ds&rrqJ~@7Y^4W?rBx&=J&Xjr2DO(%T;e5WWwBdY4O$Tg$r40rO%hJeY%L4c-go+X=O<7g;jLPMPrxV?r*0a(>Xm~ zEcldrJN)?Y9TE=-?tdqJ*!!n6>9V1NW4n^Ei*C2Row~yBdskF9Q*Qp=z_fBw delta 3047 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 p^trc=vIGDGPHnl}v diff --git a/browserless_chrome/stats.png b/browserless_chrome/stats.png index 6228c4904d0d01d5b5abbb41fa9bdb1727619e46..d3097151c50ccf4d09f934adc560487d6d090ec7 100644 GIT binary patch delta 1589 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 hdq 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 diff --git a/changedetection.io/stats.png b/changedetection.io/stats.png index 05f33d4d870238821dff4b5a26d98f84005467c7..ee4e61184c90c890f779254f46b2ae3f6b77c358 100644 GIT binary patch delta 1523 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 Cy)(D~ diff --git a/claude_desktop/stats.png b/claude_desktop/stats.png index 9e35a055a2b609f058d5e42c7012cc82971b6a46..d1ad46798ddbf6f193a7e49bd74f24b61ca2eab5 100644 GIT binary patch delta 1218 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 UTA10!?tc$hTi9N#HAg=9H?bNPrvLx| diff --git a/codex/stats.png b/codex/stats.png index 01eba5cbcd9461d4b4bbe7a9b81e3d055d3f34ec..1cbf4e0355b7eb7d1d9c8f64d5196f3ecd1bf61e 100644 GIT binary patch delta 1550 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 diff --git a/collabora/stats.png b/collabora/stats.png index 5e9eda3a844aec67858a056d413dffc0d1758b60..34b91d3677689d434b3d86acd60c671273b40b14 100644 GIT binary patch delta 1430 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 diff --git a/comixed/stats.png b/comixed/stats.png index 4a836cbc691eb843343c7428f66efab22e60c455..6215f45d504adff0244fbd42faebf3e846d24fed 100644 GIT binary patch delta 1288 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 diff --git a/elasticsearch/stats.png b/elasticsearch/stats.png index d108303cc03b22ba9bf01fb43904d4caa17052f7..029c1889a000decefba73bec1038e7b8adaa7236 100644 GIT binary patch delta 1675 zcmV;626Xwi8>9`8872b&0019Did_Hz01{A4R7L;){{R30l>*eXOyS_Q^2>tiW`}|> zks%j<1~^GXK~#9!?Oltu;vftp0sjA&cduG)Yg-BB6*6=7xK@!%nI?oJfO7x<00000 z0000000000002+~MBB^N>(#H&ak^R0VH2e57IJ#Lqvy-xjib$HpG$fdCIanBMf}O; z>)+=QSUy|mb`QRn|7l$S&^ela7^mmk4W~qZTjm`|*UtJ|fxEZHKGgP0k@wF)IsgCw z00000000000N@(Nq;@ZW0e|)4j9xs|!2FW_WE!N~BK;kJ0O`iY^dr&<&;oHZ^3;%{ zTbW9_ikoV@L+027xtSo{U~VQzH<+6V(hcTj(q)@Ky0+X*K1DL=1kz{B&7{i*5u_V` zFdc8{caS~<>Bpt1lye3cQquQhI?>A3{C2~lH}#WFXCHy|smF9D3b>#*Cy?}Sug@yp zauj7lcWU(ZC(J8pA8Lc7PiDx$BWKW%n{=KYqW^PD`T)|ckRI5_2i?IlNVlQhyHD>8S_3Ypqqn*FI*GniOnTsq#{pxyYSJ%9?ifM(XJwj9(n*!sZdcSvltfW>En7d2 zjP+67f=BN6q|Df4U6w?llJt}*8H4nxR=9AA>b7OdP4AK8qQwwe)j)bGnWjvCxw#Fw zkSxHaOu4B;tCCm>gY;$FAl0OcA}N+kIdVS(YUleW4DE&u9IA}|Cdc&C#cZTjwOcdg zD0j2a!AX|~$qkuuazjpoq)S!1G5sz# zjJ}&%>@Y0pk&9?%BcZk_#`MUsaiWc-#STMymk14O~Gi4Tw5roa``)A?JP9OnIDt?9iU{(u27r zU#wD(T;yt6*nlrqbh5)Jqz8@ztc0>OPw!84# zU7gQ>TgLkIwkgnEGa8QncsZrs z>FJh7+1hR%*g0YCJ2k7UQtvaYXDwB3M|$@pmQ507B@u6~)N-~TX%|`z{c{w<;#I9D z;?19Ma=G!A22r+uaSl8VzD0UdBMY8#4uA=U% zR@cw#1J)`3HCYY!9fNnplWtX2-?gb!)_qlT=jKL3>moFNq-#^DHFvD={&!iZy(vLO z(!sdMv?;s1S-yE-0n(q0*R>NXTcHhF6IX`LHQUtoWQPsufELVg7#rYvu5JXhZ$|^x zK{_zKZZ9z60~&chAM0r|S6e?Iv^Ve$$~$*@DXpHat4k>Uv+)-Nj;h}k|JnFzT_bJ$ zg<<|lfZj}h+cuZ$$K|m6x*_y+BZBH*Y4~T=B^6I-ypuKF2^wFm_IEEP_Ppe9^<}%M z<0>7TOqv99U)Ak8XseS)_-^SOg{gA0zYe~P1v+vD=eandU8_&^Mf&JxS z@zd(pY52*tyVTm7G`?2tZ-Gv%J|~F+z`o!BSO--5W&i+y?;U`82arMmK)nN_;2%MH V5cI}uIaL4v002ovPDHLkV1h)pPsIQL literal 3511 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 n2qALs2=|UyLV<-}jzhFWX!1llf5w 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 P00000NkvXXu0mjfd}qF= literal 2879 zcmaJ@c{mhW8$V--N=hlBAxlMtY}rPpq`2A26xq|@TC&XC3swGV9Ri7c|%bx4+PIO{WD^G-0K8sL^8;>4A}2gVpAJmV zCujk|i2t1`Dk^da2OWASo?wpn(eigiMG2?tcI#NtOyt@%$USL{`}?Az^lei|a_Lf? zUxgo`)NNZeF30344``8CXUSB+P{7Gf{=X#PA=VdvZd%`Cp6%2H!I!!cuxMu=R&v3nis4u|0Jw8Cj%{Ngj-&P2SywdB z524E9Y>dpB7a%~I)W3+D{7CQcqX-thR3;FvmtSVg3%nNl6*8a0TmnU7`uXL9KO>Wn zCAyCIf5pf)6eS;>mcAIN?SC+>dgs-j=Q#PO+jWUj|B^-RVrq9UTpUGBW z_(WZ`;X3y=6jbDh$|<|()(^=n6T|`NP#H$o)FxTdT*Q>Jv_MO5*67R!>qHcze~1&n z7CfmIDkd*26+!UYp}SOzq!sx|MujS9>%kiqkaQm!UTwbjwi^l@ym8@0VIEu*ROuHd(VC3C7;IaLbw^lJA8@SHMlN4t<;}3z1r$~w&QwvN- zs3IWQ@VaT^IVe!d%TSNLQVik>GkcU)6z19PiS@rjZR6g&sziFQuq4g_VBSQykJ_6` z3m$M=v9=>~_wQ>xi6qE*=!+ajB>HQB6>5*L{R9GLza0z1BO+@ueylf7@<9Mv>77T& za$1y=il_^1*_C|r&H`w}8_xSu?DiJV{bK(@7RM&?LQN3@m;-&u_mivmh50~ZOw;x# zmR-1_F{y#=WBCFOct~ybk^j2sXc0S^B812|do;;ev&kU$QeE zWKQhueVC8pd2%~iJ(V#+?QLStPzIurH-4An$ywO zHBYrez2%B#?$@h1A6cF+TEWJxCwnu_3@}MiV=R_8 z%8i7_`B&^stB)Qg2zS~z<^1JmHsp+n`>-ytPMn+D{fAKc#gucRVB88pZIqZP))4wi zS-us)Vp*A(RNGn8#Rjm?<=D^d{Gq*nomb+|+8Z_sMUFO6IsTqiOU(JT@jKAzCW;NO zK(TK=YUtWkjXZ%P{&SP>VhNxTt4hkf7Ku`kxXC)YB3I*O|&$-LI6mD?@{rP1}4=(tB3T=C5@svDh7P z7-t(Mb^XLh5)E$~Gen!t+Vmvf82)WdU(e%Wq{X|Um%t-a%P;bKh? zi&6H|bAROE$))%eWd5hnK>eorbVAmd*}l1~l$tpnHG@E5rmCe=uMbvh`Rd@4mA#DD zLS>H>aDnqkx0JF+cG~;hYBbye(oNRNW{e_mal1>#A^#I3>ArDyXPQ!&;3}$|KP_}d zdG;t0Lt`tffyeQ`9U+T1q^qotyXp?&+-zrw_vL^z* zVfUyeRS1oUtuH+Hbo0-Q)RPqj$t#mRlZh1#g7_bAjaJME0SR~y$*99KYQ!wUO_WL4 zMTLxj2OhIE>z39g^?jurzo|!sz5u7h$~D z$~3U`oAx{ZqNVVl`I9<<+6mYIGpsD7NbyN;T~$G{Ef43$zJXbKUWv_+*63B8jWm6F z{EY9r-ge)zcXiP^E{%s1u!b5=KJ9C>LJ8_8xZAa3!H`a~aDA@9NuKv!X`?xFgY%G7 zUcbFljbAIe!n63F$wcvqW|nwmo%0kj{m3cv5H~X(^t&3PtX;P`M*98Z)R-q$;1=o; zF^c5wQLZ;rVz2FO5t<%0A~OJ)cJNBmjuON_9lRbt_SqeLGb5^{Vrt3@lDV&T9J23I z&ph2b-~g43S*Of)gz%rgiB6cXxB9BdKjLTpU_19E_DI?u`yZFo#M_sFLt5ft)^{aT zeXKzSoowNEF)ZmBeR5#Yetj^H)AVIiCe}7`m`DrSbz?D{^W-hLvVCRw4Go{vA_x1v z0GXH1Z~QTWRydRfh12!vmzA`FIa)k}|H%863<(xw2e3=CN10!I1p&xh9b%s_B)H_q zC5+#xQ{epF7jLlZb`M}+`ggA#2#%CH#|g+W)~3&GiBzJ*n8z9Ljo?NF?ABrx87WB9 zUr|5tZ&$W;Wmt&1C!XMd!Z+B!Ru42Knmgx|a8>t(-uWo3cwI~@Qb=OzFgoB4?ex}G>Z)WT z!&qY4Di5gUKh0xQ&{BAU(W`G2deiK5CY7gLco$bF`lNXDga~ zWsQ+m6?LukZbQmiYbz`>4rgcVBcPrMT3c7-4Q)#@PWMiWnvUoB{r+A_?1BrkV%&F> zE{TLC+PVvL=j!ue1e7ujJj)~Q3L`?z*cY*hgRKbJl~K^@`~W7|&p4cn+quMFxkVE3 zFAEsHLCF!#+L$z8^kZsF1x(a3ecE+lzrj`tBJxE|v`$Vg#I*Vg`7kyv{oI_r80e{+ zHip#tRmnuHINkG7m~Vi%_)OyMjVWbSu^?OrZAnVZv9jlNcfT*kIq@Z%;V)B6r~5M- z4yfv$-HKSUMZ=5-jCpp?sskf%LyXqy{D(rwFYwl0&uZvY4oxq3YRXF}N5N+;9s=S- z`YL!qoWK~g=r=cR5Es?dqtq#cpo2Im5d~nH-9&VhuFwHUXJi#$8Wf=V`_SUhb4P$a h-jdkIHV((`abf6M8@X=3iaikn13ly0rMK)u{{zT)k8}V4 diff --git a/enedisgateway2mqtt/stats.png b/enedisgateway2mqtt/stats.png index 54dd053dc258d24b1f597ddf6b61a353b6afdc7c..50aac57e7bf226cd90f125aef66b47fb34254fc4 100644 GIT binary patch delta 1596 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 RA=Ur@002ovPDHLkV1iQx?PCA{ diff --git a/enedisgateway2mqtt_dev/stats.png b/enedisgateway2mqtt_dev/stats.png index 58346e428e975d985513199aa7d4b65c6b427659..b3ccbe1b140c1b55c8f245bc349d4059a1ac423a 100644 GIT binary patch delta 1684 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 gK7b6z5qEyfXGc376b3EchB$m)WNuj~0T| zDx`mF68D7n9>_bS4V_(np82g?uq&8_$WOPahVG zE8;6>%@d@naoh_gQEUQrWZ85&ab`H$C>54k^>`4^f{255sDDEXITxjXa#l6IP zKO!C06^VPCu9F{e~SI&+!klqcJM-5*>OCMC+>C*>;U0JoN zNS3X8?ib*QonyX zW7vs8E#bdrw!OF)@kJQ6(!q$mV1-^-f`rLy7Ki#SHP|9Mq5mQ z{+9QaRmS>Q8twv3aOQj7+hy7pXPbY;Raors_k;2h+O1nm)BWCw$aNs=(GtsC1;VhJ zDEG9Z^aQ-wK^NuQ^lR}6c(a2x%I{TX-s~_Y<-FOU=OG$zb}*v{*n4T|U+dF9uF7-v z*t(b*0_=VC>E`N8D!Fr7$+BLXXVQhPuSWmdn#`ZCPd|xZ_1;k~N*>JenKOU)kskGW zdv%F*5nj0ch{#QoDAr`wxVsKsAK|5o9m19_f8_){J9rD>^>1s<-4OT|M{c?91btiQ zUtC0m&^7NPQuM>szKauwBv|qPQ z=7SAGy0aCnHJ`i53GagRB58jw;c#L(?~QcpnvIwvVH;X^Po%qML$A}k41{O!CHIqF zEA5vC+Yp|WKb4zFw~qSnt))k|{%#P4b(ZSal2326^>=e=2lsZz4M<1YyPYFvE~ZwI z_R+I!Vruj0NPDOG^vL!juSs&nEgflBDDRby0n$EQL~cderz71V?X!Q8Zk4PCfb?dC z*ayA&WTZp+bfiPM?zL>$h6+|}LweiYr7Rik*;+cXKE$fk>xCfe!#Q%PEZc&t54X|K z_D3PBGLF1gkWN-btM@L&r2APFsqSW^x~Hlyq5j>4(t$xddn#A8Uw|&Kc^s&H*9TDF z-NQPhgWcUTUet39vj{R7|#INCPV&doUEjA^F zMdqI283hTBk*GmfQPC0-H*xslY`L(qWp~_*FyBIU7T&XzHrOw%I68+PU0qOoZyeIZuq8~d7 zN-)X$@W0xXk$t>>fQWA(DT7oA7jEK|z4L*%>^2ts9JcxRUeo&fmG~dUFG3;)zt?_t zjt?Ini_aR%li$s!6-4hNV)5=^w!a3~=pFAJATQ2NiwF%wOsa&`O~?UziPWkX6AFa! zA4c(;#9njWq?~_>($3(ZrF(@Qv~**_5)xM#YDM}^&+jsQhJ$)YR#dtsGs(CV);;tL z{H;Z!?ne*^Oc{s-oO$Q?v^}o~ualSLRVFNc%aGudp_6rR22)cH7Y(w=IB?b(vXO!V tuns1P%>V$1y#wSOFogmj@1QUI15C^kEp$RXSO5S307(Z$PDHLkV1gcO8p8kp literal 3392 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 J_4;?7{STaSkL&;d diff --git a/epicgamesfree/stats.png b/epicgamesfree/stats.png index 67dffd0230dbd5ece0d421084513f155e42482a8..08010222c7151bd0840d23f4737c52fe2ee387c6 100644 GIT binary patch delta 1606 zcmV-M2D$mU8{Z6&86yJ#0019Did_Hz01r@1R7L;){{R30l?2qjW98qn@)nt=xRD_j ze+BkQL_t(|+U=c-lB6IEMG5f#-#j(_u+;_xJ1CEHt9Eu~o1t8f2_XbD1|ftHLI@#* z5JCtcgb-4cs5C*tJr+yoYrRf4y_+vO>M#FK>4)Z}bcFO=C1d*bYmC5JCtc zgb+dqnbwmTOXiC8#(5T|w(AmT9!m%MRM4?>pl_G0P#-E?jf@9!qFNaK%cNSQ}p}^&>N`Dv{7Y4my$Fr(C@6xv`Uu#W$N;I9z*kVe<a*T9z(SmWJit-zHlcKxRJ=x@lOXCvT0~n9h`~ z7wArFo?f~f!@cigNGBsV$dIlEUC79d7{?uCQC;9U6>BZi?(1EARrGRr~merp2?uA7ZV)nZ*e}H~hE!5)G zZRH&<>5LqBF0GJw*?;+veqw1=3~AUlGVAv2kY2d7x@6=D~j;MMq5aqgvo9MB8uTYjhR?Zt=I z1p_&tAI{S>$7kzrJE<@mx-gg<#eFE1qPS8}RKuPb%uf%|)?9xkDaje7!ThAZuI1c0 zJWwsm?zDFrI&W@)PDUotPb6oi3gk4MdZw{kbK|R_N?#KqIQ4U-lPWbf zrq-JsT893fN}ZzgfBNOU>Q04e~)Ua=V+A z3%;)RF5VS!-Nlr>*`Z13!E%*D@U0LxZN1}Dk`aG1(R+N#8=Y%anS>4UVpmE0Yb(i_ zqjHt+DObHo*btT;cJE@^NyBDEKJOv(qL6%yS2zb}at%Pge=OLY47#+NhIN>%ei~My zg^?`;av1qYHF7><=*6#(m7Mv^zhb#Ek6#}PdSL$bl@*8hP|$JO(?RzjZyI`y=-q+5 zY3LOSBfVv$ZaX8VpN7TETY)agl)NHzhncqmJ&~G;S-KFjcbZEX z%)ZJ7^vPD)jG5|Cf|=5=2YVo9Jza{7oB=wycQop*RiI<(K%ZdOD$u776hM<2KMyFCqXCb5ukvQD zwthflAK(Sr8x#Gpw0lW+m(l$2;u8%*-S3(oUVOD%Q+n|xxqngCzF)S#{QOJ~+OID} zzWyTx-M{KIW8Gyn&$xI~cJZd*;;Z$(+{Mg0e|X5;zAGap{Nt*sF1vkkbE(+;d7@rX z_tMhEf1Bd=Y38e~>VY2vX9(xDFK_<%s7~`MF1}jxVp1k!tMd9l==k#^+o{0O^A>8J z=w7x@Xio3@&+onXdc6lpr7bZt473_^(9JHovqN+=NS7#+2uKRd(_gVnctA^-pY07*qoM6N<$ Ef;W&j5C8xG literal 3513 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 literal 3505 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 B@B9D& diff --git a/fireflyiii/stats.png b/fireflyiii/stats.png index 9320da7e3507fa880d93a29a4dc0efaf84e4bc51..a89721b28d0ef674d3fa74ab8b2d62e8dc511fe0 100644 GIT binary patch delta 1482 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 diff --git a/fireflyiii_data_importer/stats.png b/fireflyiii_data_importer/stats.png index a0fec3156031638bcc06973702931066f850940a..789a22e68a903ff53fba905bb2b1b737aa39b044 100644 GIT binary patch delta 1728 zcmV;x20!`m9oP+!872b&0019Did_Hz01{A4R7L;){{R30l?2q`xbw73;mUyN2mJ!B zks%j<25d=0K~#9!?VXE~gCGn=3CREd@;=)7sGvmUrRUDh&a|bB^^)WgA{YYz00000 z0000000000Y(mC=%lAYAP2}r)>#wd}@4XLda4wPeBw?^9$b|IP3|&U1C%R?)n?4ws zlmD;${*(6y;~02-Vfx_R^VdsIlXLmF?H5yjX5?`qJ>cF)D#r$5mLE-Qzj}VRlg~>~ z+tNqYL>BLT>@z^R%$b$B5BQKSG7SzhjRY8P#=Vc!h|J#m_<+T~DeOCJopP(TogL<$jv8vpX_$>%aOE(jQoT3F!~4zJ&A#R$q$BeaSK{hov`HeQBde zCSBI*T>=9_sJ`r~`cgJ0XtFl_Sz3;A!G@|Y?M2~uMfyBsL3&egHk$^MMOtoaRD;5# z52u{aN}mQ(4+y!o;QdwVohe&47~ExlF&)x-fpu4@_taPo>Geq`BZqiD?%pN7u7r^5 zR=n>Cxj;rPSVX~H?@7F?NEZX?cM$I?_x@Q4fb_n_yFMcqu94%m_axp$H6##ncM$J! zzJz)DUB$ajy+isf#5>8E2a0z{f1r5Z=1T&yj~cn&#k)2+W9GGbklv|y-%#&=A@NR) z+#STbwupinxf_Ug6<>=weIX-PBY6M9ofhw^A_}2Ku7Ro9;7^KovtTXCS?e+4xeqDMLCLxju8POH;Sk@+En;9|314<8$Lyd-t8>j3jO} z1SN%2t#hKav-HjN^hgl}q_?ntkT#p8X(w!IzOeL0GOd$&JDXL5ZR{flE2Y=b>QcV|0*uguKee=L+56c3iyW!}MdU)OA#Y?MV%9Trh+23gO=f0qQ za0NF64sR}1s9b6s-NRsz?z#6h+zaw$%BAdF#yFgNxvjtJ6;UjI=->^`y;@8!Mf&&P z_5;qn1nHUsUL=2}*&3XCAxp1BdMJn|{`fz=KgZy3?&mXd1yNl!6z7VlOB!VTQl}QR{d^7c=q8;ZPM$U>|pD~(G|IBy>KSpcu59d!K-CGY84XgJIOREmbTOnN{TL1FOna4l3)DG#v zM;&sI&J&6)S$a4Pdo}3@xVB=t6gYMh&b!FST`A-ooHu8G>A9a}^GLYXNYDP%>cC9x zaik;LpXc5Q=N+YC14VKI=XWRFtcv6W&hKyO=She2?pE34Ea`CGpL<`CE^vO^jNEDy zl4BzW&b!LJU*awX=I2c(XL6A4$-_O)(jEEsrY$|oQ>z5@o(m(7P1)eQdH0^U%bdXZ zecb!?q=V*v)w^UOo%ZdvmsH;`pf7M38!()k`}A-R>yQp^@7qsBe9$lN!6z6cu&-SB zB<4VSW1=q)_HUH^8(se!4N}@yzdxGmH{qw6WbXB4`L)+)veSNk2`TOO`j2;*);{6- zjq>`N>ffZ_|CoATcVfQo;dJU6&DZ|_ zvyAQYUw_{AD!w8+MlNH5tX{6_s6^ozLhbkZ*No&)``Xu^{r*H7gh-F9uzw2!`MM^N z;Nh&H25Ig0`Zvn{jk5pT*Pp$AliI(khyqYy0bm_;otpswkb4KXcR&dRz`cXE@B{ge W5`a?=6b*R*0000nB0TgO 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 YdNVuqz0AQCc25gfnBFw0H1dr9Ka_H@-T(jq diff --git a/fireflyiii_fints_importer/stats.png b/fireflyiii_fints_importer/stats.png index fe823a155ed22b4574dd0953e775cdfc16fc6385..6380af0d3cd4dc6825c8692704398922ff980b8f 100644 GIT binary patch delta 1813 zcmV+w2kQ8{AgvCN872b&0019Did_Hz01{A4R7L;){{R30l>^kYOyT0X^UH(k$u>O> zks%j<2Ej>0K~#9!?Oh3y;~)$~!v6o4H#<3efsMGt(Op}!H3?=C8XZUii~#@u00000 z0000000000002Me_v82)k)sKD9wS$$zCQ-&b55SuNbnd*W*E?hpwo}(jc)q=+uk7e zWAu6V`!>CwqTd^*cJ8?b)Z(1JdiqV$-+$YGYi5)AgFZh!cD4uRL+i%&zTNw8fOTa_ z|MFpo4zGPh(`UptWneCf;3Me!_qUk<##>PDKURo#uYHC2@Z<6r?V4?hU^feXeQq-e zq_?d7T?T>Z&Rm?-JOBUy0000000000fKiHSlP7Ztj2+^nedHOKBdiV5K{_x;9nyt= zbOQQ9RHoX*l@_6WpY09m#QHD21nCo&UV`)qOD{qCgr%1xQ(_>!@zP87BA9dn=_8h2 z(rpPLNFTEFl1v8u4$^xxPog=T9-IN%CH<_DHoxK=hQ&CJLOS{44DGGRVyO2aNniQSXXBY8a-)*|Xt;SM(q~ZbAujr2=OCR-c-dsnq=zlWR|`jO z9MVG-w_PW->E69;G(6`o)|W|1A1%waaFO}ZH|gX`wT?r&6&dPvoz?_*`z#2gM|)k#uBF;td~BNp_C$n{M+m$wIF6j2OBdX#-0#+93MhYMGI3=z4G zIUh#UXH2bfm0%7Wxt5Ty^crN^YP%243`lw!Z)2?5$Ow*AF#`l=SWQh7 zF8(RHfl)E`zFbR`Yg=XRv)(IzCAF$c`YS8;e=|Z-7ptO2P)-)sa*o{hU<@VFKlU`m zC}*g8YERVVUrOf4`6QicuC(HXEr;{noT$r{7j@&v?FKvAE@zQaZcMc=;|6CALdr@8 zy**Knvsb;4&gp78S7e2IR_#5dR!VB!yh4%$>@+0kHvB zE=h59VAI_`s;G)3w?gKgivnbu9dzp6eS}HoI=3We`d)?X#7K>8O}+sZeDUlYDZ6s1 zwR&VS+{;EPUobc{QDAR>IrkTPjStS$mvq1N3bkt`PLa@b<)l zUa?&IUnbGb4hoLkojDE@H*V3D()A%5zuDn_Y+3QJ7$pZji(P3vBFCvCP)s6qcDv;H zI+B|m>XZH?POK=9D!v?7zuBQW>5udJao|gy|Hi#?F1p#FI_aE$+=5#-uPW25<;t0W zQGIAq*4yGvId9sL3t5q};xUhvMV)8ZwHoB9-VJ>516{dK&SeJz*A32u>1I}ppVSm} zRyuy9Zk8=@A?zP`Zi|V}B~Wp0M&76ZiJR9VJyeWXQ}=S<4Nx1~uG@h!A86WfYL(L_ zMQ>8(ro_NSYA8yLgYAglUV9D2!HwCra0N2%5G-UVKmt7%2Q+Os+Q zNsR}KZ-I4ZtLt=5sw83EV<7HCT*&59B5~g+=`tVpJbbKq!B@Da7NEDSo#z}m=@R=m zM_BE?fG`mcJ~w13RG&jRm?ZT`#BTI-uE|{9i*V^;?Dm9zAZrzl6jRHxMffh?(d+I) zT+iK)(q&yPNmt9V#l=t8KUrIcxJo9&*=fDy(+9n)KHRihJKcf6W8HQrHSI<9der{( zDp@u*6XI>0Vtm2UyH=|l6FQr6H?807P=WMy1u3RE^~J6*=nF01 z%LTNacLfG9_h22Q1H zq5X@BC;(Jg0AL;HIyM6U0AlX|)H{F@3IOUIXbb-U6f6@fF{Y{>00000NkvXXu0mjf D4-<>$ literal 4155 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 literal 2709 zcmZ`*dpy(YAOFt8NiL;}Bn_=xvh*WVa#uJgx075`XVwoRtQn0aWRa7(Z03HBa@*YE zObtua!E89yhBB8@mfI9%X*R!a=l6R3{`>v$Tt3hB{dqs{=lMLDp68rZl=dkB0HEUP z;^YkgkS}1J@{=5x*K97G0E?|LF8&w*P<{R*LC8l`wE#fL+11J3H=%TC!sDKxcQ+8) z7A8Fr4|j4K<@uv@l z3;d5e{f(Bjx?K2$FcmSTN1yVvZlc5JFq}mC1kf?LhSmmvx2_^UGfx09g)^Z@mpH|K z(tA~sE?Zm2G0(~_1CC2k{_g;Gcl0B=ENDVmV!Z7)FDTD*Mo=E z^_cmYZQKrgLxOepGIiDuXCoV($)(@ttJX_>mJ%43!XFlg*d?YSxJrk!b~z z!ah~k0mdI$_lI{fJTAT|2~-4H_nV?{-4BYr)$kOFUrqx`xOF!*U@t?T7S;2TD`0y> z?VHT~&OwJ9@E%+w{z@l~+8pv#Y*N`$vQV@Fko3&{2l@Z_+w!3#Eq-N^p=~e%*s5{)9x}F($l_gJ4KbA_>2{oMG_W!|V4xPg3WE(I0 z%H~99hET~ZPSIgt?%W5B^G(qcEQ=W7n2X2`@Sm*Pc(*Y>!t%|>uSOKDh;4Iedye@~ za7JCH3E0&TYu5|}FR7ETJ?2kZc@^nbzvf+$4HSr;Um3Zut}AvRX!3671~aMid;jOM z0lF10Ix-~PV9=5hMse%A%s4E5CarrzS$xM_0U2+08%pm3nViT5cP2?Tr z93K_vBga-$eBu>WNSEVG&R(d_%GIz2-r-_p^CMn^*1H?nthQZ-4*%*?K!&bXkuWVm zqY*`3Q0+@!YWaUVN2wKZYR8BBI{O7%RCV6dDu2fEXj@irrtl2t>Ux|7A%rw~UercnK9O&cI{WF%wcw% zHG*&z6$mciWImZ;s9SgRt^7q_Wi#=~_PmZti}UB0|uy*ull2U(pih<7w}FJh|Zaksf_UIk?}>cZO+eM-lzeZ z3F}L0*92q19l4*bw_+LY{-v5Wl-HIdBCn}>&xD(9A8MW~T%0_Ua@)x}rXv4Cz_nJ( zcn0^gE;uo+9SkMnE zK*F?)mMcx&h!j0rGNP%CtZ6>k+DzWamyBUW{44iB7Aj3^nZ(ZDX}NF^#kFU?#~U$C z=9~LYct-Wu*qWv^ATLsilI*e4tgL;i%_NrrQ&0oV+i1kB_4hZSAduXI8}YH??uLf@ z23d*zN0FRMAeG9c6~UAE7|epftkUZh4ISubu0Z(HKea@zAdRuHrQh*@nV5tiK)i9- zhns7cOqK;*53xEJEII5j4>|iq%TrFy0(Ub$)0qQZRg4Nv8D46&Zpv1cP9 zb~MkblG@QD_IvgbAq8>8%ts-X2K1#Bs~EkNCMHZt^lM=|EPBKXk6bzYwD^f+o?mip zDO!e>XdT<~A^-y`iQtIS!lepH-Mhyw_#P1m7yN}bYYMMN#(>O$y2C!#xdQ!yFeR}V z$Roev^Yo?*sUyR4pbAp-f)r2cbIh;bF13)@JW0$4&&xs2n8U5R&CAD|kMB7+WqGf) z0c=$-PnNwayA;wDf287u-LR$ap`htq$TsjoG%%s1sjICVyk@Wm0({+jxY{~yC{ggA zpkBjfCw~TY>UBx>bzMUEHaFrWzsHyv=m&+*bNYs-Hb2VeNlNEhCr$0*o+NAxD#9iv zPh~xwXS29NJH0msih@-Xsmr#6P1%yTar3>#L&2_&h;tOWzS!|C-odYb#u41)od%{m z`5YzEfKxE2p|0ozTTj#T^$yxK1*+0x~yCXl!f!-Un5kz47b#R6wO z67VkgP{m6t$JY)l+x4~t$tV6U1!5{~B<~lfP1Qp@Y}(>hH!V;R@5Hb5FA>_U#+UEr zh}GKeg&78G_zJJagG#JDo%p5ReW6RT+7U=>{hhS17Isw!MUc$c-qjPnzCkXwB6T@x z&&r;ScWrW-z^R9}>fdv)%qbAFUa%Ln)^+A6+i}&?VHQ5nDU6dbvc0F+&P#{CuZ~Q z(qhegJ|=keGBG0iy(+qvJHuBz53ecg(HE~2)80=W`6oEtF{kz>*_XBr%)~yq?hG6A zq8M5jJyCNPMP|r1lb^Da1HD)nIkqr_W<}|Ma;&{1k53%fo6|Bkt=NUO0)MR~1HmXO8xoSkgCD zSdi>Di3!Ifqf-?Dw$uc@x-C9sid(CdtM|QZGocP1G`uIv(Ob8AW06;BUD&wYeIaU% z1`{jXGxrQc!B&Fq#~;w*#zt$~3~hwYI<MfN_nbo5r+!Wi-!BLc z-=8%1Nz#!*xKrW=4RrG&#fBif@zCQqSoIh!Oko}?hssFE!z_6yj*q7Hx zcn=0>w@SLaZTVZdKc*ed$Fcc50{{R3e*gdg0002Emg3W&;1pqtp@Nn2`3HryQLi&IOn~*+W!KR!U7D(@^VABT? zO}aq3#ez*aEDMBmlLedN6zn^s_c&!Fjj-#%8PG22>ji>5z_jhx8F5a*#d(>6rJiNEa7hHVNrC za=_4>9^A_Y>4r%s%QgV%vX^Rw^wH*YvTU}!_pS3zmd$>aO~|t0$gyM_v4{fFM{wjw zxZu4*I;qvFq)&g_vnKc($dQ|#e|%5SK2B=&pX}YlP12|N|MQHltLD@9wmY;C zoS7HeJ;C}78yKs{-u)cZdr%;?+5+htgU+;G(vf>k^0i6#r=tL*^s zb&wgHsi^6vX%$pmhxC?S6M7zMMb#BHFv@m=dPPUhUt7|F4o`N7VH8z&wjy#~X<&e~ zlO1Z39#P);99|%6eg*W)Xk??%d+`m!jK*(en07HCL2{Zky`ad#UVZBEbqIsY^lB(zMSS^ ze3jn!?u*}mrnk0EPgh)2y?fF#95Z~m-bwd2-2>@qOiEjdj;ddHf2CLxSvG&;U1)k6 zFAwyy!n@``SNZg8JBRT$86jPJDtX{`gt^M=iJbF*hUZXMXKlHt7dXy!*(Ouf~<;a`TL)J4$yr=fA z)p@#Ck!&I{sFBZ?pot)#Z~^ zJ^N&b1?iwKxDF0u1Fq4$D=?CPgLOy;=570>86Wh^``#=si?!PK(2%u*w}n-9RpeQNn|x_R*uU0_EY(@_FZE8 zF0uX6{V(3Wi)}xthyqX)4`3a19h(6F5PJuhcR&dR8o<1Rw(tW)Ee?&AkFY`j0000< KMNUMnLSTZpzphgN literal 3187 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 diff --git a/free_games_claimer/stats.png b/free_games_claimer/stats.png index 84ad8f30de57d1be85d3c6478050d626fe509d1d..60faacd76dac23195f9cb8e79658e1babb456e1a 100644 GIT binary patch delta 1812 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 F{{z}{eC+@L diff --git a/gazpar2mqtt/stats.png b/gazpar2mqtt/stats.png index 39215cd5c3b83592c089defcb456321d743ce8a8..94a0a489db667b7342e2b8470925c50b14721af8 100644 GIT binary patch delta 1562 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 fU^kXN#NqT^UH$jTH9n+ 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 sNea44OG`0=fJB%XEfo$Bgh~0M&0tZvX%Q diff --git a/grampsweb/stats.png b/grampsweb/stats.png index 371b0afd6ef589f2cd7e7bfe06e06536fd954fed..87ff5ee55cd611e2ec8f514d6fc2c45122a1538d 100644 GIT binary patch delta 1402 zcmV-=1%>*L7L^N-872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa$J2-sZve9$Z!? zks%j<1u02HK~#9!?VZ`8qaYAOsi6P=%QM-$8Wu%SSx!C7BsYNQ5p0?UjX?+@gb+dq zA%qY@2qA>7mbe5!M^)35j9yG%pI%=yeSP76etrK9wbFvWs9&GHjEz3P&G%NIvA5RJ z&5XT1t@`il_vSziHFiz^zx(y?&G7m6-S5MHyrq_o(S{I02qA>(DyTLEmM_A``it5F zI?#dML#QUuI}FuSjt4%_iwV_y1hpBud~^?6@95@GO+}rq@`Mn|Gfsz6RiT0B zMg-9NG5g;S7N9o`UEXK94?5HlPF>>9R?Wawx0=-n`Hp|qi z2!XCggUvLbPD`)Hgc}WU@0jiRco7Y|VnEx$*#Kg&V`!!96>iFtNpIy{kj^qFo9(Xcy#=gGWhB6a^7#o6{F zeY;_^FnbnaGdNx?>(lE1zCEfbqvMs$15Y*BlCU2s&{~!%SJApNcJqT}Q-WGrccyOM zK1Q}5$?s9Sz>~JSn;!>z9`?fStqtHOPRi|hvqP!S>+a4?VY@(A0KKt)*3E{%059Rq z4h2C6_=V&25~5)Ne&L%PBy(#tEC$;hZ+5tGZ&+IQjT-{r5e*CQJ2wQ@wb8J2=NIn{ z>)8<4Tp0~Z>+a-r9ydj<0R4>!eN2lx*_KYhXs1`(A{uYpm#826VUtX-W}*rZ^R9|k_ST$j~v4Hj@ntZ z3UpdJ(0f?53iQqmImYSzZ8S9h5$Fwd??CU+de=G7b^0?%1=Xg1!18xT&Mcs#x`Z1J z8N%6nf80YI=&1R={m>I1)yv(tW#sJ7T3U3!6Yaj_Qsl+Wil^9?A(THQ?Vj3rl1Hvp zdWFs|KVY7FBWC7@l~XI{9+*M+N$v~7QmlM`hR_jG((b8Ep#0>@r<89}>mNPgp!Kdr z`(NHHGM=r1o#e}ZqdKn)nOF2D#nueLBOEVWYiIkDT<4abesNYRWE6{kUM^t$yky%c zCNcTv$0@^HSh@E- zPmI73JZTl}cM@xpqx@Kglyluzp~wvTtcQ?{aSS!Zk}I4^+|A$=xFtjA2!X;)T5U|Y za#_k(V)-Up`Kdt^hzJV=byT%)1|fv+9nrlbLMRa3J1R^600(;z`kcyi1poj507*qo IM6N<$f~HZs5dZ)H delta 2815 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 JPDHLkV1n53P$mEX literal 3746 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 diff --git a/guacamole/stats.png b/guacamole/stats.png index 7c759966951f55cca3526c628e04bab22bd69ed2..5a06119217d78c13211fe7f762e7e51784c2768d 100644 GIT binary patch delta 1444 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 M&)Ha%nt4S17llRTx&QzG diff --git a/immich/stats.png b/immich/stats.png index 62ed02da710a10a52262e26cf809724c692b6156..e4fd0a3495d7e2c0208e1fe5e885b54cae31aa83 100644 GIT binary patch delta 1369 zcmV-f1*ZDu81xE|872b&0019Did_Hz01{A4R7L;){{R30l>*etfa&DE^sqwTOvgTN zks%j<1qew*K~#9!?VXF3;vfu$6KUW7mDlw)y?_-cG{E}>r^+WY{C5F$1y>(G`h0jiy+7#V2X$=HALjacDu4eXprbzA`-An% zuRp!|>vup$2qAyQ#NEQ{L?+v_piLk89vP}WB!*@0eZ)lz8}+dY4Jes54r{-$Z+nRkF%YB z74qMye*#DXxn3<@nX(bc0ey%-4(J00a=3S(10DAcbOJe`_W@mfrq4XRTj;u|LjJ}` zEZxS?JumrBYeScLVodKaM4vX%+ZuLx=xmp&Z|7U6ZvI4ZC7`qK{dzg)8RD0Jr@}c` zerXlxS2K@(1;q{xPQ~j&-{)vmgnjQdgE%PyJqpxr{{(?t-5@T_8AL|!Y?rbFkERWbbRy?+6(=i@tr9tD$4*)k~G+O6ZDvzkI**1(wcwy5XEmRwKsr#+jFgPO*cX zu)P*^Wec>Ou)V6K1Kmd0o{@Y9x(PE+syH?Q9qOsbU8NlXSzjyhvfz=JqTSpBW;bYoRoY|0Trrt&@N~&NoFy56WCEqi5 z&a9xLRwQhUL)0ma%^W)hIvT*YpD^O17P)^pkU~Q@VAjBClexGO)N-DQ*4?{pVJ}Ku*`8{cqnoUn7+t8b!MYU!%jGDqd7lSLr>4Ul#Tcp>_66 zAhL-TbU#%18j1YSNK$%|xSlFrR8m)2JxN4QOxZ?F&mgEMqd{{s2qALs2=|WILV00000NkvXXu0mjfN0q5> literal 3174 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 diff --git a/immich_frame/stats.png b/immich_frame/stats.png index c9d2d646e4480602992520c6955a8f3f9d4d6975..7a9f10ce9fba9fdfbb99bf4ca8839abbf1f74923 100644 GIT binary patch delta 1491 zcmV;^1uXiI8tn^^872b&0019Did_Hz01{A4R7L;){{R30l>^kufa&45^Rr3dn8)|3 zks%j<1%XLKK~#9!?VSO4s~`-8N!9=Vm*3mkwN_CH1`P7ubG994GaXmLO$ZnQ00000 z00000000000B{--Ka}l{fDWDof%UtQE5Bdz{PuhJ|C{`N&G>&3|2*;j9B8;pzd4uJ zVfg%fGCe!}_hDGSGwH9M{_O65q(gbz?)}eybH7-X_wQDuzxsKA_M1NukP83+00000 z004mCaE{`WtOVU8t3T5Zpr4)&>GX8aDd_^*f`yP1iyF1EX7#MZ{eNZSrE&FbRcJzb zhZUNT-eH9%q<2`MDSM{`(p#(0d~70_bb<6cR%puZSR<=yLBo&@TveedLFL~!k~5Hh z({hZM@M%cDHR)@|0_k@rUE;rq=H6+@=E@>cS(gwHayRekLdb@YgY+(h9He(B?AMZ?)zzzr;1eR4mwp^izKQTvc<1 zf7b{(NcZH|PvmD*LJra|OtTvXZH(#71!?DlHvRS^gltA*`D8+Q&Y-TES|tr@xnyND zQ-UR@R;hdU<=3-=HvQBpq)HNYw`x_`XvmRY&kfoHA=j{9&kfon7)X0azs9c@ zAf3ey)_V$!h5oqq53|^zh5Wj)l4G$$Xdu5{kMscPZu0BK@;y-Z-k@GDNjgH#sa`)P z-!*S`phoWUJWO%YSN>fnfp+HCGh;U1?9jAdwdS1+?iPKqs?BLF?XUTWv zn;j5x&ir~_%*Lh!P5bpc`A$ZzX}?~Abb7jTzn&-GH5&p$x<9{eOFHxEP5AY!n2j;L zZNFZgbV9b8^)Lkk^m>bpzP#jBHkb?$wji8wE^R88Y(B5K>O~fj-2}52J22B&n zW^gX^*RC!PCCy60kyXr0v=@7merzS8yv3MJ()}4(r8VKwY`+O3LQcL#eav0NM}@Ul z35Snq%uIc;#GW3#)`68-V|Z)A*bMu=Fo>zYm{mBiGP>C7P;zc@-^#Kv{4^mUTd(OE t0PCQ;+zbFBfZRL4y#q=p0PY?5!auk!5rR=r#mN8w002ovPDHLkV1hz!^~C@H delta 3332 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 L7^qjM+Q0fA=*Vr9 diff --git a/immich_noml/stats.png b/immich_noml/stats.png index 00867c5b38cf95cd993731aca35096bcf125ef60..a268e1dc871ae1934717da8d01bc6dca6369128e 100644 GIT binary patch delta 1402 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 literal 3336 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 diff --git a/immich_power_tools/stats.png b/immich_power_tools/stats.png index 5113b33538a3ddbae371667892bc0140cdc804b7..6be33f17cc0371d0cecbbab108784ae5e94ef324 100644 GIT binary patch delta 1357 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 fv0NCDUD>R2HcCq$yYXP2u0O^2&he^d;## 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 W?jKWBTm?T%z|7=N<8njyNB;p=D_Qvf diff --git a/joal/stats.png b/joal/stats.png index 65705a4cf721b19872a39c4e781b1c3d30a21826..e768f57fb41f8cb33a73afbcbf12e6b39e47f946 100644 GIT binary patch delta 1554 zcmV+t2JQKy8>|eF872b&0019Did_Hz01{A4R7L;){{R30l>*eYP2u3Q^2>tifHuEf zks%j<1;9x}K~#9!?Va0p;~)%0B`*K}%Wac1wOx#X7?9984_T8bWl?W~1Oh<>K@bE% z5ClOG1VIo4K@bE%UB$aEj0a-;6@V7T{OI5O{KNyX0iE9;fNl*sdb%y-{P!C3Q-2@O;>@1`2;K&NBp@5hlYnjyIuoFqv*~mKogpo%v*}E{ z*-XM8g{D|>aZ`;a#3L8jwh8D4ga3eTaN8!J8{D?Z7gYngu5Fv{RK?I4&{y2H$=O9$ zKwom(Cev->JD?lf>C=gi_2sz!M`u|H)IyK*iI45-O*`e&VK&x^Jj!UuxHqqE6GdwO zjB@BwkdIt~uRr0kR!?^p+fwhnpF?LbS24bGLuhp&N6yLeE+SUstT7+ADrY%=wCb!j zD8D$fG<0#yhi#@{y2>85Ds(4tVGuUm8uMX|vI<=!^HGyFqmG=D8u)=DXN~!&hM9Ea z#4;Z=zFV~EPI6#hD0J=1up)xzQ(wsX&?*zD4z0#${*7!2t*VZvk3TLbuXzojRaPBO zcW7V3sa4(abkPQVPy^YRBj+Q3!TcCI><~S{{un##5IhW!xx)^QFr{of?4TC9cqeYu zaAas1Hbx>$DsA2Dpu(V!8IbJU?BIy7PHgOE2OS1|%#dW|W(OaM5c;*{$VIP*dH+Gl z#?21Ft2#U#1Ps!yOmSf)AsB=p~U;&QYCbOgWt1<81Xr1x&U1rCS%N3-Od2gexa&g9$ zW(5m6nRg%G6+(BZWN<6P3!GL$9H|u&pN@;v_}`zGVeTTQwQCZ zCH#y|Z#VC5)U`o(7kOTPf2A6EZ=nOo{HeM4DNBQHh+h0lh_W#a zkEciV^X^Wwwg>RqyX3ef{m5&R+%QKjSVUgZ)nnu3fqY+@ieAuvy(gQx=<4mmpY#>E zZx1DqRk`eQiAyfSPP^?^{H*Q6>jT9?pL*M^>{;8#Zmm%0!FCtVjqf+OwKAcb_1&&r zxjP<>MCj3>m;ZM4aO~z`&RMq3(4)~=dC9r@n?^uk*`+?3iL5!o`^{V?OgpvO3%dCk zTE?fncP`U#mG=FA(4VK$%+Jtrv)3SLj~stm75evheVAxyTZGZS^+V@w&|kPgTOjm; zFk2J!7w*1(VrMUO*~S<6aXaXc7MZ$L7wU4?2c+KIgF2u?%a83hSbRt$_e{#j-CS+^ zg7DG7OOz)%{aRZ+=c_9ye%bg;fmHQ};+Ku@_GoGwpK;88|IWAUrfs{g+t(#oe%lcK z_lHze|2k!LR$Wo?g2q!_QzrJvg?E`IteN&k7vBCX1g|zddDDTsxK4KBV!zYJYd= z!s=T#Q9#QF+aXYg)?S-|AP8&k5QcXMTPPq5?~oLI0eQv{IfH6tP5=M^07*qoM6N<$ Ef{Q~Sp8x;= delta 3481 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 M07*qoM6N<$f_eKa6aWAK literal 3515 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 IYS=&h4=sP((*OVf diff --git a/kometa/stats.png b/kometa/stats.png index b58efe71d5d8180c8ea99637d224b0f008e2cbb9..e66d8fb3a9d64a7d0e0c572feb650b26f05cfdf3 100644 GIT binary patch delta 1546 zcmV+l2KD*M8Kex587Tt*0019Did_Hz02NS7R7L;){{R30lmXM^z4Wj{-^_&S$b9J@ zg6imzAs2rIwMj%lRCwC$or{{IAPj{$YJLAl-gfP@B8Z??x%_7@->8g;2a=EkGzI_w z00000000000000u9g02)ARQD<`s?rX@AK1(_33|5Bk6k6KK+q-AHRD8sCJ~!NY`}o z-2*`F;(cOU?_oam1poj50000000000%=O;s{~mv85q)aUIgMkoIogFcy2V5TL3)d^ z#|7yEWg*p&Gk*$ayGkF zM3XK^uQ6v+!3i3qw__Kk%6CYwhjhPl#_Vy6PpB;M@Vy zYaD;+@!}oUOG|*lkYl9p=n;@!lOe}E9nv8k@eb)Nc;q0x1=11kZILb$pEe2U7;>Pt zD4TCB8>H7uy4KdRL3%}`%dhDnJrj)GF!n#!=`!B6Y><8r<)i7xp*z!h_ZaWrq+6nF zccXt&KA}4^$|irTRYcix80N$G=MIlt6BvKS`BC@7Bnn8+1>M4Y>saAZKj)5uAMnVv z#`#mlKM1Y1#QKUq&R z)tm?UGwrcI$xBOUwGhJ76PzCdhFr0X4?8p3C^tur1&rp71?7e>JFHnmKd_4KiI%aC zT$;F?jvsxFmfL6w{IWxKq_3F3{o@M7nUUr8+b=t0Mfwq@@ga*G{sqoh11hTO^G^1qVzP#ddj_o#|K zGrOYbRjY@@<$Q9NsJ2r`%$e}?4T0}oz)vHeV-EA4wb-hZVN~D8_;kG?H!{W>o2U1P_0~uqvkFr{ z`URvT*RLmC_mU3fw|M04jIu%bO(XrTC>xXV=Hlr+lk(;axnY2l48N-ESSg;OjStG@ zeIrv!wzF2&z6IaCD`bC91GOw*mIW3!HTF!wsno9Fe-Zbw6s*G2j9?{OPdT+y>+O{6 z7wm6_drHA7d~5_OSxR%QRZef)zApC}+!7mA z#N0ybwE^}g1gVbOo_lvaiB7H%`N)eN)I zjO16Tv??Ol*c|C!2{JYK^INmSzl-xzW`6i57w5~PtXs@py0?x`4)*N2eJJ;oSw2Is z3hylxxP`wN(nd41)r@e7ttz~?@ccqJv?}B2&}P|vo$h9foRCicst1MpuXWuyRJeq% z3bz@~Lj-P7YBN@19K&8SZMn6mLWbOXQlK@1#`P4+cngF~MM)v^#eWNPV%Ky#vHMAcX=T-a%gY2gJ-0;(Q^NlK=n!07*qoM6N<$f?k9V0RR91 literal 3274 zcmZ`+c{tSX*Zxe17{=OEcF9hJEK|(4B!rN$?^5=$HPhIM=!cN(g^G%iELp}_8hZv4 zLYA>*%P@9h_s;kI{rO(+ALqHB>wd0to##2%xzBZ;7beDc*;y~K0sz3Sucu=M0HAI9 zK7-{9ef@O0s!oSyj zF+PHS#$q4m3>)=6-&MS6hK|g1HRlAV0M3Y(ORa%8AP}^TpUC$9 zzK|zUHdP>IIvpz^pypL@9kN{S%Mi3xx9>Pvx{o+)J{rTI7!-B=I?YVp;~bETmYQpM zV!$+bX*F$=L1SZJmy+HI?^ZXW2iX2^6hMlTAPBJP_%TPG;rhQ+SgWh`rj5Yn z&S-bNfRGm>u)TSHA{~((!#g<79=`@~M%8{xW$&3V`&iX)TwMCVO8e1oU7h%XWLzgsM&RX;wL< zr$4_D?CbhkvVTcvnFC;o1LSLI*!!TKd7(zLXuYPZ6ikg_Na3T=nTN^O0G$O)4Y-02 zsJyOTFoxgDbU?RRpI!z;QV7$&u$!M@PG274UkihPnWaZWE53)SPuT$$PsK&*aQjCj z2Ozx!p|0Msv+%fxOcH}ZfI%_m?+DRYistt@6i_fD0AU^pMAt9P}$MBsWQVhbj(~ zgU>RXr!z~u-r2+#`9I+X+LY7_Jh352-YYL9!|^Rb*TFHXOiQD-4`!^WZ(>~W<=WL zaKS*XrWc1Eq;xZ+AsK@9K{4xd)GgYGu-$~+F`;^himb&pCLM$xS$G(pd;UzVt46*I z7Oh#YSNKs%3lRRqlm77SR&sJ>2w3REYfGp}WHQ`^?KkuSM+jPU4 zvW|M3NR43v+G2x&%+vj-YFZj>(fDgFN4CUJ1Z^S^8mIJDgiXZDsPKC7%B^_ei0$P# z?cfV#`uCXoJbLPQd)4-_ zZqC=jJVHoy95{ezN8K$FwIMmCt>y zk^S>-xOlmYIIxz3_W{cjh4fIZC6i~(K_V*q5(YD`RvIh$Ed(2Sg+`P>dYvb|kA19? zN1c(?ttA^+)CWAzpxpzTvn8Xxlvh;{~4%xz>`t4ZpeTAysYG(XdEKbiVe< z9yTHq`NkSwc@3Qqll8|FK_b|f&s~jNnu`oy9(XZGaXik&+dCd^Ay0Pp`Xa*jC~G>{ z{s_N(E`p$y%%NKT@%%zF4XJfcxjb}q)G&OFw ztq?wq)-{r$cdk7AfRAJyLw2{=+0CKq2HixPj>}Lu;H~N?Vl5E@zCP z$FmE|iRkF(j?%lSe{pvo9je-$2nBDpYz(n=-gnqrSdRUJA;*AkUAmmqa9y(}*2Y%1 zr=KiQ*E!?1**Zvm)=ni1lCMJX%=gidrC*D$CWWHWSnc0v@RIB3tvMK3Mahx_e)_or785@eDmU@mV|s7OrxWB zXHihoXzF9uoa8aebX+Fj@7SmHCf9oNGLxO?Y3jWk$JTU}#v@s5orWd#=`K?IlA-C< z`=6)#N>Z}Bx4rgE3<@n-39_;9`|zu|B!p@i?(i z0B}(jSz>Y0=?oYkQE;vf51jzR?OQbIMPA59dgJxB40$4deR-=V3N&rVPTic#&={*~ zp!?l08@#qTE%$)?_Jfbuv>4Dd8wE#lJzc08w-i>g7mUn11r5!%QWAX~!^C3>@;OA_ zgoLH8C z&}?pS>uxGuo)~tM_73)^{0umf(`*F?%T=m_v{TOu1_DZ46Xet@%qeowcs2zdrWEyz zqv{T~_WGzZ_V4X}*cahu2@_N0>*szrb=45l{ne~bp;O-S6R3MV2W%4#3pqM}a zApm&OuY|0zGR-g)(3LqB_!WZV8?mo|pNfh`WPIyUtNBt?8{5cVn|m>QOk<_mE_R5@ zZy}ob$hK+5)J!HIgy*grO3S2A5>e2~cOYn4qKM4G@C8JDScPgC%hW<`-kL|1WK~|S z;YUaC-X=oKjd^TJnqV%;zK((mw78tl-g26O>%CroYfP#t)DI;7Vt>->wtdN{HN>$9 znH*ZsLsZi?c)#UfwHiCFklXCptH%g6PxSJ-Ud-|U$^5Co9?v9Jue@GZAW5XPiYz(RBKE>zpEea?a*{my6h{Bd{hnPSj=k0 zimk+#YZvQc*8|MXpjB9lO&Zl}9-_PDo2p)K zd0W`7+cnK*4${$YQ*RqQ#WnwDB!n;E$EIVZ{(g7GfcL~|=fx)I0)L#A2@kq$rjWJv zvVm*Q)ZJE@V18k0VP#4CYGJ_d)JfCOE_8!2ST^vU6$_r^N9 zv@cn_i+Hg#&K4(gL#Swy*0LVEPz^qo+16J*eCcOa9ZNcK2*T>k6%I6`pN$6NjB>~T zAl~(@l?~{Mr?L)F)z|>|`LmCSDv+gr=QF(q03LOAB*TO27$gF_T;&$O0;GJ%dvmyS mWB|Zt>EoNnML_ENDacHTr#GjDQJMZZ0rc+}>y+JcivAz&vQ-uU diff --git a/librespeed/stats.png b/librespeed/stats.png index f66aa243adcedd5375f897a3d2bafb53fd7ec2bd..62b15ddf88c640bf61a6cdbbb5232a10833cdfcf 100644 GIT binary patch delta 1452 zcmV;d1ylN?7RL*a872b&0019Did_Hz01{A4R7L;){{R30%7E#V0Mp~U^RY$WQ=#Bz zks%j<1zSl(K~#9!?VXL5qaX~0iN*JS^8Ee$NjaSw8-n#LIw5@+(tq4tp1=MMpT{Db!`EkE6i=7e&kxbB zf8_V$-%lmI5dfx0e>d~)*V8wS?(p4qk0`bUimLAoV> ztSdrpGAs{Yhbf^=H$(YSO})nlT&ksE!DaYN%Fo*LP?At$L#vQ}i<7VG;%ch*uka4( z+PwU+c-L5cLAo|KuP(X2b=)!Ou-?0uwpi#`t$lJf{TE&9#72Dx{VGehaO!tf61 zYWn5gsYs(idauBK!O0VtBD|}N?7o$Mdx{g%usVC@En_l5Zk(PuZTfsYb4Z_L{IrxQ zx@<#AMte4p}kDK$4Q5E1EKwlsK_4?a+X6o8Mz5VJ437Uh4zHx45W{cYR?&ePsh_O zEmfjTC+!O92snh?v;qzxr*{#<+DgD7y6;o$SGPX3o`(G) zJVbEp^L}@=xVv{OinQtCoZ+F>Gh#cmsNZwnddHcPp;e>f>3&J{~KXA zSEGIDrOH|CkgVGpv!#ymaThx*8M>_{V+tuRTI^te^omt|;ZhybEwiU#t5~Eojax#m0Huwi!7yq<0yAA4{cjd3a~~ zy&xt??7QduL!Ye6xe9_33xja-dvG zgqO~o(LnmWsgK<}2up+)Za?yV``>M(FD9B!qoj*Ff2l|BNfcJplJ=LhXKo05pOCZG zc$!r2n!0QdK3#HVf$-UXNJqHMM!HA1%|*JVnZuCYfpnDHWTZp*WTZp*eWc4hq|-OM zbKZM4i$dSbzNa5<{oNuBOW#cGczT@M|yaogd&gmhqBy-R!2 zrR#j3K31aqD_tF0{U9A!0WVku&csVuK*Q!9)*&4XAKNRm_`o9X(YAj3M0_6xVnmTq z$Z9J!l8bWg%;>d$5oYwXkX6Ve>F#!CrPW@xQOOO;$@-RUw{3U$tpP(un=-;iv7#ie zsL!vOQPhc5ox5vSdqp>RvdP@XrFPX5eC!U+iW&uqdf!)CQM(8Fuqc;#g9Ro5qr}?F zFDX>karK=oU6<{Sq5DHgG7@)U6ta@cqW(xfFG?iu216!$DR)=L==>{%%#N$?aL349 zl-LK2kWaYp(BjUX)sR(gQHh=&Eb7>*Rz{l75i)YeMsObl$)gtpO8_`9ujk`(&bui5=ymFj^&yo-V;hx&W4ZAP;!JENzE}n z?qe}>EV)`NG@B2ZYi8d)9>4#8ufJaR>-BiOUXRz~*(*`3n64xy2mnACk9j7;3JOBT zuUMaTiTsB-V->8>d!%=5GWi%>7M^iNSVs7dGw{gB8{@P!;C}^*|}011c7XN z{+KWT?5R%+6d@B4fP6AW6elPHvVf~<9WVf5O%y`Li(vt{G))o^KK6fJ1CFkIBCLkB zCVSc~Tsjbzh!`00g+D9Fs`W5&f&z(OKN6-MQG?xFU8&)Jz|QtT>_*KcO4Ysk^CH(+ zaJRBaA8JFvSYYdC-%9<)=_lbaBHUJP0>@-0RiJ+)r1zXLxKnBJnGJU*;rC1VdW9EQ zv0-k>f%WlaE5oq&hkr)0+7nC=v6je3d;0?F$^Hw;bJzGi3RV1nZ3FUsp+rVu)9I=< zvq(AMM=Axgs?mItP`Ymq;4WEqdh=>es6GZ%oiRo-Zd zTUiSLn`qk;`nj^}1oFYFBBu=t$voVBMXS@emNDOr;7wjXW^SmxUga`-|F{7HLEMpV~EXkc<{;ie0$0Ut4d@~3qZ%|i+ zaX*dge5k*}x!bf&<`~_>Xb@j_h7gtb9gN-)0K}L-w|B#MHKSY|5kyOCl) zyYHjC8}-FRKd?ROj$u!L%Xjm<4O_#!SZ_^n3oj$6ZL3w#DTVoN zB$+hPr7s5ln+ao9Z&hS9xz#XwHJVd{h@)DPYR}N7@y90$SyfIsSr+&`;dB+DvRT6- zh?=2@!}%LX1*G7jYV|&Ld&i0|FFB;;G~O>xHv)(c&>hp<+8e=RLDLpr6}zRC|ua$X?O^& z$JjX9nxCTya*P`!h>Xe$4%!5aue@)3>ob)N%G_)WF?NcY2W74NSWio6qe$wpgTHcr z_JKsswRLwZaoWqX&|WHk)v5E~L@$-k8_xfjNlmkPw-~&d6j!7?$Q0$L;DGI$x_bCH zVR3BEAD#CowDaF`EZb7iUj7;LF9-Xn)jM$Jd7IL&$#!}(RFyxFf)>x9G=UdEb>>f- z*XtI7c@UZ`>t#1mGA~OrZq8GcSq)WK+hxDH_}NZxq!*|2(_hOr8RqJBxr^M=>X**L zHl727T!xEa5OR~)n z#M@HpVYw6djL}G_Q;(5uE$2>CsX}2y{1LaSaIbV!xhyMHA$qyG<82DHRP{*%WuOPA zv*!^BHZ}A~j17}om0wTb9gRwxbl;#COyda6)93 zknI|qjWO0lDL{72e;ZU&_aDFgrG3Mu%C%v zI~GVBWeBP%j0jb*G7}LbJs?wknp;E_#=#St<&G=^w~tK+e#~=FhvDoJIR|f>;jT-w z=KI2cNpT|uCkIxu{P|L$K6kJjRSvo7D3vE!1bm#fQXdt_?gGgq?zMAWY5S4y68$R5mjwO`B7zi>zs)F963F|0rU(M` zQC|!(KfQCvhXL#3fsIt(?Py#@#fHR1GNz@Qj|3#(l#-62SRvOXr`aX-Xi$)2BImZ` ziQZ*r4%Ov8$b6(^>1yOGoj9SrCP){)>daz%VwW_8pEgHRuY#J zT{HZ~yc4uvrL#{cbGr-JMS2QN@`}7y1WwC^xWyqI{UHRk?y|oA8m2HN)PzxJV})uf zT`nVp*LIKh)tMVF>fFQDZ8*JV-}0R9zV5TQ?U}a35O--WklRYoQbfm1Ar#TX)CFwy z2NLnS1)dGN)f(0LX&P~Nv?h=6?hN;7emG_iT;J6acPR)@iaw!sFGT_pZhEIj)dCWnA)AlRk}S-_j5Do zp}2VKpdr!+iJ)T)E(2U48C`z~lb`IKH24 diff --git a/lidarr/stats.png b/lidarr/stats.png index 157c98548925914770dc39da0524687e226b010c..b14dc4a23726a470a5d8f8dc7e68b5c5ff19a533 100644 GIT binary patch delta 1402 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 diff --git a/linkwarden/stats.png b/linkwarden/stats.png index cdd7b417f92983f2df2679a2f021e93e372f96f2..d490d0a50f9f945efaea0bac9977685f3218d49d 100644 GIT binary patch delta 1535 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

      0DM2cyG zF5#2uUuMi>*RJJ`mzw0OdiS=3$&rsV^2pdRT|6f2-l@iMR%=N~w6{UZc`I>aaju7J zK0)F5;6+^E{B!%csA$Bl0jT<@VKWhtR2R+50b(7l>!IN@3LnCA>=BMtZ>mq*VtSp{ z`9xmRDKuC^jOH_yy#iv|^bdZ48_;Xej&weU$sZ{)GTE`r_>XV z)EjX5B0|Zrtko;mU~}L0I|%+Og4!dh&s9DsNBd^05yjdF8O6}|qEV*d%X*honF7^}W3Svo2GlV1pYWQDDv)x; zN?d)Y^LojGUUWhOd1~%+l!yVIb6kn;fE#>8L>hi;&%doJPk)%N?TmE2wJM6~Ja3c2 zH!H*n?<)DR>jKhQkD0*Wt|8brnN4aG(|q%xzzhPyL$2q3TFwQ)Qvyy{xy%PpmED=q z9OU6cKv$9_P(A5W4B}?>p4lZDC_yley*CI6xVfzb3X;n2Ab4wM``pCQ!daF#tl>fEw zMoaN5n?egwD93CW!L~6Z-@0%FTp@MPlU5wD-c*R=>UERY_h~!k_ioL^GmH!m!5_ zyyar0XjRE4aQ-|}QlglYWEq*A-atBPT*$-@6vx!Y6D@qUZDBy8yGKPF0lvhIjBYF9uC>SaYAG6m9{-%_x{zE1$iZ!V&weim_AP6> Y9=(MBq;Wid_j?7_=WWbOO+Ehn2Y8%R>Hq)$ diff --git a/mealie/stats.png b/mealie/stats.png index 9a906e59fb3eac77f0b66e5ab8491508e6a01f22..69e51860b174c700a22e94965c33b5c7a8b4a9aa 100644 GIT binary patch delta 1431 zcmV;I1!(%L7_tkH87Tt*0019Did_Hz02NS7R7L;){{R30l>yYfVB`RvbJwWu=EC)J z9C|{LAs2rILrFwIRCwC$o#B?FAPh#6w$A%M^3Jxl1ym%CsF3^p=-HmK9ENKkB!D6a zA%qY@2qAW_>&}|2&AB!pjrISZu-+a2q(LEa8qxf22>RS8Yv!)-;!D-412cM_QJk-aJQybIjVdO zPyL=;3|IB?K=SFWtT8ywK}^WcDodp5_DD=_}vJ%89INCT(dh~d9#D3yG3}jgXjG*IC8Alc(a3RL$|Hd ziM{tQqnqFCKx(yl*WI{thJ1PlYxHf2G@!Q}jI$qhP~lPnX*%k@0!n9J+`}unT3@b_ zPj{9_CphER(1GsI(1GsI(1GsI(1GsI(1GrdInbp>==6EOFgZDp%#nNZ8Y~<57x!X_kA4*4untr=IpUx%!E93f* zO`S}+kCXp@;DI0Tt3ghKPHJ`AM4sdRDizQ^L-wn`fnG3?uQ>K+(dLr>tH;eMzN_5= zoqW1+BEKs2-L9!{2Yu68?DBum#oszTcA^)SS?`H?X!WlI`qyqJ9@Y>(0l~A-rhNl_ zg0)?{1-fw%_k_An=<$S{QS;-oPw2CJy|b(nd%p?D^p|FTbT1TH$fjg@Vb6tWiPaLYaWlK*?Xb( z$8o9E2s&y-M`#aWkpq)aqnr(8LFjqWNy~a;yN$q3l@8>qYUhT7_@|K>> zv#0Js+A`JT;Yqxe^uGsRXNxaZAKqPBT)ULken{hM)&4Q)!s@qdqCjkwMNmgg$7T>h l#NH9ZJ7Nn3Vt7Ya(La+J5kzwrsj2_~002ovPDHLkV1l45>0AH+ literal 3116 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 CiwQ&k diff --git a/monica/stats.png b/monica/stats.png index b13f06300164ab60a786241ca3cb0ea15c03e530..967ac0ea12178927d44ab5fd2fe69b11492fc14b 100644 GIT binary patch delta 1447 zcmV;Y1z7r{7s3mW872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa$M5-{rvcM+5`L zks%j<1y)H!K~#9!?VXEq>mUq7k%|BRmpe_9#<2~yc-SD$&a`vy6bSKJi;#FY2LJ#7 z0000000000007j7@CX1fXxQ>=+w%MKG;;a-C9hw=rkcx}@)zqbg%^~51k&A#bS&Mn z-}a{6$x_(`O9ub|0000000000?xvK4`^2Mv!60$UPiPv}N3wKC$I`)|qzmW^B^)`a zy!NbWh1$Jouzg_#;dpB{A)QwS(nnac3F!l_*_09kKBPCZW^)SSH0c8A7T0Xb(Le&} zV>xn=j`!|fv7B&lX5xAFZ|U1HJrIU|LlzBP=KOpJ&a^uN6raopq9aHa`^dx!5 z)Vn2J-1%jb>tdMtaE=_NZfZd1rB>1Ru7fitj=tYX_`}ad963dn&5>%mhwCR|gh%5qdk1`LPmILWuVnm)>x+&Q!_=>Tf`4dM zsMS434pYBK)&1N;Y86wzhVKKH?Uus>G4;xP`?;mmDyClBYx8q+snwB9{XKVj`1yXX z?S=z^hcWg4N%Dg1^5j27J-an2@kYeTO+>&JZn?I@=}rR&RD# z2IJ1(;W9yZPNlgl-})0Hby+rl+onFJ8Lh_COBIH~`ScXhO`5tdLq_n;DJ|&f!5I;e z1k&x9x}SUR*H!yDFuxXd^8CpW)YXw~F-RxjxwVa1m4m(e#>2} z{RzB1S+BoqwR3^@ljlI-ly&dD3cOWWPdYqMxvi;7fwwk2%OBH|vTQvGyf;sHf+Lq> z>Fo==pFCTYoy*$5*j19%`Z%6`8DEYg*D&iNjN`Y=(_3}sMkD+N(%W+8MkM?W(wkv@ zRKnwYNu@Vug7B7)6q7oCaxp=8yOv%w%Xa%+AC)&1l21SM;XT$plp}ZL6#!Uwf&J;( z!I=*o)g>P5ZX(Nejl^T!#kVS#BfYf5Lw2p>NAgmu8;LJP5K>Tv*Rs5cF^UnaE*`hrWiY!yW(?+Q!} z_plD>z`V9=M|@y}_nlFG`7W${y0we9S6n1=akIoroU0J3uPK|-o1Nm3XQl5@?e;@= zxUA-Ct5*Lea}q6oz8Evs#dj)vmpE4;^a+}>DZL4_ukO62eW&ez^a}^Qcloma@0aC$ z$4k8U_or?my~~cSN}R0_{Dl0*<>=e4ic8)0^$+KuL%Uv_d>+X3L<-QO880-vx` zR-(G2>`jUGV-+;tHLXLD4EsVMUY^>wry#N75-z^2uxap2h0rGi8h5(hxNzr+v@go` zU9tAHizom~WdW>%u46L*0AlX|c?T?^0LVLN3qNB15#@Ae3?Tpj002ovPDHLkV1lt4 B+~xoP literal 2979 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 diff --git a/mylar3/stats.png b/mylar3/stats.png index 11638a0ce5a7a0b3777b44558a3cae434d3871b1..66b03f4e3207231dc3edb6eead83c34d28a0b1b6 100644 GIT binary patch delta 1179 zcmV;M1Z4ZN6u1eH86yJ#0019Did_Hz01r@1R7L;){{R30ni1B&X650w^Hjzs(vcw- ze*{lSL_t(|+U=c-j;k;XL_KZ)|C{esUuq#hOv#eiXQW+;#fq{FB$KfTW&i*H00000 z00000002OHNNa~6DC?60SdaU7>qYSW=k*6TkNkA&K9KAEaO-g+zJ`5pv0dI{*Lx00000004k>e`8sceu2Oa<xRrtWy<%9;o;nkXup0HXI(i2u|LVCh#O>HdDAbqTA&C4RHNmq0A z4o;}n)W$^OwqYT?|7uN{V|;%OFOVK-0dPdZ1=3H#<)9~Bdxm#d@11nXb3Y*DfBMDk zs3)CudOFg*=@>{qmGmo)9Hj3Sa*#d@uGfQX*e)_S;8fD}Hh)p?{gHlaHoRlbL??a8 z_=oh+qzlqV!Q}|jRamFX3>!9p_3l#dGHloYq+`xNI;2B7j+{lzx8TSnwBA?L`@SR_ zq>oHGMHDGXUx>w=vBC2#t|AKIf5?S!VO?*yNF-e1lRoE@YS;+*7FTK&A!iZtEjV%s z4LN6O71CpqE>QxVk93~&q{BONx&_R)_#8Q^VMDmEE+K~v8=drmkQ18{L?^v?78};a z&$l$#i2~NUPqLl8H!S%3d<*ZVLpqxWT7rBFg^`fXrUV&WSZr8G-#UqUf42bEyKhd% zkqcqSxn6b<)vzH}Y_69bBw@n_5bq7PAA$Amb)3(fLC8hWalS7*uw)CN<6K{MfbOF*b=lkgibsUad zLLIllk&N%M#nf@DJ5emvMPkDaKBdd*-*#YksStjgFQ3kmEryO`ot|(?=l%42Q#x6; zj8i(KC!Erq!#g%?geiT8_l`L;`jp<_Rb`myeM*P)gi|`35@ejxf1PtWHtgsbHXON> zgFD`PKI!g#YZcN5FOK6$Ps=&`z2{n?AIXs*{f{Z%soM|SXy`K#(*J_;YpWHOAiYn` z{v+iFZ65do>9V#3+uel!-uUf$z5GXMajp|8XTC@W{ll=~0J)Rgobv=jI!G|KA2#EI zv3TDsnEP6*ecmRTe>!#ZaI@vZ9gSOUqCKx;}|M^}5veylRU%ea-;-ZsKuH z>*1fhnH>5XUu&%*e7o!B>UuYgTkS=!Q}6QzO;$d%cdb=zxG(ztr>5cZblnr}?2EhS zuFJTo;`BAXyjz$YPMT9?xG(yBs#$pBu6r7HM0+{fOs&r5Z3oQ`rus;g;`tKk+v$i-T3i4C002ovPDHLkV1gwxNq_(V literal 2610 zcmZuzdpy(YAOA8ExfJOn%srhbLURjCxh&U24wH?Mjzqc5{aVy9-{J}C4E|Rw$eWCzBc5rWqlHkz_H$;&1_|PYv7>0O-1S&|$|&i4%oOvhM1m zs=q^vEurb!=rmCn8xSw1ib!ey>yUkmzDvRSc!;0ndQ+nqKYua{^ zAvw+XSpH3ZC7A_BM4Cyfc<{c1vTL=`5QgD2*l4khPR|Qr7??!qo-MXas(j=YvTT1+ zuG5^0AIOx{M!#&aR_z!@v!51Wp zWj}6LyFco*4I^MJv0>BO)}p^&0d~+C7o7pqEiUvh{CZJdGXu5~a#W|OM@~D~6SO?o zZRIu*L&k#|?xb$2<3SYRqM?mew_!(oYDw;N-Wn)Jn}DQ@4Tq+2a)+X}(Xna;1vU!4|YP8EdJHG2n?v;?Q=Or`SSy%DXiqQ`xltZHX4)PWIZF{67cE;~QjjK>1x z-QJx!zWiz%OS~&Zx{I;y)32{aRqJ{(gPSy@{4a}zkzXrr>%<)A?0&8_X;4viPs`@i z_$9HvD}wHiMmAn0;1hDP73tB>)2-f&}2+4)^k>$@IYO||qU=&MLTL$R)GD_zfWX>s+R<$B|i);AuV zb$mLbbVK_2EVjM3|Uy6(OZmXUu-k z8u}thbWd%9_IeFokrewbzhRfDsadsjjv4tW2qm zah4os&lOR3Xc(u;`F5wtXjp=RM|L+zw*xz!y{eR~%P6Mqxkdyd36$~H+Yp4RUD_tB zR$rmyi$z3-X>2EP-RXrIuu*CoSt?8uuwj`4bmJf-w}=r;y{T>qR2Z8v3xrC52{!w?7lH~I#5o1At7KJVTE1Km5BJr(+lvxHLtU)SrW~m-8|W_L2oqp+D?BI-V|)M z;&RrttGm6RV+SefrivXacuX?m%bVjYB109*y$dcWT}#ZtUm?Gx+SR zlKGGMr-$~4;X7vJWju2Eng(1M7AmBR0c8nXw+wCuhGwrus(F=&jCf+jIgVBw_tN=v ztfKiXIbjB6TWD{%U#beY0(k4Dz{an+AT zqgHmIX3+Y<5^fbs;`8D=Vbt5iUct9vM0=a+(9dUlPEQ}tpK%jC6V6}X)a!kQ_89fPFKP>i1%Dsw;P^-h-Ta~&ZbU#Q|FUYhxlI$V;xNAtPzGii*6sy#^;O-ccQ{n zl!&5<^lxze?Q|u@(ZF7Zj$9kU+WW%($sRaeHFadTx+gfHAnt=n%1Z^C(DFH&S8-2e z=RV`bodMJQ+#u303Qc%wn3dZbWLW2K1gS7Y2AYNP7L*gQ$oT_Lr5WA(4k)=}Pnsh(Wl&y+iXM4qjwXI8ptEi3opqRlnkh z^0{)(Oj@iHleYZn)MkEa!lIHO2v9$JAp{BpEs+$P^RSWteg*H7jj@F0ANB{NNEG-J zO)e;?F{Cq>C|g)p_9$^}%pH)QuEOgPfWx#OoYaVtD6H6k@Dm8Y>|8Il*&;Lk0XA$W A&j0`b diff --git a/navidrome/stats.png b/navidrome/stats.png index 86e217a48750803bcee6ed33ac8bac0dfa107e00..93f67acca893a95852ed4b5211bfe5c9202c34dd 100644 GIT binary patch delta 1463 zcmV;o1xWga8PN-n872b&0019Did_Hz01{A4R7L;){{R30lmXM?x%09{;L3pM-l17| zks%j<1!YM@K~#9!?VX8|ogffJY0>}xVz*0^5w%{PWsZz}; zh-lIU(t9k`lrLJwoZRudE*q%aB=qR_KyZfV*s&iFh`mF4N0RQmG9bNo(#8Kj-q<^T z53;$kh*;Le7!0}2C0%gYFytV82ty9i2Q=hR?~o4ZsCP)mkOO^?F4=43K+U9!>!*t` zgkeWBG!c<*!(Qmf;U9^UN0gX|^Y;;aY^If65g-ktTX*z*MG9T!nRIuSWYr-%Y{ zq276?W4*K4VZhWXvG*!q&s)<9hhd3-y}yrT{`qHmDz(bCruQ)~>km_@;EWJ^uMCs@ z{Fp!XE)-GJ$a(OB;LH%5n`MFY{!O^)at#zS!v(i)On{@4?9mwu<4=WM{wDmBz&2tD{-F6r&bBWK2G>@t-#Z~Hce`ky7xzaee!RF zr;EBiwF>Dk#9@L+GUar;R)vFx>f$`floJfOI#cG^S4T8oluNyuGB2jz+3aBIO_>+d z?`(FcIAvZ)zq8q)RTJ)pekTmuIOi$)ox1nNIZwHTFFUl(d4hh|eA$5-x#D)aP0GTR z{IY{k0$tcYU!GA9eA&TNlsJEXXszhJ?0}@#_Cim(QRAnx*`ZF(wW6;4vIB-(jhw6R zU~k?o!+(ymo$p# z9XwpN3OQGadY)6Dq3$iSJ!$bM`GWMy%=RQvC*jh#*`6Zml2G^+x%YPYW>W<`09 z94AI*6!Y1{}$x3qAn)GZU;#J(CNXRVOxrDO^Kc4 z;8GylVK=ZAW^3NBt0W9tt+FonQs=A6oe-|6tR%~J)aUWVPDD4DU$gmfI1-QHO1az->nh-4x#W)$kv(fEu1cu;28(< zU0o8LV9C8D>9Mv_<(_eqmfYjJR$Y&GCzU&T8}W>LBR&33$)%@%{rrQ>mYn9GpFv6k&A!#?D+ia*8CFh?!qm;Er}UYc`jxb3*+&cUA3+zz)&h)X|&*1$B8+61sUGn+t>gjU- zTX@@iT~B>~=N1@tceLT zn9wSB-!*{+DMz>B+YD}W4NUgb^-_4^XHaIYs>#NjKN2zw)|KMzD#q8<>Fd39KdgA$ zV!CQZH8EW;=Bk)%nYpSat1hAdeT8QLtb^fVGXMZ$?*R1u|!ICktJjdk~L*X zL}u(Eni;~#SmvAe`JV6p?~i-Wz2`a4bME<_bM86kzO|(h7pD*>0D#NHSlvhWtg3p$Z&Dt zY`h4sP8PSR)D-^*+M97DlGx_2PqE0G5wwHO1S2cjDp1Bi%SCR-3*GoVE{ghyK3a(*N?+&Tf# zlbZOHN3m1%aUVNrbr_*-jgO29N7~NMQkzU48%0Tl<4+3SN~mc)>7VZE%fz^(%RT?E&*9R-5?Y!R$?K7O-C3 z`xpT_a6GvE9}5t`8A0ahx09$0$oX=vTnZ;7S;HeM1U1+!uFi|GgeRjjWJEr9iB-r zYZ&8_#LtGg?Eg%T@1XM-;Hm9tJdU%2V&<;T!9j|(*HC_?8%sy9N0st6x^3+4U&jeTdLe{ zo@n6?w4-Kdx-HMUKPZsk+`N_L5+qYE3xOzvKkkTz> zAM5%X23j3Gas|11JfhIFfi*lKYcYRO#TL?0t2JK#>2~hIh(iH-W7(+Do<=|a37_j< zHeT@X2)KOJ>)>-`SP3_pe8A`7p7HMDwTq!c{FGx*KzLYNfY`2=GQkoVy;37zppv_Z z=fIYazc;m~m`tg4Pl;NW*ZOI#v-7z85lH)0MMj6MO}6iLFZi6y_^famMr1sO9Fkpke|5WG?q!Z+J2XVI!)fe2 zUOoXcUP01g@1iueY~8Td$fSzyWH$c+0IzFP-kty074!|U7~NzqM(J*aeU}3C(T4RF zFA3z$DhsC}(tu-L&5bz4?3VQwv-g8Jk6nK^{c+DsU>$ynd$k+ISLQciosqRk2#8r&rzi3@HkF($9{)Uvpr#;eh*ozV4IrAUg0AR>9CEf znx7gGc32w6>Fqj?J)}S@7t;9K_X{PX(OBJDC%EHSnZwph+3=hEXaJ=!j}lFG&MH# zJ5qvz`qgSiBNBWncc38if3c0!(a>&35s?O#yP~ZF3HX^&oT&;}H|E;fmo(kgnF-&W z^Is3lPfj+~!O5rLhWFSy3k_dyTRyhMTbqcI}HMNn8sd=7swM_JgjLWhtIdV2-@2g;(%SNZ{=oK2JK(WB4upNMUZYj{qU z?YYyP-zs!7SA4l`r^9yK661Ov<3$g;A}*bSTds<0Q++f1uqcs-&onco`-}FhHihRZ zYwEHudS!Nxsfd#Ytyv{?zsX$MojvG77{$Q8m@XJSGB{E>`gdH&%eB91Clhl>2rEl& zZ6d^1*~0M^lf}1uvoR=^ihs}u{<| z?nos!TOU&R{iW|2$*OBl)JNC)>ALs#3^*2XVx9px>$f7`6Ox?CbmE(mEy;uN!)WkfUmuA#28M5sHMm7nzRQl< zSUDWcfHfYjldbYaucGGOT%R^m8V|ZmzNxr8g%0ulq8yo@d-$ncpQY;7bh>i;nv9^~E=a^4d}` zp}|}7&9lHIHOm4WE#%>P|K`Q8W$x!%=xjSWm^k%O@<_|1Qp^@HCY>mDTdUx&?z$r={ zJ1b^R=#z>q0WHL$yXBfegn$!T4pBjunwRE<0o;0<*}Dlg{I>18UN)G`tc{ggp+hGo z$nqAWtKN0nQv-pw-E=Ef90RNs;%7I7u0U+YBGIhak9*c07!+4*#&j`wKZBcr{bM>r z`uoSIX=$uqNS!e9tmo=xfYWOOuG}KWuhw$9jISd5C)sQ#)g4{AQ}h%S)Q&LxBsdvgg(cifgT zi?PowC50|r;w(Gq#cVWH_*u)mkG}*PP48#jA>~k}L2!gRdf0+%+=zOXQ$#0*s-j%& z?DT7p{w-&wtgYMsQ~=Qk@-`#f1uy#180rg<872b&0019Did_Hz01{A4R7L;){{R30;<@vc0@Sid;L3pM6}LR( zks%j<1%63HK~#9!?VSmhqc99aU0Lpb<(X`Rur$cnfUIBd^}?j1aVScX+|h(`F`O;`upYXh4ga?T#>FPZ7=$s zU!Na(6Z@e1^#`xN)90W2m%y1%e>0jomOJi$yO%zX$2S6eo)j4OO8UpEf8D!!+kOcKB4OlhV*DNO-7^(_(F+9 zPAZfm7E3m1&%(&^i5kS*%w6s%qz9av3F!gnWL@3-5%@_@_OyOYT6tL`ZySBf){2!G>RF?%>rVE68Cn&K z9S-&B0}p@SuMEp#hvR&DDb`IxtDVdt{TQD<$l)(liZhzrHG$guVLrV`l}1|LQ)sxQ z7`68UeR`2(j^d0*iEni9knU098y&n#uqh<&%E6lwx!|OqN#dIvyd{x~O!|R6v+@p} znC{P~r>!L#**kc#x@>3k>03vCUMxea@#ejsS>hX_x^ZYV5b0-^_=W_Y#SU{`^YjwW zpFCw+wc71#nOd*C-)?@|YEI=$boJ*?G@Qsi{QAXHgRe!i_kh!-Jfv>hrJh*q;4O9A zEOiz;IF@*BuZ_hHo+X~yYoiS7S>l;ek3H|*yTmi49{6O379^gR%9&1oc1X=Ec4$T7 zdA&Bv$qwD=Lf*@;mv$tcCH06WJ9w(GR!QY-Cp*afVh49M)*AlZ)=!u3#SSf{ZX5D< z>&Xs&7dy0;x@`&SF*YS=SmHTBz5R+@>k`ih>WwdU2q5vCpl;X@*cs_TB%Tq}TOCi2 zBk_!&-eOD-CUJXEmz~{zb9dR|N!%XP?JHbPJOw(Y#O*=duJp5#9#-P^pxz4U_rMZ2 z2lXu}2NDLhs$Wt1_dpK-Cnf4>gpru9uK;R8hK=E}eSwG)L-PI~y%Ew|IARA9A( zkhrT(n@VsgB<`xy=B^Bj#J2}^Kc^~RsveLLs?+9Ulnr?o?X=l{NuOBlAR@Rc|895h z6RRDB#9ejTl(Ad5b|M{#SL(E7@um8tBk_t*9^(Vjg~UB^uH5(3O5~9E8I@kM%Z9`w zk^ZT?K={$5?^Juop`VEK>bpz5j~>RMhfzA=`V*`m}(W8fZSci1byl>wW z@qu67r}v`x?V%4Ym)t`E6Z3|W-Oz-Y{^P!_J@VEbt(hFBeiV3JEN)G=)x^A^)W13F z49&DB6=_d~p~;U`>i(>_(UZ1+KFd^#mLJ0j6LXhFL&`FLG&ZAiwWrwqNsAv$vpc?b zI}3L299%AM8b2^Gwz%?H{x$Uc&1$G>ds3P97;o`xdlo;~R3fL}tX{t<{;C#Dn2_07 z%(W#$5;fbCW2nF_F8jgM+x&Yj%UHB{3(**m83+OZ005`|?KqJ?7k>-`NkldO@idl|&N_aMf(1NsYo)6YuCnLzDUs(EbCONcN(8XW|vaXwpW)6-zK_ZRJ7> z7s}QaR~8HDHY?rMtQW_Nsl&rFGtbQPYn~tTex(mt`>)9#pA**B9+QMEI-8_yYs7 zBrT(Fa6=XT*0(YK%`nd$fPZ%c_wWdJ03Fn~7w^3JxYow?x0YV6-j(=_dgJU7?f|;g zZ!cbOr}DTpUr?=n3;bgWK*62L1xu5wmU|GrIDOLL-bBqGhIon_KHoX108tUEV5uCg zUq@~Hqw1OZ-)==Isk^J<{`BbFI0?ohZw>cC|2HC?V5{fVm(d&dlYi*P003?|o-Jdr zuc~(@o-L(r+Nc^{01!~?1y$YtRJ|jnz6cHg@Tc_~s%@7z)T&O7ZYu@=;81hrUInyn z!@cdHE=qm?ut~z!vf7~HmS)$~C);pA6#%pt=V9wS_o6AC)f(rhs-FP>_|P2gq%Z&^ zt#!5xb6o%+T^$!x$$xhMND&K%0YHXYd+wnYmH`0RYyA=vu?_&~>bQrh@xoz^FJ}Tf zFdpldwr;L`{-6Ec_8grp|64dRYrnTKXkC7@dZuR_H!cb)t}EGpjd;!hKq?dozHnr= zN@V*ts@`S&($=Vg-u;rljZ5Qeje~FpvLpt&+XU}vR6*}J+<%=6g>VP55j@b_h(Ukw zCUAIe?iqD!X40+^o3C0 zetY!&M~=-NKD|5iKuox=+^e7IxdYK!J-7MZxqq*o+a$!*-hSow`lYSsEMf(2ZbB`bY%KqbXp$CVq=K%CZ!0gXKm7C;Q~3(3uW+|nI81tma0lAZbs5;%Z@+i!wS^>Bq4D)4 zroyN*Q-3sd?O9s}kkEArD2eYkxm;Vu`1Tt0E2y1I%_w$7vLjb?T_RDQS)Vz(H}pU{ zMAUP)N4O(D6zLJVaAGa~lPlp4M28|he(^VFV!5E|1mTXPQKTm%{^m>+7gSv#+>soL z^mIkuoN*cMW*1Z)BHWP#<}YR==H?7NcVHlNU4Qa(`K4QP2WFl+^-$=6G>9VHxy>GO zMb{;7o2%QeFMja+^(R6Pq(S&4f8E|7n{Y=ADALE{jc0EhIyJv zF8NCwBMTVI9N!?jz5)T2J5sTFZu7#4HH!4n`t^ao{qX!Z z=709jgdWI!!Y}z-AB0V~>%KK$>B5P%q9`cR$Lud>KH9v#{rz8lE%ZR{ak;jPD(5bkh} zxs2%JlYjpAH{bpHPuIQ~dLZ}sT7H1a9e+uqNQbW2RwM9Lxd%bG!v;kyPvyAkq&KN{mz$*qWJKwPs<ZJ55&*fG6u!FIL)SdvTfRX=T3kMMSnVm z^ygoEba!q0dp{5Vg(ffGP}L20vC^-iOE=E_#O#YAhkS21mt&bqA_pu(yEh(Vs=ZlB1Od*GBXLd<1ERQ4R5 z{p0D|VaHIvsday?^V|*MwH!zJ!hiZ?8?Akk>?6VA>4?_Ck=gZ2TVcl_^}4mRR_=v< z(_GrJ{z4)fC5m(;A?eNx-%!OsDAJLf48y%b?;DmV(vhwh+U~~Wa2LOu3YeitM;>Bm zyBm|kUA+ET*j=l|*ifV+Kk0U6I(qK(WS~Zoj=bd-?#9$NO{IgM4T^M(M1Q(%cbDNV z^>C!cWWp{Z40{ym7@>6A?k>ZfE3sLkNXN+STikWy{M~(vyFw2{kK?usa`Mirx8Hu{ zHbpu{?(2&W{Nwy5$%Xrl&;w}3zW~B|=hfRwldIEd@#6GJmhQsHm6dytw|2j_jLkTz zuDaA=XKk7IRUMear+2f;E`Ly(+doqj#pddE`NNQGdfg3a8~mDQ@BxepcQ^t%U4H4- z+<}>=PCYdITRXcGlQg--&FFN;M7aCMZAgLsZk)gS?wO4r{C?l?Z|(9nd(yuGxIuO{ zDAECAq3*ip>mI6hqcTLeyG4->*n8vI8;4HK4?kzd*F98`D86t6xPO)0gh*B8UIdDG zDt9eaVJ<#Nkq)@Exw`%O;s?)Pe`4VGbzHf}a9I@!6z0Id0#1lD)12K-!d<*DTkWLJ z4mqQ=p?eMl6l6lAmkX+eU0bF;rk-nu5$+25 zgvc1f{oZ?MuKGLLaDS&r2Oxc!p;<{?P0|3&}9PR*sr0tX*SEV{NI{>6huH2{pXS~PB zWFnpzq=${$n}2Owf9O^=2h#ZN{ze<>(2NgiBIw+>@u6>7{;$aAC2nB0as8pFqvx)h z@=~+DdZ^xB+PH1F;>LylWY6P3+TPvl(25?(9^}w04@&)id%B;O+Yi?vn}h0%rVKtW zC(+Ry?&a$ZekqN|&~rb!ClaqSdF&5l(tF0|z*CZJ4u7rxK`GwL2b+T`dX!6@@8yr> zp=oWL%I8&N`uD2}UMGhp_uQ+Y*!)Jsmsh76>2##7l8XC(9Rq(n^}!VS2cos{@Qe>l zEHPp`G_!-MzeKTdC^ny0wErvG{QVMl(tqQ@m>rs!e)gYNbGR46uS|ER(utw%=g!v# z|D22uM1S$ZNEjcQ^pBFL4vo*NQM8AaO;FU?9Gb}T(A=*JR{bm%;GHd}#@8w~E-X$z zeb^j`*~aSa9kM*M`a{LWgB=>5m-Ldz56%9d`k$~z`+2EWg;cx@01&hA>#73)oKt;6 zb=p272LKSW*4Z-U4^-{|kRlo{0Fa^9wPh-#KQRC#r(?DZ$qoQ1YUsIlPP7C7L{6^U eY0CgW2L1;Zu8>Xu=~YDl0000R<)SEyI$4(R{NC(T7 z>8Y6h%pXhmEo#!8%hY{O&}9!@Botaff9Li!41IFeZg%Pt{VA=8y$}I)E31(}w>AR}bd!C061t#P^jsh(*AtYQD{iXsU#g1S z%&PYm=mv8$fo?E26X*tWGv(|-1bS1snL|?9&;{r{=4Q%?_t{Ou%G~MP9I~Nbf8}P1 z%lGe#XD&K91DW=Q37HNl=5>JH4fKdVk)_20y+7y@k2cfLq2AC6c|LUsKOvCo)Y63^ z8-X0qO$2g4HyFs_-hmEu+&j<-bcvZhi267)0o4)xz@^bak#?7cgIe_RjHnVe~@>;A9N`&(W5LG*rY&l9R2u6aKWce?bV zBnqJG3DJie-klk_R)=N7b?;6RMYF-$aM`=F!=>2(eF^$W=xlayil<)|ACz_JMN6x~ zW(QSMZZqnk@;eXM?4W0E{X@Ob(94!qgP8+e$K3khuP{HEoRQcf8*}e^f2LXgJ}!*n zjzGmCwRs0Eft-?+Q$H3nXL6<$@1FGFejrDV6p6KOH!G zW5lnLlCMIKu0N(qm2}D~C&rapdJ?+SUYwezI@in3{mq#vT5yTKEVPcLABWPu*BMg7 zlQZ_ZSu@c6-dOR~ozK0`*?;(IO_MVfq5A>8)-1hpk}p!Ye`^&pZ#j^YOH~crc)jjj zG7j9m03GIv-FqeIFxMQtOC?MH#)z=;c(dEaXT)(U=%^Ku7>9UAnECD=>Oe=``}PNV zeAFWMgBMarlt6|&f za{0JK%P$)uf4l#Yg6gO2tyFbc#WNc3${Ozq8egsUa2GT0{7Lk_ugYz1|zu%}=RJ~|wyelq$%>3;+!f!X1kyQD-^5w-}U)3r8jmB3iUQ8;zw7TmVWOuo{ z50dX0V#N=tm-Q2xQ~UP&-!{Hp?NL(4mVUU-z6}qyQ7seMJUp9dW&88RWwdy*`sFUG z?Al#!?O$npt=fY@XI6hDi2{*ffuN3>o|{1kG53ye?}!u%gnLI?^bbHn524M(01N;C N002ovPDHLkV1gES#GL>D literal 3032 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 HpydAoe6!p) diff --git a/nginx_webserver_proxy/stats.png b/nginx_webserver_proxy/stats.png index bd4a0f8719703803ead29002e1669aa0318a5c74..bcff9da0ab99d1c7f8b2b949e0277d10c1489f20 100644 GIT binary patch delta 1453 zcmV;e1ycIN7RU>b86yJ#0019Did_Hz01r@1R7L;){{R30l?2qiW8~qs^A#_Tdyyd* ze+6GjL_t(|+U=d~daNJ}gqiC7U-LQLx(b2{yM91;=SQEqrj&I^2q8h|0000000000 z000000Dw~H!+W5^0RfsL^OsIZzdxo+%^d4bLX*TwZjzoa-7GORIyEK6Ol72NVMWvB zi>`S{NbgVoJ`X?fFQ;K5zflE)2-IS>e-}M=9#bCa%e{%^N+TbCRH~oa{1X%%00000000000PfD+D1uP^g|?Px zCg^9Q64LupbZ=7{(tDcI6Qm2Yg)L0_y$eSU(mQnIFz=8K>6mv& z$B_dzNLNbrS*M#NUGX|S$lf3ff7^>ACkN^M&FN@*Z=`RVcUU*G;SyVS965qBkZ#R; zFUaeHbh}9ukWNGn(n+EKHq1M7I^H|Q4jpc-ieiUO!>|-PbhfoRt2v|_4$dgG$wutm zZ0tQz6|4F11RObnGmsAHz?35g>HRr!^^-mh!%qQ*VTAO3N3LSh-((lEe>jhkVH_d7 zl{x)GvZH3kw}I$_eU&fps#vm(!zK2)5B5v8R%^+7|5fj+Cu7s>7jCUSPWp@RJKe7r z`^Fr;mWmy2Cp_WsnP9)DYE{lXmG}M};r7@sqRY>pxYdyxhw2{ki~Uxod$|)_do}L0 z_2%qVUF=YaO*iN4)m!W^e-3R;oDEI)wH7;6Ytt>ncIyno{-?bCh0!wQ*QWmU<-NZq za%Tdg+r0JFDoU-o7PT~h4uYtB&e8$F-0b-FGncEGOR9jq*Uf3w5+#SYl@`#s-B z4<*2^pJD08h9YwPEXglMxvhMv*nuVaiP~POJtYSMpGUgIK*RN^V!v6QsX>hjNn}F41A3 z9Q{pj20%LKF7^&MT?(M-fLCdQHXJ!Yx=r(*dCDB58#3>Zf8L?@uJcL1M)dg}nE77H zwfzEZfiN6!ycWIp=^oZ09hkT6U(NWSUEY&NQ7CZ~c=RUbeNh#PZd^^p({h%fNZEj;w?25V|cm7Z`_$Sf-*uPBQTb0=#iYiYu?0Y2Y z)|W0@){B+xi5`*Q+!hI&3vo@+**_yO_j@UTSggmPXgDJGTiuh5F1LH&T^{vdC8|I{ z4qA0Pk6?aA5wAzG%4&ALnVbdac}Zu}qAuxG zWyoeWo8N=zZdnoqAj1N{I%qmJ0{|fQ4lwV46bgWO2X)~e|9TM9Bo?be00000NkvXX Hu0mjfq5;uB literal 2884 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 F`!^-cUjzUE diff --git a/nzbget/stats.png b/nzbget/stats.png index 6dce46df4f26259bd018580fc1b04c5bb66ca477..30477ebbb349df9ed33fdfd70e37e264b0958142 100644 GIT binary patch delta 1488 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 diff --git a/omni-tools/stats.png b/omni-tools/stats.png index 08e7f7c54ba00d69bed2e41469c5b6a9b9106f6b..19e5b3dbc18ee2fc9d34767e973e2d635f7f6438 100644 GIT binary patch delta 1465 zcmV;q1xEVs71Ill872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa$SC-{QLS_{04N zks%j<1!qY_K~#9!?VX8sqc{*n>jm@wzdSuLwn0dM5IB~ozf7Cr-Z-M4*hUSr)$jl3znMWx@6G3DdVh%8x95qtChEUvW$z7} z{SNZppugF^zEKDr>^-^n&(E0yU%K~SPXKd&gb+dqA%qY@2q9!&?sxihKG5ytsKN5n z9u0LjJOika|GV{n z;RGq5Hw^qSj3jb?G;9LjwRB>7i^zu(QnGZ1%c*8qbhlUEh~vj&daTh_sjgL^|9KeS zaqEY&cPZM-2K4sAc!5s_daGePBazF44)uD&_)$=bbm)mht}?HlVI!;EJ>m=KmDkSlNXbNhGi*n3oJ7uH94Dqbb?ZQP=++OBqRQ5nTPLPB zLi}-|Ti?&#bCY+V-xA12yMN}yfv-}l5&*sGKwd;DxhetBs}AI+2T{bv&j7u?cGeR2 zE-d{IklzdZT=t%Z4)qK4c-S|l(d2$fB6p`>AMN||o{bi{o@(TDtvalcpJ|+b0ea&# z^6dU}EWQ02IWgULAP2g`Ku#j(Fp!hTISk|^at;GIG2LMxFC#@WY?Fb!sB2YbbgecR z$P2qx=}&Jlke79>ivIK#1G$yVTBSd|%|KoTibSr-K+a?bhk=~Q4h{o3lO6m8^1{gu zKtJTy2eSsD8_>@WTOZAugwC6P9V(os@CE23a<$DKtJC@#Rqub^6blTpVshnN#W(Ve{H|*03N6r9!Y!~>+e|m-9s!zAF$qp$? z7e2k2cY9_p2<$YG8+!mwf4VE5PUDPI69>9O69>AJv<>KveLBz``gEXwJM`&5Ptg9S z-hpqEk|XFI%==*fseC{mT>;;*^v$KeJ7|WT{CU?Y+g1JPeJuU$&%8@XH4NRac^AG_ zxyeBkj*{~`df8;H^ryef8rp{!B}gtmG7XZeFOeIE8D&6U>fWoVvW-i|{~$xTw-&jO zF_zpb^pUXa2Rd~tPtYfS)5fg5K<~XH8|c1!x*D6yb~SX`%ABn(g?W3k^bz2#%v!w$ zIw@PjiJZ<9g^4%4(9nDrVd6cw_p70kwso<1U>5X!;3^G9w--?S`ojCqP(_RU>&P8Y z@cKT~fSA^TjF+-_5BE?9I_loHUl8$8i`l^0gT}qpRzGNj|ml0wOnL^CFh_IdV^T{(g0U$ma3`T9M*L=m$ zk8k;$oED!f_kT@&4Hg}JZ@#BVex_C^C~$s=H;}CYR_7>fUBuhi<9oaU)co7<41+&k z?k`&xzgxi04!hT=2)9FBtFnl%3|eoc&?r_m5*86|YVp{A29_QiB4X*W0=Cc5qK25h z%(ZjcIKzZ1v8)32kC4gXa0N}#49C{Zv0Ev~^O?7FBDV|>QkVrrc35t&zE|Y?@C>wl zj-S8K>WJ|x*h=KKZ_>#fvN)`hb*gN1!6B$4S8X#0A==&%?j13N0^#0KE&2~7vl0_U TQ7Fm)00008NkvXXu0mjfeZJX+ literal 2799 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 Yu8#5yk>{QwJ3m-}x^U63+Q22@e;~G1d;kCd diff --git a/openproject/stats.png b/openproject/stats.png index 96ca5a55bab94e3f1bc0c861b32e0af2ac2e4773..628997b405e1a17eafef068f771cbf32d6aa303d 100644 GIT binary patch delta 1609 zcmV-P2DbUI8{!O*872b&0019Did_Hz01{A4R7L;){{R30lmXMqfa&78^Rh?a+Q)wi zks%j<1@=iqK~#9!?VXF3qaX~1Nx=7i<(badR;y4@E=lS0e!+rnt(pxBuzk{aFQl{>y`t$s!5t0RW@`2bc>TT>02xY(CtmqBv+w+2lNSl z7iR&w9q5EMeLCoL@)FS9Ff1h9(p~0wI-uLJ^v~*@hyZ;;M~(p9yd#%Ao{k5pZmMHy z&P3($bV$7SjxO8u)w_D=!7qPf4~q|g?(9e8g8v2ngdH}Y0sSIP@zBFB;}6IW@Bz?| z1FKfTu*(wpxd(Kkj+~EMv|j+-Vw>)N*(d9LKsN_Hjr<`7^lLClE%G_38*bCHkWWdS zQe$kIEj<_cjMS;k}Z;h2Q zpu3VCX-H!~ZQ=@^k~j1~4}81VHBSX^q)o3fFwTIk33{C=Fw=x+EI4wZ)?_z^Bd5iY zTdH|rvzWSiM=sQy)5@scHMHqb>`d73smvX6j`_tHPEl`|8UT<}mfL%>zY^ zr+aQdXo^)Yg%cy?SbE?lMma@)FjniP1WPM869i*Prz02I)xtBZc~QC8q3IH|34A$? ziyay-Hf1b!5C`42cChW6I(0r@Mr1#2HdEIXh7H`q3eB6ks*@d-PMv6;8oDS)&UcHJ zSvPexCp&oVNP=hH1zHUBuE@;?V^uhEospXl#%eg(fd@3PjDGsi*!z%w=Wn`#FFe^{ zz|iU-o3mWOm&}|QF`n*+)w2voZp_RX&*OT`hAa4@#SY}UZb~o`x#bWIm23#y_lT~+ z$W2psGRM;c3wYvIojIYwnMFo}%7EStx|cE$*{Cxo5V~hMZK=&>T^w{t$R#%G&%=lA z96%%tx-jJ8nsvVe{XTtvs*JuU=z#^+rYwKY+rOizltN!*x=k#_sZ5&$*Wg8+p?k4w z2U$cz{?)tSDmzh7N9djf`^h}gyz@Oau3+gWqin6l(?ug6LH*^Tg%-su8BcGu$-i{u zJ*ls>uXV<9Uy<=ctARBHKzf|bdix028qlf7P87?c=R{^N7ANv6DUqKo3AZIEd6A`m%t{WY9eapc(DSQ4N-a#$1&r*Kc>J#&Jw2-;?WQ z>7mDn1(dhRY2m7W)vM6qy-D)qt~+v+o5`bIhmlM2kv*|9?fu0^(-9d+R$>}{+7jmP|`hbiqXa#jZhs@XQw_1Ei zFZcL9p=U=gZ!b@hZr`Ha-NJ06`P57r`({C|>x!V9-zz_VKI$J*1^wm++7+eRLcXCAg8)!w}0n8 zgFPQ*+kKTXvppoG{G^$=rpsFJ48}j$Xh-~6m;6^K^xR_beYyQDPVb#1{Yd*NTO`}f z)`rP!k4aO1g}s(*vaG8m(xhqR|(-DXRt_i~b!K(!q3JBF0J0wd#D6|mj&H4i900000NkvXX Hu0mjf$lfBM delta 3494 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 G7yTc^5|Hu$ diff --git a/photoprism/stats.png b/photoprism/stats.png index 59f9885ab183711fe8df617406b54e125e1231ce..aaf48a73a05104f17eee2ffefd5ac70ebbab193a 100644 GIT binary patch delta 1514 zcmVT))9W`+1G9Wf9bK|u-Fko2qA6L)=u<9E0DZPG-9(@Z8bzf`&+qpH3^}Q_yfr}bsS4jIE5^{KL7G6HFh~>V z69#DleZnA3NxdXMA1z4JMwJa+fUYq}Q<6?spsNhh6jQB#2m0`J3qx*B=)#yje;ss5 zEV$Hg!=gvF^w4_xZXzi_*VfX%yLX^ZXvhJ50z(9MBolfev(_D}m0GjWHeQ>aF)u;~nTqgD5tRx^L$@(DfQ} z(NhV4t}}=t6h8xWUERCT(y`u8f1pEs{2+?hix_fvZ;(7ki7lQhbRmsY>}^JRDkdgjvVi0kP#>nWhemR4oJ^>iDYzX3gWX?4W)^l+oLf1dSpy@p(b zuD7&wwVNHHCflsG+yt8)5@WXoy3WlGsZRX5E$0^}{vY%e{{E-RBd>#LZ^YfR<^DVG z{qF)!XYBu-O0Q4F4SQ)ozi!Lz*K7K^_TF{u-gHy@%?@W&%X>ARLwGOh+fUz>#2RjPDETr9hR1mDMV~Hy zU(~gxm0Bjc4Y@27*~5A=-lj)mkE{+Cf3)hG9Wrrdwo+R@*f*}i%apzRgRjifNAbO9 zcigs0qSmhbP!+!BD3J2kM%ka944-h-gbHF?QGqJ_R2Aw8lhii^@&edLL}}q zuXhgXvU^Pa4`v1Wf1ta2tlY|~N)tT`u*s>Rwc~TNK_72Js<+N`cJS(gKIR_elTz2; zlrbpu%_zC{edBIBPnO)WRrx)4UQzoMzZq9??6zmzyF3%RuRR@l4tC$mou67im8U^} zb?SM9iov^Cv#tv=?Ef8|ZQe|Jc|TzpeU=o2*Y&YNeh z+^XC&h{8|O#Jg^jyRgb8rpJ2v&UuY`9ZC>Ae&ih_*TRtV0iO$cLigTm%H}{l+u?z3 z`ZHUngYH2-9drls$)I~@8O!H@j-@^wbPwuhPT3klXAB?fD(&0pZw8v8QCm71>nd%a z&u+*G(6x2%e{%kI0lKd49q2P&=g}0p44hnV;WO;G9dtB`xL_5TF)n36?S^}(10AXF z+bfLtXhiObBO`ZnwQU8Fqk$JlZ%p)IY4(!NE+hGA;S&i$*&mXh7QWe6Q(E|hVZQEf z*-hJa54Y7Nn0{Lj`T9o+vVZTgie;CTJfrZYtnj9wfAGz6|9p#?-~8zzbH}WVnDE2R zo|x?P#mS{%^5sOmqU_~Kg*V0N)66#~h6Wx6E@IA0U!MHur8dcX6uw#VVp2ILMs9D_ zj@KXAPX*5ETPS%Vd)e2}oZOGE|83#h@lESbph1YwCKI6e#}k7mE! zWtE+~Jjuz>% literal 3256 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 R363`aEX}M<%P+g#`yV4tX+Hn} diff --git a/piwigo/stats.png b/piwigo/stats.png index f61d173839e462273daf57ced3929f59cb4ca3e7..ffea78bf2c0142f460a98b42608aeb60df9d3217 100644 GIT binary patch delta 1358 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 diff --git a/plex/stats.png b/plex/stats.png index d94d1a6583348c27486977f612131db9c5c32541..0eae3bbc31aeaf18ae5e1cb81b6977c2edd0469f 100644 GIT binary patch delta 1232 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 a3q%dPfhTdu2PgkV0*>~l?P$j_G5-U7K4P%| diff --git a/portainer/stats.png b/portainer/stats.png index 5baee2bb9d514b06356c5284409c63dea934eaf8..54d6e794d71aefa5ce131edcc6f5f8535aacd44b 100644 GIT binary patch delta 1301 zcmV+w1?u|F7O@JD86yJ#0019Did_Hz01r@1R7L;){{R30l?2qhU*zAj@}4IJ5RoAl ze+0-$L_t(|+U=d~cB~)_MTz?U&)hXr$NGUvEDVtB^J7{^E|2qAkniYx&YlH zb)dUmc0PeFsD0&j4R?*5kZhF~2G_Xe5YLeyvbbo98K=+rVIRV{YlIApKVf1V= z2J|{fnltp_RLRh#xc81SC28jB>4zzJ(mWk#RV?I~2l{b*7YRUbRO3|UuA-+qe}KM^ z*QG&+dh5_dH1`9JT)P@_^>pUx9YGJ7y!R(VHPE|;PDIWlbRi<=Z+L%15a?Ajm4ZGS zdA#=)p^xQ;cY-t4p~p)D-8ggsdM6sQK$ploT|yuXYasNl^4=v7hBW}4;0(}#9vrN< zTr(mfXEGp1L=NctXVU2D4tqLDe-z%JpQYv!oC$rex2TdRgovDpD6HxU7ZDa*>_b2D zBpcSkdW&jl6-O>uSZ^UB=P(MZTv`RXZRjGTK>LGEPY*`dTd?U419G~E9NDlQpvU4a z1ZR4W&8QqXVN(L@(4%Jw!y0hj3+zMz_2x}_?Y&{q_o4HAxV}cJBSEjSOb1sf$c}2-n>cI z1!r*N41{KsZ+2kHX2OqCz1aciHcYzi%??1f4?Pf(v*^d^-s}K$8z!Ai34k8%_KPGq zW5A>W3Z3hP7bQbsGZX$XPJy%sSnslK1GwDG0 zXwrf1(4+^RW%Fm!d4IY?lTJj=p-I1BB!Ty`nM;1Y--+TZFOo29*Ms{NqUfG8>@L;4 z>#kf+XUf+1bBoN=`|svM5k@?p-YD&t9@=wO*}5eDAKF0g&|A+ze_TDh6NaseyoTS! zrUX^T^-9h*&}+@k@{H?1Kl6)+e|yJmtfjFjf!Z&A9k&5~95OdUyEm-GFzjy!j{u&= zv3`foY0HVorG+`>JE9W%sRVL2vG-S}Jt&>z{Lgpe|E@~yopEf_crY+!?lsAcPulFw zSuWq!)7w|Mf_U-YfBls@7TVqhWs_Lfn^wKT8i%Xd!J4(X;as>SxN3% z36SkWv-b>}le%uB+YF{MA zAyU}gn|r7O9ho27vsrx97x&wQxy@W{eVfQWQgUBwPdD0ehvbF%St>X8bTo+%rW_PHs{HnHu;`dDts-`znc}TtJY2N#>!XP1j7?xbC z)Z)6*@2`p$7fsVOrIl?_w_J4@Z@oC#j4w+KyTe^|l2}|c! literal 2894 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 G-uVx56_!~5 diff --git a/portainer_agent/stats.png b/portainer_agent/stats.png index a63f3ec3a24e989a687dcbae44bf4b1f82397860..8af7e24b4ff452f05fcd3dcf31d8cf757b72ab5a 100644 GIT binary patch delta 1393 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 KDe=7L-~Rz=HIaG% diff --git a/postgres_17/stats.png b/postgres_17/stats.png index 6767a18acba0b18d50aec94bcbbe2b530b08fb1b..7097532625d24dbe271cbc47ad2dfa2f7cc85ed7 100644 GIT binary patch delta 1337 zcmV-91;+ZR6x0fk86yJ#0019Did_Hz01r@1R7L;){{R30lmXMfXXW6u^2-$SUy&gf ze+27EL_t(|+U=d;ma8fZMice@pZUx>%UZ37g4B{^e?NL}*9-@TZ9+@{MG!&=A%qY@ z2qAr z1VHy-=_-p^>pX4Gcy;a7-}eM^Fo&xye@^^0YwL1PtiAhuiy(i2TOvGHf_8)uLI@#* z5JCt^4~dM_2XdUIUOv`!3I--bMGEM_psOm-L(b{P&=vKsibW>bKu+5)OKaFlpXo@u z{(IW{W}JQh%QJxME6_bI&(v(R0Cbnje=}7Y z`*)z5e;!Qywzf~spnjn59LYP_$fRKzQ_IlxFx&vTV@sEsf(v8%BTeJbB6{D&iK}|c zag~kX|Aoe3oJ!Wh6lD-JS!%=5e~!FaAV)^dA@Z|8j^}iT$blXZIqp3ma!RWKk)N*6 z0J=Zq8Ae*U2n*=)P$p)S@1$XYf8HtbVVLB}Dw|Mcvy*&l06n#hjoiDLsr(uvm1OQ6 z=%$gE&gnpRfIJtyr-Jt@(4pQr@+=~KY%d#n5IGsSh{#J9Q2^Zma(1|giB!xe4=#+v z(t9xTQ660ajiqOc-lHV>`u8X*Kpk8l}}p$u~-?0h4b8a^d}Y)n*5v+xF|s=>h$E)n*4Wa<=_? z)rpZGXHrveG3M8A)YB=ge_HkH)yWxEN~>1=di9$fD6QJ{>lZdKDy7xNb<8gY zv~Eg9E@0iX^_v}lUOSUdV)xAsKsP*-*S^^S=*7W$cf?sa6U@X3{<;NtT#Cj znB+_ki`Sp6r?Z#snD(D~_UlyHLImoqpsP}4GZUycT?R*$&7z6le_iEFAZO6Tc}@=z zvjIJ1kz!QYe0cK`OOIYw)zJ8!y8TE6|2@l1l+V$Vl=FJWp z=%|0O!vS&3YxwCN>Oe>CeS5PRAKBu5GUKoBi~ZNVr>JR@e{8jmH?H<1a?)l#Lh10g zQj5b9EwrMWOCwj>rsncakC@veZ*>247YU}?tU5}zIqXS`dfNWE>7J68mu*yYX}yn} zo<5#$hvegH^4`n*(ovgKPw$Jn)YHdJec00mz@^J8Z;@(rZRDhC&33jhEBNkvXXu0mjfZ*#IL literal 2601 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 s)@gYbl5E&{{MKME6iwFxNbHzd diff --git a/prowlarr/stats.png b/prowlarr/stats.png index 6a82085a8c89bdd36fcdd7afb9aff8b118c02091..2e97e2f96d87bb50718ddfb2551457946e04f52f 100644 GIT binary patch delta 1398 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 LNkvXXu0mjf0SC%M literal 3067 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 diff --git a/readarr/stats.png b/readarr/stats.png index 372023397fb3e7e529ae8e5a770c028341ca68c7..5e376f79ba52e644224b4a79da76fede6ac46238 100644 GIT binary patch delta 1321 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 diff --git a/requestrr/stats.png b/requestrr/stats.png index 3c8231c6f1cbbdebc3ece98adf144f0a02655003..5e46b42ec183a858b43a2cbcd874367f9a3cc4c1 100644 GIT binary patch delta 1493 zcmV;`1uFXV8Se{_872b&0019Did_Hz01{A4R7L;){{R30lmXM%pYOFz;bQ=eQ2czS zks%j<1%pXMK~#9!?VaIr;~)%#5#-+gm9I_W#&*B~$AA#u{^*Ral;OM<2(1v#0RR91 z0000000000008YEyaGrEHdy`TRUSX?53+s~c{UOFH$=MJ`IHy4%cCroF0Tf_&iwr( zST=mS#ma?w-sGY!e|G&a_GM;&{u89*wgCWt0000000000xK8oP?GIpHm{@)wI?ZJ1 z52hh~F4B>gXI;}{qzf1YWox<|IC4@~&QjHUs=+%nNdww1q(eHS&yc4H=@aH@%BK$w z(uc~^^hsosE|6|9Pg6e3GLUXCPgC4w^E;&5{E+0e*nA(H0UAkvi`R)P3raK$%iA1( zpL9vO7?5t*(hCI_-lhRdf0tucdP_`Y<8_Xc3sa=B$zE#1(v3NCMC2xPc)B9Yciz`l>u-AwY0p&`m0zWvfZ~o$z0O;-P(#h+J4veY?T&mq`>OkRGFb!X8|8RKR7cG>BoDs8~gPbk z^^*9@AdXzf*U>O_8^M`SBAsID7Dx|eYB>(P0co{ZDrbHlU0Mz0NimrE;L_?T0x|WW zrPXsz8Kyq6BX>665mP^L*g*;DzUiXCny!I#-+Eb?`>=zGh@9{C$8%PUTvv_kCAfTN zteE;qJ-w^6`t4CAO#Mu7Mx>{IwEDFx#`(50H#_u|R=t8AOdntrebTD$zdo3+0!PAz&^d6&lM&$_5nz*x%kd$?D|QsySWN8 z76_N?IFymRxNT+lAI#*;A624Ip|Z6iW1&9GZRsjhw#FnpE`&f&?@D@)XsP}CAe1|D z-l?uwHP898?$GH;u~Huy~-?Ty3`RO;kS!ZI3E9BHin)CEl|P?y|)=KfW{N zM;b}1{qr33E$v~mw>Wz#k+`#ZOKp`+!_G;YvA=zVzLCl%`z!hCSh|uZi5_E*UoGe@ zZQ0bMGwCq)^d+L+5b0jiIvNx(eq}C*QqsL*_bIuD+Tr^+{>MmEMQ~ZH0!`O@tIR3q=X)l0H*b+UUgtFChIv_rFkc zA*$?!iZeR+3_osvLpm4*<6XuE)SYewqc8Wc4(Y)B+Pxw)_~R;RI=g*;adWBI{83S_sC&^gcvsy1 znDbSksmNpGf~UOp<<0NEs?)s1;Hxz+W-6y*%|Xj3WS;-00000NkvXXu0mjfhK=|$ delta 3304 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 ZOvaz~zUl`ZS(tPwI)wr{0{&XgpB|I diff --git a/resiliosync/stats.png b/resiliosync/stats.png index 7c72d278618e2f69d18f0475b2bb1239a53057bb..5d94e790b85d6b1ad1180e8a7067600ebfacd500 100644 GIT binary patch delta 1622 zcmV-c2C4a$8}AH|872b&0019Did_Hz01{A4R7L;){{R30l>*e^w)3=0;L3pNX;&~1 zks%j<1_Mb%K~#9!?Olnoq#z6=p#T5NyK}r5N4bKa3F)rdsb`54Ynu?70L}pb00000 z0000000000006)k(BmKd{RP-!9+;Tkk7?86_iNK)SRHO`k+H>2#D~_p%&F*O#G51&@=kbdat&Lz5hT z$G^kU4Gs$Oq=WSdoCO{GbV49Ex24}G?g6*CcLM45ES)(f0OZ@lunnz+k_$q=#=lF$l0=V!Z;m)97u;a1JXe{NS}uEs3PYy26ACt zd;r_6ik!Z5sR!Z98r-sg?o#v~3*I$1fT^>lRu$#QMO}OG7Q~rY^sZzrTgYmz9;BCsSDTAXHKnVcY#*o+7ZAvY#u0+bZ!Qm2kG^zR%MdDvh^0r zp)+}8;hT4netK=12kEtW@5y{A($blm_wTHe9in3FEu^o$ zgSKMUzw=IZkYee69kI|2q$mA*nsmBpRU-WR_!B{H59GQTs8#>YI@v*g#*od6tP10F zC7he}@7hjw=xUrs{kyW09eSs+dXO$Ykn6s<+-52TvF|2#`6p4Ck1+L~8v>KNOOYF~ z1Z|Q~E-ZfNe0p-1|Iwrm;b($S?zuT)7~7}crN|BHezp7e^}9LZe2UyClhhr`wM{&! zS=Qt=MGC^_8nuw_)wvLV!PCo1NcY+TMA5loI!O1LR6Zv@SBzSpxiXL&%!f6{A)iekAQhmy3+r>88P z)bgQb*cN)I3M4&{yC}#~vR`bcvxkIl{e77Udj7Q57i{(Ww)Gu<8dj}dH-zSVU59C{ zzeB*}ukTPm`jt_2Z9ftc{PHI_nT}<3CQf#^wxg|JtVC=WWbmQ$=OlP)_3G&_-)7>+ z?_!l1zKuzu&@PktJmcYp-gnF)vDEm`aMJIPMt!Grq(?eS=+l!A=`LEw>7z;aH=oOT z_Ptj<_xPN)BfoHeQD8`}Rht>A$axV-hT+tE&(QW}d-qvfHTG{HD!I!)O)~BEefQ@r zE$qmRv+b~!?SGHx=EB#F-^{kyRjaEve{PyFOAiYuH??YYtdI%xV~RRe6&4}=9o##W zAEyqa2bj3xRMFFa_=-60hjc&-)E~wM+`h9Q zpuW2Y>mVJN-nVz?@d1szXI3!&jMcUu2<-#BNO|Xym)zf1U)4lg-%q~}zwS|?{I(%<_>VBEf2ZuFs;eqq(Rjyeykj(eSnZ#;So!7)(fhF~ zM=pN3NwBJaF3&Db1B<_Q)MHgok{a*W<@20x7O+MxBb!XtmFE|K-WpT4^;0NV#PDn)9)8rQ~Un@y^SANdz7iXrDx~a_u;|5WkmZ0?UX98zl;`7 zR=-WztFGPE)_zIjN7eo@=*sF_k|+RVSO8!hP_4}+0002(9e{fWkU{~#y#rG44=gtk USevvZvX%Q delta 3467 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 BY`g#f literal 2689 zcmZ`*cU05M65h~7Kv2BW0$fBcmq$3m*VDx_&R%GYJlU09fU3Y27eE6|PUKA-Q#VI<_X`MRG0}iOhA1 zGRnbyIb0ViM`AnC4Az@}vI%uE9gj($r|-YWY2PRnptuT zuq7R5#k4pfDO)rW7VGTfoLDEx2!y5WVmJVp73zZnIW2GIaJCE_OjuJi0Q7SHUsq3) zL}F)%^Xn*ZMi@(vi1m!-0C|y5EX?Eyik|%&19eqLXYG{w$VH4E{#}VVs@r0tUTPuV zmo=-E9G~YkQFDTO1~f9 zDWCEcV2#%@%whoPB5ov*{%58tcpSgT0eD4zW9$8|3w@FD>QeUpPO=gVw4v^hXl%D> za6G&KfVAtmj(X#Olm4qCFW&;BOX_c?Dl_vUdBAv%jT`xz1V$ZMA;;xUaiU~ADsIi( zwAKi3$aD=`3wV*D;)YzyfC=9T-q z zCm2{Vhx?MhEE_0a1QJ5QjEp zH3^@7S}=xdDJJKXhiMMN!M%TEEOoB@?VK_BET?VwBIr0*a`G_|ThOfngyY8@cNZx- zXOuImV8Tq*uN@zIIqkh&r0J6!V8Gg!Jx0MT;d>HUaDHU77-m1cXIG^;k(wiGSri4` zeo^4Jd*{4sCJt65MqKO3ZU^Zv#|!cRSaIWFEzj;2V`Bodx9&wmL znS)nAv{EsFc<)K;$pBmQ%%Z46D znqb|v&AeW`vDel+^tU~`c9Knq@)R2NLD5SOfhcy4k#v8PK+jo}Z^N?X651%)y|U)k zpB}D7UVJ!8R@upHs?BMB;jSDooo^GQVOKO%6T5Z-GjxGmE){TXD|~o$qMyF9Rz9&-O!-= z?`d91(+ItK?7Y#vi!z4EZrb^nwZU|}0}qT@9I__~M`Mp*KZBq+>5%6RXxn?z%}jgv zr1gP?cJ)HL;561=1RsH;Uk=MRk)X256`q$;hftEKpnmLZb!nqK3=aK!^Yp3oGnuNL zdrw1KueU2ny(f|&*uYSIFD9dO9M|W{sO~SL=DCwe>t+i028_nHzna+MmJ(pR*oJ*+op=FTDqj$jj?pxQJ|?c}9DphO~y=CWu_5ZdC$ z3ma5{uuZbbdzs{n0KC0v*QAgB4++sG?n=V z(<*EYhiRrX4tsZ%7&-Oe?b684GK{98jl;fDT4Iv!ujVNYk62dlv@5$ket2bVHP zx*{~FsWe5ze>E$um$eXzeNB|sv*gkFj^LQ zBTl?p<2sJEWq~=d10C$16n|m}VuORXSEl=BkcR4HQlK-kp4PwiDSvrU&`K^vO7JJX z7)@K>Dv>SqD;FO=IN06~-fz6w6M3w-v;|rIyGRb|oz{}tirVhUeuZJ_p$FS@Z$suW zgw*uV;Db`m`Q_Z1IF2qvqU`d^;#))wq2iuk_FFq-nTq1$)q%scP%08Tu<@w3LX^TX zX2+k<5Ls!+j}0wMyYWb{_52h>wRdO36=8B>-29BtlQO5mpq7+&4WfxmLW8NdB z7r)G{b#`@lr5-if#(6P}UZl*f&#d_PE+SJh;>2F1$!u?GK?D}Ca?Gwv&ci7C*?SAA zvVr*fLs0tz=jW_Q0BmGhXr2W!0{4%gHt2b2s;=Ci01ig}YQT}TYv86QJsLffNHcF& z>gs1U6QB2W64mr3DwPkCN3GQ^+}sc&2g6c2PkO`1`aM}HIy}@Qv*=J7`5zp-9=+wb z-u6?1aPIvUIc3grV@<6EPh5aRRCH^Qj&tGcs-n(B2!8h5QxxjPl^3`j?|VHgHV;pF zlMjl0dxr-5T7&YYYcT@4Gm=cF&US;%6){kxu%5v0rzvRjHk+Xle|7)Y<*zxJsQu!a(zHhFkaCge5 z{4MBwol8fs_}fvJaVz3ss(#ux8pfYXNsL0969}_9Tpc*(Yj#wKzJnqkim@0{?YXAL z@O%r&C-77) z1>;a#?23AA+xnR$kml$EJJT8@X!xVKJ}!+7giqX6ICmb{-?j-T6F)o+!cCxQQQr2F zzyU75+N6VqL6Mb?$UZ&7J4k0BeG(?D&8|qn&%FZSy-;uMmjme$VKBShM1Kcn;(h2( O32tc{Xw}@bkNg*n_9VUl diff --git a/scrutiny/stats.png b/scrutiny/stats.png index a1095e71bc67f1c512bda09e62fd940c9eac6340..4177b0a6bc5645f63ed6ada1d4c212c625d72739 100644 GIT binary patch delta 1674 zcmV;526g$78>0=7872b&0019Did_Hz01{A4R7L;){{R30lmOGwyN+M@!WtlQq9bNeAmA4wZ9U29Df+ zcniPWcpZLC{iF*9_W(If2kG-^dSH5|fKdnO;|6oTA;Giz4${YPNGE7I zZ2AT1U|oA~CVb`zj$C(OizJHK;M}r*AR;%Lq8nqmZW0AZZx6eC4lFFzujn;Txa`LQ zYw(!&E@$zfEvlYD{b0%1d0;K=qkD@$R zEAkn89zWc~`vU1DODUU6jtk8Wi@T@jC0nax41zPMUiHB|=TROOcgsCRj|XRe=%NG$ z9JzGPUmBWW*V)BweNm$c`{_ucc$V{*@11VVZDQj^>jDI4nsJ`NP=cN20+RvKYy0ii z6tAe0riAxu&MvKT0u2yS-4c|_Hn z?e>I=Waf-dt({fHd03{|@GUy*Ahu5T^UJz852|`ILsf9tLGD;nz-jA$XM#_pjdQ+T z(}-Lo8CEDb6C}464?a1Gh2wkV{Z)*V3(l~S_JAJP91DGwhG8ZuJ+&&}$iIc$=e(#YJNzYoUr8z}Kuh_NYekmy;0xzxsr;Y(n;l3Zb0&pRIbW{VT#g6V z>D0aobefySI_f~^yxD}fC*^ZGSYBu{!Bx4Y1-vy1+DJ)sf>3ET8)d2h!m zyU$81*Yt4BnKny*w(1E`Yd!6_`VOSu_x95pkaI3QH zP8gtNoj%2K38d%5LxDa?C+N5S%o&OuW_`qw8*)2i#8az(kI7r8xTamUyW)1-4J`GV zUh7yB=vE$)BizA19DL*7Oe2C-mN_D(R$HeB90__;Cl)0WH7XbtGf z+=F$H4h%oHKVb0zjl4%vXAWz%{Q#k}gXfVqCipbBd5SleAb#2Th=8y8llW!ltNk>& zosU-urTyH0Psb0h@6m<)z9aPWMKYS-j@E^mOA=4$yvggl$>@Bw*1x}E;xB*Uz5h04 z$oQY`(k_zav&E^R_*zjft9k0F^Cnw9&iSq&wCAbk{=PK%eDTj)b;MhAzM6P8Qz-?3 z_m?q-#}6Hs0$1bBCmv~@jw3Xs_4E6(ov+urm#Mf}rbqYL&+fswXGG@$@e~p`KlO?S zo8KR;OK#nyw%(-kwOaowbYk-*NfZDwEC8?$sE*A50D#y#fax7T3I%}a9q0xB0NrsB UQqD59(EtDd07*qoM6N<$f(#BsIRF3v delta 3462 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 ZDCNi=HbL_$@5cpLUADETxO6A({{a3w+!6o) diff --git a/scrutiny_fa/stats.png b/scrutiny_fa/stats.png index b387d8eecf5c4eb591bfd90393a4a6d3b7ef39b5..20a4e02e37bc7fc3d10ee088479d9c7d2893221c 100644 GIT binary patch delta 1322 zcmV+_1=afR7RCyY86yJ#0019Did_Hz01r@1R7L;){{R30lmOGeX64?o@@ZV=u8|=Z ze+1o0L_t(|+U=czlB*yLMTz+T-~8UzZmS3=U9cuOcXoERN*UGzBtXCr5JCtcgb+dq zA%qY@2%&M3)$iOLWEOh%2GmUe7Fm8hfIfa6mx4%GU0cB)xF|ZRkLE7gGXsSIngdU62;FtwS!61$jqKdPOBENbaie7iEQp zMrZ=vVT2~o9Y$yZ-C=~LRLA5%*A}5U6?GcA0NrAQrW{v2pj(U3l+dkz2fF%Ee*uo1 zPw0Y8cL!Z)=^k4;(EYV^x_2Bop!;y-vKM+St)hE6a+0|q#UKivra|Zd=nlL0u#JfX zx(7#2LKQmHP0Zm-ZVZPbXE`E=aXOA1(3zY8I?#b`1UfNt-_RU?LfT@SvFTnEr-k+$ z<8;0E-s-#qy$|x$r->j62OawcfB87-IC3{?=5cpvB8b9xGtYT$)8*YeHvOy3d>D1S z_j@xRLS6dpr~vvOoc79~e8Q14KTf-Vx-{Lbo+AhJKI63U)a#Qok~uuEc#a&<`x^6c z)FsrTWO6MX=!3^;qp5%5s}Uo2X*2Iny%~D#962bCV*a0c>{cb3V&p>Ke{U&jNf?$OV%#cbtxCG6{2RHS0jX<#bF- zW1m=BwP?(%Rc4MXt=cr^ePgOvTGe69(`^1UYs1p27Gs__#dI|aH8I@E7HQ2P)RM~Z14sPSe8hXXan>6#W-c(Vh>oI?pP<}9sZ%=_5`}L34(~D<{xrvecdA*8W;-7&k zohc@6nz&}->`!lhbJnCCIIC=@Q5&HR^kc(q3pL&QSKolhH0&57`)sIrZGi4l8m6rn z`j++_54l!rM6?fCe!JVnndW-Ep+b#p+j8F;emaiKZoIC{lvjusM*4w@Z&bn zkruJ71#twVdvgzUpd<5rdk2e;G;%N7dfANC))hoj2QQO8e}v-4*6gL8-HGIfg|8&Y zWuGKJEc~!X(^~lYwpCg8{j&Y?a!(G@uL~l(f21M%=Ps*KcBhh`D12xud}t{Au-soy z@#K>~@ZR@Xh2$~r>rW{`CVg{q8JK)IQLia`xl`dobNV{-rRR8kH~E;^(ta*|d-BJv zG0Cqe{IKNBe5A@tt2@geyN|o)Am@9AT=GixvaO+Ka!>DnxA5a~&yuRQ^y)f$>K>#e z6G5D^v#>PYq63_^&xcSQG& g2%$i9@8~Z22Sa!cgz#o#pa1{>07*qoM6N<$f?SS>-~a#s literal 2927 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 Fe*q<>t|b5f diff --git a/scrutiny_fa_original/stats.png b/scrutiny_fa_original/stats.png index 0cbd35aa761f2d139a353b7ec4d4dbc8c2ae1da7..ac0e621ddf47aa31469ad89f2bd5dad95eb1d430 100644 GIT binary patch delta 1391 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 diff --git a/scrutiny_original/stats.png b/scrutiny_original/stats.png index c897bdfd74129bf5021378717fe437c3e15367e5..c7e517be1a29f0985fd24224bb43798863e2d205 100644 GIT binary patch delta 1375 zcmV-l1)%z+6Z#5}872b&0019Did_Hz01{A4R7L;){{R30%7E$S!}YB^-jo2-3qnL& zks%j<1rA9>K~#9!?VXEus~`|XnWX*yU+zlk1CRhJQHI&)_I9=A#AuK6kYUg{00000 z00000000000N^~t`<~})c_RG%6pMbxo53{#zfAM>?e*{f>%Hl1vg@|hjNjYbM3Hct zAi56CXPpAwCzD;b$^Uin{>e@6nV10&(Y45bE{j_h-*A_&IZiJxP4vaIrx&nvMc#dK z@004DqT;*@VsY>5`<(bZ39b;JKLqT00RR9100000006*UUzcL2!eZG1)lJzsqFbz5 z2%?*e>4E41G~!$$Cygf;$t}C}j}z3=e7chF5p2NXX(HW7mEI6fqRfB?) z$c>+~QCc;avmF?mLG)2PdTl*@`zpO``UO8!Wuuo(T?jwxpM_pFeIfj0BDYxwOYrC; zi7x3foB3Wg?Sf}Tlhm4Z^YT_UEnRB}XK=<~2uF0A9-Y#vX~8M28Wfz;>i9VurB#DD z8;P7@kA9-rVQA592u@755yDS@H9L$t@BJ}&2tT!Af#Mp6oFGSQ{g9c=QHOc2Fxif}eS^ zgFev-;pd<1ph|Q?xUrctcywcl9D*C`T1D{Y3j%lDz(~&am3q2tHVHX@+wd{H%ZKsd z(Z4QwUk!{1evPH~(!fXvzv^Lpois2K!j0XhPIYM}M{psKBWy7QQT4noEhYNyt+p7E>(Gk3R_ufqO zd58_c`!B6F>1D&XbyeAaPA75*ZtIqfJ8)y7a|donbV{PeL??XP8ha;v8|zvnd>gWK z!nduiRlNDoiCl0k$ZFgOKJY?A!8XCTM|1CK(Ru8qsl@}gZ<5AQL~hw#@4PENHm!M3 zW*49l->%Gok?XEtkZ_Ochz^GL?Z+ZMP_KJ5`#HQlZ3-gO%3ySeRSJS4nZm*t2mcv8cg#tAkw@5m&#yNEY0ja9L~T3-2cB_d~d%Mq4# zS8*ER>P|xvF+98o0$n7M$@{g$n|GV#th|Ky@(s*bD%Gv3G!b h2TY*=xOdPa{s4ix6SyT?C#e7c002ovPDHLkV1mZ6wxR$4 delta 2450 zcmai0c{JOJ7EY_r)}f)aO06?$qu<=E->|2H*9Kp05!gLRPv%`|Nd^w&i?Z8 zm#EbYhjaOB9X3xUi5-23Y50M4;^4SLcAUt7*PG@9<4GS1zyjQ3Em%R%Lo1hd4P)+0 zk4N_eE?bKy{BR6N>tjvnv;?-(6 zBK!BYD|4nb0CrO@&x5BBXXs5Mow5^nDzdqPcczIFM@}o1KUw<}oiltjqaedYe(2M( z-D@CpK>IFUFkE4o=fG}yn!<&~-dno96SN^5tnh`FoAY$q-ieCgphyANDEK@-FC$$& zJh)%XC2;vtiN&EGN-=re73Nfg7T~g*%353c+7o!&om~0~c`||#*eQt|cul^xwAq8G zaLJJFt#kf@eq6@RHV)X|<`@Az0%{?m96Z=(#;^3yh#>zOyuQ)IQHVqpYy~Lko(AEw zY}qIJUtpK=>fPL|-hT$v2{g=|95Tws#ks&8E|IAY%Ugc|ze1emXQh&|Lag4E+$&|G zINt%aT@Sk-$nznKi?LLB@W; zBJCG-Sv69n=aCohdT-9Rg=f;EJEAgt^$2wmL;l?3E$q$rdXgzCwCO=2`QDsMaBL_; zMHUIr;3AT#@87hx+Ul2>KD@V$CzMXnM{#|ky*NOcVuBzXG9~b)bB2CA!zUOd?mi0Q zLK{6t_Y(EC`Gfqq5t~7J@kVs%r|E4q=Ml=JpSn9{v=g%&kj)1}=18VNIcN@P)2B{y zmS6dW)|Q#$ezzlDS5jD@x;qx`P+b>I}Z3YkLt$ z*kN=;-exz^=Gh%#tn`3>B<;1og|T1lG*++p`6zBK#}reCIi3(|ZAEtlMqpW(qvw=# ziLObhs!5B@1N^8=RmW1lerU ze?BouYF$7)6h1N8PH@$`IgFdT)k^9pN5*`)6jV}<+^bM^9PIsduWLLz{7OfIQd{Fn z&i?YKK(XVYLcRYV4A5);a*g2gq4ue~c;W`vdK>`BAj*Y}N;8jRKVqO(bM9(jQtns> zH@KOsdwY#$pSF;C-Wtk}H)BeCS3g@yr(-lgZ-2(=tRd&>pbbLeJ3~(e9#hv^(jWZs zTtBov97EP5l=BgqHzdA`#aq~~Ehna|sAm8VZ(4UMQv&!}pc(c)Do}j?SOUtfKFRP) ziNy$-Y?OXfS2T*tT6p2RXmAkPs@xsR?0eT}Zr>=iGLU!^r ~nxj9wH&h3A9Sk)i zehG61KVc@l+uvw{n#zK0UA4%C%EV@Tblt+z?8dUw7K{;uN~0`oTe>BG!XDqC8TgZ` zBM@|X*Z*|Elb465Bo7{k3qzFJ2l-i8gU(7KDNF5W6_SjYeHx|+qPZ#4yvVX{V$~NQ zH_D7Z@rMmL?OHlnTx1vv%Zdx7MQIzAGs%Km*c#;&QiCYN|Kt*yq+1{GbC!0)vlVN< zc37fKzHK+lgR#;MLHf0uE;Ivc)Cr2tQrAU)k}Oh|_P7JBcC^05Vl<9{nE7goiTKLB zo}ybXrUx`OWvQ@ANx|L(cdUTz~Btif2Re`Yt4> zeKg;61|tlC>M6Vf;-##0 z+|vmyaFtCRoxN_eXEeQS=%l!9Kel?dX_#98fDNqha?z`9_YlGs)>3*qqQ_VGw%niK z7seJT8gx=dmyTIheZSTkKfhCyI|eN$iFgSURQZhYxs!m$;4#yigtovI)=R^Z^zx^i zI*Rzp?>8D^TS6rd>yI@e9pn3q9n!CBedh6NvH3Nsujlnw^(T{;d;cXKV#9^>Qz-yW z5S*A;SaJ&C?c6#}j4fR7n7w5`mK#l+X+zX+CzasO?Xxz1Hr@PLOyN2^1y#i@KsOfS z=1=tq(sIXwQT2vNn|fN{OxvRt)_PTc0D*O}g;hj+-hfq*eYP2u3Q^2>tifHuEf zks%j<1@1{iK~#9!?Og$q+aL^NG5-IT+guXIb^rr0Ai?f*GEI+TsMiu=5yBXPAP9mW z2!bF8f*=TjAP9n}54=ABK8$HN$ANxgNR}TK4Qziin~~Gp$L0KK-hUR3C-EO253)Wi z?H}e}K7Avdln?9O-=6*B-m(862!bF8f*=Tgf*=TjAPCcXv+*cN6Ekc{y#KsEh-oaH zq)$aUEuEwvcc};+C`&Ez1#&1!K~vg%s=+tvil~~cNzy0G)+Ff@W^0o439~hko?vyv#74O{BeWkv9~uP6cN)Rp-6yd(-7 z#MtRb|INg=W!oy+y~AWFax`%zrk=mG3NxV$>+UddDWM!Pw^lbrexg9`9;YsUDU_ok z*UG62^6$7Ywx?5963WHJnTbii-Kh&Qb(pK#CNq*=#i`2)K2&KbJ$Wu)X_KlXtU&a?-8iOIWr}*BiZCBQH%$$;}SIJGwy5m4tHnnKLjt zWmwC=@&`o@DrH#9Vf}DwRi_MVrLHHOBpDXL#7K>SoRyn#&m6hgIPWvGDa08oSub)V zeKyX!`1c7&7tMK>;f+s!x|O~k;8c*VDtfo_Pt0l{T~%VFc+Ptau_Q-M5$RUL9{(zb zbVMb29i(gEyu&DCl_-!@nn17&YqiwD5R(lXIqje%kW<2W`v4y1w)q}RfmHH(>RYEf z`$F74WTimLisjUuPyd`Y{a+GlRg(fK%G8zZvYk$whKdBO;!+@gMa6QuNdNZPzH(rz z)n(?*XQKl5-Y<#5>$A^ZUL)m==c7AMt#&IUu;W=N(WPs0tq%hvEh z6$Q7+-1{_S)_ZqTn)sJte{k>9znN5ChH`f7~Z#k-!S778hMYLRX(iM_Ady| z0iLJ5F~P67-6P&zLi5YPM;iFLKQ+G`e6>fDJ9ra4zlgo>$MKh+Kf^`){Xp>bAIa$c zm8Ti%E~$CK;7#7(O~&A>^}apD#3z4QWbWLRf$@LcWz{9O&u)&2&7T$Zvbu+)!JF*% zan5%~)jeN-JvD^W+UGa_`%#_dEe2n$c{Wof;i&SyAawZs!Eq^Y^}hLtfh8GNnYH-k>>z9fl) z7=E*zAnU}~+6+Mu)ZPiYcY-Mt1l>C!1^)mP*%1j4@F}j500000NkvXXu0mjfFOn#; literal 3566 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 R`vV7D{riSd%_Y~z{{akt5jFq- diff --git a/signalk/stats.png b/signalk/stats.png index 1fc03f487dc2642ce4108582da9a97f873000139..501ec8fe831a74a706a6c5cd6526aca16514ee3d 100644 GIT binary patch delta 1673 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 X+IPv0i;p;8U|?xxV_Ik8`PY8{ZJ~7K diff --git a/sponsorblockcast/stats.png b/sponsorblockcast/stats.png index 9e1c8a4ef38e07bfe7b0611bd4ae7e8437799fd2..545ec14333532ed6f32c3b0ae7a8e8c11377da34 100644 GIT binary patch delta 1282 zcmV+d1^xPq6`l%^86yJ#0019Did_Hz01r@1R7L;){{R30mIc(oYv$#_^@xQZ2$3Nd ze+0EjL_t(|+U=d~ma8BPMU(3LKl7bC{Zb1QqcVi-^TRc*QbxC65(9`Jgb+dqA%qY@ z2qAe|!VhCEyhF#b29l0=ekj7pB^y-M%qC4|#X_ zAKm+_1k4?pY6u~O5JCtcgb+gFDxQ(upn>00XnKRjZRtP<(Bmaz&Oncsj5$x|(aHH?T4BinyUSY(Q_Aj5(dz($h^{7tbJ|_wd*|6MC+HS6X^sn&w6^gm2KH-Y@hboJ_n9L#{L3 z<}C^SyJ1u=^=%o&Th@4;OU*Hgte;YCMo~NVu>7zzrEruM>2Zk;LXT}W30UhXdc3gJI z1JK<=&p*@g)5UWXwqU*Ijdvn)zN4_FBnqI93;oM<6h!32YZTUyM4>`N&NXz)2p3#7 z=TTT9azK}}9?U@RI0{QdE?{g%c(n@j?NmVp;~hWUYe23XfypFB5}ffJf19zSOEGHI zxtmUoT*TN6hFm;1-C)S!vUzvY4Tc=hy?bl~X99X`ChMJaDc>HOVSGBl8SfsO;nk`# zfN^N(Bt{PDv0XN573v*(Y-%loA?Ma(GYodXW%KT_kuDX`V>1nQ0J?AEof#v6esJ+k zpu6zc%qu(Kr@QsoY%4nef8DpoW?9)mS=qt2$7WgCp{k`ry5@fL0u%Rs*_gN5Zi9>3*4;TRPDF zG6#A<=9fW-ddJL7&vYVko|!Y2Eh2M9t%|ES-0kwbCR%z|nr?>z?u=S>iClWjU{s)A z(x*?iA5GFGZB_TNe_I|7^do>*n$GIfk4!1nA@tO>dR(#jPs}Z=rZ)fY{>cNcg06PL z`D=9mfSufIzU@`oy)io{a)WvEHcyqQ zsi(o|G`(!uRD-g;P}LCDjYYDt95(k(x`;@j$ZDi)Wi^>HHT7J6I&Cjo{-A6%C|-C5 sK^+mBK?o6hM|AIq6beN5j{a2t0Ao51;a&_))c^nh07*qoM6N<$g2!uzApigX literal 2699 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⋙TynZhJ)TUu>L$KCTnx7uyae4I5I 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 Ef~OzoUH||9 literal 14824 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 O000000Hy}0{{R3{0J|&0000yP)t-sOlff* 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⋙TynZhJ)TUu>L$KCTnx7uyae4I5I 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 Ef~OzoUH||9 literal 14824 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 O0000PVZPBl*l1g?*v1i)d2oR7G00000 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 diff --git a/spotweb/stats.png b/spotweb/stats.png index 8c0959d3aad60b7869fcade9a13f241757fb65c8..363fdd4c3783fe7a2ac2343924ed38b9b309b004 100644 GIT binary patch delta 1708 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 diff --git a/tandoor_recipes/stats.png b/tandoor_recipes/stats.png index bffcb9b57c04f16fe741d8df0a0c2a313ab122e1..5b0032803ec0c1a123553083145409333b7f1ffb 100644 GIT binary patch delta 1397 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 diff --git a/tdarr/stats.png b/tdarr/stats.png index a37c27756c303e423a181cdb3ea17e0ae551fc52..87a2da5de8437fa180ad96cacaaa293773c92413 100644 GIT binary patch delta 1542 zcmV+h2Ko858lVi286yJ#0019Did_Hz01r@1R7L;){{R30l>*egVC3Gh@`I81(2*e* ze+9QmL_t(|+U;G7lG`8*M1ueS=3bh|`2hrc#+H`d&bZ@-P~x?Okc0?o4yBk|CG&!mU$Fy5KL_V$A%b(vSltJ!yUh*QpITY|^u0 z{+!uoHsp}idr8czuLDVUO?sVI?3LT3>b)lB_|y8FhTM1c4Lz+(*QeFZ4g$nEwt|;X z39L#c;8Mwk_41pwiBF{=w`}d4e{^ki&vH(0@V!HEj;!GONtfU`;F5H}>wy$-*=u+C z%=AtTxh}5@tf2%h6Z;;Ia>Dno}sG=?=cSsGA^VFSRK|{_t=?9`H$|MTk zq#qGmP*I;|hfC6-i+XgAoJ-&P!3a5~Dc2QR-RyI4tuK_jpn;rDVZ__#Bk#k7>4o~`DNrTky=kX{=Yc**7 z-e<_UBmD$91=R0dhMYUnliqI>a8CE8+c8C5jxO`|nm{l)2Q=mSL#xHacY*P}qKo>0 z&}yl?lt8V|kwv{fG17^of2+~HeC}E;lP;i~qlvm;8gfYuze2{XcdzMErx%g{GvyFB zJDguU1Wmu=ZFbOP+(h7J2Os=k>329ctXd7+Fz?+N=V1CB>tu(dR&z1@_}=rM+Fhp) ztoa9}-@8tBSk;}e=Y}0x=TWCNSeEt(}KVTNx$$!Egb#s zJDwgjBI*>*>D4pUyzPU&qWe|0U~Zg#lckh@dd6kF28=#nidas>DGN)%#|^t+$BVoSP3H*C^` zoReiDN6wn0TX^D1H|(XPn~*X9QFnBz^8KnEMb!O7*~~~-(g{hwB}Xo5LaIoJQ+@=_ z)sE_ylY?KnlJukzwOW~f-}^-7vQ8II4_5|Ul1-`7xdJZ5e`A$ps#USlIWvg#Xn688 zF|-t;KG0`cS|&Ye1U%pGul%kMUu>tYRB*e#_oUXB!|C(PFJS!4|I2K3DHks8hx8pd zpnEH)4U8xJC|intR>Ch1iv*^vR{m|c(b%~j4!u?$cdZWinKwj)de>VBZLPNzS^2cfMB`cFtZnUJ>DWrd1=ZF4!-bBp9%JGT^9wYr}j*hhx z2V0@AgKx0oR-_YNfO)Deaq0FK!uxbj)=4@6uiHAyD~9=RTI6ckf3~_^zAoAJ%Yn%5hjeuRO3p2H z*VMdW@S$(;p=0pFdjCAd#wY*9df#^yB;;=wsg%v_yPM0v=Ff_HUEPbN!H4elbyW8D!kao?GYhLMI)^BJ_@7vGs9sIc7 zvrN?`SiKr&-?Ef*|O7C#c>Drce-6?}Qcn1B=KHd#7)}FaQ7m07*qoM6N<$f^_d8y#N3J literal 3381 zcmZ`6c{tQv_a`A_nC^W0@(-7>zaiH}Ctr|9#K*$35phXL;_q=bn3(7)$e;$9c~30040Oma(BV0I;pI z_9@4XuwdcgvK9+*2N>JK0f4XV@5PpUiBA*&cz@k8yk--eu{_o9FK#E;%oGuLUUZB1 z_|br~FFN~5q-`L@t`X=@xt9}(v)dLAgssjEqNJGmmic#_zbuul3V8^7((c|fa0eyN z`ZZhG$UUABlFk&XnJF}JNBt}29%u8S?8k!7dm+iibWfDy zp1pw-8r)%g{CclZZh_C$tp1M@UX;PL`U8IcSJZf`ZrdeWR5JJsRpQ8zwhK*88MewnL*F~;qK4#~RdWkU-&t?pLFL%yZycEST`mZ~le-rPIWqIl! zOtkCvXnHum3?B-qoR3Q9UKgeodkr|LCBzokhM+^?lP4Gu6AFu%dI2L|dQr z8rP^#-`!WR0W#*%JEqCVVO^ov&^7yo0Pk)Cff1zrRa~MiEk(Z;>z724&e$dD?m9s3 z$l>#d%OhO3&`u434O0n!bLKuI!p(5a;RKegqr=Ozu9;Dc?k#lp+OS{wEw-p4?HrIS z9*UPKbZ;q}oFbvNCg^qu^CuL+>5Ms|u4sGn)ga@!eAgcenU2AXuV1H@ROONEQAPF& zGWi}tr#KtncPoC88UhaK)p?up?h$UaP4-;ABCo3I@rRRZTZ&{Y=ep)WZu2sT6r(LF z&9}5y!jHZ+C1fXjb%R+6JSZ&(E2}T#MPJf{w~Ve!YWO+V>SxKbXZ*Iw;!d*;*PaaG4a`$_5mf6HX=@2wRWRr2-WQB)wKP$PV@`_ZXtQ(I&8P0nl+^2Y{<`cpJYwEgYlMU%qeI4a}L z1K)}l%GG^Nx~nZqvWTN}14d<-XhYOqEZgxWr4H9X+BD80bS}>^E2}oB6LHx!M^;cwD)_dMhMsHyVI$B`%8+4%m&$TP0IJd)CFFe6E_l4ABKecs+Ts7eD=dox~>pJ&28B z_2s5FXUj|!=$Smc&OpY7am-vv-sa?mu3?U|+g;@edrZx^a|TLISW6BVOMcr9G#)%N zvO+kVpoHFJ8-qQC2o7*4-)ko0u)8}a!VY+QMWS*kr%T$&d~=>g=iV(GdDHNF@$HsN zo@%5Lb)_wTUK{tAiA`5a3`#c$506r3scxY*P0_Nb-F@N3zYMB~MBREx=+Zr0y57qH z4$XVnCto9?zA`&qGH)-%g^49+m)lfTs@U%>tq}ffwH|Ks9W9!HQT@xcAf3XYUUqji zB3pt$nf`_WTlhS<$mk#KZZ5bK~CXM5CT!u zLp~G9I1_mxRcG}6cV23@@E-ormHes#1sUik6A9k|Op8)RwP%$P&m5Pl&=&feLy(u0 z6YU`;V$R@hk>f&-fflqs^CkH9+ws#N#H(*Q2(^lOyoFbPB1PKX6NZ5CCAGLIi_D;J zs$Nx1{PYcr)CiN>%DkNOO9E0Ac;%^D9xU2JmyZwHIh8YsVU!k5dY6m8nfANg_m(1k zXS zE4Qm^UDmR9C~WnMQCCg880V*TZ`ZBjWuv&W=6Yf3+a~TzhO+eaY9nvXBebM?a-#I- zgs6vAN#l-rs_YTB3m{%D1Kcs#FvfSpWj5BG4Akw4&=mI%SIlNf#h03b_oG*w_S+Bw z&34c9t$YYRpe@S{$i4S%N1ouwdK|-KwPpuLi$!jd;P5v3x7Wq3>{;v+ zZkV}5GJdCPwm8zeOpGah?EZkLH934%+`P8wRgA}3F@~E0Pdj)|#g-A1CSXDHt6`O+#+~U8Z<4cqWmtD47z<^*p>QQvoWb=pOva=!}32 zX)A1}_m|5-U#8s?7E@VeN~+$y@lzN{>0(@qTdDGe^8)=%dymkvl7tP+ih&%m{g+9+}9zV0U{W|@EMbcKTeeK0%hCNw@3a$9wRN~qSTM}|IO1zg{I zBX`}YpOQB5|CZ1^6w0%zR!95tOjZn4LNs}_-x*A_AO7>(swby}{>W#6^tEy=;c%Wp z!7!%M^(HWkr-%78J$x*&F!%XFdL8NA7YWUc@{AA3AK*?7B-50Tk5zEBojQo^F(2l7 z^m{*>Dl{AccQKcgN|GBGYTAH#5Fw}jz&4_Yx{t;kQ~c-;lD({>xxZ%=n_x~Cg?TL2 zUQ%sjs$es)fi8G&7n9DClk$iWN68sSA&s+gma0uFl|$EKwey*3&OKlCavVfM-*sg| z3(jb-MRS8BK9tw=0QMt4W2o|oHTiEtr+4xn1J%!bx)Vuo-WM+qx+-hOJN503JSa^a zQE4TWUk`&RVzY%|6;}T=Qm5RQ{HB6dEwZ}Rp6F|R1rF!82(18sxv!VQ13YL$(fELX zvJk32^ZacfJbWG8FAhw%N08k2ISV7X*nt2U7kqzKz{b%}u+}_2y2CX;GMW%gQ4=rt(yoWW#3wT7&>cVj2?w7LU zEWJhoSuC6ocz@pk7hkw}@qLHPV*5qC`c{`Govxh0li&5an-$|jl|q|*tD?;}^*xl> z8+=K6FM2y@UHA6WdKFz$cFlO3?k0bKmYm<~^?_L%%Cq|h%sKpEuAoJYr`7B5I_L2G zO@{{GQ?clZ1?ZSRNjWXQA7@sB>Neg9^E}Iuw0>91zAgeE6Z*)mT%(K64Rw|a^SG~~#OzNXY3?4W<6KA4zPPXObZ(hmlH+Er0% zZ|JnQJ#3PcX9jV1Y{x=LZpx8kza@D6MZ2>eOPKm)g}Gn~TGsb#7FGq8XBW1H21sn* ze*SR}o*VUhM20J4>ENG|m8jPRq6prOnONwKg?rd*>A!V;*C^AQe&CLm$7xI86bVn= zxgI=N}Aa3qNMtm(rEE&nBg%{?W6O4)Euq pvB>3FOCUU8o0wU{3m8rx652GdV@}pzS#uC@>xQ{u8N~JZe*w9)w|W2o diff --git a/teamspeak/stats.png b/teamspeak/stats.png index 38afd8792ee17532e6a30e62f0bcdc5475f324cf..03d413593347689b89e58502bc2ce5edfcff4b05 100644 GIT binary patch delta 1353 zcmV-P1-AOg7UT+$872b&0019Did_Hz01{A4R7L;){{R30lmOGxle>ff_{ zks%j<1o%lrK~#9!?VXE~<0uS8ksts6%R3vV9Y4SUgB(ET_EcB9LMSFD5&{G`hY&&t zA%qY@2qAayDT>tRK_eF5kMcnBeXgb+dqA%qY@?#YFTb;jcJ3-vxf^`4L1 z{6a=nqkwMD*ny6F-=rd-HdHQ<6Wt}Os*0Oxyki}*gOoj>10CpX=4p=80CY=vn)5&6 z(^!a9>WB>JKgiR30iQo_9fFF6E{4B3jh@>_v`Fad%!OE$-K&Na5bq&HHLdH;wMu%p7sTH0(3x?J7#gB9JQ`t95vkjxg*7I^MiV z=nUDq@aFXC8TReE&#O<~^VBEwj_f-liK5(IHtf5FKmHq@RmG%~4kl;%hF&z= zun*{+Te?gHIh=2qD-^Ngj{HV-8L`TfLyNNMv>0+8qIT9p;KWZsZmZB>=g-%?^a@<~BQE z=H@m#fV{+Jho+!|+}t!Q$j#mC0P+mzZ3c26H+QoG$j#mC0CIDI9LUYx>;Q6=aeBpv z5|HnxbF+h!YPTwr@2GbuL8Z{~>)JOv)CL{DuDsbnDm#?G;NEi8Bnt6=CPqp{ft<~~ z<)+uu3Ej+1&JenpgAQ_g(8+r<2OTrF2OTpv2OTpv2OZ?vq@*_JAb;W{3aJV@o%s`% z9@y;=Je5Ed`iz;o->j$awkw}jTts!A9aO)JzJjL`C_-nN{r9&j%d^nOfwiS9v*lP`hq(#M%N81m4_Tt_ua5<_qhGK zc*}1aBB%dILiO)7{7`jK#UmQ;(i-m)8n0IS`YA?!@?Q^`J67cmALIG^6Dr^-pIlrN zi!UeYB~>pqHQptEm%nDdc#ieGheywz$GGz8#a}P!6n~=eYQ>XDg_l-OJ%gMcPoIOt zdj?>ONuoexSRkmQrsrl5Ld?A*+&dzL0^!~mQ7!rpm%a~*{CnEX00000 LNkvXXu0mjf0*0>h literal 2888 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 Fe*@tLk0t;B diff --git a/transmission/stats.png b/transmission/stats.png index f78bbe3b81b83309464883bc6f9f67524946d48f..457f6a764859957fb8c8170c614e08909201c681 100644 GIT binary patch delta 1600 zcmV-G2EX~~8QBbw872b&0019Did_Hz01{A4R7L;){{R30l>^k_w)3@3;mUyN&2aw; zks%j<1?@>hK~#9!?VanQqaX}~N!9m%<=ytwOBIpOA_2bnRa*|rIwmAx1m^$%00000 z000000001hbcpI_PiqlwVq>J=(gV1e^QWQ8i@4{<&8OE#k)@5Sm-An&qzm?5o2Ace zzp4JCcK&K*`mgocZtVfeYa{*5-(uYBQ}Dij+R(m`?mkF|_WDd+w)D&F^5>7McVB({ zhV-Qg=p-J1YybcN00000006jhm5HSW=~!&)Xh~8wrD$01V@(p$`&_Dk^zIg?PDvL~ z3v~Y71p+zAt2r{&ysN=Ggkue;G9kS~RVJi&sLF)&4po`rg8D&E{Jt;CLAoVX=HnE9 z(WJ{UhS-yc2f$5^tRl)cv}<5wH?TLDsll41$VPS(#1h~ckW%* zbwNn)sv;NC$Z5uMlxZ@2M zQZ^G99^VCXROBkeV&RFVF6pZ=kY38r$DNy}BG*HwKLWmr;&%Lh|E@SA zs*Q%=+t+SC;}G;*dET2hiWA&{#$j7y!= zHGv!{o4pm)q@+z3$U(ZPFfKJ|qc~G@7?7 z!OdY@l7B}oRd*Pdl(fn3cAtgxLNB#E*fFxNFfJ)+D|lKHNEAMQJ*jJoGsvY3&gdyg zo9bi-NH-U{Cnar~lO52=j{ZH*WHO@2l3Jk*n9Q^IB7fejU;i%iW4)T4Tpm%zkY4${xWRaq(?>S3U57*uC}vQdpdUWFFrqW>M2uy`||-BDm-@6tDkBx zkkjW=mnJ;KK0wA#Rjw^%d+UiqH~-JRQ|8?vY{fSHdc$w6zR8~1UM>fZJO9EMPkA-# z*IOigNA`(Tzwv{h+ULPvk>F&S@|N6tiAi*?RQ=$XEg4iKM#| zk(?Cu>y_N^dM(|56zR42)Y^~I7AvG@5eP&2^;ZAoDslrRenUmhzX?exOE+Ers5fP^ zE21ED%U7H+NV;la1XOJ4bFHnST)0+C&-vEsXHE197`7>4q$G5O!J2mOa{cGR%MNY1 zcS!FrdY7!EOU2FG9ehL__dz^x!)CK0MfuOvHOctFOWS(%byB`|Z0I(Y?Fa-ftOvuHF}ej_f`~ yL;+A(09XfA*Jc0!)ZPK^9U!3qxOZR${{YWX5xQy*IV+q10000dg`+fg7=X0*lb)WmX?(3ZUoX_W}m4y*E$0ZH`0Ju$z^=$wE zw8dJdojJvt-<_=dhZWBH7$bcFfalxq0U})E5e5LREED}(h@kA1v4&)bkx=9Mu#C8b zZwBAJvqqCorY_6aUGlkk{iXptXbI)Z@ zO8yC*hrG{ThTU=C?YAx%3LD=naU8XutcbIltSFL-kR915iu?^xEgRlgsl}3p=fi4; zF`8vNtNm>I>3*Q4B=qE0rh`%Uw*B{QUr%<9VB7)_`S8&W;>yC`Cm1d7!iNz@QR?uu zFOS{$^H0r+ll4@_XghT(L-z+PYlSA{QT-?>XHwm^lZ2c`D9;}+VTbOg#gqICCs#Sm zBz~)_$>aF{b>?EIUtk%Q4sM#fAb?EAkiDO8@qXAFIF17%6LC_3e=4&95|vO9^o=23 zTTZ|@1xmiqu@EK!lz;BA@$5|0tO4up>P2+q*K@}|i$k@>a~PgY_}|zOZ!}PL-Ed@q zeZ+1*At-2Oq4)zq)cQpiFiis?TI%WkDKwDCG(+;^^9iQ1`zQ1I#Q{~jpyfQbu~6koOY6O}F!ETr>LQfP3V+qOEr!&2I>x(lB0 zp|*n?@c4UN*eM)^RwRtNdHXkg8!w;v!G#)q0r3Q{ zNhPUkph%JWZsm%-n*rx603C^Xp%QE2SY}?P=pYv`inbWfnolF%{v2T{2Sb1wy)DK` zak`y#T?;u;Ke%jxqGl{P3+nko5h(3riC6*yjnB&CdRim26wrXL?3cI1SA@)N(o zm6+D;o6664n<=bxwbbG?5JQ`1IE`l?9b49KPc2!F9d|?(Hp^mNKAG3_94*|H1SFSW zp(mROWf7LL+g}}X6faq)9KsM_@3?*B&+eM{y-Iq5jhDwCZT99I?SN-ta}k02QPuUk zgU-h!gz@89I(%Y8xx&^Fu8#fA!xD@Ls5#j^9&b(`4;l%n-|GyVurdy52bI1W#S8{0 zF4HDL?bTm<;1u>af&49UD6^^a-}l;eYbz1UM-;67_I<~V3&5LomC^oyD%$5Eubm-1 z!AQPU=MxMINrg>_T>I7FS94P1Vztd>>GDiet{@g&R2e51$+nlZ@+DSy^)!^3BvE%c zFjfwbpJ|?m*lQ|l&_I?>Vwv6BG_aUO{&gOmC%hBKQ!#_DGv%wCpiGrQ-Hq|kXI;a z{vu5tg(Iu3MvR%5V@TlK%Erl+v=tBXcZI#BwEJ0bfN)i1G<0Q#*=}~6ndM*J0g24a zkF9nbSt3%&bnn2hz-6v((K1c%7~m3~hPh+o$S{z)-og{J9QDiT`hOXt|546t2c;TR z4c|_^z#ZtPIl2rgk_rf-n4zcP!}AY>TI5i`fU5=R%b^@eek70!0w(!Txi*P z8iiqYZw~}`o~u+eici}(n14Wwt{p=2>O6`&NM2oqhb<(%o4eC*)0J4(^@=5`E&cuQ z$Ev)Uj|Ly+v@|XP@x60XW1JdD54^g#atGd3@y+K_GMKY*`s*vBle(jA?IZeowH&zb z`hAC()%v{!Mds_D0@*f;MeDB%@$Se1vb{8O?Y@^_mB*TPb}4dw2C)BdkZEyOXCU~#%H zXrQyETaArZ9C3kj3WZ*+be<~K@ATg86PVrg1t|xv*H81%>#!g7EWO6wxHu2VSXo%W zHnOgV-80J+_&eWJKn@m)GG0o^AboP_Onm6yQX}9_&f_RO1y{n|UrHmo;t~)$R&3D) z;I~5Rc#U6GMJ+Z1F_4U%(gI2pR!IJVkAdFN8-+h9^MpV4s~;>o^z+N&GdLv31@%MU zE_|NvpPILI=9HzvJ(8TUMY@@LqKXm;e?#AowA-5Zc2lb0L~$sqio;nc+5LbY>^8GOYX@#!rZQ*7aJ zI_G7V$mwQ`XaB6n&pm%g?O*3F#2M8EgYdM2WRuG~R@gJR*LbOwq&6N(Nq?WnhJC{^Dp;lin7j zJuSARE$#-4qUCsCNOF}jQH)v99RX@H-N=dwF zxssE@MgrO;-E7-*_1Ug`9SXBfq7>)|ZzyW#Mx>?K#z->PkQ;^FT;QtcZ{5o0ZkZc2 zpl}V{W4+qFBJ5VkVl0sZd4sN_>%ai4khq;tm(tqcbyl&el1=NcTPJh~_@mFD6N^wU z%Y*(KXYIqO6OCA6&pja096Dje2IwQ}XLx`%>{jd|nv^#x3fOsUv0i-Cm*tpdzuT`= zHGtCeG2Da*)j#s%Qu|W$woiE-vd4KmM3(;KrHEylgv<0fe;jRuo=sfazZQn66m#jM zKIM4Z^gUL)s3K@F0wc9gb4Twnf+ilR^%EvUxf2kebRkkXht?o<-5hdR6=E&@9Uju^ zT!mH=)KbM86^G%PqGXRMx_L=`&aey)v8=kdGqRf5w1euH!&Bh{-cx%mt$xVB&5McB zs}fC|U0hNnJ{TqId(pq)Mb(mF7=#X9X@_qz#+|*uG#ul1^f>jU7R>r<(S}&oa@^Vl z$av|M$u4Sh$zR$kT?h2Zd=8@)l6t1@XJbv5sOwqUf4H`~8h+lTo)b(IV*gsRE-7{y z3YoAlukcUmhh+@wc|4cP=1b19Z(gGEcV(k0b403j)uN*9H7{zZK3?sBB-+kZx=X2M z^oV7t#~CNQTkf-3dLn>3S`YJ)<~;BWnC|Y{o!}3TA8LX{QG;;oC!U9KMZsv7s7cr9 z;)eO}v9Rf6=~XK8LgyL*1c?9j!1D}HewkGr*%@&FD5#;)&n@j=IB?{R{Ao7el1gn= zqTvoWvY&Vns)uG}FU|Yrh=_0ie4SWwFZ49Py(^Z*Ik1g3A53QTE`W)Fh5kof)RX@K D7{h-( diff --git a/transmission_openvpn/stats.png b/transmission_openvpn/stats.png index 3233314140904169af32d2ad98122460a5c8ce37..ec35bd1f119adc0e3261de70fa2dc4b2be74a8db 100644 GIT binary patch delta 1723 zcmV;s21NPL9McVu872b&0019Did_Hz01{A4R7L;){{R30l>*e?v+}e|;mUyN@}|U3 zks%j<24_h`K~#9!?OoxTqaX|<0p9>R zp8jV0MKvwFIhQj1XT933|3hz{-_OcNd%$>qq`!Ds30t0m*SCarN?A@wU&DY~pMdvg zU_@7^l>U{j*GEbNIK89zLME*ZBu~xzaRKS}@_{w#BSQoL00000000000KknPV!Ks~ z0_@9E8)X`-&*bSKeYS}UcsfY`n417JKwg59OXTR_+^GE9(v zK4BRqNT09_lU%W!5Tq+B!{jWgNhgU63(~ceVNy|arCk{|qsW1DEoGSGB=P+tuK?+D zj4#L~c?C$fNIDV8WLVrzHIt?F&qH4s78uggF;1V3bn$cy?&f?#F-W(O$bt0f!n=@1 zkZzN7+WBX8(tTLu?cfcDcPbV}PDr|ck0E9Hhkv7r9AwyqV-9ia+pM4TJw%V8Cg&i)3)$HZcX+*TC&NM|#D$lfBu&(2$L9oV-(|z1vmfJez#JE_t(q71HCa&UZ&D zCwhvfROCXm)|JRaCfS=EY>>|W_L7{jW{l+HboJT$1KISYe^NeUB!9C*_8nbHNPk2u z;h`o8<&`t!9+P2zmm2+l!0Q`8$)B{>wH{n=+q^Kf=s6F`uT;81 zRoUxpofnp`T7680{t>Z|lX7Y(wBD6FKhCM~0|C0o-$J?s_p=YUH*L zJF6J0iCsOrK$?4Aj1qC?JCd=snGZg7s3F{mp&ZdzM^DA05M} zTA*a7lfT!2#RuH;=E6wdvj;i{Hprc0aUefve;MemY6-yf@J->rhZ_=qK$=^nL zIfk>A(EhEJ`_N;52dnNoQBc*^1lP*2N7)){3GFNGkH4d{KvZG1!+nX|@i>dMgm$N; zM(*(;8=o}^0URqEr}Igp2sc-^KAoF#;+s~UPxJotdr9Y0B}1TGA?YIB^ec{o^1k8y zo+1iq2A0_WY965crd6xYZt>-L839M6Z~bHP<)mYvH5}=G*J|%i3DO|FVrKOc8TLUz zdLqtS>fST&=%NlT9zgg+iX2>gHtpTR#RuPAsx#>b>Qj08U%?lG`aJu+Bcdx##%k#ULfZsy$KJW@S84N9Zmz=o@Z<{yd(Cgm4^RHGTO&PrS6shH zY3!%ZAO9Vr1N-zu=<7lR&A;k2bInzmSDd_)oxBsA{AH~#cd_!$A8sk7&lY`^ZBXPZy! zG^<;8wXNTB@>jLKICN$6EkzUnDl7o74ye{<004mY4j{Y(D4_rl-hol@4?M0B`4bE> RrT_p6002ovPDHLkV1nnOY={5= literal 3664 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 GJ^dd6=~t2f diff --git a/ubooquity/stats.png b/ubooquity/stats.png index 3563d0431d39282bd91a20b80226975d21e4191b..092f0ed9d4c7aad67b68cacdf04da1c7a7fe9487 100644 GIT binary patch delta 1594 zcmV-A2F3aL8q*Ar86yJ#0019Did_Hz01r@1R7L;){{R30l>*egVdUPi^1kuWV38pg ze+BAEL_t(|+U;G7a_k@o74-kVx!p~-n}-@rq5_^Xb32n8>sU`fL_p^N0000000000 z000000002sX;A(ZVTR@+-GOwIe3K)33-sy-Eic}W@3#c*t&yJkvH1tm?T}7KsuxM8 zFX10~2h6a3Q12@RKwnD^q)%tsLC^sJe*gdg00000000f+{=id&U?sB+<>M8oWaknSnS>kUn9YCP<$!P7|b07^g}3 zz_HkB@{}P5G>FsWB#KF=qZ@YbmILYf;xsAiX{VH=gLKVtn&fKqJ0yLEok11pe_&nH zVQJa}7x@nua@HL`*s{&0-U+17C+U^xdLZ4VA!m{F;63{Q(vw!6IgecUCH$B1Fc

      ~*BdT%uG%LNb;_Nwk+bBHD<+c>L~-!QkxGwTp_or0>f|n@tt#}$ zRT0VadgLe`Bd5}ks}o-9$Ev>QFrz|a`kJpaZ#u1r!iVcf4^Xt1rI|` zHR*gsYI$PPBat)Oj#l|%B-Omm8U0zS-1+ykpQk4zT@&fyGIyp;xhI`77EHJ)M7^GL za#}ocx7?|QMZG>o?odols-$}k_k!YK$Z6ZMdA>`UWl^s(Cc>v zGDuexF7?oPxLr}NJX+0Ge}Ptdq&AURSb zBg4BuRHLs69=Z7Cn}bPjnvcS8&O|TY97}p5y>45-SKaIob;gb)f8DchZ7odadyl>q zBk7?znCS9r4n z_ca%Bvx5NAJ1bmHP(dQ4rWAYl@NRj6{g~o%8f$m4C82 z|BN+#phs?y%vlq4e^nki4$3MUAgxL9)SDA^HKdOeHwNiLNFO@y#(c3_NFOX~JU!_H z47t&hZcEh3T?mfu?wsNAH+0TYiGnimG+jv-pj>$pNl&?9Q&s-S@`Rfb^(*J;DM=^G zLdJ7@XvAg1ekMXmY+EBgFU(MWKUytq_E)bQh@=tR(Ju@Y4 z!s*7jTt|P{e{Qi+l$pyW+tIyc?yJFz>C96Z+OaJ*YxOmyPCV`{)^UOVD2gy!)@o?_ ziOc+Kp0V}xX04jPuijY*jHHLU`upw!7!g@$DA|O1uZ%#ql48%09z3YlR6OuL>5B`w zt)1A|3N<_U0y}O)I-mt+E@K16MNIEN49P3_?GSxvOo{j~k%` zutpvue?=zC+SfOKziQLG$KabauVyNJw0c+>= literal 3449 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 diff --git a/unpackerr/stats.png b/unpackerr/stats.png index 211e71b3c321d18c295a7d69f937ea902f54a17e..a8b0ec52d5490f0bcd0db52a1857ef497b746061 100644 GIT binary patch delta 1685 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 G=KlZ(-lUEI diff --git a/webtop/stats.png b/webtop/stats.png index 6c65c34b20dd1c67478d38d08cc2525aa0e8ce16..99d6ea2f4f9a2279cd4c7abdd29592a82bcb7178 100644 GIT binary patch delta 1433 zcmV;K1!nq;7qknI872b&0019Did_Hz01{A4R7L;){{R30lmOGpfa&AA^sz+W@2{f4 zks%j<1xQImK~#9!?VXEq;~)%0rGo$emv_@NjvrtHegQgnI_;!YY||4!2mvApA%qY@ z2qA+r-CF+y< zr!D`ZJT~wAYpnWp2qATZb?;RosdV}NgqsVFA8yuKd<$VGD z1`Y0VQkt{a0q8gM=Kj*^sey62ZfC=P0;O^XuFR3s*|ZDLn?x=p$uZ2bwT-+4x(X96 zO(Wj{rGW_-UCz2t)7wH$aK<9?E$=;dk`3sMAkR&r0Q$|k0yz=6%9+dEo1T(H(J6CQ zxYXR8%M;MU5jkS-vYnDVj7y0IUzZ10GPSx`=Ria*M0=PdsQO{{vJT{B5jmiL2Z4w2 z#{cpZ@}j9#pyy)!weYnd-wV#EOuBC%5l|R72fTAGMqGZ zIEfM>J@y`V#M=k@Jsr6_wRLc}RPq8x4(O#0`F8hS{t>#tkpucs;DHFvVr>5?bZUCA zX}%W^eR`L3+l@evCBAF#19B&S{hucp>C>Z$@7i}q?#03(q8j;QY87UJ zg5GsMP8ilOaPr;_0_S801D^WvlO6gSr@Q{$wu2`-%=VpWKMZTaQ$MGFO;+h*!o?5v zn)R}i9lou8)6jdHD!qQ3-uQ%zIamGY$qubMasW5CDS-pHwTPUv>8KlC?BEBGmu?8$ zBy{Vpy1DsuJU4TFx(E1qq#7Br4Fh=3UExxBMDEqDQ^^g*-s#9MfF3(mS?S0-@6&6I zz0;9jv)G|pM~;sCa81{L#)fQ!)=$}qLK}ikX#Jd;-cT6UgZ#W4xkhR_-kaD8!{WV} zJ5`xcxxHC7+V#7j*ODXWY1b>*ex%|Jn9Oe=`x9unN_^3th(Y}8AiO{)6H%XQa7^(&jZVs5nZgI>s;{n2j`fSCal2rbsp(bB5 z@-*p|Sr4$|m@o5xq~4iRx_%ilob(yf_eD%4(Nwaonq)fv|Li`%ZRO7>e$E3Vc<(B@ zD5Zp7CL0D!H{V%))o-!3Oc%8vaFf*XOZt;aTKO|B8n|k-{7FmKb-EMDx0RV*DrC5R z-x;RC+XqcG>8d02h^cB~`B#SV+b5bP-#u&_EC0^as?J?#`}k)qU>JMfG1J9Id($-S zs#`Vv+45%;Kd1a@I}I(}16{q07>3?=*i=rw>ZbtdSG}qH8O6_efYKxiM1}=|I%+yL ngAgM2j%eNyDHMq29o3?L3}g{-r#eM?00000NkvXXu0mjf#i`nU delta 2941 zcmZ`*c{tPy7yix27RH(-O^7TZv@q70RF)PIN+glxMlr>hEaNwJEf~4kHM*9uhA4&x zkv%2}$;`N#vJ6Iyo#FG{@BaJ!bDr~@bDs0Q&vVXm&RZ+=OokvQ00jVmv^$STLCSza zX4dD>Q^`spR4CVMS=oYKwWGC2JjxCLGn;B#(-1;nja7Sw`%>5x6UF> z(4SHNi#dr=jxtPcRb1A$_DDEEC6C>yU+n{a~FbnP!i%> zw7c0nsAJ-!Z4rc@h@}AV^jBJ;k{WC_=hEAN)vv4eTVR&`WprBj5^{eYunK0nG$Sau zkaczlSH)dKTFHfN!8;$tCnKgFk|KqI2nuyA*3=DtHdN4F2n|_(U0V9Bn;rdt4d{Lt zlew-|R%6NU#$Dd3EAgvVqCq@WhZ6g5yfA8-p)ahVC2;>AG5^mce)z6W<^ z@m3BfD&>SFHXdxxc;6`k@U=G%Y^TZmX6mXv)6y5hq^zzO&}SQG zbzr+(b@w-0(=cqO9_OrGKkWo??ygTR7%?2QJALMPY1A})%0DMoHhPYaP%=AD-hmAL!0�lDIprBK(fjaK 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 diff --git a/webtop_kde/stats.png b/webtop_kde/stats.png index d1282933eff2434529ed47bdaddfa0d252a97f44..ad96742f8bda693ff5e22c12c0241ff5c88de2e1 100644 GIT binary patch delta 1553 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 BTm1k4 diff --git a/webtrees/stats.png b/webtrees/stats.png index f5e2a378e71d2e918ea8cab9c0801b4845cf0bd0..9c4cb84411a094c8b7fd93ee4af0807a64fca2d6 100644 GIT binary patch delta 1371 zcmV-h1*H1F7xoH}86yJ#0019Did_Hz01r@1R7L;){{R30l?2qiV&vbm@(jwVf{`H? ze+3OmL_t(|+U=d~dV?Sgg^6(g*SyVYXB7~rD3JI3*q&BojAK3^AsPb!0000000000 z00000)Pih&0!RnrQ7uM(f64!k*SDJ=JPL!6K2t6;(PCD**RPjrU_jDe@@^I>pGp1~ zbOY_fvA$~cMTyJXy6-Lk0000000000e*ger?%TDR_oifxLa{@oA`-Q1NE_LH0K>;6 z7D0z}bqNNLt}N3aM7n@pkQaTFHK^=y*RL$ChbV!GE4XK)tt}sghnG*@=8XP$>QPN?(pW_S3kHq1e z1CHEak}j;%apWMK%^66CbVwhDbaLdd>5$$qrc1o{T<0CqpM(o@&3@K`1oTPH<%^7WB+F zJ3x9v!Ii1Zb;hR(^HQ5ZTWw5l&Lf9i@;tB^i|Nv9z2(7DdU(^;@#)Aee1NLQ%cAzh#E4(a-K zW*}Xo8wcqM-MA8_f;Gh;y$?4o#*~Fd9NHmiI(mQqIqLLooh80Nf z*o`ZRrw40_kt5fK8&^bBsHPa4_uFoSyW;&UZ2KBG`zY^|rnf3@r#fHYe{V=v9H+E8 ze|H@UdefvIX8BK0U3vv38@pJdz#pRBS~c%acm5epnt^Y;fGm5_-*T;K(u3r>Q(>t?n4``~%k{XQS@Y@=Yk=eFTDc4{?;y4}9Z6U*o$#rAC7XA_@yQqH*X>; z7<{$n*-V8)s|U*Pp zowu^Tee==VJlOrV8cK5SCbjol24Ac9w?HR$Uy?)tErt)a16T)R@67-J*n0=4cR&gS dK)r)j@B?184?^V1-P`~G002ovPDHLkV1gC{v0?xK literal 3007 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 Q_8d7d);HIy)V=lSza;zB>i_@% diff --git a/wger/stats.png b/wger/stats.png index 45e1b9015da9369dc4a42d7d928f09170f45131a..34ff074c7431d60b04ef36dd8b69b64119d50632 100644 GIT binary patch delta 1643 zcmV-x29)`v9E1&!872b&0019Did_Hz01{A4R7L;){{R30l>^k_xAU}2;mUyOZtqk( zks%j<1{g_1K~#9!?OlO(+aL@?!uBBa?|KOoaLHcUxM8Ad)jL-T?wxjp| zK>AF~;~4+|00000000000O0I}B94Cn6F8}Ve*Mu1KTTxmZ>B-|T%^+{#thQun$yon zC!iPPha6)q@k zNtaGnkUnJECb??kJ4hc>y?+8OHJmemMbf|gb#Kw=BEEN!J^<+ydkdtGZ0Rm9;DV=r zIe?{qhhsMJma`}u9_N6{|LqYtgxX-~g9$l!O)=b7G{fY+9k!3D5fPn$ph0;%!Pm*E=uz4!Go{eD?L1NTJp_|sn;SM zq1Bi##-OP)LaWM?xdBsWgjVaV(!89UY9`)qoHJ9C9yosy#yyDlt9W|s)7WNzHkwqv zSupiVq~D186F)3XD&O{|?(K{B5~gD3gwm|?%|PIVg>&SFxAbiJX22QCPFBdpNvB!m zTl2_zrg(>tt03Q+Yq`ux1S~k#CJnojnc@6v>e= zZ0fn<5usIqT`J0^o}HeD&}wpjj)YZH&ri;SkP93d`$|;j^Zd;Y?%1Ba*5(KQcr?$`y|$bKdNKps}x*O)k;r z^~kC0Di$~Oa@mk|v%?^yD`l)oe@*!UflOZ8+WEMvBj8!-W`_|-XVY$RmFZ))%o)vO zRoU-i90+Vkw(DrQCw0%YYgPL&AhszJOAZ9?);XiT(M-PZ?8xXz0avuJ-2_qF9Ldy)QMR8grNOV4Vg=vJQcZ&OP-|-~x%}M@%B24v&|U`bZRJ0I>akvN&z=2v`hn&w z7R_9l#=_T13?}6G!TAA(Zq9nr`~1Rn#bCkybk!7Se$eer-I13zLcJ!iFI3OK$&a#W z9v&D~VF?plFm@Z}{ZvyZRh70XYmt66Jl{y!z@e*6HIEjh3d6fvX!T}zjvB`60S2ST z8J#tFB|Lbm7wm3-<1OM*wuIsN+dkAEV7`~>HA}x+xPPU`d1*XdUdVCY-SvN>C-iWy zbtAUTFWI`fvDS@zf4Um!9-L1{`m%tTsYowyumhd>-oJcMeMqrUN!Qr5>cR1JmX5jG zoTUrL(>>%yw(%DQ&Z<8YziqtOqseXjg)sl00KHqb?OtxX%W3&-L+I-l$*BG}4L??0Qt^bw zyS&D`jK+(9)&6;kiBCS~a`nICrp{k(lBSc(XBQ{I;_nmnvZ^Objd$7QuQ}fwGS^CYQ))kc-nQ{_wVyI| zZRwYB_M<#Fwv6a_@EpYo9ABOmk5<1;!%wc=rPi)G(s-%bKL(vxeMu4pfD8)&tOH&9 pW&i+y?;XJK4j_dB!0--O!9NsM5gDksSi%4R002ovPDHLkV1gJ#NIL)k literal 3620 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 RnjHWD002ovPDHLkV1lR_Je&Xk delta 3492 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 F{{znYw`TwV diff --git a/whoogle/stats.png b/whoogle/stats.png index 40b6abe8bc044ddf8fed6dd11e45f2808a66a90c..5d83a451bbb3f21476713c053bad9bed00a60255 100644 GIT binary patch delta 1681 zcmV;C25$M29I6eF872b&0019Did_Hz01{A4R7L;){{R30lmXMUOySFe>f*TbCgp!p zks%j<20lqdK~#9!?Oltq>mUde694~~&uN=9kE&6lNr2tCbEXgLc(Z~Ch|U2300000 z0000000000006*gQ1C;l|1BVtbO+Kk^G!rFi}v(~zF#eZPpfaqeP0o1mq$9iseH4z z{^O?C^qCXWG$2|&{s=ii*j13eNcvie_slzgkS>>XTBu(1Ieqmxt+e~}*(~I%-vSCI z0-gZ?0000000000002%vpknQe1T6Th=6~}az(xofq}wBX3Oa#wOKZA|kWPRU6bB@i z1e2YhQt4nUo$GNEeov$x&pJP9R-lVkRYj zovt8VWnw0|X8IkZ%icG@kTXjo3@FIS_wSuQqj7_tokK>s+VJV4X<*560zLP9(`zh^j&5(;$B_K5m zx^@L$mP8TCpAktqpI-FUs&~>V>D;iD3F|#hI_cv4(AHCVsv`2Gctb8%f<423kkhhd z%lEcvUDfS{Rtv0htp0;fmRf%sJO}X;WDmf=Jv|4ABX*A_( zLaRdK>6J3e2(7xMW~DIFYmcpeC^Y5DL#tBb>3sPQHB~8;X~@+ZWcozi%3+5y_84PL zmq|KzOp(W72W`q-qo~s(uY-A#a#twoHr%j$^Y6twX9SXd+LfwI)GgfXaQ?8lvSerj zH#@YbAfqenqW@-xCJ_@|VHf>|TpP`-Dj8b+%?^#K$EY&pYWC?j`rbExWn3@S%WU;# zhr7?Gzsk7&7i_-80@EbwHJLMakv^Ak5u#qSsid0A1Mf+q;ELzZ*HtFE*K!$p zA9jdII$dUk^Bvo3Zg6wNF#0abo^O*xkthg!iy_Aq1hlRDSTE{+oNta;UUe*3uO^<( z6=K)Am@`*j6|#}<{}0B0mW%nQ)j7jYs0milp$`joyQ^ZVCbkUHxkm2zb}xRytI+7G zn7Rc_1nFEOcYL>d??9Zng=+U|eeaP+J&xCJtFw);jD?$T3m*y~Ju1>E270+txS_ZB zWDuu*Zz6#7`16ZCwT?*-+;9(dW=rW$Oqu7Co>F2l#XsB@s(o#L#K#M~#KX{qDS8O$ zT>R8J-^CFp^=C`oIuGl!1AI*^->VV@J%RLt#qsy4`R@4+LG@khYvbJ6@%G~SiiuSu z>B-XHSGi%2eV=^8ooYKn?M-+s6Wm>!H;AWSTKYT33C4F^v-F9dOgJZchc=sL!p+mnBi;s_GZp-Qt$_(%$7l_lhVRxr^fIgM|z1 zlg8oDgYqO%(efixl3Y_mZdoH|T|KaOmJl)y{Zq=1bl9?O0+6$=wncekq+jGS1)fIw0M%}ebcnf_vuw>sXFPs?bJeB5xj9Mq;9SyG+D%A@ z2`AW)qpGg3QH=Nw z`T)c)_h22Q1L}2qgB2f;$a|t>cAG(Q}CqCu$pUGu}i zcY8FYgHITL=F9n(&9-gxc0FB!?bidLpZ`cf_tPn>Sa(^?GY0R<2JZ?6->vuWQ_Otw zhehW0T{&{$x2rQT+3ky)Q^)3?ih4!e(~}18irc3-UsVhZybWB$oY%g*`TMIr&94}I zx8}u6My-KeXKn9L={-^F;TwouN6s@4vrbckums4>FaO^kkfUZyxMNMzpUW zOtA+0x54Jo?$@WRvU_*AyIJy00000NkvXXu0mjf>C8eN delta 3593 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 B7^wgN literal 3381 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 diff --git a/zoneminder/stats.png b/zoneminder/stats.png index e7a32ddc6209dd7186d6e2b7df7ef44859bdb02f..c6b9d8d82aa7b0c5bacf3f5557959acae385f85d 100644 GIT binary patch delta 1555 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 My2h|FZTpb_0JH0*`v3p{ diff --git a/zoraxy/stats.png b/zoraxy/stats.png index 05d405a8b698b6ae673195a454a333b553b47a19..ad7a750cb957ef6c5efcd433363c1aea8e480088 100644 GIT binary patch delta 1387 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 diff --git a/zzz_archived_code-server/stats.png b/zzz_archived_code-server/stats.png index 3f37505e5ebb83d138f6068054bc7a929239df4c..85d728f4432d032daa3550ee75b046f319301442 100644 GIT binary patch delta 1349 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 BHb(#e literal 3284 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 C41tvZ diff --git a/zzz_archived_omada/stats.png b/zzz_archived_omada/stats.png index 53aff6cdcc6ca2b67e08a0850bbc72b542792551..46362c62ca529b1016aab4875fdad490d84e2483 100644 GIT binary patch delta 1465 zcmV;q1xEU;8q*7q872b&0019Did_Hz01{A4R7L;){{R30l>yYsfa&12^Rr6epXzXI zks%j<1!qY_K~#9!?VX8s+#n1^5!nC#%k5-l65Hbic>uB8*VD8)A;j@R(nDf#4gdfE z0000000000001Zh;T1qS=#XRi`TO&6^#Sy3*Yf=H`rrEl7=v_q|Ld^y0o=QLQ@{8C z0000000000004lq$ydEH(IlycDl?Lr9E@~-f%E~rJ4J{g3y*uG3up@|gq&nvgG77V z_Kt;Q?XTd2bV!Hv5teO2`hd$e)zjn4(VeFIf3-7Zuy&XjF<_YUb~CbxI9Mzq^AhxrVd`G-j6ID*44q> z(9}g&T1Chu3+9$los67SFgNt?lvd4x`LACHbtPvYJ!3GpGj%!r0;FdQ=5|t!m~KtE zfs})EYswA$J3`JzvYSddgq)3JH#K#HoRMU=lyby$%V2IKgl+>IJ3x9yS6t52NyAnXe#@CUH#^*r?M;m(HR%-!x$ro#WpR#2 z`?9_KtgW$|9bOf!$B8}N$oBGorry@g4$F#`??twkmvT)Bx%Er2U_CD_rKDU-H#=-& zUitHxaz|ZX;XK_o_x@=IrO#)|Zi$7YobqM|%hIYhKcC5W@DsEvXKd@~yWzCx`AoiA z&7hpkhTbydI@ zMW+@>_r@yA*OKa;<}@Y721t*Ja=vxhe)YRN>^qfat)KMBIhk)c#R?Bm;*mvAX6k<%e ze(QH)+U+=ZMpd@G-3~?T>GN!JEQIw9D|OY=OC9q6jAeJjX)4-Hugj}xja&iJr|)A~ z3fhD1#h5kSs+^hhWa=e+sdbvn4RjlQ;pT%u0QLgwNE^Bv415N<_!=OGi)2g-9n zI-El~oR3U8oVS*H|DJR>uRkNlnKM{Ar1x*>+~IR13=MF!; z*}qfv?{xj2G>B<${(dyizvtWk&Wl`4+g6`02g+{yq;<{f^HoTCP5+Dq>ClDU26=hwggBhH^b0dVi2F8l-1Z4fF> Tm&wNf00008NkvXXu0mjfL}u|E literal 3372 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 ZNUI72QR|~i>E9nfU)NZtOzX+3{{enoyrTdB diff --git a/zzz_archived_omada_v3/stats.png b/zzz_archived_omada_v3/stats.png index 067ea026283177bbd2714d6811cada8ef7738159..b0ddf647c7891597c76ff77063fdd2a1be1304b3 100644 GIT binary patch delta 1461 zcmV;m1xotJ8P5xl86yJ#0019Did_Hz01r@1R7L;){{R30lmOG$pYOFz;onzse~}>< ze+6bqL_t(|+U=c*cH5ksfkyk0+qdfkJeI8q=?1ekA>ClMCZrq8)|9hL0_oba zHGLAG)-y+@39*@oJPvdtG|lX$FE zh_d04gY>DBC?MT}AxFSP4T8rbe`k*JKxow%$|%Q>n}Tyft8o5L=M1FJ$oW}3{dkoW zXx&!(?I;@+E<AUu4e(G ze_5?dK+s$70zJ}_?T7CQW{h<~SLBg<5Aom;^e0bt=t=sYgqxOi-{EA3ex&<~4k_z` zUV5@aFVfdU8y0nMX;XqNf6rz`y^^3SG30!c0dG~%byThHMcb%?uO;Y(8v^$!U_5ec zQ^ET#n+HmtvL@f~`#VEn^!rh^=Shz#bAt-LqIOe2x^Mgl%!JV^lP=GHTMy??9mXfm z8*&Mm4gn)>-gUZv;xQPS&^3^r{JOeD{gn{%Mh2mk?bhK*_s?j&e`lR6%bMwogrLf1 ztJGjpy682fq8?s^hq7%xYcEjGcA^*{%69s7Rf_tu6z}d@J#R!@QMJRsMMldbxocYG_05l2lcGxs3g}kGem!$oej?PmdI{NjHy#BG#AX z#=uyXF^=67cSw(xe|{bbKif9^tA@>rJ8qDEEM}9AIRkzkG5^q>@3nbw`w@A9^js^= zYw*PcUUWE+KV9ON)d8sF4kf4IKWV=8&=YD7SKXWJ|) z$A4<#YT#@~PTq$geFS^_PgA_;DpdX(U8BHX)W!E6PPFRlQvdvhW$t9G9#yOFXL>Mn zQfd~cmvkRr(#$VlhL6(rPdgn!Jsa$v8`k#jAu7~+<}P#M=5U!pdSpwn|C0`ex89`@ z>9ilWz2xeCe*wC{aSp(7nx^&X9@ZfpOt0JjHRA)lyvJsFk;s`Y@spS%?VU@$z1hDj z?BA93f6^eQefQ^6a{n>iE}zXuHp{ln+x0++wqM^uPW!9=(;eou&$xeAc>hE7@A992 z%6dO`;&#vQIC4@A>a>^E?WJ-1#`jK%|m0Z{K?EPMgJwhwe)`75~q P0000<2SrXqu0mjfTKDS} literal 3272 zcmai1c{tQv8~%+Yk{Gfxs6>`bN!g~cL`=$-<+aQHPOojkjAlY*DI^iHCu$-~wix>t zrkE+j@RG62SYBZ!`!a)XdjJ2f?~n7Gb3M;F=en=w+~+*^d17N_eq2CC004mF2n$m? z003=p###Ja9E(3((dBeULoJ-|0)SBW?*__L7m@`4!Fvc(V|z^g3e`Adf+*e@R?Gig z=GuyKe1wgcSVBPt)y;Pox#T-LFJJo13z9OcZm}nDe9J3_XAw*lC{jA9;yQT7y~x}6 zZ2n&lF40C*C6L(L!u4alX>vk|T{$zq4j~x5<5?j<xz2X`#@NT1f+7JlM00N`re?n1|l{F%?EK%G}uemQ;k zpu}1+F+i};S+l_zBx(IFt4MiV+OWPEw)#%wnappK8wR_*FGUy-(v0oQIrDUlN85Ul9`nbvlBlurNvp(vv_lV10&ytzB!J=4w>0|pc*$Q(y*vyMP9 z;7IAc`CwR&f3Og6@|_iWn==e1e|v}?kA080Ow8D$OXzE01S$n z_ptXFpB&%;z^UUW%D;0%?2`A_0^JIDfZ*Xmn;^^P6W8tbyrxI)1Jfx#K+vB691qfQLAanZWQh@WKpAFU#`kRn=J&K*hNHZW+ z466)qUOU?|XCQI6p3NJ3m{&SPseEIM-;_HS1DY;C=s#7gTnOAf1|US8{H@ho5AHqT z24G1Vbt;(`w{Hv}D^M4uH*W#If+Oo6L+e!La#~&tY_4Mo>ZQX+(yP({le?`K4`;kY zJpHX@?lAT&#()IBm=z6Dx*^149by5M*(0DAAxD7!=s~pN{hBBfinss5 zRW75L1Up}5dYZaF!%pF|qw(WxI6{2Okr%CH5L+mCrcQ-A&J(9=>_0B_N`<>`S&xnj zT!~Wyc!EQ7+K#y#a7o2?eI0B2OlmI)P0Z>5Xxn?UxM)=L`poBc?y!G7=ns0XvP1P( ziszuQ|FmJ&{QsQ$l$m*q6ISbvP_4)Uc@4hmFWIVfNyrt9E&kDVzj<{fV#*d{Q!tU7 zE4T~k421-L3x=};|KiPY3u1xla$El9uHEszz`rR0d~3z5DI?NtE7L?A8rhdfpT28* z$~@oz$&b2^I-vC$5}ng}DOFh)q%76wA105)LR%WG6S1Nc0f(<`mj7vM%0A(M1yUhQ zvQuLg&V0t%Q|Alg<!(@?v;o{V&L|>9O^d-GUXVbZqvGKk_DyC(-Rj zr`TEL_3Q|*bSvxa==S#LMcc@wu@N>VfMIZ|GwwSL|xXdqi7Q+lBbJao3#eQNa^jFi6S`N~jUb8GaQ_q}9p{h!gN z6G+i0DDnz<;?X4o7ub*7QR?J&Plisl^}&^LdAyPD&{p?7)&pFVTVv-yNj0-THF)B8 z{?{|sM^zRyuX4eX%El+%BTxZHeRc|iTbnzu4sBn@>2r_1=Hy`j=4)pqAG0ofv>ooH z2czv~`YdtJZ`0q&QB$MR?F;nN5gM`HUDP`wFBe{68DJeV+8QRj)BP8=mKO$?kneK}n(LSd28b@cx8@+hPwv%a4v+{!n`U5hplYB0($pzPLm?9X|2ur@}sLvVpGt_*ay zQU}C*V$^HLCV{x&s?fn zb{}gRp@*z~=HYr`f6R}td`jgR8Lrb@iFtKR3(M5_rpS2lOMX+h-EC4)bRh1sgP7+J zSko$sxw1IfpEPt?X9Vi$*)fbPsLJ6S0AF6+Kll|rmxF8H7!-7k2Z?XV-#l4CcxwL+ znQFGxQP(!SbjFOs%29dfGvD}>ud|FRjrW8VwK+K*D*#`JGB05hpOVnfXcUubxIYS? zDpX*SvDa69mi&Uw5iCdL#-3CK-B3as!)1|_5F@?}^x4_><@)VQdlsv8B|W3t#0W{5 zJ8gbR*dpcdc)_bbth913x3{%pS;KoDq?+jkyGjKf9K8GP=m0E-!s?`Sgnk1`<`5Hb z@Yfx9IeF5o2btsDb4+LHR~4RIsMO23y*dif;TDbP)@=NyhNZk;qs9o(BQ`ZB)4bnM zr(r3E#y?Q%=HmCuakJ(SWM+Q3uP>yjGh}vcZSUuZ-4y;dx%^5LMp&q-p`2x2QjL8V ziKz8P;HAt}Y|^pcZaU-aj|toOziF+4_7CsHV?NLDzWY6?f?%0_N&M-_mJ~fv)|~)h zAvZSf_0{|J9NsoKc#NWb_G_(9!Vd*Q6+CW~8=k1B$PrDbM zM(-c8gFEg-0|frQrz=0S+3h*cvu35P=!GwHUv!JhL;rn)XV5iH)uR$4fBxl?t}Z&X zM*V=w@MoXO_Dck-oj)%@BUAs@&0rmjkF8OYAJp@Fxz$?fi+n$0Z)^7wa&EkRq}lPN zQ(uzL_aPMt@t1*V6Ny3TR@`nx*PI*2H*#Z0MRILczmlnAYGIH02-w+?u19F4Z4mv& zTX*l~yeOq7`_ z%n<|Kgej@oCeH^8U<6(;OmuR-9s;g*l}ZlFU{i(ru;O;<4jqdvmY!HJ)>3VC@b4Nq$c{+ zy(tAxu@s~swEZ6j{SK5K(lhE+7xZ=El{ADKL?K|;yo%8H^wnxZ&#l$7Izp33y5p)Z z6Iy(#5Cx;XNW_$4y5Bv<%RQ4ix@u4KX+2hlDbHxpb$ee_sady_GKBPbgz0m3h{*@j z7FjzMF$jzyJcvHCUvfAOr#(;DjK+-<>C-z>%ugEfd6LQ36`=Y>my>kv(1|~vlUBt% zZ97b3BpGzhT5U$p>gu1e!c2utO%(ECSDK!3lEc9&Hw-a diff --git a/zzz_archived_ombi/stats.png b/zzz_archived_ombi/stats.png index caee330068f5d70395369eefa9b581b1eec7b72d..0ee53c0389c9fddcfda57d28b5d020dac761ef0f 100644 GIT binary patch delta 1534 zcmVl#) zks%j<1*}O#K~#9!?OlnM+aL@?0{;J(yE&RT4q(9GAZezr-MVHen?VN>2J%k;kgLFWxdcS{ts&}vs z000000000000000xSwU69^t9?AApJQvEzy#du%Borfc*+k3~74eA}FBO(XVRgw<%Zi{qsgfJ`|Igk#U4$?t7 zNLNBSmTa);x=0VV-GV-V^!>>+#ggv*oq5jzq*uJkRV5%%V*cXVN045(?>d!c6GVFS zxd&{bNb7gX98i}-`cAk5gY<(P(DEgJ{mYC857Nutd!BS5tS96;Mr@)ezZCAsC3U&2 zrJK2k95?+lQmYzB&yj0N!Iy(G>PY8~H>UFG3MIY3tR+!5Wz)I)B}kV_dO6@~NYo8E zaz`N;2I=}7xudnXowd3hNA57MVka1D$ENdu7IsOO8HTN3)Ql_Fo?0d61g2Jhc~~Q( zsa1jbbROdB8BVQ|ynH&3S=8A*wJI>5UM<0le7Y7#u72yI5m(N@VTYEDj|`ixA~@4z zsBKtv{f8ZRj`=rs*g+QQt!Eh+5jpXsH|uK)zMS@(9op43TPIz-BiC_c$$(W?ezOB# zU=VP#gLLI?Lcgnav!dUG~evddj^@YPCvZgVO7$*jk9`Jj@sWzIiJp#&lb%) zXJnAhKlxUzE z^z)_Rbc?!1(nl1AV~{S2^dZY^)oXQyr1LWB0;G=+zvz!kH}f)%0Z1QzA;La}!_v*X z&JqBmk5$`QG34d!L_uYZsW|`aYzR}d80lPLa>thTo#4#nuw#GBxk}))JAL4|hQZf^E=qbZdJAfj_2GWanxuR0EMqg{PX}V8 zkRCZW+jyFc;g(}r(j!L)oLTqHILkJZbTRImLv^Y1q=#{f9$uremfBQ`av3hx__Rs%5_)OykhXKZSbyP z@Y8yKeTtQz{9%!~eOHcL`f+n6rn-G|bDG%vQBkj{ds=DmuDN}g^G(Ij#AD(j=DPOn z&F`<~G{0i-)0#IkRZ}r?d#iSS{?O-A;Ap<3nismK&ly_N`~LlJ2S2a(BvWNcFXq|z z?!kU!MEeR&!jx;Ue@r&dcE3GkRo%O*?fsI$&+7dp(3RcyY@z_L!vX;7faur^004-+ k15ob(wom|2@4zbf2aDzq81NI}V*mgE07*qoM6N<$f)!&68~^|S delta 3246 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 Rit#f64D^h3%Wpq={y$)STx9?N diff --git a/zzz_archived_overseerr/stats.png b/zzz_archived_overseerr/stats.png index 747432287d5894818dc181346a910e5fb3099b19..74f2db615f8c698bafdcab526e798085a0423b1d 100644 GIT binary patch delta 1540 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 diff --git a/zzz_archived_paperless_ngx/stats.png b/zzz_archived_paperless_ngx/stats.png index 74ef16d9c5893aa48deaba93c87267490610b81c..5e9837e8a0d18df611c23bd595545964d2875156 100644 GIT binary patch delta 1533 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 diff --git a/zzz_archived_papermerge/stats.png b/zzz_archived_papermerge/stats.png index fc142256d25efbe647ec38509a48395eaafa6bea..ffa1a56978baeb62ed5d2b1b4862cb70ab8128ab 100644 GIT binary patch delta 1396 zcmV-)1&jLe7mo{&86yJ#0019Did_Hz01r@1R7L;){{R30lmXMeWaZ$r@<-@eDv==< ze+4E+iC;i^j0@58K(4<^41) z#=jH<`7o9~6aHm8-;m$SPp1I(aiDL%e?__kek_C#LI@#*5JCvK_6r%i4>bBR_42WV zD3Fzi6wr-97ZISF9MjLB3+hETl1w6woZJp?^;g_f<11CATfzJ3fAT))h$aI)mF)kK z{Z!tNJJ1&nm5uTHAM}lqG=V+?Xkd5;?3I!<}Cg_JT z_ct6S-STsn>DF%f8@qnkqf#8^ETA49l7D==}OJKGId+fH8cNS5~h1E zVM~GLSqrUBPP@OM0{T$hyLRT^qfclIU0inBBxcmfb7{qqQ|-dlrhda$>oLmK3G+(S zC4Vnle*u@E+-n$x%*S=)V&{Yk+th}2f8=yqx}Pxf0*+i9y0A^HpL3muapV}x?Jds0+#Gb~=JrCX zn7O&oD)TgRp;hK-)bp zc5{}_X<Yo)*^AU|JnG90%z6livQX8Vn0o8<1ZZZ-vsE*v~6>_eq2t=uNxwV z|42slpEUefe|1U46B_UG8t*b1U##}!S4{lnb6&1KA2)S=xk{Q&E}vao3KoB#sFzi} zXllI6E`QB@ba$@BAZC&x_N48Uezn-_V;uqD+ z_6bd?eSg1gLk^RAQ5-YI3Mm#MZt$v+`pIp03t-VU)OVz#@ zbYk^)k|+=v76|I7>$Mq#5Nq#6$UYGvngvCYp&%MqHJSdhOsXZ zV|q=|kc{R^vNe=2_IaoKzJI-cynmeYoX_VxpXc*^wsW3GH|(sB2+Iir0C41rjpc6u z09xmsvjus$dl`pi$Q43J8MafMIera1|CaP4a>M1%zLK?|G2su{ zDV2&sDaUyo&V*YV6IBDwuN%Ogk~Zua7gpN*J^4iR(*<{<|9JcE-o75clJP&ZxB34+ z@*yyLC-TFJCWMEy~`52hARm z?fxkQ@@(EI2^d07gv367m+e_yJM_B-k)ldmwA5EGeoTp@Tl^z0CNwwTj)(^)9!EAA zcXODNrkwtolI~Tu!7#o#>Vo$K1ll zm+7$!2Xuee6+}Jn-B?>mn`2H;p@Xckq0g5pEOx#IM9d=_$7s%>4!1d}i<3)27gROz`dxLODmYtQL}O;dcMUdDuA>$H{tzc& z$XG5!hfyl{yx~wypPhi=B+iYF@JX@>rbZ*&PsS}s`9@kG^|i}bpQ-wMOR{ zjl5^p+Fk>#9%-Tdd|MrBz6_RQymZpe7D%I=Mh z&;5&P>8rE^hTm#VbtAj-1N=>DaI?s)FCj3)gLNV#{PQ`O z>E0e|XKjW$XYtMatFPRTe+}BMZBb#t9=eKl%v$h4yL@~4qAXG86`v&`#>f5>sXp91z-}JTPKO+o5=ZzYVOBMf zw=c7({_vq1QGG32LY{_SSDN~sBynTvMV+P^aoG7yTA3c%cl5444kdlyC%+%{F?v<2 zPhPlMCM#~fy$y?4S1DO%2%&Ca?xPz??Y*{9S>AK#4fmze;4h3W{afT9EYe7otuSDg zWrefS;{U7YXQ%$4#y!2r!i6B&R(82+ggbvGTzTGNi}`m_K!!)>?$*U`GA`%g>RGeu zvFnUEC5A?dPvV{OxqNsjHITSF@?ult{?{_t? zMkL%EZufGyf^Q{PCbq^2kBJPqNO!pk89aU^Pv`7WW#1loaYT&L{W9i-6egTXJzBBw zI4BDc`s)=;b^P76$;U+$u;pN8w_w7YH(<1$0S!!52p9lH&o%irEfX-C?x75JSE`Wr zyT>5D(J6@Q`yI7VSqA+!J^;m2!Ia^9Vxh&KPKh?BD>{aZMul}8V46xLd56yZEkxfL zk`E*sy6de~77v+7)Y?RuslymQ2aDgow{g;MBpG+#tRFdawdXA+JhVrgxY0~#etD@( z61>2&9DL;H>0^?g2C^^DHVt7aXTT(%86GP2<*M0Ow7My3*gXgg1fv449jIi77X`cO z_k5A@r)K5ZHPD=mPWqua6&xK2fIu^l%yc3Abjn{eOx$RApjQ7y@1Q6oxG{o!MUg+Z zEl``)ckEoOX6^ZWT6J)YkPxO3Ow0Gy9KPjW4t`nII$v`ivd(af?Ch9zbyV_ty}{rn z$z|=Py1F3`C5UVezy5IDJ}Ov4d;7S&_=yL30U=br6W5NjneR}v3 zT0Zw_Hp%xQ`m+~@=Q)%~Q|T`51lwlNhCW2c6Y;s(h$yODxAr!aCsRIGw~%qXd443b zJ1pZ{&)s_Dtp=MY&k+I)MPF8CmL>TJ_>GVYpm`>D)Sv)@mcN}WZq>j$bgCJu@2jnFMqUjXqX}bF9?4Up)Uf&wj_yC}^kD5bNVW?D56@Kz zS9E<39eMwP`~1Z2hHuw(VYX)GLlM$EX6e~lPS~~l?W|ctZ1;U?oqP{M2ZpjQa?XjP ztacxews$DpUhLQ9i_wl1t*M+v(GyR1zkoHZsv*Gk;v+A3gnmBi^0Ho$bB-5D_7NDB z!oi1PZb^nKanX|8Y`E09IgMDZy?jlx;4PdAbHeT@Z{)AL<2*+KNW2S0MvPdchS;s( z)dXi~ObwxB^6+_h!h=>(yJDV&!6XXp!Lvg!1PmoGL2Wn9 z#(U_k$`xW;Id{>VMe4qP3eEjQt*K%)3VcDfj#tpma<_zZSgrc{OUSeWb8~@d#K1%} z8TsS^>b0mH5~B(c=M?#eveArt!Df@cF%WlbOBgPfb2CZ5 zKQX&@?9Q@SBytJ;B*KTmHtm~I-@3MS;+fq5;d}E8{*)tZwmaDM{z}2=LerJ$`QYlk zz2&B%H#3ORwy>|5D)hwI&VLQmDtyn8Z_E|@WKdlTS?dkc^IK?1xi90xK}enDTK#s7 zeE05c$+Bmn5pu8s54|eW6{ahVDA^?hYJea)C7kvd2Ntey4=cApmaw}XPo9$n0Imo z7=NnN)t*FL5U_UAr$bJay4$bjEZj_E+1cJ<`+l@XG_-$f9eWL1st~B$#XWpK>uCEu z){*H2yX0o6m(Y?jOXJtOJmt?&9V6uyF%3-g-qjX(=^de)Al*#x+M$f`6c)N>;zbvN zBgW2IXyf98MD1qra=X_EfB3XXy_$O6z`4XUI3bIMd5LymX8}9}0A7a49{~aC{ZaA6 zaT^d|YeoH+u}mv(kHouZPz;~!M7Dzs9>{%`Jqh8qsjY(rtur$G6kukE{bKiP?EH?$ YA;R{hB-LJWXL#U>m7Qgcx#z=w0~^ZQP5=M^ diff --git a/zzz_archived_plex_meta_manager/stats.png b/zzz_archived_plex_meta_manager/stats.png index 945baba6990fdae3273317de4831c9613922ce16..298e78bc7844a462a53b6ec252971eefe7ac3ca0 100644 GIT binary patch delta 1312 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 efO-dQ;eX8&{Sq@{sJg-c00007 delta 3030 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 YA65eAL>>{iD*ylh07*qoM6N<$g8vug5dZ)H From dbc6551eb6cc10e9b41626641d573232ff5ed686 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 20 Jul 2026 18:02:42 +0000 Subject: [PATCH 405/538] Bump actions/setup-python from 6 to 7 Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6 to 7. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/setup-python dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/generate_stargazer_map.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/generate_stargazer_map.yml b/.github/workflows/generate_stargazer_map.yml index 539bf2b2e8..45c76e92d8 100644 --- a/.github/workflows/generate_stargazer_map.yml +++ b/.github/workflows/generate_stargazer_map.yml @@ -12,7 +12,7 @@ jobs: - uses: actions/checkout@v7 - name: Set up Python - uses: actions/setup-python@v6 + uses: actions/setup-python@v7 with: python-version: '3.11' From 8e962ffa32d5ffa2a326e0080352833c8ffb257b Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 21 Jul 2026 04:27:13 +0000 Subject: [PATCH 406/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index 4d1318656c..4399373a5b 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,4 +1,3 @@ -## ⚠ Open Request : [✨ [REQUEST] qbittorrent (opened 2025-10-11)](https://github.com/alexbelgium/hassio-addons/issues/2139) by [@nyok92](https://github.com/nyok92) ## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) # Hass.io Add-ons: Tor with bridges From b356cfd518cedd9579430338d71a7c255c1d7884 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:22:45 +0200 Subject: [PATCH 407/538] Updater bot : claude_desktop updated to ubunturesolute-version-8208e985 --- claude_desktop/CHANGELOG.md | 3 +++ claude_desktop/config.yaml | 2 +- claude_desktop/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/claude_desktop/CHANGELOG.md b/claude_desktop/CHANGELOG.md index 934d5d2226..54fe544cf5 100644 --- a/claude_desktop/CHANGELOG.md +++ b/claude_desktop/CHANGELOG.md @@ -1,4 +1,7 @@ +## ubunturesolute-version-8208e985 (2026-07-21) +- Update to latest version from linuxserver/docker-baseimage-selkies (changelog : https://github.com/linuxserver/docker-baseimage-selkies/releases) + ## kali-version-9ad48e7a (2026-07-18) - Update to latest version from linuxserver/docker-baseimage-selkies (changelog : https://github.com/linuxserver/docker-baseimage-selkies/releases) ## 1.32 (17-07-2026) diff --git a/claude_desktop/config.yaml b/claude_desktop/config.yaml index 4be2b92ca0..58700b5f22 100644 --- a/claude_desktop/config.yaml +++ b/claude_desktop/config.yaml @@ -110,5 +110,5 @@ slug: claude_desktop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "kali-version-9ad48e7a" +version: "ubunturesolute-version-8208e985" video: true diff --git a/claude_desktop/updater.json b/claude_desktop/updater.json index 006668b759..d6f071b580 100644 --- a/claude_desktop/updater.json +++ b/claude_desktop/updater.json @@ -4,6 +4,6 @@ "github_fulltag": true, "slug": "claude_desktop", "paused": false, - "upstream_version": "kali-version-9ad48e7a", - "last_update": "2026-07-18" + "upstream_version": "ubunturesolute-version-8208e985", + "last_update": "2026-07-21" } From 755b14f9348a6735cb5d6b228cfba26b8bd523c5 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:23:05 +0200 Subject: [PATCH 408/538] Updater bot : elasticsearch updated to 8.19.19 --- elasticsearch/CHANGELOG.md | 3 +++ elasticsearch/Dockerfile | 2 +- elasticsearch/config.yaml | 2 +- elasticsearch/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 67063f0cb5..357f4ddba4 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 8.19.19 (2026-07-21) +- Update to latest version from elastic/elasticsearch (changelog : https://github.com/elastic/elasticsearch/releases) ## 8.19.18-3 (14-07-2026) - Force a fresh image pull for users left on a stale cached image (some upgrades kept running the old Elasticsearch 7.17.9 image, failing with `mv: cannot move '/data/config' ... Permission denied` and `AccessDeniedException[/usr/share/elasticsearch/data/nodes/0]`). Fully stop and update the add-on so Home Assistant pulls this build. - Replaced the cryptic `Permission denied` failure with a clear message when the add-on is not running as root (the state that caused the failure above). diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index b5e7117821..bf2cb19344 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -14,7 +14,7 @@ # 1 Build Image # ################# -ARG BUILD_UPSTREAM="8.19.18" +ARG BUILD_UPSTREAM="8.19.19" FROM elasticsearch:$BUILD_UPSTREAM # The base image ends as USER 1000:0 with a root-owned, read-only (0555) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index dba4ca188e..f6d7da49f0 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: 8.19.18-3 +version: "8.19.19" diff --git a/elasticsearch/updater.json b/elasticsearch/updater.json index fdaf54d409..32045df259 100644 --- a/elasticsearch/updater.json +++ b/elasticsearch/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": false, "github_tagfilter": "v8.19", - "last_update": "14-07-2026", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "elasticsearch", "source": "github", "upstream_repo": "elastic/elasticsearch", - "upstream_version": "8.19.18" + "upstream_version": "8.19.19" } From c1bbdaf517caea5fb37e7f745de952b2a5815469 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:23:23 +0200 Subject: [PATCH 409/538] Updater bot : ente updated to 4.4.24 --- ente/CHANGELOG.md | 3 +++ ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 15c481b126..e539d2ba51 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.4.24 (2026-07-21) +- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) + ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 72d2fc618c..5bd0afb53e 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.23" +version: "4.4.24" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index d8d8dd2093..a6a64d090c 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-06-11", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.23" + "upstream_version": "4.4.24" } From 0f36179992cade3b85b98f053163009709b3fbdd Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:23:26 +0200 Subject: [PATCH 410/538] Updater bot : epicgamesfree updated to debian-2026-07-20 --- epicgamesfree/CHANGELOG.md | 3 +++ epicgamesfree/config.yaml | 2 +- epicgamesfree/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/epicgamesfree/CHANGELOG.md b/epicgamesfree/CHANGELOG.md index 1c9370574d..9825af5a24 100644 --- a/epicgamesfree/CHANGELOG.md +++ b/epicgamesfree/CHANGELOG.md @@ -1,4 +1,7 @@ +## debian-2026-07-20 (2026-07-20) +- Update to latest version from charlocharlie/epicgames-freegames + ## debian-2026-06-21 (2026-06-21) - Update to latest version from charlocharlie/epicgames-freegames ## debian-2026-06-05 (2026-06-05) diff --git a/epicgamesfree/config.yaml b/epicgamesfree/config.yaml index 2f0895db8a..9d029c2b70 100644 --- a/epicgamesfree/config.yaml +++ b/epicgamesfree/config.yaml @@ -88,5 +88,5 @@ schema: slug: epicgamesfree udev: true url: https://github.com/alexbelgium/hassio-addons -version: "debian-2026-06-21" +version: "debian-2026-07-20" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/epicgamesfree/updater.json b/epicgamesfree/updater.json index cdaf0738e7..0004045ee0 100644 --- a/epicgamesfree/updater.json +++ b/epicgamesfree/updater.json @@ -2,10 +2,10 @@ "dockerhub_by_date": true, "dockerhub_list_size": 2, "github_exclude": "-", - "last_update": "2026-06-21", + "last_update": "2026-07-20", "repository": "alexbelgium/hassio-addons", "slug": "epicgamesfree", "source": "dockerhub", "upstream_repo": "charlocharlie/epicgames-freegames", - "upstream_version": "debian-2026-06-21" + "upstream_version": "debian-2026-07-20" } From 68be5306a3540750f20baa59d668d54779c32453 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:23:47 +0200 Subject: [PATCH 411/538] Updater bot : flexget updated to 3.19.28 --- flexget/CHANGELOG.md | 3 +++ flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index fb73412a31..a6c1890ca4 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.19.28 (2026-07-21) +- Update to latest version from wiserain/flexget + ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index ad1b7f6538..21668cddd3 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.26" +version: "3.19.28" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 82ed3e79df..b7a34839e9 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.26" + "upstream_version": "3.19.28" } From 4b6a44cb5b09a1b0231a3a4e2b2f2f0f1993be97 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:23:56 +0200 Subject: [PATCH 412/538] Updater bot : gitea updated to 1.27.0 --- gitea/CHANGELOG.md | 3 +++ gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index a807064de8..dad9180f95 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.27.0 (2026-07-21) +- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index cad067b70c..9230114be6 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27" +version: "1.27.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index a8e3aeb675..9391b5fd61 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-23", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.26.4" + "upstream_version": "1.27.0" } From 63ae40d75d830a60cc858edd63093a580f71ef44 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:24:03 +0200 Subject: [PATCH 413/538] Updater bot : grampsweb updated to 26.7.0 --- grampsweb/CHANGELOG.md | 3 +++ grampsweb/config.yaml | 2 +- grampsweb/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/grampsweb/CHANGELOG.md b/grampsweb/CHANGELOG.md index fb9d6f51c0..f0f27fba60 100644 --- a/grampsweb/CHANGELOG.md +++ b/grampsweb/CHANGELOG.md @@ -1,4 +1,7 @@ +## 26.7.0 (2026-07-21) +- Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) + ## 26.6.2 (2026-06-23) - Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) diff --git a/grampsweb/config.yaml b/grampsweb/config.yaml index 0f584f8f67..75e192f998 100644 --- a/grampsweb/config.yaml +++ b/grampsweb/config.yaml @@ -115,5 +115,5 @@ services: slug: grampsweb tmpfs: true url: https://github.com/alexbelgium/hassio-addons/tree/master/grampsweb -version: "26.6.2" +version: "26.7.0" webui: "[PROTO:ssl]://[HOST]:[PORT:5001]" diff --git a/grampsweb/updater.json b/grampsweb/updater.json index c044716d49..2337abef82 100644 --- a/grampsweb/updater.json +++ b/grampsweb/updater.json @@ -1,9 +1,9 @@ { "github_beta": true, - "last_update": "2026-06-23", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "grampsweb", "source": "github", "upstream_repo": "gramps-project/gramps-web", - "upstream_version": "26.6.2" + "upstream_version": "26.7.0" } From 60cc5e29359314997904d4c72d5fdacc8d5e61c5 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:24:08 +0200 Subject: [PATCH 414/538] Updater bot : grav updated to 2.0.12 --- grav/CHANGELOG.md | 3 +++ grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 06165ba207..61594a4aa4 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.12 (2026-07-21) +- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) + ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 0894d6e150..2e447168ba 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.6" +ARG BUILD_UPSTREAM="2.0.12" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 540412f15c..414dd0e14c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.6" +version: "2.0.12" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 3936e662ab..e0c78be707 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.6" + "upstream_version": "2.0.12" } From 8e8380192fbab1f5a7910546300f25cfe47eb021 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:24:15 +0200 Subject: [PATCH 415/538] Updater bot : immich updated to 3.0.3 --- immich/CHANGELOG.md | 3 +++ immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index a8ab336381..045648f295 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-21) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 4537b0473b..66e32162ab 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 63ac0aca0a..89110984cd 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 189a30a512b7592602074b287def7c0072755ece Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:24:20 +0200 Subject: [PATCH 416/538] Updater bot : immich_cuda updated to 3.0.3 --- immich_cuda/CHANGELOG.md | 3 +++ immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 95bec50a58..8ec858a37f 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-21) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index b7c3dd3c48..73c96d22b4 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 63ac0aca0a..89110984cd 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 32ad0b03ae8696213cedeac517fc9f7382a17b44 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:24:25 +0200 Subject: [PATCH 417/538] Updater bot : immich_frame updated to 1.0.37.0 --- immich_frame/CHANGELOG.md | 3 +++ immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 443763661a..2fe6e3059f 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.0.37.0 (2026-07-21) +- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) + ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 44a6fcb111..2425d2bf8c 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.34.0" +version: "1.0.37.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 8408fb021e..f14e4a5ff7 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.34.0" + "upstream_version": "1.0.37.0" } From 2222394d041146bb9dc6a3f9d350ae03401613b3 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:24:31 +0200 Subject: [PATCH 418/538] Updater bot : immich_noml updated to 3.0.3 --- immich_noml/CHANGELOG.md | 3 +++ immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 0c354e8271..81e41b4010 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-21) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 42ee4dc3dd..9774a2f395 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 63ac0aca0a..89110984cd 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 15499706aae32a89003aa8b40c2f3653d35c9cbd Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:24:35 +0200 Subject: [PATCH 419/538] Updater bot : immich_openvino updated to 3.0.3 --- immich_openvino/CHANGELOG.md | 3 +++ immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 1b604106d2..ccec6ff975 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-21) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 52c6cd1a44..30337862a9 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 63ac0aca0a..89110984cd 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From b104c24a9913aea2c228ed04048c0eff55a276b3 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:24:45 +0200 Subject: [PATCH 420/538] Updater bot : jackett updated to 0.24.2251 --- jackett/CHANGELOG.md | 3 +++ jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index fdcaa4afa4..62ff96f9c3 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.24.2251 (2026-07-21) +- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) + ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index c393744967..1d1a122d72 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2166" +version: "0.24.2251" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0a816abd2c..0984536a61 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2166" + "upstream_version": "0.24.2251" } From 8ee8e5fde749f48c2e55f3535c50794968e90226 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:25:09 +0200 Subject: [PATCH 421/538] Updater bot : linkwarden updated to 2.15.1 --- linkwarden/CHANGELOG.md | 3 +++ linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 90b6ee06ff..10f0ae9bd2 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 2.15.1 (2026-07-21) +- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index 33fb3c849d..b1d3213f17 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.14.1" +version: "2.15.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 18d72d7a97..b26bd0224a 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-04-23", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.14.1" + "upstream_version": "2.15.1" } From 8ec8777b006360c5f171c612400fa3f06bd9ad89 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:25:14 +0200 Subject: [PATCH 422/538] Updater bot : maintainerr updated to 3.18.0 --- maintainerr/CHANGELOG.md | 3 +++ maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6625d46e2d..6dfe903a34 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.18.0 (2026-07-21) +- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) + ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index eadb42fa43..5c3bfc090d 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.16.0" +ARG BUILD_UPSTREAM="3.18.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index 65d02cfd17..c4c1154fea 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.16.0" +version: "3.18.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index fd48a580bc..3344365d61 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.16.0" + "upstream_version": "3.18.0" } From 401fc7bf61bf7a4a90b669e3c99729aa69f24a30 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:27 +0000 Subject: [PATCH 423/538] Revert "Updater bot : maintainerr updated to 3.18.0" This reverts commit 8ec8777b006360c5f171c612400fa3f06bd9ad89. --- maintainerr/CHANGELOG.md | 3 --- maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6dfe903a34..6625d46e2d 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.18.0 (2026-07-21) -- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) - ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index 5c3bfc090d..eadb42fa43 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.18.0" +ARG BUILD_UPSTREAM="3.16.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index c4c1154fea..65d02cfd17 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.18.0" +version: "3.16.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index 3344365d61..fd48a580bc 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.18.0" + "upstream_version": "3.16.0" } From 0b3e68027639f475432fc479506dcbb231eac621 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:27 +0000 Subject: [PATCH 424/538] Revert "Updater bot : linkwarden updated to 2.15.1" This reverts commit 8ee8e5fde749f48c2e55f3535c50794968e90226. --- linkwarden/CHANGELOG.md | 3 --- linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 10f0ae9bd2..90b6ee06ff 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 2.15.1 (2026-07-21) -- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index b1d3213f17..33fb3c849d 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.15.1" +version: "2.14.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index b26bd0224a..18d72d7a97 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-21", + "last_update": "2026-04-23", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.15.1" + "upstream_version": "2.14.1" } From f9e33e5e52de4458ff0d21893d3017eb846ed204 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:27 +0000 Subject: [PATCH 425/538] Revert "Updater bot : jackett updated to 0.24.2251" This reverts commit b104c24a9913aea2c228ed04048c0eff55a276b3. --- jackett/CHANGELOG.md | 3 --- jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index 62ff96f9c3..fdcaa4afa4 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,7 +1,4 @@ -## 0.24.2251 (2026-07-21) -- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) - ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index 1d1a122d72..c393744967 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2251" +version: "0.24.2166" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0984536a61..0a816abd2c 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2251" + "upstream_version": "0.24.2166" } From ab6073d44ccc22a4488a5480d60537af5e3810ce Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:27 +0000 Subject: [PATCH 426/538] Revert "Updater bot : immich_openvino updated to 3.0.3" This reverts commit 15499706aae32a89003aa8b40c2f3653d35c9cbd. --- immich_openvino/CHANGELOG.md | 3 --- immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index ccec6ff975..1b604106d2 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-21) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 30337862a9..52c6cd1a44 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 89110984cd..63ac0aca0a 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From 527c0c1427f93bc351bc5eec59fd6cccce7e1c51 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:27 +0000 Subject: [PATCH 427/538] Revert "Updater bot : immich_noml updated to 3.0.3" This reverts commit 2222394d041146bb9dc6a3f9d350ae03401613b3. --- immich_noml/CHANGELOG.md | 3 --- immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 81e41b4010..0c354e8271 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-21) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 9774a2f395..42ee4dc3dd 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 89110984cd..63ac0aca0a 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From bd8b5e979f7e5cdb8b5bd4519eb34f9bc09d822e Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:27 +0000 Subject: [PATCH 428/538] Revert "Updater bot : immich_frame updated to 1.0.37.0" This reverts commit 32ad0b03ae8696213cedeac517fc9f7382a17b44. --- immich_frame/CHANGELOG.md | 3 --- immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 2fe6e3059f..443763661a 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.0.37.0 (2026-07-21) -- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) - ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 2425d2bf8c..44a6fcb111 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.37.0" +version: "1.0.34.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index f14e4a5ff7..8408fb021e 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.37.0" + "upstream_version": "1.0.34.0" } From 84d9faa3a6aecbcfa6255e02ca4a450732eb8503 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 429/538] Revert "Updater bot : immich_cuda updated to 3.0.3" This reverts commit 189a30a512b7592602074b287def7c0072755ece. --- immich_cuda/CHANGELOG.md | 3 --- immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 8ec858a37f..95bec50a58 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-21) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index 73c96d22b4..b7c3dd3c48 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 89110984cd..63ac0aca0a 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From 2db831a9a1cde5761dd0154e3e2394f47c99870f Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 430/538] Revert "Updater bot : immich updated to 3.0.3" This reverts commit 8e8380192fbab1f5a7910546300f25cfe47eb021. --- immich/CHANGELOG.md | 3 --- immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index 045648f295..a8ab336381 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-21) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 66e32162ab..4537b0473b 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 89110984cd..63ac0aca0a 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From db4c67b79b542c01a42a439f5c917c70202445ca Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 431/538] Revert "Updater bot : grav updated to 2.0.12" This reverts commit 60cc5e29359314997904d4c72d5fdacc8d5e61c5. --- grav/CHANGELOG.md | 3 --- grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 61594a4aa4..06165ba207 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.0.12 (2026-07-21) -- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) - ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 2e447168ba..0894d6e150 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.12" +ARG BUILD_UPSTREAM="2.0.6" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 414dd0e14c..540412f15c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.12" +version: "2.0.6" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index e0c78be707..3936e662ab 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.12" + "upstream_version": "2.0.6" } From 611470f1abc74b1a4db289b9e0c898f0d4fa1202 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 432/538] Revert "Updater bot : grampsweb updated to 26.7.0" This reverts commit 63ae40d75d830a60cc858edd63093a580f71ef44. --- grampsweb/CHANGELOG.md | 3 --- grampsweb/config.yaml | 2 +- grampsweb/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/grampsweb/CHANGELOG.md b/grampsweb/CHANGELOG.md index f0f27fba60..fb9d6f51c0 100644 --- a/grampsweb/CHANGELOG.md +++ b/grampsweb/CHANGELOG.md @@ -1,7 +1,4 @@ -## 26.7.0 (2026-07-21) -- Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) - ## 26.6.2 (2026-06-23) - Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) diff --git a/grampsweb/config.yaml b/grampsweb/config.yaml index 75e192f998..0f584f8f67 100644 --- a/grampsweb/config.yaml +++ b/grampsweb/config.yaml @@ -115,5 +115,5 @@ services: slug: grampsweb tmpfs: true url: https://github.com/alexbelgium/hassio-addons/tree/master/grampsweb -version: "26.7.0" +version: "26.6.2" webui: "[PROTO:ssl]://[HOST]:[PORT:5001]" diff --git a/grampsweb/updater.json b/grampsweb/updater.json index 2337abef82..c044716d49 100644 --- a/grampsweb/updater.json +++ b/grampsweb/updater.json @@ -1,9 +1,9 @@ { "github_beta": true, - "last_update": "2026-07-21", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "grampsweb", "source": "github", "upstream_repo": "gramps-project/gramps-web", - "upstream_version": "26.7.0" + "upstream_version": "26.6.2" } From 635ea4e08af5f51710ab350514036c071e6d89e4 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 433/538] Revert "Updater bot : gitea updated to 1.27.0" This reverts commit 4b6a44cb5b09a1b0231a3a4e2b2f2f0f1993be97. --- gitea/CHANGELOG.md | 3 --- gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index dad9180f95..a807064de8 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 1.27.0 (2026-07-21) -- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index 9230114be6..cad067b70c 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27.0" +version: "1.27" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index 9391b5fd61..a8e3aeb675 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-21", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.27.0" + "upstream_version": "1.26.4" } From 787ad08fd0c7773037d56c257d896dad34fa3dff Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 434/538] Revert "Updater bot : flexget updated to 3.19.28" This reverts commit 68be5306a3540750f20baa59d668d54779c32453. --- flexget/CHANGELOG.md | 3 --- flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index a6c1890ca4..fb73412a31 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.19.28 (2026-07-21) -- Update to latest version from wiserain/flexget - ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index 21668cddd3..ad1b7f6538 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.28" +version: "3.19.26" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index b7a34839e9..82ed3e79df 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.28" + "upstream_version": "3.19.26" } From e6afaaeaacc9686eba6535a83e04a6adc0178715 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 435/538] Revert "Updater bot : epicgamesfree updated to debian-2026-07-20" This reverts commit 0f36179992cade3b85b98f053163009709b3fbdd. --- epicgamesfree/CHANGELOG.md | 3 --- epicgamesfree/config.yaml | 2 +- epicgamesfree/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/epicgamesfree/CHANGELOG.md b/epicgamesfree/CHANGELOG.md index 9825af5a24..1c9370574d 100644 --- a/epicgamesfree/CHANGELOG.md +++ b/epicgamesfree/CHANGELOG.md @@ -1,7 +1,4 @@ -## debian-2026-07-20 (2026-07-20) -- Update to latest version from charlocharlie/epicgames-freegames - ## debian-2026-06-21 (2026-06-21) - Update to latest version from charlocharlie/epicgames-freegames ## debian-2026-06-05 (2026-06-05) diff --git a/epicgamesfree/config.yaml b/epicgamesfree/config.yaml index 9d029c2b70..2f0895db8a 100644 --- a/epicgamesfree/config.yaml +++ b/epicgamesfree/config.yaml @@ -88,5 +88,5 @@ schema: slug: epicgamesfree udev: true url: https://github.com/alexbelgium/hassio-addons -version: "debian-2026-07-20" +version: "debian-2026-06-21" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/epicgamesfree/updater.json b/epicgamesfree/updater.json index 0004045ee0..cdaf0738e7 100644 --- a/epicgamesfree/updater.json +++ b/epicgamesfree/updater.json @@ -2,10 +2,10 @@ "dockerhub_by_date": true, "dockerhub_list_size": 2, "github_exclude": "-", - "last_update": "2026-07-20", + "last_update": "2026-06-21", "repository": "alexbelgium/hassio-addons", "slug": "epicgamesfree", "source": "dockerhub", "upstream_repo": "charlocharlie/epicgames-freegames", - "upstream_version": "debian-2026-07-20" + "upstream_version": "debian-2026-06-21" } From b39e9b04ae6faf0906ef53ec7c4b30954673fac4 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 436/538] Revert "Updater bot : ente updated to 4.4.24" This reverts commit c1bbdaf517caea5fb37e7f745de952b2a5815469. --- ente/CHANGELOG.md | 3 --- ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index e539d2ba51..15c481b126 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.4.24 (2026-07-21) -- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) - ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 5bd0afb53e..72d2fc618c 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.24" +version: "4.4.23" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index a6a64d090c..d8d8dd2093 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-21", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.24" + "upstream_version": "4.4.23" } From c67333f2ecada27126343bd82c26b46d7e320cd3 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:25:28 +0000 Subject: [PATCH 437/538] Revert "Updater bot : elasticsearch updated to 8.19.19" This reverts commit 755b14f9348a6735cb5d6b228cfba26b8bd523c5. --- elasticsearch/CHANGELOG.md | 3 --- elasticsearch/Dockerfile | 2 +- elasticsearch/config.yaml | 2 +- elasticsearch/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 357f4ddba4..67063f0cb5 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 8.19.19 (2026-07-21) -- Update to latest version from elastic/elasticsearch (changelog : https://github.com/elastic/elasticsearch/releases) ## 8.19.18-3 (14-07-2026) - Force a fresh image pull for users left on a stale cached image (some upgrades kept running the old Elasticsearch 7.17.9 image, failing with `mv: cannot move '/data/config' ... Permission denied` and `AccessDeniedException[/usr/share/elasticsearch/data/nodes/0]`). Fully stop and update the add-on so Home Assistant pulls this build. - Replaced the cryptic `Permission denied` failure with a clear message when the add-on is not running as root (the state that caused the failure above). diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index bf2cb19344..b5e7117821 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -14,7 +14,7 @@ # 1 Build Image # ################# -ARG BUILD_UPSTREAM="8.19.19" +ARG BUILD_UPSTREAM="8.19.18" FROM elasticsearch:$BUILD_UPSTREAM # The base image ends as USER 1000:0 with a root-owned, read-only (0555) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index f6d7da49f0..dba4ca188e 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: "8.19.19" +version: 8.19.18-3 diff --git a/elasticsearch/updater.json b/elasticsearch/updater.json index 32045df259..fdaf54d409 100644 --- a/elasticsearch/updater.json +++ b/elasticsearch/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": false, "github_tagfilter": "v8.19", - "last_update": "2026-07-21", + "last_update": "14-07-2026", "repository": "alexbelgium/hassio-addons", "slug": "elasticsearch", "source": "github", "upstream_repo": "elastic/elasticsearch", - "upstream_version": "8.19.19" + "upstream_version": "8.19.18" } From de5e80b8a447e90830d6df2382b0b3ec3ba45d05 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:26:16 +0200 Subject: [PATCH 438/538] Updater bot : prowlarr updated to nightly-2.5.2.5485-ls8 --- prowlarr/CHANGELOG.md | 3 +++ prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index aea1dfaf15..46b743fe79 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## nightly-2.5.2.5485-ls8 (2026-07-21) +- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) + ## nightly-2.5.1.5478-ls7 (2026-07-18) - Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index b43239ffd8..6d07b592f9 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "nightly-2.5.1.5478-ls7" +version: "nightly-2.5.2.5485-ls8" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 3d3aa99a7f..11f76bf26b 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-18", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "nightly-2.5.1.5478-ls7" + "upstream_version": "nightly-2.5.2.5485-ls8" } From 670d6dfcb3eafcbd807059e3c23da15da91a9cdb Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 439/538] Revert "Updater bot : prowlarr updated to nightly-2.5.2.5485-ls8" This reverts commit de5e80b8a447e90830d6df2382b0b3ec3ba45d05. --- prowlarr/CHANGELOG.md | 3 --- prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index 46b743fe79..aea1dfaf15 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,7 +1,4 @@ -## nightly-2.5.2.5485-ls8 (2026-07-21) -- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) - ## nightly-2.5.1.5478-ls7 (2026-07-18) - Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index 6d07b592f9..b43239ffd8 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "nightly-2.5.2.5485-ls8" +version: "nightly-2.5.1.5478-ls7" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 11f76bf26b..3d3aa99a7f 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-21", + "last_update": "2026-07-18", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "nightly-2.5.2.5485-ls8" + "upstream_version": "nightly-2.5.1.5478-ls7" } From 155ac0999dfe833633842034d38721fdedeab24f Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 440/538] Reapply "Updater bot : elasticsearch updated to 8.19.19" This reverts commit c67333f2ecada27126343bd82c26b46d7e320cd3. --- elasticsearch/CHANGELOG.md | 3 +++ elasticsearch/Dockerfile | 2 +- elasticsearch/config.yaml | 2 +- elasticsearch/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 67063f0cb5..357f4ddba4 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 8.19.19 (2026-07-21) +- Update to latest version from elastic/elasticsearch (changelog : https://github.com/elastic/elasticsearch/releases) ## 8.19.18-3 (14-07-2026) - Force a fresh image pull for users left on a stale cached image (some upgrades kept running the old Elasticsearch 7.17.9 image, failing with `mv: cannot move '/data/config' ... Permission denied` and `AccessDeniedException[/usr/share/elasticsearch/data/nodes/0]`). Fully stop and update the add-on so Home Assistant pulls this build. - Replaced the cryptic `Permission denied` failure with a clear message when the add-on is not running as root (the state that caused the failure above). diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index b5e7117821..bf2cb19344 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -14,7 +14,7 @@ # 1 Build Image # ################# -ARG BUILD_UPSTREAM="8.19.18" +ARG BUILD_UPSTREAM="8.19.19" FROM elasticsearch:$BUILD_UPSTREAM # The base image ends as USER 1000:0 with a root-owned, read-only (0555) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index dba4ca188e..f6d7da49f0 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: 8.19.18-3 +version: "8.19.19" diff --git a/elasticsearch/updater.json b/elasticsearch/updater.json index fdaf54d409..32045df259 100644 --- a/elasticsearch/updater.json +++ b/elasticsearch/updater.json @@ -1,10 +1,10 @@ { "github_fulltag": false, "github_tagfilter": "v8.19", - "last_update": "14-07-2026", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "elasticsearch", "source": "github", "upstream_repo": "elastic/elasticsearch", - "upstream_version": "8.19.18" + "upstream_version": "8.19.19" } From 6df2a5a1243be5a55a4e32c515f2346aa3fa9c7e Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 441/538] Reapply "Updater bot : ente updated to 4.4.24" This reverts commit b39e9b04ae6faf0906ef53ec7c4b30954673fac4. --- ente/CHANGELOG.md | 3 +++ ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 15c481b126..e539d2ba51 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.4.24 (2026-07-21) +- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) + ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 72d2fc618c..5bd0afb53e 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.23" +version: "4.4.24" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index d8d8dd2093..a6a64d090c 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-06-11", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.23" + "upstream_version": "4.4.24" } From 13594491d8dd2e92e185d7ff99540dba94b2cf84 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 442/538] Reapply "Updater bot : epicgamesfree updated to debian-2026-07-20" This reverts commit e6afaaeaacc9686eba6535a83e04a6adc0178715. --- epicgamesfree/CHANGELOG.md | 3 +++ epicgamesfree/config.yaml | 2 +- epicgamesfree/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/epicgamesfree/CHANGELOG.md b/epicgamesfree/CHANGELOG.md index 1c9370574d..9825af5a24 100644 --- a/epicgamesfree/CHANGELOG.md +++ b/epicgamesfree/CHANGELOG.md @@ -1,4 +1,7 @@ +## debian-2026-07-20 (2026-07-20) +- Update to latest version from charlocharlie/epicgames-freegames + ## debian-2026-06-21 (2026-06-21) - Update to latest version from charlocharlie/epicgames-freegames ## debian-2026-06-05 (2026-06-05) diff --git a/epicgamesfree/config.yaml b/epicgamesfree/config.yaml index 2f0895db8a..9d029c2b70 100644 --- a/epicgamesfree/config.yaml +++ b/epicgamesfree/config.yaml @@ -88,5 +88,5 @@ schema: slug: epicgamesfree udev: true url: https://github.com/alexbelgium/hassio-addons -version: "debian-2026-06-21" +version: "debian-2026-07-20" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/epicgamesfree/updater.json b/epicgamesfree/updater.json index cdaf0738e7..0004045ee0 100644 --- a/epicgamesfree/updater.json +++ b/epicgamesfree/updater.json @@ -2,10 +2,10 @@ "dockerhub_by_date": true, "dockerhub_list_size": 2, "github_exclude": "-", - "last_update": "2026-06-21", + "last_update": "2026-07-20", "repository": "alexbelgium/hassio-addons", "slug": "epicgamesfree", "source": "dockerhub", "upstream_repo": "charlocharlie/epicgames-freegames", - "upstream_version": "debian-2026-06-21" + "upstream_version": "debian-2026-07-20" } From af42a2cc60805fa2a9b0e4cb3c0de873b726e6f3 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 443/538] Reapply "Updater bot : flexget updated to 3.19.28" This reverts commit 787ad08fd0c7773037d56c257d896dad34fa3dff. --- flexget/CHANGELOG.md | 3 +++ flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index fb73412a31..a6c1890ca4 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.19.28 (2026-07-21) +- Update to latest version from wiserain/flexget + ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index ad1b7f6538..21668cddd3 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.26" +version: "3.19.28" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 82ed3e79df..b7a34839e9 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.26" + "upstream_version": "3.19.28" } From d93dd0a0a51291223283866bed9f12be59ec77a5 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 444/538] Reapply "Updater bot : gitea updated to 1.27.0" This reverts commit 635ea4e08af5f51710ab350514036c071e6d89e4. --- gitea/CHANGELOG.md | 3 +++ gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index a807064de8..dad9180f95 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.27.0 (2026-07-21) +- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index cad067b70c..9230114be6 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27" +version: "1.27.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index a8e3aeb675..9391b5fd61 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-23", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.26.4" + "upstream_version": "1.27.0" } From 6eb53e0c58e01007a40771ec661537305163885e Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 445/538] Reapply "Updater bot : grampsweb updated to 26.7.0" This reverts commit 611470f1abc74b1a4db289b9e0c898f0d4fa1202. --- grampsweb/CHANGELOG.md | 3 +++ grampsweb/config.yaml | 2 +- grampsweb/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/grampsweb/CHANGELOG.md b/grampsweb/CHANGELOG.md index fb9d6f51c0..f0f27fba60 100644 --- a/grampsweb/CHANGELOG.md +++ b/grampsweb/CHANGELOG.md @@ -1,4 +1,7 @@ +## 26.7.0 (2026-07-21) +- Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) + ## 26.6.2 (2026-06-23) - Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) diff --git a/grampsweb/config.yaml b/grampsweb/config.yaml index 0f584f8f67..75e192f998 100644 --- a/grampsweb/config.yaml +++ b/grampsweb/config.yaml @@ -115,5 +115,5 @@ services: slug: grampsweb tmpfs: true url: https://github.com/alexbelgium/hassio-addons/tree/master/grampsweb -version: "26.6.2" +version: "26.7.0" webui: "[PROTO:ssl]://[HOST]:[PORT:5001]" diff --git a/grampsweb/updater.json b/grampsweb/updater.json index c044716d49..2337abef82 100644 --- a/grampsweb/updater.json +++ b/grampsweb/updater.json @@ -1,9 +1,9 @@ { "github_beta": true, - "last_update": "2026-06-23", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "grampsweb", "source": "github", "upstream_repo": "gramps-project/gramps-web", - "upstream_version": "26.6.2" + "upstream_version": "26.7.0" } From abeccd48a6e7771bfda9add18b77f5b511f3f778 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 446/538] Reapply "Updater bot : grav updated to 2.0.12" This reverts commit db4c67b79b542c01a42a439f5c917c70202445ca. --- grav/CHANGELOG.md | 3 +++ grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 06165ba207..61594a4aa4 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.12 (2026-07-21) +- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) + ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 0894d6e150..2e447168ba 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.6" +ARG BUILD_UPSTREAM="2.0.12" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 540412f15c..414dd0e14c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.6" +version: "2.0.12" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 3936e662ab..e0c78be707 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.6" + "upstream_version": "2.0.12" } From 11210a0a4cd2708857758ab722de201eb9788d51 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 447/538] Reapply "Updater bot : immich updated to 3.0.3" This reverts commit 2db831a9a1cde5761dd0154e3e2394f47c99870f. --- immich/CHANGELOG.md | 3 +++ immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index a8ab336381..045648f295 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-21) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 4537b0473b..66e32162ab 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 63ac0aca0a..89110984cd 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 41f5fdac9b1470f71bdb8b59e4b9cb6b0c321342 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 448/538] Reapply "Updater bot : immich_cuda updated to 3.0.3" This reverts commit 84d9faa3a6aecbcfa6255e02ca4a450732eb8503. --- immich_cuda/CHANGELOG.md | 3 +++ immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 95bec50a58..8ec858a37f 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-21) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index b7c3dd3c48..73c96d22b4 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 63ac0aca0a..89110984cd 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From e2fa3373b34b01bc437e70aa35e31c1aeed28e58 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 449/538] Reapply "Updater bot : immich_frame updated to 1.0.37.0" This reverts commit bd8b5e979f7e5cdb8b5bd4519eb34f9bc09d822e. --- immich_frame/CHANGELOG.md | 3 +++ immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 443763661a..2fe6e3059f 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.0.37.0 (2026-07-21) +- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) + ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 44a6fcb111..2425d2bf8c 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.34.0" +version: "1.0.37.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 8408fb021e..f14e4a5ff7 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.34.0" + "upstream_version": "1.0.37.0" } From a66c4f27ee8b800c8d1bc93df9abc158d4581c78 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 450/538] Reapply "Updater bot : immich_noml updated to 3.0.3" This reverts commit 527c0c1427f93bc351bc5eec59fd6cccce7e1c51. --- immich_noml/CHANGELOG.md | 3 +++ immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 0c354e8271..81e41b4010 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-21) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 42ee4dc3dd..9774a2f395 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 63ac0aca0a..89110984cd 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 8ed67f15a9fbfef70646b4241866f78dc605f0f4 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 451/538] Reapply "Updater bot : immich_openvino updated to 3.0.3" This reverts commit ab6073d44ccc22a4488a5480d60537af5e3810ce. --- immich_openvino/CHANGELOG.md | 3 +++ immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 1b604106d2..ccec6ff975 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-21) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 52c6cd1a44..30337862a9 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 63ac0aca0a..89110984cd 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 538f37d2028b5f43b8fcd9bb76fb8771fbc0e096 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 452/538] Reapply "Updater bot : jackett updated to 0.24.2251" This reverts commit f9e33e5e52de4458ff0d21893d3017eb846ed204. --- jackett/CHANGELOG.md | 3 +++ jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index fdcaa4afa4..62ff96f9c3 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.24.2251 (2026-07-21) +- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) + ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index c393744967..1d1a122d72 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2166" +version: "0.24.2251" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0a816abd2c..0984536a61 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2166" + "upstream_version": "0.24.2251" } From 125187a88d56eb85148d6682675942623e421289 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 453/538] Reapply "Updater bot : linkwarden updated to 2.15.1" This reverts commit 0b3e68027639f475432fc479506dcbb231eac621. --- linkwarden/CHANGELOG.md | 3 +++ linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 90b6ee06ff..10f0ae9bd2 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 2.15.1 (2026-07-21) +- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index 33fb3c849d..b1d3213f17 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.14.1" +version: "2.15.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 18d72d7a97..b26bd0224a 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-04-23", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.14.1" + "upstream_version": "2.15.1" } From a5f980daa72908a9d9bd7d7fb806ecd5b44ac2c8 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 454/538] Reapply "Updater bot : maintainerr updated to 3.18.0" This reverts commit 401fc7bf61bf7a4a90b669e3c99729aa69f24a30. --- maintainerr/CHANGELOG.md | 3 +++ maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6625d46e2d..6dfe903a34 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.18.0 (2026-07-21) +- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) + ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index eadb42fa43..5c3bfc090d 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.16.0" +ARG BUILD_UPSTREAM="3.18.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index 65d02cfd17..c4c1154fea 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.16.0" +version: "3.18.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index fd48a580bc..3344365d61 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.16.0" + "upstream_version": "3.18.0" } From d54b435187631e93170203603bbcc98d9a1bb3e3 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 455/538] Revert "Updater bot : maintainerr updated to 3.18.0" This reverts commit 8ec8777b006360c5f171c612400fa3f06bd9ad89. --- maintainerr/CHANGELOG.md | 3 --- maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6dfe903a34..6625d46e2d 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.18.0 (2026-07-21) -- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) - ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index 5c3bfc090d..eadb42fa43 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.18.0" +ARG BUILD_UPSTREAM="3.16.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index c4c1154fea..65d02cfd17 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.18.0" +version: "3.16.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index 3344365d61..fd48a580bc 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.18.0" + "upstream_version": "3.16.0" } From 460edaf632dd66a370e456e8546b796a308dce2c Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 456/538] Revert "Updater bot : linkwarden updated to 2.15.1" This reverts commit 8ee8e5fde749f48c2e55f3535c50794968e90226. --- linkwarden/CHANGELOG.md | 3 --- linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 10f0ae9bd2..90b6ee06ff 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 2.15.1 (2026-07-21) -- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index b1d3213f17..33fb3c849d 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.15.1" +version: "2.14.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index b26bd0224a..18d72d7a97 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-21", + "last_update": "2026-04-23", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.15.1" + "upstream_version": "2.14.1" } From 5a4cb28f969cc1be9f08d4bf21ca1892a407884a Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 457/538] Revert "Updater bot : jackett updated to 0.24.2251" This reverts commit b104c24a9913aea2c228ed04048c0eff55a276b3. --- jackett/CHANGELOG.md | 3 --- jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index 62ff96f9c3..fdcaa4afa4 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,7 +1,4 @@ -## 0.24.2251 (2026-07-21) -- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) - ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index 1d1a122d72..c393744967 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2251" +version: "0.24.2166" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0984536a61..0a816abd2c 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2251" + "upstream_version": "0.24.2166" } From 4bba904a038bad73636caff9a733e511effc95da Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 458/538] Revert "Updater bot : immich_openvino updated to 3.0.3" This reverts commit 15499706aae32a89003aa8b40c2f3653d35c9cbd. --- immich_openvino/CHANGELOG.md | 3 --- immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index ccec6ff975..1b604106d2 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-21) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 30337862a9..52c6cd1a44 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 89110984cd..63ac0aca0a 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From c64b4db1a6a1f7e85b537fb94c08a82e834d8ec8 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 459/538] Revert "Updater bot : immich_noml updated to 3.0.3" This reverts commit 2222394d041146bb9dc6a3f9d350ae03401613b3. --- immich_noml/CHANGELOG.md | 3 --- immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 81e41b4010..0c354e8271 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-21) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 9774a2f395..42ee4dc3dd 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 89110984cd..63ac0aca0a 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From bebc8590111d729613b258375f2f98923d6b56fd Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 460/538] Revert "Updater bot : immich_frame updated to 1.0.37.0" This reverts commit 32ad0b03ae8696213cedeac517fc9f7382a17b44. --- immich_frame/CHANGELOG.md | 3 --- immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 2fe6e3059f..443763661a 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.0.37.0 (2026-07-21) -- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) - ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 2425d2bf8c..44a6fcb111 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.37.0" +version: "1.0.34.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index f14e4a5ff7..8408fb021e 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.37.0" + "upstream_version": "1.0.34.0" } From 00ff654c43f4f5aa87d2e8cb5e04483724b32a2e Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 461/538] Revert "Updater bot : immich_cuda updated to 3.0.3" This reverts commit 189a30a512b7592602074b287def7c0072755ece. --- immich_cuda/CHANGELOG.md | 3 --- immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 8ec858a37f..95bec50a58 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-21) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index 73c96d22b4..b7c3dd3c48 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 89110984cd..63ac0aca0a 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From 26d854e5b195a20525a2953dd4754da2164cc3d3 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 462/538] Revert "Updater bot : immich updated to 3.0.3" This reverts commit 8e8380192fbab1f5a7910546300f25cfe47eb021. --- immich/CHANGELOG.md | 3 --- immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index 045648f295..a8ab336381 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-21) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 66e32162ab..4537b0473b 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1-2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 89110984cd..63ac0aca0a 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From e38b06e60f6e9f68a81bead4c0f47b59e3e41864 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 463/538] Revert "Updater bot : grav updated to 2.0.12" This reverts commit 60cc5e29359314997904d4c72d5fdacc8d5e61c5. --- grav/CHANGELOG.md | 3 --- grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 61594a4aa4..06165ba207 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.0.12 (2026-07-21) -- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) - ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 2e447168ba..0894d6e150 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.12" +ARG BUILD_UPSTREAM="2.0.6" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 414dd0e14c..540412f15c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.12" +version: "2.0.6" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index e0c78be707..3936e662ab 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.12" + "upstream_version": "2.0.6" } From 8a6ded28eb0aa0c0726621e82faa8ef8ad7a0495 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 464/538] Revert "Updater bot : grampsweb updated to 26.7.0" This reverts commit 63ae40d75d830a60cc858edd63093a580f71ef44. --- grampsweb/CHANGELOG.md | 3 --- grampsweb/config.yaml | 2 +- grampsweb/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/grampsweb/CHANGELOG.md b/grampsweb/CHANGELOG.md index f0f27fba60..fb9d6f51c0 100644 --- a/grampsweb/CHANGELOG.md +++ b/grampsweb/CHANGELOG.md @@ -1,7 +1,4 @@ -## 26.7.0 (2026-07-21) -- Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) - ## 26.6.2 (2026-06-23) - Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) diff --git a/grampsweb/config.yaml b/grampsweb/config.yaml index 75e192f998..0f584f8f67 100644 --- a/grampsweb/config.yaml +++ b/grampsweb/config.yaml @@ -115,5 +115,5 @@ services: slug: grampsweb tmpfs: true url: https://github.com/alexbelgium/hassio-addons/tree/master/grampsweb -version: "26.7.0" +version: "26.6.2" webui: "[PROTO:ssl]://[HOST]:[PORT:5001]" diff --git a/grampsweb/updater.json b/grampsweb/updater.json index 2337abef82..c044716d49 100644 --- a/grampsweb/updater.json +++ b/grampsweb/updater.json @@ -1,9 +1,9 @@ { "github_beta": true, - "last_update": "2026-07-21", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "grampsweb", "source": "github", "upstream_repo": "gramps-project/gramps-web", - "upstream_version": "26.7.0" + "upstream_version": "26.6.2" } From 78b7df34ed4068d582c0d666cb7be54bf7c648e5 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 465/538] Revert "Updater bot : gitea updated to 1.27.0" This reverts commit 4b6a44cb5b09a1b0231a3a4e2b2f2f0f1993be97. --- gitea/CHANGELOG.md | 3 --- gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index dad9180f95..a807064de8 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 1.27.0 (2026-07-21) -- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index 9230114be6..cad067b70c 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27.0" +version: "1.27" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index 9391b5fd61..a8e3aeb675 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-21", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.27.0" + "upstream_version": "1.26.4" } From 40287c08262dd876787588ac3ae0e9d38c64f47a Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 466/538] Revert "Updater bot : flexget updated to 3.19.28" This reverts commit 68be5306a3540750f20baa59d668d54779c32453. --- flexget/CHANGELOG.md | 3 --- flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index a6c1890ca4..fb73412a31 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.19.28 (2026-07-21) -- Update to latest version from wiserain/flexget - ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index 21668cddd3..ad1b7f6538 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.28" +version: "3.19.26" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index b7a34839e9..82ed3e79df 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-21", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.28" + "upstream_version": "3.19.26" } From e9b5d84744022ea067e40ec6cacf970f775e391c Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 467/538] Revert "Updater bot : epicgamesfree updated to debian-2026-07-20" This reverts commit 0f36179992cade3b85b98f053163009709b3fbdd. --- epicgamesfree/CHANGELOG.md | 3 --- epicgamesfree/config.yaml | 2 +- epicgamesfree/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/epicgamesfree/CHANGELOG.md b/epicgamesfree/CHANGELOG.md index 9825af5a24..1c9370574d 100644 --- a/epicgamesfree/CHANGELOG.md +++ b/epicgamesfree/CHANGELOG.md @@ -1,7 +1,4 @@ -## debian-2026-07-20 (2026-07-20) -- Update to latest version from charlocharlie/epicgames-freegames - ## debian-2026-06-21 (2026-06-21) - Update to latest version from charlocharlie/epicgames-freegames ## debian-2026-06-05 (2026-06-05) diff --git a/epicgamesfree/config.yaml b/epicgamesfree/config.yaml index 9d029c2b70..2f0895db8a 100644 --- a/epicgamesfree/config.yaml +++ b/epicgamesfree/config.yaml @@ -88,5 +88,5 @@ schema: slug: epicgamesfree udev: true url: https://github.com/alexbelgium/hassio-addons -version: "debian-2026-07-20" +version: "debian-2026-06-21" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/epicgamesfree/updater.json b/epicgamesfree/updater.json index 0004045ee0..cdaf0738e7 100644 --- a/epicgamesfree/updater.json +++ b/epicgamesfree/updater.json @@ -2,10 +2,10 @@ "dockerhub_by_date": true, "dockerhub_list_size": 2, "github_exclude": "-", - "last_update": "2026-07-20", + "last_update": "2026-06-21", "repository": "alexbelgium/hassio-addons", "slug": "epicgamesfree", "source": "dockerhub", "upstream_repo": "charlocharlie/epicgames-freegames", - "upstream_version": "debian-2026-07-20" + "upstream_version": "debian-2026-06-21" } From 20cef149f3d0f743a918419e75f521ce5adbd1d5 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 21 Jul 2026 14:26:24 +0000 Subject: [PATCH 468/538] Revert "Updater bot : ente updated to 4.4.24" This reverts commit c1bbdaf517caea5fb37e7f745de952b2a5815469. --- ente/CHANGELOG.md | 3 --- ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index e539d2ba51..15c481b126 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.4.24 (2026-07-21) -- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) - ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 5bd0afb53e..72d2fc618c 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.24" +version: "4.4.23" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index a6a64d090c..d8d8dd2093 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-21", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.24" + "upstream_version": "4.4.23" } From c2e6176088087217d41a8ed1dd9f7e671a870684 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:27:22 +0200 Subject: [PATCH 469/538] Updater bot : tdarr updated to 2.84.01 --- tdarr/CHANGELOG.md | 3 +++ tdarr/config.yaml | 2 +- tdarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/tdarr/CHANGELOG.md b/tdarr/CHANGELOG.md index 64b29c394f..c9da2c735c 100644 --- a/tdarr/CHANGELOG.md +++ b/tdarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.84.01 (2026-07-21) +- Update to latest version from haveagitgat/tdarr + ## 2.83.01 (2026-07-13) - Update to latest version from haveagitgat/tdarr diff --git a/tdarr/config.yaml b/tdarr/config.yaml index 764082b757..ce1c1908ac 100644 --- a/tdarr/config.yaml +++ b/tdarr/config.yaml @@ -122,6 +122,6 @@ schema: slug: tdarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.83.01" +version: "2.84.01" video: true webui: "[PROTO:ssl]://[HOST]:[PORT:8265]" diff --git a/tdarr/updater.json b/tdarr/updater.json index 8759dafd1f..41a7d2d44a 100644 --- a/tdarr/updater.json +++ b/tdarr/updater.json @@ -1,9 +1,9 @@ { "github_exclude": "pro", - "last_update": "2026-07-13", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "tdarr", "source": "dockerhub", "upstream_repo": "haveagitgat/tdarr", - "upstream_version": "2.83.01" + "upstream_version": "2.84.01" } From 57366eeaccc0a876faadc007272bb45b36dde895 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 16:28:30 +0200 Subject: [PATCH 470/538] Updater bot : webtop_kde updated to 4.16-r0-ls93 --- webtop_kde/CHANGELOG.md | 3 +++ webtop_kde/Dockerfile | 4 ++-- webtop_kde/config.yaml | 2 +- webtop_kde/updater.json | 4 ++-- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/webtop_kde/CHANGELOG.md b/webtop_kde/CHANGELOG.md index 3b96ff95d9..67c3872032 100644 --- a/webtop_kde/CHANGELOG.md +++ b/webtop_kde/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.16-r0-ls93 (2026-07-21) +- Update to latest version from linuxserver/docker-webtop (changelog : https://github.com/linuxserver/docker-webtop/releases) + ## 4.16-r0-ls95 (2026-07-18) - Update to latest version from linuxserver/docker-webtop (changelog : https://github.com/linuxserver/docker-webtop/releases) diff --git a/webtop_kde/Dockerfile b/webtop_kde/Dockerfile index f87b69d85a..44d9fe3d20 100644 --- a/webtop_kde/Dockerfile +++ b/webtop_kde/Dockerfile @@ -2,11 +2,11 @@ # ALEXBELGIUM'S DOCKERFILE # #============================# # _.------. -# _.-` ('>.-`"4.16-r0-ls95""-. +# _.-` ('>.-`"4.16-r0-ls93""-. # '.--'` _'` _ .--.) # -' '-.-';` ` # ' - _.' ``'--. -# '---` .-'"4.16-r0-ls95"` +# '---` .-'"4.16-r0-ls93"` # /` #=== Home Assistant Addon ===# diff --git a/webtop_kde/config.yaml b/webtop_kde/config.yaml index 74d3cdd2ed..b1eda098e4 100644 --- a/webtop_kde/config.yaml +++ b/webtop_kde/config.yaml @@ -143,5 +143,5 @@ slug: webtop tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.16-r0-ls95" +version: "4.16-r0-ls93" video: true diff --git a/webtop_kde/updater.json b/webtop_kde/updater.json index 77e1416983..18724e0e41 100644 --- a/webtop_kde/updater.json +++ b/webtop_kde/updater.json @@ -1,9 +1,9 @@ { "github_fulltag": "true", - "last_update": "2026-07-18", + "last_update": "2026-07-21", "repository": "alexbelgium/hassio-addons", "slug": "webtop", "source": "github", "upstream_repo": "linuxserver/docker-webtop", - "upstream_version": "4.16-r0-ls95" + "upstream_version": "4.16-r0-ls93" } From bf173136f5c88f046a9a018336b5a86e9098bcdd Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 20:15:41 +0200 Subject: [PATCH 471/538] elasticsearch: build FROM docker.elastic.co instead of Docker Hub mirror The updater tracks elastic/elasticsearch GitHub tags and bumps as soon as a tag appears, but the build pulled `FROM elasticsearch:` (the Docker Hub `library/elasticsearch` mirror), whose arm64/aarch64 tag lags hours behind the release. This broke the aarch64 build right after "updated to 8.19.19" (and would recur on every release): docker.io/library/elasticsearch:8.19.19 had only linux/amd64 at build time, no arm64. Switch to Elastic's own registry, which publishes the multi-arch image atomically with the GitHub tag the updater watches. The image is otherwise identical (same User 1000:0, tini entrypoint, eswrapper cmd), so the entrypoint patch and uid handling are unchanged, and the updater's blanket version sed over the Dockerfile is unaffected. Co-Authored-By: Claude Opus 4.8 --- elasticsearch/Dockerfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index bf2cb19344..ccaee43a08 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -15,7 +15,11 @@ ################# ARG BUILD_UPSTREAM="8.19.19" -FROM elasticsearch:$BUILD_UPSTREAM +# Pull from Elastic's own registry (multi-arch, published atomically with the +# GitHub release the updater tracks) rather than the Docker Hub "library" +# mirror, whose arm64/aarch64 tag lags hours behind and breaks the aarch64 +# build right after an update (e.g. elasticsearch:8.19.19 arm64 missing). +FROM docker.elastic.co/elasticsearch/elasticsearch:$BUILD_UPSTREAM # The base image ends as USER 1000:0 with a root-owned, read-only (0555) # entrypoint; switch back to root for the remaining build steps (entrypoint From 5e6ab124263694699a9f9accad7088bf349217ee Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 21 Jul 2026 20:24:39 +0200 Subject: [PATCH 472/538] Update config.yaml --- elasticsearch/config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/elasticsearch/config.yaml b/elasticsearch/config.yaml index f6d7da49f0..742c01c9dd 100644 --- a/elasticsearch/config.yaml +++ b/elasticsearch/config.yaml @@ -1,7 +1,7 @@ arch: - aarch64 - amd64 -description: Free and Open, Distributed, RESTful Search Engine +description: "Free and Open, Distributed, RESTful Search Engine" devices: - /dev/dri - /dev/dri/card0 @@ -90,4 +90,4 @@ slug: elasticsearch startup: services udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/elasticsearch -version: "8.19.19" +version: "8.19.19.2" From 79dd7fabf69b56b7c313dda2eb1aa82b902a11a3 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 21 Jul 2026 18:29:26 +0000 Subject: [PATCH 473/538] GitHub bot: changelog [nobuild] --- elasticsearch/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/elasticsearch/CHANGELOG.md b/elasticsearch/CHANGELOG.md index 357f4ddba4..565a169610 100644 --- a/elasticsearch/CHANGELOG.md +++ b/elasticsearch/CHANGELOG.md @@ -1,3 +1,5 @@ +## 8.19.19.2 (21-07-2026) +- Minor bugs fixed ## 8.19.19 (2026-07-21) - Update to latest version from elastic/elasticsearch (changelog : https://github.com/elastic/elasticsearch/releases) From e6f6c95115cee777f768b2d88c184df15ed6d3ff Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 20:31:59 +0200 Subject: [PATCH 474/538] Fix manual-build versions: use .N suffix instead of -N Home Assistant (AwesomeVersion) no longer recognises the X.Y.Z-N manual-build nomenclature, so rebuild these with a .N suffix instead. Semver treats X.Y.Z-N as a pre-release (sorts below X.Y.Z); X.Y.Z.N sorts above, so each shows up as a proper upgrade. - manyfold 0.146.1-3 -> 0.146.1.3 - qbittorrent 5.2.3-1 -> 5.2.3.1 - birdnet-pi 2026.07.10-1 -> 2026.07.10.1 - birdnet-pi-zach 2026.07.10-2 -> 2026.07.10.2 - nginx_webserver_proxy 2.14.1-1 -> 2.14.1.1 - immich 3.0.1-2 -> 3.0.1.2 - immich_cuda 3.0.1-2 -> 3.0.1.2 - immich_noml 3.0.1-2 -> 3.0.1.2 - immich_openvino 3.0.1-2 -> 3.0.1.2 Co-Authored-By: Claude Opus 4.8 --- birdnet-pi-zach/config.yaml | 2 +- birdnet-pi/config.yaml | 2 +- immich/config.yaml | 2 +- immich_cuda/config.yaml | 2 +- immich_noml/config.yaml | 2 +- immich_openvino/config.yaml | 2 +- manyfold/config.yaml | 2 +- nginx_webserver_proxy/config.yaml | 2 +- qbittorrent/config.yaml | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/birdnet-pi-zach/config.yaml b/birdnet-pi-zach/config.yaml index af2a39a349..401f3cf952 100644 --- a/birdnet-pi-zach/config.yaml +++ b/birdnet-pi-zach/config.yaml @@ -116,5 +116,5 @@ tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-pi-zach usb: true -version: 2026.07.10-2 +version: 2026.07.10.2 video: true diff --git a/birdnet-pi/config.yaml b/birdnet-pi/config.yaml index d2db429e2f..e22baeb78d 100644 --- a/birdnet-pi/config.yaml +++ b/birdnet-pi/config.yaml @@ -116,5 +116,5 @@ tmpfs: true udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-pi usb: true -version: 2026.07.10-1 +version: 2026.07.10.1 video: true diff --git a/immich/config.yaml b/immich/config.yaml index 4537b0473b..b897493e67 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.1.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index b7c3dd3c48..d8fce0488c 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.1.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 42ee4dc3dd..5e9b59435b 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.1.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 52c6cd1a44..8dd3efd14e 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1-2" +version: "3.0.1.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/manyfold/config.yaml b/manyfold/config.yaml index e82953d4d9..a9a488faf4 100644 --- a/manyfold/config.yaml +++ b/manyfold/config.yaml @@ -1,7 +1,7 @@ name: "Manyfold" slug: manyfold description: "Manyfold 3D model manager as a Home Assistant add-on, using the upstream image with configurable library/index paths." -version: "0.146.1-3" +version: "0.146.1.3" url: "https://github.com/alexbelgium/hassio-addons/tree/master/manyfold" image: ghcr.io/alexbelgium/manyfold-{arch} arch: diff --git a/nginx_webserver_proxy/config.yaml b/nginx_webserver_proxy/config.yaml index 837fc41b74..63a55eea7a 100644 --- a/nginx_webserver_proxy/config.yaml +++ b/nginx_webserver_proxy/config.yaml @@ -1,7 +1,7 @@ name: "Nginx Proxy Manager + Static Web Server" slug: nginx_webserver_proxy description: "Nginx Proxy Manager with a built-in configurable static file server. Manage reverse proxies via NPM UI on port 81 while serving files from HA storage on port 80." -version: "2.14.1-1" +version: "2.14.1.1" url: "https://github.com/alexbelgium/hassio-addons/tree/master/nginx_webserver_proxy" arch: - amd64 diff --git a/qbittorrent/config.yaml b/qbittorrent/config.yaml index 3d81e0aa51..e9615361c2 100644 --- a/qbittorrent/config.yaml +++ b/qbittorrent/config.yaml @@ -143,4 +143,4 @@ schema: slug: qbittorrent udev: true url: https://github.com/alexbelgium/hassio-addons -version: "5.2.3-1" +version: "5.2.3.1" From 5668c1541880641ab2dde5d7b205bdba01c5c5eb Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 20:38:01 +0200 Subject: [PATCH 475/538] Fix PR Check Build workflow using empty github.event.before github.event.before is only populated on push events, but this workflow triggers on pull_request, where it's empty. This made every git diff call fail (fatal: ambiguous argument) and changed-addons resolve to [], so addon linting, build testing, and changelog checks were silently skipped on every PR regardless of what changed. Use github.event.pull_request.base.sha instead, which is always populated for pull_request-triggered runs. --- .github/workflows/onpr_check-pr.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/onpr_check-pr.yaml b/.github/workflows/onpr_check-pr.yaml index ecc6ee12fc..715cc1c1fa 100644 --- a/.github/workflows/onpr_check-pr.yaml +++ b/.github/workflows/onpr_check-pr.yaml @@ -22,8 +22,8 @@ jobs: - name: Find changed addon directories id: find_addons run: | - git fetch origin "${{ github.event.before }}" || true - changed_config_files=$(git diff --name-only "${{ github.event.before }}" "${{ github.sha }}" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) + git fetch origin "${{ github.event.pull_request.base.sha }}" || true + changed_config_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) echo "Changed config files:" echo "$changed_config_files" changed_addons=$(printf '%s' "$changed_config_files" | awk -F/ '{print $1}' | sort -u | jq -R -s -c 'split("\n") | map(select(length > 0))') @@ -32,11 +32,11 @@ jobs: - name: Find changelog id: changed-files run: | - git fetch origin "${{ github.event.before }}" || true - changed_changelog_files=$(git diff --name-only "${{ github.event.before }}" "${{ github.sha }}" | grep -iE '^([^/]+/)?changelog\.(md|txt|ya?ml|json)$' || true) + git fetch origin "${{ github.event.pull_request.base.sha }}" || true + changed_changelog_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}" | grep -iE '^([^/]+/)?changelog\.(md|txt|ya?ml|json)$' || true) echo "$changed_changelog_files" echo "changelogs_files=$changed_changelog_files" >> "$GITHUB_OUTPUT" - changed_config_files=$(git diff --name-only "${{ github.event.before }}" "${{ github.sha }}" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) + changed_config_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) echo "$changed_config_files" all_changed_files=$(echo -e "$changed_config_files\n$changed_changelog_files" | sort -u) changed_addons=$(printf '%s' "$all_changed_files" | awk -F/ '{print $1}' | sort -u | jq -R -s -c 'split("\n") | map(select(length > 0))') From 99fd75c0939bfc179c54b55494b71cdef03ea8e1 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 21 Jul 2026 21:23:14 +0200 Subject: [PATCH 476/538] Update config.yaml --- scrutiny/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scrutiny/config.yaml b/scrutiny/config.yaml index 24be896ff4..dbb414079e 100644 --- a/scrutiny/config.yaml +++ b/scrutiny/config.yaml @@ -113,4 +113,4 @@ schema: slug: scrutiny udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.67.0-8" +version: "v1.67.0.8" From 3597b0fafee7abdcbc986e9b0f6db4fdbfc522cc Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Tue, 21 Jul 2026 21:23:42 +0200 Subject: [PATCH 477/538] Update config.yaml --- scrutiny_fa/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scrutiny_fa/config.yaml b/scrutiny_fa/config.yaml index fe18b44ccf..8feb452402 100644 --- a/scrutiny_fa/config.yaml +++ b/scrutiny_fa/config.yaml @@ -45,4 +45,4 @@ schema: slug: scrutiny_fa udev: true url: https://github.com/Starosdev/scrutiny -version: "v1.67.0-8" +version: "v1.67.0.8" From f6a9ac209ac38ceec3f2f8382780f3e676f6c23b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 21:30:32 +0200 Subject: [PATCH 478/538] Address review feedback: fail loudly on real fetch/diff errors, fix multiline output - Stop masking git fetch/diff failures with a blanket `|| true`. That swallowed real errors (bad ref, network failure) into an empty changed_addons result, the same silent-skip failure mode this PR exists to fix. Capture the diff separately from the grep filter so `|| true` only covers grep's expected "no match" exit code, while fetch/diff failures now abort the job via the runner's default `set -eo pipefail`. - Write changelogs_files using the GITHUB_OUTPUT multiline delimiter syntax instead of a plain `key=value` echo. A PR touching more than one addon's CHANGELOG.md produced a value with embedded newlines, which corrupts the output file under the single-line format. Addresses review comments from coderabbitai and chatgpt-codex-connector on PR #2887. --- .github/workflows/onpr_check-pr.yaml | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/.github/workflows/onpr_check-pr.yaml b/.github/workflows/onpr_check-pr.yaml index 715cc1c1fa..86e409031a 100644 --- a/.github/workflows/onpr_check-pr.yaml +++ b/.github/workflows/onpr_check-pr.yaml @@ -22,8 +22,9 @@ jobs: - name: Find changed addon directories id: find_addons run: | - git fetch origin "${{ github.event.pull_request.base.sha }}" || true - changed_config_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) + git fetch origin "${{ github.event.pull_request.base.sha }}" + diff_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}") + changed_config_files=$(printf '%s\n' "$diff_files" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) echo "Changed config files:" echo "$changed_config_files" changed_addons=$(printf '%s' "$changed_config_files" | awk -F/ '{print $1}' | sort -u | jq -R -s -c 'split("\n") | map(select(length > 0))') @@ -32,11 +33,16 @@ jobs: - name: Find changelog id: changed-files run: | - git fetch origin "${{ github.event.pull_request.base.sha }}" || true - changed_changelog_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}" | grep -iE '^([^/]+/)?changelog\.(md|txt|ya?ml|json)$' || true) + git fetch origin "${{ github.event.pull_request.base.sha }}" + diff_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}") + changed_changelog_files=$(printf '%s\n' "$diff_files" | grep -iE '^([^/]+/)?changelog\.(md|txt|ya?ml|json)$' || true) echo "$changed_changelog_files" - echo "changelogs_files=$changed_changelog_files" >> "$GITHUB_OUTPUT" - changed_config_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) + { + echo "changelogs_files<> "$GITHUB_OUTPUT" + changed_config_files=$(printf '%s\n' "$diff_files" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) echo "$changed_config_files" all_changed_files=$(echo -e "$changed_config_files\n$changed_changelog_files" | sort -u) changed_addons=$(printf '%s' "$all_changed_files" | awk -F/ '{print $1}' | sort -u | jq -R -s -c 'split("\n") | map(select(length > 0))') From 01e54985736be8f8b1f07374c2e875d304c0b7ac Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 21:39:54 +0200 Subject: [PATCH 479/538] Derive base SHA from the merge commit's own parent, not the event snapshot MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit github.event.pull_request.base.sha is fixed at the time the triggering event fired. In a repo with frequent direct-to-master pushes, master can advance between that event and job checkout, while the actions/checkout merge commit (github.sha) is always built against the *current* master tip. Diffing the stale event SHA against the live merge commit picked up unrelated upstream commits — observed live on this PR: scrutiny and scrutiny_fa showed up as "changed" and failed their changelog check, even though this PR only touches the workflow file. HEAD^1 is the actual base the checked-out merge commit was built from (verified: parents are [live master tip, PR head]), so it can't go stale. --- .github/workflows/onpr_check-pr.yaml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/workflows/onpr_check-pr.yaml b/.github/workflows/onpr_check-pr.yaml index 86e409031a..bd4ab6a197 100644 --- a/.github/workflows/onpr_check-pr.yaml +++ b/.github/workflows/onpr_check-pr.yaml @@ -22,8 +22,12 @@ jobs: - name: Find changed addon directories id: find_addons run: | - git fetch origin "${{ github.event.pull_request.base.sha }}" - diff_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}") + # github.event.pull_request.base.sha is a snapshot from event-trigger time and can be + # stale if master advances before checkout; HEAD^1 is the actual base this merge + # commit was built against, so it's always correct. + base_sha=$(git rev-parse HEAD^1) + git fetch origin "$base_sha" + diff_files=$(git diff --name-only "$base_sha" "${{ github.sha }}") changed_config_files=$(printf '%s\n' "$diff_files" | grep -E '^[^/]+/config\.(json|ya?ml)$' || true) echo "Changed config files:" echo "$changed_config_files" @@ -33,8 +37,9 @@ jobs: - name: Find changelog id: changed-files run: | - git fetch origin "${{ github.event.pull_request.base.sha }}" - diff_files=$(git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}") + base_sha=$(git rev-parse HEAD^1) + git fetch origin "$base_sha" + diff_files=$(git diff --name-only "$base_sha" "${{ github.sha }}") changed_changelog_files=$(printf '%s\n' "$diff_files" | grep -iE '^([^/]+/)?changelog\.(md|txt|ya?ml|json)$' || true) echo "$changed_changelog_files" { From d9105b412869ed2cef41b849af5d2f8abbeb4faf Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Tue, 21 Jul 2026 21:41:33 +0200 Subject: [PATCH 480/538] Fix HEAD^1 resolution: fetch-depth 2 on check-addon-changes checkout Confirmed on the live run: a depth-1 (default) shallow checkout of the merge commit truncates parent refs at that boundary commit entirely, so git rev-parse HEAD^1 fails with "unknown revision" even though the merge commit itself is checked out fine. Bumping this job's checkout to fetch-depth: 2 pulls in both the merge commit and its two parents, making HEAD^1 resolvable with a real tree to diff against. --- .github/workflows/onpr_check-pr.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/onpr_check-pr.yaml b/.github/workflows/onpr_check-pr.yaml index bd4ab6a197..5dc7d84144 100644 --- a/.github/workflows/onpr_check-pr.yaml +++ b/.github/workflows/onpr_check-pr.yaml @@ -19,6 +19,10 @@ jobs: steps: - name: Checkout repo uses: actions/checkout@v7 + with: + # Need the merge commit's parents resolvable (HEAD^1 below): a depth-1 shallow + # checkout truncates parent refs entirely at the boundary commit. + fetch-depth: 2 - name: Find changed addon directories id: find_addons run: | From 0cf9fb37a5be446ce99ecf1e3414a54324cd3442 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 21 Jul 2026 20:06:21 +0000 Subject: [PATCH 481/538] Github bot : issues linked to readme --- zzz_archived_tor/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/zzz_archived_tor/README.md b/zzz_archived_tor/README.md index 4399373a5b..4d1318656c 100644 --- a/zzz_archived_tor/README.md +++ b/zzz_archived_tor/README.md @@ -1,3 +1,4 @@ +## ⚠ Open Request : [✨ [REQUEST] qbittorrent (opened 2025-10-11)](https://github.com/alexbelgium/hassio-addons/issues/2139) by [@nyok92](https://github.com/nyok92) ## ⚠ Open Request : [✨ [REQUEST] transmission, document where torrent files are stored (opened 2026-07-14)](https://github.com/alexbelgium/hassio-addons/issues/2852) by [@bilogic](https://github.com/bilogic) # Hass.io Add-ons: Tor with bridges From fd42cb222326a8dd648cda216e17f89e2e6b2833 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:24:59 +0200 Subject: [PATCH 482/538] Updater bot : aurral updated to 2.0.0 --- aurral/CHANGELOG.md | 3 +++ aurral/config.yaml | 2 +- aurral/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/aurral/CHANGELOG.md b/aurral/CHANGELOG.md index 486d8735fd..1cff928ce8 100644 --- a/aurral/CHANGELOG.md +++ b/aurral/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.0 (2026-07-22) +- Update to latest version from lklynet/aurral (changelog : https://github.com/lklynet/aurral/releases) + ## 1.76.52 (2026-07-11) - Update to latest version from lklynet/aurral (changelog : https://github.com/lklynet/aurral/releases) diff --git a/aurral/config.yaml b/aurral/config.yaml index 0dc46c4a67..5d24f23fb7 100644 --- a/aurral/config.yaml +++ b/aurral/config.yaml @@ -1,5 +1,5 @@ name: Aurral -version: "1.76.52" +version: "2.0.0" slug: aurral description: >- Self-hosted music discovery, request management, flows, and playlist diff --git a/aurral/updater.json b/aurral/updater.json index 959e163336..31649cfe82 100644 --- a/aurral/updater.json +++ b/aurral/updater.json @@ -1,9 +1,9 @@ { - "last_update": "2026-07-11", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "aurral", "source": "github", "upstream_repo": "lklynet/aurral", - "upstream_version": "1.76.52", + "upstream_version": "2.0.0", "github_beta": false } From 79a97e6a20ee1f7a673ddde46197d9e68c4bf3fc Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:27:26 +0200 Subject: [PATCH 483/538] Updater bot : ente updated to 4.4.24 --- ente/CHANGELOG.md | 3 +++ ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 15c481b126..35cedcfe28 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.4.24 (2026-07-22) +- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) + ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 72d2fc618c..5bd0afb53e 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.23" +version: "4.4.24" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index d8d8dd2093..f07fe1103f 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-06-11", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.23" + "upstream_version": "4.4.24" } From 0cfd94e9021fd22ff42209e98a8d059b2bed1350 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:27:29 +0200 Subject: [PATCH 484/538] Updater bot : epicgamesfree updated to debian-2026-07-20 --- epicgamesfree/CHANGELOG.md | 3 +++ epicgamesfree/config.yaml | 2 +- epicgamesfree/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/epicgamesfree/CHANGELOG.md b/epicgamesfree/CHANGELOG.md index 1c9370574d..9825af5a24 100644 --- a/epicgamesfree/CHANGELOG.md +++ b/epicgamesfree/CHANGELOG.md @@ -1,4 +1,7 @@ +## debian-2026-07-20 (2026-07-20) +- Update to latest version from charlocharlie/epicgames-freegames + ## debian-2026-06-21 (2026-06-21) - Update to latest version from charlocharlie/epicgames-freegames ## debian-2026-06-05 (2026-06-05) diff --git a/epicgamesfree/config.yaml b/epicgamesfree/config.yaml index 2f0895db8a..9d029c2b70 100644 --- a/epicgamesfree/config.yaml +++ b/epicgamesfree/config.yaml @@ -88,5 +88,5 @@ schema: slug: epicgamesfree udev: true url: https://github.com/alexbelgium/hassio-addons -version: "debian-2026-06-21" +version: "debian-2026-07-20" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/epicgamesfree/updater.json b/epicgamesfree/updater.json index cdaf0738e7..0004045ee0 100644 --- a/epicgamesfree/updater.json +++ b/epicgamesfree/updater.json @@ -2,10 +2,10 @@ "dockerhub_by_date": true, "dockerhub_list_size": 2, "github_exclude": "-", - "last_update": "2026-06-21", + "last_update": "2026-07-20", "repository": "alexbelgium/hassio-addons", "slug": "epicgamesfree", "source": "dockerhub", "upstream_repo": "charlocharlie/epicgames-freegames", - "upstream_version": "debian-2026-06-21" + "upstream_version": "debian-2026-07-20" } From 3fed178e6e7b3af7506d0200188724ff451603df Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:27:37 +0200 Subject: [PATCH 485/538] Updater bot : filebrowser_quantum updated to 1.5.0 --- filebrowser_quantum/CHANGELOG.md | 3 +++ filebrowser_quantum/config.yaml | 2 +- filebrowser_quantum/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/filebrowser_quantum/CHANGELOG.md b/filebrowser_quantum/CHANGELOG.md index f317278e6e..fedbbdea3f 100644 --- a/filebrowser_quantum/CHANGELOG.md +++ b/filebrowser_quantum/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.5.0 (2026-07-22) +- Update to latest version from gtsteffaniak/filebrowser (changelog : https://github.com/gtsteffaniak/filebrowser/releases) ## 1.4.0-2 (16-07-2026) - Minor bugs fixed diff --git a/filebrowser_quantum/config.yaml b/filebrowser_quantum/config.yaml index f47c41fb49..c258b71bf0 100644 --- a/filebrowser_quantum/config.yaml +++ b/filebrowser_quantum/config.yaml @@ -114,4 +114,4 @@ schema: slug: filebrowser_quantum udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.4.0.2" +version: "1.5.0" diff --git a/filebrowser_quantum/updater.json b/filebrowser_quantum/updater.json index bd98af7356..2f8fbdbeb6 100644 --- a/filebrowser_quantum/updater.json +++ b/filebrowser_quantum/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", - "last_update": "2026-06-20", + "last_update": "2026-07-22", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "filebrowser_quantum", "source": "github", "upstream_repo": "gtsteffaniak/filebrowser", - "upstream_version": "1.4.0" + "upstream_version": "1.5.0" } From 444a297ae905c54df654bff0033a13b64e241783 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:27:50 +0200 Subject: [PATCH 486/538] Updater bot : flexget updated to 3.19.28 --- flexget/CHANGELOG.md | 3 +++ flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index fb73412a31..d04d297eec 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.19.28 (2026-07-22) +- Update to latest version from wiserain/flexget + ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index ad1b7f6538..21668cddd3 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.26" +version: "3.19.28" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 82ed3e79df..8c6eb4d649 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.26" + "upstream_version": "3.19.28" } From 009236a2f054a8a23ddfacc14255ff2344b0885f Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:27:59 +0200 Subject: [PATCH 487/538] Updater bot : gitea updated to 1.27.0 --- gitea/CHANGELOG.md | 3 +++ gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index a807064de8..20909389b5 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.27.0 (2026-07-22) +- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index cad067b70c..9230114be6 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27" +version: "1.27.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index a8e3aeb675..cd2675da7d 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-23", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.26.4" + "upstream_version": "1.27.0" } From c75c75a9dace962da4c4e55374d3a2b378eea286 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:28:04 +0200 Subject: [PATCH 488/538] Updater bot : grampsweb updated to 26.7.0 --- grampsweb/CHANGELOG.md | 3 +++ grampsweb/config.yaml | 2 +- grampsweb/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/grampsweb/CHANGELOG.md b/grampsweb/CHANGELOG.md index fb9d6f51c0..7ef083f865 100644 --- a/grampsweb/CHANGELOG.md +++ b/grampsweb/CHANGELOG.md @@ -1,4 +1,7 @@ +## 26.7.0 (2026-07-22) +- Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) + ## 26.6.2 (2026-06-23) - Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) diff --git a/grampsweb/config.yaml b/grampsweb/config.yaml index 0f584f8f67..75e192f998 100644 --- a/grampsweb/config.yaml +++ b/grampsweb/config.yaml @@ -115,5 +115,5 @@ services: slug: grampsweb tmpfs: true url: https://github.com/alexbelgium/hassio-addons/tree/master/grampsweb -version: "26.6.2" +version: "26.7.0" webui: "[PROTO:ssl]://[HOST]:[PORT:5001]" diff --git a/grampsweb/updater.json b/grampsweb/updater.json index c044716d49..401acfe1ad 100644 --- a/grampsweb/updater.json +++ b/grampsweb/updater.json @@ -1,9 +1,9 @@ { "github_beta": true, - "last_update": "2026-06-23", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "grampsweb", "source": "github", "upstream_repo": "gramps-project/gramps-web", - "upstream_version": "26.6.2" + "upstream_version": "26.7.0" } From b1badb954e0720ac828e12deae2f16628506fa1b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:28:08 +0200 Subject: [PATCH 489/538] Updater bot : grav updated to 2.0.12 --- grav/CHANGELOG.md | 3 +++ grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 06165ba207..9c9e856154 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.12 (2026-07-22) +- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) + ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 0894d6e150..2e447168ba 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.6" +ARG BUILD_UPSTREAM="2.0.12" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 540412f15c..414dd0e14c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.6" +version: "2.0.12" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 3936e662ab..fa78f223f5 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.6" + "upstream_version": "2.0.12" } From 14ac8ed1d3e8d8861e8137322d27d6ed36b995ec Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:28:14 +0200 Subject: [PATCH 490/538] Updater bot : immich updated to 3.0.3 --- immich/CHANGELOG.md | 3 +++ immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index a8ab336381..e27ffc5b3c 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-22) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index b897493e67..66e32162ab 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1.2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 63ac0aca0a..3dcd6a2049 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 3db676c9f252ac03ea4c61153c539b0f9340c6e7 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:28:19 +0200 Subject: [PATCH 491/538] Updater bot : immich_cuda updated to 3.0.3 --- immich_cuda/CHANGELOG.md | 3 +++ immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 95bec50a58..b3523d3f80 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-22) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index d8fce0488c..73c96d22b4 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1.2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 63ac0aca0a..3dcd6a2049 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From a8d0008a023dfde99cc88188f77b34f7efb3d027 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:28:24 +0200 Subject: [PATCH 492/538] Updater bot : immich_frame updated to 1.0.37.0 --- immich_frame/CHANGELOG.md | 3 +++ immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 443763661a..fc75acc943 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.0.37.0 (2026-07-22) +- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) + ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 44a6fcb111..2425d2bf8c 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.34.0" +version: "1.0.37.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 8408fb021e..c7da995eea 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.34.0" + "upstream_version": "1.0.37.0" } From 5bc12e84d7afaba3d65c65df8cc2698876845e7e Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:28:28 +0200 Subject: [PATCH 493/538] Updater bot : immich_noml updated to 3.0.3 --- immich_noml/CHANGELOG.md | 3 +++ immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 0c354e8271..c6bd34ce93 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-22) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 5e9b59435b..9774a2f395 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1.2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 63ac0aca0a..3dcd6a2049 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From f67abda4b976cb250c1e11fa2e33b917a8f4ded3 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:28:33 +0200 Subject: [PATCH 494/538] Updater bot : immich_openvino updated to 3.0.3 --- immich_openvino/CHANGELOG.md | 3 +++ immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 1b604106d2..8d38f93f90 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-22) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 8dd3efd14e..30337862a9 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1.2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 63ac0aca0a..3dcd6a2049 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 1513d9606b5e16d235e77c6b34b7fb19f306fb9f Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:28:42 +0200 Subject: [PATCH 495/538] Updater bot : jackett updated to 0.24.2251 --- jackett/CHANGELOG.md | 3 +++ jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index fdcaa4afa4..0f4d8d07ce 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.24.2251 (2026-07-22) +- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) + ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index c393744967..1d1a122d72 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2166" +version: "0.24.2251" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0a816abd2c..b7ebdbfd32 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2166" + "upstream_version": "0.24.2251" } From 1be2a4874bc9d8620930896f905654930d1f58a7 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:29:04 +0200 Subject: [PATCH 496/538] Updater bot : linkwarden updated to 2.15.1 --- linkwarden/CHANGELOG.md | 3 +++ linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 90b6ee06ff..8084f1526b 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 2.15.1 (2026-07-22) +- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index 33fb3c849d..b1d3213f17 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.14.1" +version: "2.15.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 18d72d7a97..c4a9db1a5a 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-04-23", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.14.1" + "upstream_version": "2.15.1" } From 438db18af656b32689f1259721193682cba9522d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:29:08 +0200 Subject: [PATCH 497/538] Updater bot : maintainerr updated to 3.18.0 --- maintainerr/CHANGELOG.md | 3 +++ maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6625d46e2d..a2e0a54fc6 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.18.0 (2026-07-22) +- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) + ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index eadb42fa43..5c3bfc090d 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.16.0" +ARG BUILD_UPSTREAM="3.18.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index 65d02cfd17..c4c1154fea 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.16.0" +version: "3.18.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index fd48a580bc..0056ca8307 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.16.0" + "upstream_version": "3.18.0" } From 7731ee982a008738b4d37b4f11c9d51154527e1a Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:50 +0000 Subject: [PATCH 498/538] Revert "Updater bot : maintainerr updated to 3.18.0" This reverts commit 438db18af656b32689f1259721193682cba9522d. --- maintainerr/CHANGELOG.md | 3 --- maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index a2e0a54fc6..6625d46e2d 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.18.0 (2026-07-22) -- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) - ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index 5c3bfc090d..eadb42fa43 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.18.0" +ARG BUILD_UPSTREAM="3.16.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index c4c1154fea..65d02cfd17 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.18.0" +version: "3.16.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index 0056ca8307..fd48a580bc 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.18.0" + "upstream_version": "3.16.0" } From 07fe958a95295cbca77e8f60b95ab4b26cb78f88 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 499/538] Revert "Updater bot : linkwarden updated to 2.15.1" This reverts commit 1be2a4874bc9d8620930896f905654930d1f58a7. --- linkwarden/CHANGELOG.md | 3 --- linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 8084f1526b..90b6ee06ff 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 2.15.1 (2026-07-22) -- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index b1d3213f17..33fb3c849d 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.15.1" +version: "2.14.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index c4a9db1a5a..18d72d7a97 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-22", + "last_update": "2026-04-23", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.15.1" + "upstream_version": "2.14.1" } From 681c2a63414a8f938d51e2bfd8560320f70db5da Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 500/538] Revert "Updater bot : jackett updated to 0.24.2251" This reverts commit 1513d9606b5e16d235e77c6b34b7fb19f306fb9f. --- jackett/CHANGELOG.md | 3 --- jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index 0f4d8d07ce..fdcaa4afa4 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,7 +1,4 @@ -## 0.24.2251 (2026-07-22) -- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) - ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index 1d1a122d72..c393744967 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2251" +version: "0.24.2166" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index b7ebdbfd32..0a816abd2c 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2251" + "upstream_version": "0.24.2166" } From 00ea6920232ba8ab032ee33c386ce174aa38277c Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 501/538] Revert "Updater bot : immich_openvino updated to 3.0.3" This reverts commit f67abda4b976cb250c1e11fa2e33b917a8f4ded3. --- immich_openvino/CHANGELOG.md | 3 --- immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 8d38f93f90..1b604106d2 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-22) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 30337862a9..8dd3efd14e 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 3dcd6a2049..63ac0aca0a 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From e39546da9e373e7cdc9d0c8e279db3b7961494f3 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 502/538] Revert "Updater bot : immich_noml updated to 3.0.3" This reverts commit 5bc12e84d7afaba3d65c65df8cc2698876845e7e. --- immich_noml/CHANGELOG.md | 3 --- immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index c6bd34ce93..0c354e8271 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-22) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 9774a2f395..5e9b59435b 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 3dcd6a2049..63ac0aca0a 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From d98378b7db01ede195e1fef2c59efd159f3f6298 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 503/538] Revert "Updater bot : immich_frame updated to 1.0.37.0" This reverts commit a8d0008a023dfde99cc88188f77b34f7efb3d027. --- immich_frame/CHANGELOG.md | 3 --- immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index fc75acc943..443763661a 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,7 +1,4 @@ -## 1.0.37.0 (2026-07-22) -- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) - ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 2425d2bf8c..44a6fcb111 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.37.0" +version: "1.0.34.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index c7da995eea..8408fb021e 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.37.0" + "upstream_version": "1.0.34.0" } From e0a5f4a33d45e723eb547d67fb72ff0b83c6d5d4 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 504/538] Revert "Updater bot : immich_cuda updated to 3.0.3" This reverts commit 3db676c9f252ac03ea4c61153c539b0f9340c6e7. --- immich_cuda/CHANGELOG.md | 3 --- immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index b3523d3f80..95bec50a58 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-22) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index 73c96d22b4..d8fce0488c 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 3dcd6a2049..63ac0aca0a 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From 0363e3f56e38eef99f3a60b561f93af021d91e14 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 505/538] Revert "Updater bot : immich updated to 3.0.3" This reverts commit 14ac8ed1d3e8d8861e8137322d27d6ed36b995ec. --- immich/CHANGELOG.md | 3 --- immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index e27ffc5b3c..a8ab336381 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 3.0.3 (2026-07-22) -- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index 66e32162ab..b897493e67 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.3" +version: "3.0.1.2" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 3dcd6a2049..63ac0aca0a 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.3" + "upstream_version": "3.0.1" } From e14bf67fd6c400b8538419352cc93dd928ad864b Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 506/538] Revert "Updater bot : grav updated to 2.0.12" This reverts commit b1badb954e0720ac828e12deae2f16628506fa1b. --- grav/CHANGELOG.md | 3 --- grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 9c9e856154..06165ba207 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,7 +1,4 @@ -## 2.0.12 (2026-07-22) -- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) - ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 2e447168ba..0894d6e150 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.12" +ARG BUILD_UPSTREAM="2.0.6" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 414dd0e14c..540412f15c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.12" +version: "2.0.6" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index fa78f223f5..3936e662ab 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.12" + "upstream_version": "2.0.6" } From b47001e5e9dd1cf1b0ed0cd3cbce29335e975174 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 507/538] Revert "Updater bot : grampsweb updated to 26.7.0" This reverts commit c75c75a9dace962da4c4e55374d3a2b378eea286. --- grampsweb/CHANGELOG.md | 3 --- grampsweb/config.yaml | 2 +- grampsweb/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/grampsweb/CHANGELOG.md b/grampsweb/CHANGELOG.md index 7ef083f865..fb9d6f51c0 100644 --- a/grampsweb/CHANGELOG.md +++ b/grampsweb/CHANGELOG.md @@ -1,7 +1,4 @@ -## 26.7.0 (2026-07-22) -- Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) - ## 26.6.2 (2026-06-23) - Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) diff --git a/grampsweb/config.yaml b/grampsweb/config.yaml index 75e192f998..0f584f8f67 100644 --- a/grampsweb/config.yaml +++ b/grampsweb/config.yaml @@ -115,5 +115,5 @@ services: slug: grampsweb tmpfs: true url: https://github.com/alexbelgium/hassio-addons/tree/master/grampsweb -version: "26.7.0" +version: "26.6.2" webui: "[PROTO:ssl]://[HOST]:[PORT:5001]" diff --git a/grampsweb/updater.json b/grampsweb/updater.json index 401acfe1ad..c044716d49 100644 --- a/grampsweb/updater.json +++ b/grampsweb/updater.json @@ -1,9 +1,9 @@ { "github_beta": true, - "last_update": "2026-07-22", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "grampsweb", "source": "github", "upstream_repo": "gramps-project/gramps-web", - "upstream_version": "26.7.0" + "upstream_version": "26.6.2" } From ae4ccf889d998324ef72a3f28970ad8abad241a4 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 508/538] Revert "Updater bot : gitea updated to 1.27.0" This reverts commit 009236a2f054a8a23ddfacc14255ff2344b0885f. --- gitea/CHANGELOG.md | 3 --- gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index 20909389b5..a807064de8 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 1.27.0 (2026-07-22) -- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index 9230114be6..cad067b70c 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27.0" +version: "1.27" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index cd2675da7d..a8e3aeb675 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-22", + "last_update": "2026-06-23", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.27.0" + "upstream_version": "1.26.4" } From aceac22f7e6e45b40019a4f4e7ed8be3b3d4ac77 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 509/538] Revert "Updater bot : flexget updated to 3.19.28" This reverts commit 444a297ae905c54df654bff0033a13b64e241783. --- flexget/CHANGELOG.md | 3 --- flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index d04d297eec..fb73412a31 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,7 +1,4 @@ -## 3.19.28 (2026-07-22) -- Update to latest version from wiserain/flexget - ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index 21668cddd3..ad1b7f6538 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.28" +version: "3.19.26" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 8c6eb4d649..82ed3e79df 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-22", + "last_update": "2026-07-04", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.28" + "upstream_version": "3.19.26" } From 2d1532dbed1fdd24fd22adda44cf85b300b63268 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 510/538] Revert "Updater bot : filebrowser_quantum updated to 1.5.0" This reverts commit 3fed178e6e7b3af7506d0200188724ff451603df. --- filebrowser_quantum/CHANGELOG.md | 3 --- filebrowser_quantum/config.yaml | 2 +- filebrowser_quantum/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/filebrowser_quantum/CHANGELOG.md b/filebrowser_quantum/CHANGELOG.md index fedbbdea3f..f317278e6e 100644 --- a/filebrowser_quantum/CHANGELOG.md +++ b/filebrowser_quantum/CHANGELOG.md @@ -1,6 +1,3 @@ - -## 1.5.0 (2026-07-22) -- Update to latest version from gtsteffaniak/filebrowser (changelog : https://github.com/gtsteffaniak/filebrowser/releases) ## 1.4.0-2 (16-07-2026) - Minor bugs fixed diff --git a/filebrowser_quantum/config.yaml b/filebrowser_quantum/config.yaml index c258b71bf0..f47c41fb49 100644 --- a/filebrowser_quantum/config.yaml +++ b/filebrowser_quantum/config.yaml @@ -114,4 +114,4 @@ schema: slug: filebrowser_quantum udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.5.0" +version: "1.4.0.2" diff --git a/filebrowser_quantum/updater.json b/filebrowser_quantum/updater.json index 2f8fbdbeb6..bd98af7356 100644 --- a/filebrowser_quantum/updater.json +++ b/filebrowser_quantum/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", - "last_update": "2026-07-22", + "last_update": "2026-06-20", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "filebrowser_quantum", "source": "github", "upstream_repo": "gtsteffaniak/filebrowser", - "upstream_version": "1.5.0" + "upstream_version": "1.4.0" } From d4d9a84aa07e95074a060e5b491b4c32871d975d Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 511/538] Revert "Updater bot : epicgamesfree updated to debian-2026-07-20" This reverts commit 0cfd94e9021fd22ff42209e98a8d059b2bed1350. --- epicgamesfree/CHANGELOG.md | 3 --- epicgamesfree/config.yaml | 2 +- epicgamesfree/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/epicgamesfree/CHANGELOG.md b/epicgamesfree/CHANGELOG.md index 9825af5a24..1c9370574d 100644 --- a/epicgamesfree/CHANGELOG.md +++ b/epicgamesfree/CHANGELOG.md @@ -1,7 +1,4 @@ -## debian-2026-07-20 (2026-07-20) -- Update to latest version from charlocharlie/epicgames-freegames - ## debian-2026-06-21 (2026-06-21) - Update to latest version from charlocharlie/epicgames-freegames ## debian-2026-06-05 (2026-06-05) diff --git a/epicgamesfree/config.yaml b/epicgamesfree/config.yaml index 9d029c2b70..2f0895db8a 100644 --- a/epicgamesfree/config.yaml +++ b/epicgamesfree/config.yaml @@ -88,5 +88,5 @@ schema: slug: epicgamesfree udev: true url: https://github.com/alexbelgium/hassio-addons -version: "debian-2026-07-20" +version: "debian-2026-06-21" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/epicgamesfree/updater.json b/epicgamesfree/updater.json index 0004045ee0..cdaf0738e7 100644 --- a/epicgamesfree/updater.json +++ b/epicgamesfree/updater.json @@ -2,10 +2,10 @@ "dockerhub_by_date": true, "dockerhub_list_size": 2, "github_exclude": "-", - "last_update": "2026-07-20", + "last_update": "2026-06-21", "repository": "alexbelgium/hassio-addons", "slug": "epicgamesfree", "source": "dockerhub", "upstream_repo": "charlocharlie/epicgames-freegames", - "upstream_version": "debian-2026-07-20" + "upstream_version": "debian-2026-06-21" } From 975f6b13be6cf37826c1c3c67bcbaee5b72e2c98 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 05:29:51 +0000 Subject: [PATCH 512/538] Revert "Updater bot : ente updated to 4.4.24" This reverts commit 79a97e6a20ee1f7a673ddde46197d9e68c4bf3fc. --- ente/CHANGELOG.md | 3 --- ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 35cedcfe28..15c481b126 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.4.24 (2026-07-22) -- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) - ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 5bd0afb53e..72d2fc618c 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.24" +version: "4.4.23" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index f07fe1103f..d8d8dd2093 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-22", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.24" + "upstream_version": "4.4.23" } From 2ef067ec6188e824cf442b4aad7940a71354af2d Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:30:05 +0200 Subject: [PATCH 513/538] Updater bot : prowlarr updated to nightly-2.5.2.5487-ls8 --- prowlarr/CHANGELOG.md | 3 +++ prowlarr/config.yaml | 2 +- prowlarr/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index aea1dfaf15..345d1b2901 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## nightly-2.5.2.5487-ls8 (2026-07-22) +- Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) + ## nightly-2.5.1.5478-ls7 (2026-07-18) - Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index b43239ffd8..e52ed23ffe 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -110,4 +110,4 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "nightly-2.5.1.5478-ls7" +version: "nightly-2.5.2.5487-ls8" diff --git a/prowlarr/updater.json b/prowlarr/updater.json index 3d3aa99a7f..193a550fd7 100644 --- a/prowlarr/updater.json +++ b/prowlarr/updater.json @@ -1,10 +1,10 @@ { "github_beta": "true", "github_fulltag": "true", - "last_update": "2026-07-18", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "prowlarr", "source": "github", "upstream_repo": "linuxserver/docker-prowlarr", - "upstream_version": "nightly-2.5.1.5478-ls7" + "upstream_version": "nightly-2.5.2.5487-ls8" } From 40e4675e88a7bce81f6b93e25f36017849a2ea87 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:45:08 +0200 Subject: [PATCH 514/538] fix(ci): scope revert-on-failure to the failing push's own commits revert-on-failure re-fetched master and reverted before..HEAD, but HEAD was the live tip of master, not the head of the failing push. When the updater bot pushes one addon per commit in quick succession, a single addon's build failure would sweep in every successful commit pushed while the revert job was still running and revert them too. Revert before..github.sha instead, and retry the push with a rebase in case master moves again before we push. --- .github/workflows/onpush_builder.yaml | 34 ++++++++++++++++++++------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/.github/workflows/onpush_builder.yaml b/.github/workflows/onpush_builder.yaml index b58e380d8d..ee7c3d1fc9 100644 --- a/.github/workflows/onpush_builder.yaml +++ b/.github/workflows/onpush_builder.yaml @@ -407,20 +407,25 @@ jobs: fetch-depth: 0 - name: Revert commits from this failed push + env: + BEFORE: ${{ github.event.before }} + HEAD_SHA: ${{ github.sha }} run: | set -euo pipefail git config --global user.name "GitHub Actions" git config --global user.email "actions@github.com" - git fetch origin - git checkout master - git pull --ff-only origin master + git fetch origin master - before="${{ github.event.before }}" - if [ -n "$before" ] && [ "$before" != "0000000000000000000000000000000000000000" ]; then - mapfile -t commits < <(git rev-list "${before}..HEAD") + # Revert exactly the commits THIS push introduced (before..HEAD_SHA). + # Do not diff against the live master tip: concurrent pushes (e.g. the + # updater bot committing one addon per push) can land on master while + # this job is running, and a moving HEAD would sweep their unrelated, + # successful commits into the revert too. + if [ -n "$BEFORE" ] && [ "$BEFORE" != "0000000000000000000000000000000000000000" ]; then + mapfile -t commits < <(git rev-list "${BEFORE}..${HEAD_SHA}") else - commits=("${{ github.sha }}") + commits=("$HEAD_SHA") fi if [ "${#commits[@]}" -eq 0 ]; then @@ -428,8 +433,21 @@ jobs: exit 0 fi + git checkout -B master origin/master for commit in "${commits[@]}"; do git revert --no-edit "$commit" done - git push origin HEAD:master + # Master may have moved again since we fetched (e.g. another + # concurrent updater push), so retry the push with a rebase. + for attempt in 1 2 3 4 5; do + if git push origin HEAD:master; then + exit 0 + fi + echo "Push rejected, rebasing onto latest master (attempt ${attempt})" + git fetch origin master + git rebase origin/master + done + + echo "Failed to push reverts after retries" >&2 + exit 1 From 7d7ece7eab66ad33d37db23b02620e5776040877 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 07:54:30 +0200 Subject: [PATCH 515/538] fix(ci): capture sanitize commit SHA, fail cleanly on rebase conflict Addresses review feedback on #2888 without widening the revert scope back to a moving target: - prebuild-sanitize's own [nobuild] commit lands on top of HEAD_SHA within the same run, so before..HEAD_SHA doesn't include it. It's still this push's own fallout, not a neighboring push's, so capture its SHA via job output and revert it explicitly (reverted first, since it's on top). - git rebase in the push-retry loop could conflict and get killed silently by set -e, burning the remaining retry attempts. Abort the rebase and fail loudly instead. --- .github/workflows/onpush_builder.yaml | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/.github/workflows/onpush_builder.yaml b/.github/workflows/onpush_builder.yaml index ee7c3d1fc9..4dead65853 100644 --- a/.github/workflows/onpush_builder.yaml +++ b/.github/workflows/onpush_builder.yaml @@ -55,6 +55,9 @@ jobs: runs-on: ubuntu-latest permissions: contents: write + outputs: + sanitizeCommitted: ${{ steps.sanitize_commit.outputs.committed }} + sanitizeCommitSha: ${{ steps.sanitize_commit.outputs.commit_long_sha }} steps: - uses: actions/checkout@v7 with: @@ -90,6 +93,7 @@ jobs: uses: ymwymw/check-mixed-line-endings@v2 - name: Commit sanitize changes + id: sanitize_commit if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }} uses: EndBug/add-and-commit@v10 with: @@ -410,6 +414,8 @@ jobs: env: BEFORE: ${{ github.event.before }} HEAD_SHA: ${{ github.sha }} + SANITIZE_COMMITTED: ${{ needs.prebuild-sanitize.outputs.sanitizeCommitted }} + SANITIZE_SHA: ${{ needs.prebuild-sanitize.outputs.sanitizeCommitSha }} run: | set -euo pipefail @@ -428,6 +434,15 @@ jobs: commits=("$HEAD_SHA") fi + # The prebuild-sanitize job may have pushed its own [nobuild] commit + # on top of HEAD_SHA earlier in this same run. It's still this push's + # own fallout (not a neighboring push's), so revert it explicitly by + # SHA rather than widening the range to "whatever is on master now." + # It must be reverted first, since it sits on top of HEAD_SHA. + if [ "$SANITIZE_COMMITTED" = "true" ] && [ -n "$SANITIZE_SHA" ]; then + commits=("$SANITIZE_SHA" "${commits[@]}") + fi + if [ "${#commits[@]}" -eq 0 ]; then echo "Nothing to revert." exit 0 @@ -446,7 +461,13 @@ jobs: fi echo "Push rejected, rebasing onto latest master (attempt ${attempt})" git fetch origin master - git rebase origin/master + if ! git rebase origin/master; then + git rebase --abort + echo "Rebase hit a real conflict against latest master; aborting" \ + "rather than pushing a partial/broken revert. This needs a" \ + "human to look at it." >&2 + exit 1 + fi done echo "Failed to push reverts after retries" >&2 From 1706324ac7883f5687a3c52f9bd00e6c00a77cac Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:01:04 +0200 Subject: [PATCH 516/538] Updater bot : ente updated to 4.4.24 --- ente/CHANGELOG.md | 3 +++ ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 15c481b126..35cedcfe28 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.4.24 (2026-07-22) +- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) + ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 72d2fc618c..5bd0afb53e 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.23" +version: "4.4.24" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index d8d8dd2093..f07fe1103f 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-06-11", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.23" + "upstream_version": "4.4.24" } From 26d725409a7829c83b3246fbfce382fd1604f3f4 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:01:08 +0200 Subject: [PATCH 517/538] Updater bot : epicgamesfree updated to debian-2026-07-20 --- epicgamesfree/CHANGELOG.md | 3 +++ epicgamesfree/config.yaml | 2 +- epicgamesfree/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/epicgamesfree/CHANGELOG.md b/epicgamesfree/CHANGELOG.md index 1c9370574d..9825af5a24 100644 --- a/epicgamesfree/CHANGELOG.md +++ b/epicgamesfree/CHANGELOG.md @@ -1,4 +1,7 @@ +## debian-2026-07-20 (2026-07-20) +- Update to latest version from charlocharlie/epicgames-freegames + ## debian-2026-06-21 (2026-06-21) - Update to latest version from charlocharlie/epicgames-freegames ## debian-2026-06-05 (2026-06-05) diff --git a/epicgamesfree/config.yaml b/epicgamesfree/config.yaml index 2f0895db8a..9d029c2b70 100644 --- a/epicgamesfree/config.yaml +++ b/epicgamesfree/config.yaml @@ -88,5 +88,5 @@ schema: slug: epicgamesfree udev: true url: https://github.com/alexbelgium/hassio-addons -version: "debian-2026-06-21" +version: "debian-2026-07-20" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/epicgamesfree/updater.json b/epicgamesfree/updater.json index cdaf0738e7..0004045ee0 100644 --- a/epicgamesfree/updater.json +++ b/epicgamesfree/updater.json @@ -2,10 +2,10 @@ "dockerhub_by_date": true, "dockerhub_list_size": 2, "github_exclude": "-", - "last_update": "2026-06-21", + "last_update": "2026-07-20", "repository": "alexbelgium/hassio-addons", "slug": "epicgamesfree", "source": "dockerhub", "upstream_repo": "charlocharlie/epicgames-freegames", - "upstream_version": "debian-2026-06-21" + "upstream_version": "debian-2026-07-20" } From c7de8627cb2eb45db4d12d28ffab70193b84ff65 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:01:16 +0200 Subject: [PATCH 518/538] Updater bot : filebrowser_quantum updated to 1.5.0 --- filebrowser_quantum/CHANGELOG.md | 3 +++ filebrowser_quantum/config.yaml | 2 +- filebrowser_quantum/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/filebrowser_quantum/CHANGELOG.md b/filebrowser_quantum/CHANGELOG.md index f317278e6e..fedbbdea3f 100644 --- a/filebrowser_quantum/CHANGELOG.md +++ b/filebrowser_quantum/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.5.0 (2026-07-22) +- Update to latest version from gtsteffaniak/filebrowser (changelog : https://github.com/gtsteffaniak/filebrowser/releases) ## 1.4.0-2 (16-07-2026) - Minor bugs fixed diff --git a/filebrowser_quantum/config.yaml b/filebrowser_quantum/config.yaml index f47c41fb49..c258b71bf0 100644 --- a/filebrowser_quantum/config.yaml +++ b/filebrowser_quantum/config.yaml @@ -114,4 +114,4 @@ schema: slug: filebrowser_quantum udev: true url: https://github.com/alexbelgium/hassio-addons -version: "1.4.0.2" +version: "1.5.0" diff --git a/filebrowser_quantum/updater.json b/filebrowser_quantum/updater.json index bd98af7356..2f8fbdbeb6 100644 --- a/filebrowser_quantum/updater.json +++ b/filebrowser_quantum/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", - "last_update": "2026-06-20", + "last_update": "2026-07-22", "paused": false, "repository": "alexbelgium/hassio-addons", "slug": "filebrowser_quantum", "source": "github", "upstream_repo": "gtsteffaniak/filebrowser", - "upstream_version": "1.4.0" + "upstream_version": "1.5.0" } From 5358b90eec8ab34e4e27b5789e709ad4d92f4d3f Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:01:31 +0200 Subject: [PATCH 519/538] Updater bot : flexget updated to 3.19.28 --- flexget/CHANGELOG.md | 3 +++ flexget/config.yaml | 2 +- flexget/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/flexget/CHANGELOG.md b/flexget/CHANGELOG.md index fb73412a31..d04d297eec 100644 --- a/flexget/CHANGELOG.md +++ b/flexget/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.19.28 (2026-07-22) +- Update to latest version from wiserain/flexget + ## 3.19.26 (2026-07-04) - Update to latest version from wiserain/flexget diff --git a/flexget/config.yaml b/flexget/config.yaml index ad1b7f6538..21668cddd3 100644 --- a/flexget/config.yaml +++ b/flexget/config.yaml @@ -95,5 +95,5 @@ schema: slug: flexget udev: true url: https://github.com/alexbelgium/hassio-addons -version: "3.19.26" +version: "3.19.28" webui: "[PROTO:ssl]://[HOST]:[PORT:5050]" diff --git a/flexget/updater.json b/flexget/updater.json index 82ed3e79df..8c6eb4d649 100644 --- a/flexget/updater.json +++ b/flexget/updater.json @@ -1,9 +1,9 @@ { "dockerhub_list_size": "10", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "flexget", "source": "dockerhub", "upstream_repo": "wiserain/flexget", - "upstream_version": "3.19.26" + "upstream_version": "3.19.28" } From ba995cd04cf8cf0316f9a9edabee81d6f053b995 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:01:40 +0200 Subject: [PATCH 520/538] Updater bot : gitea updated to 1.27.0 --- gitea/CHANGELOG.md | 3 +++ gitea/config.yaml | 2 +- gitea/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/gitea/CHANGELOG.md b/gitea/CHANGELOG.md index a807064de8..20909389b5 100644 --- a/gitea/CHANGELOG.md +++ b/gitea/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 1.27.0 (2026-07-22) +- Update to latest version from go-gitea/gitea (changelog : https://github.com/go-gitea/gitea/releases) ## 1.27 (15-07-2026) - Fix the Gitea add-on HEALTHCHECK to work correctly when SSL is enabled, so Home Assistant can accurately report the add-on's health status regardless of whether the instance uses HTTP or HTTPS. diff --git a/gitea/config.yaml b/gitea/config.yaml index cad067b70c..9230114be6 100644 --- a/gitea/config.yaml +++ b/gitea/config.yaml @@ -97,5 +97,5 @@ schema: slug: gitea udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/gitea -version: "1.27" +version: "1.27.0" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/gitea/updater.json b/gitea/updater.json index a8e3aeb675..cd2675da7d 100644 --- a/gitea/updater.json +++ b/gitea/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-06-23", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "gitea", "source": "github", "upstream_repo": "go-gitea/gitea", - "upstream_version": "1.26.4" + "upstream_version": "1.27.0" } From 3ab193b1e594eb0efd552722904362e99c19885c Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:01:45 +0200 Subject: [PATCH 521/538] Updater bot : grampsweb updated to 26.7.0 --- grampsweb/CHANGELOG.md | 3 +++ grampsweb/config.yaml | 2 +- grampsweb/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/grampsweb/CHANGELOG.md b/grampsweb/CHANGELOG.md index fb9d6f51c0..7ef083f865 100644 --- a/grampsweb/CHANGELOG.md +++ b/grampsweb/CHANGELOG.md @@ -1,4 +1,7 @@ +## 26.7.0 (2026-07-22) +- Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) + ## 26.6.2 (2026-06-23) - Update to latest version from gramps-project/gramps-web (changelog : https://github.com/gramps-project/gramps-web/releases) diff --git a/grampsweb/config.yaml b/grampsweb/config.yaml index 0f584f8f67..75e192f998 100644 --- a/grampsweb/config.yaml +++ b/grampsweb/config.yaml @@ -115,5 +115,5 @@ services: slug: grampsweb tmpfs: true url: https://github.com/alexbelgium/hassio-addons/tree/master/grampsweb -version: "26.6.2" +version: "26.7.0" webui: "[PROTO:ssl]://[HOST]:[PORT:5001]" diff --git a/grampsweb/updater.json b/grampsweb/updater.json index c044716d49..401acfe1ad 100644 --- a/grampsweb/updater.json +++ b/grampsweb/updater.json @@ -1,9 +1,9 @@ { "github_beta": true, - "last_update": "2026-06-23", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "grampsweb", "source": "github", "upstream_repo": "gramps-project/gramps-web", - "upstream_version": "26.6.2" + "upstream_version": "26.7.0" } From 61b801f3d733798c443b2ccb4042663f5ab5f7da Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:01:50 +0200 Subject: [PATCH 522/538] Updater bot : grav updated to 2.0.12 --- grav/CHANGELOG.md | 3 +++ grav/Dockerfile | 2 +- grav/config.yaml | 2 +- grav/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/grav/CHANGELOG.md b/grav/CHANGELOG.md index 06165ba207..9c9e856154 100644 --- a/grav/CHANGELOG.md +++ b/grav/CHANGELOG.md @@ -1,4 +1,7 @@ +## 2.0.12 (2026-07-22) +- Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) + ## 2.0.6 (2026-07-04) - Update to latest version from linuxserver/docker-grav (changelog : https://github.com/linuxserver/docker-grav/releases) diff --git a/grav/Dockerfile b/grav/Dockerfile index 0894d6e150..2e447168ba 100644 --- a/grav/Dockerfile +++ b/grav/Dockerfile @@ -16,7 +16,7 @@ ARG BUILD_FROM ARG BUILD_VERSION -ARG BUILD_UPSTREAM="2.0.6" +ARG BUILD_UPSTREAM="2.0.12" FROM ${BUILD_FROM} ################## diff --git a/grav/config.yaml b/grav/config.yaml index 540412f15c..414dd0e14c 100644 --- a/grav/config.yaml +++ b/grav/config.yaml @@ -89,5 +89,5 @@ schema: slug: grav udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.0.6" +version: "2.0.12" webui: "[PROTO:ssl]://[HOST]:[PORT:80]" diff --git a/grav/updater.json b/grav/updater.json index 3936e662ab..fa78f223f5 100644 --- a/grav/updater.json +++ b/grav/updater.json @@ -1,9 +1,9 @@ { "github_beta": false, - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "grav", "source": "github", "upstream_repo": "linuxserver/docker-grav", - "upstream_version": "2.0.6" + "upstream_version": "2.0.12" } From 4fbf95977d1b9efecfc0ad9055c82cf47f370b35 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:01:57 +0200 Subject: [PATCH 523/538] Updater bot : immich updated to 3.0.3 --- immich/CHANGELOG.md | 3 +++ immich/config.yaml | 2 +- immich/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich/CHANGELOG.md b/immich/CHANGELOG.md index a8ab336381..e27ffc5b3c 100644 --- a/immich/CHANGELOG.md +++ b/immich/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-22) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich/config.yaml b/immich/config.yaml index b897493e67..66e32162ab 100644 --- a/immich/config.yaml +++ b/immich/config.yaml @@ -141,6 +141,6 @@ slug: immich udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1.2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich/updater.json b/immich/updater.json index 63ac0aca0a..3dcd6a2049 100644 --- a/immich/updater.json +++ b/immich/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 83d35476b0ead74e9c89033efec965eccc991834 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:02:02 +0200 Subject: [PATCH 524/538] Updater bot : immich_cuda updated to 3.0.3 --- immich_cuda/CHANGELOG.md | 3 +++ immich_cuda/config.yaml | 2 +- immich_cuda/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_cuda/CHANGELOG.md b/immich_cuda/CHANGELOG.md index 95bec50a58..b3523d3f80 100644 --- a/immich_cuda/CHANGELOG.md +++ b/immich_cuda/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-22) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_cuda/config.yaml b/immich_cuda/config.yaml index d8fce0488c..73c96d22b4 100644 --- a/immich_cuda/config.yaml +++ b/immich_cuda/config.yaml @@ -139,6 +139,6 @@ slug: immich_cuda udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1.2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_cuda/updater.json b/immich_cuda/updater.json index 63ac0aca0a..3dcd6a2049 100644 --- a/immich_cuda/updater.json +++ b/immich_cuda/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 38df0f82fe04969a3512d46651262b0cdc4fb0d2 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:02:07 +0200 Subject: [PATCH 525/538] Updater bot : immich_frame updated to 1.0.37.0 --- immich_frame/CHANGELOG.md | 3 +++ immich_frame/config.yaml | 2 +- immich_frame/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_frame/CHANGELOG.md b/immich_frame/CHANGELOG.md index 443763661a..fc75acc943 100644 --- a/immich_frame/CHANGELOG.md +++ b/immich_frame/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.0.37.0 (2026-07-22) +- Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) + ## 1.0.34.0 (2026-07-04) - Update to latest version from immichFrame/ImmichFrame (changelog : https://github.com/immichFrame/ImmichFrame/releases) diff --git a/immich_frame/config.yaml b/immich_frame/config.yaml index 44a6fcb111..2425d2bf8c 100644 --- a/immich_frame/config.yaml +++ b/immich_frame/config.yaml @@ -70,5 +70,5 @@ schema: RefreshAlbumPeopleInterval: int? slug: immich_frame url: https://github.com/alexbelgium/hassio-addons -version: "1.0.34.0" +version: "1.0.37.0" webui: http://[HOST]:[PORT:8080] diff --git a/immich_frame/updater.json b/immich_frame/updater.json index 8408fb021e..c7da995eea 100644 --- a/immich_frame/updater.json +++ b/immich_frame/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich_frame", "source": "github", "upstream_repo": "immichFrame/ImmichFrame", - "upstream_version": "1.0.34.0" + "upstream_version": "1.0.37.0" } From ee98a18848daa3a7536ede4c0130c3b63a630f5c Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:02:12 +0200 Subject: [PATCH 526/538] Updater bot : immich_noml updated to 3.0.3 --- immich_noml/CHANGELOG.md | 3 +++ immich_noml/config.yaml | 2 +- immich_noml/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_noml/CHANGELOG.md b/immich_noml/CHANGELOG.md index 0c354e8271..c6bd34ce93 100644 --- a/immich_noml/CHANGELOG.md +++ b/immich_noml/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-22) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed diff --git a/immich_noml/config.yaml b/immich_noml/config.yaml index 5e9b59435b..9774a2f395 100644 --- a/immich_noml/config.yaml +++ b/immich_noml/config.yaml @@ -140,6 +140,6 @@ slug: immich_noml udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1.2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_noml/updater.json b/immich_noml/updater.json index 63ac0aca0a..3dcd6a2049 100644 --- a/immich_noml/updater.json +++ b/immich_noml/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From f59d77d7be782d0e4567c6e4c81a42215b0cf808 Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:02:17 +0200 Subject: [PATCH 527/538] Updater bot : immich_openvino updated to 3.0.3 --- immich_openvino/CHANGELOG.md | 3 +++ immich_openvino/config.yaml | 2 +- immich_openvino/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/immich_openvino/CHANGELOG.md b/immich_openvino/CHANGELOG.md index 1b604106d2..8d38f93f90 100644 --- a/immich_openvino/CHANGELOG.md +++ b/immich_openvino/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 3.0.3 (2026-07-22) +- Update to latest version from immich-app/immich (changelog : https://github.com/immich-app/immich/releases) ## 3.0.1-2 (04-07-2026) - Minor bugs fixed ## 3.0.1 (2026-07-04) diff --git a/immich_openvino/config.yaml b/immich_openvino/config.yaml index 8dd3efd14e..30337862a9 100644 --- a/immich_openvino/config.yaml +++ b/immich_openvino/config.yaml @@ -140,6 +140,6 @@ slug: immich_openvino udev: true url: https://github.com/alexbelgium/hassio-addons usb: true -version: "3.0.1.2" +version: "3.0.3" video: true webui: http://[HOST]:[PORT:8080] diff --git a/immich_openvino/updater.json b/immich_openvino/updater.json index 63ac0aca0a..3dcd6a2049 100644 --- a/immich_openvino/updater.json +++ b/immich_openvino/updater.json @@ -1,10 +1,10 @@ { "github_beta": "false", "github_exclude": "", - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "immich", "source": "github", "upstream_repo": "immich-app/immich", - "upstream_version": "3.0.1" + "upstream_version": "3.0.3" } From 98211fbcf76a25345c6f0caad73aee1261a9a2ea Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:02:26 +0200 Subject: [PATCH 528/538] Updater bot : jackett updated to 0.24.2251 --- jackett/CHANGELOG.md | 3 +++ jackett/config.yaml | 2 +- jackett/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/jackett/CHANGELOG.md b/jackett/CHANGELOG.md index fdcaa4afa4..0f4d8d07ce 100644 --- a/jackett/CHANGELOG.md +++ b/jackett/CHANGELOG.md @@ -1,4 +1,7 @@ +## 0.24.2251 (2026-07-22) +- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) + ## 0.24.2166 (2026-07-04) - Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases) diff --git a/jackett/config.yaml b/jackett/config.yaml index c393744967..1d1a122d72 100644 --- a/jackett/config.yaml +++ b/jackett/config.yaml @@ -106,5 +106,5 @@ schema: slug: jackett_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett -version: "0.24.2166" +version: "0.24.2251" webui: http://[HOST]:[PORT:9117] diff --git a/jackett/updater.json b/jackett/updater.json index 0a816abd2c..b7ebdbfd32 100644 --- a/jackett/updater.json +++ b/jackett/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "jackett", "source": "github", "upstream_repo": "linuxserver/docker-jackett", - "upstream_version": "0.24.2166" + "upstream_version": "0.24.2251" } From b72cc7e7b9e3271110ccb1979d437d3d730aeafe Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:02:49 +0200 Subject: [PATCH 529/538] Updater bot : linkwarden updated to 2.15.1 --- linkwarden/CHANGELOG.md | 3 +++ linkwarden/config.yaml | 2 +- linkwarden/updater.json | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/linkwarden/CHANGELOG.md b/linkwarden/CHANGELOG.md index 90b6ee06ff..8084f1526b 100644 --- a/linkwarden/CHANGELOG.md +++ b/linkwarden/CHANGELOG.md @@ -1,3 +1,6 @@ + +## 2.15.1 (2026-07-22) +- Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) ## 2.14.1 (2026-04-23) - Update to latest version from linkwarden/linkwarden (changelog : https://github.com/linkwarden/linkwarden/releases) diff --git a/linkwarden/config.yaml b/linkwarden/config.yaml index 33fb3c849d..b1d3213f17 100644 --- a/linkwarden/config.yaml +++ b/linkwarden/config.yaml @@ -45,5 +45,5 @@ schema: STORAGE_FOLDER: str? slug: linkwarden url: https://github.com/alexbelgium/hassio-addons/tree/master/linkwarden -version: "2.14.1" +version: "2.15.1" webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/linkwarden/updater.json b/linkwarden/updater.json index 18d72d7a97..c4a9db1a5a 100644 --- a/linkwarden/updater.json +++ b/linkwarden/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-04-23", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "linkwarden", "source": "github", "upstream_repo": "linkwarden/linkwarden", - "upstream_version": "2.14.1" + "upstream_version": "2.15.1" } From 7a85d5319654d0b8d1cef758ac3215a2bd40906b Mon Sep 17 00:00:00 2001 From: alexbelgium Date: Wed, 22 Jul 2026 08:02:54 +0200 Subject: [PATCH 530/538] Updater bot : maintainerr updated to 3.18.0 --- maintainerr/CHANGELOG.md | 3 +++ maintainerr/Dockerfile | 2 +- maintainerr/config.yaml | 2 +- maintainerr/updater.json | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/maintainerr/CHANGELOG.md b/maintainerr/CHANGELOG.md index 6625d46e2d..a2e0a54fc6 100644 --- a/maintainerr/CHANGELOG.md +++ b/maintainerr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.18.0 (2026-07-22) +- Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) + ## 3.16.0 (2026-07-04) - Update to latest version from maintainerr/maintainerr (changelog : https://github.com/maintainerr/maintainerr/releases) diff --git a/maintainerr/Dockerfile b/maintainerr/Dockerfile index eadb42fa43..5c3bfc090d 100644 --- a/maintainerr/Dockerfile +++ b/maintainerr/Dockerfile @@ -11,7 +11,7 @@ #=== Home Assistant Addon ===# # ARGs used in FROM must be declared before any FROM instruction -ARG BUILD_UPSTREAM="3.16.0" +ARG BUILD_UPSTREAM="3.18.0" ############################ # 0) Tools stage # diff --git a/maintainerr/config.yaml b/maintainerr/config.yaml index 65d02cfd17..c4c1154fea 100644 --- a/maintainerr/config.yaml +++ b/maintainerr/config.yaml @@ -88,5 +88,5 @@ schema: TZ: str? slug: maintainerr url: https://github.com/alexbelgium/hassio-addons/tree/master/maintainerr -version: "3.16.0" +version: "3.18.0" webui: "[PROTO:ssl]://[HOST]:[PORT:6246]" diff --git a/maintainerr/updater.json b/maintainerr/updater.json index fd48a580bc..0056ca8307 100644 --- a/maintainerr/updater.json +++ b/maintainerr/updater.json @@ -1,8 +1,8 @@ { - "last_update": "2026-07-04", + "last_update": "2026-07-22", "repository": "alexbelgium/hassio-addons", "slug": "maintainerr", "source": "github", "upstream_repo": "maintainerr/maintainerr", - "upstream_version": "3.16.0" + "upstream_version": "3.18.0" } From 3da0abdeff30aada19caa4ae8c4c42dab6f5aba9 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 22 Jul 2026 06:03:25 +0000 Subject: [PATCH 531/538] Revert "Updater bot : ente updated to 4.4.24" This reverts commit 1706324ac7883f5687a3c52f9bd00e6c00a77cac. --- ente/CHANGELOG.md | 3 --- ente/config.yaml | 2 +- ente/updater.json | 4 ++-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/ente/CHANGELOG.md b/ente/CHANGELOG.md index 35cedcfe28..15c481b126 100644 --- a/ente/CHANGELOG.md +++ b/ente/CHANGELOG.md @@ -1,7 +1,4 @@ -## 4.4.24 (2026-07-22) -- Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) - ## 4.4.23 (2026-06-11) - Update to latest version from ente-io/ente (changelog : https://github.com/ente-io/ente/releases) ## 1.7.24 (2026-06-05) diff --git a/ente/config.yaml b/ente/config.yaml index 5bd0afb53e..72d2fc618c 100644 --- a/ente/config.yaml +++ b/ente/config.yaml @@ -131,6 +131,6 @@ schema: slug: ente udev: true url: https://github.com/alexbelgium/hassio-addons -version: "4.4.24" +version: "4.4.23" video: true webui: http://[HOST]:[PORT:3000] diff --git a/ente/updater.json b/ente/updater.json index f07fe1103f..d8d8dd2093 100644 --- a/ente/updater.json +++ b/ente/updater.json @@ -1,9 +1,9 @@ { "github_beta": "false", - "last_update": "2026-07-22", + "last_update": "2026-06-11", "repository": "alexbelgium/hassio-addons", "slug": "ente", "source": "github", "upstream_repo": "ente-io/ente", - "upstream_version": "4.4.24" + "upstream_version": "4.4.23" } From d3f0d4f4c42b1fffe8bc2174d65026c72011ef4d Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 22 Jul 2026 09:21:33 +0200 Subject: [PATCH 532/538] Add support for following external symlinks in script https://github.com/alexbelgium/hassio-addons/issues/2882 --- filebrowser/rootfs/etc/cont-init.d/99-run.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/filebrowser/rootfs/etc/cont-init.d/99-run.sh b/filebrowser/rootfs/etc/cont-init.d/99-run.sh index 52201417cb..ea9e7f0b3d 100755 --- a/filebrowser/rootfs/etc/cont-init.d/99-run.sh +++ b/filebrowser/rootfs/etc/cont-init.d/99-run.sh @@ -105,6 +105,12 @@ else DISABLE_THUMBNAILS="" fi +# Disable thumbnails +if bashio::config.true 'follow_external_symlinks'; then + FOLLOW_SYMLINKS="--followExternalSymlinks" +else + FOLLOW_SYMLINKS="" +fi # Remove configuration file if [ -f /.filebrowser.json ]; then rm /.filebrowser.json @@ -113,7 +119,7 @@ fi bashio::log.info "Starting..." # shellcheck disable=SC2086 -/./bin/filebrowser --disablePreviewResize --disableTypeDetectionByHeader --cacheDir="/cache" $CERTFILE $KEYFILE --root="$BASE_FOLDER" --address=0.0.0.0 --port=8080 --database=/config/filebrowser.dB ${NOAUTH:+$NOAUTH} ${DISABLE_THUMBNAILS:+$DISABLE_THUMBNAILS} & +/./bin/filebrowser --disablePreviewResize --disableTypeDetectionByHeader --cacheDir="/cache" $CERTFILE $KEYFILE --root="$BASE_FOLDER" --address=0.0.0.0 --port=8080 --database=/config/filebrowser.dB ${FOLLOW_SYMLINKS:+$FOLLOW_SYMLINKS} ${NOAUTH:+$NOAUTH} ${DISABLE_THUMBNAILS:+$DISABLE_THUMBNAILS} & bashio::net.wait_for 8080 localhost 900 || true bashio::log.info "Started !" nginx || bashio::log.fatal "Nginx failed" From abf35097ff209d469c847afbfd867aaa4a810c62 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 22 Jul 2026 09:22:26 +0200 Subject: [PATCH 533/538] Enable follow_external_symlinks and update version https://github.com/alexbelgium/hassio-addons/issues/2882 --- filebrowser/config.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/filebrowser/config.yaml b/filebrowser/config.yaml index f6def08dcb..0e97fea26e 100644 --- a/filebrowser/config.yaml +++ b/filebrowser/config.yaml @@ -95,6 +95,7 @@ options: NoAuth: true certfile: fullchain.pem disable_thumbnails: true + follow_external_symlinks: true keyfile: privkey.pem ssl: false panel_admin: false @@ -117,6 +118,7 @@ schema: cifspassword: str? cifsusername: str? disable_thumbnails: bool? + follow_external_symlinks: bool? keyfile: str localdisks: str? networkdisks: str? @@ -124,4 +126,4 @@ schema: slug: filebrowser udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.63.18" +version: "2.63.18.2" From b4b881fcb690e879922df3562cb6bbccb3dc390f Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 22 Jul 2026 09:22:55 +0200 Subject: [PATCH 534/538] Add new flag for following external symlinks --- filebrowser/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/filebrowser/CHANGELOG.md b/filebrowser/CHANGELOG.md index 1a2546c436..0392e75b2e 100644 --- a/filebrowser/CHANGELOG.md +++ b/filebrowser/CHANGELOG.md @@ -1,3 +1,4 @@ +- New flag added : follow_external_symlinks ## 2.63.18 (2026-07-04) - Update to latest version from filebrowser/filebrowser (changelog : https://github.com/filebrowser/filebrowser/releases) From 6fe02c14dd7e44ab3fc805f6c404c4890ed52515 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 22 Jul 2026 09:26:43 +0200 Subject: [PATCH 535/538] Modify health check command in Dockerfile https://github.com/alexbelgium/hassio-addons/issues/2881 --- filebrowser/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/filebrowser/Dockerfile b/filebrowser/Dockerfile index d72fb0d9b5..0c4f22cf03 100644 --- a/filebrowser/Dockerfile +++ b/filebrowser/Dockerfile @@ -134,4 +134,4 @@ HEALTHCHECK \ --retries=5 \ --start-period=30s \ --timeout=25s \ - CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || curl -k --fail "https://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1 + CMD if [ "$ssl" = "true" ]; then curl -f -k https://127.0.01:${HEALTH_PORT}${HEALTH_URL}; else curl -f http://127.0.01:${HEALTH_PORT}${HEALTH_URL}/; fi From f4592a7289f4d3f880aa02e4f5979693d2022552 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 22 Jul 2026 09:30:18 +0200 Subject: [PATCH 536/538] Update config.yaml --- filebrowser/config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/filebrowser/config.yaml b/filebrowser/config.yaml index 0e97fea26e..56197843b9 100644 --- a/filebrowser/config.yaml +++ b/filebrowser/config.yaml @@ -126,4 +126,4 @@ schema: slug: filebrowser udev: true url: https://github.com/alexbelgium/hassio-addons -version: "2.63.18.2" +version: "2.63.18.3" From b0dcd7aa8468574d727848a176fc7f5d4b15ba5e Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 22 Jul 2026 07:32:26 +0000 Subject: [PATCH 537/538] GitHub bot: changelog [nobuild] --- filebrowser/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/filebrowser/CHANGELOG.md b/filebrowser/CHANGELOG.md index 0392e75b2e..b942bfe7ee 100644 --- a/filebrowser/CHANGELOG.md +++ b/filebrowser/CHANGELOG.md @@ -1,3 +1,4 @@ +## 2.63.18.3 (22-07-2026) - New flag added : follow_external_symlinks ## 2.63.18 (2026-07-04) From 926b573d2b4fb157c8a4ead8adaa552c578caa89 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Wed, 22 Jul 2026 10:46:54 +0200 Subject: [PATCH 538/538] Update Dockerfile --- filebrowser/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/filebrowser/Dockerfile b/filebrowser/Dockerfile index 0c4f22cf03..550ce1cab2 100644 --- a/filebrowser/Dockerfile +++ b/filebrowser/Dockerfile @@ -134,4 +134,4 @@ HEALTHCHECK \ --retries=5 \ --start-period=30s \ --timeout=25s \ - CMD if [ "$ssl" = "true" ]; then curl -f -k https://127.0.01:${HEALTH_PORT}${HEALTH_URL}; else curl -f http://127.0.01:${HEALTH_PORT}${HEALTH_URL}/; fi + CMD if [ "$ssl" = "true" ]; then curl -f -k https://127.0.01:${HEALTH_PORT}${HEALTH_URL}; else curl -f http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}/; fi

      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¨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�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¨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�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