AGPL

Материал из Неолурк, народный Lurkmore
Перейти к навигации Перейти к поиску
Суть AGPL

AGPL® (gnu. Affero GPL, рус. Аферистская GPL, греч. ΤΓΔA 'Τρωϊκός' Γενική Δημόσιο Άδεια) — усиленная версия универсальной общественной генеральной лицензии GPL, которая призвана погубить ваш бизнес на корню за счет требования передать общественности код, который вы рассчитывали спрятать, завернув его в веб-сервис или просто сайт и брать плату за процент или электронные товары.

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

Суть кратко[править]

Продается сыр, на вид бесплатно.

LGPL 2.1 < GPL 2.0 < AGPL 3.0 < Столлман

  • AGPL := обязан выложить копию ключа от квартиры + GPL, или покупай подписку у авторов за вертолет
  • GPL := обязан выложить код и использовать только из-под AGPL или GPL, Affero рекомендует обновить до AGPL
  • LGPL := имеешь право только линковать, часть кода под LGPL обязан выложить, Столлман рекомендует обновить до GPL
  • Linux := ядро в заложниках GPL 2.0, разрешены переговоры через свободные API и ABI с любыми программами[1]

Вводное слово о LGPL[править]

Джокер и тукс

В стародавние времена (1991) были созданы лицензия GPL v2 и LGPL v2. Первая позиционировалась, как «свободная лицензия» для программ, а вторая — для библиотек. Но люди просто не поняли Ричарда Мэттью Столлмана, который имел в виду, что LGPL не для всех библиотек, а просто меньшая, то есть менее жесткая. Пришлось переименовать LGPL из «библиотечной» (library) в «меньшую» (lesser), чтобы свободолюбивые программисты перестали дарить бизнесу кучу кода даром, а вместо этого использовали жестко освобождающую копилефт лицензию GPL v2. Жесткость состоит в том, что если в ваш код попал хотя бы кусочек по лицензии GPL v2, то вы обязаны выложить весь свой код на обозрение общественности. Столлман таким образом выступает в роли своеобразного Робина Гуда, отнимая свободу копирайта прибыль у богатых интеграторов и отдавая ее бедным стартаперам (в современном мире это действие называется «копилефт заражение»).

LGPL изначально отличалась от GPL лишь тем, что LGPL-код можно использовать из кода под закрытой коммерческой лицензией, как динамическую библиотеку, а а GPL код — нельзя. При этом LGPL код можно проапгрейдить до GPL, то есть «принять жесткие меры» против копипастеров, лишив их преимущества в конкурентной борьбе. Стабильной версией для второй ветки языка gnu являются парнокопытноидущие GPL 2.0 и LGPL 2.1.

Столлман до сих пор грустит, что его поняли неправильно: он хотел дать народу свободу на чтение кода программ, а вовсе не бесплатное использование кода чужих программ, как его подразумевают пираты и стартаперы. Компьютерные философы находят причину недопонимания в трудности однозначного восприятия разницы между корнями слов freedom и liberty между народами, но мы не об этом. Особую боль ему доставило, что куча людей, не читая его лицензию, публиковали все подряд библиотеки под LGPL, предоставив компаниям возможность невозбранно использовать результаты своего труда в коммерческих целях за счет динамической линковки. А он-то хотел, чтобы люди осознанно выбирали между GPL, LGPL и другими лицензиями. Видимо беда в том, что Столлман до восхождения на трон gnu сам был грамотным технарем и программистом и не ожидал, что многим людям читать лень.

Обнаружение лазейки[править]

Bsd to guis.png

Столлман конечно молодец, постарался со своей GNU Ω GPL ®, как и Линус © Linux™, но не тут-то было. Смышленые комбинаторы стартаперы нашли лазейку в мир GPL через software-as-a-service (SaaS) и web service. На языке простых смертных это можно объяснить так: вы берете код под лицезнией GPL и LGPL свободолюбивых программистов, заворачиваете его в виде лендинга GUI или ajax API и поставляете лидам клиентам по протоколу HTTP с доступом по JavaScript. Этот метод неожиданно удовлетворяет оговорке в условиях GPL о праве использования кода для своих нужд в продукте без публикации самого продукта. То есть если вы не продаете сам интернет-магазин, а лишь продаете через него другие элитарные, электронные или бытовые продукты, то прокатит.

