Can I write and sell closed source apps that would run on Nextcloud?
I have a case where some of the features of nextcloud would be very useful to a small company but the owner would very much like to keep ownership of the intellectual property of any work I did do in the way of bespoke apps.
You canât since you distribute your software to the client and Nextcloudâs (and ownCloudâs) AGPL require you to offer your software under the AGPL v3
Note that if you write this for a customer, as consultant, and transfer full ownership, you are not distributing - the owner and writer is, technically, the customerâs company. As long as they do not âdistributeâ, that is, do not give any non-employee access to the software (not even with a public sharing link!) they do not have to give the code to anyone.
After all, the AGPL requires you to share code with anyone you give access to the software; as long as you donât, you donât have to give the code to anyone. And âyouâ in this is a legal entity which can be a company.
ok, looks like Iâve got some reading to do, if any one has a good resource or case studies of AGPL throw a link my way. Iâm not clear on the limits if they wanted to ârentâ access to their system in the future to third parties.
Itâs not about copyright, itâs about Usersâ rights. The copyright law is what makes the AGPL enforceable.
AGPL basically tells the user âif you can use it, you should also be getting the code to serve it to others, alter it and do whatever you like, as long as you donât restrict others from getting the same rights you are enjoyingâ.
Since you are adding a third-party module to a product that is all AGPL, you need to be sure you are only using external APIs to talk to the rest of the components if you want to be able to license it separately. you will need to check with the OC/NC license if they allow non-AGPL modules to run in an installation. Since AFAIK modules run within the context of the php code and not as a separate process, you have to stick to AGPL.
Could you please elaborate a little on the definition of non-public access. Does âpublic accessâ mean âany user not known individually to the systemâ, or âany non-employeeâ. Is a customer (whoâs not an employee) who has a dedicated account considered non-public as well?
Iâve just read the AGPL and some comments, and according to that ANY client, employees included, who have access to an AGPL app are getting it distributed, so they have the right to access the software. Which makes closed-source impossible, and jospoortvliets comment would be incorrect.
Quoting the AGPLV3 preamble:
âIt requires the operator of a network server to provide the source code of the modified version running there to the users of that server.â
are you providing the app via your NC - or did you develop an app which he wants to run on his NC?
in that case you should be able to use whatever copyright/ownership you want because you sell just the standalone app. when he is using it within his business it would fall under AGPL - and his employees could sue their employer for opening the source!?
If you sell your hours to a customer, he/she owns the app right away, there is no distribution, so that can be done following the AGPL. If you develop the app for the customer and then âsellâ it to them, you are distributing. I know it is a subtle difference and honestly in reality I think you simply transfer copyright in which case I donât think it is âdistributionâ either so I would say the rule of thumb is: if you develop something exclusively for a customer, it is not distribution. If you keep the app yourself too, perhaps to sell to another customer, you are distributing and it must be AGPL.
(and the usual disclaimer: I am NOT a lawyer, this isnât legal advice etc)