Sparkbox Update Broke System
Posted by Wildwood32
Last login: Wed Jul 15 14:52:35 on ttys000 cholland@Macbook ~ % ssh wildwood@wildwoodnas.local wildwood@wildwoodnas.local's password: Permission denied, please try again. wildwood@wildwoodnas.local's password: Permission denied, please try again. wildwood@wildwoodnas.local's password: wildwood@wildwoodnas.local: Permission denied (publickey,password). cholland@Macbook ~ % ssh wildwood@wildwoodnas.local wildwood@wildwoodnas.local's password: Permission denied, please try again. wildwood@wildwoodnas.local's password: Permission denied, please try again. wildwood@wildwoodnas.local's password: Connection closed by 192.168.0.30 port 22 cholland@Macbook ~ % Wildwood@WildwoodNas.local zsh: command not found: Wildwood@WildwoodNas.local cholland@Macbook ~ % ssh Wildwood@WildwoodNas.local Wildwood@wildwoodnas.local's password: Wildwood@WildwoodNas:~$ sudo sparkbox upgrade [sudo] password for Wildwood: [INFO] Upgrading SparkBox: v1.6.333 - v1.6.358 [INFO] Your settings, data, and app config are preserved across the upgrade. [INFO] Handing off to the installer (upgrade mode)... / | | | | ) \ \| ' \ / | '| |/ / \ / \ \/ / ) | |) | (| | | | <| |) | () < |/| ./ \,|| ||\\/ \//\\ || The easiest, most user-friendly self-hosting stack anywhere. Created by Tom Spark | youtube.com/@TomSparkReviews [SparkBox] NAS detected: ugreen [SparkBox] Running in NAS mode (ugreen) [SparkBox] NAS users: keep internet access ON during install. [SparkBox] SparkBox needs the internet to: [SparkBox] 1. Pull Docker images during install [SparkBox] 2. Activate your free personal-use license key (auto-updates) [SparkBox] Re-block outbound internet only AFTER you've logged in, registered [SparkBox] your license, and finished the setup wizard. [SparkBox] Full details: https://tomsparkbox.com/docs.html [SparkBox] Network profile: nas (NAS detected: ugreen) [SparkBox] Data directory (media/photos/books/manga): /volume1/sparkbox-data [SparkBox] System clock is in sync (0s off Cloudflare's reference) [SparkBox] Detected: Debian GNU/Linux 12 (bookworm) [SparkBox] RAM: 7712MB detected. 8GB+ recommended for media modules. [SparkBox] NAS mode: skipping system package installation. [SparkBox] Docker already installed: Docker version 26.1.0, build 9714adc [SparkBox] Docker Compose: 2.26.1 [SparkBox] Existing SparkBox install found (v1.6.333). Upgrading via atomic rename-swap — .env, state/, and module data are preserved. ============================================================ PREFLIGHT — here's what I found on this machine ============================================================ System: Debian GNU/Linux 12 (bookworm) Hardware: NAS (ugreen) Memory: 7712 MB Free disk: 866 GB at /volume2 Install to: /volume2/sparkbox Timezone: US/Mountain Clock: in sync (0s off reference) Mode: UPGRADE (your settings, data and passwords are kept) ------------------------------------------------------------ ⚠ Port 8443 (SparkBox dashboard) is already in use by: users:(("docker-proxy",pid=5439,fd=4)) ⚠ Port 9000 (Portainer) is already in use by: users:(("docker-proxy",pid=5636,fd=4)) These ports are needed by SparkBox. The install will continue, but the affected service may fail to start until the conflict is resolved. For the dashboard specifically, you can pick another port by setting SBDASHBOARDPORT (e.g. SBDASHBOARDPORT=9443) before installing, or in /volume2/sparkbox/.env afterwards followed by 'sudo sparkbox up'. ============================================================ [SparkBox] Downloading SparkBox... [SparkBox] Verifying release integrity... [SparkBox] SHA256 digest verified [SparkBox] ed25519 signature verified [SparkBox] Stopping running containers for a safe upgrade snapshot... Container sb-tailscale Stopping Container sb-tailscale Stopped Container sb-tailscale Removing Container sb-tailscale Removed [OK] SparkBox stopped. [SparkBox] Upgrade applied atomically. Rollback copy preserved at /volume2/sparkbox.rollback-1784153546 until health probe confirms success. [SparkBox] SparkBox downloaded to /volume2/sparkbox [SparkBox] SparkBox installed to /volume2/sparkbox [SparkBox] NAS mode: skipping firewall configuration. [SparkBox] Configure port forwarding through your NAS or router admin panel. [SparkBox] Non-interactive install detected (piped from curl). Skipping wizard. [SparkBox] Bringing up core services so the dashboard is reachable... [SparkBox] Keeping existing .env from previous install. [SparkBox] Rendering module templates... [SparkBox] Pi-hole pre-configured with NAS telemetry blocklist [SparkBox] Gotify admin password pre-seeded (plaintext saved to state/gotify-admin-password.txt) [SparkBox] FileBrowser admin password pre-seeded (init runs after first boot via filebrowser-init.sh) [SparkBox] qBittorrent admin password pre-seeded (plaintext saved to state/qbittorrent-admin-password.txt) [SparkBox] qBittorrent: rewrote broken quoted @ByteArray hash in existing conf to unquoted form. [SparkBox] Boot self-heal enabled (sparkbox-boot.service runs 'sparkbox up' after every reboot) [SparkBox] Core services didn't start (attempt 1/3) — likely a transient Docker hiccup. Waiting 10s and retrying... [SparkBox] Core services didn't start (attempt 2/3) — likely a transient Docker hiccup. Waiting 10s and retrying... [FAILURE] SparkBox installed, but Docker couldn't start the core services. [FAILURE] The most common causes are port conflicts (8443 already taken), missing /var/run/docker.sock permissions, or low disk space. [FAILURE] Last 20 lines of the sparkbox up log: [INFO] Active modules: core dashboard immich media pinchflat tailscale [INFO] Fetching images for module: dashboard sparkbox-dashboard Skipped - No image to be pulled [INFO] Fetching images for module: pinchflat pinchflat Pulling pinchflat Error manifest unknown Error response from daemon: manifest unknown [WARN] pull attempt 2/3 (previous attempt failed) — retrying in 10s pinchflat Pulling pinchflat Error manifest unknown Error response from daemon: manifest unknown [WARN] pull attempt 3/3 (previous attempt failed) — retrying in 15s pinchflat Pulling pinchflat Error manifest unknown Error response from daemon: manifest unknown [ERROR] Failed to pull images for module 'pinchflat' after 3 attempts. [ERROR] Likely causes: no internet access from this host, Docker Hub rate limit, or insufficient disk space. [ERROR] Try: docker pull <image:tag manually, or check 'docker info' for disk pressure. [ERROR] Image prefetch failed for: pinchflat. Aborting before compose up to give a clean error. [FAILURE] Exact command that aborted (from the ERR trap): 2026-07-15T16:13:35-06:00 rc=1 line=7348 cmd=return ${prefetchrc} 2026-07-15T16:14:15-06:00 rc=1 line=7348 cmd=return ${prefetchrc} 2026-07-15T16:14:54-06:00 rc=1 line=7348 cmd=return ${prefetchrc} [FAILURE] Full log preserved at: /volume2/sparkbox/state/install-failure-1784153694.log [FAILURE] Next steps: [FAILURE] 1. Run: /volume2/sparkbox/sparkbox doctor (finds common causes automatically) [FAILURE] 2. Fix what it reports, then run: /volume2/sparkbox/sparkbox up [FAILURE] 3. If you're still stuck, email support@tomsparkbox.com and attach /volume2/sparkbox/state/install-failure-1784153694.log Wildwood@WildwoodNas:~$
12 replies
Wildwood32 wrote:
Wildwood@WildwoodNas:~$ /volume2/sparkbox/sparkbox doctor / | | | | ) \ \| ' \ / | '| |/ / \ / \ \/ / ) | |) | (| | | | <| |) | () < |/| ./ \,|| ||\\/ \//\\ || SparkBox v1.6.358 - Self-Hosted Privacy Stack Created by Tom Spark | youtube.com/@TomSparkReviews Environment: NAS (ugreen) SparkBox Doctor Running diagnostics... [Install location] [OK] SparkBox is installed at: /volume2/sparkbox [OK] Settings file (.env): /volume2/sparkbox/.env [OK] Media library folder (MEDIAROOT): /home/Wildwood/Media [Docker] [OK] Docker daemon is accessible [OK] Docker version: Docker version 26.1.0, build 9714adc [OK] Docker Compose: 2.26.1 [Docker Socket] [OK] Docker socket exists at /var/run/docker.sock [OK] Docker socket is readable [User IDs] [INFO] Current user: Wildwood (UID=1000, GID=10) [OK] PUID=1000 (containers run as UID 1000) [OK] PGID=1000 (containers run as GID 1000) [Container Egress] [OK] Containers can reach webhook.tomsparkbox.com (license server) [Port Conflicts] [WARN] Port 53: in use by non-Docker process LISTEN 0 32 127.0.0.1:53 0.0.0.0: [WARN] Port 80: in use by non-Docker process LISTEN 0 511 0.0.0.0:80 0.0.0.0: [WARN] Port 443: in use by non-Docker process LISTEN 0 511 0.0.0.0:443 0.0.0.0: [OK] Port 8080: available [OK] Port 8443: available [OK] Port 9000: available [OK] Port 9092: available [Portainer Auth] [INFO] sb-portainer not running — skipping (run: sudo sparkbox up) [VPN Tunnel] [INFO] sb-gluetun not deployed — media stack not installed (or VPN module skipped) [Hardware Transcoding] [OK] /dev/dri exists -- GPU devices detected total 0 drwxr-xr-x 3 root root 100 Jul 15 15:57 . drwxr-xr-x 20 root root 7700 Jul 15 15:57 .. drwxr-xr-x 2 root root 80 Jul 15 15:57 by-path crw-rw---- 1 root video 226, 0 Jul 15 15:57 card0 crw-rw---- 1 root render 226, 128 Jul 15 15:57 renderD128 [OK] Intel Quick Sync / GPU render device available (renderD128) [WARN] Render device may not be accessible -- check group membership (video/render) [Media Storage] [OK] MEDIAROOT=/home/Wildwood/Media exists [OK] MEDIAROOT is writable [WARN] Your apps (user id 1000) can't READ what's in MEDIAROOT — common with media already on a UGREEN/UGOS NAS. [WARN] UGOS resets chmod — use POSIX ACLs instead (survives UGOS permission resets): [WARN] sudo setfacl -R -m u:1000:rX -d -m u:1000:rX '/home/Wildwood/Media' [WARN] chmod alone won't stick on UGOS BTRFS shares but try it first if setfacl is unavailable: [WARN] sudo chmod -R o+rX '/home/Wildwood/Media' [WARN] Guide: https://tomsparkbox.com/guides/use-existing-ugreen-media.html [INFO] Free space at MEDIAROOT: 7549GB [System Resources] [INFO] Total RAM: 7712MB [INFO] Available RAM: 5473MB [OK] RAM looks sufficient for 6 enabled modules [INFO] Free disk at SBROOT: 866GB [NAS-Specific] [INFO] NAS type: ugreen [INFO] Install directory: /volume2/sparkbox [OK] Install directory is on a data volume [Container Health] [OK] All SparkBox containers are running ============================================ 5 issue(s) found. Review warnings above and fix as needed. ============================================ Wildwood@WildwoodNas:~$
tomspark wrote:
Your doctor output is spot-on—the permission warning on MEDIAROOT is the next step to fix. Since you're on a UGREEN NAS, try the setfacl approach (it survives UGOS permission resets). Run the command from your doctor output: bash sudo setfacl -R -m u:1000:rX -d -m u:1000:rX '/home/Wildwood/Media' Then sudo sparkbox up again. If setfacl unavailable, fallback to sudo chmod -R o+rX /home/Wildwood/Media. Let me know if that clears the pinchflat pull error!
Wildwood32 wrote:
Wildwood@WildwoodNas:~$ sudo setfacl -R -m u:1000:rX -d -m u:1000:rX '/home/Wildwood/Media' Wildwood@WildwoodNas:~$ sudo sparkbox up / | | | | ) \ \| ' \ / | '| |/ / \ / \ \/ / ) | |) | (| | | | <| |) | () < |/| ./ \,|| ||\\/ \//\\ || SparkBox v1.6.358 - Self-Hosted Privacy Stack Created by Tom Spark | youtube.com/@TomSparkReviews Environment: NAS (ugreen) [INFO] Starting SparkBox... [INFO] Active modules: core dashboard immich media pinchflat tailscale [INFO] Fetching images for module: dashboard [+] Pulling 1/0 ✔ sparkbox-dashboard Skipped - No image to be pulled 0.0s [INFO] Fetching images for module: pinchflat [+] Pulling 1/1 ✘ pinchflat Error manifest unknown 0.9s Error response from daemon: manifest unknown [WARN] pull attempt 2/3 (previous attempt failed) — retrying in 10s [+] Pulling 1/1 ✘ pinchflat Error manifest unknown 0.9s Error response from daemon: manifest unknown [WARN] pull attempt 3/3 (previous attempt failed) — retrying in 15s [+] Pulling 1/1 ✘ pinchflat Error manifest unknown 0.9s Error response from daemon: manifest unknown [ERROR] Failed to pull images for module 'pinchflat' after 3 attempts. [ERROR] Likely causes: no internet access from this host, Docker Hub rate limit, or insufficient disk space. [ERROR] Try: docker pull <image:tag manually, or check 'docker info' for disk pressure. [ERROR] Image prefetch failed for: pinchflat. Aborting before compose up to give a clean error. Wildwood@WildwoodNas:~$ sudo chmod -R o+rX /home/Wildwood/Media Wildwood@WildwoodNas:~$ sudo sparkbox up / | | | | ) \ \| ' \ / | '| |/ / \ / \ \/ / ) | |) | (| | | | <| |) | () < |/| ./ \,|| ||\\/ \//\\ || SparkBox v1.6.358 - Self-Hosted Privacy Stack Created by Tom Spark | youtube.com/@TomSparkReviews Environment: NAS (ugreen) [INFO] Starting SparkBox... [INFO] Active modules: core dashboard immich media pinchflat tailscale [INFO] Fetching images for module: dashboard [+] Pulling 1/0 ✔ sparkbox-dashboard Skipped - No image to be pulled 0.0s [INFO] Fetching images for module: pinchflat [+] Pulling 1/1 ✘ pinchflat Error manifest unknown 0.9s Error response from daemon: manifest unknown [WARN] pull attempt 2/3 (previous attempt failed) — retrying in 10s [+] Pulling 1/1 ✘ pinchflat Error manifest unknown 0.9s Error response from daemon: manifest unknown [WARN] pull attempt 3/3 (previous attempt failed) — retrying in 15s [+] Pulling 1/1 ✘ pinchflat Error manifest unknown 1.1s Error response from daemon: manifest unknown [ERROR] Failed to pull images for module 'pinchflat' after 3 attempts. [ERROR] Likely causes: no internet access from this host, Docker Hub rate limit, or insufficient disk space. [ERROR] Try: docker pull <image:tag manually, or check 'docker info' for disk pressure. [ERROR] Image prefetch failed for: pinchflat. Aborting before compose up to give a clean error. Wildwood@WildwoodNas:~$
Wildwood32 wrote:
Did not clear issue,
tomspark wrote:
I see the pinchflat manifest error persists—this is usually network-related. A couple quick checks: (1) From your terminal, try pulling manually: docker pull ghcr.io/kieraneglin/pinchflat:v2025.9.26 — does that work or fail the same way? (2) Your doctor output flags ports 53/80/443 held by non-Docker processes, which can interfere with registry access. If DNS/HTTPS are blocked system-wide, Docker can't reach GitHub's registry. Try these checks and paste the manual pull output — I'll dig into this with the team.
Wildwood32 wrote:
nope, Wildwood@WildwoodNas:~$ docker pull ghcr.io/kieraneglin/pinchflat:v2025.9.26 Error response from daemon: manifest unknown Wildwood@WildwoodNas:~$
Wildwood32 wrote:
is there a way to disable it?
Wildwood32 wrote:
Willing to put the offer back on the table for testing pursposes,
Wildwood32 wrote:
Thankfully i am running Plex on a backup server.
tomspark wrote:
Really sorry for the run-around on this one! Good news: that Pinchflat error wasn't your setup at all — Pinchflat was pointing at a version its developer had since removed, so it simply couldn't download. We just pushed a fix. Update SparkBox and it'll grab the corrected version, then Pinchflat should pull fine. And to answer your question directly: yes — you can turn Pinchflat off any time from the Apps page in your dashboard if you'd rather not use it. Thanks for the detailed logs, they made this quick to track down. 🙏
Wildwood32 wrote:
Thank you Tom, back up and running smooth. Glad i was able to help with this fix.
tomspark wrote:
Glad that's sorted! And seriously, thanks for sticking with it and sharing all those logs - that's exactly what helped us catch the real bug fast. Enjoy the fully working setup!