Telegram Web Link
Forwarded from ТГ Шевченка
В СМЫСЛЕ УЖЕ ИЮЛЬ
Админ с уважением относится к просьбам членов Чат*а
Блог*
В СМЫСЛЕ УЖЕ ИЮЛЬ
Прошла уже треть лета. Вы уже сделали треть того, что запланировали на лето?
Forwarded from Progressive YEAR
▓▓▓▓▓▓▓▓░░░░░░░░ 50%
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Yet another name (Cyberly 🦄)
Лицензирование ПО это ёбаный пиздец. Каждый раз когда хочу что-то опубликовать я закапываюсь в эту тему, и каждый раз ахуеваю.

На поверхности кажется всё просто: если всё равно что люди будут делать с кодом - суешь пермиссивную лицензию вроде MIT и забиваешь хуй. Если боишься что злые капиталисты спиздят твой код и закроют - суешь под GPL.
Проблема с большинством пермиссивных лицензий в том, что они требуют сохранять copyright notice и текст лицензии. Соответственно если ты скопипастил даже 5 строчек из проекта лицензированного под MIT, ты обязан предоставить его лицензию вместе со своим проектом, причем как с исходниками, так и с билдами. Конечно, есть вроде такой прикол что если ты скопипастил "чуть-чуть" то это не нарушение копирайта, но как это работает и что такое "чуть-чуть" - зависит от юрисдикции и лучше на это не полагаться.

Может показаться хорошей идеей отказаться нахуй от копирайта и передать свой код в public domain.
Только вот что такое "public domain" тоже зависит от юрисдикции, и во многих странах добровольно сделать свою работу достоянием общественности вообще нельзя.
Есть "инструменты" для передачи работы в общественное достояние, такие как CC0 и Unlicense. В них есть костыль, что если в стране юзера public domain кривой, то они работают как "public domain equivalent" пермиссивная лицензия которая не требует attribution и тп.

Ну ладно, передали мы код в public domain, либо лицензировали его под public domain equivalent лицензией. Теперь то всё хорошо?
Хуй там плавал, копирайт это лишь один из многих юридических механизмов для ограничения свободы пользователей.
Один из самых вредных альтернативных механизмов - это патенты. Ты можешь запатентовать какую-то идею которую ты использовал в своей программе и пойти судиться с людьми for fun and profit за нарушение твоего патента, даже если программа является достоянием общественности.
Причем если например MIT не говорит ни слова о патентах, но в некоторых юрисдикциях она вроде как может неявно давать пользователям "лицензию на патенты", то например CC0 явно утверждает что на патентные права она никак не влияет.

Одна из немногих популярных пермиссивных лицензий которая явно решает проблему с патентами - это Apache 2.0. Но она мало того что требует attribution, там ещё и написано следующее "You must cause any modified files to carry prominent notices stating that You changed the files", т.е блядь если я форкнул какой-то проект под apache, я должен в каждом файле который я меняю что-то по этому поводу написать?

Окей, опубликовали мы худо-бедно проект. Хотим теперь принимать изменения от третьих лиц. Surely с этим никаких сложностей? Но увы. Во первых, если у тебя код например под MIT, вовсе не факт что отправленный тебе патч тоже будет под MIT. Соответственно контрибьютор может попытаться тебя засудить на основании того что ты нарушил его копирайт.
По хорошему нужно просить контрибьюторов явно лицензировать свои изменения под соответствующей лицензией. Как это правильно и надежно делать? Хрен его знает. Это отдельная тема, в ней тоже есть куча подводных камней, о которых я уже не помню.
Во вторых, может получиться так, что твой потенциальный контрибьютор является рабом (employee), и у него нет права контрибьютить в твой проект, потому что рабовладелец запрещает. Например google запрещает своим рабам контрибьютить в проекты под Unlicense или CC0.


Этот пост далеко не исчерпывающий, но он и так уже слишком длинный, так что пока на этом остановлюсь.
2025/07/01 22:50:18
Back to Top
HTML Embed Code: