Skip to content

Instantly share code, notes, and snippets.

@txoof
Last active January 14, 2025 17:48
Show Gist options
  • Save txoof/7174f3f06742158174af6e80eaea2c9b to your computer and use it in GitHub Desktop.
Save txoof/7174f3f06742158174af6e80eaea2c9b to your computer and use it in GitHub Desktop.
Install SpoCon on BookWorm and Later if Installer Fails

Installer Failure Modes

Failure: Unmet Dependendencies

Open JDK 8, 11 are unavailable for Bookworm and later

The following packages have unmet dependencies:
 spocon : Depends: openjdk-11-jre but it is not installable or
                   openjdk-8-jre but it is not installable

Resolution:

SpoCon is pinned to JDK 8, 11, but will work with open JDK 17. The dependencies can be manually updated.

  1. Run the installer script to setup the PPA keys: curl -sL https://spocon.github.io/spocon/install.sh | sh
  2. Download the spocon package manually: apt download spocon
  3. Make a temporary directory to unpack the .deb package: mkdir temp
  4. Unpack the .deb: dpkg-deb -R spcoon_your_version.deb temp
  5. Edit ./temp/DEBIAN/control and change the dependencies to add JDK 17 Depends: libasound2, adduser, openjdk-11-jre | openjdk-8-jre | openjdk-17-jre
  6. Repackage the .deb: dpkg-deb -b ./temp spocon_fixed.deb
  7. Install: sudo apt install ./spocon_fixed.deb
  8. Set the volume in /opt/spocon/config.toml
[player]
        # ...
        # Initial volume (0-65536) 10993 is 1/6 max
        initialVolume = 10993
        # ...
        # Number of volume notches
        volumeSteps = 32
  1. Restart spocon/librespot sudo systemctl restart spocon.service
@floodwayprintco
Copy link

Hi there, I am trying to do this but I had a ton of trouble so I'm leaving this here to help someone in the future.

Unpack the .deb: dpkg-deb -R spcoon_your_version.deb temp

In my case the .deb was in my Pi folder and it was spocon_1.6.3_arm64.deb

For step 5, all the other ones had copy/paste command, so this one could too.
sudo nano ./temp/DEBIAN/control

I was able to get it though, so this fix does work! Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment