ironsmile / euterpe

Self-hosted music streaming server 🎶 with RESTful API and Web interface. Think of it as your very own Spotify! ☁️🎧
https://listen-to-euterpe.eu
GNU General Public License v3.0
522 stars 42 forks source link

Help to setup the dev environment #35

Closed emilchacko closed 2 years ago

emilchacko commented 2 years ago

I would appreciate if you could please help me on how to setup the dev environment for this project.I would like to tinker a bit with the project to learn.

ironsmile commented 2 years ago

Well, basically you need Go, taglib and libicu as explained in the README. Maybe upx too if you want to produce a compressed build like the ones in the release page. From these only taglib is strictly required since you could build the sqlite lib without ICU support which will make it a bit awkward with non-ascii media tags. But everything else will work.

For Go you should consult their download page. Euterpe requires v1.16 or later.

And the rest for a Debian based Linux distributions it is as easy as running to following:

apt-get install upx-ucl libicu-dev libtagc0-dev pkg-config

For macOS I use brew to get the dependencies:

brew install libtag upx pkg-config icu4c

And that's it. You're good to go. If you are having trouble you could consult the Euterpe's GitHub action for building a release binary or the Dockerfile. Both of them show reproducible setting up of a full dev environment for building Euterpe.

ironsmile commented 2 years ago

I will assume the above answer was enough and close the issue. I might add all of this to the website docs too.