RIP Subsonic, Hello Libresonic
Some while ago I posted a blog detailing how to install Subsonic on a Raspberry Pi 1. If you google for “subsonic raspberry pi” my blog shows up as a top search result (normally 3rd place, but even second is possible). In addition, each day I get more than one access from somewhere in the world to that blog. There is definitely interest in running Subsonic on a RP.
Subsonic now closed source
Since the last time some things have changed. I updated to a RP2 and Subsonic was updated up to 5.3. I won`t update to version 6 and beyond. The developer of Subsonic changed the license of 6.x and made it closed source. Not a big problem for you as an end user. You can still download and install Subsonic 6 as a binary without problems. The license change however makes it unclear what the future of Subsonic will be. Is it going to be premium only, forcing you to buy a license? Currently the premium features are of no interest to me. Although not having Ads in the UI would be nice. Either way, I do not want to change software (got used to it), and staying in 5.3 for the rest of my life isn`t an option too (yes, I DO update).
Moving to Libresonic
Good news: one person is offering his own fork of Subsonic since a while: Eugene E. Kashpureff Jr. Started originally to take away the license check feature of Subsonic, he started a new project based on Subsonic 5.3: Libresonic. Available on Github, the source code is freely available and continues to offer the functionality of Subsonic. Community already started to give feedback on this new software. The name is no surprise, considering LibreOffice, Libreelec and now Libresonic.
Installation
No surprises here. It`s the same procedure as with 5.x. Ensure you have the pre-requisites installed like maven, Java, Debian tools.
git clone https://github.com/Libresonic/libresonic.git cd libresonic/ mvn package mvn -P full -pl libresonic-booter -am install mvn -P full -pl libresonic-installer-debian/ -am install sudo dpkg -i ./libresonic-installer-debian/target/libresonic-*.deb
Configuration
The name of the project changed to Libresonic, and so did the location of the configuration files and executables. The conf file is now located at: /etc/default/libresonic. The name of the parameters changed too, while the values are the same. So copy over the values of the old Subsonic conf file.
LIBRESONIC_ARGS="--max-memory=150 --port=8080 --context-path=/libresonic" LIBRESONIC_USER=libresonic
To start Libresonic, it`s now /etc/init.d/libresonic and the program files are at /var/libresonic. After you have done this, you can access Libresonic again via web interface.
Uninstall Subsonic
I upgraded to EugeneKay fork some time ago when it was still Subsonic without license check. Therefore, I installed it using dpkg. The package is still installed and it won`t work nicely together with Libresonic because of sharing the same configuration (port, etc.). To uninstall your officially downloaded Subsonic DEB file, just follow the same steps.
dpkg –l subsonic
To uninstall that package:
sudo dpkg –r subsonic
This removes the package, but leaves the config files (can be seen when running dpkg –l subsonic again):
To remove also the config files:
sudo dpkg –P subsonic
The directory /var/subsonic containing some files wasn`t removed, you`ll have to do this manually.
8 Comments
Anorak · June 17, 2016 at 09:20
Nice instruction set, thank you.
Have you had any experience trying to deploy libresonic directly into Tomcat, rather than building from source?
Tobias Hofmann · July 4, 2016 at 14:32
The current installation documentation from Libresonic mentions solely the WAR on tomcat deploy option. I think that should help you. Basically, the difference should only that with the libresonic DEB package you get a wrapper for starting and stopping the application as a service.
https://github.com/Libresonic/libresonic/blob/develop/INSTALL.md
N. Rojas · August 6, 2016 at 14:10
Im trying to install in manjaro, is it the same instructions?
Tobias Hofmann · August 12, 2016 at 17:31
As long as Manjaro isn’t too far away from Debian, it should work. Also take a look into the documentation on how to install Libersonic on the GitHub site.
Mark Routledge · May 7, 2017 at 20:33
Trying to follow your excellent tutorial,
I managed to get as far as running
mvn -P full -pl libresonic-booter -am install
mvn -P full -pl libresonic-installer-debian/ -am install
But it just says it can’t find them, the mvn package command ran without error.
[INFO] Scanning for projects…
[ERROR] Could not find the selected project in the reactor: libresonic-booter -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MavenExecutionException
Any suggestions / tips?
Tobias Hofmann · May 19, 2017 at 13:54
Hi Mark,
have you followed the latest installation instructions on the Libresonic GitHub site? I am not sure if the debian installer is still fully working. Now the app is compiled for Tomcat, that should make your life easier.
SuperJames · May 11, 2017 at 15:15
I think you should edit this article, as it all seems too much focused on Linux, it may mislead people into thinking it’s Linux only, which it isn’t. Libresonic also works on Windows too, and really well. You don’t need to use TomCat as Eugene now uses Springboot. All you need to do is download the WAR file, and create a BAT file with this line in it:
java -jar libresonic.war
And as long as you have Java installed, it will run perfectly. Open your web browser and navigate to either:
http://127.0.0.1:8080
http://localhost:8080
http://MACHINENAME:8080 replacing MACHINENAME with whatever your computer’s hostname is. Mine’s Lucy, so I navigate to http://lucy:8080
It is such a perfect system. Once Eugene adds the HTML5 player from Subsonic, and adds the custom domain feature (not the Subsonic subdomain part, but the one where you could use your own full domain) it will be 100% perfect! On Windows you have a command window open constantly, but I like it as it actually provides debug info, so as a programmer, I can fix any bugs it throws up, one of which for me at the moment is APE support.
Tobias Hofmann · May 14, 2017 at 23:05
You should take into consideration when this article was written. In May 2016, there was no WAR to download, installation information was still available for basically Tomcat or Debian. When I write a new article about new version of Subsonic, this is going to be included. But this article won`t be updated, see it as a documentation of how it was one year ago.