-
-
Notifications
You must be signed in to change notification settings - Fork 997
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multiple Music Folders #192
Comments
Thanks for trying Navidrome! Right now it only supports one music folder. Once multiple folders are implemented, access restrictions will be supported. |
Came here to add this feature request, and found this one. This is the one feature preventing me from moving from Airsonic to Navidrome. |
would it be possible to have this functionality implemented similarly as subsonic/airsonic does? |
Yep, this is how it will work, and you are going to have different permissions and other settings for each music folder. |
Just found this as airsonic seems dead, but I already like this way more. Would love to see this feature added. Thanks for the awesome program. |
Hi, thats the feature i am missing the most. @deluan THX for Navidrome! |
Hi, this feature will be really nice to have. |
I'd also be willing to support a bounty. Alternatively, I'd be willing to help out with the implementation as well. I'm not at all familiar with the codebase and what it would entail, but maybe if one of the maintainers could point me in the right direction I'd be happy to take a look. |
It's not a super trivial thing. I think, from the top of my head, there's at least the following steps (please correct me if I'm wrong): Create new database table Write the server code to pick up the (comma separated?) list of base folders from the configfile and populate this table New database table Create a Write the web UI code to allow admins to populate this table (ie, assign base folders to users, enter the fancy name), but DO NOT ALLOW THE API TO CREATE A NEW BASE FOLDER - SECURITY RISK! Add to the
Change the scanner so it populates these fields correctly, and ideally "intelligent" enough that when the base folder changes but the relative path stays the same (ie, a user moves his whole music folder to a new location), ND doesn't create new records for each song but just updates the Change all the relevant SQL queries to filter for only the base folders that the user has access to (that's relatively trivial for songs, but you also want to filter out all artists and albums (and genres) that the user has no access to. Probably: add |
I saw that gonic recently resolved a similar issue, which may offer some hints as to the design. |
Thanks for the link. The internal structure of Gonic is very different from Navidrome, so the changes do not apply to ND. I already started working on this, but put it on hold to focus on Smart Playlists, a more important feature (at least for me personally 😉 ) |
@deluan if enabling the multiple musicfolder path option is difficult or takes time to work it at the moment. is it possible to an argument or some function to provide different paths to different user profile? so that the different folders can be linked to different user profile to make this a closer to solve in a different way. |
Nothing really. The fork just allows one to specify multiple music folders e.g. In addition to specifying multiple folders, community seems to be looking for isolating music folders by users. I was planning to work towards that but haven't had a chance to take a stab at it. |
I have a slightly different use case. I'd like to keep audiobooks & podcasts in separate folder. I know I could probably solve this with tagging but it would not improve browsing experience I think. |
any news here? Would be great to see this feature very soon |
This appears to be a very fascinating feature, and I am willing to look into its implementation; however, I would need to first confirm a few details. One, is the bounty still active, and two, what exactly are you looking for (current consensus is that you want an additional option to be able to select multiple folders, but is there anything specific you want here, such as things from different folders having different tags, or are they all supposed to be treated as if they are from one folder, or do you want some sort of hybrid between those two). |
Personally, I imagine this feature as having a root folder that lists all the added folders a user has permission to access, but only if multiple folders can be accessed. For example, if a user has access to the Music folder only, the first level should be the contents of that folder. If a user has multiple folders added, e.g. Music, Audio Dramas, Audio Books, then those should be displayed first. When a specific folder is selected, e.g. Audio Books, tags should apply to anything within that folder only, similarly to when a user has access to one folder only. |
Hey @0xa48rx394r83e9, thanks for chiming in, but this feature cannot be implemented now, as I'm working on a big refactor that will change a lot of the internals. When I'm done, it will be easier to implement this feature (at least in the server). |
@deluan understood, thanks for the quick response. |
I implemented sample of artist-based album access control for Web UI. It seems to work in my local environment. Can be combined with #192 (comment) ...? |
I just want to have two different libraries one for say Soundtracks and another one for Classical (just examples), is there a way that we can have that first before we complicate it with access control logic? That's probably harder than the libraries logic. Right now the only solution for this is firing up another navidrome server. |
The library segregation is actually way harder than the access control, but the foundational work is being considered in #2709 |
Very excited to see this on the roadmap! My Navidrome server will finally become a music cloud for all my family members :) |
Just wanted to add a particular usecase for people in music production (that would apply for me). |
2nd this request - started using navidrome recently and was surprised it's limited to a single library folder. I have users that manually put music into cache locations on their personal user shares, and also a shared location used by automations. My users would prefer to have their instances see their private external collection + the shared collection. Will likely use plex for the time being, but I'll keep navidrome going for myself to follow its development. |
Not sure if this is related or it just seems like it to me because of my folder structure but how about blacklisting Artists/Albums from being served to a user? In my setup I have: 📁 Root Folder: Music
So if for some reason I allow my parents to download music to my Lidarr/Navidrome setup I'd like to be able to blacklist Willie Nelson while my parents would like to blacklist Sabatton. But maybe that's easier as a separate filter? I assume a separate filter could be improved to filter Artists name, Album name, Genre, etc... |
Not sure that is enough though. |
I'm still using multiple instances in docker to segregate my libraries - then I can add them to the Symphonium app on my android phone or tablet... |
I have a question about the vision for this. I know at a basic level the idea is to simply pull different libraries into the same server, and manage access (eg. user A only has access to folder X, user B only has access to folder Y, user C has access to both folders X and Y). But is the idea to go further and, for example, allow user A to share album i (pulled from folder X) with user B? So that album i will show up in user B's library and user B can add it to their playlists. |
This is too complex too handle and not something that lots of users will end up using. Not even Plex implement such fine grained permission system. Remember: First and foremost Navidrome is a personal server, so the admin can create a "public" folder S with all shared albums that should be seen by all users, and add that folder to the list of permitted folders when creating new users. |
Got it @deluan, makes sense. Then the ability to follow another user's public playlist would probably address my needs anyway in terms of sharing |
I would love to see this feature, I know that navidrome is for personal use but it would be great and (taking advantage that there is already user support) that I for example create a user for my sister and she has her own music folder separate from mine so she has her own music and the same for my father / mother, I look forward to this feature, good job! |
I would really like this possibility in stead of having to creat two docker containers, in my case: One for mp3 and another for flac |
This is something I'll be working on next 👍🏼 |
Fantastic, thank you very much! It’ll be an instaswitch as soon as this feature’s in.
… On 2025. Mar 14., at 21:19, Deluan Quintão ***@***.***> wrote:
deluan
left a comment
(navidrome/navidrome#192)
This is something I'll be working on next 👍🏼
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.
<#192 (comment)> <https://github.com/notifications/unsubscribe-auth/AAHLD4CIO4E7FYQOEKDRTYL2UM2TZAVCNFSM4ML556Q2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TENZSGU3DMNBTGMYQ>
deluan
left a comment
(navidrome/navidrome#192)
<#192 (comment)>
This is something I'll be working on next 👍🏼
—
Reply to this email directly, view it on GitHub <#192 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAHLD4CIO4E7FYQOEKDRTYL2UM2TZAVCNFSM4ML556Q2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TENZSGU3DMNBTGMYQ>.
You are receiving this because you are subscribed to this thread.
|
Is it possible to have navidrome manage separate folders on a user level? So for example, user A has access to all music files in folderA, user B has access to all music in folderB and user C has access to folderA and folderB? I am asking because I want to separate music from audiobooks and don't want to have all mixed up in the same view.
The text was updated successfully, but these errors were encountered: