Как стать автором
Обновить

Комментарии 322

интересная логика — т.е. получается коммерческую программу нельзя запускать под линуксом?
Можно, если они удовлетворяют всем требованиям лицензий. Нельзя выпускать ПРОПРИЕТАРНУЮ (именно проприетарную, а не коммерческую, Вы путаете эти понятия, а это ВАЖНО)!!! программу, если она слинкована с GPL библиотеками, для такого ПО нужно использовать LGPL или BSD (кстати, поэтому многие проприетрные приложения выглядят так убого, строятся на всевозможных мотифах 90ых годов, так как им жалко заплатить $1000 нокии за использование QT с совместимой лицензией той же.)
библиотеки — это понятно. Если библиотека распространяется по GPL, то разумеется в проприетарную версию программы её включать нельзя.
Но в данном рассуждении меня удивили слова про
«работают в едином адресном пространстве одного процесса, являются частью базовой программы.»
К тому же — разве модуль расширяющий возможности программы — должен наследовать её лицензию?
Там так же упоминается, что тема является производной от GPL темы.

На основании анализа кода PHP и HTML, включая вызовы API, логики работы программы, эксперты заключили, что почти любая тема оформления, созданная для Wordpress, будет производной от основных тем CMS, лицензированных под GPL


так что скорее всего он просто перекрасил базовую тему сначала, а потом нарастил на нее немного нового функционала, в противном случае я не вижу как эксперты могли дать подобное заключение.
НЛО прилетело и опубликовало эту надпись здесь
Потому что тему вы делаете для GPL продукта и в данном случае тема получается в итоге частью самого приложения. Хотите распространять свои тему под абы какими лицензиями — платите бабки разработчикам коммерческих CMS и работайте с ними.
НЛО прилетело и опубликовало эту надпись здесь
Ну вообще-то да, станет. Ибо делая тему вы пользуетесь фактически бескорыстным трудом разработчиков всего вордпресса и строго говоря обязаны соблюдать их лицензионные требования и права. Не хотите — не делайте тем, кто ж вас заставляет.
Если автор всего этого творения, включая index.php — Вы, можете ставить какую-угодно лицензию. Хоть для каждого файла свою выдумать. НО! Если Вы используете GPL код — будьте добры следовать лицензии и выпускать ВЕСЬ ПРОГРАММНЫЙ ПРОДУКТ под нею. В противном случае — НЕ ИСПОЛЬЗУЙТЕ GPL КОД! Такое ощущение что Вас просто насильно заставляют у себя в программе вставлять куски GPL. Напомню: это ВЫ! пытаетесь сократить сроки разработки/снизить стоимость разработки/тупо из-за лени не заморачиваться и поэтому этот код используете, а не потому что кому-то захотелось увидеть Вашу программу под GPL. С точки зрения морали и права — закрывая и продавая ПО, в котором Вы сократили себе сроки и стоимость разработки за счет ЧУЖОГО ТРУДА — воровство средь бела дня.
НЛО прилетело и опубликовало эту надпись здесь
Это только в том случае, если Вы решили не отрабатывать эти $500, а тупо стырили половину кода у сообщества. В противном случае объясните заказчику, что если он хочет WordPress в таком виде — ОН ОБЯЗАН БУДЕТ СЛЕДОВАТЬ ПРАВИЛАМ ИГРЫ, ИНАЧЕ — ПУСТЬ ПЛАТИТ $1000 ЗА ДРУГОЙ ПРОДУКТ.
НЛО прилетело и опубликовало эту надпись здесь
Это исключительно ваши проблемы и проблемы ваших заказчиков. Есть требования — вы обязаны их соблюдать. А то, чего конкретно вам хочется, абсолютно никого не интересует. Пускай заказчик нанимает вас в штат, тогда вы не будете продавать ему GPL продукт, а значит сможете модифицировать его и использовать ничего не открывая.
НЛО прилетело и опубликовало эту надпись здесь
Вы можете делать темы и модули для WP, если не будете их распространять. Если даёте скачать или купить — то только под GPL.
На каком основании, если они не содержат чужого кода?
1. Без чужого кода они не выполняются (этот факт надеюсь не вызывает сомнений).
2. Код библиотеки защищен так же как и включенный напрямую код.
И что, что они «не выполняются»? На вопросы распространения влияет только наличие чужого кода в дистрибутиве.
Это не так. Так чужой код в дистрибутиве есть — это вызовы функций описанных в подключаемой библиотеке. Ни у кого не возникнет сомнения в происхождении вызываемых функций и их важности для кода модуля/темы. Удалите эти вызовы из кода и продавайте на здоровье, если сможете.
Названия функций или их вызовы не являются «чужим кодом». Точно так же, как не являются «чужим кодом» вызовы функций PHP в любой PHP-программе. Точно так же, как обращение к функциям ввода-вывода ОС не является включением кода ОС в программу.
Вы путаете понятия.

Функции PHP не имеют отношения к программе на PHP это элементы языка (он не попадает под GPL).

Функции ввода-вывода ОС (вы наверно имели в виду внешние API) не является линковкой кода — название функций в RPC это вообще просто идентификаторы в черном ящике.

Фуннкции WP, вызываемые из модулей и тем это часть кода WP, который лицензирован под GPL, линкуется и вызывается модулем темой и не может быть удален из модуля/темы без нарушения функционнала программы. Будь у вас контроль над этой частью кода вы могли бы спокойно переименовать любую функцию, но вы не можете, потому, что это чужой код, которым разрешили пользоваться, но не разрешили присваивать.
Вы мне скажите, в продаваемом дистрибутиве что-то прилинковано?

Нет?

Тогда GPL не может быть распространено на дистрибутив.

Они распространяют весь код движка с «прилинкованным» плагином? Тогда конечно, не имеют права закрывать код движка.
Продаваемый дистрибутив вообще не имеет смысла без этой линковки. Он просто не будет работать пока эта линковка не осуществлена. Таким образом линковка кода модуля или темы является условием использования дистрибутива. Такое условие нарушает права разработчиков WP, и такой контракт не должен быть заключен по закону большинства стран.
Вы когда-либо в жизни писали продукты, работающие с mysql? Под какой лицензией они выходили?
Если не все под GPL — то почему? mysql GPL'ный ведь, а ваш код использует коннектор и саму субд при работе.
Вы когда-либо в жизни писали продукты, работающие с mysql? Под какой лицензией они выходили?
Если не все под GPL — то почему? mysql GPL'ный ведь, а ваш код использует коннектор и саму субд при работе.

ps: случайно отправил новикову вопрос. он предназначается вам
pps: объясните термин «линковка» применительно к php.
хм, что с хабром %) почему посты для masterbo отправляются Новикову??
Если речь конкретно о теме, то уже ответил:
habrahabr.ru/blogs/wordpress/100148/?reply_to=3094620#comment_3094498

не GPL или иди лесом, а либо GPL, либо иди лесом, либо не GPL — но свое, а не по имеющимся в комплекте свободным темам.

А кто Вам сказал, что на сайте WP должен быть онлайн магазин? Разработчик позиционирует его как продукт с двойным лицензированием? Если нет — то ВЫ ПРОСТО НЕ МОЖЕТЕ КУПИТЬ ТАКУЮ ВЕРСИЮ WORDPRESSA, С КОТОРОЙ МОГЛИ БЫ РАБОТАТЬ ТАК, КАК ВАМ ХОЧЕТСЯ! А если пойдете наперекор лицензии — будете отвечать по всем пунктам. И еще раз: ВАС НИКТО НЕ ЗАСТАВЛЯЕТ ИСПОЛЬЗОВАТЬ WP! Если заказчик не рад GPL'у — ну НЕ ДЕЛАЙТЕ ТОГДА GPL! Возьмите другую CMS, напишите свою в конце концов. Если заказчик от Вас требует именно WP — то это проблема заказчика. Вы не обязаны нарушать закон по его прихоти, объясните это ему и все.
Не, уже не остановлюсь:

ДА ПОЧЕМУ ЖЕ НЕЛЬЗЯ УБИВАТЬ ЛЮДЕЙ!?!? ЗАКАЗЧИКИ ЗА ЭТО ТАК ХОРОШО ПЛАТЯТ! ЧТО МНЕ ДЕЛАТЬ!?!?
GPL не означает, что исходники нужно отдать ВСЕМ. GPL означает, что тому, кто у вас купил продукт, нужно отдать и исходники в том числе. Правда, «всему интернету» продукт может раздать уже покупатель.
А вы будьте честны с этим заказчиком. Вы взяли часть чужого кода, который не имеете права закрывать и продали вместе со своим кодом, лишив заказчика права продавать конечный продукт под закрытой лицензией. Кстати раздавать код GPL не требование. Требование в том, чтобы тот, кому вы его дали/продали имел исходный код для последующих модификаций без вашей помощи. Это совсем не то же что «раздать всему интернету»
Если заказчик не собирается дальше продавать твою тему, то никому ничего раздавать не нужно.
Для невнимательных:
что почти любая тема


Если Вы решили выпустить девайс, на который у Apple есть патент, можете хоть лобзиком выпиливать его из дерева — Вам это не поможет.
НЛО прилетело и опубликовало эту надпись здесь
только те, которые не запатентованы как супер клевый чехол с двойным вырезом на задней части под вентиляцию.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Не хотел вмешиваться, но вот тут уже стало интересно: на каком основании «приняв решения писать тему для WP ты принимаешь условие лицензии gpl»?
НЛО прилетело и опубликовало эту надпись здесь
И что, что они используют его код? Код линкуется в рантайме, динамически.

Linux kernel распространяется под GPLv2. Однако существует огромное количество проприетарного и платного ПО под линукс.

GPL запрещает распространять ваш + чужой продукт под разными лицензиями, но не запрещает распространять лично ваш код как угодно.
НЛО прилетело и опубликовало эту надпись здесь
Что такое «работать в среде»? Чем принципиально отличается php, работающий «в среде» linux kernel и произвольный скрипт (часть темы), который точно так же работает в:

1. среде linux kernel
2. в адресном пространстве apache thread
3. рядом с опкодом WP

упс, хабр отправил коммент раньше. дополнение:

если придираться, то: тема не использует исходный код (на который накладывается ограничение GPL) — она использует опкод, который сгенерирован на основе сорсов средствами Zend Engine. т.о. тема использует некие инструкции неким образом, причём использует их единообразно (знающие php internals пусть меня поправят, если что) системным вызовам, которые, опять же, заворачиваются на kernel/GNU (которые, напомню, тоже GPL)
НЛО прилетело и опубликовало эту надпись здесь
«Ну работать в среде — вызывать откомпилированные методы библиотеки или операционной системы. „
Верно. И GPL не обязывает код, который вызывает GPL-библиотеку быть GPL'ным.

Встраиваются динамически. Чужим кодом. Т.о. чужой код (gpl) встраивает мой код (не gpl). Вопрос: что это меняет? Если кто-то написал что-то gpl'ное, то include 'blabla.php' — это не повод заставлять blabla быть gpl'ным. Почему? Да потому что автор blabla.php я и я его лицензирую как хочу

Как GPL регулирует использование (см. вызовы) чужого кода? Насколько я понимаю эту лицензию — она регулирует модификацию и распространение исключительно.

Так или иначе — ждём развития событий у них :-)

Тем не менее, как разработчик открытого продукта, просто разработчик (который в ежедневной практике сталкивается с кодом под всевозможными лицензиями), а также обыватель — я не вижу состава нарушения лицензии.
>И GPL не обязывает код, который вызывает GPL-библиотеку быть GPL'ным.

Обязывает. Мы с Вами уже спорим на эту тему ниже :)

Что касается Вашего возражения по поводу «ядра Linux, которое под GPL», то ни одна из программ не линкуется с ним. И ни одна из программ не является модулем ядра (за исключением самих модулей). За разъяснениями — к тому же самому источнику:
Q: If I port my program to GNU/Linux, does that mean I have to release it as Free Software under the GPL or some other Free Software license?
A: In general, the answer is no—this is not a legal requirement. In specific, the answer depends on which libraries you want to use and what their licenses are.
www.gnu.org/licenses/gpl-faq.html#PortProgramToGL
По каким законам ГПЛ вообще имеет такие полномочия? Как кто-то может обязать меня выпускать под какой-то лицензией мой код, который вызывает какие-либо функции, но не содержит фрагментов кода другой (ГПЛ) программы?

Ни по каким. В этой части с юридической точки зрения ГПЛ не имеет ровным счетом никакой силы.
Этот «кто-то» (по совместительству — автор продукта) обладает авторскими правами на свою интеллектуальную собственность, поэтому обладает полным правом устанавливать условия на то, как его произведение (в данном случае — библиотека) будет использоваться. И эти условия он формулирует в лицензии. Если Вы не согласны с условиями лицензии, Вы вообще не имеете права использовать его произведение (по закону об авторском праве), т.к. лицензия — это в данном случае единственный документ, разрешающий использование произведения (библиотеки).

Право слово, я не ожидал, что буду растолковывать это Вам, справедливому и неподкупному стороннику неприкосновенности авторского права.

P.S.: да, кстати, в GPL даётся определение в том числе и тому, какой смысл вкладывается в слово «использование», поэтому не нужно снова пытаться апеллировать к тому, что использует, мол, конечный пользователь, а разработчик всего лишь «пишет программу, вызывающую функции GPL-библиотеки».
Трактовка слова «использование» остается за законодательством, а не за лицензией. Так вот, по известным мне законам РФ и США под использованием ПО подразумевается его эксплуатация. Запустили и юзаем.
Термины, использованные в тексте лицензии, трактуются в соответствии с их определением, данным тут же (если таковое имеется).
Не хотите ли Вы сказать, что толкование терминов, применяющееся практически в каждом юридическом документе, не имеет смысла, ибо «трактовка остаётся за законодательством»?
In general, the answer is no—this is not a legal requirement
Вообще-то это ответ на вопрос «If I port my program to GNU/Linux, does that mean I have to release it as Free Software under the GPL or some other Free Software license?»

