Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I want to release an npm (NodeJS) module that will be a development dependency for extensions built for my product (will be used in testing). I don't want this module to be used in any released derivative work (commercial or free, open or closed source).

Is there an existing suitable license that I can use?

share|improve this question
7  
The restriction of derived works would prevent your software from being open source, as defined by the Open Source Initiative. –  Thomas Owens Mar 14 at 16:35
2  
How about writing your own? If I understand you right, you don't want any person to use it or just for private use? –  Knerd Mar 14 at 16:41
1  
That would be "copyright". Open-source licenses are designed to allow greater freedom than copyright allows. If you don't adopt an open-source license your code still falls under copyright, which denies distribution. However, once you publish your code, how would you stop anyone from using it in their unpublished work? –  Ant Mar 14 at 16:44
    
I have edited the question - does that change things (if people can develop using it, but for personal, non-public use only)? –  Nikolay Tsenkov Mar 14 at 17:01
    
You say that publishing the code is a requirement of npm, where did you read that? –  Encaitar Mar 14 at 18:20

2 Answers 2

up vote 2 down vote accepted

No, there are no major software licenses that allow only personal use. Unless for some reason you want someone to be able to rebuff you when you try and bring them to court for going too far, there's no reason to write a formal license of any kind.

A simple copyright statement is all that you really need. And even that may be overkill, if your product is otherwise still unreleased and in testing.

Update from the guy that asked the question: I have spoken with someone from npm and they are fine with a copyright notice "All rights reserved" in the LICENSE file.

share|improve this answer
    
So, putting a copyright notice in the root of the module will simply state that I keep all rights reserved for myself and people will still be able to get the module and use it in testing, right? If I understood correctly, this should be exactly what I am looking for. –  Nikolay Tsenkov Mar 15 at 8:10
    
in most cases, yes, simple copyright and permission is enough for testing. (there are exceptions and special cases, but you're likely not to encounter them in development of your own code that you distribute to paid or volunteer testers.) –  DougM Mar 15 at 15:02

Such a license cannot possibly exist. The requirements you list are inconsistent. You want the license to be open-source, but you want it to violate the definition of "open-source". A license cannot be open-source and not open-source at the same time.

share|improve this answer
4  
Well, only to the FSF evangelists true believers definition of "open-source". But who says they have the only valid definition of what "open source" means? –  Doc Brown Mar 14 at 17:15
    
I didn't realise that open-source has so strict definition. What I meant by open-source, is that people will be able to see the actual, non-obfuscated source code. –  Nikolay Tsenkov Mar 14 at 17:19
3  
@DocBrown: I can assure you that the Open Source Definition was not written by an "FSF evangelist true believer" (whatever that is). In fact, the OSI was specifically formed by FSF skeptics in opposition to "FSF evangelist true believers". –  Jörg W Mittag Mar 14 at 17:24
1  
There is a license that can be both open-source and not open-source at the same time. It's called "Schrödinger's license". –  Idan Arye Mar 16 at 10:08

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.