I was successfully able to install the Nivo_Slider. But I want to have proper understanding on how module installations work.

My question is: Why doesn't the simple module installation of Nivo_slider do the job? Why do I manually have to copy and paste something (look at the first step from here? Isn't that the whole purpose of module installation? Some other modules just get installed by copy and pasting the tar.gz file.


The Nivo Slider module relies on libraries that have a different license from the module itself. To work around this aspect, the Nivo libraries are distributed apart from the module. Consider this explanation from the licensing page at Drupal.org:

10. Can I write a "bridge module" to interface between Drupal and another system or library?

That depends on the other system.

It is possible to distribute a module that communicates with a 3rd party system over HTTP, XML-RPC, SOAP, or some other wire protocol, that leaves the 3rd party system unaffected.Examples of such systems include Flickr, Mollom, or certain legacy systems.

It is possible to distribute a module that integrates with a 3rd party PHP or JavaScript library, as long as the library is under either a GPL or GPL-compatible license. Examples of compatible licenses include BSD/MIT-style "permissive" licenses or the Lesser General Public License (LGPL). The Free Software Foundation maintains a list of popular GPL-compatible licenses.

It is not possible to distribute a module that integrates a non-GPL compatible library with Drupal, because it would be a derivative work of both Drupal and that other library and would therefore violate either the GPL or the license of the other library. Please be aware that includes some open source licenses that are incompatible with the GPL for one reason or another, such as the PHP license used for most PEAR packages.

If you wish to contribute a bridge module to a Drupal Git repository, please do not check in the 3rd party library itself. Doing so creates a fork of that 3rd party library, which makes it more difficult to maintain and only serves to waste disk space. Instead, provide detailed instructions for users to download and install that 3rd party library for use with your module. If you believe that your module is a special case where it really does need to be included in a Git repository, usually only because you need to make substantial modifications to it in order for it to work, please file an issue with in the Licensing Working Group issue queue first to discuss it.

  • 1
    Do you mean this issue is only for Nivo-slider and no other module requires the same configuration? If so then yes its not a Drupal specific issue, but if some other modules are like this which I think teh quote you provided is saying such, then its a Drupal issue and a developer needs to know whats going on for installations... – Honey Nov 30 '15 at 1:44
  • Can you elaborate on this "libraries that have a different license from the module itself." – Honey Nov 30 '15 at 1:45
  • 4
    Drupal modules use one license, other libraries use different licences, some of which aren't compatible with Drupal's license. These libraries can't be included with the modules that use them, they have to be sourced and installed separately. Does that clear it up @asma22? – Clive Nov 30 '15 at 1:52
  • @Clive Yes... completely – Honey Nov 30 '15 at 1:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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