Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
Check out the new SourceForge HTML5 internet speed test! No Flash necessary and runs on all devices. ×
Sun Microsystems

CDDL Project Leader on the CDDL 277

SunFan writes "Claire Giordano, Sun's lead on CDDL development, gives the inside story on how the new license was developed. She discusses how people within Sun debated the various licenses, including the GPL, and shows why the GPL, BSD, and MPL licenses were found to come up short in meeting the needs of Sun's broad customer and developer base."
This discussion has been archived. No new comments can be posted.

CDDL Project Leader on the CDDL

Comments Filter:
  • by ShaniaTwain ( 197446 ) on Tuesday April 19, 2005 @12:04AM (#12278606) Homepage
    I find that there are just not enough licenses out there, so I'm thrilled to hear there's a new one. Eventually there may even be more licenses than things to be licensed, and what then?

    I'm just sayin' is all...
  • To summarize... (Score:5, Insightful)

    by Anonymous Coward on Tuesday April 19, 2005 @12:06AM (#12278611)
    "We fear Linux so we want to be incompatable.

    We announced a great $2-billion we-both-respect-IP deal with Microsoft, and the F/OSS guys won't be giving us $2 billion soon.

    How do we write a license that keeps Microsoft happy and trys as well as we can to divide and conquor the Linux developer base."

  • by ebyrob ( 165903 ) on Tuesday April 19, 2005 @12:12AM (#12278651)
    What the author of "Failed as in succeeded wildly." meant was LGPL-style licenses. LGPL has been around a lot longer than MPL and actually fits what he describes.
    • by WebMink ( 258041 ) <slashdot@webmi n k . n et> on Tuesday April 19, 2005 @03:18AM (#12279365) Homepage

      Assuming you are referring to my blog entry [sun.com] discussing the way that the success, not failure, of MPL-style licenses is at the root of the license proliferation problem, I'm afraid I don't agree with you. LGPL does not include the explicit patent grant that the MPL includes, nor does it establish ground rules for maintaining a patent peace, and thus does not serve as the archetype for MPL licenses and their (many) derivatives. Instead it includes an exception to the scope of the GPL which depends on the language and architecture of the software in use and makes assumptions on how dynamic linking will take place. In all other respects it is the same as my third license category, GPL licenses.

  • Real Problem (Score:5, Interesting)

    by Anonymous Coward on Tuesday April 19, 2005 @12:22AM (#12278699)
    It's not GPL-compatible. I appreciate you want to be able to mix in proprietary code. If you need that, you can do one of two things. You can use LGPL, or you can include a clause "May also be sublicensed under the GPL, version 2.0 or newer." The only thing you lose is the patent litigation protection. You can also grant yourselves rights to change the main CDCL without alienating the mainstream FLOSS community.

    Either way, a large number of people, for whatever reasons, distrust Sun. Releasing under a license that is widely percieved to be incompatible with the greater free software community is fanning those flames. Most people percieve this as a simply ploy to make it impossible to move code back and forth between the Linux kernel and Solaris. That's not really big on freedom.

    One of the great parts of free software is rapid development. About half of my apps are built by glueing together code from other people's programs. Making Solaris not compatible with the GPL breaks that, and it's not good for building a developer community around Solaris.

    I wish you guys the best of luck, but I think that given a GPL-incompatible license, you'll have a really hard time building a large developer community.

    With a GPL-compatible license, if Solaris got to be better than Linux, virtually no one would think twice about switching from Debian GNU/Linux to Debian GNU/Solaris.

    Also, notice the trend. Virtually everyone (Netscape, TrollTech, etc.) starts with their own crappy license, and eventually, switches to a dual-licensing model that includes GPL. Follow the lesson, and start off on the GPL side from the start.
    • Also, notice the trend. Virtually everyone (Netscape, TrollTech, etc.) starts with their own crappy license, and eventually, switches to a dual-licensing model that includes GPL. Follow the lesson, and start off on the GPL side from the start.

      There's a reason for that, as described in TFA... as you mentioned, wherever possible, it's always easier to use someone else's code than to write some more of your own. The same goes in the proprietrary world, except that instead of all using one license (GPL/BSD

    • Typical double standard. I don't see people bitching about Mozilla projects using a similar license.
      • Mozilla may use the MPL, but it's also tri-licensed with the GPL and LGPL. I doubt if there'd be have the stink there has been if the Sun code was dual licensed with the GPL. Which means you could use the code under either license.
      • They did actually bitch about this. This is why Mozilla is now dual licensed under the GPL and MPL. End user-programmers can pick which one they want to use.

        They don't bitch about it today because they don't have to.

    • Re:Real Problem (Score:3, Insightful)

      by SunFan ( 845761 )
      It's not GPL-compatible.

      The CDDL would be, because it is a file-based license, but the GPL does not allow it.

      The only thing you lose is the patent litigation protection.

      You can always purchase an expensive insurance policy from OSRM...or get it for free in OpenSolaris.

      That's not really big on freedom.

      OSI fully recognizes that Sun is acting quite freely. Your sentiment is extremely GPL-centered.

      GPL-compatible

      You've used forms of this word at least five times in your post. You do understand th
    • How can developers embrace Solaris if they can't run it? Without a GPL compatible license, Solaris can't cross pollinate with Linux for device drivers.
      # du -s kernel-source-2.6.11/drivers kernel-source-2.6.11
      92300 kernel-source-2.6.11/drivers
      223937 kernel-source-2.6.11
    • With a GPL-compatible license, if Solaris got to be better than Linux, virtually no one would think twice about switching from Debian GNU/Linux to Debian GNU/Solaris.

      Big IF. I think many would argue Solaris is already better than Linux. But, for argument's sake, let's say its not better than Linux. If it became better, I'd happily switch, regardless of license.

      What do I know though? I use Mac OS X, FreeBSD and Windows.
    • Re:Real Problem (Score:5, Insightful)

      by Waldmeister ( 14499 ) on Tuesday April 19, 2005 @02:31AM (#12279198)

      It's not GPL-compatible.

      Yes, the Apache license is also considered incompatible with the GPL, and the Apache webserver is still the dominant webserver. And I never heard RMS rant about that, and demand writing an Apache replacement under the GPL.

      PHP is also licensed under an GPL-incompatible license. Still remember the mess with MySQL? When they relicened their client libraries from LGPL to GPL, because they wanted to urge more companies to buy commercial MySQL licenses, they had to issue an "Optional GPL License Exception for PHP". Otherwise they would have been replaced by many sites with competing projects like Postgres available under a more liberal license. Does this mess (and the commercial interest behind it) help free software or the community?

      When Sun released OpenOffice under a dual license, some companies like Ximian or Redhat refused to license their changes under both licenses, they released them only under the GPL. So the patches found never their way to openoffice.org and today every distribution patches their own version of OpenOffice. Did this help open source or the community?

      These are only a few points to show that the GPL is not the only OSS license. Sun has contributed a lot of code, so they have made probably more experiences with OSS licenses than most other people and companies. Is it really so hard to understand, that they see issues and don't simply hail RMS and the GPL?

      • Re:Real Problem (Score:3, Insightful)

        RMS hasn't "ranted" about the CDDL or most other licenses, indeed, the Free Software movement has largely kept out of this argument. RMS and the FSF have expressed concerns in the past when licenses haven't been free but have been promoted as free, and with the original BSD license at a time it and the GPL were pretty much the only Free Software licenses, but the CDDL seems to have been largely uncontrovertial as far as the FSF is concerned.

        The major concerns are being expressed by the Open Source Initiat

    • Also, notice the trend. Virtually everyone (Netscape, TrollTech, etc.) starts with their own crappy license, and eventually, switches to a dual-licensing model that includes GPL. Follow the lesson, and start off on the GPL side from the start.

      Although I don't think that Sun could have licensed everything under the GPL because of the reasons mentioned in TFA (proprietary code from third parties), it is really a pity that they do not allow dual-licensing with the CDDL and GPL.

      Unlike some GPL zealots her

      • I can understand that Sun is afraid that dual-licensing would be one-way only: some code would be borrowed in other GPL projects and would not come back to Sun (or at least not to the Solaris kernel) because it could not be dual-licensed again. But if this is the only reason, then I think that it is short-sighted.

        Hmm, I don't think so. Sun did exactly this type of dual-licensing with OpenOffice and there's a lot of code, which wasn't contributed back to OOo. So every distribution comes with its own build

        • Sun did exactly this type of dual-licensing with OpenOffice and there's a lot of code, which wasn't contributed back to OOo.

          The OOo case is a bit different because it uses the SISSL, not the CDDL. I vaguely remember that there were some problems with a previous version of the SISSL that kept people from using it. I'm not sure, though.

          [...] So he could license his drivers under a less restrictive and problematic BSD-style license.

          Less restrictive, yes. Less problematic, no. Both Sun and the GPL

    • Re:Real Problem (Score:5, Insightful)

      by samael ( 12612 ) <Andrew@Ducker.org.uk> on Tuesday April 19, 2005 @06:58AM (#12280111) Homepage
      I wish you guys the best of luck, but I think that given a GPL-incompatible license, you'll have a really hard time building a large developer community.

      Because Java has a _tiny_ developer community. There's nobody interested in improving it at all.
  • by syousef ( 465911 ) on Tuesday April 19, 2005 @12:30AM (#12278738) Journal
    ....those who can't work in marketing and legal and come up with licenses.
  • Does it depend on how you look at it?

    Per the article: I realized how important it was for us to allow OpenSolaris kernel source files to be compiled and linked with other open source files and even with proprietary source files in the kernel. GPL would not allow this. On Day 1 of OpenSolaris, because some OpenSolaris IP is encumbered by other companies (example - 3rd party drivers), we're going to have some source files in the kernel that will remain proprietary. Hence GPL was out of the running.

    Does thi

    • by civilizedINTENSITY ( 45686 ) on Tuesday April 19, 2005 @12:43AM (#12278798)
      Hate playing the devil's advocate, but their license is Open, it just isn't Free. It meets the OSI requirements, which means OSI approval means less to me than once it did.
    • by KingJoshi ( 615691 ) <slashdot@joshi.tk> on Tuesday April 19, 2005 @12:55AM (#12278847) Homepage
      You're right and wrong. Wrong because the Open Source Initiative decided it was "Open". It's not "Free" by the Free Software Foundation. GPL is Free Software and Open Source. Using common words, which might not have been applied to source code at the time, has created a lot of confusion. I mean, if programmers and others can get confused, think how confused the PHBs can get.

      There's a reason Stallman has been a stickler on correct term usage. Saying just Linux instead of GNU/Linux over-emphasizes Linus Torvalds and the Open Source methodology, while ignoring the Free Software foundation for much of the distros we use. Similarly, using "Intellectual Property" creates confusion among different laws which have their own reasonings behind them.

      I don't know if creating more terminology will help. I think if you're always a stickler like Stallman, too many people will ignore you, when they might need to heed your information the most. But we (as an industry or whatever) definitely need to better inform people in our own industry.

      There are philosophical, political AND practical reasons for the differences of BSD, GPL, LGPL, etc. It takes less time to inform than it does to argue, but many seem to choose the latter...
  • Lame Excuse (Score:4, Interesting)

    by sbszine ( 633428 ) on Tuesday April 19, 2005 @12:32AM (#12278749) Homepage Journal
    From TFA: On Day 1 of OpenSolaris, because some OpenSolaris IP is encumbered by other companies (example - 3rd party drivers), we're going to have some source files in the kernel that will remain proprietary. Hence GPL was out of the running.

    The whole point of opening the source and creating a community is so that people can develop the things they need, free of the problems proprietary code brings. I find it hard to believe that much Solaris kernel code belongs to anyone other than Sun.

    Linux started out with very few drivers, but now supports most common hardware. Sometimes this support takes the form of binary or wrapped drivers, but that hasn't prevented Linux from remaining under the GPL.

    This is just more of the usual Sun guff.
    • Well, you're certainly welcome to write your own drivers for something that had to be held back in OpenSolaris due to a 3rd-party's constraints which are external to Sun. Come on, isn't that one of the beloved Linux mantras?

      The thing cynical /. posters seem to be missing here is that Sun /did/ look at the GPL... they didn't outright dismiss it. Sun found that they were encumbered by 3rd-party constraints which the GPL was incompatible with and so they had to short-circuit to the next best thing - the CDDL.
      • by sbszine ( 633428 ) on Tuesday April 19, 2005 @01:14AM (#12278928) Homepage Journal
        Well, you're certainly welcome to write your own drivers for something that had to be held back in OpenSolaris due to a 3rd-party's constraints which are external to Sun. Come on, isn't that one of the beloved Linux mantras?

        Under the CDDL they would have to be rewritten anyway if we wanted to make our own Solaris distros, because the 3rd party patent deals / licence grants apply only between that party and Sun. About which, more below...

        The thing cynical /. posters seem to be missing here is that Sun /did/ look at the GPL... they didn't outright dismiss it. Sun found that they were encumbered by 3rd-party constraints which the GPL was incompatible with and so they had to short-circuit to the next best thing - the CDDL.

        Is the next best thing the CDDL, or is it the MPL upon which the CDDL was based? Under the MPL (section 3.4), Sun would have had to disclose the extent to which the code was encumbered by third parties. One of the few differences between the CDDL and the MPL is the removal of this clause. The implication of this is that Sun (who already has IP deals with the third party vendors) can use CDDL code in commercial products without any legal worries. But open source developers distributing CDDL cannot, and Sun's modification to the licence means that the encumbered parts of the code cannot be distinguished from the unecumbered parts.

        The point of the CDDL seems to be to supply Sun with free development and debugging for code which only it can safely distribute. Lest you think this is me donning my tinfoil hat, please read the relevant Groklaw commentary [groklaw.net].

        I am not asking Sun to release other people's encumbered code. I just want them to identify (and, for bonus points, encapsulate it) so that it can be replaced with unencumbered code.

        Solaris is an awesome technology. You would be - no pun intended - CLOSING yourself off if you think being able to look at and use the Solaris source is irrelevant.

        Solaris does have a lot of cool stuff in it. Sadly, learning from some of that stuff could get us into legal trouble. It might be better for people who also do GPL development not to even look at the code.
    • I find it hard to believe that much Solaris kernel code belongs to anyone other than Sun.

      Um, ever heard of SCO?

    • > Sometimes this support takes the form of binary or wrapped
      > drivers, but that hasn't prevented Linux from remaining under the GPL.

      Binary drivers are technically a violation of the GPL because they link into a GPL executable. Such linking normally requires all involved components to be GPL. Fortunately, Linus is not objecting much to this, so Linux is doing just fine. If Linux were being developed by Richard Stallman, however, it wouldn't have lasted a day.
  • They are afraid they will lose control, not that it matters much.
    • Just do like Linus does.

      "People disagree with me. I just ignore them." - Linus Torvalds
      "If you still don't like it, that's ok: that's why I'm boss. I simply know better than you do." - Linus Torvalds

      He's lost so much control over the Linux kernel, now hasn't he?
    • Isn't this the whole story of Java all over again? Java could have been so much more (especially so much more compatible and available on other platforms) if only they would release it as uncontrolled open source but they seem to be afraid of losing control.
  • Kinda disappointing write up...

    She says that "early in the planning for OpenSolaris that we needed to use a "true" open source license - a license that complies with the terms of the Open Source Definition and that encourages royalty-free use, modification and distribution."

    As opposed to all those other false ones out there that completely fail in the above goals. They considered all options, she claims, except the glaringly obvious LGPL, it would seem.

    We at least know that Sun recognises "it's all about
  • I just read the definition of the definition of the CDDL [sun.com]. Outside of the fact that it's not compatible with the GPL (which can always be solved by dual-licensing), I find it reasonable. Of course, I may have missed some details, so I'd be happy if someone could point out what the problem is (outside of "it's from Sun" or "it's another license"). Also, I see that they distinguish between "Initial Developer" and "Contributor", but I don't see any difference between the rights given to one and the other. Can a
  • by Anonymous Coward
    It's OSI approved i.e. OPEN SOURCE. Some slashdotters are only getting their knickers in a knot because Solaris is not Linux. Kind of sad that many people have this view of open source.

    Sun could open source their entire software line (and are well on their way to doing so (with the exception of Java)) and these folks would still not be satisfied.
  • by jbolden ( 176878 ) on Tuesday April 19, 2005 @01:07AM (#12278891) Homepage
    There are a lot of threads about the issue of GPL incompatability. But not including that the author of the article mentions that he wants the CDDL to become a license in line with the GPL or the BSD license. The problem is:

    1) Its not as simple as the BSD license thus manages to duck the hard issues

    2) Its not as well thought out as the GPL which addresses the hard issues dead on.

    1) CDDL definition of source code: "Source Code" means (a) the common form of computer software code in which modifications are made and
    (b) associated documentation included in or with such code.

    GPL definition of source code: The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

    What does documentation included with such code mean? Say for examples most changes are made in response to bug tickets do you need to include them? Very vague

    2) Obligation to distribute source

    CDDL - Any Covered Software that You distribute or otherwise make available in Executable form must also be made available
    in Source Code form and that Source Code form must be distributed only under the terms of this License.... You must inform recipients of any such Covered Software in Executable form as to how they
    can obtain such Covered Software in Source Code form in a reasonable manner on or through a medium customarily used
    for software exchange.

    GPL -- Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)

    You can see the differences.
    -- How long do you have to provide source code
    -- What about casual copying
    -- What if the information in the executable is no longer true (like you can download this code from www.xyz.com/abc/bcd)?
    etc...

    3) CDDL on "modifications" -- The Modifications that You create or to which You contribute are governed by the terms of this License. You represent that You believe Your Modifications are Your original creation(s) and/or You have sufficient rights to
    grant the rights conveyed by this License.

    GPL on derived works -- Each time you redistribute the Program (or any work based on the Program),

    The GPL uses the notion of derived work which has tons of case law behind it. The CDDL uses "modifications" which opens the door to which sorts of derivations are modifications. I don't see any point in this change.

    Anyway I'm not sure what the CDDL offers over the GPL other than lots of chat about patent claims.

  • by line.at.infinity ( 707997 ) on Tuesday April 19, 2005 @01:09AM (#12278901) Homepage Journal
    The CDDL was mentioned on an earlier slashdot article: Sun's Schwartz Attacks GPL [slashdot.org].
    The gist of what he had to say: "GPL sucks! CDDL rulez!"
  • by Anonymous Coward on Tuesday April 19, 2005 @01:25AM (#12278971)
    Sun needed a way to present themselves as going open source without allowing the open source community to get any benefit from this. The CDDL was their tool to do this.

    Everything else, any rationalizations for why they engineered their license the way they did, is just PR.
  • by Anonymous Coward
    If you follow the debate over the CDDL in the OSI mailing list, you'll notice that the OSI seemed to approve the license pretty quickly. There were many licenses waiting for approval that were submitted earlier, yet were never approved. Doesn't that seem odd?

    Could it be that Sun paid off members of the OSI community to push their license through?

    http://www.crynwr.com/cgi-bin/ezmlm-cgi?3:mss:9 1 35

    http://www.crynwr.com/cgi-bin/ezmlm-cgi?3:mss:91 37

    Hmmmmm..... interesting.
  • They forgot... (Score:3, Insightful)

    by Vo0k ( 760020 ) on Tuesday April 19, 2005 @02:46AM (#12279243) Journal
    For classic corporate licenses, the priorities of license convenience are like this:
    1. The corporation. It's all about the profit to the corporation, isn't it?
    2. The customer. Sure we want to attract the customer to buy the product, and the license is partially responsible...
    3. The developer. Actually, pretty much the license only takes all the rights away from the developer... They are compensated for that - in form of salary.

    For Open Source/Free Software, the licenses must be written in exactly opposite order.
    1. The developer. If there's nobody to write the software, nobody will be able to use it.
    2. The user. It's for users, and the idea is user is free to do what they want with the software, so let's give it.
    3. The corporations. Actually, protecting the program against abuse by corporations.

    Of course, SUN as a corporation, wanted the first kind of license. GPL, as the second kind, obviously didn't meet their expectations. What SUN forgot though, is that the goals their license meets are straight opposite to goals -expected- by Open Source developers. A corporate license in service of a corporation, taking some rights away from the customer and many rights away from the developer, while the developer isn't compensated for that in any way?

    The difference is that a GNU developers still "own" code they wrote. They retain all rights to the code. SUN's license says, "You will be assimilated. All your code are belong to us."

Somebody's terminal is dropping bits. I found a pile of them over in the corner.

Working...