К недостатком такого подхода имеет смысл отнести то, о чем яростно кричали в свое было время молодости и Столлман, и Линус: долго, старательно и жадно пряча правки в коде на своем закрытом сервисе, вы однажды приходите к тому, что ваши штатные программисты не справляются с числом дыр (уязвимостей) и багов (ошибок), накопившихся в системе[2]. Таким образом число багов умножается на число программистов и делится на коэффициент погрешности, вычисляемый из величины среднего опыта и здоровья участвующих программистов.

AGPL — суровая заплатка к GPL[править]

тройная вилка из народных сказок

Как говорится: нет худа без добра[3]. С 2000 по 2001 годы Столлман беседовал с Генри Пулом о разрешении этого вопроса с дырой в GPL, при участии Affero, Inc.[4]. Результатом этих бесед стала публикация AGPL v1 в 2002 и AGPL v3 в 2007, призванные разрешить неоднозначность толкования GPL в пользу комбинаторов, использующих софт под GPL для продажи своих электронных продуктов (см. выше). А для любителей халявы, которые читать любят меньше была преподнесена AGPL, которую могут грамотно использовать богатые компании для уничтожения более мелких (либо захвата в свои клиенты или штат). Делать это очень просто: нужно всего-лишь покрыть свой код двойной лицензией AGPL + коммерческая[5], выложить на просторы github интернета и разрекламировать. Когда новоиспеченный комбинатор, заметив халяву, использует его в своем интернет-магазине, то компания, владеющая копирайтом на код, предъявит ему через своих адвокатов требование тройной вилки из русских сказок: публикуй общественности код своего интернет-магазина (AGPL), проплачивай ежемесячно наш коммерческий вариант лицензии на этот код (ежемесячная многодолларовая такса) или доделай качество своего интерент-магазина и переходи в подчинение в наш штат (M$, IBM и друзья).

Метод этот подобен методу отлова шаловливых рученок на honeypot (горшочек с медом) и методу Троянского Коня (шутл. Τρωϊκός). Первый более известен среди технарей, второй — среди любителей эллинской истории и/или древних языков. Деревенский люд также любит в таком случае вспоминать про сыр в мышеловке.

К слову сказать, Столлман не против, если ты, анонимус, будешь закрыто использовать код под GPL 2+ в своем интернет-магазине, но никогда не используй AGPL, если только не хочешь вспомнить шахматы, русские народные сказки (вилка) и обанкротиться. Есть предположение, что Столлман не против, так как сам так делает, но не будем о грустном. Есть альтернативное мнение, что Столлман просто делает вирусную рекламу крупным компаниям, которую ему хорошо проплатили, но мы же не Зог, чтобы в такое верить. В общем для «интенет-магазина» с закрытым кодом выбирай из: GPL 2+, LGPL 2.1+, но не забудь, что Линус дал добро на GPL 2 only[1] для кода своего ядра, а не GPL 2+, как хотел Столлман (так что код ядра не правь, зря силы потратишь).

