views:

385

answers:

6

I like a library released under BSD license. This library is not actively maintained since late 2007.

  • Can I fork the library and relicensing under an Creative Commons license?
  • The original author must be informed?
  • Are there problems other than these?

EDIT

Based on the feedback provided by several answers I'm providing more details on my specific case.

I'm rewriting some low level code of a BSD licensed library (JLine) using a LGPL library (JNA). Can I publish this work in a different license?

+4  A: 

Unless you own the copyright for a work, you cannot change the license. You can fork the code, but the license is not yours to change. This is true no matter what the original license is (unless the license specifically gives you rights to relicense).

Only the copyright holder can issue a different license, so you should try and contact them.

Ville Laurikari
Before contacting the author, you should consider if the existing license works for your purposes after all.
dwc
+5  A: 

You can't remove the BSD license. What you can do is put it under another license also. For example, Microsoft adopted BSD networking code at one time. If you looked at the appropriate displays, you'd find the notices required by the license. On the other hand, Microsoft's copy was also under whatever license Microsoft used, and Microsoft's modifications were neither Free nor Open Source software.

Unless it's some weird variation of the BSD license, there is no obligation to inform the original author. You should try to do that, though, out of common courtesy to somebody who made your life easier. The author may want to find a new maintainer, for example, and may help you out.

However, why do you want to relicense it? I don't know which CC license you're interested in, and there's a great variety of them, but what's the benefit here?

David Thornley
There's only one reason to remove the BSD license to a CC one. That is the removal of the need to credit the author in derivative works.
Unknown
Which can't be done. However, different CC licenses have different restrictions. At least one forbids commercial use. I don't think that's a good license for software, but if it isn't my software I don't decide on the license.
David Thornley
+2  A: 

You can do many things with BSD licensed code, but you can't exactly "relicense" it. The couple of paragraphs you see in the code is the actual license, and it tells you exactly what you must do and not do. It's very short and simple enough to understand, unlike most other licenses: keep the license and copyright notices.

Code you add can be licensed as you wish.

dwc
+1  A: 

Depending on the license, you could sub license the work (some BSD-like licenses allow that, especially for derivative works) but you can't remove the licensing requirements (such as attribution, or the copyright statements). You don't own the copyright, you just have permission to use it. Which license you can use to sub license will depend on the license. Some may work, some will not, depending on the license.

When you fork the code, you will have to remove any trademarks used, and rename the project, of course.

All that being said, if the author(s) hold copyright to all of the code, you could ask them to license it to you under your preferred license. Since they use a BSD-like license, they would probably be open to it.

Yishai
+2  A: 

Creative Commons is generally used for creative works: music, literature, etc. - I'm not sure if it would apply to a chunk of code or not.

For relicensing code, you might want to use a software-specific licence, like the GPL, Apache or Mozilla licences. There's tons to choose from, depending on your requirements.

Jacob Hume
+1  A: 

As you don't own the code, you can't relicense it. However, the BSD license is so unrestrictive that you can also license it under another more restrictive license such as GPL. However, you probably don't want to use CC, it is made for media, not software. Real software licenses will give you much less problems. If you want it to be unrestrictive, keep it as BSD. If you want it to be more restrictive than that, consider GPL or LGPL.

Zifre