Various cleanup
This commit is contained in:
+5
-5
@@ -10,19 +10,19 @@ lms_cssdir=$(lms_docrootdir)/css
|
||||
lms_jsdir=$(lms_docrootdir)/js
|
||||
lms_imagesdir=$(lms_approotdir)/images
|
||||
|
||||
lms_css_DATA = \
|
||||
dist_lms_css_DATA = \
|
||||
docroot/css/lms.css
|
||||
|
||||
lms_js_DATA = \
|
||||
dist_lms_js_DATA = \
|
||||
docroot/js/bootstrap-notify.js \
|
||||
docroot/js/jquery-1.10.2.min.js \
|
||||
docroot/js/mediaplayer.js
|
||||
|
||||
lms_images_DATA = \
|
||||
dist_lms_images_DATA = \
|
||||
approot/images/unknown-cover.jpg \
|
||||
approot/images/unknown-artist.jpg
|
||||
|
||||
lms_approot_DATA = \
|
||||
dist_lms_approot_DATA = \
|
||||
approot/admin-database.xml \
|
||||
approot/admin-user.xml \
|
||||
approot/admin-users.xml \
|
||||
@@ -49,6 +49,6 @@ lms_approot_DATA = \
|
||||
approot/tracks.xml \
|
||||
approot/tracksinfo.xml
|
||||
|
||||
sysconf_DATA = \
|
||||
dist_sysconf_DATA = \
|
||||
$(top_srcdir)/conf/lms.conf
|
||||
|
||||
|
||||
@@ -5,12 +5,13 @@ LMS is a self-hosted music streaming software: access your music files from anyw
|
||||
A [demo](http://lms.demo.poupon.io) instance is available, with the following limitations:
|
||||
- Settings cannot be saved
|
||||
- No persistent playqueue
|
||||
- No administration panel
|
||||
|
||||
## Main features
|
||||
- Persistent play queue across sessions
|
||||
- User management
|
||||
- Recommendation engine
|
||||
- Audio transcode for maximum interoperability and low bandwith requirements
|
||||
- Persistent play queue across sessions
|
||||
- Subsonic API
|
||||
- Multi-value tags
|
||||
- Custom tag support (ex: "mood", "genre", "albummood", "albumgrouping", ...)
|
||||
@@ -28,7 +29,7 @@ LMS provides several ways to help you find the music you like:
|
||||
The recommendation engine makes use of [Self-Organizing Maps](https://en.wikipedia.org/wiki/Self-organizing_map).</br>
|
||||
Please note this engine:
|
||||
- may require some significant computation time on very large datasets
|
||||
- makes use of computed data available on [AcousticBrainz](https://acousticbrainz.org/). Therefore your music must contain the [MusicBrainz Identifier](https://musicbrainz.org/doc/MusicBrainz_Identifier) for the recommendation engine to work properly
|
||||
- makes use of computed data available on [AcousticBrainz](https://acousticbrainz.org/). Therefore your music must contain the [MusicBrainz Identifier](https://musicbrainz.org/doc/MusicBrainz_Identifier) for the recommendation engine to work properly (otherwise, only tag-based recommendations are provided)
|
||||
|
||||
## Subsonic API
|
||||
For now, the API version implemented is 1.12.0 and has been tested on Android using the official application, Ultrasonic and DSub.
|
||||
@@ -38,7 +39,7 @@ As LMS does not aim to implement all the features of Subsonic, some commands are
|
||||
The Subsonic API is enabled by default.
|
||||
|
||||
## Installation
|
||||
Here are the required packages to build on Debian Stretch:
|
||||
Here are the required packages to build LMS on Debian Stretch:
|
||||
```sh
|
||||
apt-get install g++ autoconf automake libboost-filesystem-dev libboost-system-dev libavcodec-dev libavutil-dev libavformat-dev libav-tools libmagick++-dev libpstreams-dev libconfig++-dev libpstreams-dev ffmpeg libtag1-dev
|
||||
```
|
||||
@@ -94,7 +95,7 @@ server {
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
proxy_pass http://localhost:5091;
|
||||
proxy_pass http://localhost:5082;
|
||||
proxy_read_timeout 120;
|
||||
}
|
||||
}
|
||||
|
||||
+69
-1
@@ -2,67 +2,135 @@ bin_PROGRAMS = lms
|
||||
|
||||
lms_SOURCES = \
|
||||
$(srcdir)/api/subsonic/SubsonicId.cpp \
|
||||
$(srcdir)/api/subsonic/SubsonicId.hpp \
|
||||
$(srcdir)/api/subsonic/SubsonicResource.cpp \
|
||||
$(srcdir)/api/subsonic/SubsonicResource.hpp \
|
||||
$(srcdir)/api/subsonic/SubsonicResponse.cpp \
|
||||
$(srcdir)/api/subsonic/SubsonicResponse.hpp \
|
||||
$(srcdir)/av/AvInfo.cpp \
|
||||
$(srcdir)/av/AvInfo.hpp \
|
||||
$(srcdir)/av/AvTranscoder.cpp \
|
||||
$(srcdir)/av/AvTranscoder.hpp \
|
||||
$(srcdir)/cover/CoverArtGrabber.cpp \
|
||||
$(srcdir)/cover/CoverArtGrabber.hpp \
|
||||
$(srcdir)/database/Artist.cpp \
|
||||
$(srcdir)/database/Artist.hpp \
|
||||
$(srcdir)/database/Cluster.cpp \
|
||||
$(srcdir)/database/Cluster.hpp \
|
||||
$(srcdir)/database/DatabaseHandler.cpp \
|
||||
$(srcdir)/database/DatabaseHandler.hpp \
|
||||
$(srcdir)/database/TrackFeatures.cpp \
|
||||
$(srcdir)/database/TrackFeatures.hpp \
|
||||
$(srcdir)/database/TrackList.cpp \
|
||||
$(srcdir)/database/TrackList.hpp \
|
||||
$(srcdir)/database/Types.hpp \
|
||||
$(srcdir)/database/Release.cpp \
|
||||
$(srcdir)/database/Release.hpp \
|
||||
$(srcdir)/database/ScanSettings.cpp \
|
||||
$(srcdir)/database/ScanSettings.hpp \
|
||||
$(srcdir)/database/SimilaritySettings.cpp \
|
||||
$(srcdir)/database/SimilaritySettings.hpp \
|
||||
$(srcdir)/database/SqlQuery.cpp \
|
||||
$(srcdir)/database/SqlQuery.hpp \
|
||||
$(srcdir)/database/Track.cpp \
|
||||
$(srcdir)/database/Track.hpp \
|
||||
$(srcdir)/database/User.cpp \
|
||||
$(srcdir)/database/User.hpp \
|
||||
$(srcdir)/image/Image.cpp \
|
||||
$(srcdir)/image/Image.hpp \
|
||||
$(srcdir)/main/main.cpp \
|
||||
$(srcdir)/main/Service.hpp \
|
||||
$(srcdir)/metadata/AvFormat.cpp \
|
||||
$(srcdir)/metadata/AvFormat.hpp \
|
||||
$(srcdir)/metadata/MetaData.hpp \
|
||||
$(srcdir)/metadata/TagLibParser.cpp \
|
||||
$(srcdir)/metadata/TagLibParser.hpp \
|
||||
$(srcdir)/scanner/MediaScanner.cpp \
|
||||
$(srcdir)/scanner/MediaScanner.hpp \
|
||||
$(srcdir)/scanner/MediaScannerAddon.hpp \
|
||||
$(srcdir)/similarity/SimilaritySearcher.cpp \
|
||||
$(srcdir)/similarity/SimilaritySearcher.hpp \
|
||||
$(srcdir)/similarity/cluster/SimilarityClusterSearcher.cpp \
|
||||
$(srcdir)/similarity/cluster/SimilarityClusterSearcher.hpp \
|
||||
$(srcdir)/similarity/features/AcousticBrainzUtils.cpp \
|
||||
$(srcdir)/similarity/features/AcousticBrainzUtils.hpp \
|
||||
$(srcdir)/similarity/features/SimilarityFeaturesCache.cpp \
|
||||
$(srcdir)/similarity/features/SimilarityFeaturesCache.hpp \
|
||||
$(srcdir)/similarity/features/SimilarityFeaturesScannerAddon.cpp \
|
||||
$(srcdir)/similarity/features/SimilarityFeaturesScannerAddon.hpp \
|
||||
$(srcdir)/similarity/features/SimilarityFeaturesSearcher.cpp \
|
||||
$(srcdir)/similarity/features/SimilarityFeaturesSearcher.hpp \
|
||||
$(srcdir)/similarity/features/som/DataNormalizer.cpp \
|
||||
$(srcdir)/similarity/features/som/DataNormalizer.hpp \
|
||||
$(srcdir)/similarity/features/som/InputVector.hpp \
|
||||
$(srcdir)/similarity/features/som/Matrix.hpp \
|
||||
$(srcdir)/similarity/features/som/Network.cpp \
|
||||
$(srcdir)/similarity/features/som/Network.hpp \
|
||||
$(srcdir)/ui/Auth.cpp \
|
||||
$(srcdir)/ui/Auth.hpp \
|
||||
$(srcdir)/ui/LmsApplication.cpp \
|
||||
$(srcdir)/ui/LmsApplication.hpp \
|
||||
$(srcdir)/ui/LmsApplicationGroup.cpp \
|
||||
$(srcdir)/ui/LmsApplicationGroup.hpp \
|
||||
$(srcdir)/ui/MediaPlayer.cpp \
|
||||
$(srcdir)/ui/MediaPlayer.hpp \
|
||||
$(srcdir)/ui/PlayQueueView.cpp \
|
||||
$(srcdir)/ui/PlayQueueView.hpp \
|
||||
$(srcdir)/ui/PlayHistoryView.cpp \
|
||||
$(srcdir)/ui/PlayHistoryView.hpp \
|
||||
$(srcdir)/ui/SettingsView.cpp \
|
||||
$(srcdir)/ui/SettingsView.hpp \
|
||||
$(srcdir)/ui/admin/DatabaseSettingsView.cpp \
|
||||
$(srcdir)/ui/admin/DatabaseSettingsView.hpp \
|
||||
$(srcdir)/ui/admin/InitWizardView.cpp \
|
||||
$(srcdir)/ui/admin/InitWizardView.hpp \
|
||||
$(srcdir)/ui/admin/UserView.cpp \
|
||||
$(srcdir)/ui/admin/UserView.hpp \
|
||||
$(srcdir)/ui/admin/UsersView.cpp \
|
||||
$(srcdir)/ui/admin/UsersView.hpp \
|
||||
$(srcdir)/ui/common/Validators.cpp \
|
||||
$(srcdir)/ui/common/Validators.hpp \
|
||||
$(srcdir)/ui/explore/ArtistInfoView.cpp \
|
||||
$(srcdir)/ui/explore/ArtistInfoView.hpp \
|
||||
$(srcdir)/ui/explore/ArtistLink.cpp \
|
||||
$(srcdir)/ui/explore/ArtistLink.hpp \
|
||||
$(srcdir)/ui/explore/ArtistsInfoView.cpp \
|
||||
$(srcdir)/ui/explore/ArtistsInfoView.hpp \
|
||||
$(srcdir)/ui/explore/ArtistView.cpp \
|
||||
$(srcdir)/ui/explore/ArtistView.hpp \
|
||||
$(srcdir)/ui/explore/ArtistsView.cpp \
|
||||
$(srcdir)/ui/explore/ArtistsView.hpp \
|
||||
$(srcdir)/ui/explore/Explore.cpp \
|
||||
$(srcdir)/ui/explore/Explore.hpp \
|
||||
$(srcdir)/ui/explore/Filters.cpp \
|
||||
$(srcdir)/ui/explore/Filters.hpp \
|
||||
$(srcdir)/ui/explore/ReleaseInfoView.cpp \
|
||||
$(srcdir)/ui/explore/ReleaseInfoView.hpp \
|
||||
$(srcdir)/ui/explore/ReleaseLink.cpp \
|
||||
$(srcdir)/ui/explore/ReleaseLink.hpp \
|
||||
$(srcdir)/ui/explore/ReleasesInfoView.cpp \
|
||||
$(srcdir)/ui/explore/ReleasesInfoView.hpp \
|
||||
$(srcdir)/ui/explore/ReleasesView.cpp \
|
||||
$(srcdir)/ui/explore/ReleasesView.hpp \
|
||||
$(srcdir)/ui/explore/ReleaseView.cpp \
|
||||
$(srcdir)/ui/explore/ReleaseView.hpp \
|
||||
$(srcdir)/ui/explore/TracksInfoView.cpp \
|
||||
$(srcdir)/ui/explore/TracksInfoView.hpp \
|
||||
$(srcdir)/ui/explore/TracksView.cpp \
|
||||
$(srcdir)/ui/explore/TracksView.hpp \
|
||||
$(srcdir)/ui/resource/ImageResource.cpp \
|
||||
$(srcdir)/ui/resource/ImageResource.hpp \
|
||||
$(srcdir)/ui/resource/AudioResource.cpp \
|
||||
$(srcdir)/ui/resource/AudioResource.hpp \
|
||||
$(srcdir)/utils/Config.cpp \
|
||||
$(srcdir)/utils/Config.hpp \
|
||||
$(srcdir)/utils/Exception.hpp \
|
||||
$(srcdir)/utils/Logger.cpp \
|
||||
$(srcdir)/utils/Logger.hpp \
|
||||
$(srcdir)/utils/Path.cpp \
|
||||
$(srcdir)/utils/Utils.cpp
|
||||
$(srcdir)/utils/Path.hpp \
|
||||
$(srcdir)/utils/Utils.cpp \
|
||||
$(srcdir)/utils/Utils.hpp
|
||||
|
||||
lms_CXXFLAGS=-std=c++14 -Wall -I$(srcdir)/ui $(MAGICKXX_CFLAGS) -D_REENTRANT
|
||||
lms_LDADD=$(MAGICKXX_LIBS)
|
||||
|
||||
+2
-2
@@ -51,7 +51,7 @@ std::vector<std::string> generateWtConfig(std::string execPath)
|
||||
|
||||
if (Config::instance().getBool("tls-enable", false))
|
||||
{
|
||||
args.push_back("--https-port=" + std::to_string( Config::instance().getULong("listen-port", 5081)));
|
||||
args.push_back("--https-port=" + std::to_string( Config::instance().getULong("listen-port", 5082)));
|
||||
args.push_back("--https-address=" + Config::instance().getString("listen-addr", "0.0.0.0"));
|
||||
args.push_back("--ssl-certificate=" + Config::instance().getString("tls-cert"));
|
||||
args.push_back("--ssl-private-key=" + Config::instance().getString("tls-key"));
|
||||
@@ -59,7 +59,7 @@ std::vector<std::string> generateWtConfig(std::string execPath)
|
||||
}
|
||||
else
|
||||
{
|
||||
args.push_back("--http-port=" + std::to_string( Config::instance().getULong("listen-port", 5081)));
|
||||
args.push_back("--http-port=" + std::to_string( Config::instance().getULong("listen-port", 5082)));
|
||||
args.push_back("--http-address=" + Config::instance().getString("listen-addr", "0.0.0.0"));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user