BSD наносит ответный удар[править]

           .          .
 .          .                  .          .              .
       +.           _____  .        .        + .                    .
   .        .   ,-~"     "~-.                                +
              ,^ ___         ^. +                  .    .       .
             / .^   ^.         \         .      _ .
            Y  l  o  !          Y  .         __CL\H--.
    .       l_ `.___.'        _,[           L__/_\H' \\--_-          +
            |^~"-----------""~ ^|       +    __L_(=): ]-_ _-- -
  +       . !                   !     .     T__\ /H. //---- -       .
         .   \                 /               ~^-H--'
              ^.             .^            .      "       +.
                "-.._____.,-" .                    .
         +           .                .   +                       .
  +          .             +                                  .
         .             .      .       -Row          Death Star (1)

Анонимус, ты ведь в курсе, что Linux — открытое ядро многих платных систем и решений? Например, Ubuntu и Android приносят немалую моржу своим владельцам. Фишка в том, что любителям халявы, коих в развивающихся и развитых странах миллионы, говорят, что «вы получите это совершенно бесплатно в отличие от Win и Mac, хватайте, пока не разобрали», а потом берут деньги за сопутствующие расширения, облачные интернет сервисы и поддержку.

Еще на заре становления Windows и Linux (до нулевых) некоторые пираты и комбинаторы осознали, что GPL им почти никакой свободы в их понимании не дает. И тогда были рождены три новых *BSD магната: FreeBSD, NetBSD и OpenBSD. Каждая из этих ОС преследует свои личные цели, но суть сводится к тому, что их ядра находятся не под лицензией GPL, как у Linux, а под вариацией некопилефт лицензии BSD. То есть их код ты, анонимус, можешь модифицировать и использовать в своем закрытом продукте невозбранно и без ограничений: без завертывания GPL 2 в веб-сервис и LGPL в библиотеку. И тебе даже не придется публиковать свой код, халява, ловись! Естественно есть свои подводные камни: это подходит только для серверов, так как прикладные программы под FreeBSD программисты редко пишут, нерентабельно. И всего множества драйверов оборудования ты с BSD не получишь. Но тем не менее, бывалые мужики халяву оценили[6].

MIT — альтернативная BSD некопилефт лицензия, и ее уважают больше, так как BSD опозорилась на заре своего становления четвертым рекламным условием, идущим пунктом 3, который позже был вырезан. Но злопамятные ничего не забывают. Linux с нуля не перепишешь, поэтому великие комбинаторы предпочитают использовать для своих быстрых доходных решений чаще gnu Linux, чем bsd FreeBSD, да и поклонников среди программистов у последнего меньше.

Эпилог про мечту Робина Гуда[править]

Бывалый Робин в раздумьях

Каждый Робин Гуд, в своих заоблачных мечтах, хочет урвать права, ресурсы или деньги у богатых и отдать бедным. Вот только на чьей стороне он играет на практике? Допустим вы — Столлман или Линус и решили сделать код общедоступным для стабилизации против багов или just for fun. Но что вы получаете на практике? Вот сисдит в офисе компании программист и выбирает, какой кусок свободного кода можно использовать для казино с блекджеком интернет-магазина. Видит, что вместо свободного кода (BSD, MIT) все пестрит освобождающим кодом (копилефт, GPL), защищенным копирайтом GNU. А компания требует создавать код без стронних лицензионных ограничений. В итоге многим офисным программистам приходится многократно писать велосипеды, обзывая это ноу-хао кодом, соответсвующим OOP и MVC. Получает ли в такой ситуации наш Столлман Робин Гуд свой профит от уменьшения количества багов в системах? Нет, не получает, так как типичные ошибки повторяются многократно, безгрешные программисты слишком дорого стоят, существуют только в вакууме своих фантазий и то недолго. Получают ли системные архитекторы свой профит от того, что люди, изучив историю и теорию, не пишут вновь и вновь велосипедов? Может и получают но только в том виде, что тогда никто не может составить конкуренцию компаниям, изначально предоставившим подобные решения, со скрытыми внутри костылями и нагромождениями, без капли рефакторинга. Но больший профит получают те, кто продвигают свои программы, операционные системы, фреймворки и интернет-сервисы. Так на чьей стороне сыграл Робин Гуд? Видимо на стороне монополии крупных компаний и конечных пользователей-потребителей.

Есть один не очень удачно поставленный фильм Обитаемый остров 2009 года, по фантастической повести из Трилогии Каммерера братьев А. и Б. Стругацких. Так вот там есть такие люди, которых называют подпольщиками, или простите выродками (в авторской лексике), которые тоже играют роль Робинов Гудов, сражаясь с Неизвестными Отцами, стоящими у власти. Вот только, когда любого подпольщика спрашиваешь, что он сделает, когда победит, тот оказывается просто мечтает занять место Неизвестных Отцов, а вовсе не подарить народу свободу. При этом наличие подпольщиков косвенно поднимает авторитет и усиливает власть Неизвестных Отцов. Но это уже философия и оффтоп. Анонимус, лучше читай книги.

Наглядное дерево удовольствия[править]

License tree.png

Примечания[править]

  1. 1,0 1,1 The Linux Kernel is provided under the terms of the GNU General Public License version 2 only (GPL-2.0), as provided in LICENSES/preferred/GPL-2.0, with an explicit syscall exception described in LICENSES/exceptions/Linux-syscall-note, as described in the COPYING file.
  2. Каждому из программистов постоянно хочется добавить в код свою уникальную неповторимую великолепную фичу (возможность) вместо того, чтобы упрощать и стабилизировать код, написанный их предшественниками.
  3. на зверя страшного найдется свой однажды волкодав
  4. неофициально известная среди славянских народов как Аферистская Корпорация (прим. ред.)
  5. Пример AGPL-яда
  6. ArcaOS Noae … includes device drivers for a number of network adapters, either using Arca Noae’s MultiMac technology, which employs FreeBSD driver code, older IBM and third-party-supplied drivers, or a selection of GenMAC drivers.
Internet2.png Великая сеть, которая переменила течения мира
Это интернет, деткаИнтернетыДаркнетУведомления в браузереВеб-скрейпингWWWПросмотр стрима в фонеWeb ArchiveИнфоповодОткрытый проксиСайтБраузеркаБугагашечкиДейтингЗаработокИдентификация пользователейИмиджбордаИмиджхостингИнтернет-магазинИнтернет-сервисыПокровитель интернетовКаталог сайтовАссоциация блогеров и агентствОлдфагЧебурнетАнкетаАватарИзоляция российских сайтовВидеохостингТильтGoogle дуракИнфобизнесменStalinism.ruРеестр запрещённых сайтовФайлообменникФотобанкХакеры, крекеры, спамы, кукиЗакат эпохи анонимусаТроллингВеб 3.0Интернет-энциклопедияСтриминговый сервисБлокировщики рекламыВеб-камераИнтернет-знаменитостьGoogle ChromeOperaMozilla FirefoxSafariFirefoxHttpHTTPSКритерий ХомакаПеревод в онлайнОблачное хранилище404 ошибкаДвухфакторная авторизацияВикипедияЭлектронная почтаРунетТвиттерHTML5Moswar.ruRu-CenterCerberxБизнес 18+ПИОННенавистьПолитика предотвращения распространения ватной чумы
ОбщениеBadComedianГерман Клименко3,5 анонимусаБокс по перепискеПоисковая оптимизацияВирусное видеоАнальная модерацияAnonymousWebMoneyButthurtIRC (/me/quit#[email protected]) • Интернет-пейджинг (MirandaQIPСкайпICQЖаббер) • ГостевухаЦитатникЧат (Вап-чат) • ВотсапПездузаТелеграмПсевдоинтернетКаомодзиАвтоудаление сообщенийIRC-каналЧат-ботКопипастаПлейлистВзлом телеграмаFinal Data (веб-сериал)СтримыСкайлинкHid24.comРелиз-группаОфициалкаЧат-рулеткаНобр
БлоггингАлександр ГагинЕвгений АнтиповXatabФильтр нецензурных выраженийБейтЦвет Чака НоррисаTelegram PremiumСкачивание видео с YouTubeЗапрет мата в социальных сетяхОбъединённая Армия БуллингаИнкубаторБлогосфераБлог (МалоблогПодкаст) • Премиум-аккаунтОбмен лайкамиОтзовикТревел блогПодписка
ГлобализацияВычислю по IPИнтернет-дебилыРаздельный интернетСинонимайзерCackleКоммунизм в интернетеBB-кодыВлоггерЗапрет анонимных сим в РоссииWAPWiki-проектыВеб 0.0Веб 1.0Веб 2.0Мобильный интернетРунетСоциальная сетьСкайнетПиндонетЗаповеди интернетаПравила интернетовОтветыФлешмоб (самые известные) • Замедление сайтаReCAPTCHAИнтернет-цензура на Западе
ТипажиЧСВKillnetИнтернет-феминизмРоскомсвободаЭхо-камераРусские хакерыАдминАнонимусБелый рыцарьМодераторОптимизаторПредыдущий ораторСетевые онанистыТролльХакерЛамерКопирайтерЦифровой кочевникИнтернет-антикварИнтернет-ворАлисаМамкин циник-мизантропАссоциация Босоногих
ТерминыVPNПрокси-сервер (SOCKS-прокси) • Управление репутацией404ADSLBitcoinDDoSFAQGPONI2PIPv6localhostMediaGetNO CARRIERSEOTorTOSViaWi-FiАккаунтБанБотБотнетВиртуалВордфильтрГолосование ногамиДиалапДомашняя страницаДорвейИнвайтКликбейтКомментКомьюнитиКикКириллические доменыЛесенкаЛинкЛогЛокалкаМемНикОфлайнОффтопикПисьма счастьяПоисковая бомбаПост (Некропост) • ПремодерацияПруфлинкРерайтингСабжСимпафкаСиндром вахтёраСкриншотСмайлСпамСпойлерТрафикТредТроянФлудФорумХотлинкингЭто вашеЮзерпикАнонимностьШок-сайтыПингИКСUser-AgentБраузерWhoisURLДесинкРазметка реддита🤡Цифровая некромантияЗаднеприводная каптчаЭффект АстольфоКвантовый интернетИнформационный вирусОнлайнЛайкСторисХештегPunycodeЧастный сайтПоддерживатьИнтернет-проектФорк
ПоставщикиБлокировки TOR в РоссииЦепочка проксиУчёт интернет-рекламы в РоссииProxifierПоисковые запросыСоветский интернетВеб-мастерИнтернет шоу-бизнесЛокальная сеть в масштабах страныВизуальный троллингАкадоВолгаТелекомДом.руИскраМакхостСитилайнСтримWibyЮТКЯндексПавел ДуровEMPRESSAlanWakeIP-адрес (Статический IP-адресДинамический IP-адрес) • Обход блокировкиStarlinkРоссийский интернет-форумЛарри ПейджСергей БринJavaScriptPHPOpera VPNHTMLCSSВилле ХакомякиMariaDBИзменение TTL сетевых пакетовТоррент (ΜTorrentMagnet-ссылка) • Archive TeamАрхив АнныАркадий ВоложСпам-листСтримТеле2NamecheapРостелекомБезопасная юрисдикцияСэми КамкарAGPL
МемыНюдсочетвергОтпечаток браузераТроллинг тупостьюSpecial OlympicsВ Интернете кто-то неправЮзерCMS.tkЛахтаЧел из инета.onionSkotobaza.orgВселенная СамосбораТоррент-трекерТупичок ГоблинаАська-однодневкаМясо, матюки, убийства и голые сиськиГенерация интернет-контентаВебкам-студияЦифровой петухВархаммер против пониTilt (Google)Проход в хохлыШитпостингДизлайкНьюфагНоворегЗакрепАноним хуже содомитаСетепетухВейшнорияРина ПаленковаЗакулисьеИнландияБурление говнКапчаOchko123А мы смеемся и просим ещёОнлайн-петицияSCP-166Животные за компьютеромКарма (интернет-сайты)Бомбит пуканБаннерыАнтиспамPrizrak Night-ForestИдиотекаБесконечный эпизод Губки БобаСтикерыМария ИльинаBasedgeТестыСвободолюбие Павла ДуроваКакой-то не такой текстингЕкатерина МизулинаМетаиронияГенератор имёнКопротивлениеСлова-маркеры идиотаКопирование текстов онлайнНовый логотип ТвиттераДжулиан АссанжВсё, что попало в интернет, остаётся там навсегдаЦерковь СамсоноверыThe Internet is for something wrongMulter.ruОтрывокКремниевая пирамидаNostalgy.net.ruИзменение голосаПрогревПереобувкаГалактика знакомствКлоноводствоИнтернет-выборыКонфликт Дмитрия Пучкова и Сергея ИвановаХейтерыSCP-1461Спидран бана
Проблемы и злоВозрастное ограничениеЦензура в TelegramПлатный поиск в ИнтернетеТебя в гугле забанилиАвтозамена на проксиБитва за Le Cosy MontparnasseСпамботАлгоритм НемезидаРевью-бомбингТроллинг верификации в ТвиттереРеклама в ТелеграмеИнтернет-луддитыКукловодТуалетный профильБаяновая революцияЗахват сервераСлив файлов Яндекса в январеКопирование и вставка текста на сайтах с запретомЗамена словОтключение интернетаЦензура в социальных сетяхАвторские праваСкрытый банУтечка данныхШокирующее видеоСимпРоскомнадзор (Роскомнадзор-тян) • СрачХайпЦифровизацияЦифровой следИнтернет-цензураИдентификация пользователей Wi-FiЧёрный списокАккаунт угналиФейкЗабастовка на реддите из-за платного APIAutoModeratorОбида на клоунаСтена текстаДисконнектВзлом электронной почтыФактчекИнтернет-ракАттеншен вхореДобровольно-принудительная регистрацияИзгнание ДуроваБлокировка сайтов по беспределуМ125Виртуальные инстаграмщицыПоломка зоны .ru в январе 2024 годаГлобальный сбой интернетаНаказание за скачивание пиратского контентаПротоколированиеBrain rotНарастание интернет-цензуры в РФИнтернет-зависимостьЗакон ГодвинаСетевой сумасшедшийРоскомнадзор обделался против ТвиттераРотшильды не общаются в интернетахMurka SenseiЗависимость 18+Блокировки электронной почты в РФМурка сенсейАтака Роскомнадзора на YouTube в ноябре 2020Робот-стукачВиртуальная жизньОпараш Mozilla FirefoxЯндекс.Музыка