А что касается использования библиотек — ниже. В частности: «Some libraries are released under the GNU GPL alone; you must use a GPL-compatible license to use those libraries».
еще как должен. хочешь полной независимости от GPL — пиши весь код сам или пользуйся коммерческими библиотеками. Под линуксом такая независимость равносильна самоубийству — у GPL-разработчиков до 90% кода уже написано сообществом.
не хочу играть роль адвоката дьявола, но что-то я не припоминаю чтобы в тексте лицензии что-то говорилось про модули для программ. Модуль не затрагивает сам экземпляр программы или его часть.

разве эти строчки не говорят об этом:
Размещение произведения, которое не является производным от Программы, на одном устройстве для хранения информации или носителе вместе с Программой или произведением, производным от Программы, не влечет за собой распространения условий настоящей Лицензии на такое произведение.
Проблема в том, что часто модули не являются независимыми единицами. Если у программы есть внешний API, то тогда конечно да, модули, его использующие, могут быть под любой лицензией. Но как можно видеть даже из этой темы это далеко не всегда так.
конкретно модули и темы WP исполняются как инструкции для внутренних механизмов этого движка и определяют его поведение далеко за пределами внешних рюшечек, вроде css и javascript. Нет сомнений, что любой модуль wp это модификация основного движка. Просто у движка есть механизмы для удобной модификации. Это не имеет ничего общего с работой по внешнему API
Вызов каких-то функций, которые, кстати, самими разработчиками ВП были для этого предназначены — это не «модификация».
О, наконец-то! Я уже думал прислать Вам примеры этой вопиющей безграмотности наших «айтишников».
Не пеняйте на зеркало =)
под GPL попадает не только модификация кода, но и использование функций библиотеки. А тему, которая не использует вызовы функций WP еще надо поискать, не так ли?
В момент купли-продажи темы или плагина вызова функций не происходит.

Он происходит в момент выполнения программы на сервере. Или секта запрещает уже пользователю купить плагин и выполнять его на сервере?
Вашими бы устами да винды продавать, оказывается их EULA и лицензии на подключения к терминальному серверу действуют только в момент купли продажи, зашибись живем!
Не подменяйте понятия.
Почему же? Вполне корректная аналогия.
таким образом любой код, который работает под управлением linux kernel также должен быть GPL? ведь kernel выпускается под GPLv2, равно как и GNU утилиты.
Код, который «работает под управлением linux kernel» не линкуется с ним (за исключением модулей ядра).
Это — не модификация. Но это использование GPL-библиотеки (найдите разницу с LGPL). Модификацию кода в памяти делает модуль или функция внутри темы, предназначенная для замещения функционала существующей функции.
1. что такое «модификация кода в памяти»? опкод в памяти может быть изменён оптимизатором опкода или даже самим Zend Engine. это повод требовать оптимизаторы и Zend распространять под GPL?
2. LGPL, в отличие от GPL, позволяет распространять ваш код вместе с LGPL, не раскрывая своих исходников. при этом GPL не запрещает вам распространять свой код с какой угодно лицензией отдельно.
Для программы под GPL обычно да, должен. В этом и есть вся мощь GPL — нефиг зарабатывать на чужом труде. Много продуктов имеют двойное лицензирование, так что тот же код можно получить на условиях коммерческой лицензии, заплатив разработчику. И тогда уже можно будет делать закрытые модификации и расширения.
>В этом и есть вся мощь GPL — нефиг зарабатывать на чужом труде.

GPL не запрещает продавать продукт, основанный «на чужом труде». GPL лишь запрещает скрывать исходники. А так — берите, модифицируйте, продавайте сколько влезет и по любой цене, которую готов заплатить клиент — только не забудьте предоставить модифицированные исходники.
Не совсем так. GPL не запрещает скрывать исходники.

1. Вы можете написать что-то для себя и никому это не показывать.
2. Вы можете свой продукт распространять независимо, отдельно от флагманского (который под GPL) продукта. Связывая их динамически. Именно потому, что динамическая линковка GPL не противоречит. Именно по этой причине существует гигабайты закрытого кода, который динамически связан с коннектором mysql.
1. согласен
2. не согласен

Линковка противоречит GPL. А с mysql всё просто — он распространяется под лицензией "GPL v2 with linking exception". Что, кстати, подтверждает мой тезис о том, что линковка противоречит GPL, ибо если бы не противоречила, то зачем для этого понадобилось делать исключение? ;)
dev.mysql.com/downloads/mysql/5.1.html

«MySQL Software is provided under the GPL License.» — ни о каких exception'ах там нет и речи.

фраза «линковка противоречит GPL» не имеет смысла. GPL продукт можно статически линковать с любым GPL-продуктом, и динамически — вообще с любым.
>фраза «линковка противоречит GPL» не имеет смысла

Мне казалось, что контекст понятен. Ну хорошо: "динамическая линковка с не-GPL приложениями".

>GPL продукт можно статически линковать с любым GPL-продуктом, и динамически — вообще с любым.

Q: 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 or a GPL-compatible license?
A: Yes, because the program as it is actually run includes the library.
www.gnu.org/licenses/gpl-faq.html#IfLibraryIsGPL
1. что такое uses? если приложение использует вызовы GNU утилит или системные вызовы ядра (тоже GPL) это считается как to use?
2. в случае с шаблонами WP — не сторонний код использует GPL-код, а наоборот GPL'ный код вызывает сторонние файлы
>1. что такое uses? если приложение использует вызовы GNU утилит или системные вызовы ядра (тоже GPL) это считается как to use?

“Use a library” means that you're not copying any source directly, but instead interacting with it through linking, importing, or other typical mechanisms that bind the sources together when you compile or run the code.
www.gnu.org/licenses/gpl-faq.html#AllCompatibility

>2. в случае с шаблонами WP — не сторонний код использует GPL-код, а наоборот GPL'ный код вызывает сторонние файлы

Q: If I add a module to a GPL-covered program, do I have to use the GPL as the license for my module?
A: The GPL says that the whole combined program has to be released under the GPL. So your module has to be available for use under the GPL.
www.gnu.org/licenses/gpl-faq.html#GPLModuleLicense

«Читайте маны, они — рулез» ©
>> that bind the sources together when you compile or run the code.
в случае с уже скомпиленными библиотеками и динамической типизацией — откуда берётся термин «sources»?

>> If I add a module to a GPL-covered program, do I have to use the GPL as the license for my module?
что такое add a module? add куда? тема для WP распространяется независимо от WP. создатель темы ничего никуда не добавил и распространяет объект своей интеллектуальной собственности независимо от каких-либо других продуктов. какие к нему могут быть претензии?
ой, динамической «линковкой». о чём я думал, когда писал %)
>в случае с уже скомпиленными библиотеками и динамической типизацией — откуда берётся термин «sources»?

...compile or run the code…

>тема для WP распространяется независимо от WP. создатель темы ничего никуда не добавил и распространяет объект своей интеллектуальной собственности независимо от каких-либо других продуктов.

Ещё раз: "....interacting with it through linking, importing, or other typical mechanisms that bind the sources together when you compile or run the code".
Внимательно прочитайте каждое слово.
«compile or run the code»
мы запустили из нашей программы через system/exec GNU'сную утилиту (we have run a GNU utility)

наша программа теперь должна распространяться под GPL?
Хосспидя, да почитайте же Вы FAQ!
If the modules are included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program.

By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs.
Вот теперь на лопатки. Простите мою упёртость и спасибо за терпение :-) +1 к карме
Редкая способность признавать неправоту в споре. +1 к карме :)
Приведите мне законы, в которых под использованием ПО понимается написание другого ПО, которое к нему обращается. Нету таких законов. Известные мне законы РФ и США, а также судебная практика говорят о том, что под использованием ПО подразумевается именно его использование.

Ключевой признак использования — когда мы загружаем ПО в память компьютера. Это делает конечный юзер, и GPL не запрещает ему это делать. Дистрибутив же еще ни с чем не прилинкован, не скомпонован, не откомпилирован и т.п.

Положения GPL, касающиеся использования программы неприменимы к вопросам распространения до тех пор, пока дистрибутив не содержит GPL-кода.

То, что потом он может быть прилинкован, скомпонован, скомпилирован и т.п. — не дает оснований для распространения GPLна код, не содержащий GPL-кода.

Особенно если не тема «засасывает в себя» движок, а движок «засасывает в себя» тему.
>Приведите мне законы, в которых под использованием ПО понимается написание другого ПО, которое к нему обращается.

Не «использование ПО», а «использование библиотеки». Разумеется, библиотека — частный случай ПО, но именно поэтому было дано уточняющее пояснение, что подразумевается в GPL под «использованием библиотеки».

Ну вот смотрите, фраза в договоре «Компания „Рога и копыта“ (далее — подрядчик) обязуется то-то и то-то». Вы же не будете утверждать, что «слово „подрядчик“ интерпретируется в соответствии с законом и означает любую компанию/индивидуального предпринимателя, выполняющую указанную работу за согласованное вознаграждение», верно? А будете руководствоваться уточняющим определением, данным в документе: подрядчик — контора «Рога и копыта». И это определение, разумеется, справедливо только для данного документа (или для его части).
Так и в GPL дано уточнение, что именно в её тексте подразумевается под «использованием».

Вот только скажите мне одну вещь: Вы правда не понимаете или прикидываетесь просто чтобы не признавать свою неправоту, «авось прокатит»?

>Дистрибутив же еще ни с чем не прилинкован, не скомпонован, не откомпилирован и т.п.

Вы плохо знаете матчасть. Программа, вызывающая функции библиотеки во время исполнения, динамически слинкована с этой библиотекой. Динамическая линковка не-GPL кода с GPL-библиотекой запрещается лицензией.
Использованием библиотеки не может считаться написание строчки some_library_function(); в коде программы. Использованием может считаться только загрузка этой библиотеки в память компьютера и вызов ее функции, а не написание кода.

Я вот тут сейчас написал <?php wp_title(); ?> — я только что использовал «Вордпресс», по-вашему?

> Так и в GPL дано уточнение, что именно в её тексте подразумевается под «использованием».

Совершенно верно. Но это уточнение будет иметь силу только тогда, когда возникнут правоотношения, подпадающие под эту лицензию. А они могут возникнуть только в двух случаях:

1. Некто взял кусок GPL-кода и стал его распространять.

2. Некто взял программу, содержащую GPL-код и запустил ее.

Все. До этого момента GPL просто не применяется. Нет правового основания для ее применения. Вот в чем фишка-то.
Если Вы просто напишете some_library_function(); в коде программы, то получите ошибку компилятора (или интерпретатора), который не сможет найти объявления функции без соответствующего инклюда. А если Вы сделаете соответствующий инклюд (а в случае компилируемых языков — ещё и укажете библиотеку для линковки, иначе получите ошибку линкера при сборке), то тем самым устанавливается факт, что программе для корректной работы (и для работы вообще) необходима данная библиотека. Следовательно, программа использует эту библиотеку в своей работе (разумеется, будучи запущенной, а не лежащей на жёстком диске). И если библиотека под GPL, то программа обязана быть под совместимой лицензией.

>Все. До этого момента GPL просто не применяется. Нет правового основания для ее применения. Вот в чем фишка-то.

Ну хорошо. Кто-то скачал тему для вордпресса, установил и запустил. Всё. В этот момент тема должна быть опубликована под GPL, т.к. является модулем GPL-ного движка (и они определённо «interacting through linking, importing, or other typical mechanisms that bind the sources together when you compile or run the code»).
Вам стало легче? :)
И опять вы не понимаете механизмы права.

> Кто-то скачал тему для вордпресса, установил и запустил. Всё. В этот момент тема должна быть опубликована под GPL

Скачивает и запускает пользователь. Если он решит распространять скомпилированный или слинкованный код — тогда, разумеется, он должен будет соблюсти GPL. Если все куски кода, которые он слинковал, лицензированы таким образом, что позволяют ему дальнейшее распространение, а не только использование.

Факт запуска пользователем ПО и линковки кода с GPL-библиотекой ни в одной правовой системе мира не может повлечь обязательство для производителя ПО распространять свой код под GPL.

> программе для корректной работы (и для работы вообще) необходима данная библиотека

И что с того? Мне для работы компьютера необходимо электричество, но это не значит, что меня надо обязать платить за него на основании наличия у меня компа.

Основанием для применения лицензии не является «необходимость» — а только фактическое использование или фактическое распространение.

Это же азы! Не верите мне — спросите у юриста. На хабре есть Павел Протасов, под ником pvp.
В первую очередь давайте не будем прыгать от библиотек в общем случае (компиляции, линковки, компоновки) к вордпрессу и обратно.

Сначала о компиляции и линковке:

>Факт запуска пользователем ПО и линковки кода с GPL-библиотекой ни в одной правовой системе мира не может повлечь обязательство для производителя ПО распространять свой код под GPL.

Естественно, производитель не отвечает за действия пользователя, но ещё раз: в общем случае линковка происходит на этапе написания программы (точнее — её сборки). И именно этим фактом устанавливается «использование библиотеки» при написания программы, о чём чётко говорит лицензия и цитата из GPL FAQ.

К примеру, если я написал что-то с использованием библиотеки libsomething, собрал exe-шник и распространяю только его — моя программа уже слинкована с библиотекой libsomething, причём не только «юридически», но и фактически — «свидетельства» этого есть в самом exe-файле, и без линковки с библиотекой сам файл просто не появился бы — линкер выдал бы ошибку. И если эта libsomething лицензирована под GPL, то я, как разработчик, обязан лицензировать программу под GPL. Заметьте: это всё происходит ещё до того, как пользователь запустит мою программу.

Что касается тем для вордпресса — тут всё интереснее: GPL говорит "...interacting with it through linking, importing, or other typical mechanisms that bind the sources together when you compile or run the code". И да, код плагина действительно «interacting» с кодом вордпресса, вот только «when you compile the code» — не происходит вообще, а «run the code» осуществляет юзер. В этом случае придраться к самому коду весьма проблематично, т.к. сам код ни с чем не линкуется, а загружается самим вордпрессом. Тут будет уместно рассмотреть раздел, касающийся плагинов:
Q: If a program released under the GPL uses plug-ins, what are the requirements for the licenses of a plug-in?
A: It depends on how the program invokes its plug-ins. If the program uses fork and exec to invoke plug-ins, then the plug-ins are separate programs, so the license for the main program makes no requirements for them.

