Slashdot Mirror


Derivative Works And Open Source

marvin826 writes " Larry Rosen has a nice article in the current issue of the Linux Journal about the legal interpretation of derivative works. Seems there are two camps in the world in terms of using open-source libraries, such as GPL licensed libraries, in proprietary software. Read this article and see which camp you are in! Having people working full-time on proprietary software, using open-source libraries, can only help the open-source software get better? "

357 comments

  1. Derviative by trentfoley · · Score: 0, Troll

    Derviative!! Gah! I know its only two characters transposed, but it sounds so messed up. Remember, always, no wait, never.... no, always click on the Preview button first (especially editors)

    1. Re:Derviative by craenor · · Score: 2

      Derviative is derived from Derivative...

    2. Re:Derviative by Daniel+Dvorkin · · Score: 3, Funny
      Derviative!! Gah! I know its only two characters transposed, but it sounds so messed up. Remember, always, no wait, never.... no, always click on the Preview button first (especially editors)
      I think that should be, "Click on the Perview button first" ... hmmm, I see your point.
      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
  2. please by tps12 · · Score: 3, Insightful

    So we're supposed to pump out open source libraries so that giant companies like Micro$oft can write proprietary applications around them and profit from our labor? Would they like us to polish their boots while we're at it?

    I don't trust this "article" a bit. $1000000 says it was funded by some big company looking to milk open source advocates for all they're worth.

    --

    Karma: Good (despite my invention of the Karma: sig)
    1. Re:please by gpinzone · · Score: 4, Insightful

      Yes, you are. You see, the draw of open source was supposed to be a better model for software and for business. No one should want to do business with a closed source vendor like MS since you can't look under the hood yourself.

      Unless the Open Source advocates have lost faith in their "superior" software model, this really shouldn't be a problem.

    2. Re:please by Daniel+Dvorkin · · Score: 5, Informative
      So we're supposed to pump out open source libraries so that giant companies like Micro$oft can write proprietary applications around them and profit from our labor? Would they like us to polish their boots while we're at it?

      I don't trust this "article" a bit. $1000000 says it was funded by some big company looking to milk open source advocates for all they're worth.
      Um, I rather doubt Lawrence Rosen is a Microsoft shill.

      Did you RTFA? It's as much descriptive as prescriptive; as I read it, he's basically saying, "Here are some of the legal issues to be considered in deciding what constitutes a 'derivative work,' and they're tricky issues, so define your terms carefully." Which is entirely reasonable, especially in light of the mindless GPL-vs.-BSD flamewars.
      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    3. Re:please by mustangdavis · · Score: 2

      Don't pump out stuff that is free to use for comercial products!

      The old (and maybe current, I haven't read it lately) license for MySQL clearly stated that MySQL could be used for software NOT developed for resale!!

      Just add one line to your license agreement ... and Microshaft can't use it. If you even think they did, sue the pants off of them for taking advantage of a poor, open source developer. Juries love to help an underdog :)

    4. Re:please by Apreche · · Score: 4, Insightful

      What about the other side? MS wrote a lot of windows libraries. And a lot of people write open source programs that use those proprietary libraries. Ooooh.

      Know what else? Commercial software companies write programs that use MS libraries too. And they profit from MS labor. And if they don't give any money to MS in the process (such as buying VS.NET or something) then MS don't get crap from it.

      The problem here is determining whether using a program withing a program is derivitive. And is a library a seperate piece of software or part of the software that uses it, or part of the OS. If you were to argue technically it could go on for days. What we need is to know legally which it is. Which wont happen until we upgrade our laws to better ones that take into account modern technology.

      --
      The GeekNights podcast is going strong. Listen!
    5. Re:please by robbyjo · · Score: 5, Insightful

      The problem is that Rosen propose 4 points:

      1) The primary indication of whether a new program is a derivative work is whether the source code of the original program was used, modified, translated or otherwise changed in any way to create the new program. If not, then I would argue that it is not a derivative work.

      This I agree.

      2) The meaning of derivative work will not be broadened to include software created by linking to library programs that were designed and intended to be used as library programs. When a company releases a scientific subroutine library, or a library of objects, for example, people who merely use the library, unmodified, perhaps without even looking at the source code, are not thereby creating derivative works of the library.

      If I understand correctly, this is expressly prohibited in GPL, but is allowed in LGPL. So, I disagree with his point here. If we allow this, companies will extort this and take advantages as much as possible -- which, of course we don't want.

      3) Derivative works are not going to encompass plugins and device drivers that are designed to be linked from off-the-shelf, unmodified, programs. If a GPL-covered program is designed to accept separately designed plugin programs, you don't create a derivative work by merely running such a plugin under it, even if you have to look at the source code to learn how.

      I think this is also expressly prohibited in GPL, but allowed in LGPL. So, I believe plugin system should also be discouraged in GPL, otherwise it will make a "major loophole" (like making a main program out of a plugin).

      4) In most cases we shouldn't care how the linkage between separate programs was technically done, unless that fact helps determine whether the creators of the programs designed them with some apparent common understanding of what a derivative work would look like. We should consider subtle market-based factors as indicators of intent, such as whether the resulting program is being sold as an ``enhanced'' version of the original, or whether the original was designed and advertised to be improvable ``like a library''.

      See reason #2 & #3. If we allow companies sell enhanced versions of GPL programs: We're in a *deep* trouble. Imagine MS taking Advanced Gnome for their own... Golly!

      --

      --
      Error 500: Internal sig error
    6. Re:please by stratjakt · · Score: 5, Insightful

      God, why do people mod this stuff up? Just because you spell Microsoft with a dollar sign?

      By your logic, virtually every peice of software written for windows belongs to microsoft, as it uses their libraries. And a book report on Cujo belongs to Stephen King because his work is quoted and listed in the bibliography.

      Making calls to a library that already exists on a system does not make a derivative work. IMO static vs dynamic linking should be a non-issue as well.

      This is where the GPL turns to shit.

      I write and maintain one app where I work, which uses proprietary libraries to generate maps. I know going in if a specific client wants to use the mapping features, he/she must either buy the mapping component seperately, or through me.

      Never is there any notion that the company creating the 3rd party libraries I use gets any rights at all to my software. Yet, if the library was GPL'ed tomorrow, all of a sudden my work should be free?

      --
      I don't need no instructions to know how to rock!!!!
    7. Re:please by cheezedawg · · Score: 2

      What? If you don't want other people/companies using your work, then don't make it open source. Otherwise I don't see any room for you to complain.

      --
      "The defense of freedom requires the advance of freedom" - George W Bush
    8. Re:please by blindbat · · Score: 1

      Linux actually loses out if developers cannot link their programs to general libraries without having to release their software under GPL.

      I choose to develop cross platform applications but still desire to keep the source closed. If I must release the source in order to link to printf then there will not be Linux versions of my software. Windows will continue to dominate and some applications will only be written to that platform.

    9. Re:please by Anonymous Coward · · Score: 0

      Imagine MS taking GNOME....that would be sweet! The open-source community would have the source code! They would be able to modify it! MS would not be able to "CLOSE" the could to GNOME -- they would legally have to provide the source and the end user the ability to upgrade it....without the nominal $100 MS upgrade fee! Why is this a bad thing? MS and other companies have vast resources that could only improve the open-source software they use, not destroy it. I believe it will further the open-source movement if companies were allowed to embrace the open-source community. What is everyone afraid of? Are you all left-wingers?

    10. Re:please by harlows_monkeys · · Score: 2
      So we're supposed to pump out open source libraries so that giant companies like Micro$oft can write proprietary applications around them and profit from our labor?


      I always get a good laugh when someone worries that companies might profit from open source labor. Do these people ever bother to read the licenses, and the supporting documents?


      If you don't want companies profiting from your labor, then do not use an open source license. It is that simple. Almost every open source license allows, by design, people to profit from open source who are not the authors of the program. E.g., by selling support. If you write a program and GPL it, and I make a good living selling support for it, that is profiting from your labor just as much as it would be if I were to use your program in a proprietary program.

    11. Re:please by chriso11 · · Score: 2

      So is releasing the standard C libraries as LGPL instead of GPL pumping money into the souless corporations? Should they be relicensed?
      If the GPL was so perfect, then all the C libraries would be GPL too.

      --
      No, I don't trust in god. He'll have to pay up front, like everybody else.
    12. Re:please by marvin826 · · Score: 2, Insightful

      Would everyone please ask themselves this question: Where would we be today without the help and investment of time, money, and talent from a little *proprietary* company called AT&T? Without their contribution to this industry that many of us make very good living off of, we would not even have the need, medium, or occasion to have this discussion.....

    13. Re:please by Anonymous Coward · · Score: 1, Interesting

      What concerns me is the possibility of one-sided finger pointing. Say for example, that the vendor of a large ClosedSource GUI OS or OfficeSuite improperly understands the intended interface of a OpenSource library, and starts saying "this OpenSource library sucks" (because it does not do things in our preferred proprietary manner) and refuses to supply evidence (their source code) to demonstrate that they actually comprehend the library API and have good intent. This situation would probably make me uncomfortable as an advocate of OpenSource products.

      This situation does exist to some extent between vendors of ClosedSource software. It's how ClosedSource library vendors obtain support funding from their (developer) users.

    14. Re:please by blakestah · · Score: 5, Insightful

      From Rosen:

      3) Derivative works are not going to encompass plugins and device drivers that are designed to be linked from off-the-shelf, unmodified, programs. If a GPL-covered program is designed to accept separately designed plugin programs, you don't create a derivative work by merely running such a plugin under it, even if you have to look at the source code to learn how.

      I think this is also expressly prohibited in GPL, but allowed in LGPL. So, I believe plugin system should also be discouraged in GPL, otherwise it will make a "major loophole" (like making a main program out of a plugin).

      No, this sort of means that when you code a GPL program and specifically define a "plug-in" interface, that any binary that "plugs" in is not a derivative. In copyright terms, the fact that a "plug-in" interface is well-defined is enough to remove derivative status. In fact, a guiding principle here is that if there is a wall separating dependences (like a defined plug-in interface), then that wall removes derivative status.

      You have already argued that this creates a loophole - I think the legal view will be that you cannot take GPL'd software and make a plug-in interface out of an existing interface for the purpose of removing derivative status. However, adding a novel plug-in interface to GPL'd software would be seen in a different light.

      Remember, you have to take the point of view of someone looking at copyright history and trying to apply its law to software, and not the view of someone who wants to make the GPL as powerful as possible. A well-defined dependence "wall" is adequate to remove derivative status. If that creates loopholes, there are other ways to address that. I can't help it if the law ends up looking like a mess.

    15. Re:please by Waffle+Iron · · Score: 2
      Know what else? Commercial software companies write programs that use MS libraries too. And they profit from MS labor. And if they don't give any money to MS in the process (such as buying VS.NET or something) then MS don't get crap from it.

      That's not true. Each Microsoft library comes with or runs on a copy of Windows. Each copy of Windows is supposed to be individually licensed and paid for. The more popular your MS library using app is, the more copies of Windows get sold, and Microsoft makes more money.

    16. Re:please by ajs · · Score: 3, Interesting
      More to the point:
      Lawrence Rosen is an attorney in private practice, with offices in Los Altos and Ukiah, California (www.rosenlaw.com). He is also corporate secretary and general counsel for the Open Source Initiative, which manages and promotes the Open Source Definition (www.opensource.org).
      Here's an interesting copyright question for you. Many of us have quoted the article. All totaled, this page probably has a complete copy of it. Is that fair use? Heh.
    17. Re:please by Waffle+Iron · · Score: 4, Insightful
      Yet, if the library was GPL'ed tomorrow, all of a sudden my work should be free?

      Only if you wanted to redistribute the library for free. Today, you can't distribute the library for free at all: you or your customer must buy it.

      If the library was GPLed, it would not change the situation one bit. You would still have to buy it from the author under a different license in order to distribute it with your binary app. Some other people could use the library for free under different circumstances, but that wouldn't affect your usage. How is this a problem?

    18. Re:please by Patoski · · Score: 1

      Yes, you are. You see, the draw of open source was supposed to be a better model for software and for business. No one should want to do business with a closed source vendor like MS since you can't look under the hood yourself.

      Unless the Open Source advocates have lost faith in their "superior" software model, this really shouldn't be a problem.


      Perhaps his is the reason that businesses like and use open source but the people who create the software. The problem isn't whether or not one has faith in Open Source but rather a question of equity.

      You seemingly want something for nothing when there is no such thing in this world. If this isn't what you meant then I apologize but your post did come off as being surly. People create, release and maintain Open Source because they want to share their program with others while at the same time scratching an itch they might have. There is also the hope in releasing the software that others will help further develop the software. I would hope that someone allowing you to use their code would plant the desire within you to help further develop and refine their software that you're using.

      --
      G. Washington on Government "it is force. Like fire, it is a dangerous servant and a fearful master."
    19. Re:please by civilizedINTENSITY · · Score: 3, Insightful

      If the 3rd party libraries were proprietary, they could be dual liscenced. Then I could write software that used which I GPL-ed, and I could distribute my SW and the GPL-ed versions of the library. So could you. However, if you desired to produce proprietary SW you could. You would just have to use the proprietary liscenced libraries. That way my customers can experiece the freedom of my code, and the freedom of the libraries. Your customers pay to use your code, and hence must pay to use the libraries. Very simple.

    20. Re:please by Anonymous Coward · · Score: 0

      Hmm. I guess it felt better to lick the boots of shysters like the VALINUX guys, a company not even run by a programmer?

      You slashdotters are as dumb as ditto-heads. You all hate Gates - who runs the one company that makes thousands of programmers wealthy for their efforts - but love massive workstation company CEOs run by Harvard MBAs that have no problem using your work for free, then complain about Microsoft "maybe" doing it some day?

      Or you love your gurus - last i checked I didn't see ESR "share" his stock scam winnings from your work.

      But keep it up!

      This is blind hate robothink, pure and simple.

      "So we're supposed to pump out open source libraries so that giant companies like Micro$oft can write proprietary applications around them and profit from our labor?"

    21. Re:please by MarkCC · · Score: 2


      When you develop a piece of software that uses someone elses library, you have to observe the licensing terms of that other library. That's the way it is.

      When you write a piece of software that uses windows include files, you are obligated to follow the license terms of those.

      That much is perfectly clear. You may not like it, but that's just tough. Copyright law is pretty darned clear about it, and alas, your opinion doesn't end up counting for squat in court. (Seriously - there are some very depressing legal precedents which ultimately mean that our opinions or interpretations of a license are worth less than nothing.)

      Where it becomes messy is in the definition of a derived work. And the linked article is almost certainly wrong about how to define that.

      For example: a library that provides a binding for gtk to a new programming language is probably legally a derived work of gtk. Even though it doesn't modify a single line of code from gtk, and only links against it.

      The key question is always how far can you go, as the client of a library, before you become a derivative. And the only answer there comes from talking to a knowledgeable lawyer, following thier advice, and hoping for the best.

      -Mark

    22. Re:please by Kunta+Kinte · · Score: 3, Insightful
      By your logic, virtually every peice of software written for windows belongs to microsoft, as it uses their libraries.

      Logic does not apply here. I can write software and stipulate that users must give me their first-born as payment. You are free to choose my software, or if you think the licensing terms are unreasonable, go buy someone elses package.

      Microsoft requires you give them money for their software, it is their right. BSD does not require you to distribute modifications, it is their right as well.

      Your right is to pick the software package that has a license that suits your purposes most.

      Never is there any notion that the company creating the 3rd party libraries I use gets any rights at all to my software. Yet, if the library was GPL'ed tomorrow, all of a sudden my work should be free?

      You always have the option of not using the GPL software. Nobody's forcing you too.

      --
      Based on upvotes, Ageism is the only "-ism" Slashdotters care about and think isn't SJW
    23. Re:please by Anonymous Coward · · Score: 0

      A superior product to the superb Windows UI like GNOME?

      Please don't give me nightmares! We would lose the responsive and intuitive Microsoft-designed user interface, forced to once again use XFree86 based total shit.

      Stupid zealotism; as if Microsoft would even want to use your garbage. Hey, the general population doesn't; why should Microsoft?

    24. Re:please by bahwi · · Score: 2

      "if the library was GPL'ed tomorrow, all of a sudden my work should be free?"

      No, because the GPL is a license which you have to accept. Even if it is only accepting in your mind. You've paid(or they've paid) and accepted the license that you paid for, just because they GPL it doesn't change it with you. This is one thing people forget. If I program something, release it as GPL, I can take it down, and re-release it as LGPL. Those who have accepted it as GPL still get to keep it as GPL.

      Of course, it does get a little tricky with all of the legal advice coming from everywhere also, and IANAL.

      Example: If you give your customers a right to use your software, and they use the 3rd party libraries(assume that they are GPL), the libraries, by GPL definition, would demand that your program be GPL also. Except, you own the copyright on your program and they can not release it as GPL. This leads to a copyright battle in which they, not you, are at fault with the GPL and can only use it with regular copyright permissions. But it all depends on the GPL wording, and I'm probably wrong, but I believe it reverts back to regular copyright, and you can not use it without getting it under another license.

    25. Re:please by Wylfing · · Score: 1
      Never is there any notion that the company creating the 3rd party libraries I use gets any rights at all to my software. Yet, if the library was GPL'ed tomorrow, all of a sudden my work should be free?

      No, because you've already licensed it under separate terms. The library creators can't relicense what you've already got -- they'd have to take a Micros~1 (haha no dollar sign) approach and figure out how to force you to upgrade.

      But that said, I agree with you (and Rosen). Publishing a library is like putting up a billboard -- you don't get to choose who "uses" it once you put it out there. If you don't want people linking to your code, then for fsck's sake don't publish a library.

      --
      Our intelligent designer has never created an animal that we couldn't improve by strapping a bomb to it.
    26. Re:please by Wylfing · · Score: 1
      Amen to that! This is the point that needs the most education for businesses. Even if something is GPL there's nothing stopping you from pursuing different terms from the author. Afraid of the GPL "viral" effect? Ask for different terms.

      --
      Our intelligent designer has never created an animal that we couldn't improve by strapping a bomb to it.
    27. Re:please by kp2sushi · · Score: 2, Interesting

      The point of the whole matter is whether or not we want our libraries to be used as a standard or not. The more open the source is, the better we are all off in the end. I can agree that, ideally, applications that use open libraries should be open themselves, but the LGPL would not have been made if there wasn't some good in allowing for proprietary code. -Kp2

      --
      Take the white suppository, and I'll show you how deep the rabbit hole goes...
    28. Re:please by spectecjr · · Score: 2

      Only if you wanted to redistribute the library for free. Today, you can't distribute the library for free at all: you or your customer must buy it.

      I don't know if you've done much shopping for libraries lately, but most are royalty free. The developer pays once for the library, and then can redistribute that library in binary form for nothing. The end customer buys your software, not that individual library.

      Simon

      --
      Coming soon - pyrogyra
    29. Re:please by Kaboom13 · · Score: 1

      Microsoft makes loads of money from their proprietary libraries. In order to get them you have to buy Windows. Microsoft makes these libraries so people can make programs that run under Windows. An OS is only as good as the apps it can run. Microsoft profits everytime someone makes an app using their libraries.

    30. Re:please by jbolden · · Score: 2

      I've only done it a few times; but that's not the case I've found. In general library licenses are all over the map in terms of what you can or can't distribute and under what terms. Everything from:

      a) charging $X per company
      b) charging company Y, $X per developer
      c) charging company Y, $X per CPU / machine...
      d) charging per copy of the library made

      etc...

    31. Re:please by Waffle+Iron · · Score: 2

      But in this case, the parent post said: " I know going in if a specific client wants to use the mapping features, he/she must either buy the mapping component seperately, or through me.", so I surmise that this library is not royalty free.

    32. Re:please by jbolden · · Score: 2

      Your situation is what everyone is in favor of; large companies creating GPLed work. The issue is Microsoft taking Gnome making improvements and not open sourcing them because of a loop hole.

    33. Re:please by Anonymous Coward · · Score: 0

      > What about the other side? MS wrote a lot of windows libraries. And a lot of people write open source programs that use those proprietary libraries. Ooooh.

      As long as they excercise their rights allowed to them when they licensed these libraries, I don't see your point.

      > And is a library a seperate piece of software or part of the software that uses it, or part of the OS. If you were to argue technically it could go on for days. What we need is to know legally which it is. Which wont happen until we upgrade our laws to better ones that take into account modern technology.

      Licensing of code using a library can depend on the licensing requirements of the library. If it depends at all, and what the licensing options for that code are depends on the license of the library. It's that simple, really.

    34. Re:please by jbolden · · Score: 2

      AT&T wanted to create Multics. While a very good OS in terms of security and stability; a world full of Multics machines would have been a disaster for human freedom. Unix was a rebellion against Multics that AT&T owned because of "we own you brain" employment contracts.

    35. Re:please by Anonymous Coward · · Score: 0

      Microsoft does not explicitly give you rights to link to Windows libraries.*

      Why? Because not even Bill Gates agrees with the FSF's interpretation of copyright law that linking==dervision. And neither does any other commerical software company, because the last thing they would do is turn over control of their software to MS.

      From this one can draw 2 conclusions:
      1) Bill Gates and the entire commercial software industry is wrong.
      2) Richard Stallman and a bunchy of slashbots are wrong.

      Hmm.

      And if Stallman is right, then there's a whole bunch of Windows-based Free Software that's now property of BillG.

      (* MS does grant explicit rights to redistribute certain libraries. But we all agree that distribution is what copyright law is really about.)

    36. Re:please by Anonymous Coward · · Score: 0

      Every important GPL library comes with or runs on a copy of a Linux distro (for example Qt). Those copies of Linux distros are legally distributed.

      Therefore it's legal for your closed source application to use those libs because you aren't distributing the GPL libraries.

      So we agree. But that runs counter to the what the FSF has said for years.

    37. Re:please by nathanh · · Score: 2
      By your logic, virtually every peice of software written for windows belongs to microsoft, as it uses their libraries.

      Microsoft has done something similar. They've formally stated that you can't link against their Visual C++ libraries if your application is GPLd.

      Similarly there have been many floating point libraries that place restrictions on what you can or cannot do with the resulting binary.

      This is where the GPL turns to shit.

      The GPL is not unique here. There is a long (and ugly) history of restrictive licensing on libraries that directly affect the licensing of applications that use them.

    38. Re:please by shdragon · · Score: 1

      I agree that pursuing alternative licensing options from the author is a great idea for busineses, however some immediate concerns that come to mind: What about multiple authors?

      I mean, I can envision it being practical with a small number of original authors, but what about larger packages?

      By issuing a piece of software GPL'd the author of that software maintains GPL compliance as more than likely their code uses something GPL'd.

      It becomes exponentially difficult to seek alternative terms with every original author down to the last piece of code that links, calls, etc. some other code that was released under the GPL.

      Please correct me if I am mistaken. That is my understanding of the GPL, though IANAL, so ask MacAndrew, since he IS. ;)

      --
      "...we dont care about the economics; we just want to be able to hack great stuff."
    39. Re:please by mkweise · · Score: 1

      You do not need a license to call Microsoft's (or anyone else's) libraries. You do need a redistribution license if you wish to include someone else's libraries in your own software distributions.

      AFAIK, the only way to obtain a redistribution license for Microsoft's runtime libraries (e.g. msvcrt.dll and mfc*.dll) is to purchase a Microsft compiler.

      --
      Gentlemen! You can't fight in here, this is the War Room!
    40. Re:please by spongman · · Score: 2
      indeed. what's to stop you taking a GPLed piece of software, extracting the bits you want from it, and wrapping a non-linking API around it (eg, TCP/IP, SOAP, HTTP, CORBA, COM, etc...), re-publishing that as a GPLed derivative, and then using that non-linking API to talk to the GPLed from your non-GPLed software?

      for example, let's say I want to produce a commercial (non-GPL) Windows application that requires some image processing features. i could, in theory, take the source for the GPLed ImageMagick, remove the command-line code, add some simple COM wrappers, release the source for all that on my web-site and then ship and use those components with my non-GPLed software.

    41. Re:please by Anonymous Coward · · Score: 0

      I wouldnt be so worried about MS taking GNome... they have far better GUI products, and taking GNome or KDE will only make their products look worse than they actually are.

  3. Great, now my brain hurts by veddermatic · · Score: 3, Interesting

    Very interesting topic, and I'm sure some big fish (M$, Sun, etc) will have a LOT to say (donate $$) about this... if it goes the "non-modded is Non-derrivative" way, then M$ et al can pile in GNU stuff at will as the foundation of proprietary OS / Software.

    That then begs the quest, is taht bad?? At least then you know *some* of the OS is stable =)

    I'd have to say that (IANAL) review of the article / law, it woud seem that you can link w/o violating GNU... as long as you distibute the source to the things you linked to (but not YOUR code taht actually calls it)

    --
    Department of Homeland Security: Removing the rights real patriots fought and died for since 2001
    1. Re:Great, now my brain hurts by colinleroy · · Score: 1

      if it goes the "non-modded is Non-derrivative" way, then M$ et al can pile in GNU stuff at will as the foundation of proprietary OS / Software

      That's what Apple did for macOS X. They include lots of OSS like samba, apache, sshd (I know the last two aren't GPL, but they're opensource). Is this only because it's Apple and not Microsoft that noone complains about it ?

      --
      blah
    2. Re:Great, now my brain hurts by jbolden · · Score: 2

      And for every single piece GPLed software they include they also distribute source. In fact they distribute source for the entire Darwin layer of the OS. Its only when you get to the layers that are fully non GPLed (Quicktime, Aqua, Cocoa, Carbon, Classic, etc...) that they are closed source.

      Darwin is an open source OS written by Apple. OSX is a closed source environment written on top of Darwin.

  4. What this boils down to: by intermodal · · Score: 4, Insightful

    do we consider libraries to be part of the OS or the program?

    Personally, I'd consider anything that's part of another program installed on the computer as a dependency to be fair game. If I see that Program X requires me to have GAIM installed, fine. if Program X takes GAIM source, closes, and sells it in their program that way, that's bad. So as long as it only utilizes your install of GAIM rather than including it itself, then it's all good.

    Note, I also don't object to them putting it on the CD with the software, as long as it's clearly seperate from their software, even if it's a dependency, as long as they provide it within GPL terms.

    --
    In SOVIET RUSSIA... erm...NSA AMERICA, the Internet logs onto YOU!
  5. Derviative Works by Pac · · Score: 3, Funny

    Since programming while whirling is very hard to do without felling very seasick, few Dervishes ever manage to become good coders. So, Derviative works worth the trouble are rare and far apart.

  6. Noone really understands the GPL... by dagg · · Score: 5, Informative

    I've contracted for multiple fortune 100 companies and personally installed 1000's (literally) of GPL'd modules onto their server machines. Those modules are all critical components of their mission critical software. It would have cost tens of thousands of hours to make the software function without the GPL'd software. But you know what? These companies don't have a clue what GPL even means. As far as they are concerned, the GPL software is just free.

    --
    Sex - Find It
    1. Re:Noone really understands the GPL... by Xerithane · · Score: 1, Offtopic

      It would have cost tens of thousands of hours to make the software function without the GPL'd software.
      Uhm, I'll call bullshit right here. Tens of Thousands? You are saying in excess of 10,000 hours, lets just go of single hour, time to redevelop the GPLd packages?

      You do realize you just said that one programmer, working 40 hour weeks, couldn't accomplish the task in 5 years?

      But you know what? These companies don't have a clue what GPL even means. As far as they are concerned, the GPL software is just free.

      Of course they don't if you are their liason to the GPL world. Why don't you stop artificially inflating numbers. My guess is you also told them, "Well, I can do this for you and it's GPLd software and doesn't cost you a dime, or the alternative is buying a small country in Africa, a 1908 dime, and a pool bool named Juan but we can settle for Raul, and oh yeah, a billion trillion dollars."

      I used to know a contractor that sounds like you... He personally went through and edited "Two Thousand Five Hundred" HTML files instead of running a parser on them and expected to be praised for his work.

      --
      Dacels Jewelers can't be trusted.
    2. Re:Noone really understands the GPL... by Fnkmaster · · Score: 5, Interesting
      The problem is that many of us who are very active in the Open Source/Free Software communities and are bright people and experienced coders, and some of us who are ALSO experienced businessmen AND have dealt with many lawyers in the past and written and signed many legal contracts STILL don't understand the GPL.


      That's right. I consider myself to fall into the above. I mean, I think I understand the GPL, I understand the concepts behind the contract, but it is fucking vague. Concepts like linking - what does linking mean when you are referring to a Java program? If two classes are in the same jar, are they linked? Is it a derivative work? Are they part of a single "work"? If an interface is BSD-licensed or just public domain, but an implementation is GPLed, can I use runtime class binding to invoke it from a piece of commercial software? What about if I use RMI or some godawful XML/HTTP/SOAP mechanism to invoke it?


      Now the usual Slashdot response when somebody submits an Ask Slashdot on these topics is "Don't ask us, call your lawyer"! The problem is that while lawyers are experienced and generally skilled at reading contracts, you know a fuck of a lot more about software construction, components and the like than your lawyer does. And though IANAL, I have many friends who are, and you'd be shocked at how much jurisprudence out there is based on concepts like "would a reasonable person expect that..." and so on. If a reasonable person doesn't know what the word "link" means or doesn't understand what a "derivative work" is, even a reasonable person who IS a practitioner of the art in question, then the contract is, IMHO, on shaky grounds when it comes to enforcement in a court of law.


      But that's just my opinion. Feel free to prove me wrong.

    3. Re:Noone really understands the GPL... by Darth+Yoshi · · Score: 3, Insightful

      But, as I understand it, as long as they don't distribute it and only use it for internal use, I don't see any violation of the GPL license.

      If a company is using GPL'ed software and/or libraries in a commercial product, you might want to talk to the FSF lawyer.

      --
      // TODO: fix sig
    4. Re:Noone really understands the GPL... by dagg · · Score: 1, Offtopic
      You do realize you just said that one programmer, working 40 hour weeks, couldn't accomplish the task in 5 years?

      Yes. No doubt. It would probably take one programmer several months of time just to create a decent version of CGI.pm . Maybe I underestimated the hours, maybe it should be around 35,400.

      I used to know a contractor that sounds like you... He personally went through and edited "Two Thousand Five Hundred" HTML files instead of running a parser on them and expected to be praised for his work.

      I used to know, and still know, dozens of contractor's like you. You are the type of contractor that estimates you can do anything in one weeks time. Then you have to keep pushing back your deadlines until the entire project goes under.

      --
      Sex - Find It
    5. Re:Noone really understands the GPL... by Anonymous Coward · · Score: 0

      There's no way your programs use ALL the functionality provided by the modules you installed. It would take considerably less time to just write the parts of the module you actually use. So yes, your numbers are most likely inflated.

    6. Re:Noone really understands the GPL... by Anonymous Coward · · Score: 0

      Got two words for you: Bull. Shit.

    7. Re:Noone really understands the GPL... by Anonymous Coward · · Score: 0
      I've contracted for multiple fortune 100 companies and personally installed 1000's (literally) of GPL'd modules onto their server machines. Those modules are all critical components of their mission critical software. It would have cost tens of thousands of hours to make the software function without the GPL'd software. But you know what? These companies don't have a clue what GPL even means. As far as they are concerned, the GPL software is just free.

      This reminds me about the excellent case-study about Oregon hydraulics, which was recently published. Thought GPL'ed software was free, too, until they got that call from the FSF lawyers...

    8. Re:Noone really understands the GPL... by Xerithane · · Score: 1, Offtopic

      Yes. No doubt. It would probably take one programmer several months of time just to create a decent version of CGI.pm . Maybe I underestimated the hours, maybe it should be around 35,400.

      Damn you are overpaid. If I had a spec sheet of what functions it needed, I could recode CGI.pm in a week at most. Maybe it is odd for you to code over 1,000 lines a day. I do it regularly, and I'd say 85%+ goes into production without change.

      I used to know, and still know, dozens of contractor's like you. You are the type of contractor that estimates you can do anything in one weeks time. Then you have to keep pushing back your deadlines until the entire project goes under.
      No, it depends if I have the spec sheet. If it's a re-write than yeah, it's no problem. Number of estimated lines divided by 800 is the number of days. If it's a new project, then it extends much much longer. I take a good two weeks for design, then another week sitting on my ass staring at the same thing to ensure I don't miss anything.

      Maybe you are used to being surrounded by idiots, as it seems you are one.

      Please leave the IT field, you are tainting it.

      --
      Dacels Jewelers can't be trusted.
    9. Re:Noone really understands the GPL... by Anonymous Coward · · Score: 0
      I've also contracted with large companies. They've paid for my time and for packaged software -- several managers have asked about, or cheerfully welcomed the suggestion to, make GNU donations (I don't know if they did).

      However, it is not unusual for a company to use GNU/GPL'ed software in a novel way and pay me to make enhancements or fix a bug. Then they feed the changes back to the original author and in effect paid me to improve the software.

      I have built several applications which used various GPL'ed software and libraries. These were all internal applications, so there was no "software distribution" issue.

      Personally, I am building a (at-home) business using libre software. If I get enough profit (I do have to make those mortgage payments) I will be making donations to sponsoring groups and gifts to authors. I'm stumbling into the "gifting" economy...

    10. Re:Noone really understands the GPL... by jeremy_hogan · · Score: 1

      - GPL doesn not mean it can't be charged for, for example, could you have gotten the software from a vendor? Could you have bought support?
      - It still needs to be maintained. If you are being paid to maintain it, good for you.
      - You saved them money, and that's still a good thing, so long as they are staffed to support it in their environment. You should ave presented it as part of your value as a contracter.

      IMHO they don't need to understand it. You do. Mission accomplished. I doubt most end users, or corporate purchasers understand anything in the licensing they bought. At least no one will be coming to audit them (or remotely sniffing) or force them to upgrade for the sake of money over merit, b/c they didn't understand the license.

    11. Re:Noone really understands the GPL... by ethereal · · Score: 1

      Of course, with a rewrite comes necessary additional testing, troubleshooting, etc. The big benefit of using someone else's code is not so much that you don't have to re-code it, but that you don't have to debug and test your re-coded version, even if the amount of functionality you went after was somewhat smaller than the open-source version. Are you sure that you can recreate every little niggling bit of standards compliance that an open-source project, with years of testing in the real world behind it, has gone through? Just because you don't see these time-sucking issues up front doesn't mean they're not there.

      --

      Your right to not believe: Americans United for Separation of Church and

    12. Re:Noone really understands the GPL... by MarkCC · · Score: 5, Insightful


      The GPL doesn't say that you can't create derivative works without giving them away. It says you can't
      *distribute* derivative works without giving them
      away.

      If you're building proprietary software for use internally by the company, then they are not, legally, distributing it! In effect, it is purely free, so long as you don't distribute your derivative works.

      -Mark

    13. Re:Noone really understands the GPL... by PD · · Score: 1

      Maybe it is odd for you to code over 1,000 lines a day. I do it regularly, and I'd say 85%+ goes into production without change.

      So if you write 1000 lines of code, someone has to go in behind you and rewrite 150 of those lines to get your stuff to work?

      That's not much to brag about...

    14. Re:Noone really understands the GPL... by Xerithane · · Score: 1

      So if you write 1000 lines of code, someone has to go in behind you and rewrite 150 of those lines to get your stuff to work?
      No, it's called QA. You must not be part of a large development team. Lets say an app had 2000 lines. Of which, lets say, 300 are minor fixes. Even GUI changes or something. Then I had zero bugs, and 300 changes that QA decided would be a better product.

      That's not much to brag about...
      What is? 2000 lines with a 5% failure? Considering most programmers I see can't break more than 200 lines a day, and it's riddled with bugs and contains overly long and complex functions to do simple tasks, more programmers need to just do it, do it right.

      --
      Dacels Jewelers can't be trusted.
    15. Re:Noone really understands the GPL... by bahwi · · Score: 2

      The new solution is to have loads of cash($$$$$+) and hire a lawyer, and an experienced programmer, and ask a question, let them confer, and in 2-3 weeks you should receive a bill for work done so far, and in another 2-3 weeks a final bill and an answer.

    16. Re:Noone really understands the GPL... by thomas.galvin · · Score: 2

      If a contract (or portion thereof) is unclear, it becomes unenforceable. IANAL, but in my mind, that would mean that, if reasonable people can't figure out what "linking" means, the responsibilities associated with linking (publish your source code) go out the window...but so do the rights (using/linkingto their code).

      If the GPL doesn't hold up, wouldn't we just revert back to normal copyright law? Either what you are doing with GPLed code is explicitly allowed by the license, or you have no right to use that code.

    17. Re:Noone really understands the GPL... by Ed+Avis · · Score: 2

      Your difficulty is not that you don't understand the GPL; it's that you don't understand what a derivative work is. That is defined by copyright law (statue and, mostly, precedent) and it's not really the GPL's fault that it is unclear.

      There is the language in the GPL about 'mere aggregation' not counting as a derivative work, and I guess this could cover your two-classes-in-the-same-jar example.

      The FSF's opinion, I think, is that linking (whether run-time or compile-time) makes a derived work, but calling via an XML-RPC interface or similar does not. (Otherwise my web browser would be a derivative work of Slashdot.) In the worst case, you can ask the software's copyright holder for clarification of what he or she counts as a derivative work.

      --
      -- Ed Avis ed@membled.com
    18. Re:Noone really understands the GPL... by PD · · Score: 1

      What is? 2000 lines with a 5% failure?

      First it was 1000 lines with a 15% failure. Now it's 2000 lines with 5% failures. And what app has 2000 lines of code? Maybe you only write little applets for your web pages.

      You must drive your manager absolutely nuts. You sound like one of those guys who when asked when it will be done alternates between "real soon" to "about a half hour". Then they work on it for the next two weeks.

    19. Re:Noone really understands the GPL... by Xerithane · · Score: 1

      First it was 1000 lines with a 15% failure. Now it's 2000 lines with 5% failures. And what app has 2000 lines of code? Maybe you only write little applets for your web pages.
      I'm not saying 15% failure. I also was asking what is braggable. If your development skills are on level with your reading skills, I fear for the world.

      A lot of supportive applications are only 2,000 lines anyway. I recently had to write a simple desktop application that connected to a server and displays a nice little treeview. I used QT for Linux and Windows binaries, and the total amount of code I wrote was about 2,100 lines of code. Includes recursive data structures, authentication, network communication, and a nice little HTML display using QTextBrowser. It took me 3 days to get the Release Candidate out, and in it's beta run had one bug reported.

      You sound like one of those guys who when asked when it will be done alternates between "real soon" to "about a half hour". Then they work on it for the next two weeks.

      No, I'm one of those guys that those guys want to be like. Maybe you are just too dense and cynical to realize there are actually people who can write a 2100 line application in 3 days and have it be stable. And my manager absolutely loves me, he bought me a very nice christmas gift too.

      Does it hurt to be wrong?

      --
      Dacels Jewelers can't be trusted.
    20. Re:Noone really understands the GPL... by PD · · Score: 1

      I'm not saying 15% failure. I also was asking what is braggable. If your development skills are on level with your reading skills, I fear for the world.

      At least you didn't say that it depended on what the definition of "is" is.

      I recently had to write a simple desktop application that connected to a server and displays a nice little treeview.

      Oh nice. I'm talking to a button programmer.

      Maybe you are just too dense and cynical to realize there are actually people who can write a 2100 line application in 3 days and have it be stable.

      Not at all. I've implemented 6000 lines in 1 week, with no bugs at all.

      And my manager absolutely loves me, he bought me a very nice christmas gift too.

      Those backrubs are paying off. Good for you.

      heh heh.

    21. Re:Noone really understands the GPL... by wilhelm9 · · Score: 2, Insightful
      If you're building proprietary software for use internally by the company, then they are not, legally, distributing it! In effect, it is purely free, so long as you don't distribute your derivative works.
      But that is "fucking vague" too. Exactly what is "distribute"? If I am working for the government, can I distribute my derivative work to all government subsidiaries without publishing source code? In projects I have worked with, there have been people from several companies involved! Can I share my derivative work with my co-worker?
    22. Re:Noone really understands the GPL... by sjames · · Score: 2

      The GPL doesn't say that you can't create derivative works without giving them away. It says you can't *distribute* derivative works without giving them away.

      You don't have to give it away at all. You may sell it for as much as you can get. It just says that where the binary goes, so goes the source, and that you cannot restrict the recipient from giving them away.

      You're dead on about undistributed works.

    23. Re:Noone really understands the GPL... by Cyno · · Score: 2

      That's it exactly, companies only care about the TCO. If it doesn't cost money then its free. Ideology has no place in business as far as I can tell.

    24. Re:Noone really understands the GPL... by Xerithane · · Score: 1

      Oh nice. I'm talking to a button programmer.
      No, that was actually my first desktop application I've ever written. I do more server side development. Network services interfaces with databases, and sometimes I have to write GUIs. Preference is console, but that is strangely declining amongst todays users.

      Not at all. I've implemented 6000 lines in 1 week, with no bugs at all.
      Congratulations, then why do you find it so alien and hard to believe others can do the same?

      Those backrubs are paying off. Good for you.
      That almost sounds like jealousy. Nothing wrong with showing appreciation.

      --
      Dacels Jewelers can't be trusted.
    25. Re:Noone really understands the GPL... by PD · · Score: 1

      Preference is console

      What is this? Perhaps your blood DOES burn with the heat of code battle. Perhaps your heart is Klingon after all?

    26. Re:Noone really understands the GPL... by SoSueMe · · Score: 1

      From your "Website":
      Posted by: xerithane
      Nonsense

      17:17:56 on 12/13/2002

      So I'm too lazy to get the actual email activation script going, but I ensure you that it will be done. I'm working on a new secret project right now that will hopefully be done this weekend. I fell ill Sunday which lasted until Wednesday and killed my productivity. What should have been done Monday night was not-quite-finished yesterday.

      So, after I get done with this project, I'll have some more time to work on nerdfarm. In the meantime, I'm checking the Users table and manually activating. So if you care to post, or anything, just try to log back in in a day or so and you should be able to.


      How's the secret project going, or is that classified?
      Hope you're feeling better/bitter.
      Email activation script still not going?
      That's, what, 3 weeks ago? I guess you miscalculated that timeline, huh?

    27. Re:Noone really understands the GPL... by Xerithane · · Score: 1

      What is this? Perhaps your blood DOES burn with the heat of code battle. Perhaps your heart is Klingon after all?

      I'm sure you would rest easy knowing that I also did some assembly code 10 years ago, too?

      The wreckless days, writing stupid DOS games in between college classes.

      --
      Dacels Jewelers can't be trusted.
    28. Re:Noone really understands the GPL... by jbolden · · Score: 2

      my web browser would be a derivative work of Slashdot.

      AFAIK while your browser is displaying slashdot materials it is a derivative work of Slashdot. That's why I can't go to a copywrited website "print to file" and then repost the information at will.

    29. Re:Noone really understands the GPL... by jbolden · · Score: 2

      I'm not a lawyer but I'll take a crack.

      If two classes are in the same jar, are they linked?

      Lets say class A is GPLed. You have a class B which is BSD
      You create a .jar with A and B; obviously that is GPLed since you can't distribute A without distributing source regardless of what else you package with it.

      If an interface is BSD-licensed or just public domain, but an implementation is GPLed, can I use runtime class binding to invoke it from a piece of commercial software?

      If the implementation is GPLed it doesn't matter what the license on the interface is. If you use the implimentation you are doing the linking. If you provide a tool to do the linking but don't actual do the linking (i.e. the customer does the linking) you are probably OK.

      jurisprudence out there is based on concepts like "would a reasonable person expect that..."

      As far as I know for technical terms "reasonable person" becomes reasonable specialist. That is the question becomes "would a reasonable programmer expect that...."

      then the contract is, IMHO, on shaky grounds when it comes to enforcement in a court of law.

      Remember the burdon is on you to verify you are in compliance with a license. In other words to use the software at all you'll need to show you took positive steps to be in compliance.

    30. Re:Noone really understands the GPL... by jbolden · · Score: 2

      If I am working for the government, can I distribute my derivative work to all government subsidiaries without publishing source code?

      I don't think you can distribute it to any of them. Basically if you don't already own the source (i.e. you aren't the author) then you are being distributed to. Now the government may not have to distribute to individual employees but if you sell / write the code for the government they are entitled to source.

    31. Re:Noone really understands the GPL... by Xerithane · · Score: 1

      How's the secret project going, or is that classified?
      Well, very very well.

      Hope you're feeling better/bitter.
      No, check my journal. I may have to get surgery soon. Thanks for your concern.

      Email activation script still not going?
      Yes, it works but not on that site.

      That's, what, 3 weeks ago? I guess you miscalculated that timeline, huh?
      What timelime? That's a project that I work on when I get free time and nothing more.

      --
      Dacels Jewelers can't be trusted.
    32. Re:Noone really understands the GPL... by p3d0 · · Score: 2
      AFAIK while your browser is displaying slashdot materials it is a derivative work of Slashdot. That's why I can't go to a copywrited website "print to file" and then repost the information at will.
      No way. You're thinking too hard. The browser doesn't become a derivative work of the page that's displayed. That's just bizarre.

      If you download a page and print it, you have made an unauthorized copy, plain and simple.

      --
      Patrick Doyle
      I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
    33. Re:Noone really understands the GPL... by jbolden · · Score: 2

      How have I "copied it"? My browser got a bunch of HTML it produced a bunch of (lets say PDF) when I printed to file. The fonts came from me, the image rendering came from me, the placement came from me..... That is an original piece of work created by my browser which depends crucially on the HTML original; ie. its not a copy its a derivied work.

    34. Re:Noone really understands the GPL... by Tony-A · · Score: 2

      Methinks you're onto a key point here. The final result is derived from the HTML original and also the fonts, the placement scheme, and the image rendering. It's not derived from *one* source, it's derived from *several* sources. Probably why the GPL or some such wins out in the end. Too many things to try to keep track of.

    35. Re:Noone really understands the GPL... by Anonymous Coward · · Score: 0

      I've contracted for multiple fortune 100 companies and personally installed 1000's (literally) of GPL'd modules onto their server machines.

      No you haven't, you troll. You're just a clueless 14-year-old fuck.

    36. Re:Noone really understands the GPL... by Babylon+Rocker · · Score: 1

      Have a look at this whitepaper by Matt Asay. It's been a while since I read it, but IIRC he argues that linking has come to be viewed as not creating a derivative work, and thus linking does not invoke copyright law. Thus you are not required to accept the GPL license in order to link. [IANAL.] The whitepaper was originally discussed in this article.

    37. Re:Noone really understands the GPL... by Anonymous Coward · · Score: 0

      you are turning me on

      please touch my 14-year-old female weiner with your mouth

      i want you to touch my weiner while my father and preacher yell at me

      hit it very hard

      thank you for hitting it harder and i love you please marry

    38. Re:Noone really understands the GPL... by RatFink100 · · Score: 2
      In the worst case, you can ask the software's copyright holder for clarification of what he or she counts as a derivative work.

      IANAL but surely the definition of what is derivative should be an independant legal one - not defined by one of the parties. Otherwise you may as well replace the language that says "if you produce a derivative work you must publish the source" with "you must publish the source if I say so".

    39. Re:Noone really understands the GPL... by Web+Usability · · Score: 1

      Your difficulty is not that you don't understand the GPL; it's that you don't understand what a derivative work is. That is defined by copyright law (statue and, mostly, precedent) and it's not really the GPL's fault that it is unclear.

      This is correct when it comes to the GPL, because nowhere does the GPL try to offer a definition for the term 'derivative', rather it leaves it to the law:

      The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language.

      Now contrast that with the LGPL:

      5 . A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.

      However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License.

      The above paragraph is actually defining the term 'derivative' as it applies to software libraries, rather than just providing a license term. This raises two issues:

      1. Is there clear case law to support this definition?
      2. The definition of the term 'derivative' uses the term 'linking', so what is the legal definition of the term linking? since there is no legal definition, then we use the English meaning, but since we are in a technical context we use the technical meaning. The question becomes: is there a clear technical definition for the term 'linking'? From the raging debate over the technicalities of linking, there does not seem to be such a legally sound definition of this term.
    40. Re:Noone really understands the GPL... by p3d0 · · Score: 2

      Fine. But your browser is not a derivative work, which was the original claim. And besides, it's moot, because copyright protects derivative works just like copies anyway.

      --
      Patrick Doyle
      I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
    41. Re:Noone really understands the GPL... by jbolden · · Score: 2

      Its the browser + data combination that is capable of generating the derivitive work hence the browser + data is the derived work. I was using "browser while displaying slashdot" as short for browser + data.

    42. Re:Noone really understands the GPL... by p3d0 · · Score: 1
      If you view a PDF file using Acrobat, it doesn't make Acrobat a derivative work of the file you are viewing.

      If you transcribe a book with a pen, the pen is not a derivative work of the book.

      The browser is the tool used to copy/derive the work. It's not part of the work.

      --
      Patrick Doyle
      I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
    43. Re:Noone really understands the GPL... by jbolden · · Score: 2

      Its not the pen but the person holding and using the pen that has the knowledge. What the person creates is the derivitive work. If the pen could create a copy independently of the user then it would be the derivite work.

      In other words X is a derivitive work if X contains the intellectual property. So yes when Acrobat is viewing a PDF it is a derivite work of the .pdf. You are just restating the browser example.

    44. Re:Noone really understands the GPL... by Minna+Kirai · · Score: 2

      You're dead wrong. If one employee of a company copys a program for another, she's just distributed it. That definition holds in both the English language, and courts of law. Even though corporations are in certain situations treated like a single entity, Intellectual Property law isn't one of them.

      Can AOL buy a single copy of Microsoft Office for all of their employees?
      No, that would violate copyright.

      Can AOL modify OpenOffice.org (LGPL) and give it to all their employees?
      No, that would violate copyright too.

      First they'd have to agree to the LGPL, which means they'd have to give every recipient (each employee) permission to take a copy home and post it on their webpages.

      The (L)GPL doesn't require you to publish changes you've made for all the world to see. However, if one of the people you've given it to (an employee) decides he wants to spread it far and wide, you've got no recourse to stop him. (Besides the threat of firing. Which may be effective, but illegal)

    45. Re:Noone really understands the GPL... by p3d0 · · Score: 1

      Well, I think you may find yourself alone in your creative legal interpretation.

      --
      Patrick Doyle
      I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
    46. Re:Noone really understands the GPL... by Arandir · · Score: 2

      You're nucking futs! If you don't believe me, I'll sue you for creating a derivative work of this post upon your optic nerves!

      Geez! Acroread, Mozilla, et al, are NOT derivative works! At most, the RAM on the computer holds a copy, clearly allowed under copyright law, fair use, and several court cases.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    47. Re:Noone really understands the GPL... by Ed+Avis · · Score: 2

      Just to clarify: I meant that mozilla itself is not a derivative work of Slashdot merely because it _can_ contact the Slashdot site and download some HTML. Whereas in the opinion of the FSF and others, a program which can and does load (say) the Qt library at run time is a derivative work of Qt. The difference is between calling a published 'external' interface (such as http) and making the other program directly part of your own code (such as by linking it into a single executable, whether at compile time or dynamically).

      In a way I agree with what some other posters said, even though they are getting away from the original point: if you loaded up ggv and viewed a PDF file, then did a core dump of the ggv process viewing the PDF, this code dump would be a derivative work of both ggv and the document. However ggv itself, as an executable or whatever, is not a derivative work of the PDF document just because it _can_ load and display the file.

      --
      -- Ed Avis ed@membled.com
  7. Libre by Anonymous Coward · · Score: 0

    It is either encumbered, or unencumbered.

    A benevolent dictator is still a dictator, and you are still not free.

  8. Alas.. by grub · · Score: 0


    the work derives from previous code

    geeks and nerds rejoice

    RMS picks crumbs from his beard

    microsoft profits

    --
    Trolling is a art,
  9. My concerns about collaboration and derivations by karmawarrior · · Score: 3, Insightful
    One of the issues that the whole derivative work sphere has is that it in many ways contradicts the normal notions of collabaration, where usually people work together in a controlled environment to create a work. In open source and free software, in general it's assumed that people will if they can, but the systems are set up to allow different forks to go ahead. This leads to interesting results: people working together usually have the same aims, for someone to split off a project and develop independently suggests a difference in goals, and this in itself suggests that the people concerned may have differences of opinion that are more than just technical.

    The GPL was created for a specific aim - to ensure that there would be a base of software that is, for want of a better term, free to the end user. That means that the end user need not care about how the software is created and the aims of the person creating it, but is able to use the software for their own personal use to the best of its capabilities. If the software needs to support something new, they can change it. But in itself, this promotes a non-collaborative paradigm. And this creates - as you can see from some of the heated discussions of GPL vs BSD/X11, etc, discussions on Slashdot - an ironic dichotomy where the aims of those who use GPL'd software may be at odds with those of the original developers, almost my definition.

    This quagmire of free software frustrating a small minority of those who are uninvolved in its development who in many ways wish to remove the very freedoms the GPL provides to users of their own derived software will not go away by itself. Unless people are prepared to actually act, not just talk about it on Slashdot, nothing will ever get done. Apathy is not an option.

    You can help by getting off your rear and writing to your congressman or senator. Tell them you believe that collaboration and the use of derivation is something you want to encourage. Tell them that you appreciate the work being done by the free software and open source communities, but if the freedoms they introduce end up being compromised by incompatable derived software that removes those freedoms you will be forced to use less and less secure and intelligently designed alternatives. Let them know that SMP may make or break whether you can efficiently deploy OpenBSD on your workstations and servers. Explain the concerns you have about freedom, openness, and choice, and how we need to work together to create a world where collaboration and derivation is a norm that can be relied upon to exist. Let them know that this is an issue that effects YOU directly, that YOU vote, and that your vote will be influenced, indeed dependent, on your legislator's policy towards free and open software.

    You CAN make a difference. Don't treat voting as a right, treat it as a duty. Keep informed, keep your political representatives informed on how you feel. And, most importantly of all, vote.

    --
    KMSMA (WWBD?)
    1. Re:My concerns about collaboration and derivations by Anonymous Coward · · Score: 0

      GODDAMMM bickering geeks. It's all fun and games until someone messes with your code, then all of a sudden you sound a lot more like *proprietary* coders.

  10. Quoth the attorney by qwijibrumm · · Score: 5, Interesting
    2) The meaning of derivative work will not be broadened to include software created by linking to library programs that were designed and intended to be used as library programs. When a company releases a scientific subroutine library, or a library of objects, for example, people who merely use the library, unmodified, perhaps without even looking at the source code, are not thereby creating derivative works of the library.
    Ok, cool. But doesn't the GPL also prohibit linking to proprietary programs under most (all?) circumstances? If I want some big company to use my libraries, I'll release them under LGPL which doesn't have this provision. Musicmatch Jukebox links to Lame, an LGPL library. I don't know that anyone ever implied that linking did create a derivative work. But it's still illegal if I link a proprietary program to a GPL library.
    --
    I wish there was some there was some way that I could be outside playing basketball, in the rain, and not get wet.
    1. Re:Quoth the attorney by William+Tanksley · · Score: 2

      You're correct about what the GPL prohibits -- but the problem is that the GPL may not have the legal power to prohibit that, since it explicitly only affects derivative works, not "use".

      Linking to a library is quite arguably use, not derivation. Of course, distributing the library definitely falls under the terms of the GPL, but that doesn't make it clear that the GPL can require anything about the program being linked, only the library.

      -Billy

    2. Re:Quoth the attorney by Anonymous Coward · · Score: 0

      Blatantly untrue. Consider.. every Linux commercial application is illegal because they're almost all compiled with gcc and linked with libc... and libc is actually all GPL'd under Linux, since its from the FSF.

      So you're saying that because someone worked for 2 yearsd on a mass of code, which uses printf(), it suddenly must be GPLd?

      No, obviously not.

      The distinction is quite complicated, and no one knows the answer legally. In reality, we all know to take it easy, but legally? Who knows...

    3. Re:Quoth the attorney by qwijibrumm · · Score: 2

      Well my brain hurts like hell after reading more into this subject, going over the GPL/LGPL line by line.... After reading the LGPL I now see how linking can create a derivative work. In that being compiled against the library the result now shares common code... I agree with this now.

      However I am now failing to see how a program could simply "use" a library. If someone could enlighten me I would appreciate it.

      --
      I wish there was some there was some way that I could be outside playing basketball, in the rain, and not get wet.
    4. Re:Quoth the attorney by qwijibrumm · · Score: 2

      You confuse GPL and LGPL glibc is LGPL and thus can have proprietary programs linked against it.

      --
      I wish there was some there was some way that I could be outside playing basketball, in the rain, and not get wet.
    5. Re:Quoth the attorney by Anonymous Coward · · Score: 0

      However I am now failing to see how a program could simply "use" a library. If someone could enlighten me I would appreciate it.

      I doubt my comments are worthy of the word "enlighten", but I'll give it a go...

      I would say calling a function from a DLL can only be considered 'use'. You don't need the code to build the DLL, you can just call functions in it.

    6. Re:Quoth the attorney by Arandir · · Score: 4, Insightful

      However I am now failing to see how a program could simply "use" a library. If someone could enlighten me I would appreciate it.

      Okay, let's imagine a hypothetical GPL'd glibc. Then you write a generic "Hello World" program. Your program merely uses glibc. It does not derive from it.

      When someone asks you which libraries are involved in running your "Hello World" program, they will say "what libraries do you use", and not "what libraries have you derived from."

      1) The C API is essentially in the public domain. There are many implementations of it, and your program has no way of knowing which implementation it is linking to.

      2) The linkage happens at run time. It is the end user who actually shoves the program and the library into the same process space. Not the developer. What you are distributing has zero glibc code in it.

      3) glibc was *meant* to be used in such a manner. It has been created and distributed for wide general use by people outside of the GNU project. This is the main point of the second bulletted item in the article.

      4) Dependency is not derivation. It may seem so in some software languages, but they are two distinct things when it comes to copyright.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    7. Re:Quoth the attorney by MrGrendel · · Score: 2
      There are two problems with this.

      1. Linking to an OO library and inheriting a class makes the distinction between simple use and derivation extremely fuzzy. For example (real world), I have a library that implements an engine to simulate spiking neural networks. There is a Neuron class with a virtual function used to model the behavior of the neuron. If company X comes along and uses my library and implements a Neuron class with a different neuron model than the default, I say that's a derivative work. Why? Because if someone found a more efficient way to do the calculations required for the default model, it would be trivial for them to produce a new library that links against mine, with enhanced performance, but no separate functionality for the end user. If proprietary wrapper libraries with enhancements of core functionality can link against GPL libraries, then virtually all OO library code distributed under the GPL is at risk. On the other hand, if I had a hypothetical math library with an object that performs operation X, linking against that library and instantiating the object probably does not count as a derivative work.

      2. If I have an application that is distributed with several libraries that were developed specifically for use with my executable, any program that links against those libraries should be considered a derivative work regardless of the importance of the function calls being made. This is because the libraries were created for technical reasons, not for distribution as general purpose libraries. It is the equivalent of linking against a function in a regular executable. The fact that the link is technically against a library that is distributed with an executable should not be viewed as an exploitable loophole in the GPL.

      I think the rule of thumb people should use for deciding when linking constitutes a derivative work is whether or not the person doing the linking is trying to "get around" the GPL. If you think you've found a clever way to make use of GPL'd code without making your own code GPL, then you are probably violating the license. If the functions you are using are trivial additions to your own code (they could be easily replaced by alternatives AND are not related to the core functionality of your program) then linking should be fine. If the library implements the core functionality of your program, and your code just provides additional features, then don't link unless your code is also GPL'd.

    8. Re:Quoth the attorney by William+Tanksley · · Score: 2

      There are two problems with this.

      Problem #1 isn't a problem with my logic; it's a fear you have. Problem #2 is defensible, but doesn't work well with what the GPL claims to be doing as a license.

      Let me comment that regardless of the GPL's claims as a license, it has a very powerful goal that's entirely separate: it's trying to destroy licenses. If the GPL actually can't apply the very simple restriction it applies, then neither can common proprietary licenses.

      I love that.

      However, for pragmatic reasons, I choose a license for its qualities as a license, not a tool for social change. If the GPL were a quality license as well as a tool for social change, I would use it. But it's not. Fortunately, the LGPL is both a good license and a decent (although less effective) tool for social change; that's the one I usually use.

      1. Linking to an OO library and inheriting a class makes the distinction between simple use and derivation extremely fuzzy.

      No, it doesn't. It's still doing the same things that I claim are legal under any license: using a predefined interface to produce an entirely new object.

      If company X comes along and uses my library and implements a Neuron class with a different neuron model than the default, I say that's a derivative work. Why?

      Exactly my question: why?

      Because if someone found a more efficient way to do the calculations required for the default model, it would be trivial for them to produce a new library that links against mine, with enhanced performance, but no separate functionality for the end user.

      That's true, but it's a total non-sequitur. The fact that you WANT it to be a derivative work, or that if it were a derivative work you'd be better off, doesn't make it a derivative work.

      If proprietary wrapper libraries with enhancements of core functionality can link against GPL libraries, then virtually all OO library code distributed under the GPL is at risk.

      For some definition of "at risk", yes. Exactly.

      On the other hand, if I had a hypothetical math library with an object that performs operation X, linking against that library and instantiating the object probably does not count as a derivative work.

      Correct. For very simple reasons which also apply to inheritance.

      2. If I have an application that is distributed with several libraries that were developed specifically for use with my executable, any program that links against those libraries should be considered a derivative work regardless of the importance of the function calls being made.

      In other words, your intent should be used in order to figure out how your license applies. This is valid legal reasoning, and so is your strongest point. The problem is that your intent can't be used to constrain people in illegal ways; if copyright law defines what "use" versus "derivation" is, you can't change that simply by intending to.

      Once again, this is the great battle the GPL is intended for: to highlight just how stupid typical software licenses are. It's designed and intended, according to its own rationale, to fight copyright law by using it against itself.

      It's just an unfortunate fact that a license designed to contradict itself isn't a very good license, although it may be a great political document.

      This is because the libraries were created for technical reasons, not for distribution as general purpose libraries. It is the equivalent of linking against a function in a regular executable. The fact that the link is technically against a library that is distributed with an executable should not be viewed as an exploitable loophole in the GPL.

      Again, intentions carry legal weight, but even if this were explicit it wouldn't be a legally permissible item.

      Let me add one more thing: the GPL _can_ regulate distribution, so if you statically link your software, or you dynamically link but distribute the dynamic library with your software, the GPL is well within its rights to regulate the resulting composite package. You have no right to distribute if you fail to distribute according to the terms of the GPL.

      -Billy

    9. Re:Quoth the attorney by qwijibrumm · · Score: 2

      Thanks, that does put it into perspective quite well.

      --
      I wish there was some there was some way that I could be outside playing basketball, in the rain, and not get wet.
    10. Re:Quoth the attorney by Anonymous Coward · · Score: 0

      Once again, this is the great battle the GPL is intended for: to highlight just how stupid typical software licenses are. It's designed and intended, according to its own rationale, to fight copyright law by using it against itself.

      It's just an unfortunate fact that a license designed to contradict itself isn't a very good license, although it may be a great political document.


      Very well said.
      (quoted because most folks probably didn't make it through your post.)

    11. Re:Quoth the attorney by MrGrendel · · Score: 2
      The fact that you WANT it to be a derivative work, or that if it were a derivative work you'd be better off, doesn't make it a derivative work.
      First of all, that's not what I was arguing at all. I gave an example of how someone can create a derivative work without using any actual code from the original library. The Copyright Act says that a derivative work is "any . . . work [that] may be recast, transformed, or adapted. A work consisting of editorial revisions, annotations, elaborations, or other modifications which, as a whole, represents an original work of authorship, is a 'derivative work.'" My example of the derived Neuron class is both a transformation and an elaboration. (The fact that a class that inherits from another class is called a 'derived' class should make it obvious that it is, in fact, a derivation.) An analogy can be made with traditional literature to make this even more clear. A sequel to a novel or a movie is widely recognized as being a derivative work. This is true even though sequel may not use any text from the original at all. The fact that it is based on the original and is presented in the context of the original makes it derivative. The same holds for libraries. If a work depends on a library for core functionality (i.e. it is fundamentally incomplete and incoherent without the library) then it is derived.

      Looking at it from the perspective of the source code, the code for the derived Neuron class would make no sense at all to someone reading it if they knew nothing about the original library. The source for the derived Neuron makes sense only within the context of the original work. How can that not be a derived work? The test for determining whether or not a program is derived should be based on the relationship of the secondary work's source code relative to the first. The method used to link object code together is really irrelavent. It is the source code that constitutes the primary derivative work, not the object code (object code is treated as a derivative of the source because it is derived (translated) from the source).

      the GPL _can_ regulate distribution, so if you statically link your software, or you dynamically link but distribute the dynamic library with your software, the GPL is well within its rights to regulate the resulting composite package.
      Following this logic along with your assertion that basing one library or program on another does not constitue a derived work, then any GPL'd program can be enhanced and released as a proprietary program without violating the GPL. Say that I have my eyes on the GPL'd Foo program and I want to put a modified GUI on it and add a few features and then sell it as a proprietary program. I take the original program and turn it into a library (libFoo). Then I put all of my enhancements into the Bar program (note that Bar cannot function without being linked to libFoo). Then I distribute two install programs. One contains libFoo with its source as required by the GPL. The second program contains the Bar executable and statically links Bar with libFoo before installing the final executable. As a final step, libFoo is uninstalled along with its source. The user will probably never know that Bar is really a modified version of Foo. Technically, I did not distribute the GPL code with my code since the two files had to be downloaded separately by the user. Nor was my executable linked with a GPL'd library at the time of distribution. As a variation, we can imagine that libFoo is dynamic and is not uninstalled after Bar is linked to it. The end result is the same -- I have made substantial modifications to a GPL'd application and distributed my enhancements without making my source available.

      I don't think anyone would reasonably claim that the above example is legal. The final program is very clearly a modified version of the first. It is a clear violation of the GPL. Clever coding and distribution does not change that.

    12. Re:Quoth the attorney by William+Tanksley · · Score: 2

      First of all, that's not what I was arguing at all.

      Thank you for the clarification -- I definitely misunderstood you originally. You're making a lot more sense now :-).

      My example of the derived Neuron class is both a transformation and an elaboration. (The fact that a class that inherits from another class is called a 'derived' class should make it obvious that it is, in fact, a derivation.)

      The difficulty to me is that arguments about this can go either way. The term 'derived class' doesn't mean much; it's a technical term, not a legal one.

      However, there's a clear comparison between deriving a class and deriving (for example) a universe -- taking someone else's imaginary world and characters, and telling a story using them (possibly adding some of your own). Citing this comparison would tend to support the GPL.

      On the other hand, derivation from a class is an explicit use of certain features of the class -- virtual functions, compiler features, and so on, things which are built in to the class for that purpose (even if the author didn't expect them to be used). And _use_ is unaffected by copyright law (I'm not referring to Fair Use, which actually involves copying, not just using).

      The pro-GPL comparison above is discussed in literary terms (i.e. no discussion of the GPL, merely of ACTUAL known copyright law as it is applied to things like fan fiction) at Chilling Effect. In summary, I think (IANAL) that the comparison is powerful and would be used in a court of law -- of course, whether it overrode the argument of Mere Use is not clear to me (it definitely doesn't have _anything_ to do with Fair Use; any sane judge would laugh if asked whether using a Free program to make a proprietary one was Fair).

      There's a very close analogy to the discussion of the TSR cases; both deal with "derived classes" (although in a different sense of the word "class"), neither one implies distribution of copyrighted material, but in both cases using the "derived" material requires use of the protected material. Reading it doesn't answer questions (as you'd expect from free legal advice), but it perhaps hints at where to look.

      My free-of-charge opinion: the GPL clearly requests certain things of users (including developers), and it's clearly morally wrong to disregard the wishes of the author; I would no more take advantage of an alleged flaw in the GPL than I would violate any other license (within reason). HOWEVER, the GPL is _entirely_ vulnerable to legal criticism, and will absolutely NOT provide the protection it's being asked to when attacked by a well-funded opponent.

      Any sufficiently well-paid lawyer would give you similar advice. Pay the lawyer well enough, of course, and he'll represent either side, since both are defensible; however, before you've chosen which license you're going to use, you have to be warned about even a _potential_ weakness.

      I don't think anyone would reasonably claim that the above example is legal. The final program is very clearly a modified version of the first. It is a clear violation of the GPL. Clever coding and distribution does not change that.

      Definitely not moral. Almost certainly legal, specifically because of the extraordinary actions. You can call it an end-run around the license; the person posting it would call it extraordinary efforts to comply with a restrictive license.

      -Billy

  11. 3rd times the charm by arcadum · · Score: 1

    It looks like... the GPL needs to be amended.

    1. Re:3rd times the charm by grub · · Score: 1

      Yep, once it hits 20 pages then people will start to take it seriously.

      --
      Trolling is a art,
    2. Re:3rd times the charm by SweetAndSourJesus · · Score: 1

      Once you need a lawyer to tell you what it means it will be taken seriously.

      People don't like laws and licenses they can understand.

      --

      --
      the strongest word is still the word "free"
  12. So.. by grub · · Score: 0


    if I GPL my turds, do corn farmers get to claim prior art?

    --
    Trolling is a art,
  13. This article is not legal advice by DeadSea · · Score: 5, Insightful
    The primary indication of whether a new program is a derivative work is whether the source code of the original program was used, modified, translated or otherwise changed in any way to create the new program. If not, then I would argue that it is not a derivative work.
    This is not the definition of derivative work that is assumed by the GPL. The GPL assumes that a derivative work is any work that uses another work. (In the GPLs case, by linking to it). If this were (legaly) not the case, as the article exists, then there would be very little difference between the GPL and the LGPL (which specifically allows usage without modification).

    For an interesting read of why usage constituting a derivative work would be important to free software (and is part of the GPL) read Why you shouldn't use the Library GPL for your next library from gnu.org.

    I myself have written popular Java libraries that I license under the GPL (not the LGPL) because I want to encourage free software development.

    If you wanted to make a movie, and in your movie you had another movie playing in the background on a tv on the set, do you think you should have the right to distribute your movie containing somebody else's movie? (Ignoring fair use such as parody) I don't think you should be able to.

    The article seems to be written to allay fears of business leaders that they occur legal risk by using open source software. The article does not offer good advice. I would recommend, that if you were to use open source software in closed source, look for a license that specifically allows you to do so (such as the LGPL) rather than relying on an untested definition of derivative work.

    1. Re:This article is not legal advice by sudog · · Score: 2

      The LGPL/GPL don't just "assume" the meaning of derivative work. They quite explicitly define it.

    2. Re:This article is not legal advice by Anonymous Coward · · Score: 0, Flamebait

      It does not matter how it is "assumed" that the GPL works.

      It matters how the law thinks it works.

      By making your libraries GPL, you are making sure no one will use them for truly useful purposes.

      Even the nutjobs at the FSF don't make glibc GPL. They know better. They talk about how bad the LGPL is, but they continue to use it.

      Besides Linux, no major useful software for developers is GPL only. Apache, X, GTK+, Qt (dual licensed).

    3. Re:This article is not legal advice by DeadSea · · Score: 2
      The LGPL/GPL don't just "assume" the meaning of derivative work. They quite explicitly define it.
      But if copyright law defines derivative work as the article suggests, then the definition in the LGPL/GPL is meaningless because those licenses get their teeth from copyright law. If the courts decide that usage does not constitute a derivative work, than anybody may use your GPLed code (without modifying it) and distribute their stuff even though the GPL says otherwise.
    4. Re:This article is not legal advice by vslashg · · Score: 3, Interesting

      The GPL assumes that a derivative work is any work that uses another work. (In the GPLs case, by linking to it).

      No, see, it really doesn't. What the GPL says about it is this (emphasis mine):

      This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".

      It's fine and dandy that RMS thinks that dynamic linking makes a derivative work, but all too often we seem to lose sight of the fact that the GPL is a license. No matter what RMS thinks the GPL means, it means what it says, nothing more or nothing less. It's far from clear that dynamically linking to a library creates a derivitive work. There are lots of ways where this kind of thinking is problematic:

      1. If I create a GPL'd plugin for WinAmp, does that make WinAmp GPL? I think most reasonable people think the answer is no.
      2. If I create a GPL'd media player, and a third party makes a proprietary plug in, is this illegal? This is really the case that's up in the air here... the answer only depends on whether the plug in is legally a "derivative work" or not.
      3. But if it is... then what happens if I create a GPL'd media player that can use WinAmp plugins? Do all proprietary WinAmp plugins become GPL? Well, of course not, but doesn't this make case two problematic?

      Stating the obvious, but a dynamic library is nothing more than a set of entry points with documented behavior. By design. That's what it's intended to do. Calling something that uses a tool to do something a derivation of the original work is on shaky ground. That's like arguing a novel written in emacs is GPL. Anyway, I'm not arguing that a license couldn't provent this sort of thing; I just think version 2 of the GPL doesn't.

      If you wanted to make a movie, and in your movie you had another movie playing in the background on a tv on the set, do you think you should have the right to distribute your movie containing somebody else's movie?

      No, but I don't think that's a fair analogy anyway. I hope it's obvious why...

    5. Re:This article is not legal advice by istartedi · · Score: 2

      Of course, I've never been in a situation where a GPL'd library was the *only* solution. If I were, what's to stop me from using it to write an "interpreter" for a "language" that uses the library, and then having all the "programs" that I write in that "language" be proprietary? For example, my language has one command, gnufu and the only program written in my language just calls gnufu. OK, a trivial case like that is obviously contrived to violate the GPL, but what about something more complicated like a Java implementation?

      --
      For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
    6. Re:This article is not legal advice by sudog · · Score: 4, Insightful

      Doesn't matter--redistributing the software afterwards implies acceptance of the GPL terms: why do you think no company has actually tried to challenge the GPL yet? If they did, then many of the clauses in their own licenses would also be void--and they don't want that.

      So we win both ways: if the companies claim that the GPL is unenforcable for simple linking, then much of the commercial EULA and licensing that is similar is also invalid. If they claim otherwise, then the GPL is totally enforceable and we also win.

      Pure genius.

      However, it is meaningful, and you aren't quite informed as to what the courts will or won't allow.

    7. Re:This article is not legal advice by jas79 · · Score: 1

      "If the courts decide that usage does not constitute a derivative work, than anybody may use your GPLed code (without modifying it) and distribute their stuff even though the GPL says otherwise."

      Yes , that would allow someone to distribute the programm which links against a gplled libary. But section 7 of the gpl forbids the distribution of the library when a court disagrees with the license.

      the only arround this would be having the end-user download the library himself.

    8. Re:This article is not legal advice by DeadSea · · Score: 2
      Your three cases are an interesting. However:

      The GPL uses linking to define acceptable uses for what might be considered derivative works under the law.

      With your first point about a Winamp plugin making Winamp GPL: This could never happen as Winamp is a standalone product, the plugin is not. Since Winamp does not depend on the plugin, it is not a derivative work. It doesn't matter what the GPL says because copyright law takes precedent.

      As to your second point, this is where the article and I disagree. The article says that the plugin to winamp would not be a derivative work, I say it would. To my knowledge this has never been tested in a court of law.

      As to your third point, you try to show a contradition, but the missed sublety about copright law being stronger than the GPL in your first point makes the contradition dissappear. In this case, if a plugin can function without the GPLed software (it was originally written as a plugin for something else) then under copyright law it would not be considered a plugin and GPL would have no say. It has not been tested in court to my knowle

    9. Re:This article is not legal advice by LordNimon · · Score: 1
      Unfortunately, they don't have the right to define what a derivative work is, as only the courts can make that determination, and so far they haven't.

      IMHO, including a header file or dynamically linking a header file does not constitute a derived work, but I'd be surprised if most people agreed with me. Regardless, my opinion is no more legally binding than that of the FSF.

      --
      And the men who hold high places must be the ones who start
      To mold a new reality... closer to the heart
    10. Re:This article is not legal advice by LordNimon · · Score: 1

      Oops, I mean dynamically linking a library, not a header file.

      --
      And the men who hold high places must be the ones who start
      To mold a new reality... closer to the heart
    11. Re:This article is not legal advice by SerpentMage · · Score: 2

      No I think that the EULA is not being contested. What is being said is that if the judges need to use copyright law to define the GPL, then linking may not be enforceable under the copyright paradigm.

      --

      "You can't make a race horse of a pig"
      "No," said Samuel, "but you can make very fast pig"
    12. Re:This article is not legal advice by civilizedINTENSITY · · Score: 2

      Doesn't distribution come into play? If I download GPL-ed software, I can use it "internally" without worrying about the GPL. Its if I distribute it that it matters. So if I write a GPL-ed winamp plugin, you could download winamp, and then download my plugin, and use the two together without worrying about the GPL. At this point the GPL says you are using the software. However, to distribute my plugin with winamp, wouldn't you then have to GPL winamp?

    13. Re:This article is not legal advice by SerpentMage · · Score: 2

      And here is the kicker in your third point.

      Ok there is a GPL'd Web Server. Kickass and fast. So I develop an ISAPI interface onto the GPL'd Web Server. The ISAPI interface can then execute plugin's from both IIS and this kickass Web Server. So now comes the question, does the ISAPI plugins need to be Open Source? According to your previous comment no. But yet I linked into the Web Server, albeit a standard interface. Therefore I can sell my product with both IIS and the Kick Ass Web Server since IIS is already distributed for free.

      In other words I have found a loophole? And I think this is the issue that the original article is trying to raise.

      BTW a part decision in this has already been made by a judge. She said that using standard interfaces to interact with a GPL program does not constitute a breech of contract. This is because the program does not depend on the other program.

      Therefore all you have to do is create standard interfaces for public consumption....

      --

      "You can't make a race horse of a pig"
      "No," said Samuel, "but you can make very fast pig"
    14. Re:This article is not legal advice by civilizedINTENSITY · · Score: 2

      ...then what happens if I create a GPL'd media player that can use WinAmp plugins? Do all proprietary WinAmp plugins become GPL?

      Not if they are just being used. It is only an issue if they are being distributed. I wouldn't have the right to distribute my propietary plugin with the gpl-ed player. However, someone could download both and use both together.

    15. Re:This article is not legal advice by DeadSea · · Score: 2
      Ok there is a GPL'd Web Server. Kickass and fast. So I develop an ISAPI interface onto the GPL'd Web Server. The ISAPI interface can then execute plugin's from both IIS and this kickass Web Server. So now comes the question, does the ISAPI plugins need to be Open Source? According to your previous comment no. But yet I linked into the Web Server, albeit a standard interface. Therefore I can sell my product with both IIS and the Kick Ass Web Server since IIS is already distributed for free.
      Under your loophole, you could probably distribute your work. Normally the GPL would try to prevent you from distributing your work by claiming that your work is a derivative.

      However, as others have pointed out in other comments here, the GPL has a clause to fall back on even if the linking does not make a derivative work (as is almost certainly the case here.) In this case, the GPL forbids your from distributing the GPLed server.

      You could sell your product, but you would have to tell people to buy a copy of IIS or download the GPLed web server separately from a different source.

    16. Re:This article is not legal advice by bahwi · · Score: 2

      "But we should not listen to these temptations..."

      Although you would think I cut and pasted this out of a transcript from a church, I did not. Find it
      here.

      It's from this paragraph specifically:

      "But we should not listen to these temptations, because we can achieve much more if we stand together. We free software developers should support one another. By releasing libraries that are limited to free software only, we can help each other's free software packages outdo the proprietary alternatives. The whole free software movement will have more popularity, because free software as a whole will stack up better against the competition."

      Hallelujah! Hallelujah!

      --

      On subject though, I am a diverse person and believe everything should be licensed in an appropriate manner, and that should be up to the author entirely(which, thankfully, it is). Yes, Proprietary Developers have money with which to develop, you know, big, faceless corporations do, smaller companies who can only eek out $1000 for a project do not have all of the money to re-implement these things. If there are FREE solutions that they can use, then there are. GPL is not FREE in the sense of FREE, but in the sense of FREE with Restrictions.

      Mind you, I believe in GPL'ed software. I believe there is software that should be GPL'ed and should stay that way. But I don't call it free, it's Free With Restrictions.

      I believe in Free Software, I believe in Commercial Software. I prefer free software, but sometimes when it's taken 100's of people 1000's of hours to create a large, complex program, that they should eat. If the use a Free library, then they should get paid a little less, but I still think they should eat.

    17. Re:This article is not legal advice by vslashg · · Score: 1

      Not if they are just being used. It is only an issue if they are being distributed.

      It's not enough that they're distributed together. From the GPL:

      If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works.

      So it's not a violation if I ship the plugin and WinAmp on the same CD but with different installers, right? That seems to be true unless dynamically linking causes a derivative work, which is where the disagreement lays. I was just trying to demostrate the problems with the "dynamic linking" argument in my examples.

    18. Re:This article is not legal advice by Arandir · · Score: 2

      Doesn't matter--redistributing the software afterwards implies acceptance of the GPL terms

      But it DOES matter! I'm not distributing the library when I distribute the application that links to it!

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    19. Re:This article is not legal advice by thomas.galvin · · Score: 2

      Here's my take on it: If I need your code/library on my machine for my code to compile, it is a derivative work. This is excluding, for instance, the gcc compiler, since the output of a program is explicitly not covered by the GPL.

      1. If I create a GPL'd plugin for WinAmp, does that make WinAmp GPL? I think most reasonable people think the answer is no.

      Does WinAmp need the GPLed plugin code to compile? No, therefore it is not a derivitive work, and not covered by the GPL.

      2. If I create a GPL'd media player, and a third party makes a proprietary plug in, is this illegal? This is really the case that's up in the air here... the answer only depends on whether the plug in is legally a "derivative work" or not.

      Do I need your GPLed code on my machine to compile my plugin? Most likely, yes, at least a header file. If I need to incorporate your GPLed work into my program, my program must be licensed under the GPL. If, however, your plugin interface is declared in a file that is not GPLed, say public domain, then my plugin can be licensed in any way I want.

      3. But if it is... then what happens if I create a GPL'd media player that can use WinAmp plugins? Do all proprietary WinAmp plugins become GPL? Well, of course not, but doesn't this make case two problematic?

      Not really. If a plugin needs WinAmp code to compile, it must be licensed according to the terms of the WinAmp license. Since the plugin will compile happily without your GPLed media player, it is not a derivitive work, and not covered byt he GPL.

    20. Re:This article is not legal advice by moncyb · · Score: 1, Troll

      Even the nutjobs at the FSF don't make glibc GPL. They know better. They talk about how bad the LGPL is, but they continue to use it.

      Go have a look at the gnu.org site. LGPL is an intermediate step in their plan for world dominance. Whenever they get their Hurd system operational, they plan to change all their libraries to GPL--including libc.

      Besides Linux, no major useful software for developers is GPL only. Apache, X, GTK+, Qt (dual licensed).

      Is Linux "GPL only"? If you're running it, look in /usr/src/linux/COPYING (the license for Linux). Mr. Torvalds put in a few exceptions to the GPL.

    21. Re:This article is not legal advice by LordNimon · · Score: 1
      The GPL does not have the right or power to overrule copyright law. If something the GPL says is in conflict with federal law, then that portion becomes null and void, and possibly the entire GPL (unless there's a clause about that, which I think there is).

      Copyright law and the courts determine what constitutes a derivative work, not the license.

      --
      And the men who hold high places must be the ones who start
      To mold a new reality... closer to the heart
    22. Re:This article is not legal advice by Anonymous Coward · · Score: 0

      Could you point to the sections of US copyright law where it discusses compiling software and header files?

    23. Re:This article is not legal advice by Anonymous Coward · · Score: 0

      Whenever they get their Hurd system operational, they plan to change all their libraries to GPL--including libc.

      They can plan whatever, but the fact is that RedHat, Inc does most of the development for glibc (not GNU) and would end up doing the thing that keeps Linux commercially viable.

    24. Re:This article is not legal advice by WNight · · Score: 2

      If RMS and the US Supreme Court disagree with what makes a derivative work, it doesn't overturn the GPL, it just means that the GPL is irrelevant for that specific case.

      The GPL is an offer, from the author of the program to anyone, for you to go beyond the rights copyright normally allows. If you don't accept the GPL you're limited to the normal rights of creating a work based on another.

      The GPL says essentially, "You're reading this because copyright law won't let you use or distribute this program in a certain way, if you're willing to comply with a few restrictions, we'll let you use it in a limited way. No need to notify us if you comply."

      All arguments that the GPL isn't a valid contract are not only likely wrong, but are completely missing the point. Even if you prove that the GPL is somehow invalid it just means that you can't legally agree to it and thus can't accept it's offer, you're right back where you were before reading it.

    25. Re:This article is not legal advice by thomas.galvin · · Score: 2

      Well, the part at the top of the header file that says "Distributed according to the GNU GPL" is a good place to start.

      Under copyright law, you can't use my header files, since they are a copyrighted, published work.

      Under the GPL, that changes; the GPL gives you the right to use my header file, as long as you meet the terms set by the GPL.

      The GPL says, basically, if you incorporate GPLed work into your own work, that work too becomes GPLed. If you don't like that, we are back to original copyright law, which says you cannot use my header file.

    26. Re:This article is not legal advice by vslashg · · Score: 1

      If RMS and the US Supreme Court disagree with what makes a derivative work, it doesn't overturn the GPL, it just means that the GPL is irrelevant for that specific case.

      If RMS's opinion about what the GPL says turns out to be the wrong one, it means that he's wrong. Period. There's no clause that reads "If any section of this license is found to mean something Stallman disagrees with, the license is null and void." This is my whole point.

      Even if you prove that the GPL is somehow invalid it just means that you can't legally agree to it and thus can't accept it's offer, you're right back where you were before reading it.

      This isn't an argument about validity. I think the license is valid. We just seem to disagree on what the license says. Here's what it says:

      ..."work based on the Program" means either the Program or any derivative work under copyright law...

      So if a court ends up saying simple dynamic linking does not make a derivative work, then every clause about what you can do with "work based on the Program" simply doesn't not apply to dynamic linking cases. Just because this is unfortunate to somebody's adgenda doesn't change anything.

    27. Re:This article is not legal advice by blakestah · · Score: 2

      1. If I create a GPL'd plugin for WinAmp, does that make WinAmp GPL? I think most reasonable people think the answer is no.

      Of course not. You have to realize the nuances of what makes a derivative work extend far beyond the cut-and-dried. A plug-in interface is defined more clearly than other interfaces. It specifically exists so that the plug-in and the program don't need to know anything about each other except the plug-in interface. As such, this creates a boundary on expression. Neither program cares what specific expression is used, as long as the functionality of the interface is met. In this case, there are no copyright issues relating to derivatives. Either program could be GPL, or properietary, or anything, really, as long as copyright restrictions are the only issue.

      Stating the obvious, but a dynamic library is nothing more than a set of entry points with documented behavior. By design. That's what it's intended to do. Calling something that uses a tool to do something a derivation of the original work is on shaky ground. That's like arguing a novel written in emacs is GPL. Anyway, I'm not arguing that a license couldn't provent this sort of thing; I just think version 2 of the GPL doesn't.

      Again, it really depends on how well defined the interface is. For example, if two libraries exist that perform the same function (say, Motif and lesstif, assuming for a second they are identical functionally), then there is no derivative issue for linking to them dynamically. This happens because the interface is demonstrably well-defined. Even if one is GPLd, you can still link to it, because your calling program is not a derivative of the program it links to. Your program only needs the well-defined interface.

      Now, if a unique library exists that is GPLd, then linking to it may be considered a derivative work. The argument would be that the specific expression in the library is critical b/c it is the only source for the library function. This case is really the only one that RMS argues for. It has yet to be decided.

      But a lot of the issue boils down to the separation of expression from function. Plug-in interfaces do this. Functions provided by multiple different expressions in libraries do this. But, in the case of functions provided uniquely by a single GPL'd library, there are issues yet to be resolved wrt derivative status.

    28. Re:This article is not legal advice by sudog · · Score: 2

      No, it doesn't matter. Linking to the LGPL'd library and then subsequently redistributing that work makes your software fall under the terms of the LGPL. It's safer to assume it's valid than it is to flout the terms of the license, and that's partly why companies haven't challenged it yet.

      We can argue all we want here whether those LGPL terms are "allowed" or not under copyright law--and Rosen can say all he wants that linking to an LGPL library doesn't make thats oftware also fall under som eof the terms of the LGPL, but until it's challenged and defeated in court (pray that day never comes) it's safer to just abide by the terms of the LGPL, don't you think?

      You *are* distributing a portion of the library when you distribute a piece of software that's been dynamically linked to it--the binary interfaces, definitions from the header files of the library, and so on. And you're DEFINITELY distributing whole chunks of the library when you link statically. :-)

    29. Re:This article is not legal advice by Anonymous Coward · · Score: 0

      we are back to original copyright law, which says you cannot use my header file.

      Geez, most GNU zealots recognize a header file as an interface and something that's not eligible for copyright protection (except for the rare cases when there is significant code in them). Headers can also be trivially reverse-engineered, so one doesn't NEED to use your headers.

      Furthermore, you are assuming that just because someone uses your header file that they have made a "derived work" under copyright law, which is not necessary the case. In fact US copyright law defines one's right to load things into memory as 'fair use' -- there's no illegal copying involved in parsing a header file.

      Conclusion: technical details such as compilation and linking really don't have anything to do with copyright law. It all has to do with the nature of the work in question.

  14. Been going on for years... by russotto · · Score: 3, Insightful

    This argument is certainly nothing new; at issue is whether merely linking to a library creates a derivative work. IME, it would be a really bad thing for open source and free software if this was the case, despite the short-term impact to proprietary software makers.

    If linking DOES create a derivative work, this means that the very act of USING a library in the normal way is an act covered by the copyright code. This applies to everything -- including system libraries. Makers of computer systems could thus legally prevent anyone from writing programs for them by refusing to allow them to create derivative works. Want to write a program which links with the .NET APIs? Here, sign this contract, in blood if you please. And don't even think of GPLing your program.

    1. Re:Been going on for years... by sudog · · Score: 2

      Don't be obtuse. What about compatible but entirely separate .NET platforms like Mono or DotGNU or whatever it's called now?

    2. Re:Been going on for years... by mark_lybarger · · Score: 1

      Here, sign this contract, in blood if you please.

      that and a lb. of flesh IIRC from my first (and hopefully last) .NET excursion.

      the GPL clearly defines what is considered a derivitive work. Operating system libraries are on their own as far as how they are licensed and can be used. though, i don't think an OS that doesn't let people develop software for will sell many copies.

    3. Re:Been going on for years... by Anonymous Coward · · Score: 0

      It's called DotSmoke&Mirrors.

  15. Hrm. What he says is at odds.. by sudog · · Score: 2, Interesting

    ..with the clauses of the LGPL, wherein it guarantees the right to reverse engineer the software linked to it--proprietary or no--and that any proprietary license that tries to revoke that right is in violation of the LGPL.

    This means, of course, that the glibc library (which is under the LGPL) is the enabler for any reverse engineering that happens on pretty much any Linux system, anywhere.

    Cool, IMHO. No so cool if this fellow is right and that simply linking to an LGPL'd library does not constitute a derivative work.

    Basically, if Rosen's right, then the LGPL is invalidated at its core, and the GPL and the LGPL aren't allowed to dictate--in any fashion whatsoever--how end users are allowed to make use of software provided they make no modifications.

    That would seriously SUCK.

    1. Re:Hrm. What he says is at odds.. by Tim+Macinta · · Score: 2
      What he says is at odds with the clauses of the LGPL, wherein it guarantees the right to reverse engineer the software linked to it--proprietary or no--and that any proprietary license that tries to revoke that right is in violation of the LGPL.
      It sounds like you're talking about section 6 of the LGPL:
      6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications.
      (I am not a lawyer, so the following is not legal advice.) I always thought that you could use LGPL'ed libraries with proprietary code as long as you allowed the LGPL'ed portions to be changed by the customer, and that the rest of the program could be restricted at will. I never really thought about your point that allowing reverse engineering of the program using the LGPL'ed library is a requirement as well, until you brought it up. I can see how you might get that from section 6, but I'm not sure that's entirely correct.

      First of all, the LGPL only says that reverse engineering needs to be allowed to debug modification of the work for the customer's own use. It doesn't sound like reverse engineering for other purposes needs to be allowed. It also does not say that you need to allow any and all modifications, and in fact sections 6a and 6b specifically state what modifications need to be possible (essentially, being able to modify the LGPL'ed library). So I think this could be intrepretted to mean that you must allow the modifications stated in 6a or 6b and reverse engineering to debug those modifications, but that additional reverse engineering or modifications do not need to be permitted.

      Furthermore, section 6 is an "exception" section anyway. My take on this is that section 6 does not apply if you are not distributing LGPL'ed code with your program (e.g., if you require the user to have a particular DLL or .so on his system beforehand), in which case I don't see any restriction on limitting reverse engineering.

      Of course, I'm not a lawyer, so I could be off the mark on all this.

    2. Re:Hrm. What he says is at odds.. by Wateshay · · Score: 2

      Well, try to think of it this way. What's good for the goose is good for the gander. The legal system (in the U.S. at least) doesn't discriminate between open source and closed source software. If the GPL can dictate how you make use of software that you have legally obtained, then so can proprietary software. That opens up all kinds of crap that can go into EULA's. I think that the GPL/LPGL can legitimately put restrictions on modifications to the GPL'd software itself, or to ways in which the GPL'd software can be redistributed, but I think it's pretty difficult to say restrictions on how the software can be used are legitimate. If I make a piece of software that links to a GPL'd library, and then tell you that you need to go get that GPL'd library to make my software work, the author of the GPL'd library would be on pretty shaky legal grounds trying to say that my software needs to be GPL'd, just as Microsoft would be on pretty shaky legal ground saying that no software that links to .Net stuff can be GPL'd.

      --

      "If English was good enough for Jesus, it's good enough for everyone else."

    3. Re:Hrm. What he says is at odds.. by Arandir · · Score: 2

      the GPL and the LGPL aren't allowed to dictate--in any fashion whatsoever--how end users are allowed to make use of software...That would seriously SUCK.

      Have you actually read the GPL? Let me quote for you: "Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted".

      In other words, making use of the software is not restricted.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
  16. Is Microsoft Really the Issue? by SerpentMage · · Score: 3, Interesting

    I hate to sound like a Microsoft Shill... But is MS really the issue? Last I looked MS had about 10,000 programmers. And I REALLY doubt that MS needs Open Source to make them successful.

    I like Open Source like the rest of us, but we really need to get over the MS (chip on the shoulder)....

    --

    "You can't make a race horse of a pig"
    "No," said Samuel, "but you can make very fast pig"
    1. Re:Is Microsoft Really the Issue? by kien · · Score: 1

      Agreed, but many times I think Microsoft is just the favorite /. representative of closed source development companies. So, in other words, some people will say "But if M$ uses my library, what's to keep them from embracing and 'extending' (i.e. lock me out of it's development) it?" instead of the more verbose "But if [insert closed source proprietary software developer here] uses my library....blah blah blah".

      I'm sure there are people who literally do hate Microsoft and will probably never get over it...but most of the time (for me, at least) references to Microsoft are really just kind of a shorthand for all closed-source developers. YMMV

      --K.

      --
      Sig: Bad people happen. Try to avoid being one of them.
  17. Real world definition of derivative work by heroine · · Score: 2

    If the free software project is smaller than what your boss is doing, your boss's project is a derivative of the free software project, which can stay open.

    If the free software project is bigger than what your boss is doing, the free software project is a derivative of your boss's project and has to be taken down.

    1. Re:Real world definition of derivative work by shdragon · · Score: 1

      Can you please give a real world example of this?

      I am having difficulty agreeing that code length should determine which was the original and which was derived from the original. If that were true, would I not merely need to optimize the larger code to a shorter code length to make mine the original? I was always under the impression that whichever was created first was the original.

      --
      "...we dont care about the economics; we just want to be able to hack great stuff."
  18. Re:Off-topic, but I need moral support... by Anonymous Coward · · Score: 0

    maybe she's actually a he and he's actually drdink

  19. Impressed, but reserved... by ajs · · Score: 5, Interesting

    A good overview of the issues.

    However, I think that the classic issue that has stumped the traditional wisdom is not coverdd. That is the case of "interface definitions" that must be loaded and merged with your source code at compile time. These include C or C++ "header files", or the "modules" of Perl. In interpreted languages the issue gets really sticky because you can modify those external libraries at run-time.

    For example, is this Perl module a derivative work?

    package CGIOverride;
    use CGI;
    sub import {}
    package CGI;
    sub params { die }
    sub new { die }
    sub start_html { die }
    1;
    __END__


    Here I basically edit the CGI module, but I do it at compile-time. If the law has to start getting into compile-time vs. pre-compile-time distinctions, I think we're going to be in for a bumpy ride!

    Even worse... one way to resolve the above is to say that I'm not editing CGI, I'm editing the CGI namespace. At that point, we have to decide if a namespace is something that is protected under copyright law! Are namepsaces just a loosely maintained analog of the domain name system? Is a Perl module or a C++ header analogous to a programmer's Web site? *shudder*

    1. Re:Impressed, but reserved... by glwtta · · Score: 2
      Is a Perl module or a C++ header analogous to a programmer's Web site? *shudder*

      Hm, might seem silly to us, but try explaining to a judge that com.mycompany.app.SomeClass is actually just a Java class that has nothing to do with the company's website.

      --
      sic transit gloria mundi
    2. Re:Impressed, but reserved... by sudog · · Score: 3, Informative

      That's just as much a derivative work as if you had added another function that relied on other portions of the CGI library to work.

      Either that, or the GPL and LGPL are unenforceable. If they were unenforceable, then why aren't more companies challenging the GPL? Or any companies for that matter? Answer: they don't want to invlidate their own licenses that make similar end-user restrictions.

      By validating the GPL's ability to enforce such restrictions, they are affirming their own ability to enforce their own restrictions.

      So it seems to me that the companies disagree with our man Rosen here.

    3. Re:Impressed, but reserved... by ajs · · Score: 2

      No, the GPL is enforcable for simple copying. I don't think anyone has ever disagreed with that seriously (after all, the GPL let's you opt out of it at will and copy all you like, under the usual terms of copyright law).

      The question here is, what am I modifying? Is it ultimately perfectly reasonable to write the code I did, and distribute it as my own work? Personally, I think the answer is yes. Why? Because, the entity making the change to the software is the compiler.

      Imagine an artist requiring royaltees from a filter-maker for "modifying" the image of their art when photographers take a picture! That's pretty much the same thing as is going on here. The compiler provides the filter attachment, I provide the filter. CGI.pm itself is never modified.

    4. Re:Impressed, but reserved... by Telex4 · · Score: 2

      But the word "derivative" is fairly unambiguous, and can be clearly understood by a dictionary definition. Almost all the dictionaries I've checked suggest that to be a derivative work means simply to have obtained something from another work.

      In your example, your module, standalone (i.e. without the CGI module) does not obtain anything from the CGI module, and is therefore not derivative. If you were to copy verbatim bits of the CGI module into yours, and maybe then modify those bits, then your module would be derivative.

      I also don't see how there can be a legal distinction between verbatim and modified that affects the issue derivation, as both entail obtaining material.

    5. Re:Impressed, but reserved... by sudog · · Score: 2

      You are causing to be modified the CGI library--regardless of the actual mechanism that does it, you're the one that's causing it to actually be done. So that part of your thesis needs a little work.

      So I think the answer is no, it is not reasonable to write that code and claim it as your own unless you are also the author of the CGI library.

      And an artist can't require royalties each time someome looks at his painting--he can just restrict access to the original. Also, many museums don't allow photographs. But the act of looking itself?

    6. Re:Impressed, but reserved... by Anonymous Coward · · Score: 0

      > Hm, might seem silly to us, but try explaining to a judge that com.mycompany.app.SomeClass is actually just a Java class that has nothing to do with the company's website.

      Try pointing out the relevant portion of the Java naming conventions that explicitly mention this.

    7. Re:Impressed, but reserved... by ajs · · Score: 2

      "You are causing to be modified..."

      Oh! Oh! Passive tense in english! Oh the humanity! :-)

      "regardless of the actual mechanism that does it, you're the one that's causing it to actually be done. So that part of your thesis needs a little work"

      I'm not so sure that holds water. You say that my work is a derivative of yours (casting you as the CGI author here for simplicity)? What if I say, "No, no! I wrote an API-compatible module for doing CGI stuff! Your module was crap. My CGIOverride is designed to alter my module, but if someone wants to use it with yours, that's ok with me too."

      Now what happens? I've caused the compiler to modify my module, but it can just as easily modify yours, and in fact I encourage the users of my software to do so. That's why I mentioned the idea of questioning the copyrightability of namespaces in programming languages.

      This is where copyright law is lagging decades behind the real world. The hew and cry from people like me to fix this kind of mess was answered with the DMCA, which introduced a host of new problems and solved non of the real ones. Sigh.

    8. Re:Impressed, but reserved... by ajs · · Score: 2

      Since others have been confused on this point -- and I was none to clear in my original posting -- keep in mind that the above example works just fine no matter whose module you have installed as "CGI", as long as it obeys the CGI API....

      Thus, I may have developed this against my own "CGI" module, and it just happens to work with the better-known version that ships with Perl.

      If that gives you a headache imagine how bad it gets when we get to OO programming where "deriving" is actually part of the programming paradigm! When I create an object that derives from yours, is it a derived work in the copyright sense? If not, why not?

      My answer is similar to Rosen's, but goes deeper. If your modification to or derivation from my code is made through an API that I provided, then you're not creating a derived work, you're using my tool as I intended it to be used (and stated in the license that you were allowed to "use" it). The issue will have to be resolved for the case where there is no license (e.g. if you have not accepted the terms of the GPL), but I think the answer should be the same.

    9. Re:Impressed, but reserved... by Anonymous Coward · · Score: 0

      I believe this is absolutely correct and deserves a mod up.

    10. Re:Impressed, but reserved... by sudog · · Score: 2

      You never mentioned anything about a compatible CGI library in your original post. If you had, I wouldn't be sitting here (apparently wasting my time.)

      You can't change your argument after the fact, turkey. :-) In this case, just state that you wrote a compatible library to the CGI library, and that your software modifies your own library, and that your own library wasn't based off the "real" CGI library, and you're off the hook. If I were the author of the CGI library I wouldn't pursue it. The fact that it's compatible with "my" CGI library is a bonus for your users.

      Piece of cake. If your program doesn't modify the CGI library then you don't have to worry about the GPL.

      (And is the CGI library even under the GPL...?)

  20. Why the GPL is in place. by sickboy_macosX · · Score: 1

    Correct me if i am wrong but the GPL gives you the right to the source code so you can tweak the code to make it work on your own machine. That being said If Microsoft decided to use the GPL'ed Libraries (Or any other large Closed Source Code Shop, Yes Oracle and Sun and Novell I am looking at you) wouldnt they be in violation of said License Agreement? Thereby giving the FSF a legal case? Now if these big companies would use the Libraries and then give the source code for distrobution, it would be easier, and I would look more kindly upon it. But since that will never happen, I can not support this, and will fight against it, and join whomever else is against it. --

    --
    --- /* In Soviet Russia, the Mac OS X kernel panics you! */
    1. Re:Why the GPL is in place. by phreak03 · · Score: 1

      Forgive my ignorence but couldn't they hide it very well or mask which libraries they had stolen? After all Micro$oft has hidden enough stuff in their programs before (office98 document tags with your registation info anyone?) whats to make them hide something more insidious; stolen code?

      --
      come comment on the madness at http://slashdot.org/~phreak03/journal/
    2. Re:Why the GPL is in place. by sickboy_macosX · · Score: 1

      Yeah they could, we all know Microsoft is immoral. But the GPL it's self is all on the trust based system. So therefore realisticly everyone could hide that. I think that if Microsoft started making GNU app's that they would hide the source. BUT. again since it is based on the honestly system you know one Linux head at Microsoft will come out and say which ones they used, and then the battle will ensue.

      --
      --- /* In Soviet Russia, the Mac OS X kernel panics you! */
  21. Bullshit by Anonymous Coward · · Score: 0

    There are as many reasons to use the GPL as there are open source developers ...

    Regardless of why people want to use the GPL they will all agree it has the basic effect that any project which depends on GPLd code and is distributed with it should also be GPL.

    We all know what the GPL is supposed to result in, only a lawyer would find it difficult to understand.

    1. Re:Bullshit by Oliver+Defacszio · · Score: 2
      There are as many reasons to use the GPL as there are open source developers

      Really? Name five. Let me get you started:

      1. It's probably gratis.
      2. It offers an alternative to Microsoft.

      Please, continue.

      --

      -
      Inventor of the term 'pardon my French'.
    2. Re:Bullshit by jeremy_hogan · · Score: 3, Interesting

      Let me rephrase your first two and move on:

      1. Maybe gratis. Definitely libre.
      2. People aren't just rejecting MS software, they are rejecting their licensing. So it's better to say "It offers an alternative to proprietary software."
      3. It prevents people from profiting on other people's labor.
      4. It ensures innovation based on pre-existing work is shared with the folks who did the pre-existing work.
      5. Protects a developers work from being dispositioned in a fashion other than what (s)he wants.
      6. 99.999% less likely to suck
      7. Allows for friendly security analysis, can be certified as secure.
      8. Users not beholden to magnanimy of vendor.
      9. Users not stuck if vendor goes under.
      10. Rapid innovation
      11. Bug stomping
      12. Allows for the rules of governing dynamics, where individuals AND the group (company) can gain.

    3. Re:Bullshit by Anonymous Coward · · Score: 0

      3. It prevents people from profiting on other people's labor.

      Sounds like you are a proponent of Patent law...(not ridiculous 1-click, but true inventions)

    4. Re:Bullshit by Anonymous Coward · · Score: 0

      Let me rephrase your rephrasement:

      1. Maybe gratis. Definitely libre. [assumes honesty on the part of the user, if I have the source code why do I have to pay you for anything?]

      2. People aren't just rejecting MS software, they are rejecting their licensing. So it's better to say "It offers an alternative to proprietary software."

      3. It prevents people from profiting on other people's labor. [How, EXACTLY? There is nothing inherent in OSS that prevents anyone from profiting on someone elses labor, see point one for why]

      4. It ensures innovation based on pre-existing work is shared with the folks who did the pre-existing work. [Ensures HOW? Point 1 again]

      5. Protects a developers work from being dispositioned in a fashion other than what (s)he wants. [Once again, HOW? It does no such thing, see point 1]

      6. 99.999% less likely to suck [Doubtful, OSS developers are still human are they not? OSS software is therefore just as likely to 'suck' as closed sourced software is]

      7. Allows for friendly security analysis, can be certified as secure. [Certified by whom? Windows NT 4.0 is certified as secure by the NSA. Linux isn't.]

      8. Users not beholden to magnanimy of vendor. [Yes, Red Hat / Caldera / SuSE / ad nauseum must not be vendors.]

      9. Users not stuck if vendor goes under.
      [IF they know how to develop software and rewrite it their not, otherwise they are still just as screwed now aren't they?]

      10. Rapid innovation [Example of 'rapid innovation' in OSS would be good here, however OSS develops just as fast as closed source.]

      11. Bug stomping [Maybe, however some bugs go unfixed because they are not deemed important, secondly, those that don't know about the bug fix still don't get the fix now do they?]

      12. Allows for the rules of governing dynamics, where individuals AND the group (company) can gain. [See point 1 again. Governing dynamics does not apply here as there is always a detente state in a worker / employee relationship. Either the employee does the work, or they leave. Either the company takes care of the employees or the employees leave. Either way their is no product without cooperation from the get go so therfore there is always a state of detente.

  22. Re:Off-topic, but I need moral support... by marvin826 · · Score: 0, Offtopic

    Steal her monitor. Give her a 15" -- clearly that is all she needs...

  23. scaring proprietary software users away? by burgburgburg · · Score: 4, Insightful
    I think he meant "scaring proprietary software developers away". They are the only ones who'd be concerned about the derivative work issue.

    And why shouldn't they be scared away? If they want to make proprietary software, then let them. They just can't use GPL'd software programs or libraries as a replacement for paying for development of their own. There is always BSD licensed work to explore, if they are so inclined.

    1. Re:scaring proprietary software users away? by Arandir · · Score: 1

      It's not just proprietary developers. It's also any Free Software developers who don't use the (L)GPL.

      Let's take the extreme case: can a software developer release his own original work into the public domain if it links to libreadline at run time?

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    2. Re:scaring proprietary software users away? by jsab · · Score: 1

      The GPL is not designed to encourage public domain software because software in the public domain does not require the developers to give back to the community.

      GNU libreadline is GPL no LGPL so its authors explicitly do not want you write public domain software using it. If you do not agree with that particular flavor of free software look for a BSD of LGPL library.

    3. Re:scaring proprietary software users away? by Arandir · · Score: 2

      That's not the point. The original poster asserted that "They [proprietary developers] are the only ones who'd be concerned about the derivative work issue." This isn't true, as they are not the only ones with this concern.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    4. Re:scaring proprietary software users away? by jsab · · Score: 1

      Fair enough. Perhaps I jumped to a conclusion in my post and landed a little off-topic.

      I thought that you were being critical of the GPL because someone could not write public domain code that uses a GPL'ed library. And I was pointing out the fact that RMS intended the GPL to work that way.

      But you are absolutely right.
      People who write code that links to a GPL or LGPL library should be interested and informed about how they can and cannot license their code.

  24. Qt by Anonymous Coward · · Score: 0

    The classic case of GPL abuse being TrollTech. They have attempted, through lies, subterfuge, organised rah-rah campaigns everytime Qt is mention on Slashdot and theft of other's code to make their dire little C++ library an integral part of the Linux desktop. Thus allowing them to act as gateway and Tax collector (approx $2000 per-developer, for the moment... a large increase is expected soon) for any non-open source desktop apps moving to Linux.

    Of course, they haven't managed this yet. You can prevent it by not using KDE (no great loss to be honest) and instead using GNOME. GNOME libraries are licensed under the LGPL, allowing free use by anyone under any license. You can also help by fighting back against the shills filling slashdot with propaganda and lies -- and the "useful idiots" unknowingly spreading shite in their desperate attempt to rescue KDE from eventual obscurity.

    1. Re:Qt by Anonymous Coward · · Score: 0

      Go back to your hole, Mini-RMS.

    2. Re:Qt by Anonymous Coward · · Score: 0

      Rubbish. Open source developers can use Qt. We don't want the other kind, the "non open source" ones of which you speak. They can bite my shiny metal ass. Linux is by us for us. Not by us for you. We don't need you, whiner.

  25. Re:Off-topic, but I need moral support... by Anonymous Coward · · Score: 0
    ... "Everything's too small!" and she changed the resolution on her shiny new 21" Trinitron from a beautiful 2048x1536 at 85Hz to a pathetic 640x480 saying, "There, that's much better."
    I feel for you man. Not at all off-topic either: You're going to have one hell of a time explaining the intricacies of copyright law to that noob, especially as it relates to derivative works of software and that the legal interpretation of the GPL, where vague, should come down to the intent of its author. Oh well. Hopefully she has nice tits.

    What is RMS's stance on whether linking to a GPL binary invokes the GPL, anyway?

  26. It should be REALLY clear by blakestah · · Score: 5, Informative

    That this is a complete mess, legally.

    There are, however, some guiding principles. One of the is that of the non-unique well-defined interface. For example, if a program only used POSIX libc calls, it is not a derivative work of any C library it uses. This independence is because you can change the C library freely, and the program's function doesn't change. So we can easily establish that libraries that adhere to a spec, for which multiple DIFFERENT libraries exist to fulfill that spec, do not make derivatives of programs that dynamically link to them.

    Static linking I think is highly likely to make the calling program a derivative, since the library forms part of the functional binary.

    Now, on to dynamic linking with a unique library. This case is the REALLY interesting one. Some people argue that inclusion of the header files makes something a derivative. This is utter nonsense. A header file is made specifically so that a calling program may include it. Also, you could replace the header file with another file that provided the same functionality trivially (it defines an interface, a function, and it not really expression in the same sense that the main program is). I don't think this argument will ever fly. But, in this case the program cannot function at all without one specific library. So, it is likely a judge would rule that it is dependent in copyright, and a derivative. Note that if someone coded a clone replacement library, then the dependence vanishes, as does the derivative nature of the work. Larry Rosen disagrees with this point of view, b/c he claims libraries are MADE to be linked with. But, this point is still to be decided by a judge.

    There are other cases that are clear. Plug-in interfaces, for example, are like walls that separate dependences. The interface is well-defined so that no one on either side of the interface needs to know anything except the interface itself. Not a derivative.

    As you can see, the rules are not hard and fast, and there is a slippery slope to tread.

    1. Re:It should be REALLY clear by Arandir · · Score: 1

      So, it is likely a judge would rule that it is dependent in copyright, and a derivative.

      Dependency is not derivation.

      Sigh, this is beginning to sound like my new mantra. Maybe I should make it my sig.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    2. Re:It should be REALLY clear by blakestah · · Score: 2

      Dependency is not derivation.

      No, but dependency is a critical aspect of being able to make the "conceptual wall" argument. That is, if there are multiple libraries that fulfill the API, and your program links to one of them, your program is only adhering to the API. The fact that multiple libraries adhere to the API indicates it is functional, and not related directly to expression. So, your program is dependent on a function, and not an expression, and as such is not a derivative work. Remember, copyright covers expression, and not function.

      In the case of a unique library, the function and expression are inseparable, so establishing depency on function is adequate for establishing derivative on expression. This is my understanding of how copyright law will relate to dynamic linking, but I don't think anyone is 100% sure of how a judge will call it.

    3. Re:It should be REALLY clear by Arandir · · Score: 2

      In the case of a unique library, the function and expression are inseparable, so establishing depency on function is adequate for establishing derivative on expression.

      I understand your point. But I still have to disagree. Function and expression are separable even in unique libraries.

      Consider the first libc created. It was a unique library. If your point is correct, then any additional libc that duplicates the functions also incorporates the expressions, and thus are derivatives of the original. But this is not the case.

      The interface to a function is not the expression of the function. Perhaps many people in this community are confused because the source code is available for study. So let's examine a proprietary library with no source code available. The expressions of the library are a black box. It's impossible to derive anything from the expressions, because they simply aren't available to derive from. All you have available is the API in the form of header files listing function prototypes.

      Dependency is necessary, but not sufficient, to determine derivation.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    4. Re:It should be REALLY clear by RDPIII · · Score: 1
      if a program only used POSIX libc calls, it is not a derivative work of any C library it uses.

      How would you determine that in practice? A standard such as ISO C or the POSIX family defines names of functions and imposes constraints on the behavior of a conforming implementation. Suppose the standard prescribes that function foo() returns zero on success and a non-zero value in case an error occurred. Let's say the Quux library implements foo() in such a way that it returns 17 for certain errors and 42 for certain other errors. Nothing wrong with that, and the Quux library is certified to be standards compliant. Now you write a program that links against the Quux library and calls the library function foo(). If you check for errors using (result != 0) you're fine; but if you check (result == 42), have you then created a derivative work? What if these error codes are a common (but non-standard) extension used by most library implementations of foo()?

      In reality, many tools of the GNU system deliberatly violate the POSIX standard (unless the environment variable POSIXLY_CORRECT aka POSIX_ME_HARDER is set), and not just on a whim, but for good reasons that Make Sense In Context. If you rely on any of those features in programs you write (sh scripts, C code, etc.), are you thereby creating derivative works?

      --
      Marklar: marklar
    5. Re:It should be REALLY clear by blakestah · · Score: 2

      Function and expression are separable even in unique libraries.

      It is not enough that they be separable. There has to be a demonstration of separability. The first ROM-BIOS was copyrighted by IBM. Compaq had one set of engineers document its function by studying it directly. Then, a second set of engineers used only the documents to create the clone (without using the expression). They had a demonstration of separability.

      With a unique library there is not yet a demonstration of separability. The argument would be that the program is dependent on the expression of the unique library (because its function and expression are not demonstrably separated yet). And dependency on expression makes something a derivative. Once a duplicate library exists, there is only dependency on function, and there is no longer a copyright derivative. This argument implies the function is derived from the specific expression only as long as there is no other source of the expression, which I believe is consistent with existing interpretations of copyright law.

    6. Re:It should be REALLY clear by Anonymous Coward · · Score: 0

      > For example, if a program only used POSIX libc calls, it is not a derivative work of any C library it uses. This independence is because you can change the C library freely, and the program's function doesn't change. So we can easily establish that libraries that adhere to a spec, for which multiple DIFFERENT libraries exist to fulfill that spec, do not make derivatives of programs that dynamically link to them.

      Wrong. While your program is all nice and well as long as you write it down as source code, as soon as you link it to a C library to test it, you are bound by that C library's licensing terms.

      So you can't enjoy the benefits of developing against the GPLd version of a library and afterwards publish the work under a license other than GPL. Saying "hey you can link it against this public domain mock-up implementation of the library, too!" will get you laughed out of court, for a good reason. If there are no benefits to using the GPLd version, then don't use it. If there are benefits, then use it, and comply with the licensing.

    7. Re:It should be REALLY clear by Arandir · · Score: 2

      The first ROM-BIOS was copyrighted by IBM. Compaq had one set of engineers document its function by studying it directly. Then, a second set of engineers used only the documents to create the clone (without using the expression).

      The reason for this was not separability, but for two other reasons.

      First, the source code to the BIOS was available to Compaq, so they had to demonstrate that they were not copying it. For low level software like the BIOS, there was a very high probability of duplication even if they never saw the source code. Even if there were already multiple implementations of the PC BIOS, they would still have done it. They were simply covering their butts.

      Second, IBM was the 800 pound gorilla of the time. All they had to do to put Compaq out of business was to take them to court. Is it legal to dynamically link a non-GPL application to a GPL library? In my opinion it is. But I still wouldn't do it, because I don't have the deep pockets of the FSF. Again, Compaq was covering their butts.

      The argument would be that the program is dependent on the expression of the unique library

      I am still not convinced that dependency is derivation. It's necessary, but not sufficient. If you have any legal evidence to the contrary, please let me know.

      Why is my application considered a derivative of a unique GPL'd library that it uses, but my shell script which uses a unique GPL'd utility is not? Both are dependent upon a unique expression of code.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    8. Re:It should be REALLY clear by blakestah · · Score: 2

      Why is my application considered a derivative of a unique GPL'd library that it uses, but my shell script which uses a unique GPL'd utility is not? Both are dependent upon a unique expression of code.

      I think the argument that would be put forth is that the expectation of a GPL'd userspace program is that calling it places no restrictions on the caller, whereas the expectations are different for a library.

      This argument would call the shell script "fair use", but the library call a derivative. There are comparable analogies. In my field, I lecture classes. I can take material directly from published papers, cite them, and use their figures in my lectures. This is fair use. However, I cannot do the same with a textbook chapter, because the expectation is different. In many cases the figures are even the same, but it is OK for me to photocopy and re-distribute the original manuscript version, but not the textbook version. This all has to do with the author's expectation of how his copyrighted material will be used, and that then falling under fair use.

      I've thought about it a LOT, and my answers indicate what I think a judge would decide based on existing copyright decisions. I think the reality is that specifics in some cases will make dynamic linking non-derivative sometimes, and derivative other times.

    9. Re:It should be REALLY clear by Arandir · · Score: 2

      I can take material directly from published papers, cite them, and use their figures in my lectures. This is fair use. However, I cannot do the same with a textbook chapter, because the expectation is different.

      Copying a function's source code directly into your application is clearly making a derivative work. It's analogous to copying the whole chapter into your lecture. But calling a function through its public interface is not. It doesn't even go as far as copying a paragraph out of a chapter. It's equivalent to a citing a page number in a footnote.

      There are some cases where accessing the public interface *would* be derivative, such as writing a Python wrapper around a C++ library. But in most everyday cases of library use, no derivatives are made. A GUI application that uses GTK+ to draw a window on the screen is not derivative of GTK+.

      Here's another way to look at it: The Right to Read. You have the right to read a book, because at its core, that is the only way to use the book. Copyright law is full of provisions allowing ephemeral copies, translations into braille, and all other sorts of stuff, just so the read is able to use the copyrighted material in the manner it was designed to be used.

      But what about software? You can certainly read the source code, but that isn't using it. The only way to use it is to execute it, and the only way to execute it is to make function calls.

      I think the reality is that specifics in some cases will make dynamic linking non-derivative sometimes, and derivative other times.

      I agree, and so does the original article. The primary determining factor in my mind is whether the library was designed for general purpose use by those unrelated to the project. Another way to look at it is whether a library is a component or framework. Is the library complete or merely part of something else?

      --
      A Government Is a Body of People, Usually Notably Ungoverned
  27. Twirlip, you're on... by ?erosion · · Score: 0, Flamebait

    This is what you'd consider a target rich environment. These people need to know why they're all wrong. Come on, teach us some stuff!

    --

    I assert ownership of all trademarks and copyrights on this page.
  28. I don't understand it either by Anonymous Coward · · Score: 3, Interesting
    I copied a line from a GPL program to use in a proprietary application for my employer. Just a single line - one of the VNC authors figured out how to simulate Ctrl-Alt-Delete. Everyone was trying to figure out how, but this person was the first to do it, that I saw.

    Was that program a derivitive works? Did I violate the licence? I don't exactly lose sleep over it, but I'm curious and IANAL. Can someone clarify this for me?

    1. Re:I don't understand it either by Anonymous Coward · · Score: 0

      > I copied a line from a GPL program to use in a proprietary application for my employer. Just a single line - one of the VNC authors figured out how to simulate Ctrl-Alt-Delete. Everyone was trying to figure out how, but this person was the first to do it, that I saw.
      > Was that program a derivitive works? Did I violate the licence? I don't exactly lose sleep over it, but I'm curious and IANAL. Can someone clarify this for me?

      I'd seriously doubt that a single line of code to trap a keystroke combination would count as a GPL violation, especially since that code's available other places as well.

      Now, if you'd lifted VNC functionality for entire modules, that would be a different matter.

    2. Re:I don't understand it either by ethereal · · Score: 3, Informative

      There's a certain minimum amount of copied material required before it becomes copyright infringement, isn't there? If it's only one line you might be OK, since there can't be that much creativity in just one line of code.

      Out of curiosity, how did they do it?

      --

      Your right to not believe: Americans United for Separation of Church and

    3. Re:I don't understand it either by Darren+Winsper · · Score: 2

      I'd say that technically, yes, you were violating. However, I wouldn't have thought it were significant enough for even RMS to get pissy over it. Of course, that's just my opinion.

      The real question is what people would consider significant enough to go after you for the violation.

    4. Re:I don't understand it either by sjames · · Score: 2

      Probably not, but IANAL. Especially if that line is the natural simplest expression of how to cause a Ctrl-Alt-Del.

    5. Re:I don't understand it either by SoSueMe · · Score: 1

      ...the natural simplest expression of how to cause a Ctrl-Alt-Del.

      It's legal to copy all of Windows OS?

    6. Re:I don't understand it either by sjames · · Score: 2

      It's legal to copy all of Windows OS?

      You'd be in a terrible position trying to prove in court that windows is at all natural, mush less the simplest expression (simplest, not most simple minded).

    7. Re:I don't understand it either by mbessey · · Score: 2

      If you wanted to be safe, you probably could have just read the code, then re-implemented it in a line or two of your own code, rather than doing an actual cut-and-paste operation.

      If the code you independently developed to have the same function ended up being naturally very similar to the code in VNC, well then, that's just because that's the easiest or most obvious way to do that.

      You can't copyright an idea, just the expression of the idea.

      -Mark

    8. Re:I don't understand it either by Anonymous Coward · · Score: 0

      Like this:
      ::PostMessage(HWND_BROADCAST, WM_HOTKEY, 0, MAKELONG(MOD_ALT | MOD_CONTROL, VK_DELETE));

  29. I would think anything would be derivative by pgpckt · · Score: 3, Insightful


    This opinion is probably not legally sound, but it would seem to me that anything would be derivative. Linking to a library, calling a function of a library, etc. The lawyer in the article says (paraphrasing since I can't get an exact quote since the site is /.ed) that surely calling the sqrt() function isn't derivative.

    Why not? If it is a sqrt() function in a free software library, I think that does count. If the author of the package doesn't want it to count, he can write his own sqrt() function and own library. If he write it from scratch, no copyright, and no legal problem. Then he can call sqrt() all day long.

    As has been said previously, if we had open software package X that "accidentally" used a library copyrighted by Microsoft, does anyone thing that Microsoft wouldn't sue us? Write your own code. If you "use" someone else's code, it only seems logical that you have to agree to their terms, no matter how small the piece of code. If it is truly that small, write it yourself, and there are no issues.

    --
    Lawrence Lessig is my personal hero.
    1. Re:I would think anything would be derivative by lmfr · · Score: 1

      As has been said previously, if we had open software package X that "accidentally" used a library copyrighted by Microsoft, does anyone thing that Microsoft wouldn't sue us? Write your own code.

      Does that mean that every program written for Win32 belongs to Microsoft? Or that they could sue the developers?

      Can you really write a win32 application using only your code? Without linking to any library?

    2. Re:I would think anything would be derivative by pgpckt · · Score: 2

      Does that mean that every program written for Win32 belongs to Microsoft? Or that they could sue the developers?

      Can you really write a win32 application using only your code? Without linking to any library?


      I wouldn't know, since I don't develop programs, but I would think that the terms of use for those libraries allow you to use them "freely". I was saying that if you used a library, you had to use the terms that the library was created under. I would suspect the terms for MS library allow for relativly free use, so there is no conflict against what I said earlier. The GPL library terms are not a "free" in this sense, so if you use a GPL library, I would think that means you must have your program be GPLed, whereas if you used a Microsoft library, I suspect there is no such quid pro quo.

      --
      Lawrence Lessig is my personal hero.
    3. Re:I would think anything would be derivative by bnenning · · Score: 2
      Why not? If it is a sqrt() function in a free software library, I think that does count.


      I'll agree if sqrt() ends up statically linked in my program, but if it's dynamically linked, no way. In that case I'm not dependent on any particular implementation, I'm just assuming that somewhere in the runtime on the user's system there is a function called "sqrt" that performs a certain operation. It doesn't matter if that function was created by me, Microsoft, the FSF, or aliens from Blargon 7; which of those functions I used when developing the program is irrelevant.

      --
      How to solve most of our problems: 1.Lots of nuclear plants. 2.Cure aging.
  30. Two Points by John+Hasler · · Score: 2

    1) No one need worry that linking to GPL'd works will force them to release their source. That can't happen. At absolute worst they might be required to destroy all copies of the infringing derivative and pay damages.

    2) While a source package designed to be statically linked to a GPL'd library might not be a derivative of said library, I see no way that the binary resulting from compiling and linking that package would not be as it will contain an actual copy of the library.

    --
    Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    1. Re:Two Points by M.C.+Hampster · · Score: 2
      At absolute worst they might be required to destroy all copies of the infringing derivative and pay damages.

      Oh, is that all? Phew...

      --
      Forget the whales - save the babies.
  31. The meaning of "derivative work" ? by Hayzeus · · Score: 2
    Which definition trumps which here? The GPL has it's own definition of a "derivative work". Current copyright law (at least in the US) also defines the term "derivative work", if only vaguely.

    So is the implication of the article that the GPL's definition is somehow invalid (or potentially invalid) in light of existing law? I mean, the GPL provides a rather specific definition of a "derivative work" that while perhaps controversial, would appear to be legally binding and specifically prohibits linking by closed source programs. It was this restriction that spawned the LGPL, correct?

    The article appears to imply, however, that the term "derivative" has a potential definition in existing law which would take precedence. Is this the case?

    1. Re:The meaning of "derivative work" ? by odin53 · · Score: 1

      Hm. As far as I can tell, the GPL uses the same definition of "derivative work" as in copyright law. See section 0: ... "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language."

      Compare to section 101 of the copyright act: "A ''derivative work'' is a work based upon one or more preexisting works, such as [examples] or any other form in which a work may be recast, transformed, or adapted. A work consisting of editorial revisions, annotations, elaborations, or other modifications which, as a whole, represent an original work of authorship, is a ''derivative work''."

      One might argue about whether the GPL's clause "that is, ..." is a modifying clause or a descriptive clause, and a court would definitely look into that issue, but I think RMS definitely intended that "derivative work" mean the same as in copyright law. In fact, since he doesn't use the legal convention of capitalizing defined terms for "derivative work" (as he does for "Program"), I think a court would certainly apply the copyright law definition.

      Granted, the meaning of "derivative work" has been highly contested over the years. To answer your other question, the meaning of "derivative work" for purposes of applying general copyright law to, say, the enforceability of the GPL, or specific situations that the GPL doesn't cover (this is called "gap-filling") will *always* be the meaning from copyright law. The only time "derivative work" as defined in the GPL (assuming, for now, it's actually different) would take precedence over the meaning in copyright law is in each instance that the GPL itself uses "derivative work" AND clearly uses it as a defined term RATHER than the general term. Very roughly like variable scope in C++ or Java, I guess.

    2. Re:The meaning of "derivative work" ? by DaveAtFraud · · Score: 2
      Which definition trumps which here? The GPL has it's own definition of a "derivative work". Current copyright law (at least in the US) also defines the term "derivative work", if only vaguely.
      That's easy to answer: the one upheld by case law. Like it or not, this is the only definition that matters when attempting to extend copyright law through a license. Absconding with a legally recognized principle (derivative work) and attempting to apply it where a license chooses doesn't usually work. RMS may not like this but neither does Microsoft since it is all that stop M$ from taking your first born in exchange for their buggy software.

      Note: Most legal terms are deliberately vague so that case law can evolve (this also keep lawyers employed). Thus, the U.S. constitution can still be applicable to running the country 220 years after it was ratified with only a few amendments. The framers didn't try to incorporate into the constitution the foibles of the day. Instead they did a fairly good job of putting the principles they believed in into a algorithm for government. I would strongly oppose including nuances such as what method of linking is used into copyright law based on the same principle.

      --
      They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
      Ben
  32. Two Camps by mr_z_beeblebrox · · Score: 2

    Seems there are two camps in the world in terms of using open-source libraries, such as GPL licensed libraries, in proprietary software.

    As I understand it this is the difference between the BSDish licenses and the GPL. That is why MS has a decent tcp/ip stack

    1. Re:Two Camps by Anonymous Coward · · Score: 0
      That is why MS has a decent tcp/ip stack

      MS does not have a decent TCP/IP stack, beeblebrox. They have an adequate TCP/IP stack. About seven years ago, companies such as FTP Software, Netmanage, and WRQ provided Windows Sockets Acceptance Tested bulletproof TCP/IP stacks with their own thoroughly documented winsock.dll and wsock32.dll APIs with such features as built-in sockets call logging for debugging and even promiscuous mode packet tracers. Competition to produce the very best TCP/IP stack for Windows was high, and Microsoft's effort didn't come close. Microsoft's TCP/IP stack was barely usable and utterly ridden with bugs, so there was a tremendous market for solid third party TCP/IP stacks that would simply work no matter what illegal arguments or malformed packets you passed in or how many crazy non-connection-closing applications you ran on them. Microsoft couldn't stand other companies providing the software that sat between their browser and the Internet, so instead of making a good product, Microsoft send a representative out to those companies and told them that Windows was going to start treating third party winsock.dll and wsock32.dll as viruses, and forcibly remove them and replace them with Microsoft's own. No customer was going to be permitted to run a third-party TCP/IP stack. This was before the DoJ was investigating Microsoft, so there was nothing that could be done about it, and all the non-Microsoft TCP/IP stacks vanished.

      But you didn't know that. You never saw the TCP/IP stacks that used to be, and you think that Microsoft's is good. I'm not sure how it affects your argument about derivative works, but Microsoft's stack is horrible relative to what used to be.

    2. Re:Two Camps by mr_z_beeblebrox · · Score: 2

      But you didn't know that. You never saw the TCP/IP stacks that used to be, and you think that Microsoft's is good. I'm not sure how it affects your argument about derivative works, but Microsoft's stack is horrible relative to what used to be.

      Microsofts tcp/ip stack, like most others is derived from berkley code. As far as not knowing what it used to be like I started networking with Windows for workgroups. My favorite third party was a product called "wetsock" which handled tcp/ip and kept connected to a weather website to populate a ticker thingy (it also displayed phases of the moon)

  33. What do you think the GPL means? by Anonymous Coward · · Score: 0

    I think we all know what the GPL is supposed to mean, for people who cant see through the legalese it is clearly described in the FAQ on the GNU website ... the justice system might not allow a license to distribute to have the kind of reach most of us would like it to have, and that would be a crying shame, but that is a different matter.

    Mr. Rosen says he is worried that lack of clarity will stand in the way of proprietary software users embracing our software ... now I dont know what the deal is with OSL, but if he doesnt understand that the VAST majority of people who release software under the GPL intend for any software which is linked to it and distributed with it it should also be GPL (yes it is that simple) he is a fool.

    We can however be relatively certain he is no fool, so that makes you wonder ... what are his true intentions? Why is he pretending there is a lack of clarity from open source developers who use the GPL when there is none?

    1. Re:What do you think the GPL means? by fitten · · Score: 1

      I think we all know what the GPL is supposed to mean, for people who cant see through the legalese it is clearly described in the FAQ on the GNU website ...

      And this is why we have lawyers... to see if what we all "think" it is supposed to mean, what it is described to us in "layman's terms" as, and what the legalese actually says are all the same thing.

  34. Rosen, please stop making a disservice! by Cyclops · · Score: 2

    Larry, this post you did (if that's really you, because I don't recognize any digital signature in here) is a graveous disservice to us ALL.

    Please, allow me to technically shatter point number two:
    2) The meaning of derivative work will not be broadened to include software created by linking to library programs that were designed and intended to be used as library programs. When a company releases a scientific subroutine library, or a library of objects, for example, people who merely use the library, unmodified, perhaps without even looking at the source code, are not thereby creating derivative works of the library.

    When you link to library, you can do it dynamically or statically. I suppose I really don't have to explain much about the static linking, since it's extremely obvious that the library code that is used is being distributed, so let's concentrate on dynamic linking.

    When you link dynamically, you aren't distributing, as such, any linked code... however, dynamic linking is just a facilty to reduce memory size, and facilitate distribution: you are effectively including the code when you run the program. You just don't distribute it due to technical artifacts that make programming and distribution much simpler. It's a techincal feat, that changes nothing and is completely olrthogonal to copyright issues.

    That said, when you use a function of a library, you are basing your work on that library (a third party's work); without it, the program won't run. So, unless you carry your own version of those certain functions you need, yes, you are making a work based upon one or more pre-existing works, HENCE: DERIVATIVE, as you, yourself, quoted.

    Please, don't add to the confusion. You are a recognized person who has the power to form opinions. Casting such graveous comments only adds power to a confusion that would certainly be usefully exploited by big powers unfriendly to Free Software. Or "open source", or whatever you rather call it.

    1. Re:Rosen, please stop making a disservice! by burnetd · · Score: 3, Interesting
      When you link dynamically... you are effectively including the code when you run the program.


      No you're not though, the program could be linking in a different library at run time to the one it was coded against. Take wine as an example, if you run a program compiled against a M$ dll, kernel32.dll for example, but it runs against the wine equivalent.

      Are all windows programs now covered by the LGPL, which IIRC is Wines licence) because they could potentially link in Wine libraries?

      Now if Wine had been GPL instead of LGLP would have have ment that all windows programs under through Wine would then become GPL?

      What if you use piping? Can a program pipe through a GPL program without being absorbed by the GPL licence?

      Now do you see why this matter needs to be tidied up?
    2. Re:Rosen, please stop making a disservice! by Anonymous Coward · · Score: 0

      nice point.

      If I could remember my /.pwd and I had mod points, I'd mod you up :)

    3. Re:Rosen, please stop making a disservice! by Anonymous Coward · · Score: 0

      I have used static linking with non-open source with C++ but I suppose that the linking stage makes things a little more muddy. Just wanted to point that out (insert Nelson's "Heh-hah" here)

    4. Re:Rosen, please stop making a disservice! by Anonymous Coward · · Score: 0

      >When you link dynamically... you are effectively including the code when you run the program.

      >> No you're not though, the program could be linking in a different library at run time to the one it was coded against.

      Doesn't matter. What matters is the library the author coded against, as that's the one whose license the author has to follow, not some other impementation.

      >> Are all windows programs now covered by the LGPL, which IIRC is Wines licence) because they could potentially link in Wine libraries?

      No. LGPL has no requirement that derived works created by linking to LGPL-d code be licensed under the LGPL. Read the fine license before your post.

      >> Now if Wine had been GPL instead of LGLP would have have ment that all windows programs under through Wine would then become GPL?

      No. Again, read the license. Read the FAQ on the license. Just because I can release my own GPL-d malloc function implementation, it doesn't mean that all C programs ever written are GPLd, whether they use my hypotehtical GPLd implementation or not.

      >> What if you use piping? Can a program pipe through a GPL program without being absorbed by the GPL licence?

      Yes. Again, please read the license and the FAQ. The GPL doesn't require that a program which just runs another GPLd program is licensed under the GPL. Pipes are O.K., too, as long as you don't try to circumvent the GPL and use interna of the GPLd program at runtime.

      >> Now do you see why this matter needs to be tidied up?

      No. All your questions are answered in the FAQs or in the licenses. You already know how to write, now it's time to learn to read.

    5. Re:Rosen, please stop making a disservice! by Cyclops · · Score: 2

      No you're not though, the program could be linking in a different library at run time to the one it was coded against.
      With *some* libraries, you may be able to do that, technically (borderline cases). However, the running program is *still* including the code it needs. In certain cases, maybe it's the user who's breaking a license, and not just the distributor. You can't treat them all in the same way as long as you have copyright. Tough.

      Now if Wine had been GPL instead of LGLP would have have ment that all windows programs under through Wine would then become GPL?
      Only those made using the winlib, if it was GPL'ed instead of LGPL'ed. You would need to expect the coders to honour the library, of course.

      What if you use piping? Can a program pipe through a GPL program without being absorbed by the GPL licence?
      LOL a pipe is a means to connect the stdout of one program to the stdin of another. That's two different running programs. All those supposed doubpts are quite clearly explained in the GPL FAQ. If it invoves fork & exec you're on the clear. The output of a GPL'ed program is not covered by the GPL. Same thing for input , etc... etc...

      Now, go read the faq, see how it all clears up. In doubpt, many mailing lists exist. Ask a simple question...

    6. Re:Rosen, please stop making a disservice! by burnetd · · Score: 1

      Hey AC I've read the GPL (and released software under it) and it does not define a "derived work", and as far as I'm aware a FAQ is not a legal document and the one on the GNU website also fails to define a derived work except informing a reader it believes that subclassing is included.
      Perhaps you should read the post I was replying too. Especially this bit...

      When you link dynamically... you are effectively including the code when you run the program.
      A statement I totally disproved.

      Doesn't matter. What matters is the library the author coded against
      So if I engineer a library so my library is binary compatable with a GPL'd one but non functional, and compile against my program against my program would not be GPL'd ?
      Come to think of it, I believe that for Linux, GCC's default setting is to allow for missing symbols, so I wouldn't have to go that far I can just use the API, and not link any library in at all.

      The GPL doesn't require that a program which just runs another GPLd program is licensed under the GPL. Pipes are O.K., too, as long as you don't try to circumvent the GPL and use interna of the GPLd program at runtime
      How is piping any different to dynamically loading a library image at run time? Both ways I'm passing data to it at run time, letting it process data and retriving the results.
      I haven't modified the GPL'd code. nor have I linked against the library at compile time, and a different library could be used at run time.
      To me this means I can use libdl with abandon.

    7. Re:Rosen, please stop making a disservice! by burnetd · · Score: 1

      After finding the relevelant section, its still all a bit muddy especially the claim that sockets are okay unless "the semantics of the communication are intimate enough". I guess thats an attempt at stopping 'local' rpc an easy way to work around the GPL e.g. rewrite dlcompat as a server.

  35. FUD by Euphonious+Coward · · Score: 4, Insightful
    I see this article as an attack on the GPL, trying to turn it, essentially, into the Lesser GPL. While this would be convenient for commercial exploiters of GPLed code, it would also make businesses more reluctant to release their work under the GPL, for fear of having their work stolen by rivals.

    The article disingenuously ignores cases where works were held to be derived even when they did not include any part of the original work, but only (e.g.) recycled characters from the original. When the second work makes sense only in light of the original, it's derivative. A program that works only when a GPLed library is present is derivative of that library.

    Claiming that dependency other than copying doesn't count is a disservice to Mr. Rosen's clients, and to readers at large. An honest article would have at least acknowledged that serious legal scholars disagree with him.

    1. Re:FUD by jeremy_hogan · · Score: 1

      When talking about libraries, you could use the LGPL. Nothing in the article cries for turning the GPL into anything it isn't.

      And Larry Rosen is not a MS FUDster.

      >> serious legal scholars disagree with him.

      Well, the folks that wrote the license don't seem to. Neither do the "serious lawyers" who actually took the time to read the terms or at least the associated FAQs

      From: http://www.gnu.org/licenses/gpl-faq.html#IfLibrary IsGPL
      If a library is released under the GPL (not the LGPL), does that mean that any program which uses it has to be under the GPL?
      Yes, because the program as it is actually run includes the library.

      From http://www.gnu.org/licenses/why-not-lgpl.html

      Stallman's essay on which to use. Even though he advocates toward GPL, the case is still made for LGPL usage in certain cases.

      I can "sort of" see those who skimmed the article saying "Hey, this guy is anti-GPL", but in reality, he is attempting to lay out the debate in digestible chunks. Would we rather proprietery companies never ported to Linux b/c they didn't understand the issues well enough to make a clear decision?

    2. Re:FUD by Euphonious+Coward · · Score: 2
      It appears to me that jeremy_hogan has entirely misunderstood the the topic.

      The article claims that the extra permissions offered in the LGPL are implicit in the GPL, and that any library offered under the GPL may be used as if it were released under the LGPL. Right or wrong, it's the topic under discussion here.

    3. Re:FUD by Arandir · · Score: 2

      I see this article as an attack on the GPL

      God forbid someone should question Saint Ignutius' interpretation of the Sacred and Profane General Public License. Heresy! Burn them at the stake!

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    4. Re:FUD by sholden · · Score: 2
      A program that works only when a GPLed library is present is derivative of that library.
      Since when did your opinion trump the court's?

      A program is a derivative of a library if a court rules it so (and that may change on appeal...). Copyright law determines what a derivative is, and the courts have the job of interpreting that law.

      Lots of *strange* things happen, if your statement is followed. A program can change from being a derivative to not being a derivative without modification (by a replacement library being implemented by someone else, for example).

      Being able to create a derivative of something that doesn't exist yet also becomes possible (top-down development often results in libraries being written after the program that uses them...)

      Creating a derivative of a work you have never seen or possessed (assumming you don't agree with interface copyrights)...

      In practice it's pretty obvious then someone is trying to sneak around the GPL by playing dynamic linking games, etc. A reasonable court would see that and rule accordingly. Of course most courts aren't reasonable, and rule in favour of whomever has the most expensive lawyers...
    5. Re:FUD by Euphonious+Coward · · Score: 2
      I wrote: A program that works only when a GPLed library is present is derivative of that library.

      sholden wrote: Since when did your opinion trump the court's? ... A program is a derivative of a library if a court rules it so (and that may change on appeal...). Copyright law determines what a derivative is, and the courts have the job of interpreting that law.

      No court has ruled. Legal scholars disagree.

      My remark expressed the opinion the FSF obtained from its legal experts, to provide a concise counterpoint to the article. Rosen should have expressed it himself, and would have done were he interested in a fair exposition of the issue.

      Concealing such a legal risk (i.e. that the court might agree with the FSF) would harm his clients. Is he telling his clients one thing and us something else? He's either cheating them or lying to us. Which is worse?

    6. Re:FUD by Christian+Engstrom · · Score: 1
      The statement in the parent post that
      "A program that works only when a GPLed library is present is derivative of that library."
      is if not wrong, then at least completely irrelevant, in my opinion.

      In paragraph 0 of the GPL it says:

      "Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, [...]"
      This means that the act of linking to a GPLed component and running the resulting program, is "not restricted" by the license, and "outside its scope". If you have been using a GPLed component to develop some program of your own, you have been doing exactly that: using it, which places you under no obligations at all, according to the above quote. This means that you are perfectly free to do whatever you want with your own code, like for instance licence it as closed source, or under an Open Source license that is not GPL compatible.

      A user that downloads the GPLed component himself and uses it by linking it together with your component is likewise under no GPL obligations, since he too is only using the GPLed component.

      It is only when you, or this hypothetical user, chooses to distribute the GPLed component together with your own contribution, that you (or he) will be bound the GPL. It is in this light that the question of static or dynamic linking should be viewed.

      In the case of static linking, the answer is very simple: if you distribute a pre-built binary, it obviously contains the GPLed component, so the GPL applies. If you do not want to place your own code under a GPL compatible license, you will have to distribute your own contribution separately, which presumably means either as source code, or as a pre-compiled library that the user will have to link to himself.

      For dynamically linked programs, one aspect is exactly the same, namely that if you do not actually distribute the GPLed component, you are not bound by the GPL. Hence, a dynamically linked program that expects some GPLed standard component to be already installed in the user's computer, but does not itself contain that component in its distribution, need not be GPL compatible in order to be distributed.

      Isn't the opposite true as well, that if you do distribute the GPLed component together with your own program, you are bound by the GPL? Well, basically yes, but possibly no, would, unfortunately, be my answer.

      "Basically yes" because the GPL is a license that is explicitly intended to cover derivative works, so if that is what your work is and you want to distribute it as a whole, you should obey the terms of the GPL.

      The "possibly no" stems from the the provision in paragraph 2 of the GPL, where it says that

      "[The] mere aggregation [...] on a volume of a storage or distribution medium does not bring the other work under the scope of this License."
      This means that if it is reasonable to see the distribution as merely an aggregation, your own program need not necessarily fall under GPL.

      When is it reasonable to claim that the combined distribution is merely an aggregation, and when is it not? This is no doubt something that lawyers will be more than happy to argue endlessly over at the rate of 500$ per hour (of your money), but to me the answer is very simple, and will certainly prove beyond doubt that I Am Not A Lawyer: why bother?

      If you feel uncomfortable about the GPL, all you have to do is to arrange your own work in a way that can be meaningfully released without any GPLed components, and then distribute it in that form. If you do not actually distribute any GPLed components, you are not bound by the GPL, even if you have written and released something that requires them to be present in order for your own work to be meaningful.

      If you cannot live with the GPL, don't distribute GPLed components; if you can, by all means do.

      --
      Christian Engström, Former Member of the European Parliament 2009-2014 for The Pirate Party, Sweden
    7. Re:FUD by Anonymous Coward · · Score: 0

      A "fair exposition of the issue" would mention that nearly every software IP lawyer disagrees with the FSF's conclusion and allow their clients to to ship software that uses MS Windows and other proprietary OS libraries.

      But you left that part out.

    8. Re:FUD by Euphonious+Coward · · Score: 2
      AC wrote "nearly every software IP lawyer ... allow their clients to to ship software that uses MS Windows ... libraries"

      If you bother to read the GPL, you find that it specifically allows linking with OS-supplied libraries.

      Try again, troll.

  36. However, noone really understands... by Anonymous Coward · · Score: 0

    any other license agreement.

    MS EULA, Borland license, anything.

    Is this what a straw man proposal means?

  37. moron the noescape claws, as IT relates to.. by Anonymous Coward · · Score: 0

    payper liesense hostage ransom stock markup FUDgePeddlers, up on the pacific crest.

    nice won daze 10% "haul", so far today. happy gnu year? i DOWt it. george/bill/robbIE et AL, must "partner" to revive/re-incarnate the evile larcenious "bull", lest fuddle's owned "gnu" poutoll go under, in a wash of MiStrust/bank fraud investigations. so IT goes.

    look for: va.msn.net, ticker symbol (VAST)?

  38. You must by oldstrat · · Score: 2


    From the GPL

    You must pass the rights you were given to anyone you give (with our without payment) the software to.
    not an exact quote

    For me that says it all. Anything can be derived, anything can be sold, but, if you got it for free, and you got the gold (source code) for free, as in GPL, then what you pass on must be as free as it was when you got it.

    US Copyright law gives a lot of hooey about percentages of change. GPL, says no mater what you do, you cannot steal.

  39. License awareness by halftrack · · Score: 2

    As I read the GPL Rosen's wrong. A GPL'd library can not be used in non-GPL software, here's one reason:

    Considering the release of the LGPL it's clear that the author of the GPL didn't want any linking to GPL software from proprietary -/non GPL software. And there is - IIRC - in US law a clause about understanding a license based on it's intent or something like that. (IANAL)

    Now, the only solution to this trouble is for programmers to become more license aware. They should know what limitations they are putting on a program and especially on a library. It's OK to license programs under the GPL, but IMHO libraries should be licensed under the LGPL (which is a good license) or a BSD-like.

    Sadly it seems that today many people put things under the GPL without thinking, it's become the de-facto license for OSS and that's not good, at all. IMHO the worst example is - dare I say it - the Linux kernel. The Linux kernel requires external modules to link to it thus making a legal quagmire. The GPL was suited when Linux was small, but to get widespread adapting (embedded devices and better commercial driver support) it should change to a less restrictive license. (The LGPL's reverse engineering clause would rule it out, but something BSD-like with some restrictions could be nice. And, luckily, tracking down all kernel authors wouldn't be my job.)

    Proprietary software is OK, as long as it gets the job done well.

    --
    Look a monkey!
    1. Re:License awareness by Courageous · · Score: 2

      A GPL'd library can not be used in non-GPL software...

      A GPL'd library cannot be distributed by someone who uses it without agreeing to its terms. The GPL cannot restrict rights other than those restricted by actual law. To understand what the GPL can or can't do, one has to examine the impact of disagreeing with the license. If one disagrees with the license, distribution of the library is a copyright violation. If, however, one does not distribute the library, the original copyright holder has little say in the matter. Ultimately, agreeing to the GPL is to acquire rights to distribute. That's what copyright is all about.

      As for GPL's more restrictive definition of derivative work, well, GPL is free to define things how it likes, but until and unless the law itself defines derivative work for software more clearly, GPL has no say in the definition for those who do not agree with its license.

      C//

  40. Point 2 by SerpentMage · · Score: 3, Informative

    Regarding point 2, where the GPL expressly forbids it. The question is can the GPL actually do that. The problem of the GPL in that instance is that it forbids something that cannot be clearly defined. For example it is allowed by the GPL for you to create an executable and call that executable from a propriatary program. In legal terms how does that differ from doing a library call? Ok at a technical level HUGE difference. But what I think the person was arguing is that at a legal level that distinction is not so clear.

    And in part GPL decision (I think MySQL) a judge made the decision that if the program could be substituded with another then there is no binding. Therefore it could be concluded that if I create a neutral API a'la ODBC I could bind to a GPL program, without having to give up my sources.

    Of course all of this is yet to be decided in a court of law....

    --

    "You can't make a race horse of a pig"
    "No," said Samuel, "but you can make very fast pig"
    1. Re:Point 2 by Anonymous Coward · · Score: 0

      Why don't you look up the MySQL decision and see?

      Oh, right, because there wasn't one.

  41. Interface SPecific License by dismentor · · Score: 2, Interesting

    Why not have a license that specifically indicates which interfaces may be accessed by programs under which license; the Linux kernel already has something similar with EXPORT_SYMBOL_GPL. It wouldn't change the primary indication of a derivative work, but it would certainly clear up linking issues?

    Secondly, the purpose of the GPL seems to be such that anything so much as looking at it without being GPL compatible is against the license ; as such it is the purpose of the LGPL to allow proprietary programs to link with the program in question...

  42. What do we *want* the answer to be? by Dunark · · Score: 4, Interesting

    I'd like to suggest a pragmatic approach: What definition does more to advance the cause of promoting the use of open-source systems? If we say that linking to system libraries makes an application subject to GPL, we can expect the makers of proprietary software to avoid open-source platforms in droves. This would help M$ to maintain the "applications barrier to entry" that has so far discouraged many people from switching to Linux.

    In my opinion, we should say that calling library routines does not make the calling program subject to GPL.

    1. Re:What do we *want* the answer to be? by thomas.galvin · · Score: 2

      1. Compile Linux to a library
      2. int main() { linux.main(); }
      3. Profit!!!

    2. Re:What do we *want* the answer to be? by Sax+Maniac · · Score: 2
      Absolutely correct. Right now, it's a nightmare to develop a proprietary application for Linux because you have to examine every single library to see what the license is, and not all of them are as neat and tidy as "GPL no, LGPL/BSD ok". So then that mean start poring through pages of legalese, which may or may not be intelligible.

      Which means you really have to send it to a lawyer if you really want to be sure. Who will gladly charge you $500/hour to look at it, and then weeks later say: "No, you can't use it. Gimme $10,000."

      At that point, you just say "screw it" and write it yourself. The result? Who loses? The apolitical Linux users who just need the goddammned app and are willing to pay for it. Then they have to wait a few years while wheels are reimplemented. That time spent reimplementing it translates to a higher cost to users, and longer time getting the stuff they want. And this is why I'll never see potentionally useful stuff like Quicken or Finale for Linux. Sigh...

      Personally, I think the LGPL is the right thing to do if you want to write any library code, or otherwise intend your app to be a building block for other apps.

      (Disclaimer: I write proprietary software to put food on the table, and free software for fun.)

      --
      I can explanate how to administrate your network. You must configurate and segmentate it, so it can computate.
  43. Definition of derivitive works and software by Anonymous Coward · · Score: 1, Interesting

    It was only within the last two years a case was decided that "referencing" a function in another (linked) library was NOT the same as inserting that code in place (hence, traditional linking of external libraries was NOT construed as a derivitive work). That could could have easily ruled the other way...

    This is just one place where existing copyright law as a concept that makes sense for 16-19th century books, and 21st century software clearly collide. What does one make of C++ (vs simpler C libraries which the above case illustrated), where headers may include inline member functions, transformative templates, and in fact invites the user to "derive" a new class object from the core library? I suspect, current copyright, as it's interpreted would make it IMPOSSIBLE to have a C++ (or Java, C#, or whatever) "application" that does not legally become a derivite work of a class library. What does does say about Java classlibs? Or even using the LGPL for object oriented libraries?

    None of these questions have been effectivily answered or even properly addressed as far as I can determine. Certainly they are not in this article.

  44. Is amendment via inheritence modification ? by ContemporaryInsanity · · Score: 1

    2) The meaning of derivative work will not be broadened to include software created by linking to library programs that were designed and intended to be used as library programs. When a company releases a scientific subroutine library, or a library of objects, for example, people who merely use the library, unmodified, perhaps without even looking at the source code, are not thereby creating derivative works of the library.

    A library of objects is by definition (or certainly should be by design) intended to allow derivation via inheritance.

    So, should you be in the clear if don't don't modify the objects provided via inheritance and additional functionality, just use what you're given ?

    For me this is a grey area. If I developed and released an open source library of objects (wish I had the time), I'd certainly *like* (I know I could demand) generically useful enhancements to be open sourced in order to enhance the library, however as a proprietary developer who uses open source where applicable and legal, I am in a position where any enhancements I might make to such a library would have to remain proprietary.

  45. derivative works discussion by inode_buddha · · Score: 2

    You should see today's "daily digest" on the kernel mailing list. It gave me a decent heartburn to wade through a few hundred K of advocacy, in between bits and pieces of code. The code is pretty cool looking, btw.

    --
    C|N>K
  46. My Opinion of Proprietary Modules by nuggz · · Score: 2

    To distribute a work, with the included GPL code would require licensing under the GPL.

    If you distribute your work without any GPL code, it would not be required to license it under the GPL.

    If for that code to be made usable, it MUST use/include/integrate some portion of GPL licenced source or binary it is in some way a derivative work when that GPL code is included.

    If you include a GPL header file, it has integrated GPL code into that work.

    If you wish to distribute it without any GPL code at all you wouldn't be bound, and the user could compile it themselves. The distribute under GPL clause only comes into play IF you distribute the GPL code, don't distribute it, you don't have to agree to it.

    1. Re:My Opinion of Proprietary Modules by Arandir · · Score: 2

      If you include a GPL header file, it has integrated GPL code into that work.

      Expect in the cases of macros and inlines, including a header file does not include any code. You are merely accessing the public API. C/C++ is not English. Do not confuse C's "#include" with English "include".

      As for the case of macros and inlines, it's more probematic. For some macros, fair use definitely comes into play. For others it's hard to say.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
  47. linking by dpilot · · Score: 3, Interesting

    I thought the original intent was that the GPL'ed program can always be fixed or enhanced by one who wishes to do so.

    By linking you first have to differentiate between static and dynamic. I don't think anyone's going to argue against dynamic linking. At that point, you may as well say no proprietary programs on Linux, at all.

    So back to static linking. I seem to remember reading once that this could still be handled, if the proprietary portion were supplied in some linkable form. In other words, the GPL'ed portion could be fixed or enhanced, and then re-linked with the proprietary portion.

    This looks to me like what nVidia does with their tarball distributions. There is some source and a *big* .o file. The source pieces do include some Linux headers. But the essence is that one can fix/enhance the GPL'ed parts of the system, and then rebuild the nVidia drivers with the components they have given.

    One exposure is that .o files are a bit more accessable than executables, hence the obfuscation.

    I seem to have gotten the impression years ago reading GNAT documentation. They chose to release their library components under LGPL, so I'm not sure if I've described GPL or LGPL behavior, but I thought it was the former.

    --
    The living have better things to do than to continue hating the dead.
  48. My view, by Anonymous Coward · · Score: 0
    I'a a software programmer and I create both
    open-source software and closed-source proprietary
    programs.


    The fact is that I would like to use the same
    libraries in both cases, because I don't want
    to spend my time learning different APIs.


    That's why I like LGPL.


    Regarding the notion of derivative work: if just by linking to a library your program can be considered a derivative work from the original library, then there isn't really any piece of original software except the linux kernel (or windows kerenl).


    Even the kernel could be considered a derivative work because processor instructions make calls to the processor internal microcode/nanocode and that could be considered a form of linkage.

    Intel: all your base are belong to us.


    In that case, Microsoft would have legal rights over any program that Runs on WIN32 because any such program is linked to the kernel/DLLs and
    every Linux program would have to be GPLed because
    the Kernel itself is GPLed.

  49. GNU FAQ; GPL+Web Services License by jck2000 · · Score: 1
  50. GPL in 1 line: by Anonymous Coward · · Score: 0

    Where the binary goes, the source must follow.

    well, it doesn't have to follow, but it has to be available to the end-user of the software.

  51. Not centrally, but it IS an issue by burgburgburg · · Score: 3, Informative
    Microsoft, despite their 10,000 programmers, used the BSD licensed TCP/IP stack when they decided to start paying attention to such things (since they license allows this, there is nothing "wrong" here).

    They would quite likely love to cut costs by using GPL'd software of various sorts as the foundation for their proprietary software. Their railing against the cancerous nature of the GPL seems to indicate their frustration at not being given free reign to do with such software as they wish.

    I would guess that there are a number of programmers who GPL specifically to ensure that their work is never legally usable by Microsoft. I think they would be quite displeased with this interpretation.

    1. Re:Not centrally, but it IS an issue by SN74S181 · · Score: 1

      Almost every other company or organization out there that has implemented TCP/IP used the BSD stack. This is good, for it means that when all the different OSes talk to each other with networking, they all speak in the same, or a very similar, dialect.

      Linux is unusual in that it doesn't use the Berkeley stack. Word has it Linus had some arbitrary reason for liking somebody else's code instead.

      You discredit your arguement if 'Microsoft used the BSD TCP/IP stack' is your strongest evidence. Try again, please.

  52. The answer is clear by Anonymous Coward · · Score: 0
    From reading many of the comments here, as well as based on my own experience in the Linux field talking with developers at many different companies, it's painfully clear to me that we need to clear up this mess, and soon. The GPL is like many of hte laws in the US--it started out on the right track, but has grown problems over the years thanks to technology advances the original author(s) didn't foresee.

    IMO, we need to have the equivalent of an open/free software constitutional convention to write a new GPL. It needs to be as wide-open a process as possible, without generating into an endless food fight, and it must produce a license that virtually any software developer or user, or manager or a software user or develop, can understand after a single reading.

  53. Inclusion and Derivation by nuggz · · Score: 2

    Some people argue that inclusion of the header files makes something a derivative. This is utter nonsense.

    I am one of those people who disagree.
    If you MUST include GPL licensed code (ie the header file in question) to make the binary you wish to distribute, you have created a (partially) derivative work.

    If you don't agree with the GPL restrictions on distribution, don't distribute GPL code, or any part of it.

    1. Re:Inclusion and Derivation by blakestah · · Score: 2

      If you MUST include GPL licensed code (ie the header file in question) to make the binary you wish to distribute, you have created a (partially) derivative work.

      Yes, except that the header may be read and prototyped without using the same expression trivially. So, there is such an easy work-around, it seems silly to have it at all. I mean, I could write a PERL program to dupe a header quite easily.

      If you don't agree with the GPL restrictions on distribution, don't distribute GPL code, or any part of it.

      Copyright law only goes so far. The restrictions in question about the GPL only apply if a program is a derivative. So, the essential question here is what makes something a derivative. I think including the header is a laughable legal argument, in part because it may be worked around trivially.

      The FSF feels fairly confident that a library that provides a unique function makes something that links to it a derivative. The uniqueness is fairly critical wrt copyright law.

    2. Re:Inclusion and Derivation by Anonymous Coward · · Score: 0

      The FSF feels fairly confident that a library that provides a unique function makes something that links to it a derivative.

      Every company who does Windows development fairly confidently disagrees. Who do you choose to believe?

  54. Failure of GPL in the same line by Anonymous Coward · · Score: 0

    The GPL FAQ is fundamentally dishonest. Why doesn't it just say, right up front, before the table of contents: "If you don't want to give away everything you create, for free, and also all the source code, again for free, fuck straight off to Pluto, because the GPL is your sworn enemy."

    All the true believers would stand up and cheer, and people trying to make a buck wouldn't waste their time on the Obfuscated RMS Philosophy Contest.

    It's so simple: you want to get paid, you pay for the tools. If you don't want to get paid for whatever reason, fuck around with free software. There it is.

  55. If linking isn't enforceable by nuggz · · Score: 2

    If you distribute GPL code under terms other then those the GPL allows you are committing a copyright violation.

    If you don't agree to the GPL definition of derivative work, you wouldn't have accepted the redistribution license and to redistribute would be a GPL violation.

    If a court rules that distributing something or part of something without the copyright owners permission is legal, we would have an interesting situation.

    I truely hope that a judge won't rule that "I only copied a small part of their work" is a valid defense.

    1. Re:If linking isn't enforceable by Anonymous Coward · · Score: 0

      You are assuming that the GPL is a EULA, but it is not. It specifically says you don't have to agree to the licence.

      If I don't agree with the GPL (my right), and what I do with the code is legal under copyright law, then the GPL doesn't enter the picture at all.

    2. Re:If linking isn't enforceable by nuggz · · Score: 2

      But then you couldn't redistribute the code. Unless you make an agreement to the contrary you have no right to distribute it.

    3. Re:If linking isn't enforceable by Anonymous Coward · · Score: 0

      Copyright law has exceptions which allow distribution without the author's permission. See the "Fair Use" provision.

      In some european countries, there's a huge copyright exception for educational materials. Therefore EduLinux could be distributed legally there without source.

      Until recently there were countries that didn't have copyright laws at all.

  56. A simple elegant analogy by Anonymous Coward · · Score: 0

    Suppose I have a script for a play.

    I modify it by adding a character/villian
    and leaving everything else the same. This
    is a derivative work of the original play.

    But, the modified play is NOT a derivative
    work of the wooden pencil or typewriter
    used to type out the new play. They are
    tools (like software libraries) orthogonal to
    the work itself. The typewriter company does
    NOT get royalties for the derivative work
    that was created using that typewriter.

  57. consistency: its not just for ethics anymore by Anonymous Coward · · Score: 0

    The fact that so many are opposed to using any sort of non-free software with free software might miss the point that besides the underlying error of ethos, actions derived from those thoughts will make it much less likely that proprietary shops will either A) work with standards and B) release their own API's, libraries and the like free of charge (not to mention being cross platform and application dependent). Its like watching little kids make their pathetic little cliques. By clearly saying that non-free software cannot even LINK (static or dynamic) to free software you first and formost limit the choice of users. Thanks a lot buddy, but if I want limitations I will stick with Microsoft and Sun.

  58. Could give a shit less... by josh+crawley · · Score: 1

    Why dont I care? Linus made Linux as a Unix wannabee. It was "fun". He took and mutlitated Minix till even the Minix engineers said it wasnt theirs. Simply, it was HIS toy.

    Times passes....

    Lots of people like it and donated time, knowing the newer licensing was GPL. Donaters didnt care. If they did, they didnt donate.

    Now...

    Now companies use it quite a bit, in one place or another. You have Linux fanboys bitching about binary-only drivers when they should be jumping for joy that they are even recognized that Linux exists. Then there's, of course GPL biching-- BSD vs. GPL. Feh. That's why companies have Layers on demand: they should be able to tell what a license is, how it affects business, and wether to use it, and with what.

    Companies should consider ramifications wether to deal with the Linux kernel (GPL) or make their FUCKING OWN KERNEL. That's the cost.

    DEAL WITH IT.

    end of rant

  59. Intentionally confusing? by ToasterTester · · Score: 2

    If the GPL was clear as to linking is a derivative work people would avoid using GPL code. But they want the exposure in order to claim large numbers of GPL code users. It also give them a trap to spring some day, the same way some companies patent software, but not announce the patent till useful to do so.

    BSD license rocks! .

  60. Not consistent with Rosen's other writings by Brett+Glass · · Score: 2, Informative
    Rosen's article is interesting because it shows glaring inconsistencies with other things he's written on the subject of copyrights.

    In this essay, where he condemns Microsoft's "Shared Source" initiative, he points out (correctly!) that if you so much as look at Microsoft source code, anything similar that you write later could be declared to be a derivative work. (He uses, as an example, the George Harrison "My Sweet Lord" case, in which Harrison was convicted of "unconscious" copyright infringement because he had once heard a song with a similar melody.)

    However, in the essay cited in this Slashdot article, Rosen doesn't warn of this danger. What's more, he does not warn in either essay that it's just as much a danger when one looks at GPLed code as when one looks at Microsoft code.

    This is an issue which both Rosen and the FSF have consistently ducked. If you look at GPLed source, and later write something similar, you could potentially be sued for infringement and required to release your work under the GPL -- forfeiting any payment you might have been able to get for licensing it. (The GPL requires that you license derivative works "at no cost.")

    In short, in the essay mentioned in this Slashdot item, Rosen both omits vital information and fails to warn of a serious danger. Worse still, he shows inappropriate bias: he points out that danger in the case of Microsoft's "shared source," but not in the case of the GPL. This brings his objectivity and reliability as a source into question. His advice to software authors on the subject of copyrights and derivative works should be factual and based on concrete principles. It shouldn't be biased by who -- the FSF or Microsoft -- happens to own the software.

    1. Re:Not consistent with Rosen's other writings by sheldon · · Score: 2

      Rosen's article is interesting because it shows glaring inconsistencies with other things he's written on the subject of copyrights.

      If you look at it from an anti-Microsoft slashdot position, they are perfectly consistent with one another... i.e. Microsoft=bad, GPL=good. :-)

      As to the "unconscious" copyright infringement case... this is nothing new and you'll note the late Stephen Ambrose was also accused of this. Historians have long had to face this problem, because one of the only ways left to them to find about the past is to read others works. That's why they have to take extremely detailed notes, so that they can make sure as to not duplicate the wording but rather the idea.

      Therefore I don't agree that just looking at code will curse you. It's a more complicated issue than that. In the case of Ambrose or Harrison the problem was using the exact same wording, or chords. Copyright is about the implementation of the idea, not the idea itself.

    2. Re:Not consistent with Rosen's other writings by Brett+Glass · · Score: 1
      It's not that looking at code will "curse" you, but rather that it will put you at risk of later accusations. Most tasks are done via straightforward, common sense algorithms, so your code to do something will likely look quite a lot like someone else's. So, if you looked at the other person's source, it's easy to claim derivativeness. Which, if you looked at GPLed code, means that you could be at risk of being deprived of all rewards for your work. And because the FSF -- thanks to Bradley Kuhn and Eben Moglen -- is getting more and more litigious, it simply isn't wise to look at GPLed code. All they need to do is decide that you're an "evil" commercial software vendor, and it makes no difference whether your work is derivative or not: the harrassment and legal costs you'll incur could be immense.

      Rosen, however, neglects to point out that this problem is just as likely (maybe more likely) to occur if you read GPLed code -- especially the FSF's stuff. He only mentions the risk in connection with Microsoft's "Shared Source." This is more than a sign of bias: it shows a lack of ethics. Rosen is warning about a minor risk while failing to inform readers of a much larger one. (You're a lot more likely to have GPLed source code on your hard disk than to have Microsoft "Shared Source" there.)

    3. Re:Not consistent with Rosen's other writings by sheldon · · Score: 2

      I do have to agree that it's far more likely the FSF will decide to sue someone than Microsoft.

      I suspect it's one of the FSF's goals to make people feel comfortable and safe with the GPL so that they just automatically use it, and then later on they'll start clamping down and suing commercial projects which made the wrong decisions. You're right in that regard, I think this article aids the FSF motivations by confusing the issues.

      Still, as to looking at the code. This may be something for the courts systems to deal with, I don't know if there is solid precedent yet, but I think there is a tremendously good argument to support reimplementation of algorithms without cut-n-paste being a different copyright entity. Depending on how that would play out in the courts, it could tremendously hurt the GPL.

  61. Not really by burgburgburg · · Score: 2
    They all used the BSD stack because it was well written, fairly comprehensive, and free to be used. The stack was an implementation of the protocol, it wasn't the underlying protocol itself.

    My argument is twofold: a) Microsoft is aware of and probably covetous of some pieces of OSS software and b) there are a number of writers of GPL software who do not want Microsoft to ever commercially exploit their work.

    Their use of the BSD stack is a good example of their attention to the OSS field. BSD will have to do for now, because if anyone had proof of Microsoft's use of GPL software in one of their proprietary programs, there would probably already have been a lawsuit.

    1. Re:Not really by SN74S181 · · Score: 1

      Microsoft's use of the BSD stock is a good example of them paying attention to the networking community, and not reinventing a wheel (though from what I have heard, they're using a new implementation in current products).

    2. Re:Not really by Anonymous Coward · · Score: 0

      Right, MS used the BSD stack because most other TCP/IP users (mostly Unix at the time) used the BSD stack, and therefore they'd have maximum bug-compatibility.

      Not to mention that the BSD stack was funded by the US government and was generally considered the "standard" TCP/IP driver.

  62. What goes around, comes around by ShatteredDream · · Score: 0, Flamebait

    Let's face it, a lot of proprietary technology is damn good. BeOS still in many ways (as an OS only) rocks Linux's world as a desktop. And that's really funny because there's been no official updates in 2 years and it was a closed source product. ICC whips GCC in x86 peformance. .NET and Java are proprietary. And don't give me that shit about programming in PERL or C beating both hands down in anything other than maintainence and system-building respectively.

    If you lock out closed source vendors (surprise, surprise, they're not all evil!) they'll lock you out. They won't promote Mozilla, OpenOffice, Apache, etc. Does it occur to you rabid numbskulls that they might actually put some of their guys to work helping the library builders fix bugs, port them to new platforms and stuff like that? I bet you'd object to Apple writing a native GLIB/GTK clone for OSX and releasing it under the BSD license so anyone can use it.

    GPL advocates seem to be more and more like "punks." A bunch of elitist fucks who are just a low-budget version of what they hate.

  63. If dynamic linking == deriving... by jamused · · Score: 2

    If dynamic linking == deriving...Why wouldn't invoking microcode be deriving? Wouldn't Intel be able to claim that all GPL'ed code compiled for an Intel chip was derivative of Intel's processor instructions and their code? It certainly depends on the presence of code written by Intel in order to function, even if it could be run on a chip without Intel's code (just as a program that relied on a GPL'ed library could be run against a any functionally equivalent library) . I haven't seen any theory that suggests a legal difference ...

    1. Re:If dynamic linking == deriving... by Anonymous Coward · · Score: 0

      thanks for being one of the few that has used their brain today. A lot of people have missed this point. What would stop Intel (or any hardware manufacturer that produces an instruction set for their hardware to be used for software development) from suing based on the fact that nearly all software is a "derivative"? Clearly this is rediculous. Library/API calls can not be used in deciding if a work is derivative.

    2. Re:If dynamic linking == deriving... by sjames · · Score: 2

      If dynamic linking == deriving...Why wouldn't invoking microcode be deriving?

      Because the microcode is only accessed through an API (that is, the op-codes) that are explicitly made available for that purpose. They are, in other words more akin to LGPL in that respect.

      Intel has been in court battles with other vendors (most notably AMD i believe) over the re-implementation of the opcodes in silicon.

      In truth, Intel would never be so stupid as to try to push the idea that using opcodes = deriving since that would just mean all Free software would move to PPC or non-Intel IA32 platforms. I'm sure AMD wouldn't mind!

  64. How to test "derivitate work" by Todd+Knarr · · Score: 2

    Take two scenarios in books:

    1. I take the exact, unchanged text of a book and include it in it's entirety in a book of my own, making references to that included text in my own, analyzing it and otherwise using it without modifying it.
    2. I publish a similar book but do not include the original book's text, merely sell a copy of it in a package with mine.

    Which of those uses would be a derivative work? The first corresponds, IMO, to static linking, the second to linking a shared-object library. I'd guess the courts would consider the first to definitely be a derivative work, the second not. Note that in the article's quote from copyright law, it explicitly says that annotations and elaborations are derivative works and those can be done without modifying the original.

    Even if it isn't a derivative work, the same line winds up being drawn. If it's not a derivative work, then the license for the original library (the GPL) still applies to it. Since term 2 grants the right to modify the copy the recipient received, you could argue that if the recipient cannot modify (by modifying the code, recompiling and relinking) the copy in your program you're not complying with term 2 of the GPL when you distributed the library as part of your program. I'm sure the lawyers would love to argue that in court, it'd provide endless billable hours.

    1. Re:How to test "derivitate work" by jbolden · · Score: 2

      Hold on a second here. In scenerio 2 how did you get a copy of the book to include in the package? If you printed it yourself the package would most definitely is a derived work. If you bought it then you are a paying a licensing fee for each copy of the "package" you sell. That is the package is the derived work not your book.

  65. some more by Anonymous Coward · · Score: 1, Interesting
    • 13. more likely to follow standards.
    • 14. More likely to BECOME a standard
    • 15. Easier to integrate and extend (as opposed to the "embrace and extenguish" or "change then embed" philosphy of a certain Washington based organization)
    • 16. encourages interaction of services (see: 13 and 14)
    • 17. Encourages good coding and documentation techniques (crapware will become even more embarrasing for big companies)
    I integrate various parts and am frankly damn tired of seeing non-library applications... why should I have to actually write code to hack apart a poorly written (hard coded) program suite or end up giving in and not having the features I desire? This crap of companies saying "we use open standards" then actually trashing them through the use of proprietary implemantations of API's and wrappers... how is this considered open standards anymore? Oh yeah, I utilize FTP, SSH and HTTP yet I crap them up so that a remote device must have my particular (read: limited) tool that will probably be forcing features people don't want or would rather have something else do (much less adding to the complexity, throughput and security risk) No thanks, I will stick to real open implementations. Otherwise it is like buying a car that only works on partular subsets of roads, rare forms of fuel (and expensive), has a hard coded yet totally non-standard interface (driving controlls), does not allow me to drive at certain times of the day and all this for a crap load more than other cars... gee thanks!

    Reminds me of MS philosphy, "Sure you can use our implementation of this... of course you must use SQL server, and of course use Windows (and thus x86 architecture often) and all its buggy and bloated "glory" plus if you want to have office application tie in then you must use MS Office. Oh, did we forget to mention that you must use IE for internet browing, VB for scripting and ASP for embedded Web page scripting?" A good car company sells vehicles by making them better... MS and those like them sell cars by forcing the roads to be changed to only work with their brand of car. This is not "good business" but to many it is seen as so, however their reasons clearly show that they are mistaken from a semantic point of view. I therefore suggest they use the term, "Financially sound business for the short term." After all, our Founding Fathers (evil US) chose to give us freedom and liberty while they could have supported a despotism or dictatorship in order to force everyone to be "free" based on a definition that holds to "protecting everyone from themselves"... you know, liberals! Ahhh, liberals... what a pretty road to hell we pave!

  66. Free as in... by Anonymous Coward · · Score: 0

    Free as in, "Do what I say, how I say it and you will LIKE IT!" Ahh, liberal agenda and its hypocritical notion of "Freedom through tyranny."

  67. You're limiting your own options by doyen · · Score: 2, Interesting

    I think the article makes a mistake in focusing the legality of the issue on the definition of "derivative works". While the GPL does cover the allowed uses of derivative works, the issue of 'linking' is addressed seperately. Even if a work is not "derived" from the GPL'd source, the GPL does still prohibit linking to it by commercial products. Whether or not that is enforceable and/or fair is another matter.

    Someone else mentioned on this thread that linking to another library was like playing someone else's movie in the background of your own movie without consent. I disagree, if the commercial product is not specifically distributing the GPL'd library as a bundled component, then your situation is much more analagous to selling someone a car and telling the industry they can't make paint that will be used on said car. This is a completely unenforceable situation - you mean to tell me that my call to sqrt() in math.h is in breach of your license because the user happened to have the GNU math.h installed? I don't think so. Not to mention that this is a limitation of the end user's freedoms equal to those of the commercial EULAs to which we so vehemently object.

    So while your barking to keep commercial software from even thinking about GPL'd code, remember not to complain when Blizzard can't release the next installation of StarCraft on Linux because they can't spend the time to duplicate all of your GPL'd libraries.

    And now I'm going to rant about the GPL in general. You can skip this part as it's not technically on topic.

    What used to be a hobby has become a religious movement. This segregationist attitude toward Free and Commercial software will only hinder the adoption of free software. Unfortunately GNU has become such a buzzword that developers are releasing their code under the GPL without fully understanding the limits they are imposing on the usefullness of their code. I also personally enjoy being able to get paid for coding and am not inclined to contribute to a world where that would not be impossible. I also feel that GNU's GPL statement is not made in the interest of the world at-large, but instead in the interest of spreading the name of their particular clique.

    I prefer to use my talents to contribute to the world instead of a particular group. That means producing code that is usable by both individual developers and corporate entities who wish to use their resources to make greater improvements. Providing this freedom does not allow a corporate body to steal control of the project from me any more than forking my own branch of the OpenBSD kernel allows me to steal control of OpenBSD from Theo. Indeed, it gives me even more leverage over those that use my product as a recognized producer of worthwhile software.

    To those of you pondering how to release your own works I would pose a more extreme example; would you want advances in cancer research to be licensed as off-limits to coporate entities? How quickly do you think that would kill all research in that area?

    1. Re:You're limiting your own options by MikeBabcock · · Score: 2

      You're taking the wrong angle. The GPL is not developped from the "for the person who wants to not use the GPL" point of view, but from the "all software should be free, screw you if you don't agree" point of view.

      If you don't like it, you're reacting exactly as expected; "Use the GPL yourself or go away".

      I don't have the attitude, and often use the LGPL, but my GPL'd works better be treated as GPL; you don't wanna do the footwork to invent what I wrote? Use the GPL for your own product too so I can benefit from it.

      --
      - Michael T. Babcock (Yes, I blog)
  68. Good point by Anonymous Coward · · Score: 0

    If I understand correctly, this is expressly prohibited in GPL, but is allowed in LGPL. So, I disagree with his point here. If we allow this, companies will extort this and take advantages as much as possible -- which, of course we don't want.

    And with good reason. If you allow this a company could take *any* GPL code, re-write it into a library form which is itself GPL (trivial), and then link to that library because it is allowed by that second point.

    There is a good reason for the distinction between GPL and LGPL.

  69. no, it is you who have misunderstood the issue by MemeRot · · Score: 2

    The GPL only applies at all if the work is a derivative work, as it gets all of its legal authority from copyright law. If a program that uses a GPL'd library is not a derivative work then it doesn't matter what the GPL says about use or redistribution because you are not bound by its terms. Since this is a legal issue and will be resolved only by sufficient case history, it will ultimately be exposed to the test of what a 'reasonable person' would think several times before there is sufficient precedent to make a strong argument for either position, making it a matter of public opinion whether your proprietary program is a derivative work or not. When that happens, the decision can go either way because even programmers are often uncertain of whether something is a 'derivative work' or not. Only copyright law restricts your ability to use the code however you want, and it only applies if certain legal conditions are met.

    1. Re:no, it is you who have misunderstood the issue by Euphonious+Coward · · Score: 2
      Memerot writes: "The GPL only applies at all if the work is a derivative work".

      Memerot has understood the topic of the article (and parrots its claim), but not of the discussion. Suffice to say that other legal scholars disagree with him (and Rosen) about what counts as a derivative work, and that Rosen is disingenuous in pretending otherwise.

      If Rosen were correct, then the GPL would in fact be equivalent to the LGPL. That's a fact, not under dispute. The debatable question is whether he is correct. The ethical issue is whether Rosen is being scrupulous in failing to present the opposite argument.

      Also at issue are Rosen's motives: is he encouraging people to violate library authors' expressed wishes in an attempt to weaken GPL protections from libraries?

  70. yes, they can go away. by twitter · · Score: 2
    The artilcle's questions only make sense because software copyrights don't make sense. Witness:

    Does merely linking to a program without any change to the original source code create a derivative work of that program? Almost every program links to library routines. Surely, one doesn't create a derivative work of a library simply by calling a sqrt function in the library. Why should it be any different when you link to something as complex as an enterprise server or database engine? What about linking from a software program, such as when linking your device driver into a GPL- or OSL-licensed program like Linux?

    Very good questions indeed! They point out the futility of applying something like copyright to software in the first place. Until the law catches up, we must use its flaws to promote free software.

    This is not a dificult proposition. Many confusing and silly things have been written above by those who wish to write propriatory code. Bah! Free code can and does call non-free code. Non-free code can and does call free code. It should be obvious that a VB script that calls M$ Word and types "Hello World" can be GPL, though it exists at the mercy of greiviously non free software. Conversly, someone could write a silly CLI porgram that prints a menue and parses input to GNU find and grep and call it easyfind. The only real question is, why bother? Do you thing you can sell it? Someone will write a free version if they have not done so already.

    All of those silly people who would like to plunder the free world to support their abusive and failing software model can simply sick it. Go away, I don't appreciate the way your companies do business, don't need your work, and don't ever think I'll link to it. You can't have your cake and eat it too. The same things that would happen to me if I tried to sell my Hello World program on a CD that contained M$ Word will happen to you if you try to sell a CD that includes binary only grep. Well, not really, you could just make the source code to grep, including your modifications, available and all will be well.

    --

    Friends don't help friends install M$ junk.

  71. Maybe It's not a Derivative Work, but ... by Lucas+Membrane · · Score: 2

    Other legal concepts than 'derivative work' can be applied to limit closed-source exploitation of open source programs. If I write a program that needs a GPL library to run, that doesn't make my program a derivative work of the GPL library. But the GPL license on the library can still prohibit me from distributing the library with non-GPL code, derivative or otherwise. I'd have to tell my users to obtain the GPL library separately in some dynamically linkable form, tell them to install it, etc, etc. All that, along with fears of version mismatches, etc, would pretty well kill my application's chance of commercial success.

  72. what is it with you guys? by MemeRot · · Score: 2

    The GPL only applies if the work is a derivative work. And this is NOT decided by what the GPL defines, but by what caselaw aimed at books will eventually decide. Copyright law is the only thing that restricts your ability to use the code however you want. If copyright law applies, then you must abide by the terms of the license and agree to its definitions. But if copyright law does not apply, then you don't have to care about the license at all.

  73. Linking is the use of the linker! by sjames · · Score: 2

    In general, I believe that references to linking in the GPL refer to operations of the linker (ln) either static or dynamic. In the case of Java, look at the analogous situation.

    Does the Java app depend on the class in the same way a c program depends on a library? If so, it's linking.

    I'd guess that runtime class binding is like linking. The XML/HTTP/SOAP case probably isn't.

    A good rule of thumb would be if you had to use a componant of the GPL work that is not part of the binary package (or normally copied elsewhere by make install or in the INSTALL instructions), it's probably a derivative work. If you had to change it to make it fit into your software it's probably derivative. If you made a heroic effort to avoid doing the above out of fear that it would be derivative, it's probably derivative! Otherwise, you're probably O.K.

    I do see your point though. It might be a good idea to contact the author of the work (or the FSF) for clarification on that point if it comes up in the real world.

    The problem is, copyright law (and much of the law in general) is based on loose definitions (such as would a reasonable person... where reasonable is not, itself, defined) that tend to make technical people cringe. It doesn't help that technology evolves much faster than law. There wasn't much JIT compiling and run time type checking by a VM that incorperated the linker (or rough equivilant) going on when the GPL was written.

  74. GPL Reality vs. Intent by Lazy+Bastard · · Score: 1

    We all know that RMS intends the GPL to prohibit the distribution of proprietary software that links with a GPL'd library. What is less clear is whether or not the GPL can actually accomplish that. Mr. Rosen's article merely discusses the legal issues.

    The GPL is only relevant when you distribute GPL'd code or a derivative work. (See paragraph 5 of the GPL: You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works.) For the sake of simplifying this conversation, let's avoid distributing the GPL'd code by using dynamically linked libraries. Then we can focus on whether or not a program that dynamically links in a library is "derivative".

    Mr. Rosen maintains that it is not, which is clearly at odds with RMS' position. I personally agree with Mr. Rosen. I also feel that RMS' view is hypocritical. Code which makes use a a library is only dependent on that library to the extent that it supports an interface. It is not dependent on the specific implementation of that interface. Remember, the idea is not copyrighted, only the specific expression of the idea. It is this freedom to re-implement that allowed the FSF to reimplement many of the UNIX and libraries while preserving the interface. The first version of many GPL'd software packages were almost certainly originally linked with proprietary libraries. Does this mean that they are derivative works? Is the whole FSF code base tainted by that first linking? Does my code stop or start being derivative because one user dynamically links it with a GPL'd library and another does not?

  75. Bingo by DaveAtFraud · · Score: 2

    Licenses assert restrictions on the use of a copyrighted work. The question comes down to whether any shrink-wrap, click-wrap, or "embedded" (e.g., the GPL-ish) license that asserts "unusual" use restrictions is enforceable.

    IANAL (but I find this subject interesting) so take what I say with a grain of salt. While the RMSs of the world may wish to sweep away proprietary software with "viral" licensing, the courts will be loath to support such activism. Proprietary software and the legality of creating even competing products using someone else's libraries is a well established precedent. Given this, most judges would probably agree with Larry Rosen's interpretation of what constitutes a derivative work and only extend GPL disclosure requirements to those who actually modify GPLed code and not to people who create works that use GPLed code unmodified.

    On the other side of this issue, a judge is also unlikely to uphold some of the unusual requirements folks like Microsoft have been ptting into their EULAs. Interpretation of law is based on precendent which is another way of saying that laws are *usually*interpreted to mean what people think they mean.

    --
    They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
    Ben
    1. Re:Bingo by sudog · · Score: 2

      The courts will eb loathe to support such "activism"? Now what are you on about I wonder. RMS has the perfect right to dictate to others how they use his software. Makes sense to me. You don't think the courts will agree? I wonder...

      I think you'll be wrong about the use of GPL'd code unmodified. Else, we could embed huge chunks of Windows in our own software: Why would anyone want that kind of freedom for users? You'd effectively destroy a huge software industry.

      Precedent is not another way of saying that laws are usually interpreted to mean what people think they mean. You've got the word wrong: precedent means that cases are decided using preceding judgements wherever possible: Judges follow previous decisions by other judges as much as possible. Often that has nothing to do with "what people think [the laws] mean." :-)

  76. HAWK POST by Anonymous Coward · · Score: 0

    if you love then protect it(and please be there in person to protect it).

  77. Read the GPL again! by internet-redstar · · Score: 1

    Read it here!!

    As the GPL license grants an unusual high level of rights to its licencesees (right to redistribute, change,...), the conditions under which these rights are granted are very stricly to be followed.

    Section 2b clearly states:You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

    This clearly means you cannot link your proprietary program to a GPLed library as it is including a part of the Program. SO MISTER LAWER IS ABSOLUTELY WRONG!

    But, on the other hand, one can for example make out of a GPLed program a GPLed version which has a plugin architecture or allows some kind of communication with another program which is not GPLed.
    Then a company can make a proprietary plugin to be used with this GPLed plugin-aware program. The combination of the two can then be distributed, and the goals of the capitalist company reached. But it is very important that the plugin-addition to the GPLed program is released under the GPL to not violate the GPL.

    Clearly they have to be completely seperate code bases.

    As a reminder for the new kids: this is why the choice of Linus to not allow proprietary kernel modules is a personal kernel-maintainer policy and not something automatically delivered by the GPL. Personally, I think it was a great decision which annoyed quiet a few companies (something which hardly ever hurts)

    You are free (GPL) however to branch of the regular kernel tree with a seperate one who does allow proprietary kernel modules. But the success of your move will not be very likely (unless you're a maybe a company such as Microsoft).

    Am I afraid of such a potential Microsoft Linux? Nah, it would make life a lot more simple and be a big step forward for the spread and adoption of Open Source software. I just hope that some of you guys wouldn't act too emotionally irrational, I guess it's a natural move.
    Even Apple has a UNIX kernel these days! Why does MS always have to be the last to adopt great technologies?

    1. Re:Read the GPL again! by greyguppy · · Score: 1

      NO!

      What the GPL states is irrelavant! One of the main distinctions between the GPL and shrinkwrap licenses is that you *DON'T* have to accept the GPL to use the software, only to re-distribute it. If I was to write some proprietry app using GPL code I could do something like this:

      1.) Take GPL code and re-hash into library
      2.) Distribute source for this library
      3.) Write proprietry app
      4.) Distribute App as partially linked object code
      5.) Ask end-user to download GPL library and the installer links it to the app for them.

      Either the GPL has to be binding at stage 2, or 5
      If stage 2 is considered legally binding then the GPL has to be re-written to affect all code written by you, which is probably an illegal and unenforceable term.

      If stage 5 is considered binding then this is *NOT* the GPL binding it but copyright law. This is already considered binding by the GPL, its just whether the GPL can be enforced at this point. Assuming the end-user "refuses" the GPL then they are not bound by it.
      What RMS and the FSF are hoping is that the linking process is considered to be a "derivative" work, and the GPL must be accepted.

      BUT:

      If calling functions etc is considered creating a derivative work what about Microsoft?
      They own the copyright to a very large number of functions (API), and if their license terms were held binding on developers what then?

      Is there any legal difference between calling CreateWindow() in USER32.EXE (Windows EULA) and strcpy() in /lib/libc.so.6.2.2 (LGPL)??

  78. Rosen is wrong. by Anonymous Coward · · Score: 0

    How does Rosen propose to explain Micro Star v. Formgen? That case held that new map files for Duke Nukem, which included no portions of the original map files, were derivative works of DN because (among other reasons) they incorporated *BY REFERENCE* textures from DN. How is this different from dynamic linking?

  79. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  80. Implications for Cygwin.dll? by r4lv3k · · Score: 1

    Then what are the implications for Cygnus, which requires one to pay for propriatary use of Cygwin.dll, while making it free for GPL code? I have always both admired and loathed this scheme as a professional developer.

    But if linking to the dll does not make it a derivative work, Cygwin's dual licensing scheme seems to fall apart. There is no need to pay Cygwin anymore to protect your code from the GPL requirements on a derivative work!

    -ralvek

  81. 12 notes by jbolden · · Score: 2

    The rule in music is 12 consequitive notes. My guess is that the line was pretty complex and so I'd assume you probably did violate the license.

    1. Re:12 notes by Anonymous Coward · · Score: 0

      Bad advice. Precedent currently is that there's no rule in music - even silence was found to infringe on a John Cage work. No minimum number of notes, or transpositions, before it's bad, if a music industry lawyer sees something that could even be remotely construed, by him, to be infringing, you are probably screwed.

  82. End-user linking by Anonymous Coward · · Score: 0

    What if the end user does the linking?

    How can he be in violation of the GPL if, ONE, internal use is unrestricted by the GPL(?), and TWO, the end user doesn't even have the source code available?

    Steps to "downgrade" a GPL'ed library to LGPL and keeping your source code a secret would therefore be:

    1) Compile (and don't link) your code to object code.
    2) Supply end-user with the object code (without source code) together with instructions to download the GPL'ed library and link it with the object code (statically or dynamically doesn't matter). A batch file could even do this automatically for convenience.
    3) The mandatory "Profit!"

    The only act which could be argued to be a violation is the inclusion of a header file by the author of the object code, but that is just a specification and an interface to the real part of the library (and claiming restrictions in using that is to me just as evil as software patents).

    Add to that the possibility of linking with a different library instead (which could even be written LATER ON just to ridicule the whole issue) and it seems clear to me that the GPL and the LGPL are not only MORALLY EQUIVALENT, but LEGALLY as well.

    Finally I would ask if anyone actually know of ANY specific example of a LGPL'ed piece of software which was "abused" in a way which would not be possible under the GPL.

    Partially inspired by http://www.brouhaha.com/~eric/editorials/gpl_dynam ic_link.html.

  83. You all need to read the license by p3d0 · · Score: 2

    The GPL doesn't contain the word "link" or anything like it. Take a look. It's only mentioned once very briefly in an epilogue recommending how the GPL should be applied to new software.

    --
    Patrick Doyle
    I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
    1. Re:You all need to read the license by Fnkmaster · · Score: 2

      Yes, but the LGPL has quite a few references to linking including some very confusing verbiage about the object code falling under section 6 if linked to header files and so on. The GPL does speak about "collections," "aggregations", "derivative works" and "Programs that make use of the source code".

  84. Big one by jbolden · · Score: 2

    3) It allows you to safely collaborate with potential compitors.

    This has been the key advantage of GPL over BSD for many companies. SGI for example could safely release XFS under GPL because they know that any improvements to XFS would have to be returned to SGI. The types of people that would be willing to spend time and money developing a better file system for very large files are exactly the types of people who might compete with SGI. OTOH all of them benefit from being able to share: knowledge, experience, technique... it creating enough of an added value to get their customers to upgrade.

    4) It allows you to use other GPLed programs easily and safely.
    GPL is rapidly becoming the single most heavily used software license; using other licenses with programs drawing from multiple sources often results in complex legal issues.

    5) You want to eliminate an artifical economy based on intellectual property.
    I.E. why should things that are cheaply reproducable but difficult to construct initial be sold on a cost per reproduction basis? It would seem much more logical to raise money for the initial effort in some other way.

  85. What GPL really is by peope · · Score: 1

    GPL:ed software is NOT free to copy.

    Since it is copyrighted you are NOT allowed to distribute the code.

    However, if you make an optional contract with the author of the software, you may redistribute it. But you are then bound to the terms of the contract between you and the copyrightowner.

    This contract really has nothing to do with copyright law.

    There are terms in the GPL concerning patents. If there are patents prohibiting the user to use the software without a fee or other obligation you are not allowed to redistribute the software. This since it is not possible for you to give the proper freedom over the software as stipulated in the contract with the copyrightholder.

    My interpretation would be that you could be in deep shit if you redistributed code for creating gifs with patented algorithms. You party in your agreement could claim breach of contract as you gannot give the users the right to use the software freely. The copyrightholder of the GD-library *could* sue you for redistributing their code since you cannot grant the correct freedoms required by your contract.

    Even BSD-licenses are copyrighted requiring a "contract" to redistribute or modify..
    The only option without the "contract" is Public Domain AFAIK.

    (Yes. I am aware of that contract is a poor word. Agreement would be more correct but not as illustrative)

  86. Linus vs. FSF by jbolden · · Score: 2

    The interest of Linux becoming the majority operating system; and the interests of FSF in changing the way software is written and used are very different. It is easy for me to imagine commercial distributions filled with propietary apps running on top of the Linux kernel. Its also possible for me to imagine the whole range of GPLed software running on top of an entirely different kernel; perhaps even something very different than a Unix (like Eros).

    What's best for Linuxes widespread adoption and what is best for the GPL's widespread adoption are not similar criteria and very well might disagree more than they agree (though I wouldn't go this far). As an aside you can even say the same things about Linux vs. Unix. What's best for Linux becoming a heavily used desktop OS may not be good for Unix (traditionally a developers OS). Already the tension between what's needed for mainstream acceptence and features that make Unix such a wonderful environment (like almost all files all being streams of ASCII text which can be piped to one another) are conflicting greatly.

  87. A good point by jbolden · · Score: 2

    That's actually another good point in favor of the more restrictive GPL interpretation by courts. Given the existence of the LGPL and the fact that both licenses are well known to the same people a developer choosing to release under the GPL could be said to be actively requiring the more heavy restrictions as a requirement of using his code.

    1. Re:A good point by Chris+Johnson · · Score: 2
      Absolutely. I use the GPL on purpose, every time, because I would rather have people NOT use my code than use it in a manner that allows them to leech. There is nothing kindly about this. I would like to see the proprietary software people starve- or failing that, they can just compete (since they MUST compete) against the entire body of GPL-using coders.

      To adapt a phrase from older commies, what part of 'WE WILL BURY YOU' don't you understand?

      I love how people keep angsting about how obviously none of those people could POSSIBLY have UNDERSTOOD how the GPL limits one's ability to rip off the code and build proprietary stuff out of it, holding the software ideas hostage in exchange for money as so many companies have done in the past. Cry me a river, guys. If that's the world you want, write your own code.

      My desire to cooperate with other cooperators (those who will place this above all other motivations) in no way obligates me to be nice to you 'how do you expect me to make a living writing code' guys.

      "No, Mr. Bond. I expect you to die!" :D If you can't outcompete a world of unpaid GPL-using idea-cooperators, I expect your job to die :)

  88. Another Example of Stupidity... by Master+of+Transhuman · · Score: 1

    No one, it seems, has any idea what the GPL was intended to accomplish.

    1) Insure that software source code was distributed?

    2) Prevent such source code from being used in proprietary (i.e., source code NOT distributed) applications?

    3) "Prevent people from profiting" from source code (distributed or not)?

    4) Use copyright to subvert copyright?

    Clearly, there is no definitive answer here or anywhere else. I read through the GPL and still don't understand the nuances. I do understand that it says they have no problem with people charging money for software. That would seem to let out all the "don't profit" or "free as in beer" people...

    What isn't clear is why, having said they don't care if people profit from code, they set it up so that apparently people CAN'T profit from code even if they distribute the code (of the GPL'd source, not the proprietary souce).

    I submit that the GPL is a contradictory piece of crap like everything else in the law and that the goal of using copyright to subvert copyright has merely reinforced copyright by making it too hard for people who might otherwise use open-source code to use it.

    This restricts open source's applications and conflicts with the whole point of open source which is, IMHO, to better software technology and its uses by people by allowing source code to be obtained, analyzed, modified, and used by anyone.

    Distinguishing between "anyone" and proprietary companies makes no sense. Who cares if Microsoft uses GPL'd code in their products as long as the GPL'd code source is provided by them (but not their proprietary code - unless they want to).

    If the goal is to REPLACE proprietary code with open source code everywhere by using a licensing "trick", then fine - a lot of people simply won't use GPL code. Which will restrict GPL code's penetration in the market, which is obviously counter to the idea that it should replace proprietary code. So the "trick" has failed...

    Which again demonstrates why reliance on a coercive process like the law does not serve the cause of freedom...

    Open source code should compete with proprietary code on the basis of technical and economic superiority and nothing more. Therefore the GPL and all such licenses are no different than patents and copyrights - unnecessary interventions in the free market by the state.

    If you want freedom, pursue the path of freedom - don't rely on coercive "tricks" like a new form of copyright...

    --
    Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
    1. Re:Another Example of Stupidity... by Anonymous Coward · · Score: 0

      I couldnt have said it better myself.

      So many people here on slashdot speak badly about Patents, and Copyright's. When it comes to p2p Music downloads, or Amazon's (daft) 1 click shopping patents, they are all up in arms about how limiting the legal restrictions can be and how we should be "free" of Patents and Copyrights.

      But if someone touches their precious GPL code, well, that is a different story! All of a sudden the legal limitation on freedom they call the GPL (which is much like a Patent or Copyright) becomes super important! If someone wants to be "free" and use the GPL code without adhering to the licence, they must be evil capatilist Microsoft lovers.

      After venting their feelings, they then flip back from reading slashdot to check how their illegal music downloads are doing, maybe grab some DIVX movies not noticing they are breaking someone elses licence with each download.

      So, whats it to be?

      Either you all STFU when it comes to the GPL. Or you delete all those illegal MP3's and Movies from your hard disk and respect other peoples licenses, even when you dont like them. Did you delete the files yet? Tough call huh?

      Personally, I feel the GPL has turned out to be counter productive. It actually restricts Open Source progress. I for one go nowhere near GPL source code, and consider it to be a virus that has infected millions of lines of source code. I specifically hunt down BSD licensed code to be used in any of my works and would recommend people try the true freedom the BSD licence brings. BSD licencing is scarey at first because you completely lose control, but very soon the true feeling of freedom will take you and you will see the GPL for the freedom-restricting garbage it is.

      J.

  89. PEACE POST II [cmdr_shithead] by Anonymous Coward · · Score: 0
  90. Can you say "Instant fork"? by Royster · · Score: 2

    I knew you could.

    --
    I have discovered a truly marvelous sig, unfortunately the sig limit is too small to contain i
  91. Neverwinter Nights by MeanMF · · Score: 2

    From the GPL FAQ:
    If a library is released under the GPL (not the LGPL), does that mean that any program which uses it has to be under the GPL?
    Yes, because the program as it is actually run includes the library.

    Do you think Neverwinter Nights is going to link to any GPL-licensed libraries? I'd love to get my hands on the source code for that...

  92. the meaning of "derivative" is irrelevant by Anonymous Coward · · Score: 0

    what is relevant is the author's intent.

    An author of software gives rights to software's users by selecting an apropriate license. Motivation can be fame or fortune, political or practical. And all of the above are ok. What's not ok is saying that someone who released software under GPL actually meant LGPL. He meant what he meant!

    Different licences give authors different levels of control, they attract different users, developers and supporters, have different comercial and political implications... Choosing a license is like a bet. It may backfire, but the choice should be respected.

    -- forgot my nick

    1. Re:the meaning of "derivative" is irrelevant by Lazy+Bastard · · Score: 1
      Yes, they meant what they meant. I don't think anybody misunderstands what the INTENT of the GPL vs. the LGPL is. The issue is whether or not the law actually lets the GPL do what is intended.

      The meaning of derivative is crucial. If the work is deemed *not* to be derivative, then the copywright holder of the library has to demonstrate that the entity distributing the program that uses the library either accepted the terms of license or violated the copywright. Proving acceptance is diffcult, because there is no evidence of a contract.

      In general, the GPL relies on the threat of enforcing the copyright to force acceptance of the license. To enforce the GPL, the copyright holder must first demonstrate that the copyright was violated. Otherwise the distributing entity can say, "What GPL, I didn't sign no GPL". In the case of statically linked libraries, proving copyright violation is easy. In the case of dynamically linked libraries (particuarly ones with multiple implementations) it is much harder to prove.

      Personally, I wouldn't hesitate to release proprietary software that dynamically linked in GPL'd libraries. I might get sued, but the chances that I would have to pay any significant damages are very small.

  93. Derivative work and static linking. by Anonymous Coward · · Score: 0

    Static linking will not work with GPL.

    If you are distributing a non-derivative work, GPL "and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License"

    So, even if the work is non-derivative, GPL binds it. Just find a LGPLd library, if you feel troubled.

  94. Linus Torvald and Derived Work by zero0w · · Score: 1

    I remember reading on the kernel mailing list about Linus' comment on derived work. Essentially, if I remember it right, Linus explained that if the companies/developers can prove to the court that the program is NOT derived work, it doesn't matter whether it links to the GPLed libraries or not.

    Now how can it be accomplished? This is one possible scenario:

    To prove that such program already existed on a non-GPL platform: eg: Windows or Mac OS X. The existence of such program is a lively example that it is original on its own, for instance some non-GPL file system and other programs ported from Windows. As far as the _extreme_ logic goes, this is still dependent work - call it derived if you like, but its sole existence on other platforms proved it is original in a _common sense_. So which point of view the court will be convinced of? Go figure.

    Personally I will be very amused if the program becomes derived work simply because it is ported to Linux using some GPLed libraries over there. If this is the case, no commercial software or games might be interested in the Linux platform. And the interlinking between libraries (such as SDL calling ALSA/OSS and Xlib and such) will becomes pretty messy - since they might use different licenses. Perhaps people will need to call for more dual license (GPL+LGPL) if they want more software for the Linux platform, otherwise it could prove to become self-isolating and self-defeating, to certain point.

  95. Eh. by Anonymous Coward · · Score: 0

    To me - a compiler with appropriate libraries for a language standard combine into a single tool.

    When I build a desk and use a Craftsman hammer and a nail from the Home Despot, my desk is neither a derivative work of Craftsman or the Home Despot.

    If I include stdlib.c while writing software that runs under Linux, my program is not a derivative of GNU's work.

    Sure, GNU may have written the C libraries for Linux that fit the general standards of C.

    However, if we want to play the blame game - Oops, those GNU libraries are a derivative of the work done by the people who came up with C.

    If we keep going back far enough, we find that everything computerized is a derivative of the work of Babbage.

    Who here can say with veracity that I don't have Babbage's permission to write programs? :p

  96. Dynamic linking similar to citation. by McFly777 · · Score: 2

    I think the point is that in some ways dynamic linking could be considered to be similar to citing anothers work in a new book you are writing. An essay on "Wuthering Heights" might just be uncomprehensible if the reader had never read "Wuthering Heights". **

    One could use small fair-use quotations, but that may not be sufficient to discuss the twists in plot that occur over several chapters, etc. and therefore one simply cites "pp120-150", effectivly creating a dynamic link into the book. The citation may even be larger than the entire text of the essay but the essay isn't a derivative work of the book. Dependant, yes; derivative, no.

    **(a better example might be "an essay on victorian romance", which happens to use "Wuthering Heights" as a major reference. This avoids the question of when an essay becomes a condensation or "Cliff Notes" for the book.)

    Disclaimer: I've never read "Wuthering Heights." ;-)

    --

    McFly777
    - - -
    "What do people mean when they say the computer went down on them?" -Marilyn Pittman
  97. Entirely besides the point by Anonymous Coward · · Score: 0

    Mr. Rosen however wasnt making a legal arguement ... he was discussing how open source developers should be clear about their intentions so they wouldnt scare proprietary software users away.

    GPL developers on the whole are crystal clear however about their intentions.

    That the GPL might not reach its intended goal because judges (NOT lawyers) will not let copyright law extend far enough has been known for a long time ... we do not need mr. Rosen to reiterate that.