Действительно, лицензии бывают разные. По состоянию на сегодня, команда CodeScoring насчитала более 2000 открытых лицензий. Не все они одинаково полезны, да и не все они действительно открытые, если быть честным. К примеру, OSI (Open Source Initiative) не признает тексты лицензий содержащие экспортные ограничения, по причине установления территориальных правил распространения. Более сотни лицензий подчиняются экспортному контролю США и сегодня на это нужно обращать особенное внимание.
Что касается «веселых» лицензий, важно напомнить про понятие лицензионной совместимости, которая может здесь сработать не на руку и добавить проблем для последующего использования компонента. Лицензии разных типов, бывают несовместимы с точки зрения предъявляемых требований. К примеру, компонент с лицензией Apache 2.0 не может использовать компонент с лицензией LGPL {2,2.1,3} и иные. Поэтому важно следить и за транзитивными компонентами, которые могут привнести что угодно в ваше ПО.
Кроме того, важно помнить, что лицензии устанавливаются авторами сторонних пакетов как в момент выпуска самой первой версии, так и могут быть изменены с выпуском новой. По нашей статистике, 2% пакетов меняют лицензию с течением своей жизни — об этом я рассказывал на докладе «Занимательные лицензии» на DUMP в прошлом году. Помощь в контроле большого объема сторонних компонентов в промышленных масштабах осуществляют инструменты класса SCA (композиционный анализ ПО), примером такого является открытое решение Dependency Track или наш продукт.
А приведенный список лицензий в статье хотелось бы дополнить ещё одной полезной ссылкой, где каждый сможет найти для себя своё.