Commit Graph

176 Commits

Author SHA1 Message Date
Deluan 74cf0ee1c1 Create Data Folder if it does not exist 2020-07-12 12:36:08 -04:00
Deluan 7c3fd38559 Add option to change IP address to bind 2020-07-08 20:54:56 -04:00
Deluan 1cc03fdd8c Add initial support for Google Analytics 2020-07-03 13:51:31 -04:00
Deluan dd91f983b5 Add new config option to show a custom welcome message in the login screen 2020-07-03 11:51:15 -04:00
Deluan 8181aba61f Clean up a bit 2020-07-03 10:19:44 -04:00
Deluan 2d0539300d Exit if specified config file is not present 2020-07-03 10:10:49 -04:00
Deluan 6954e1b4eb Fix linting error 2020-07-03 09:46:58 -04:00
Deluan ef9af6ed1a Don't fail if config file isnot found 2020-07-03 09:39:28 -04:00
Deluan 99e269208e Fix lint errors 2020-07-02 18:17:31 -04:00
Deluan a65c9bbb16 Refactor and clean up 2020-07-02 17:53:51 -04:00
Deluan d2e4cade62 Change duration config types 2020-07-02 17:53:51 -04:00
Deluan 5021c0fd0c Replace multiconfig with cobra+viper 2020-07-02 17:53:51 -04:00
Deluan 2371e9b943 Add option to set jpeg quality level. Closes #371 2020-06-29 17:20:38 -04:00
Alex Palaistras 08cd28af2d Load cover art from file directory
This commit adds support for loading cover art from media file
directories, according to configured filename priorities (of which an
additional, special choice of `embedded` is given).

Cover art paths are resolved during scanning and stored in the database
as part of the `album.cover_art_path` column; if embedded cover art is
matched, this will default to the path of the media file itself, and if
no cover art is matched at all.

Similarly, the `album.cover_art_id` column will default to a reference
to `media_file.id` if embedded cover art is wanted, but if an external
cover art file is matched, this will instead be set to a reference to
the `album.id` value itself, prefixed with the `al-` constant.

Stored cover art paths are once again resolved and matched against
configuration when covers are requested; that is, any change in
configuration between scanning and requesting cover art may not return
correct data until a re-scan is complete.

Tests will be added in future commits.
2020-06-24 20:48:42 -04:00
Deluan c742ae0843 Remove unused feature toggles 2020-06-11 22:11:59 -04:00
Deluan 7547888f10 Change default session timeout to 24h 2020-05-30 10:34:16 -04:00
Deluan 1bca8fca97 Enable UI starred by default 2020-05-23 01:07:34 -04:00
Deluan 8a68cecdb9 Add ToggleStar to SongContextMenu (WIP) 2020-05-22 15:23:42 -04:00
Deluan 41010515ee Enable Playlist Management in the UI by default 2020-05-16 19:16:48 -04:00
Deluan f881e2a54b Add option to enable (experimental) playlists in UI 2020-05-16 18:35:34 -04:00
Deluan 4b70cc52d6 Reduce log level of config file being used 2020-05-03 14:09:31 -04:00
Deluan cccd0235cf Add option to specify ConfigFile path 2020-05-02 23:17:38 -04:00
Deluan c816ca4525 Add config option to enable/disable Transcoding configuration 2020-04-29 21:59:05 -04:00
jvoisin 04eb421186 Refactor a bit how ffmpeg is used to get metadata
- createProbeCommand returns a []string instead of (string, string[])
- Simplify the loop of createProbeCommand
2020-04-11 13:08:21 -04:00
Deluan db246900a6 Introduce a new configuration to select the login background image URL 2020-04-08 09:07:15 -04:00
Deluan 1bc68c20fc Create and configure image cache 2020-04-05 22:02:06 -04:00
Deluan 75cd21da1f Add BaseURL configuration (fixes #103) 2020-04-03 19:05:38 -04:00
Deluan 15606770ca chore: removed non-working config flag 2020-03-22 01:13:55 -04:00
Deluan 0d8a2b310f fix: the default session timeout must be 30 minutes, not seconds! 2020-03-21 12:17:20 -04:00
Deluan c8cd755451 feat: use human readable sizes in cache size configuration 2020-03-18 20:39:10 -04:00
Deluan faac303eff feat: allow session timeout to be configurable. closes #101 2020-03-18 20:16:18 -04:00
Deluan e02f3d3ec9 refactor: clean up unused config options 2020-03-17 15:20:35 -04:00
Deluan 1d886156d5 feat: better SQLite3 configuration, to avoid DB contention 2020-02-28 15:06:31 -05:00
Deluan 876354e58e feat: MaxTranscodingCacheSize is now specified in MB 2020-02-26 14:08:14 -05:00
Deluan a6b0c57ce0 feat: add a proper caching system to the transcoding functionality 2020-02-20 19:25:39 -05:00
Deluan 2c146ea1fe feat: add option to auto-create admin user on first start-up
Useful for development purposes
2020-02-08 14:50:33 -05:00
Deluan 6e2454f6cc refactor: add -i to ffmpeg ProbeCommand. make it more consistent with the DownsampleCommand 2020-02-03 23:04:58 -05:00
Deluan 8372dee000 feat: experimental downsampling support 2020-02-03 22:53:57 -05:00
Deluan d389d40db1 feat: improve logs, remove config for disable authentication 2020-02-01 17:23:03 -05:00
Deluan 90a1e6d213 feat: add server name and version to all responses
This is inline with other Subsonic compatible servers, like funkwhale, madsonic, ampache...
2020-01-30 14:43:24 -05:00
Deluan ac4aa1ebe2 feat: PORT env var can override configured port 2020-01-26 22:18:30 -05:00
Deluan 4e3b13050b fix: tests 2020-01-26 18:25:12 -05:00
Deluan cc6eacd608 fix: option to skip flags, to avoid breaking the tests 2020-01-26 18:00:10 -05:00
Deluan 7c2728aadc fix: only try to load config file if it exists, or else it would not load any config at all... 2020-01-26 17:09:08 -05:00
Deluan f9db80c409 feat: add conf for data folder, default current folder (not ./data anymore) 2020-01-26 16:42:56 -05:00
Deluan 828dc8f0f4 feat: add -help, simplified config loading 2020-01-26 16:21:07 -05:00
Deluan 684932217e Disable loading config from flags, as it was not behaving correctly 2020-01-24 01:36:22 -05:00
Deluan bff6f3a4bd Rename env vars prefix to ND_ 2020-01-24 01:29:31 -05:00
Deluan 137a20dd9e Change default scan interval to 1 minute 2020-01-23 22:53:19 -05:00
Deluan bee55c04c8 Rename project to Navidrome 2020-01-23 19:44:08 -05:00
Deluan 182c0b5d5e Add configuration for scan interval. Default 5 mins 2020-01-22 08:48:02 -05:00
Deluan f0ee41a8af Add context to all methods in engine layer 2020-01-22 08:39:57 -05:00
Deluan c42e1bd2f5 Extract metadata from files in a directory in batch (one call to ffmpeg for all files) 2020-01-21 07:50:30 -05:00
Deluan 7529ae3752 Extract metadata with `ffmpeg` 2020-01-20 22:32:40 -05:00
Deluan 28cd3ec3e4 Fix startup order, setting LogLevel 2020-01-20 17:35:04 -05:00
Deluan 99c28731d4 Authenticate Subsonic API calls using the DB 2020-01-20 13:42:43 -05:00
Deluan 491bfb1f69 Create initial user if User table is empty. Also make model.QueryOptions compatible with rest.QueryOptions 2020-01-19 22:47:22 -05:00
Deluan 67eeb218c4 Big Refactor:
- Create model.DataStore, with provision for transactions
- Change all layers dependencies on repositories to use DataStore
- Implemented persistence.SQLStore
- Removed iTunes Bridge/Importer support
2020-01-19 16:28:09 -05:00
Deluan 123f543a94 New Folder Scanner - WIP 2020-01-17 20:54:28 -05:00
Deluan ca2c897340 Add flag to disable startup banner 2020-01-15 17:51:52 -05:00
Deluan 5240d83fcf Replace fmt.Print with log.Error 2020-01-15 11:02:27 -05:00
Deluan a167669717 Change default db path 2020-01-14 18:55:12 -05:00
Deluan a99c3a8af3 Another big refactor: Back to a single folder for persistence implementation 2020-01-14 18:47:57 -05:00
Deluan 3d76144f82 Allow LogLevel to be configurable. Also add filename and line number when LogLevel>=debug 2020-01-13 19:57:36 -05:00
Deluan 536244bc44 Removed LedisDB persistence layer. May reimplement in the future (not likely thou) 2020-01-13 16:37:24 -05:00
Deluan 4b1c909a4d Make persistence provider pluggable at runtime 2020-01-11 15:27:32 -05:00
Deluan 5acc9c7a22 Make DisableAuthentication a Dev flag 2020-01-11 15:27:32 -05:00
Deluan a4a8360a94 Add Dev flag to disable file presence verification 2020-01-11 15:27:32 -05:00
Deluan ff5b91da54 Renamed DisableValidation to DisableAuthentication 2020-01-09 22:44:45 -05:00
Deluan 23e38ec82f Removed (almost) all remaining init() 2020-01-09 22:44:45 -05:00
Deluan 79701caca3 Removed Beego routing/controllers, converted to Chi.
Also introduced Wire for dependency injection
2020-01-09 22:44:45 -05:00
Deluan 4c61ac3272 Fix default PlsIgnoredPatterns configuration 2020-01-06 15:17:44 -05:00
Deluan c417a00e62 Renamed project to CloudSonic 2017-04-01 09:47:14 -04:00
Deluan 62bfc85b07 Changed default port to 4533 2016-03-30 12:57:44 -04:00
Deluan 132fe06950 Cleaned default PlaylistIgnoredPatterns 2016-03-30 00:28:52 -04:00
Deluan c2b1f9782b New configuration system 2016-03-30 00:05:57 -04:00