-
myMPD version: 15.0.2 Describe the bug Cannot set the music directory: the music directory is not detect through the socket and cannot be set manually. But mympd is able to play mpd. To Reproduce Steps to reproduce the behavior:
Expected behavior The music directory is set after entering the path to it. Screenshots Server platform (please complete the following information):
Client platform (please complete the following information):
|
Beta Was this translation helpful? Give feedback.
Replies: 17 comments 1 reply
-
Please add the debug logs as the bug report template describes. |
Beta Was this translation helpful? Give feedback.
-
Sorry about that. Here is the output of
mpd's log at log_level=verbose:
Output of Microsoft Edge console: `DEBUG: Got API response: {"jsonrpc":"2.0","id":968501001,"result":{"method":"MYMPD_API_SETTINGS_GET","mympdVersion":"15.0.2","mpdHost":"/run/mpd/socket","mpdPort":6600,"mpdPass":"dontsetpassword","mpdTimeout":300000,"mpdKeepalive":true,"mpdBinarylimit":8192,"stickerdbMpdHost":"/run/mpd/socket","stickerdbMpdPort":6600,"stickerdbMpdPass":"dontsetpassword","stickerdbMpdTimeout":300000,"stickerdbMpdKeepalive":true,"pin":false,"debugMode":false,"coverimageNames":"cover,folder","thumbnailNames":"cover-sm,folder-sm","loglevel":5,"smartpls":true,"smartplsSort":"","smartplsPrefix":"myMPDsmart","smartplsInterval":14400,"lastPlayedCount":2000,"musicDirectory":"/home/dsb/data","playlistDirectory":"none","bookletName":"booklet.pdf","infoTxtName":"info.txt","volumeMin":0,"volumeMax":100,"volumeStep":5,"lyricsUsltExt":"txt","lyricsSyltExt":"lrc","lyricsVorbisUslt":"LYRICS","lyricsVorbisSylt":"SYNCEDLYRICS","viewHome":{"mode":"grid","fields":["Name"]},"viewSearch":{"mode":"table","fields":["Title","Artist","Album","Duration"]},"viewBrowseDatabaseAlbumDetailInfo":{"mode":"table","fields":["Album","AlbumArtist","Genre","Performer","Artist","Composer"]},"viewBrowseDatabaseAlbumDetail":{"mode":"table","fields":["Track","Title","Duration"]},"viewBrowseDatabaseAlbumList":{"mode":"grid","fields":["Album","AlbumArtist","Thumbnail"]},"viewBrowseDatabaseTagList":{"mode":"grid","fields":["Value"]},"viewBrowsePlaylistList":{"mode":"table","fields":["Type","Name","Last-Modified"]},"viewBrowsePlaylistDetail":{"mode":"table","fields":["Pos","Title","Artist","Album","Duration"]},"viewBrowseFilesystem":{"mode":"table","fields":["Pos","Title","Artist","Album","Duration"]},"viewPlayback":{"mode":"table","fields":["Artist","Album","Performer"]},"viewQueueCurrent":{"mode":"table","fields":["Pos","Title","Artist","Album","Duration"]},"viewQueueLastPlayed":{"mode":"table","fields":["Pos","Title","Artist","Album","LastPlayed"]},"viewQueueJukeboxSong":{"mode":"table","fields":["Pos","Title","Artist","Album"]},"viewQueueJukeboxAlbum":{"mode":"table","fields":["Pos","Album","AlbumArtist"]},"viewBrowseRadioWebradiodb":{"mode":"table","fields":["Name","Country","Language","Genre"]},"viewBrowseRadioRadiobrowser":{"mode":"table","fields":["name","country","language","tags"]},"viewBrowseRadioFavorites":{"mode":"grid","fields":["Name","Genre","Country"]},"navbarIcons":[{"ligature":"home","title":"Home","options":["Home"]},{"ligature":"equalizer","title":"Playback","options":["Playback"]},{"ligature":"queue_music","title":"Queue","options":["Queue"]},{"ligature":"library_music","title":"Browse","options":["Browse"]},{"ligature":"search","title":"Search","options":["Search"]}],"listenbrainzToken":"","tagDiscEmptyIsFirst":false,"albumMode":"adv","albumGroupTag":"","webuiSettings":{"clickSong":"append","clickRadiobrowser":"append","clickRadioFavorites":"append","clickQueueSong":"play","clickPlaylist":"append","clickFilesystemPlaylist":"view","clickQuickPlay":"replacePlay","notificationPlayer":false,"notificationQueue":true,"notificationGeneral":true,"notificationDatabase":true,"notificationPlaylist":true,"notificationScript":true,"notifyPage":true,"notifyWeb":false,"mediaSession":false,"footerPlaybackControls":"pause","footerSettingsPlayback":true,"footerPlaybackControlsPopover":false,"footerSeek":false,"footerAudioFormat":false,"footerVolumeLevel":false,"footerNotifications":false,"showHelp":true,"maxElementsPerPage":100,"smallWidthTagRows":true,"quickPlayButton":false,"quickRemoveButton":false,"compactGrids":true,"showBackButton":false,"enableHome":true,"enableScripting":false,"enableTrigger":true,"enableTimer":true,"enableMounts":false,"enableLocalPlayback":false,"enablePartitions":false,"enableLyrics":false,"theme":"dark","gridSize":175,"bgCover":true,"bgCssFilter":"grayscale(100%) opacity(20%)","bgColor":"#060708","bgImage":"","locale":"default","startupView":"Home","musicbrainzLinks":true,"radiobrowserStationclicks":false,"seekStep":10,"feedback":"like"},"partition":{"jukeboxMode":"off","jukeboxPlaylist":"Database","jukeboxQueueLength":1,"jukeboxUniqTag":"Artist","jukeboxLastPlayed":24,"jukeboxIgnoreHated":false,"jukeboxFilterInclude":"","jukeboxFilterExclude":"","jukeboxMinSongDuration":0,"jukeboxMaxSongDuration":0,"autoPlay":false,"highlightColor":"#28a745","highlightColorContrast":"#f8f9fa","mpdStreamPort":8000,"streamUri":"","presets":[],"mpdConnected":true,"single":"0","crossfade":0,"mixrampDb":0,"mixrampDelay":-1,"repeat":false,"random":false,"consume":"0","replaygain":"off"},"features":{"featPlaylists":true,"featTags":true,"featLibrary":false,"featStickers":true,"featStickersEnabled":true,"featFingerprint":false,"featPartitions":true,"featMounts":false,"featNeighbors":false,"featBinarylimit":true,"featPlaylistRmRange":true,"featWhence":true,"featAdvqueue":true,"featConsumeOneshot":true,"featPlaylistDirAuto":true,"featStartsWith":true,"featPcre":true,"featDbAdded":true,"featStickerSortWindow":true,"featStickerInt":true,"featCacert":true,"featMygpiod":false,"featScripting":false},"musicDirectoryValue":"","playlistDirectoryValue":"","tagList":["Artist","ArtistSort","Album","Title","Track","Genre","Date","Composer","Performer","Disc"],"tagListSearch":["Album","Artist","ArtistSort","Composer","Disc","Genre","Performer","Title"],"tagListBrowse":["Album","Artist","ArtistSort","Composer","Genre","Performer","Title"],"tagListMpd":["Artist","ArtistSort","Album","AlbumArtist","AlbumArtistSort","Title","Track","Genre","Date","Composer","Performer","Disc"],"tagListAlbum":["Artist","ArtistSort","Album","Genre","Date","Composer","Performer"],"smartplsGenerateTagList":[],"triggerEvents":{"mympd_scrobble":-1,"mympd_start":-2,"mympd_stop":-3,"mympd_connected":-4,"mympd_disconnected":-5,"mympd_feedback":-6,"mympd_skipped":-7,"mpd_database":1,"mpd_stored_playlist":2,"mpd_queue":4,"mpd_player":8,"mpd_mixer":16,"mpd_output":32,"mpd_options":64,"mpd_partition":128,"mpd_sticker":256}}}
combined.js:12887 DEBUG: Socket connection in progress Thanks! |
Beta Was this translation helpful? Give feedback.
-
Log is incomplete. I need the complete startup log of myMPD and when you try to change the music directory. You can leave out mpd and browser log. |
Beta Was this translation helpful? Give feedback.
-
Here is the log after trying to autodetect the music library and then trying to manually set the library path:
|
Beta Was this translation helpful? Give feedback.
-
Use three backticks to format the log more readable. The log is still incomplete. I need it from the startup and after the MYMPD_API_CONNECTION_SAVE api call appears. |
Beta Was this translation helpful? Give feedback.
-
Thank you for your patience. In the log below, I was able to capture a few events of MYMPD_API_CONNECTION_SAVE:
|
Beta Was this translation helpful? Give feedback.
-
It seems the myMPD user has no access to the music directory. Check the access rights. |
Beta Was this translation helpful? Give feedback.
-
Does mympd need write access to the music directory? Below are the current access rights of my music directory, I assume that mympd only needs to read so I thought this was sufficient: |
Beta Was this translation helpful? Give feedback.
-
Read access is sufficient. myMPD does not write to your music directory. Your music directory is located under |
Beta Was this translation helpful? Give feedback.
-
mympd does not have access to the parent directory: |
Beta Was this translation helpful? Give feedback.
-
Without access to the parent directory myMPD (and any other linux user but root) has no access to a subdirectory. That behavior is not myMPD specific. |
Beta Was this translation helpful? Give feedback.
-
Thanks, I didn't know that. For testing, I changed access permission of the whole path so that everybody has rx access:
Also, all subdirectories under data have the same access rights. But mympd still does not detect the music directory. Also, I tried several times to generate a MYMPD_API_CONNECTION_SAVE event by trying to set the music directory in mympd, but I could never see it in the log. |
Beta Was this translation helpful? Give feedback.
-
Please add logs from myMPD startup. Edit: You are running myMPD with the systemd system unit? The default unit from myMPD distribution has set |
Beta Was this translation helpful? Give feedback.
-
Here is the log from mympd startup (with systemd) up to two attempts to autodetect the music dir, and one attempt to specify it.
|
Beta Was this translation helpful? Give feedback.
-
Add an override for your systemd unit with |
Beta Was this translation helpful? Give feedback.
-
Changing to For simplicity and security, I moved the music directory under Thank you for working through this problem. |
Beta Was this translation helpful? Give feedback.
-
For completeness: A user only needs execute permissions for all parent directories (in chain), to be able to access a sub directory. Execute permissions for a directory means access to the file/directory list within, otherwise, for the user, the sub dir/file does not exist. Read access is not needed. Just to be sure on the matter: myMPD itself requires read access, not MPD only? Isn't usually all access done through MPD, or does myMPD some additional detection by itself? We are wondering how to best solve this for CIFS mounts on DietPi, which are mounted with |
Beta Was this translation helpful? Give feedback.
Changing to
ProtectHome=no
allowed for autodetection of the music directory.For simplicity and security, I moved the music directory under
/
. There it is detected without modifying the systemd service file.Thank you for working through this problem.