Skip to content
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

multiuser support #52

Open
star-buck opened this issue May 16, 2012 · 12 comments
Open

multiuser support #52

star-buck opened this issue May 16, 2012 · 12 comments
Labels

Comments

@star-buck
Copy link

Hi,

supersonic/subsonic is just amazing!
We're looking for multiuser server setup (similar to owncloud).

Is this possible?

Since I couldn't find an email, im writing this here, if someone from the development team is interested, please get in contact via this email to discuss future possibilities of supersonic, we might sponsor this project if we knew the planned features:

admin@blue-systems.com

Greetings, Clemens.

@timoreimann
Copy link
Contributor

Hey Clemens,

what exactly are you thinking of when you say multi-user server setup? Could you elaborate a bit on this please? (I am not too familiar with owncloud and how it handles multi-user operations.)

Something that's been on my mind for a while is to allow users to maintain separate music collections and playlists in order to prevent the (intentional/accidental) possibility of interfering with other users' music folders. Visibility management could come into play as well, and probably a multitude of other features in the multi-user field I haven't even imagined yet.

Oh and by the way, there's both a Developers and Users group available for communication. See our wiki page for the links.

Cheers,

--Timo

@star-buck
Copy link
Author

Hello Timo,

what you described is exactly what I meant with multiuser:
Maintain seperate collections per user that not interfere with others
music collections :)

I work for a company called Blue Systems,
who sponsors projects in the OpenSource field, mainly KDE and Kubuntu.

Since we also believe in html5/cloud solutions, and supersonic/subsonic
is a great solution for that,
we could sponsor the project for certain features as the suggested
seperate user feature.

So do you have programmers who can implement this or you implement this
yourself
and how long would it take to get it working?

Please contact me directly for financial details at the email adress
given above.

Greetings, Clemens.

Am 17.05.2012 01:01, schrieb Timo Reimann:

Hey Clemens,

what exactly are you thinking of when you say multi-user server setup? Could you elaborate a bit on this please? (I am not too familiar with owncloud and how it handles multi-user operations.)

Something that's been on my mind for a while is to allow users to maintain separate music collections and playlists in order to prevent the (intentional/accidental) possibility of interfering with other users' music folders. Visibility management could come into play as well, and probably a multitude of other features in the multi-user field I haven't even imagined yet.

Cheers,

--Timo


Reply to this email directly or view it on GitHub:
#52 (comment)

@porkcharsui
Copy link
Member

Hi Clemens,

I am submitting a request to have Supersonic formally accepted as an associated project of Software in the Public Interest, Inc., a not for profit organization in the United States assisting open source projects. Their next board meeting will be held Thursday 14th June, 2012, 20:00 UTC so I hope we can discuss your offer of sponsorship in the very near future after I speak with their board of directors.

Regards,
-Derek

@star-buck
Copy link
Author

Hello Derek,

are you a developer (=coder) of the project?

We already have begun to work on a multiuser supersonic:
As I mentioned, we need this feature finished within the next DAYS, not
wait weeks or months for even starting,
so this whole process seems way too slow for us wanting to move at full
speed in relation to all the other html5-cloud things around.

We hoped we could have sponsored one (or two) developers of the project
working directly on specific functionality we all find are of great
interest for supersonic,
and that this ability and flexibility was the main reason for supersonic
to have been created from subsonic (to be fast and flexible).
Though now its been quite a while before I got a response and that
proposed another 14 days for the committee etc.

Sorry for sounding a bit dissapointed, but we feel speed and flexibilty
in this area is mostly everything,
though I hope we still can find a mode of operation how to get coding
done or at least get our codechanges back into main supersonic.

Greetings, Clemens.

Am 03.06.2012 10:20, schrieb Derek:

Hi Clemens,

I am submitting a request to have Supersonic formally accepted as an associated project of Software in the Public Interest, Inc., a not for profit organization in the United States assisting open source projects. Their next board meeting will be held Thursday 14th June, 2012, 20:00 UTC so I hope we can discuss your offer of sponsorship in the very near future after I speak with their board of directors.

Regards,
-Derek


Reply to this email directly or view it on GitHub:
#52 (comment)

@timoreimann
Copy link
Contributor

I think I can speak on behalf of Derek when I say that any kind of sponsorship should ideally benefit the project directly. Due to the lack of being a legal entity yet, however, such financial contribution is not possible as of now.

star-buck, I'm sorry to hear that your timely constraints cannot be brought in line with the availability of Supersonic's developers. We are a classical open source project in a sense that there is no company behind it with full or even partially paid employees, which means that whatever degree of contribution made comes out of personal motivation and is subject to each volunteer's spare time (i.e., after-work time). The main reason for Supersonic's existence (in addition to being independent of any kind of licensing payment model) is to allow collaborative work on the code basis, however, so if there's a cool feature (which I consider multi-user support to be) you're willing and capable of providing, we're generally open for inclusion.

Since you already started working on the issue: Would you be willing to create a separate Github branch for public reviewing? At least, this would give core developers and others a chance to provide feedback.