If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means the plug-ins must be released under the GPL or a GPL-compatible free software license, and that the terms of the GPL must be followed when those plug-ins are distributed.

If the program dynamically links plug-ins, but the communication between them is limited to invoking the ‘main’ function of the plug-in with some options and waiting for it to return, that is a borderline case.

Какой именно механизм используется вордпрессом — я не знаю, поэтому спор на тему вордпресса прекращаю, т.к. не владею матчастью. А вот на тему компиляции/линковки могу говорить часами :)

>Основанием для применения лицензии не является «необходимость» — а только фактическое использование или фактическое распространение.

И снова отделяя мух от котлет (библиотеки от вордпресса): «фактическое использование» библиотеки наступает в момент линковки. Т.е. при разработке программы.

>Это же азы! Не верите мне — спросите у юриста. На хабре есть Павел Протасов, под ником pvp.

Не верите мне — спросите у авторов GPL и GPL FAQ — они тоже не мойкой машин себе на жизнь зарабатывают.
> в общем случае линковка происходит на этапе написания программы (точнее — её сборки)

Так на этапе написания или сборки? Напомню, что в случае с темой «Вордпресса» сборку распространитель не осуществляет никоим образом. Он занимается только написанием — распространяется, по факту, исходный код. Без библиотек, без чужого GPL-кода, без чего бы то ни было «прилинкованного» и включенного в состав дистрибутива.

> К примеру, если я написал что-то с использованием библиотеки libsomething, собрал exe-шник и распространяю только его — моя программа уже слинкована с библиотекой libsomething

А если я вызываю из своей программы API «виндов»?

Не тема загружает и использует движок. Пользователь устанавливает движок, а затем движок делает пхп-инклюды этой самой темы, а тема вызывает функции API движка.

Темы и плагины распространяются отдельно от движка. Дистрибутивы не содержат GPL-кода. Таким образом, разработчик и распространитель ничего не «используют» — использование происходит в момент загрузки ПО в память компа, и это делает пользователь.

> If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means the plug-ins must be released under the GPL or a GPL-compatible free software license, and that the terms of the GPL must be followed when those plug-ins are distributed.

Вот это и есть причина всех споров. Они, оказывается, believe, что написанный кем-то код, если он обращается к данным или функциям основной программы, подлежит наложению на него GPL-лапы.
>Так на этапе написания или сборки?

На этапе создания программы, если Вам так больше нравится. Если программа распространяется в собранном виде (а не в виде исходников), то она однозначно была собрана :)

>Напомню, что в случае с темой «Вордпресса» сборку распространитель не осуществляет никоим образом.

Не нужно мне этого «напоминать» — я сам это сказал в предыдущем комментарии.
Я же, в свою очередь, хочу напомнить Вам, что в том же комментарии я предложил не смешивать в одну кучу компиляцию/линковку и вордпресс, т.к. это принципиально разные ситуации.

>А если я вызываю из своей программы API «виндов»?

А Вы понимаете сам механизм «вызова из своей программы API виндов»? Сильно подозреваю, что нет (иначе бы не задавали таких вопросов), поэтому вот Вам пример, для улучшения понимания.
Есть крохотная программка wclock32 — небольшие удобные часики/календарь/напоминалка, написанная на ассемблере без использования каких-либо сторонних библиотек. Чистый асм и чистые «вызовы виндового API». Размер exe-шника 68 КБ, для своей работы не требует никаких зависимостей. А теперь давайте посмотрим на exe-шник с помощью известной программы Dependency Walker:

Дерево зависимостей отлично показывает нам (вернее Вам, т.к. я это и так знаю), что скрывается за «вызовами API виндов». А скрывается там динамическая линковка с виндовыми системными библиотеками.
Зависимость от любой DLL означает динамическую линковку с ней (см., собственно, расшифровку аббревиатуры «DLL»).

>Темы и плагины распространяются отдельно от движка. Дистрибутивы не содержат GPL-кода.

Вы так упорно твердите «дистрибутивы не содержат GPL-кода» как будто это имеет какое-то значение :)

Вот Вам обратный пример: если распространяемый мной дистрибутив содержит GPL-компоненты, но их взаимодействие с моими собственными компонентами осуществляется не посредством линковки, а другими механизмами, позволяющими говорить о том, что это разные, изолированные друг от друга программы — то я не обязан лицензировать все компоненты под GPL (но обязан предоставить код GPL-компонент, использованных в дистрибутиве).
И за примерами далеко ходить не надо — прошивки для медиацентров, основанных на Linux, или прошивки для Андроид-фонов. Распространяемый дистрибутив однозначно содержит как GPL-компоненты, плюс некоторое количество своих собственных компонент, но т.к. они изолированы друг от друга и выполняются как разные программы, то разработчик не обязан лицензировать свои собственные компоненты под GPL. Да, несмотря на то, что «дистрибутив содержит GPL-код».

Т.е. тот «содержание GPL-кода в дистрибутиве» не является ни необходимым, ни достаточным условием для того, чтобы лицензировать распространяемый софт под GPL. Ключевую роль играет то, каким образом осуществляется использование GPL-лицензированного кода.
Т.е. Вы полагаете, что если я напишу программу, которая при своем запуске будет вызывать функции из DLL-ки, лицензируемой по GPL, я и свою программу должен лицензировать по GPL?

Не знаю, как там в «Линуксе», но уверен, что при отображении окон программы вызывают-таки какие-то API и динамически линкуются с ними. Получается, весь оконный софт под «Линукс» обязан быть GPL? «Линукс» же GPL v2 (если не ошибаюсь)?
>Т.е. Вы полагаете, что если я напишу программу, которая при своем запуске будет вызывать функции из DLL-ки, лицензируемой по GPL, я и свою программу должен лицензировать по GPL?

Это не я «полагаю», это требование лицензии, под которой выпущена библиотека. А лицензия, напоминаю, это единственный документ, разрешающий вам использование чужого произведения (библиотеки). Вы либо принимаете эти условия и следуете им, либо не принимаете и не используете библиотеку.

>Не знаю, как там в «Линуксе», но уверен, что при отображении окон программы вызывают-таки какие-то API и динамически линкуются с ними. Получается, весь оконный софт под «Линукс» обязан быть GPL? «Линукс» же GPL v2 (если не ошибаюсь)?

Linux, действительно, лицензирован под GPL v2. Но Linux — это ядро операционной системы. То, которое рулит памятью, железом, дисковой подсистемой и процессами. «Окон» там нет и близко — окна реализованы в X-Window System, запускающейся как отдельный процесс.
В общем случае ни одна пользовательская программа не линкуется с ядром и даже близко с ним не общается (за исключением намеренных системных вызовов c помощью функции syscall), а всё взаимодействие идёт через библиотеки юзер-спейса (начиная от glibc, которая лицензирована под LGPL):


Что касается GUI-приложений, то они пишутся с использованием разнообразных фреймворков: Qt, GTK, Tk, Motif,…, либо напрямую с использованием Xlib (экстрим тот ещё). Соответственно, вопросы лицензирования конечной программы зависят от лицензии использованной библиотеки.
> Это не я «полагаю», это требование лицензии, под которой выпущена библиотека. А лицензия, напоминаю, это единственный документ, разрешающий вам использование чужого произведения (библиотеки).

А вот тут мы снова упираемся в толкование «использования» с точки зрения права. А тут общепринята практика, что использует — пользователь, а под использованием понимается загрузка ПО в память компа.

То есть, написание кода, в котором будет написан вызов некой функции некой библиотеки не считается использованием этой библиотеки.

И в этом — фундаментальный недостаток GPL.
Тут мы снова упираемся в то, что в тексте лицензии приводится явное толкование того, что именно подразумевается в её тексте под «использованием библиотеки», что с точки зрения права является совершенно обычной практикой.
Понимаете, текст лицензии пишут ее авторы. Туда кто угодно что угодно может написать. А живем мы по законам. Я вот могу написать лицензию, а в ней указать, что выпивание человеком стакана воды считаю использованием своей программы.

Ну или не столь утрированно — упоминание названия моей программы всуе буду считать ее использованием.

Лицензия вступает в силу только по факту совершения человеком определенных действий, которые законом будут трактоваться как принятие этой лицензии.

Такими действиями могут быть использование или распространение программы. Распространение — когда я взял и стал раздавать чужой софт. Использование — когда я запустил чужой софт.

А написание в коде плагина строчки, которая обозначает вызов какой-то функции какой-то библиотеки использованием этой библиотеки не является. И даже если скомпилировал код, который при запуске может обратиться к какой-то DLL — это тоже не является использованием этой DLL.
>Понимаете, текст лицензии пишут ее авторы. Туда кто угодно что угодно может написать.

Разумеется, автор имеет полное право указывать, как именно может использоваться его произведение.

>Я вот могу написать лицензию, а в ней указать, что выпивание человеком стакана воды считаю использованием своей программы. Ну или не столь утрированно — упоминание названия моей программы всуе буду считать ее использованием.

У Вас что, вменяемых аргументов не осталось, раз подобный бред в ход пошёл?

>Использование — когда я запустил чужой софт.

Ну да, а «подрядчик» — это «любая компания, выполняющая установленный объём работ за указанную плату», поэтому в любом договоре, в котором фигурирует слово «подрядчик», мы будем толковать это слово именно так, как гласит закон, а не уточнение, данное тут же, в этом же документе. Так, по-Вашему?

>А написание в коде плагина строчки, которая обозначает вызов какой-то функции какой-то библиотеки использованием этой библиотеки не является.

Мы же вроде договорились, что плагины — разговор отдельный, и мы этой темы не касаемся?

>И даже если скомпилировал код, который при запуске может обратиться к какой-то DLL — это тоже не является использованием этой DLL.

Знаете, довольно забавно слышать подобные заявления (особенно в утвердительной форме) от человека, не только не являющегося специалистом, но которому буквально несколько часов назад на пальцах объясняли, что такое линковка, что стоит за вызовами виндового API и почему программы не линкуются с ядром.

Понимаете ли, текст GPL писали юристы при плотном участии квалифицированных программистов. А тут является господин Новиков и объявляет им, что все они идиоты, а он один — умный (при этом не являясь ни юристом, ни квалифицированным программистом).
> Знаете, довольно забавно слышать подобные заявления (особенно в утвердительной форме) от человека, не только не являющегося специалистом, но которому буквально несколько часов назад на пальцах объясняли, что такое линковка, что стоит за вызовами виндового API и почему программы не линкуются с ядром.

Что именно показалось Вам «забавным»? То, что можно скомпилировать exe-файл, в котором будут зависимости от какого-то dll-файла?

> У Вас что, вменяемых аргументов не осталось, раз подобный бред в ход пошёл?

Ну хоть это показалось Вам бредом. Это для того, чтобы Вы не придавали чрезмерной силы тому, что люди вольны писать в своих лицензиях. Мало написать в лицензии что-то, это что-то должно соответствовать законам, обычаям делового оборота, да еще и вступить в силу.

Лицензия — это документ, лицензионный договор, положения которого, в том числе и трактование термина «использование» будут применимы только после того, как стороны вступят в определенные правоотношения.

«Бумажный» договор (так называемая простая письменная форма), например, надо подписать для этого. А при купле-продаже товара в магазине стороны тоже заключают договор, только не путем подписания, а путем совершения конклюдентных действий. Одна сторона отдала товар, другая — заплатила указанную сумму денег.

Вот и тут, чтобы лицензионный договор вступил в силу, чтобы вступили в силу «уточнения», пользователь должен совершить конклюдентные действия. Причем эти конклюдентные действия — не все те, что будут написаны самим автором лицензии, а только такие, которые могут быть признаны таковыми законом.

Например, использование программы (загрузка в оперативную память и запуск) — может быть таким действием. Вскрытие упаковки программы или продолжение процесса инсталляции (и то при соблюдении определенных условий) — могут быть таковыми.

А вот выпивание юзером стакана воды — не может быть. Это действительно бред, я рад, что Вы это заметили. Это ровно такой же бред, как и признание конклюдентным действием написания какой-то строчки в своем коде.

Напомню, что изначально речь шла о темах и плагинах для «Вордпресса», а затем уже сторонники Муленвега стали писать про «линковку», «библиотеки» и т.п. Наверное, я зря стал отвечать на эти провокации о «линковках», хотя до сих пор не вижу причины, по которым exe-файл, не содержащий скомпилированного чужого кода, может быть признан использованием этой чужого кода.

> А тут является господин Новиков и объявляет им, что все они идиоты

Надо быть лицом альтернативной сексуальной ориентации, чтобы приписывать мне то, чего я не говорил.
>Что именно показалось Вам «забавным»? То, что можно скомпилировать exe-файл, в котором будут зависимости от какого-то dll-файла?

Нет. То, что Вы пытаетесь рассуждать и, более того, делать какие-то утверждения о вещах, о которых не имеете ни малейшего представления.

>Мало написать в лицензии что-то, это что-то должно соответствовать законам, обычаям делового оборота, да еще и вступить в силу.

Вам неплохо было бы хотя бы бегло ознакомиться с законом, к которому Вы постоянно апеллируете. Я, признаться, положился на Ваше знание закона, и, как выяснилось, зря.
Статья 1270 ГК РФ чётко говорит о том, что использованием произведения является в том числе и «воспроизведение произведения, то есть изготовление одного и более экземпляра произведения или его части в любой материальной форме». При этом запись произведения на электронном носителе, в том числе запись в память ЭВМ, также считается воспроизведением. Т.е. в соответствии с законом Вы использовали библиотеку уже тогда, когда просто скачали её и разместили копию у себя на диске. А то, что Вы тут пытались мне, извините, «втирать» про «загрузку в память» — исключительно плод Вашей фантазии.
Так что в соответствии с действующим законодательством (или у Вас есть другие источники?), факт скачивания — использование. Ну а дальше — на Ваш выбор: либо Вы скачали её в соответствии с лицензией (т.е. согласились с её условиями), либо скачали незаконно (т.е. не отличаетесь от тех самых «эльфов»).
Могу повторить в третий раз: лицензия — это единственный документ, разрешающий Вам использовать библиотеку. Не согласны — значит не имеете права даже скачать её.

