Component vendors like Syncfusion and Infragistics often make source code available to their customers (at an additional fee). Some benefits of this would appear to be:
- Enable customers to make changes they need
- Empower customers to find and fix issues, and even contribute the changes back
- Protect the customer in the case of the component vendor collapsing
Assuming there are benefits to a startup in licensing their source code, what needs to be considered? What general terms would you expect to see (a lawyer can help write it, but I'm looking for general points)?
For example, I would expect the customer has the right to:
- Download, read, and modify the source code
- Compile and make use of their own modifications
- Distribute their changes in a compiled form
- Take backups of the source code for their own use
The customer would probably not have the right to:
- Distribute the source code to third parties
- Use the source code to create a competing product
- Receive any kind of support for their modifications (though questions are welcome)
What other rights/responsibilities should I consider when drafting a source code license?
Lastly, what information will I need from the customer? Should I insist on getting a full legal name and address, or is "bob@hotmail.com" still fine?
(This is related to this question. However, that question focuses on whether licensing source is a good idea. My question is: assuming it is a good idea, what are some of the details to consider?)