Одно из самых значимых и весомых преимуществ GPL заключается в том, что эта лицензия позволяет пользоваться трудом других людей; вы можете легко взять любую тему, плагин или любой компонент программы с GPL-лицензией, форкнуть его, настроить его по своему предпочтению или использовать его в качестве основы для создания совершенно нового решения. Единственное правило, которое вы должны соблюдать – это выражение благодарности автору оригинала; форкнутый вами элемент должен распространяться под той же самой GPL-лицензией. Это очень мощный принцип, прекрасный в своей простоте.
К сожалению, иногда случаются некоторые разногласия и обвинения – люди тратят много времени, разрабатывая компоненты программного обеспечения с открытым кодом, которые, если они выпущены под лицензией GPL, может бесплатно использовать любой человек в своих целях. Таким образом, вы можете столкнуться с ситуацией, когда платная программа предлагается бесплатно или изменяется и продается под другим названием. Важно отметить то, что, несмотря на свободное использование кода GPL, авторское право по-прежнему применяется к названию бренда, поэтому вы не можете продавать чей-либо плагин, используя то же самое название, однако вы можете изменить название и любые ссылки в исходном коде, после чего уже выпустить его под другим именем.
Не так давно был запущен очень хороший сайт WP & Legal Stuff, который разъясняет концепцию GPL . Также вы можете прочитать некоторые другие статьи по данной теме.
Форкинг – это процесс использования стороннего кода и изменения его для разработки своего собственного решения. В этой статье я рассмотрю связанные с WordPress продукты, которые были форкнуты другими людьми.
WordPress
Собственно, сама система WordPress является форком от блогового программного обеспечения b2 / Cafelog. b2 – блоговый скрипт с открытым кодом, созданный Michel Valdrighi, который впоследствии прекратил выпускать обновления. В 2003 году Мэтт Мулленвег публиковал пост о том, что его заинтересовала идея форка b2, и первым же комментарием к этой записи было сообщение от Майка Литтла:
«Мэтт, если ты серьезно заинтересован в форке b2, я хотел бы принять участие в этом. Я уверен, что найдутся и другие люди в сообществе, которые поддержат эту идею. Возможно, что публикация сообщения о форке на форуме b2 будет хорошим начальным шагом».
Мэтт и Майк объединили свои усилия и 27 мая 2003 года выпустили версию 0.7 WordPress.
История WordPress – прекрасный пример того, как должна работать GPL – часть программы, которая больше не обновлялась, была форкнута, чтобы создать на ее основе нечто новое и активно поддерживаемое, и сегодня WordPress охватывает более 20% всех сайтов в сети!
Ghost
Ghost вырос из идеи форкнуть WordPress, чтобы создать новую платформу для ведения блогов, однако впоследствии разработчики решили написать программу с нуля, используя технологию, отличную от WordPress. Все же сама идея того, как Ghost был основан, сформировалась под влиянием WordPress, даже учитывая тот факт, что код WP не использовался.
Проект был профинансирован при помощи краудфандинга на KickStarter, где он собрал GBP196k (начальная цель была всего GBP25K). Идея Ghost заключалась в том, что WordPress перестал быть простым инструментом блогинга и вырос в более сложную CMS, а Ghost хотел вернуться к корням и сфокусироваться на блоговом аспекте.
WooCommerce
WooCommerce – WordPress-плагин, используемый для создания сайтов электронной коммерции, ставший очень популярным после своего запуска. Сегодня, охватывая более 20% рыночной доли среди других e-Commerce платформ, этот плагин бросает вызов самому главному решению – Magento.
WooCommerce – форк плагина JigoShop. Именно тогда основатели WooCommerce также наняли двух разработчиков JigoShop: Майка Джолли и Джея Костера. Во время запуска форка была некоторая полемика о том, как WooThemes провели форкинг, правильно ли они наняли разработчиков JigoShop, которые трудились в этой компании полный рабочий день больше года. Скорее всего, WooThemes пытались сначала приобрести права на JigoShop, однако они не смогли прийти к соглашению, поскольку создатели JigoShop считали, что Woo «серьезным образом недооценивают» бизнес.
Несмотря на первоначальные опасения за судьбу плагина, WooCommerce стал, по моему мнению, лучшим решением для электронной коммерции на WordPress. Я лично использую его на одном из своих сайтов, и считаю, что он работает очень хорошо; есть целая экосистема плагинов и тем, связанных с ним, которые подходят для разных типов коммерческих сайтов.
CMS Commander
CMS Commander – плагин, позволяющий управлять многочисленными сборками WordPress из одной центральной локации. Я узнал, что этот плагин является форком ManageWP, из следующего комментария:
«Удивительно видеть, как Томас и его команда взяли код ManageWP (это пошло на пользу – они могут его свободно использовать под GPL-лицензией, и мы признательны за эти усилия) и развили его в совершенно ином направлении, сфокусировавшись на контенте сайта в противоположность нашему фокусу на развертывании, обслуживании и защите сайта.
Это – настоящее великолепие среды open source».
CMS Commander в большей степени сосредоточен на генерации контента для многочисленных WordPress-сайтов. Он включает в себя инструменты для автопостинга из разных API-источников, в то время как ManageWP сфокусирован на предоставлении инструментов обслуживания, бэкапов, обновлений и т.д. Это хороший пример плагина, который был форкнут и развит в совершенно ином направлении.
WP Sync DB
WP Sync DB – это «Wordpress-плагин, который позволяет вам получать, добавлять и синхронизировать таблицы базы данных между разными сборками WordPress». Он был форкнут от популярного плагина WP Migrate DB. К сожалению, страница плагина на Github подвергалась запросу на удаление по закону DMCA, поскольку она использовала защищенный авторским правом контент с сайта WP Migrate Pro, что нарушает правила GPL. С тех пор это было поправлено, и вы можете снова скачивать плагин.
Советы по форкингу
Если вы хотите сделать форк проекта с открытым кодом, вот некоторые подсказки, которые помогут вам сделать это правильно:
- Если проект выглядит заброшенным, попытайтесь сначала связаться с его автором и узнайте, можно ли «позаимствовать плагин».
- Убедитесь в том, что вы не нарушаете авторское право или торговые марки
- Дайте новому проекту уникальное название, чтобы его не путали с оригиналом
- Оставьте благодарность автору в исходном коде и документации
- Убедитесь в том, что ваша новая работа выпущена под той же самой лицензией GPL