>Наверное, я зря стал отвечать на эти провокации о «линковках», хотя до сих пор не вижу причины, по которым exe-файл, не содержащий скомпилированного чужого кода, может быть признан использованием этой чужого кода.

О, ну хоть что-то до Вас дошло: не нужно с умным видом рассуждать о том, в чём не разбираетесь.

>Надо быть лицом альтернативной сексуальной ориентации, чтобы приписывать мне то, чего я не говорил.

Понятие «фигуральное выражение» Вам знакомо? Вы на протяжении хреновой тучи постов отстаиваете тезис «написание не-GPL-программы, слинкованной с GPL-библиотекой, является допустимым», тем самым прямо опровергая слова тех специалистов в области права и программирования, которые писали GPL.
> когда просто скачали её и разместили копию у себя на диске

И что? Это как-то противоречит тому, что я говорил? Я, между прочим, говорил о памяти, а не об оперативной памяти.

> Ну а дальше — на Ваш выбор: либо Вы скачали её в соответствии с лицензией (т.е. согласились с её условиями), либо скачали незаконно (т.е. не отличаетесь от тех самых «эльфов»).

Разумеется. И что? Для написания кода не обязательно иметь у себя эту библиотеку, это раз. Достаточно иметь мануал, например. И преспокойно написать код.

Во-вторых, лицензия распространяется на лицензируемый программный продукт. В ней оговариваются вопросы того, как я могу использовать этот продукт, а не разрабатываемый мной.

То есть, если я скомпилировал exe-файл с включением в него чужого произведения или модифицировал код чужого произведения — здесь я даже не просто использую, я получаю производное. И на него, разумеется, будут распространяться условия лицензии.

А если я написал код, в котором указал вызов какой-то функции — это не будет ни использованием произведения, ни созданием производного.

> Могу повторить в третий раз: лицензия — это единственный документ, разрешающий Вам использовать библиотеку. Не согласны — значит не имеете права даже скачать её.

С этим никто не спорит (правда, были прецеденты, когда ответчики успешно показывали суду, что никакой лицензии не видели).

Иначе можно к тому же «Вордпрессу» написать в лицензии, что все, кто его использует, обязаны покинуть свои жилища и прекратить дышать. И тысячи блоггеров умрут )))))

А заодно после скачивания «Вордпресса» люди узнают, что отныне под использованием «Вордпресса», согласно трактовке такой лицензии, будет выпивание стакана воды.
>Я, между прочим, говорил о памяти, а не об оперативной памяти.

То есть, когда Вы так упорно твердили, что «загружает библиотеку пользователь, а не разработчик» — Вы имели в виду, что разработчику для создания программы библиотека не нужна, и он сможет создать программу не имея библиотеки «в памяти компьютера»? Вы снова ошибаетесь.

>Для написания кода не обязательно иметь у себя эту библиотеку, это раз. Достаточно иметь мануал, например. И преспокойно написать код.

Для написания кода — не обзязательно. Для его сборки — обязательно. Без наличия библиотеки линкер тупо не сможет собрать программу. Вы собираетесь распространять программу не в виде exe-файла, а в виде исходного кода? :)
(Прошу Вас, не надо в очерендной раз про вордпресс — мы тут говорим про exe-файлы и DLL, а это «две большие разницы»).

>Во-вторых, лицензия распространяется на лицензируемый программный продукт. В ней оговариваются вопросы того, как я могу использовать этот продукт, а не разрабатываемый мной.

Разрабатывайте свой продукт сколько угодно и как угодно! Но линковать с GPL-библиотекой Вы имеете право только GPL-совместимый код. Если код не под GPL — Вы не имеете права линковать его с библиотекой, т.к. это противоречит условиям использования библиотеки. С которыми Вы согласны, раз используете её. А если не используете, то не сможете слинковать exe-файл. А раз линкуете, значит используете. И по кругу, по кругу…

>То есть, если я скомпилировал exe-файл с включением в него чужого произведения или модифицировал код чужого произведения — здесь я даже не просто использую, я получаю производное. И на него, разумеется, будут распространяться условия лицензии.

А если я написал код, в котором указал вызов какой-то функции — это не будет ни использованием произведения, ни созданием производного.


Опять плаваете.
Если Вы просто «написали код, в котором указали вызов какой-то функции» — делайте что хотите. Но получить exe-файл Вы сможете только слинковав его с библиотекой. А такая линковка для не-GPL кода запрещена лицензией, с которой Вы согласны, раз библиотека находится у Вас на компьютере. В хренадцатый раз повторяю: Вы не соберёте exe-файл без линковки с библиотекой на этапе сборки программы.

Если exe-файл существует, то вариант «нет, я библиотеку не использовал» не прокатит. Поймите уже наконец: сам факт существования exe-файла однозначно доказывает факт наличия библиотеки у разработчика в момент сборки exe-файла, а следовательно, факт её использования (в соответствии с действующим законодательством). Ну а дальше вопрос лишь в том, была она использована законно или незаконно. Законное использование — это использование в соответствии с лицензией. Нарушение лицензии автоматически влечёт за собой нарушение авторского права, т.к. лицензия — единственный документ, разрешающий использование и оговаривающий условия использования.

Вы определённо сейчас в роли того самого «эльфа», который всеми силами пытается доказать своё право на «халяву», плюя на авторское право: мол, библиотеку я использовать буду, а соблюдать лицензию — хрен!
1. То есть, в случае с кодом плагина или темы для «Вордпресса», где никакой линковки не происходит, Вы согласны со мной?

2. По поводу сборки экзешника — если ситуация действительно исключает отсутствие библиотеки у разработчика, тогда ее использование происходит.

Хотя здесь открывается простая лазейка: человек может по GPL распространить прослойку между своей программой и библиотекой, при этом общение с прослойкой будет происходить каким-то образом, исключающим применение GPL. Нет?
1. В случае с кодом плагина или темы для «Вордпресса» я не обладаю достаточной информацией для того, чтобы сформировать своё собственное суждение по этому поводу.
2. Ура.

>Хотя здесь открывается простая лазейка...

Это действительно очень простая лазейка, поэтому этот вариант не мог быть упущен из виду авторами GPL (которые всё же очень хорошие специалисты в своём деле :))
Если прослойка лицензирована под GPL, то линковаться с ней может только GPL-код, иначе это нарушение лицензии. И в GPL FAQ есть пункт и на эту тему тоже.

Всё было бы хорошо, если бы не одно «но»: как будет трактоваться подобное нарушение с точки зрения закона — сильно зависит от законодательства конкретной страны. Не удивлюсь, если по российскому законодательству такой финт вполне прокатит. Дело может быть решено как в одну, так и в другую сторону, в зависимости от того, кто является истцом, кто ответчиком, и в каком исходе дела заинтересован тот, у кого больше влияния :)
Если линковаться с прослойкой — то да. А если какой-либо другой механизм? Это ведь возможно?

Или, скажем, прослойка будет обращаться к закрытой части?
Если будет использован механизм взаимодействия через сокеты/пайпы/стандартный вывод (другими словами, механизм взаимодействия между процессами, а не механизм взаимодействия в рамках одного процесса), то всё чисто.

Например, для Linux есть консольная GPL-ная программа cdrecord, которая записывает диски. Я могу написать закрытую GUI-программу, скажем, на Qt (которая под LGPL), с помощью которой будут выбираться параметры записи, а при нажатии на кнопку «Burn» будет вызываться cdrecord с этими параметрами (в качестве отдельного процесса). GPL это позволяет.
Чёрт, надо вычитывать перед постингом, особенно если вносятся правки по ходу написания =\

Прошу прощения за корявости типа «содержит как GPL-компоненты, плюс некоторое количество своих собственных компонент» («плюс» -> «так и») и «Т.е. тот «содержание GPL-кода в дистрибутиве»… » (слово «тот» лишнее, осталось от оборота «тот факт», который я решил заменить и переформулировать).
Qt — LGPL стала доступной после покупки Trolltech'a.
С чего вдруг? Нельзя только линковать с GPL библиотеками, но даже для этого придумали LGPL. Полностью независящий от GPL продуктов софт запускать конечно можно, так все и делают.
Рискну быть заминусованным, но, ИМХО, Мэтт Мулленвег прав и должен продолжать. Я WordPress не юзаю, тем не менее, GPL уважаю, создавая расширения и нарушая лицензию, чтобы потом наживаться на чужом труде (безусловно, Пирсон свой труд туда тоже вложил, я не спорю и речь идет не о «долях» этих трудов) — совсем не кошерно.

К тому же GPL не заставляет его публиковать исходные коды в общий доступ и «дарить» всем желающим его тему, он может продолжать продавать ее и высылать код онли по требованию, когда другим людям необходимо что-то модифицировать. Именно так GPL и работает, за счет этого требования и живут и развиваются свободные проекты.
Это было бы верно если бы использовался код самой WordPress в другой CMS. А тема/плагин это отдельная работа. Как будто их самих кто-то заставил выпустить ее под GPL.
Не совсем Вы правы. Если прочтете топик, то увидите, что тема фактически является производной от оригинальной GPL темы, а это, простите, уже совсем не «собственный» продукт.
Если так, то тема нарушает лицензию и фактически является «пиратской». Т.е. вопрос переходит совсем в другую плоскость.
не переходит. GPL однозначно разрешает использовать код, модифицировать и включать в состав собственного продукта. Только на условиях такого же разрешения для других. Деньги вообще в этой схеме не участвуют — можешь продавать свой продукт с GPL-вставками, но не забудь предоставить исходный код для возможных улучшений.
Это только предположение, которое было выдвинуто в комментариях.
Да что Вы… цитата из топика:

На основании анализа кода PHP и HTML, включая вызовы API, логики работы программы, эксперты заключили, что почти любая тема оформления, созданная для Wordpress, будет производной от основных тем CMS, лицензированных под GPL


не забудьте слово почти, которое освобождает от GPL, если тема действительно индивидуальна.
«эксперты заключили, что почти любая тема оформления, созданная для Wordpress, будет производной от основных тем CMS, лицензированных под GPL»

По-моему, это полнейший бред. Из того, что «любая тема» использует те же функции ВП, что и основные — еще не следует, что эта «любая» является переработкой одной из «основных» тем. Фактически «эксперты» отвергают любую возможность создания темы с нуля. Очень опрометчиво с их стороны.
Чем больше таких дурачков будет в числе «экспертов», тем менее популярна будет ГПЛ среди нормальных людей. Прискорбно.
Собственно какого ответа Вы ждете? Это Ваш спор с экспертами, не видел их на хабре.

слово «почти» они не забыли, если внимательно читать предложение, то «почти любая созданная для вордпресс тема — производная от базовых» — думаете это не так? А я почти уверен что много бОльшая часть созданных для вордпресса тем — перекрашивание базовых, которые под GPL, что их анализ PHP и HTML документов данных тем и подтвердил.

Тут не говорится ЧТО ПРЯМО ВСЕ ТЕМЫ, ПРОШЛЫЕ И БУДУЩИЕ — это все базовые GPL, не выдавайте желаемое за действительное.
«любая тема оформления… будет производной» — это, по-моему, и про темы, созданные в будущем.
Боюсь, «эксперты» путают использование общих принципов, по которым устроены и работают темы для ВП, с переработкой тем. Общие принципы авторским правом не охраняются.
Главное слово пропустили, после вставки которого я соглашусь с мнением экспертов. В Вашей СПЕЦИАЛЬНО ИЗВРАЩЕННОЙ трактовке — это действительно бред.
Не понятно в чем суть проблемы. Если использовал в коммерческой теме GPL-код, грош цена твоей лицензии. Если нет, то к чему это коммунизм? Нравится, пусть выпускают под коммерческой лицензией.
Да GPL сама по себе тоже вполне удовлетворяет коммерческим требованиям. Она не обязывает открывать код всем подряд, только покупателям, которым это нужно.
Насколько я знаю это не так. С коммерческими требованиями согласуется только LGPL, а тут остаются только извраты вроде коммерческой поддержки.
Ну… могу только сказать что крайне плохо Вы знаете GPL. В основном по мифам и легендам древней греции в комментариях анти GPL сектантов.

GPL вовсе не обязывает Вас выпускать бесплатные продукты.
GPL обязывает выпускать «свободные» продукты, т.е. покупатель вашего продукта может его перепродавать (дешевле) или раздавать бесплатно — т.е. в идеальном случае вам заплатит только один человек.

Мне вот интересно, как работает GPLv3 относительно веб-приложений.
Я вот хочу использовать коммерческую библиотеку ExtJS, но она же доступна и под GPLv3.
Значит ли это, что взяв эту библиотеку под GPLv3, я буду обязан публиковать исходный код своих приложений?
Кто end user в случае веб-приложения? Я, как использующий модифизированный GPL-код на своём сервере, или пользователи заходящие на мой сайт?
Вы. Если вы не продаёте ваш движок или его компоненты, то вам и не нужно его открывать. Для пользователя сайт — это результат работы вашей программы, а не сама она. Соответственно и открывать исходники вы не обязаны. Хотя конечно на 100% не уверен, в тонкостях именно 3-ей версии не разбирался((
там это так же осталось. Другое дело, если Вы продаете свой движок.
Ну… я понимаю, мы живем в РФ и у нас давно такая паранойя, да и даже признаю, что не безосновательная. С другой стороны, живя в РФ Вы так же должны понимать, что купивший софт человек может его крякнуть и раздавать другим людям совершенно бесплатно.
Мне тоже интересно, особенно из-за того, что это JS код, и он и так всем доступен. Наверное, используя GPL-версию, я разрешаю использовать мой JS всем желающим, а используя коммерческую версию, запрещаю, не смотря на то, что он все равно доступен.

Есть еще другой интересный вопрос про GPL и web-сервисы: обязан ли коммерческий сервис предоставлять исходники, на которых он работает, если они получены переработкой GPL кода. Кажется, что нет, так как дистрибуции программы не происходит.
НЛО прилетело и опубликовало эту надпись здесь
Не обязывает конечно. Она разрешает кому угодно использовать мой продукт и выпускать на его основе свой собственный (лишь бы он сам удовлетворял GPL).

Просить денег не запрещает, теоретически :-) Единственный выход, выпускать одновременно и под коммерческой лицензией для платного использования в non-GPL продуктах (см. например visifire.com), но это вариант не для end-user софта.

Теперь рассказывайте что еще я плохо знаю.
НЛО прилетело и опубликовало эту надпись здесь
Почему наглостью? Это GPL, она защищает работу разработчика от посягательств недобросовестных.

Даже более скажу, если Вы этот модифицированный код используете только у себя дома/на работе, в личных целях (к примеру вы админ и написали пачку GPL скриптов для управления сервером, это, кстати, коммерческое использование вполне! но при этом в личных целях) — даже сообщать об изменениях никому не обязаны.
Нет, не можете. Пока в вашем коде есть хоть кусок исходного GPL, вы своим покупателям обязаны предоставить весь свой код. Никому не показывать модификации вы можете только при условии, что никому и продукт не отдаёте и не продаёте.
Вы не внимательны. Речь шла о том, что он ПРОДАЕТ, НО ЕЩЕ НИКТО НЕ КУПИЛ ЭТОТ ПРОДУКТ! Значит его код никто не увидит. Это абсолютно корректно. И если Вы хотите увидеть модификации — надо купить хотя бы одну копию, тогда условие в сообщении eurekafag уже не выполняется.

Т.е. просто заявив о продаже модифицированного приложения, выкладывать в доступ GPL код никто не обязывает. Но если КУПИВШИЙ его попросит — предоставить обязаны.
Я не сказал ничего противоречащего вашим словам. Возможно, я неправильно предыдущий комментарий понял. В смысле, eurekafag интересовала правомерность не всей схемы, а конкретно этого куска. А я общий ответ дал.
НЛО прилетело и опубликовало эту надпись здесь
А обязан ли человек предоставлять код не покупателю, а человеку, который просто хочет посмотреть код? Например автору библиотеки, на которой базирована программа?
Нет.
А где же тогда ваши хваленые свободы? Какая то дескриминация выходит.
Не путайте свободу с анархией.
Да, но при покупке темы мы получаем скрипты PHP и стили, т.е код доступен покупателю. В чем проблема? В отсутствии лейбла GPL?
Хотя согласен, помимо доступа к исходникам, там даются и полные права на эти исходники, чего в обычной ситуации не наблюдается.
НЛО прилетело и опубликовало эту надпись здесь
Можно. Кому угодно. GPL не запрещает модификацию и дальнейшее распространение GPL кода под той же GPL лицензией. Так что если вы получили GPL код, то можете делать с ним всё, что угодно, лишь бы лицензия осталась GPL.
Собственно в этом и был ответ на предыдущий вопрос. Автор этой темы ЗАПРЕТИЛ СВОЕЙ ЛИЦЕНЗИЕЙ передавать код дальше, тем самым нарушив GPL.

Вы немного промазали с ответом =)
А ну да, как-то не прочитал исходный коммент, каюсь))
Дизайн как графическая часть составного произведения (темы) ничего общего с кодом WP, так что претензии Муленвега в этой части — необоснованные.

Ну а коммерческая поддержка темы — это вообще смешно. Если тема сделана качественно, что ее поддерживать? Установил — и работает. Идиотизм сектантский.
Так претензий никаких и нет. Только на PHP код. А если вам не нравится GPL — не пользуйтесь в разработке продуктами под этой лицензией, никто вас не заставляет.
Что значит «не пользоваться в разработке продуктами»? Даже не надо быть профессором права, чтобы понимать, что лицензия на ПО не распространяется на созданные при помощи этого ПО произведения.

Если я беру код ПО и изменяю его — тогда да, конечно. А если нет — Муленвеги идут лесом.

Опять же, ущербная экономическая модель, навязываемая Муленвегами, ничего хорошего для экосистемы продукта не сделает. Лучше бы они работали над архитектурой ПО своего, а то что не версия, то вдвое больше оперативки на сервере требует. «Битрикс», наверное, уже не так прожорлив стал.
Ну это проблемы авторов, но выбирать лицензию — это их право, и вы не можете ничего с этим сделать. Если система построена так, что вы не можете написать дополнение, не нарушив GPL — значит вы обязаны выкладывать дополнения под GPL. И лесом идёте вы, а не исходный автор. Это не ущербная модель — дармовым трудом мало кто хочет заниматься, используете чужие разработки — будьте добры как-то расплачиваться за них. В случае GPL ИМХО избран самый полезный для сообщества способ оплаты — непосредственно кодом.

Не пользоваться в разработке продуктами — это значит не использовать их части)))
Послушайте, никакая лицензия не может запретить писать дополнения.

Лицензия распространяется только на сам продукт и на производные от него. Иначе бы и все ПО под «Линукс» тоже было бы обязательно по его лицензии.

Если не использована часть продукта — лицензия на дополнение не распространяется!
Это не так. Вы делаете сайт взяв за основу движок под GPL, вносите в него модификацию модулями и темами (это главный нюанс данного конфликта, который вы и не поняли), продаете получившийся продукт, в нарушение лицензии на его часть. WP выступает для модулей и тем библиотекой, а согласно GPL (и в отличие от LGPL) код, использующий такую библиотеку сам обязан быть под GPL.

Вот по отношению к другим продуктам модули часто не попадут в такую коллизию. Например, если модуль работает через внешний (!) API. Но это совершенно другая ситуация — коммерческая компания пытается заработать на нарушении GPL. Как она должна поступить правильно в подобном случае? Например написать собственный, полностью коммерческий движок с api WP и продавать его под коммерческой лицензией вместе со своими темами. Тогда 100% кода будет под их лицензионным контролем, как у того же Битрикса.
Модули и темы не вносят модификацию в продукт.

Поясню на примере для детского садика. Я взял ведерочко, просверлил две дырочки для глаз — получился рыцарский шлем. Это — производное от ведерочка.

А девочка Маша сделала наклейки на этот шлем. Так вот, наклейки — не производное.

Как созданием наклеек на ведерочко Маша не внесла изменений в это ведерочко, так и создание плагинов и тем для ПО не вносит изменений в это ПО.

Я почти отчаялся, но верю в людей. Быть может, пример с ведерочком позволит вам понять, чем отличается изменение, вносимое в какую-либо вещь, от дополнения, производимого для использования совместно с этой вещью (простите за такое количество сложных понятий).
К сожалению разработка модулей и тем для вордпресса это как раз и есть дырочки в шлеме
Вы перевернули мое представление о границах человеческого альтернативного разума!

Вы хотите сказать, что при создании плагина или темы их автор берет WP и модифицирует его?
В статье есть сслыка на одного из авторов который объясняет почему это так.
Аргументы его смешны и нелепы. Лучше бы он занимался архитектурой CMS, а не лез туда, где ничего не понимает. Глядишь, и WP не жрал бы 32 и более мега памяти на серваках.

> themes interact with WordPress (and WordPress with themes) the exact same way that WordPress interacts with itself

Смешно и нелепо. Теперь все, что с чем-либо взаимодействует, автоматически становится его частью? Да у человека проблемы с основами элементарной логики!

По этой извращенной логике темы рабочего стола и окошек «виндов» тут же становятся частью «виндов».

Это в техническом смысле, может быть и так (не факт, кстати), но вот в правовом смысле никто не может распространять свои условия на продукт труда другого человека, если у в этом продукте не используется часть того, на что у него есть права.

> If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program.

Опять видим проблемы с логикой. У нас на компе вообще все в одной оперативке выполняется — и что?

Кроме того, в оперативке оно комбинируется в момент выполнения. С правовой точки зрения это не имеет никакого отношения к производству плагина или темы и распространению их.

К моменту совершения сделки купли-продажи тема или плагин существуют отдельно от продукта.
Вы упрощаете логику до искажения.

themes interact with WordPress (and WordPress with themes) the exact same way that WordPress interacts with itself

Это абсолютно точное определение механизма взаимодействия темы с движком при этой архитектуре. Так уж построены многие движки на PHP — для получения приемлемой скорости работы и гибкости разработки все модули и темы это части кода самого движка. Движок сделан так, что сам включает в себя куски кодов из модулей и тем и исполняет это как единую программу. Разработчики тем к моменту исполнения своего кода (а логика в тему тоже попадает не так ли, разработчик?) получают набор из десятков функций и структур данных, которые написали сторонние разработчики для удобства разработчиков тем и модулей. Если ваша тема не использует ничего из арсенала движка и будет просто набором дизайна, то будет ли такая тема иметь смысл? Вот и Thesis попали в эту проблему — написали свой продукт на основе чужого (у вас же нет сомнений, что без WP их темы не будут работать) с условием включения своего кода в конечный продукт, но забыли поблагодарить тех, кто сделал их работу вообще возможной. Это по-вашему логично?
НЛО прилетело и опубликовало эту надпись здесь
возможно они по своей милости закрывали глаза и не хотели лишний раз грузить разработчиков, все устраивало и автор темы их как-то уже окончательно допек, что пришлось с ним разбираться конкретно?

Вы как-то ушли совсем далеко от темы топика, то о чем Вы говорите надо разбирать в контексте другой проблемы, а именно истории возникновения конфликта.
НЛО прилетело и опубликовало эту надпись здесь
Это они у мелкомягких научились, которые тоже стали бороццо с пиратством после того, как.
Я не могу ответить на это вопрос. Но в контексте топика он не имеет никакого смысла. Возможно зная ответ и я буду негодовать, но это не отменит сути конфликта и лицензию.
Искажениями занимаетесь вы.

К моменту купли-продажи дистрибутива темы она содержит GPL-код? Нет — значит на нее GPL не распространяется.

Все. Здесь в дискуссии с вменяемым человеком я бы поставил точку.

Но придется мне продолжить.

От того, что какая-либо программа (тема, плагин) исполняется в контексте движка, компонуется им в момент выполнения, вызывает API или библиотеки, она не становится содержащей внутри себя GPL-код. Он снаружи, а вызывать его никто запретить не может.

Это GPL-код вызывает и компонует. И что с того? Я вот могу из GPL-проги вызвать и скомпоновать в ОЗУ «Фотошоп» и «Офис».

Мне уже можно бежать судиться с «Адобе» и «Майкрософтом»?

> Вот и Thesis попали в эту проблему — написали свой продукт на основе чужого (у вас же нет сомнений, что без WP их темы не будут работать)

Да скачайте же уже, наконец, учебник по элементарной логике! От того, что без WP их темы «не будут работать», продаваемый дистрибутив не становится частью WP. И GPL-код там волшебным образом не появляется.

Если некто пишет программу, вызывающую другую программу, обращающуюся к библиотеке и т.п., он имеет полное право распространять ее на своих условиях до тех пор, пока не начинает распространять в дистрибутиве чужой код.

Осилили?
От того, что какая-либо программа (тема, плагин) исполняется в контексте движка, компонуется им в момент выполнения, вызывает API или библиотеки, она не становится содержащей внутри себя GPL-код. Он снаружи, а вызывать его никто запретить не может.


Если было бы так, я бы к вам не придирался. Но лицензия GPL запрещает включать GPL-библиотеки в закрытые продукты без перехода в GPL. А WP подключает эти библиотеки ко всем модулям. Так что формально нарушение имеет место.
Разработчики тем и плагинов не включают в состав своих продуктов GPL-код, умница!

То, что движок что-то с чем-то компонует во время выполнения программы, не обращает действие GPL на код, не содержащий GPL-кода.
Это вам бы так хотелось. Но тут дело не в формальном наличии копии кода в тексте темы, а в том, что код плагина или темы WP работает только используя WP в качестве библиотеки или отдавая свой код в библиотеку WP. И будь у WP LGPL, не было бы вопросов, а с GPL такие фишки не пройдут.
Это не «мне бы так хотелось», это так устроено законодательство в большинстве стран.
Вы ошибаетесь
Нет, ошибаетесь именно вы. Впрочем, это уже выглядит не ошибкой, а религиозной мутью, холливаром и троллизмом.

Повторю еще раз для альтернативно одаренных:

1. Распространяется дистрибутив.

2. Любая лицензия распространяется только на собственный код.

3. На чужой код ни одна лицензия распространена быть не может.

4. Отсюда вывод: если в дистрибутиве нет GPL-кода, на него не может быть распространено действие GPL-лицензии.
Уважаемый Алексей Новиков. Прошу впредь обойтись без хамства. чтобы не произвести плохое впечатление о свей вменяемости.

1. То, что вы называете дистрибутивом, фактически является набором правок в код стороннего приложения. Без этого приложения не может быть исполнено и факт продажи этого дистрибутива не дает соответствующих прав на исходное приложение (законы искать не буду, найдете сами)

2. Разработчики WP распространили лицензию GPL на свои функции. Не хочешь соблюдать эту лицензию — откажись от всего механизма — встраивания в движок WP, использование его функций. Всё это должно быть согласовано с лицензией их разработчиков.

3. По этой причине автор дистрибутива не может переназначить лицензию на вызов функций WP, которые, как написано в коде, находятся под GPL. Он может только либо подчиниться этой лицензии вызывая такие функции, либо переписать свой продукт так, чтобы он не являлся модулем WP.

4. Чтобы в дистрибутиве не было GPL-кода надо вычистить этот код от обращений к лицензированным функциям WP.
1. неправда. тема не вносит изменений в gpl-код, который представлен в виде файлов. а лицензия, напомню, распространяется на интеллектуальную собственность, выраженную в виде программного кода, который хранится в .php-файлах.

2. GPL распространяется только на само произведение, а не на то, как это произведение используется — будучи отинтерпретированным Zend Engine или прочитанным глазами человека. Вызов метода не является достаточным основанием для обязывания стороннего продукта стать GPL. причина — текст GPL не обязывает этого.

3. повторение п.2. в GPL этого попросту нет

4. повторение пп2,3: не нужно, GPL не обязывает этого.
Стоп. Если «движок включает в себя куски тем», значит, это движок использует чужой код. А тут авторы движка обвиняют создателя темы в прямо противоположном — что тема использует код движка.
«Лучшая защита — это нападение», помню, помню…
Ну тогда ответом в суде будет обвинение в иньекции неразрешенного кода =)
Видимо речь идет о том, что в проприетарной теме есть куски GPL кода. По крайней мере я так это понял из всего срача выше.
А если их нет то тогда любые предьявы к теме абсурдны. Автор вообще мог создать какой то левый код для непонятных задач, а он магическим образом может быть использован как тема для вордпресса. И автор вовсе не виноват что некоторые его функции называются так же как и функции в API вордпресса.
Вы правильно поняли. Темы для WP изначально строятся на вызове GPL-функций из движка и часто вносят дополнения в код, исполняемый в контексте кода движка.
Вызов функций библиотеки не накладывает ограничений на распространение дистрибутива вызывающей программы.

То, что происходит в момент выполнения программы, не касается дистрибутива.

Продают и распространяют дистрибутив, а не содержимое оперативки.

Иначе вся индустрия ПО была бы во власти производителя BIOS.
Накладывает. Почитайте GPL
Вы путаете вызов системных функций и линковку с библиотеками на уровне кода.
Вы знаете много программ, которые пользуются 10 прерыванием? =) Кроме того, что лицензия на BIOS изначально другая, мало в какой программе (в том же WP) есть хоть одно обращение к его коду.
К биосу обращается ОС. К ОС все программы.
Получается что если то, что использует биос должно от него лицензионно зависеть, то ОС зависит. А раз программы используют вызовы ОС, а ОС зависит от биоса, то все программы зависят от биоса.
1. ОС с настроенными драйверами уже давно не обращается к BIOS. Разве что вы запустите что-то очень старое или слишком универсальное. Обращение к данным POST не относится к использованию BIOS
2. Даже если иметь дело с ОС на BIOS, то у BIOS лицензия не GPL и следовательно не требуется наследование лицензии для пользователей его функций.
BIOS запускается при старте, а затем вызывает ОС и все остальное, загружает это в память — все как с WP и плагинами.
нет. биос загружается, делает тесты и передает управление ОС. В редких случаях какие-либо программы обращаются к функциям биос через прерывание 10. Для этих программ могло бы иметь значение использование функций BIOS, если бы у него была лицензия GPL, а это не так. Лицензия на BIOS не требует наследования лицензии от программ, которые используют его API. Так же Windows API не требует никаких лицензионных ограничений от кода, который на них опирается. Так что на «винде» могут работать любые программы и без последствий пользоваться его API. А у WP под GPL и благодаря своей архитектуре он распространяет свой код на API модулей и тем.
А значит и лицензию.
Обращение к системному вызову не является заимствование чужого кода, а тем более его модификацией.
Ам… Вы плохо себе представляете темы и модули WP. В данном случае они как раз отверстия в ведерке, а не наклеечки.
Ам. Я представляю себе это гораздо лучше вас, вы удивитесь. В том числе потому, что своими руками написал несколько плагинов.

Вы удивитесь, молодой человек, но при их создании я не модифицировал WP.
Само включение вашего модуля в WP это уже его модификация. Сам движок сделан так, что выполняет любой код в собственном контексте, а не по внешним правилам. Попробую еще раз объяснить разницу.

Допустим вы пишете коммерческий продукт на PHP. Этот движок под GPL. Допустим ваши противники будут заявлять, что программа на PHP вносит изменения в код движка Zend в памяти и на том основании должны лицензироваться под GPL. В таком ключе вы видите нынешний спор про модули и движок WP. И будь явление такого же уровня как программа на php и движок Zend, я был бы на вашей стороне — программа не нарушает лицензию движка.

Но мы имеем дело с совсем другим случаем. Движок WP построен из таких частей — библиотека обеспечивающая основной арсенал средств работы с первичными ресурсами (запросы, данные...), механизм встраивания кода из модулей и тем в обработчики запросов и набор собственных базовых модулей. Любой модуль WP имеет смысл только как часть кода WP, имея доступ к первичным ресурсам через библиотеку. Определенные функции каждого модуля вызываются в определенные моменты обработки запроса, как нативный код движка. Фактически архитектура WP создана таким образом, чтобы вносить в движок изменения не трогая файлы движка. Это вас и сбило с толку.

Вызов любой функции WP из темы попадает под определение подключения библиотеки GPL и в лицензии это оговорено как случай необходимости перехода под GPL. Скажите как разработчик тем под WP, есть ли у вас гарантия, что темы Thesis не содержат вызовов функций WP? Если да, то я признаю что не прав.
> Само включение вашего модуля в WP это уже его модификация.

Тяжелый клинический случай. Они брали WP, включали в дистрибутив свой модуль и распространяли дистрибутив, содержащий WP + плагин?

Даже тогда GPL не распространяется на код модуля, если этот модуль не содержит в себе GPL-кода.

При коллизии GPL с законодательствами большинства стран выигрывает законодательство.
Они брали WP, включали в дистрибутив свой модуль и распространяли дистрибутив, содержащий WP + плагин?

Они перекладывали эти действия на плечи покупателя по контракту, фактически провоцируя нарушение закона.

Никаких коллизий с законом нет. Если продавец продает топор и оговаривает, что им можно только убивать бабушек, то продавец сядет еще за подстрекание к убийству. Если тему можно использовать только как включение в код WP, то нарушение закона не за покупателем, а за производителем.
> Они перекладывали эти действия на плечи покупателя по контракту, фактически провоцируя нарушение закона.

О ужас, что же вы такое говорите-то? Если этот самый конечный пользователь инсталлирует модуль, а равно вносит любые изменения в код, хоть 10 раз закрытые, для использования, а не для распространения, то GPL не нарушается! Учите матчасть.
По большому счёту, любая программа для Linux будет основана на неком «GPL шаблоне» — типичные заголовки; вызовы API и т.п. А документ, созданный в OpenOffice на основе шаблона, также наследует лицензию шаблона?
Тема получилась интресной и неоднозначной.
Если комиссия подтвердит, что вызовы API идут в том же порядке, что и в этом шаблоне, обрабатываются те же данные и хранятся в тех же местах — да. Но, написав приложение с нуля, если это, конечно, не арканоид, добиться такого будет не просто.
Раз так, можно саму тему выпускать под GPL, а css js и графику под любой другой (commercial).
То есть сама тема платная да, а php файлы темы поставляются как бесплатное дополнение
Делать обфускацию PHP кода и завязывать его напрочь на яваскрипт или еще что, и отдавать по GPL. Остальной связанный код выпускать под какой-нибудь страшной лицензией.

П.С. вручную выполненная обфускация вполне попадает в рамки GPL.
Ситуация:
допустим, я купил себе Wordpress не под GPL лицензией(незнаю возможно ли это, но просто для примера), написал тему и продаю по $ за копию под не GPL лицензией.
Но вот у моих покупателей Wordpress как раз под GPL, и, получается, есть нарушение лицензии. Кто в этом случае должен отвечать? Я или покупатель?
Покупатель покупает у Вас программный продукт как целое, вместе с Вашей заобфускаченой копией вордпресса и юзает его. Если он захочет выдрать Ваш модуль и встроить в свой GPL вордпресс — только в личных целях, если начнет распространять в таком виде — за ним приедут.
>Покупатель покупает у Вас программный продукт как целое, вместе с Вашей заобфускаченой копией вордпресса и юзает его

и где у меня написано это?
а должно быть написано.
Короче Мэтт попросил Криса поделиться, а тот сказал что не хочет :)))
Странные люди. Изза кривой архитектуры софта и лицензии они убивают рынок сложившийся рынок и отпугивают разработчиков.
Мне почему-то кажется, что в ядро вордпресса практически никто из коммерческих разработчиков всяких плюшек ничего не внёс. А значит ценность всего этого рынка фактически нулевая — люди просто зарабатывают на чужом труде.
Да ладно, сторонние расширения это интеллектуальная собственность, которая тоже имеет ценность. Скажем, кто-то написал интернет-магазин под вордпресс. И что, ценность разработки нулевая, по вашей логике?
С точки зрения сообщества вордпресса — да. Ему от этого ни тепло, ни холодно. Разве что косвенная реклама и только, да и то, возможно будет антиреклама.
Не соглашусь. После того, как у системы будет магазин, пусть даже и коммерческий, на ней уже можно этот магазин сделать. Если бы его не было, то выбор бы пал на другую cms.
Этот человек улучшил WordPress, добавив к нему систему «магазин». Улучшать он мог его только с согласия GPL, ЗАРАНЕЕ ПОДГОТОВИВШИСЬ К ЭТОМУ! Помните была такая популярная фраза в девяностых? «Незнание не освобождает от ответственности». Если он не хочет раздавать его под GPL — ЕМУ ИЗНАЧАЛЬНО НУЖНО БЫЛО ВЫБИРАТЬ ДРУГУЮ CMS.
НЛО прилетело и опубликовало эту надпись здесь
Вы снова путаете бесплатное пиво со свободой слова.

1. По определению свобода человека заканчивается там, где начинается свобода другого.
2. Коммерческий СВОБОДНЫЙ продукт на GPL Вы можете купить, крутить, модифицировать, продавать, внедрять как Вам угодно.
3. Вы можете все это сделать и со свободным, НО НЕ ЗАКРЫВАЯ ЕГО КОД! Причем тут коммерция?
4. А вот ПРОПРИЕТАРНЫЙ продукт Вы можете купить, КАК ПРАВИЛО НЕ МОЖЕТЕ ЕГО КРУТИТЬ И МОДИФИЦИРОВАТЬ И ВНЕДРЯТЬ КАК ВАМ УГОДНО! Все ограничено условиями EULA, почти всегда модификации запрещены и доступа к коду Вам не дадут, если Вы не ФСБ с паяльником.

Что Вам еще не понятно?
НЛО прилетело и опубликовало эту надпись здесь
хз, но судя по комментариям — накладываются ограничения на дальнейшее распространение ее PHP файлов по условиям лицензии.
НЛО прилетело и опубликовало эту надпись здесь
как максимум весь WP, который нужен для запуска его темы, как минимум все вызовы и обращения, которые он делает к движку.
НЛО прилетело и опубликовало эту надпись здесь
А причем тут материальный? Он в первую очередь нанес ущерб свободам пользователя, которые защищает лицензия и авторы WP эти свободы пользователям стараются вернуть.
А разработчики тем под «винду» воруют весь код «винды», караул! А создатели скинов к «винампу» стырили «винамп»!
Давайте по другому вопрос поставим: Его там кому-нибудь нафиг нужна без WP?
НЛО прилетело и опубликовало эту надпись здесь
не вопрос — юзайте графику и верстку с другой CMS
Аргументы его смешны и нелепы. Лучше бы он занимался архитектурой CMS, а не лез туда, где ничего не понимает. Глядишь, и WP не жрал бы 32 и более мега памяти на серваках.

> themes interact with WordPress (and WordPress with themes) the exact same way that WordPress interacts with itself

Смешно и нелепо. Теперь все, что с чем-либо взаимодействует, автоматически становится его частью? Да у человека проблемы с основами элементарной логики!

По этой извращенной логике темы рабочего стола и окошек «виндов» тут же становятся частью «виндов».

Это в техническом смысле, может быть и так (не факт, кстати), но вот в правовом смысле никто не может распространять свои условия на продукт труда другого человека, если у в этом продукте не используется часть того, на что у него есть права.

> If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program.

Опять видим проблемы с логикой. У нас на компе вообще все в одной оперативке выполняется — и что?

Кроме того, в оперативке оно комбинируется в момент выполнения. С правовой точки зрения это не имеет никакого отношения к производству плагина или темы и распространению их.

К моменту совершения сделки купли-продажи тема или плагин существуют отдельно от продукта.
Разработчикам WP от этого ни холодно ни жарко. Они в любом случае не участвуют в коммерческой схеме Thesis, так зачем заботиться о спросе на чужой коммерческий продукт?
НЛО прилетело и опубликовало эту надпись здесь
они не наехали, они потребовали соблюдения своих немногочисленных прав. =)
Речь идет о том, что коммерческий продукт приносит пользу cms, а не о том, что вы пишите. ВЫ НЕ В ТОЙ ВЕТКЕ КРИЧИТЕ, УВАЖАЕМЫЙ.
НЛО прилетело и опубликовало эту надпись здесь
Именно в той. Если он хочет приносить пользу CMS — пусть делает это правильно. В противном случае эта «польза» никому не нужна и превращается во вред, когда клиенты «завязаны» на вашей «пользе» деньгами.

Вы путаете теплое с мягким. Он не делает этот магазин для «пользы» CMS, а чисто ради своей выгоды, при этом ограничивая свободы людей, которые будут его использовать. Сорри, но так не прокатит, GPL именно с этим и борется.
Вы в целом правы. Однако это ну никак не вписывается в рамки свободной CMS, коей разработчики хотели сделать вордпресс. Это их выбор, возможно не самый лучший, но всё же имеющий право на существование.
А речь сейчас не идет о рамках свободной cms. Я не согласился с утверждением «ценность всего этого рынка фактически нулевая — люди просто зарабатывают на чужом труде», т.е., я считаю, что наличие качественных дополнений, оказывает положительный эффект на систему, независимо от лицензии этих дополнений. А согласие/несогласие разработчиков самой системы — это уже другой вопрос.
Нет, согласие разработчиков это ключевой вопрос. Они разрешили добавлять к своему коду другой код и на этом начали зарабатывать такие как Thesis. Но коммерсанты решили не исполнять ту часть лицензии, которая им не понравилась. В таких условиях они обязаны либо разрешить распространение кода своими покупателями, либо отказаться от взаимодействия с WP, то есть полностью лишить смысла свой продукт.
Жители страны эльфов, слушайте и не говорите, что не слышали!

При создании темы или плагина для WP разработчик не берет код WP и не делает на его основе нечто.

Как темы для рабочего стола и окошек «винды» не являются частью «винды», так и темы WP не являются частью WP.
<offtop>
Скажите пожалуйста, сложно быть единственным дворфом в 6 миллиардном мире эльфов?
</offtop>
Эльфов поменьше. Они просто думают, что их 6 миллиардов.

На самом деле, ситуация выглядит не 1 дварв на 6 миллиардов эльфов, а 1 дварф-психиатр на 6 эльфов-мессий GPL.
А этот единственный дварф-психиатр — не мессия случайно?
Советую спросить у разработчиков под WP как реализован механизм взаимодействия движка с модулями и темами, а не рассуждать абстрактно. Они вам ответят то же самое, что написано в топике — тема и модуль исполняются в контексте движка, а не через периферийное API. Это и создает лицензионную коллизию. Не будь в этом конкретном случае такого плотного взаимодействия кодов, я бы тоже был на вашей стороне.
Видите ли, я сам делал и плагины, и темы к WP, так что механизм знаю лучше вас.

Да и что, что они выполняются в контексте движка! Темы рабочего стола в «виндах» тоже выполняются в контексте. И что?

Никакого взаимодействия кодов к моменту совершения сделки купли-продажи нет! Тема и плагин поставляются отдельно от WP и не содержат кода WP.

Взаимодействие начинается в момент выполнения программы. А распространяется не скомпонованный в оперативке код, а именно плагин или тема.

Элементарная логика же.
Вот когда в ваших темах не будет вызовов функций WP, тогда и делайте любую лицензию, а в темах Thesis, как ясно из топика вызовы GPL-кода движка есть и они не заменены на собственный коммерческий код.
Молодой человек, вы в состоянии постичь, чем отличаются вызовы функций от использования фрагментов GPL-кода в коде программы?

Если уж на то пошло, то любое обращение к блогу по API, в частности, по RSS — приводит к «вызову функций», «запуску GPL-движка», «компоновке в оперативной памяти» и т.п.

So what?
Во первых я старше вас. Во вторых — да, я знаю что такое поместить в программу код библиотеки для уменьшения написания собственного кода за счёт чужого труда. Это не имеет ничего общего с работой внешнего API, как RSS или даже RPC. Модули и темы WP это мелкие включения в большущий код, которые исполняются только как часть этого кода и пользуются всеми результатами рутинного труда программистов других модулей и движка.
Хорошо, я понял, что вы не в состоянии осилить несколько мыслей сразу. Будем по одной.

1. Содержит ли продаваемый дистрибутив GPL-код?
Вы забываете еще о таких деталях, как способ установки. В GPL это важно.
И что там про способ установки?
Конечно содержит. Он наполнен вызовами GPL-функций из движка WP. Если конечно вы не покажете мне тему WP без этих вызовов.
2. «Наполнен вызовами» или содержит GPL-код этих функций?

Для справки, чтобы вы не оконфузились, вызовы функций, их названия и т.п. не являются с точки зрения права фрагментами кода.
Я так и думал, что вы к этому придеретесь. Но вызов функции внутри программного кода означает подключение библиотеки, а тут лицензия неумолима. Кстати сам факт включения библиотеки не обязан находиться в коде — в этом случае место расположения кода (конкретный каталог) заставляет подключать библиотеки и загружать код темы/плагина в контекст движка. Я понимаю, что как «психиатр на все руки» вы не обязаны глубоко разбираться в технологических деталях. Жаль, что вы воинственно защищаете свой недостаток знаний.
Что именно в лицензии написано о вызове функций библиотеки, распространяемой по GPL?

Повторю еще раз: распространяется дистрибутив, он ничего не вызывает, лежа на диске. И не содержит чужого кода. Так при чем тут GPL?

А запустить его на сервере можно только после распространения и установки, и за это ответственен пользователь. Запуская продукт, он не распространяет его, поэтому ограничения GPL, накладываемые на распространение продукта, неприменимы к данному случаю.
При всем уважении, я сомневаюсь в необходимости цитировать спорную часть лицензии — она скорее всего окажется не достаточно понятной для всех участников дискуссии. Возможно Вам не помешает разыскать сравнение лицензий GPL и LGPL. Они разнятся как раз в аспектах использования библиотечных функций. Учитывая особенности кода WP вы можете ориентироваться на термин «динамическое связывание программы с библиотекой». Надеюсь там вы и найдете нужные уточнения, а я недостаточно умелый для того, чтобы вам это объяснить.
>Повторю еще раз: распространяется дистрибутив, он ничего не вызывает, лежа на диске. И не содержит чужого кода. Так при чем тут GPL?

Давайте возьмём отвлечённый пример: я написал программу с использованием библиотеки libsomething, распространяющейся под GPL (не под LGPL, а именно под GPL). Я распространяю только программу, а библиотеку к ней не прикладываю, указывая её лишь в зависимостях пакета. Т.е. распространяю исключительно свой собственный код, не содержащий чужого GPL-кода, а лишь вызывающий функции GPL-ной библиотеки libsomething.
Вопрос к Вам, как к знатоку лицензирования: нарушаю ли я GPL в этом случае?
По моему мнению — не нарушаете. Но вообще-то говоря, следует обсуждать, нарушает ли это закон, а не лицензию.

Если лицензия «запрещает» в противоречие с законом, приоритет имеет закон.
>По моему мнению — не нарушаете.

Тогда назовите ключевые отличия LGPL от GPL.

>Но вообще-то говоря, следует обсуждать, нарушает ли это закон, а не лицензию.

А с точки зрения закона всё чисто: лицензия — это единственный документ, разрешающий вам использовать код. Если лицензия вдруг недействительна, то прав использовать данный чужой код у вас нет вообще :)
Ключевое отличие, которое не могут понять большинство спорящих со мной комментаторов — это отличие использования ПО от создания другого ПО, содержащего вызовы функций библиотеки, но не включающего GPL-код в свой дистрибутив.

Так вот, вопросы использования касаются только пользователя.

Пользователю лицензия не запрещает практически ничего, пока речь не идет о распространении ПО.

Ни одна лицензия в мире не может запретить кому бы то ни было написать программу, в коде которой будут вызовы функций какой бы то ни было библиотеки.

Даже Билл Гейтс и Майкрософт не могут запретить вам написать свою программу, которая будет вызывать виндовые функции API.
И дело тут не в тексте лицензии, а в том, что написание ПО не может быть признано использованием другого ПО.

Использованием будет заниматься пользователь.
>Ключевое отличие, которое не могут понять большинство спорящих со мной комментаторов — это отличие использования ПО от создания другого ПО, содержащего вызовы функций библиотеки, но не включающего GPL-код в свой дистрибутив.

а) Вы не ответили на прямой вопрос об отличиях GPL от LGPL;
б) «создание другого ПО, содержащего вызовы функций библиотеки» называется «использованием библиотеки» и регулируется лицензией библиотеки.

А то зашибись получается: кто угодно может взять библиотеку и использовать её для написания своего ПО, наплевав на то, что по этому поводу думает непосредственно автор библиотеки? И это я слышу от Вас — знаменитого поборника авторских прав?

>Ни одна лицензия в мире не может запретить кому бы то ни было написать программу, в коде которой будут вызовы функций какой бы то ни было библиотеки.

Расскажите мне, как лицензия «не могла» запретить компаниям «написать закрытую программу, в коде которой будут вызовы функций библиотеки Qt, распространяющейся под GPL» и вынуждала их для этой цели приобретать коммерческую версию. Юристы этих компаний — идиоты, а Вы один — умный?
а) Вы прекрасно знаете об отличиях этих лицензий. мне вам скопипастить сюда тексты чтоль?

б) Под использованием ПО может подразумеваться только его запуск, по крайней мере, в РФ.

Да, кто угодно может написать код, в котором содержатся вызовы библиотеки. Но вот взять и включить библиотеку в дистрибутив уже нельзя.
GPL FAQ:

Q: 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 or a GPL-compatible license?
A: Yes, because the program as it is actually run includes the library.

“Use a library” means that you're not copying any source directly, but instead interacting with it through linking, importing, or other typical mechanisms that bind the sources together when you compile or run the code.

Программа, в «которой содержатся вызовы GPL-библиотеки», взаимодействует с ней в ран-тайме. Следовательно, такая программа обязана быть под GPL.
Можно прекращать спор, автор тезиса с Вами не согласен и сделал доступными свои PHP файлы под GPL.
twitter.com/pearsonified/status/19288707443
Автор «тезиса» может делать все, что угодно со своей темой.

Это никак не отменяет того факта, что GPL не распространяется на плагины, темы и иное ПО, не содержащее в составе своего дистрибутива GPL-кода.

Кроме того, у него написано о split GPL.
энд? Он убрал ограничения, которые противоречили GPL, теперь его лицензия GPL совместима, он может продавать JS/CSS/JPG файлы как его душе угодно (у вордпресс это, кстати, четко прописано), а вот на PHP файлы все в силе. Теперь они GPL совместимы.

Не хотите с ним поспорить? Он как бы тоже на Вашей стороне. Точнее наоборот, Вы на его.
А в чем мне с ним спорить? Он имеет право распространять любые фрагменты своего произведения под любой лицензией. Хочет — хоть все даром раздавать может.

Это, кстати, вполне выход для того, чтобы избежать сутяжничества с сектантами, траты времени и бабла на адвокатов.

Более того, он мог даже и PHP разделить на две части — сделать враппер для вызова функций движка, и открыть только его ;)
Я к тому, что вбить Вам что-то в голову на хабре — крайне сомнительное занятие. Вы настолько зашорены и не приемлите другую точку зрения, что весь процесс становится бесполезным троллингом. Автора! этой темы пресса и то убедили, возможно с ним у Вас получится более короткий поводок и речь таки дойдет до понимания.

Если же Вам удастся убедить его в отсутствии проблем — то я закуплю чипсов и буду смотреть вторую серию дуэли WordPress vs WPThemes
Автора не убедили, а вынудили.

Кроме того, от того, что кого-то убедили, что дважды два будет пять, дважды два не перестанет быть четыре.
Опять 25. Да, вынудили соблюдать закон. Какой ужас!
По закону, как раз, он не был обязан этого делать.

Потому, что GPL не распространяется на дистрибутив, не содержащий фрагментов GPL-кода. Точка.
А не надо никому ничего в голову вбивать. Попробуйте изучить психологию и понять — почему же ваш пафосный тон, капс и абстрактные представления о разработке тем и плагинов под вордпресс не могут убедить в вашей правоте.

Я, например, не советую что-то кому-то вбивать в голову, а просто высказывать свое мнение. Конструктива ваше «вбивание» не принесет никогда — лучше почитайте последний комментарий в этой теме.
С другой стороны (на случай если вы придеретесь к понятию «GPL-код») авторы продаваемого дистрибутива обуславливают работоспособность своего произведения использованием GPL-продукта, без которого их произведение даже не является корректным исполнимым кодом, потому, что программно основано на нем. Тот факт, что движок WP они не дают в комплекте всего лишь нарушает законодательство о правах потребителя и дает вам ложное ощущение, что продукт не содержит спорного кода.
Вы демонстрируете просто вопиющую неграмотность в вопросах, спорить о которых столь опрометчиво беретесь. Без обид только, окей?

Разработчики тем для «винды» тоже не поставляют ее в комплекте с темой.

> авторы продаваемого дистрибутива обуславливают работоспособность своего произведения использованием GPL-продукта

И что? Они используют куски чужого кода? Нет.

Послушайте, уважаемый. Любая лицензия может распространяться только на свой код. На чужой — никогда.

GPL может распространяться только на тот код, который содержит фрагменты GPL-кода.

И усвойте же разницу между вызовом библиотеки и ее линковкой. Страшно подумать, что вы можете оказаться программистом.
Вы демонстрируете просто вопиющую неграмотность в вопросах, спорить о которых столь опрометчиво беретесь. Без обид только, окей?
Позвольте сказать то же самое. Пусть, будучи умным человеком каждый из нас возьмется изучать противоположную точку зрения. Мне ваша понравилась. Как отмазка. Я обязательно выясню какие юридические последствия она несет. Может и вы чем-то обогатитесь от общения.

Повторять доводы, которые вы уже проигнорировали я не буду.
Простите, а кем доказано, что это вызовы функций WP, а не какого-то другого CMS?
Я думаю, что если бы дело дошло до суда и я защищался, то я бы написал программу заглушку, под которой бы и запускал тему. Ну а то, что тема работает и под WP, это — совпадение.
Более того, если принять Вашу точку зрения, то я могу под любой плагин к чему-либо написать «движок» и потом требовать соблюдения любой выбранной мной лицензии на основании вызова функций движка.
>> тема и модуль исполняются в контексте движка, а не через периферийное API

Тоесть если вы напишите программу под GPL, которая загружает какой нибудь мой файл в свое адресное пространство, то я обязан выложить исходник своего файла? Вы в своем уме?
Вообще-то нет. Программа под GPL может загружать и использовать закрытую библиотеку без лицензионных проблем. А вот закрытая программа не может базироваться на GPL-библиотеке.
Вы уверены, что понимаете смысл слов «базироваться на библиотеке»?
В данном случае без библиотеки WP код темы нигде не применим. В этом случае я на 100% уверен во фразе «базироваться на библиотеке»
Кому надо ядро без модулей? Благодаря разработчикам и кучей производных в том числе и платных, вордпресс стал тем кем он стал. И вместо конструктивного диалога и сменой лицензии, на более приближенную к реальности ребята пошли путем подозрительно напоминающем путь патентного тролля.
Патентного тролля наоборот)) Нет, я не сказал, что я разделяю их позицию в вопросах жёсткого использования GPL. Но просто это их выбор — если они не хотят перелецинзировать под коммерческой лицензией, то и разработчики дополнений обязаны соблюдать их требования.
1.0-RC1 была опубликован первого января 2004 года. За шесть лет было написано огромное количество плагинов и модификаций. По большей частью авторы которых даже не задумывались о лицензировании. За счет этого популярность движка выросла. И вот на дворе 2010 год движок стал популярен и авторы внезапно прозрели что 6 лет творится беспредел и надо с этим что то делать. Ассоциаций с патентными делами последних лет по прежнему не возникает?
Ну как бы это проблема этих авторов, которые о лицензировании не задумывались. Все последствия лежат именно на них и это правильно во всех смыслах и направлениях.
Надо прикрутить сюда голосование — кто считает правыми Wordpress, а кто Thesis. Я вот за Thesis.

Я не считаю, что все плагины и темы для GPL-продуктов должны быть GPL-ными. Это ущемляет права разработчиков, пользователей, стопорит разработку и прогресс. Исходя из такой логики я вообще не могу создать закрытую прогу под ОС Linux, потому что прога эта по-любому будет работать в окружении ОС, «её код будет вызывать процедуры базовой системы», память, процессорное время и ввод\вывод планироваться линуксом и т.д. Но это же чушь — таких программ много и никто на них не наезжает.
Права разработчиков в контексте ваших слов ущемляет их собственная лень. Каждый имеет 100% право только на принадлежащий ему код. Код модулей и тем не имеет смысла без самого движка, а использовать движок можно только под GPL. Таким образом у разработчиков есть право только либо писать свое под GPL, либо покупать коммерческий движок, либо писать 100% кода движка, модулей и тем.
>> Код модулей и тем не имеет смысла без самого движка

Ну почему же, я могу напиться и пробовать спеть этот код под гитару. Это вполне себе осмысленно.

Так же я могу печатать этот код на туалетной бумаге для лечения геморроя свинцовым тонером.
Смысла как раз в таких действиях не прибавится. =) А вот право такое у вас наверно есть, если вы его автор. Желаю вам и дальше творчески реализовывать свои права.
Исходя из такой логики я вообще не могу создать закрытую прогу под ОС Linux, потому что прога эта по-любому будет работать в окружении ОС


Это не так. Просто ваша программа не должна содержать GPL-кода. Или покупайте коммерческие/BSD библиотеки, или пишите их сами вместе с остальным своим кодом.
НЛО прилетело и опубликовало эту надпись здесь
ваши темы не имеют смысла без исполнения внутри GPL-кода. Так уж построен движок WP.
Проприетарная линуксовая программа имеет смысл без использования линукса?
*без исполнения в среде OS Linux
Так вот и темы, и плагины не содержат GPL-код, представляете? Непостижимо, да?
с точки зрения программной логики, модули и темы WP (и Drupal) это куски кода, которые включаются внутрь GPL-кода движка и исполняются в едином потоке выполнения программы. Модули и темы WP не могут быть исполнены иным образом и специально созданы с включением кучи вызовов подпрограмм самого WP (так что не надо так категорично заявлять, что нет GPL-кода в них)
Ух-ха-ха-ха! Ну я же говорю — проблемы с основами элементарной логики. Вы уже путаете местами часть и целое.

От того, что тема «не может быть исполнена иным образом», в ней не появляются волшебным образом куски GPL-кода.

К слову, тема еще как может быть исполнена — выдаст пустой экран и ошибку PHP, но запустить PHP-файл вполне возможно ;-)

Продается не содержимое оперативной памяти сервера, а дистрибутив темы. К моменту сделки купли-продажи ничто никуда еще не скомпоновано и не включено.

К слову, от того, что какая-то программа при исполнении что-то компонует в оперативке, авторы этой программы не получают права распоряжаться всем, что она компонует.
Демагогия, извините. Повторяться не вижу смысла — наверно я недостаточно понятно для вас пишу.
Хорошо, давайте так: завтра я сажусь и пишу свой проприетарный WordPress (как обычно, с блекджеком и шлюхами), не содержащий ни единой буквы оригинального WordPress'а или вообще любой GPL-программы, но под которым, тем не менее, как-то заработает вышеуказанная тема или плагин. Громко заявляю, что возможность применения темы или плагина в оригинальном Вордпрессе чисто случайна и вообще не понимаю как так вышло, что они совместимы.

Теперь явно видно, что тема имеет смысл и может быть использована вне контекста WordPress и GPL-лицензий. Так ведь?

А теперь внимание, вопросы:

1. Как наличие или отсутствие какой-либо третьей программы (моего проприетарного вордпресса) влияет на то, под какой лицензией распространяется тема или плагин?
2. Какого размера должен быть этот мой вордпресс? А если он будет из одной строки, загружающей тему и выводящей «Ок! Тема работает!» — этого хватит?
Вы понимаете, что исходя из вашей логики «коммерческие/BSD библиотеки» не могут существовать? Ведь какими бы они коммерческими не были, они все равно должны использовать API линукса.
Вы ошибаетесь. «API линукса» не требует лицензировать под GPL всех, кто к нему обращается. И закрытых (а тем более BSD) библиотек под линукс довольно много.
На авторство разработчика никто не покушался, а значит его права не ущемлены, но что бы его продукт был в ладах с уже существующим от которого он и зависит, он должен быть под GPL. По крайней мере та его часть которая непосредственно работает с ядром WorldPress.
Я для своего блога написал wordpress тему на XSLT. Т.е. есть небольшая php часть которая генерирует XML и XSLT шаблон. Смогу ли я XSLT шаблон распространять не под GPL а php часть под GPL??

//Просто интересно, мне пофиг как ее праспространять на самом деле.
конечно можете, но его могут и не купить — открытый же код на php его генерит бесплатно, если я правильно понял ваш пример.
Не совсем. PHP код генерирует XML, который потом обрабатывается XSLT шаблоном. Я, допустим, продаю готовый XSLT шаблон (который не генерируется, я его один раз написал и продаю).
Кстати, XSLT может выполняться НЕ в адресном пространстве WordPress — сторонним XSLT процессором или вообще прям в браузере.
так скорее всего можно будет поступить =)
Прикольно, разработчики успешного продукта сами начали рубить сук, на котором сидят. Вордпресс далёк от идеала, но у него есть огромный плюс — огромное собщество, которое снабжает CMS необходимыми плагинами и темами оформления. Если данный процесс получит дальнейшее развитие и дойдёт до суда, то многие рзработчики тем соскочат с этого поезда и выберут другой, от греха подальше.
В том и загвоздка, что Tesis не снабжает WP своими темами, а только пользуется работой сообщества для легкости создания и распространения собственного коммерческого продукта.
Помнится, когда ещё не вышла джумла 1.5, вокруг неё почти аналогичный скандал разгорелся. Только не про темы, а про дополнения. Кричали, верните лицензию, пророчили, что многие коммерческие разработчики спрыгнут с джумлы, ибо не смогут создавать дополнения из-за GPL. В итоге джумла по популярности сейчас не уступает вордпрессу. Коммерческих дополнений едва ли не больше, чем бесплатных. А о том скандале помню только потому, что как раз знакомился с миром веб-разработки.
аналогичные дискуссии периодически всплывают при обсуждении модулей для LiveStreet
О как. Не замечал, хотя и почитываю их комьюнити.
Пора разработчиком WordPress выпиливать уже PHP из шаблонов
И что? Останется смарти или аналогичный шаблонизатор, где всё равно будут дёргаться системные вызовы а-ля wp_list_pages или wp_list_categories, которые всё равно перед этим уже дёргались, когда грузилось ядро WP. Всё равно получится, что шаблоны ВП совершенно неотделимы от самого ВП. И для другого движка из них можно взять только дизайн и вёрстку.
НЛО прилетело и опубликовало эту надпись здесь
Несопоставимые с выгодой трудозатраты. К тому же всё равно сначала будет грузиться ядро, потом по второму кругу те же запросы к базе, но уже от шаблона.
Хотя мысль интересная.
Вот только автору Thesis это уже не поможет, потому что закон обратной силы не имеет. В смысле, что скандал разгорелся вокруг текущей версии темы, следовательно, что бы он ни делал с будущей версией, а текущую ему придётся сдать.
Вместо вызова функции из ядра wp_list_categories() можно просто вставить текстовый тег типа {categories}. То есть шаблон вообще ничего не вызывает из ядра ВП, лежит бревном на диске, а сам ВП загружает файлик шаблона и вместо этого тега, вызывая свою функцию, отображает список категорий. Сам по себе шаблон теперь не содержит вообще никакого программного кода (кроме JS), и то что эта шкура не будет работать с другим движком это никакой не довод навязывать GPL.

Да и вообще желательно код от разметки отделять.
Поддерживаю
Много веб-студий делают сайты на WP и делают это за деньги и немалые, независимо от того, насколько модифицирован дизайн и расширен функционал.

Вот эта контора например e-project.com.ua/services берёт денег за базовый функционал.

и в чем проблема?
Проблем нету, есть вопросы. Почему дополнения должны быть бесплатными, если в это же время веб-студии могут брать деньги за банальное голосование? за возможность добавлять новости на сайт на базе WP?

Почему программисты должны работать на карман дяди Сэма?

Сегодня вы пишете плагин, а завтра его дядя Сэм продаст какой-то фирме — вот вся суть.
А почему дополнения должны быть бесплатными? Это откуда Вы взяли вообще?

Потому что программисты хотят работать на карман дяди Сэма, либо же они идиоты. Иначе выбрали бы какую нибудь другую ЦМС, с более подходящими политиками лицензирования.

Вас что, кто-то заставляет делать модули для WordPress? У нас вроде как крепостное право отменили в 1861
В новости написано же «По условиям лицензии все дополнения к CMS должны также выпускаться под GPL, но далеко не все разработчики выполняют их.»и далее в том же направлении.
Кто вам сказал, что GPL = бесплатно? Не путайте понятия «бесплатный» и «свободный». Тем более, что в русском языке, в отличии от английского, они еще и разными словами обозначаются.
Почему вы решили, что в таблице список функционала на основе базовых функций и дополнительных плагинов Wordpress? Здесь описаны услуги отдельных скриптов, которые мы можем написать сами, или внедрить готовые на разные CMS. Сами плагины, или модули мы не продаем, мы продаем услуги по настройке и их внедрению. Никто не мешает тому же клиенту все сделать самому (если он сможет), поставить дополнительный плагин, если ему нужно…
Имею ввиду обратную связь и голосование при условии использования Wp.
конечно же, при использовании ВП денги за такое не берутся, в таблице указаны именно отдельные скрипты — отдельно от ВП…
Немного мыслей от человека, который делал темы для вп:

>php-файлы тем представляют собой отдельно поставляемые части самого Wordpress

Обалдеть, теперь мой файл «send.php», являющийся формой отправки неких данных, становится частью WP.

>любая тема оформления, созданная для Wordpress, будет производной от основных тем CMS

Непонятно, как моя тема будет производна от основных тем? Это же целая глупость! Если тема использует функции WP, которые использованы в «основных темах CMS» — она не будет являться ее производной. Или шапка файлов:

/**
* @package WordPress
* @subpackage themename
*/

Это уже заимствование? Это глупо.

Относительно поддержки тем.
Да, темы необходимо поддерживать. По одной простой причине — движок ВП обновляется, используемые функции могут быть изменены, поэтому да, темы нужно поддерживать.
разработчики Wordpress решили сами выкопать себе могилу, не иначе. Кому их CMS нужна будет без расширений, в т.ч. платных. А хорошие бесплатные решения имеют тенденцию переходить в платные + lite-версия или что-то подобное.
помнится, подобная ситуация была с какой-то игрой. где сторонние разработчики делали дополнения, но по лицензии они не могли их продавать, а только распространять бесплатно.

выход они нашли. распространяли дополнение без графики, отдельно, в виде неработающего куска кода.
и уже за деньги продавали библиотеки с изображениями, текстурами, моделями, звуками.

так можно поступить и с темами для вордпресс — шаблоны с фрагментами оригинального кода — под ГПЛ.
цсс и изображения — отдельно, за деньги.

теоретически это не должно нарушать «букву закона». но будет ли это соответствовать его духу?
будет. В вордпрессе изначально прописано что все ресурсы, хтмл и цсс файлы можете лицензировать как угодно. Проблема только во взаимодействующих PHP.
1) о лицензиях

Часто утверждается (в частности, во многих комментариях выше), что если вы используете чей-то GPLed код, распространять свой вы также обязаны под GPL. Это FUD класса «GPL is cancer» — даже в этом случае GPL распространаяется исключительно на чужой код, а не ваш.

Другое дело, что если вы не согласны с условиями GPL, тогда у вас на чужой код попросту нет никакой лицензии — вы использовали чужой код, который попадает под законы об «ИС» (read: copyright) по умолчанию, что обычно запрещает любое его использование.

Ньюансы формулировки? Отнюдь.

Опять же, на практике в большинстве случаев нарушающий код не выпускается под GPL (как в случае пары embedded усройств, где нарушения были скорее проявлением халатности), а лицензируется у авторов или же выпиливается нафиг (scummvm vs atari etc).

2) что разрешает GPL

FSF (как, впрочем, и разработчики Linux [2]) придерживается мнения [1], что GPL оговаривает любое обращение к коду (API, линковка и пр.). Спорить (равно троллить и судиться) об этом можно долго — благо, желающих хватает — для остальных есть LGPL. Опять же, на данные лицензия не налагает никаких ограничений — можете пользоваться system/exec/etc сколько хотите.

3) по теме

Кто тут прав? ХЗ. Как я понимаю, в данном случае под GPL выпущен весь код WP, и «темы оформления» не просто обращаются к какому-нибудь API (здесь см. п.2) — хотя, вероятно, и это не так существенно — видимо, части кода Thesis действительно выдраны из WP [3].

Стоило ли WordPress выбрать другую лицензию? Возможно. Но это их дело. Стоило ли им кидаться какашками? Вряд ли. Это, опять же, их дело. Но если код действительно GPLed, то кричать «на баррикады! как же не линковать gpl код? мы ж помрём с голоду!» не стоит.

Здесь мне ешё немного неясно — может быть, эксперты WP разъяснят: если речь идёт действительно о «темах оформления», то почему разработчиков не устраивает выпуск кода под соответсвующей и данных под проприетарной лицензией? И, если код этот настолько сложен, что заменить его настраиваемыми вызовами system/exec не представляется возможным, то не является ли он действительно «derivative work»?

И ещё раз: никто не может заставить ни Thesis, ни Novikov'а распространять свой код под GPL. Но запретить пользоваться GPL кодом, не соблюдая условий лицензии — вполне.

refs:

[1] см. GNU GPL: How to Apply These Terms to Your New Programs
[2] en.wikipedia.org/wiki/Loadable_kernel_module#License_issues
[3] ma.tt/2010/07/syn-thesis-1/#comment-481845
интересно чем отличается wordpress от joomla в плане плагинов.
10. Я написал Компонент, Модуль, Шаблон для Joomla. Должен ли я распространять их по лицензии GPL?

Нет. GPL позволяет писать свои собственные расширения для Joomla и распространять их по любой, выбранной Вами лицензии.

Публикации

Истории