Tried to download Adguard Home but it failes the installation. After I deleted it to try it again, but still fails. The uninstall also somehow removed my JellyFin spotlight code after setting it up within my jellyfin container. Below is the error code: Asking server to apply: enable=[adguard] disable=[(none)]... sparkbox up [0;36m / | | | | ) \ \| ' \ / | '| |/ / \ / \ \/ / ) | |) | (| | | | <| |) | () < |/| ./ \,|| ||\\/ \//\\ || [0m [1mSparkBox[0m v1.6.315 - Self-Hosted Privacy Stack Created by Tom Spark | youtube.com/@TomSparkReviews Environment: NAS (ugreen) [0;34m[INFO][0m Starting SparkBox... [0;34m[INFO][0m Active modules: adguard core dashboard media [1;33m[WARN][0m sbproxy exists but its network bridge is missing (stale after a crash) — recovering so containers can attach... [1;33m[WARN][0m The Docker network needs a daemon restart, but SparkBox is running inside a container here. [1;33m[WARN][0m Run this on the HOST: sudo systemctl restart docker && sudo sparkbox up [1;33m[WARN][0m VPNENDPOINTIP is set but VPNPROVIDER='mullvad', not 'custom'. [1;33m[WARN][0m Custom endpoints are only used when VPNPROVIDER=custom — gluetun will otherwise [1;33m[WARN][0m ignore the endpoint and connect to random mullvad servers. [1;33m[WARN][0m Set VPNPROVIDER=custom in .env (or the dashboard) to use your endpoint. Container sb-adguard Starting Error response from daemon: driver failed programming external connectivity on endpoint sb-adguard (d1872a53f12231ac67c2c3f487adbd62fc6e273f001a6d833a113b35802c4064): Error starting userland proxy: listen tcp4 0.0.0.0:53: bind: address already in use Container sb-portainer Running Container sb-npm Running Container sb-homepage Running Container sb-deunhealth Running Container sb-jellyfin-media Running Container sb-bazarr Running Container sb-gluetun Running Container sb-seerr Running Container sb-flaresolverr Running Container sb-sabnzbd Running Container sb-qbittorrent Running Container sb-sonarr Running Container sb-prowlarr Running Container sb-radarr Running Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-gluetun Healthy [SparkBox] Install exited with code 1. Your pending changes are preserved — review the log above, then Apply again (or untoggle the broken module from the apply bar at the bottom).
10 replies
tomspark wrote:
No, that's not supposed to happen — and it's a leftover from the failed installs, not anything you did. When an install dies halfway like yours did, the half-made app can get stranded, and the cleanup couldn't remove it because of the network hiccup the log warned about. That's also why those two tiles sit at "Starting (1-2 min)" forever. To clear them, paste this in the same place you ran the earlier command: sudo docker rm -f sb-adguard sb-pihole && sudo systemctl restart docker && sudo sparkbox up That removes the two stranded apps, gives the box the restart the log was asking for, and brings everything back up — success is both tiles gone from the Home page. If you want Pi-hole after that, add the line from my earlier comment first, then enable it again.
tomspark wrote:
That reset is expected, annoyingly: whenever SparkBox restarts or updates an app, it rebuilds it from a clean copy, so anything a theme guide had you add to files inside Jellyfin itself gets wiped. Your settings are kept safe though — anything pasted into Jellyfin's own Custom CSS box (Dashboard, General) survives every restart and update. So my suggestion: stick to the parts of a theme that go in that Custom CSS box, and keep the Spotlight snippet saved in a note to re-add when you want it. Proper add-ons like Media Bar do survive restarts too (add-ons live in the settings folder), so that one's worth another shot if they sort out the errors you hit. No strong pick from me on headers, sorry — mine's pretty much stock.
tomspark wrote:
Sorry it's being a pain. Those errors are coming from the Media Bar add-on itself, not from anything on your box — so there's sadly nothing on our side to fix there; if its maker patches it, it should start behaving. Honestly, stick with Spotlight since it works for you: keep the snippet saved in a note and re-add it after a restart, which only takes a minute or two once it's saved. I've also logged your ask on our list — making tweaks like that survive restarts so you wouldn't have to redo them at all. Thanks for the nudge.
Makkerheineken wrote:
Intressting Pi Hole Also fails the installation: Asking server to apply: enable=[pihole] disable=[(none)]... sparkbox up [0;36m / | | | | ) \ \| ' \ / | '| |/ / \ / \ \/ / ) | |) | (| | | | <| |) | () < |/| ./ \,|| ||\\/ \//\\ || [0m [1mSparkBox[0m v1.6.315 - Self-Hosted Privacy Stack Created by Tom Spark | youtube.com/@TomSparkReviews Environment: NAS (ugreen) [0;34m[INFO][0m Starting SparkBox... [0;34m[INFO][0m Active modules: core dashboard media pihole [1;33m[WARN][0m sbproxy exists but its network bridge is missing (stale after a crash) — recovering so containers can attach... [1;33m[WARN][0m The Docker network needs a daemon restart, but SparkBox is running inside a container here. [1;33m[WARN][0m Run this on the HOST: sudo systemctl restart docker && sudo sparkbox up [0;34m[INFO][0m Fetching images for module: pihole pihole Pulling 6a0ac1617861 Already exists 32541f6a2593 Pulling fs layer 4f4fb700ef54 Pulling fs layer 837861debe49 Pulling fs layer 7b22a96fc52d Pulling fs layer 40fe504a409e Pulling fs layer c43bf4871843 Pulling fs layer 7f1e04d96f21 Pulling fs layer 4207422c37a0 Pulling fs layer 689087e4fc76 Pulling fs layer 6f6c81108f8b Pulling fs layer 7b22a96fc52d Waiting 40fe504a409e Waiting c43bf4871843 Waiting 7f1e04d96f21 Waiting 4207422c37a0 Waiting 689087e4fc76 Waiting 6f6c81108f8b Waiting 4f4fb700ef54 Downloading [==================================================] 32B/32B 4f4fb700ef54 Verifying Checksum 4f4fb700ef54 Download complete 837861debe49 Downloading [ ] 16.38kB/1.38MB 32541f6a2593 Downloading [ ] 206.5kB/19.96MB 837861debe49 Verifying Checksum 837861debe49 Download complete 32541f6a2593 Downloading [========== ] 4.121MB/19.96MB 32541f6a2593 Downloading [====================== ] 9.126MB/19.96MB 32541f6a2593 Downloading [=================================== ] 14.13MB/19.96MB 7b22a96fc52d Downloading [==================================================] 236B/236B 7b22a96fc52d Verifying Checksum 7b22a96fc52d Download complete 32541f6a2593 Downloading [=============================================== ] 19.15MB/19.96MB 32541f6a2593 Download complete 32541f6a2593 Extracting [ ] 229.4kB/19.96MB 40fe504a409e Downloading [============================================= ] 16.38kB/18.01kB 40fe504a409e Downloading [==================================================] 18.01kB/18.01kB 40fe504a409e Verifying Checksum 40fe504a409e Download complete 32541f6a2593 Extracting [====== ] 2.523MB/19.96MB 32541f6a2593 Extracting [============= ] 5.505MB/19.96MB c43bf4871843 Downloading [ ] 49.15kB/4.638MB 32541f6a2593 Extracting [==================== ] 8.028MB/19.96MB 7f1e04d96f21 Downloading [=============== ] 16.38kB/53.17kB 7f1e04d96f21 Downloading [==================================================] 53.17kB/53.17kB 7f1e04d96f21 Download complete 4207422c37a0 Downloading [=========================================== ] 3.501kB/4.033kB 4207422c37a0 Downloading [==================================================] 4.033kB/4.033kB 4207422c37a0 Verifying Checksum 4207422c37a0 Download complete c43bf4871843 Downloading [================================ ] 2.971MB/4.638MB 32541f6a2593 Extracting [========================= ] 10.32MB/19.96MB c43bf4871843 Verifying Checksum c43bf4871843 Download complete 32541f6a2593 Extracting [=============================== ] 12.62MB/19.96MB 32541f6a2593 Extracting [====================================== ] 15.37MB/19.96MB 689087e4fc76 Downloading [==================================================] 2.161kB/2.161kB 689087e4fc76 Verifying Checksum 689087e4fc76 Download complete 32541f6a2593 Extracting [============================================ ] 17.89MB/19.96MB 6f6c81108f8b Downloading [ ] 129.8kB/12.32MB 6f6c81108f8b Downloading [================= ] 4.311MB/12.32MB 32541f6a2593 Extracting [================================================= ] 19.73MB/19.96MB 6f6c81108f8b Downloading [===================================== ] 9.23MB/12.32MB 6f6c81108f8b Downloading [==================================================] 12.32MB/12.32MB 6f6c81108f8b Verifying Checksum 6f6c81108f8b Download complete 32541f6a2593 Extracting [================================================= ] 19.96MB/19.96MB 32541f6a2593 Extracting [==================================================] 19.96MB/19.96MB 32541f6a2593 Pull complete 4f4fb700ef54 Extracting [==================================================] 32B/32B 4f4fb700ef54 Extracting [==================================================] 32B/32B 4f4fb700ef54 Pull complete 837861debe49 Extracting [= ] 32.77kB/1.38MB 837861debe49 Extracting [==================================================] 1.38MB/1.38MB 837861debe49 Pull complete 7b22a96fc52d Extracting [==================================================] 236B/236B 7b22a96fc52d Extracting [==================================================] 236B/236B 7b22a96fc52d Pull complete 40fe504a409e Extracting [==================================================] 18.01kB/18.01kB 40fe504a409e Extracting [==================================================] 18.01kB/18.01kB 40fe504a409e Pull complete c43bf4871843 Extracting [ ] 65.54kB/4.638MB c43bf4871843 Extracting [============================== ] 2.818MB/4.638MB c43bf4871843 Extracting [==================================================] 4.638MB/4.638MB c43bf4871843 Extracting [==================================================] 4.638MB/4.638MB c43bf4871843 Pull complete 7f1e04d96f21 Extracting [============================== ] 32.77kB/53.17kB 7f1e04d96f21 Extracting [==================================================] 53.17kB/53.17kB 7f1e04d96f21 Extracting [==================================================] 53.17kB/53.17kB 7f1e04d96f21 Pull complete 4207422c37a0 Extracting [==================================================] 4.033kB/4.033kB 4207422c37a0 Extracting [==================================================] 4.033kB/4.033kB 4207422c37a0 Pull complete 689087e4fc76 Extracting [==================================================] 2.161kB/2.161kB 689087e4fc76 Extracting [==================================================] 2.161kB/2.161kB 689087e4fc76 Pull complete 6f6c81108f8b Extracting [ ] 131.1kB/12.32MB 6f6c81108f8b Extracting [=========== ] 2.884MB/12.32MB 6f6c81108f8b Extracting [======================== ] 6.029MB/12.32MB 6f6c81108f8b Extracting [==================================== ] 8.913MB/12.32MB 6f6c81108f8b Extracting [=============================================== ] 11.67MB/12.32MB 6f6c81108f8b Extracting [==================================================] 12.32MB/12.32MB 6f6c81108f8b Pull complete pihole Pulled [0;32m[OK][0m All required images present. [1;33m[WARN][0m VPNENDPOINTIP is set but VPNPROVIDER='mullvad', not 'custom'. [1;33m[WARN][0m Custom endpoints are only used when VPNPROVIDER=custom — gluetun will otherwise [1;33m[WARN][0m ignore the endpoint and connect to random mullvad servers. [1;33m[WARN][0m Set VPNPROVIDER=custom in .env (or the dashboard) to use your endpoint. Container sb-homepage Running Container sb-portainer Running Container sb-npm Running Container sb-jellyfin-media Running Container sb-bazarr Running Container sb-gluetun Running Container sb-deunhealth Running Container sb-flaresolverr Running Container sb-qbittorrent Running Container sb-sonarr Running Container sb-seerr Running Container sb-prowlarr Running Container sb-radarr Running Container sb-sabnzbd Running Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Waiting Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-gluetun Healthy Container sb-pihole Creating Container sb-pihole Created Container sb-pihole Starting Error response from daemon: driver failed programming external connectivity on endpoint sb-pihole (f6547b76f7269e620e91b772b581911d09016d278f2bd126d39b198e484275fa): Error starting userland proxy: listen tcp4 0.0.0.0:53: bind: address already in use [SparkBox] Install exited with code 1. Your pending changes are preserved — review the log above, then Apply again (or untoggle the broken module from the apply bar at the bottom).
tomspark wrote:
Good find — Pi-hole and AdGuard are failing for the exact same reason, and it's a known one on NAS boxes: the NAS itself already runs a small address-lookup (DNS) service on port 53, and the ad-blocker needs that exact port. Nothing you did wrong. Another user on the same NAS fixed it by telling Pi-hole to use the box's network address only. SSH in, type hostname -I, and note the address that starts with 192.168. Then paste this with your address swapped in (keep the colon at the end): echo "PIHOLEDNSBIND=192.168.1.42:" | sudo tee -a /opt/sparkbox/.env Then enable Pi-hole from the dashboard again and it should come up green. AdGuard doesn't have that setting yet, so go with Pi-hole for now — a proper fix is on the list. On your Jellyfin spotlight code: applying changes rebuilds apps from a clean copy, so anything pasted inside the app itself gets wiped. Keep the snippet saved somewhere so you can re-add it.
Makkerheineken wrote:
Oh yea the deleted Container/Apps are still trying to be started even after a restart of SparkBox. Is this what is supposed to happen?
Makkerheineken wrote:
Workes now 👍, thanks. What kind of media header / bar do you use Tom? I was using Spotlight from the abyss-jellyfin theme: https://aumgupta.github.io/abyss-jellyfin/ https://github.com/AumGupta/abyss-jellyfin/blob/main/SETUP.mdmanual-setup But this gets removed/reset every time I do a full restart. Maybe you have a suggestion for a better one that workes, tried Media Bar but that one was giving css error issues.
Makkerheineken wrote:
Sadly media bar does not work correctly. I get a lot of error codes on my screen that why I was using spotlight, cause that was working for me
tomspark wrote:
Media Bar's CSS errors are known and annoying — stick with what works for you. Your Spotlight snippet approach is rock solid: keep it saved in a notes file, paste it into Jellyfin's Custom CSS box (Dashboard General), and you're good until the next restart. That Custom CSS box is the only place that survives updates, so it's the safest bet for theme tweaks. Once Media Bar's plugin system gets more stable, it might become worth another shot, but for now Spotlight in Custom CSS is the way.
Chris wrote:
Closing the loop on this properly: that fix shipped today in v1.6.452, and your report is what it was built from. AdGuard now has the same bind knob Pi-hole always had, so it can finally come up on a UGREEN box. Over SSH: sudo sparkbox upgrade hostname -I echo "ADGUARDDNSBIND=192.168.1.42:" | sudo tee -a /opt/sparkbox/.env Swap in your own 192.168 address and keep the trailing colon. If that line already exists, edit it rather than adding a second. Then enable AdGuard from the dashboard. One catch worth knowing first: AdGuard and Pi-hole both want port 53, so switch Pi-hole off before enabling AdGuard — they can't share the address.