in reply to Re: Selling your Perl app
in thread Selling your Perl app

You're really going to have to do your homework if you want to sell a product that's reliant on CPAN modules (ie, you may have to negotiate a separate license from the module creator - if you can find him/her). *Or* you would have to package your application in such a way that part of it is *free* and part of it is not.

This is incorrect. The CPAN module license only comes into play if you want to redistribute said module. Anyone is perfectly free to write a Perl application using tons of CPAN modules and distribute this application under any license they choose (e.g. close-source and charge for it), as long as what they distribute is merely the application code itself. If they want to distribute the modules as well in a package, then you are correct, they would have to clarify that these modules are under the original license (GPL/Artistic/whatever). But merely distributing ones own code which relies on CPAN modules does not have any licensing implications for this code.IANAL etc.


All dogma is stupid.

Replies are listed 'Best First'.
Re^3: Selling your Perl app
by derby (Abbot) on May 08, 2008 at 14:04 UTC

    Poor choice of words on my part. I did mean distribute/include CPAN modules in the code you sell -- that's why I mentioned packaging -- you can architect the app in such a way that any reliant CPAN modules are *outside* your app.

    However, I think you and moritz, while pointing out good issues, failed to grasp the most important point of my original post (but maybe that's because I didn't do a good job of writing it). My point is this:

    If you're going to sell a perl application, and said application depends on CPAN modules, you *must* investigate the license(s) of those modules and if there are restrictions, either architect around the restrictions or negotiate a different license with the author(s) ... just saying, "oh it's on CPAN, it's under the same license as perl" can get you into a lot of trouble.

    -derby

      I think what you are trying to say is correct ( and for the record, yes, I'm aware of that problem), but you use the same incorrect words again in your new version, so let me try to change that with a few words:

      If you're going to sell a perl application, and said application depends on includes CPAN modules not written by yourself, you *must* investigate the license(s) of those modules and if there are restrictions, either architect around the restrictions or negotiate a different license with the author(s)

      Again, dependancy has nothing to do with it, it is merely packaging. No need to "architect around" anything, just don't put the modules into the tarball/CD you distribute and your work is done. This is an obvious approach anyway, since otherwise you never benefit from bugfixes to said CPAN modules (OTOH you also don't know for sure which version of the module the user has installed, but that's a feature as far as I'm concerned, because it requires you to keep your app up to date, which should result in fewer bugs).


      All dogma is stupid.
      I cannot emphasize this point enough. And, it's not enough to investigate the licenses of the modules you're using. You also have to verify the licenses of the modules they are using, particularly if the module uses stuff from outside of CPAN.

      My criteria for good software:
      1. Does it work?
      2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?