@timoreimann
Copy link
Contributor

Since I've already made up my mind on multi-user support a little, here's a number of points that should be addressed in my opinion:

  • Facilitating separate music collections is just one usage scenario for multi-user support (another simple one would be user-specific start pages as suggested in issue Change default home page? #56). Thus, any basis implementation should be open for future multi-user extensions (especially with regards to how the database model is modified). Particularly, one such extension that will inevitably arrive after allowing for per-user collections is music sharing.
  • Users shouldn't be required to specify music directories, both for convenience and security reasons. Instead, Supersonic should choose directory names automatically from the user ID (not user names as they may be open for change).
  • Playlists should be handled in a user-specific fashion as well. (As of today, there's a global playlist which all users can modify.) This could be a second-priority feature though.
  • Given per-user music collections, I don't see a reason to maintain the existing approach where users can create directories and upload music into. It should be removed completely IMHO. However, a migration strategy must be provided then to allow for transitioning to the new layout. There are several strategies to think of with varying degree of complexity and the extent to which they make sense (examples: music collection duplication, migration wizard, require the admin to deal with it manually) that deserve further elaboration.

@porkcharsui
Copy link
Member

@timoreimann I really appreciate your handling of this discussion...

Hi Clemens,
I am both a developer and organizer of the Supersonic project, which I donate CI build resources and manage in my spare time.

Without a legal not for profit corporate framework established, the project is not accepting fiscal sponsorship for features and bug fix bounties due to the tax implications of an individual accepting payments on behalf of organization who's aims are purely not for profit. In the near future we hope to establish the legal entity necessary to accept donations.

I am very glad to hear work your team has already begun work solving this issue as I completely understand the need to deliver functionality before competitors.

Are you forking this Github repo or starting a fork from the Subsonic SVN? Supersonic is more than happy to accept your team's GPLv3 code commits, as long as we address and agree to a specific implementation approach to the issue as Timo suggests.

Our project aims to ensure incoming commits blend with our goal to maintain backwards capability with the existing API specification of Subsonic to ensure usefulness of the existing playback clients, while still enhancing functionality through new APIs and interface features.

We will soon be adding automated build deployment for all our supported platforms, including the Android player client.

I look forward to working with your team in the future to enhance this already killer app!

Regards,
-Derek

@star-buck
Copy link
Author

Is it possible to switch supersonic project to AGPLv3, since GPLv3 doesn't require anyone to publish the code if they just offer the softwares services (over the internet) and not the software itself.

@star-buck
Copy link
Author

@derek: yes, teamwork would be very much appreciated, yet it seems way to slow to coordinate if people from us working on it fulltime, so thats why I asked if someone likes to join us or getting paid to work on this full or sparetime too. I don't see it necessary for the project to be labelled as something: The modus operandi could be that I pay someone a defined time to work on some feature and the code goes back to supersonic here on mach5. If for any code that comes back any developer is payed or not by whoever is not relevant for the project, as for example someone from google could be payed by google to submit patches or updates here, of course if you accept them that is your choice.

So I am sure, that your approval for the organization does not contradict my suggestion for payment of letting someone work on getting that multiuser feature coded and done (even in his or her sparetime). So thats what I am suggesting while you wait for any approval for your project status.

@timoreimann
Copy link
Contributor

I have created a separate wiki page describing the design considerations of the desired feature:

https://github.com/Mach5/supersonic/wiki/Per-User-Collections-and-Multi-User-Support-(Design-Considerations)

It basically contains my previous comments and, being a wiki page, provides some easily editable structure to the design document.

@star-buck
Copy link
Author

thanks timo!
I have pointed our developers to this wiki and its great we can add points or ask question there.

@porkcharsui
Copy link
Member

@star-buck:

Is it possible to switch supersonic project to AGPLv3, since GPLv3 doesn't require anyone to publish the code if they just offer the softwares services (over the internet) and not the software itself.

That is an excellent point and very worthy of Supersonic's consideration since we are ultimately a community effort that will be delivered to users via hosted server infrastructure. I am glad you brought this issue too because AGPLv3 is compatible with the existing GPLv3 code base allowing the project to include upstream GPLv3 code contributions while providing a AGPL licence encompassing our software release.

The Java server back end (aka subsonic-man) would be the primary project code affected by this licencing change as far as I can tell. Timo and I are open to migrating server component to AGPLv3, while leaving the remainder of the product GPLv3 (particularly the Android client, since this will be a distributed binary application, thus seeing no immediate benefit from a transition to an AGPL software licence).

So I am sure, that your approval for the organization does not contradict my suggestion for payment of letting someone work on getting that multi user
feature coded and done (even in his or her sparetime). So thats what I am suggesting while you wait for any approval for your project status.

I would take up your offer as a independent contractor but my limited time is dedicated to organizing the community fork, providing build resources, and additional feature contributions that I am working on in my spare time. This situation might be different in the near future since my code contributions would be directly benefited from the addition of additional multi-user features like settings area per user to provide a place to store external web service API keys.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants