From: Alexey Gladkov <legion@altlinux.ru> To: ALT Linux Team development discussions <devel@lists.altlinux.org> Subject: [devel] I: license tag Date: Tue, 19 Nov 2019 21:05:16 +0100 Message-ID: <20191119200516.6xsutqsrg3sijjy3@localhost> (raw) Привет! Некоторое время назад я пробовал проанализировать наши пакеты на предмет свободности. По сути задача та же самая как и дистрибутивостроителей, которые должны отфильтровать пакеты не предназначенные для коммерческого использования. Иных данных о лицензиях содержимого пакета, кроме тега License у нас нет. Выяснилась интереснейшая вещь. В наших пакетах этот тег может содержать всё, что угодно. Там оказывается как откровенный мусор, так и двусмысленные названия лицензий или же вообще несуществующие лицензии (например, мантейнер vorbisgain указывает, что лицензия "GPL 2.1", но такой версии GPL ещё нет). Чтобы это хоть как-то решить в сизиф отправлен sisyphus_check, который выдаёт предупреждения относительно содержимого тега License т.к. масштаб разрушений у нас просто огромный. За основу была взята полиси OpenSUSE[1]. Новая проверка требует (пока не жёстко) чтобы: * Лицензии должны быть объявлены в формате коротких имен SPDX[2] и присутствовать в пакете common-licenses. Пробелы в имени лицензии не допускается. * Для указания совокупности лицензий в пакете используется оператор `and`. * Альтернативные лицензии должны быть разделены оператором `or`. * Лицензии могут быть сгруппированы. Для этого используются скобки. Такое, например, необходимо, если документация имеет лицензию и код поставляется под двойной лицензией: License: (GPL-2.0 or Artistic-1.0-Perl) and CC0-1.0 Группы внутри групп не допускаются. Скобки должны быть сбалансированы. * Исключения из лицензий тоже должны быть отдельно описаны и находится в пакете common-licenses. Исключения указываются после название лицензии через оператор `with`. Пробелы в имени исключения не допускаются. License: LGPL-2.1-or-later and LGPL-2.1-or-later with GCC-exception-2.0 and GPL-2.0-or-later * Операторы `and`, `or`, `with` не могут быть указаны один за другим, начинать или заканчивать строку с перечислением лицензий. Все операторы `and`, `or`, `with` могут быть указаны в любом регистре. Проверка -------- Проверка sisyphus_check сейчас всё-таки считает некоторые конструкции ошибочными: * Какие либо операторы указаны подряд или вначале или конце строки. * Группы в группах. * Несбаллансированные скобки. Вот небольшая статистика по тому сколько бинарнах пакетов это затронет: # must not follow another keyword: 7 # groups within groups are not allowed: 0 # closing bracket without opening bracket: 0 # unbalanced brackets: 152 FAQ --- Q: Почему было взято именно полиси OpenSUSE, если исторически в наш репозиторий пакеты портируются из Fedora ? A: Посили Fedora[3] содержит жёсткий коротких список имён[4], который поддерживется legal team. Короткие имена, используемые в fedora, проще, но вместе с тем они теряют часть информации о лицензии, которую трудно восстановить автоматически. Например, все ниже перечисленные лицензии имеют короткое имя `BSD`: - BSD License (no advertising) - BSD License (two clause) - Creative Commons BSD - Cryptix General License - Eclipse Distribution License 1.0 - Metasploit Framework License (post 2006) Или `GPLv3+ with exceptions`: - GNU General Public License v3.0 or later, with Classpath exception - GNU General Public License v3.0 or later, with font embedding exception Также короткие имена не стандартизованы. Поэтому такой список лицензий сложно поддерживать. Такой формат записи сложно прверять автоматически. Q: Как мне поправить свой пакет ? A: Если вы не уверены как правильно указывается лицензия вы можете посмотреть, как описывается этот тэг в OpenSUSE. Если же вашего пакета нет в их репозитории, то пишите в devel@. Q: Лицензии, которая используется в проекте нет в пакете common-licenses. Что делать ? A: Повесьте багу на пакет common-licenses и приложите текст лицензии. Очень важно, чтобы у нас были тексты лицензий, иначе невозможно проверить правовую информацию. Так у нас есть пакеты с лицензией `distributable not for profit`, `Free for non-commercial use`, `no modification permitted`, `non-military use` и т.д. Часть же лицензий не могут использоваться в репозитории. Например, в fedora есть целый список несвободных лицензий[5]. Q: Я не знаю какая лицензия у проекта. Что делать ? A: Пишите на legal@ или в devel@. Лицензия должна быть известна. [1] https://en.opensuse.org/openSUSE:Packaging_guidelines#Licensing [2] https://spdx.org/licenses/ [3] https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing [4] https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#Good_Licenses [5] https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#Bad_Licenses -- Rgrds, legion
next reply other threads:[~2019-11-19 20:05 UTC|newest] Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-11-19 20:05 Alexey Gladkov [this message] 2019-11-19 20:28 ` Sergey Y. Afonin 2019-11-19 20:39 ` Dmitry V. Levin 2019-11-26 16:39 ` Mikhail Efremov 2019-11-27 15:26 ` Mikhail Efremov 2019-11-28 10:52 ` Alexey Gladkov 2019-11-28 13:17 ` Mikhail Efremov 2019-11-28 14:03 ` Alexey V. Vissarionov 2019-11-28 14:11 ` Sergey V Turchin 2019-11-28 14:15 ` Alexey V. Vissarionov 2019-11-28 14:16 ` Michael Shigorin 2019-11-28 14:22 ` Alexey V. Vissarionov 2019-11-28 14:22 ` Alexey Gladkov 2019-11-28 14:20 ` Sergey V Turchin 2019-11-28 14:20 ` Alexey Gladkov 2019-11-28 14:26 ` Alexey V. Vissarionov 2019-11-28 14:31 ` Alexey Gladkov 2019-11-28 14:18 ` Alexey Gladkov 2019-11-19 20:51 ` Alexey Gladkov 2019-11-19 21:07 ` Sergey Y. Afonin 2019-11-19 21:27 ` Alexey Gladkov 2019-11-20 5:57 ` Sergey Afonin 2019-11-19 21:34 ` Alexey Gladkov 2019-11-20 0:09 ` Grigory Ustinov 2019-11-20 0:43 ` Alexey Gladkov 2019-11-20 10:36 ` [devel] Q: rastertokpsl-re (was: I: license tag) Paul Wolneykien 2019-11-20 11:23 ` Alexey V. Vissarionov 2019-11-20 17:03 ` Andrey Savchenko 2019-11-21 9:18 ` Alexey V. Vissarionov 2019-11-21 12:11 ` Anton V. Boyarshinov 2019-11-20 11:37 ` Michael Shigorin 2019-11-20 16:23 ` Paul Wolneykien 2019-11-20 16:37 ` Michael Shigorin 2019-11-21 9:33 ` Paul Wolneykien 2019-11-21 20:37 ` [devel] Q: rastertokpsl-re Vitaly Lipatov 2019-11-21 22:15 ` Paul Wolneykien 2019-11-22 0:37 ` Andrey Savchenko 2019-11-22 7:44 ` [devel] I: license tag Sergey V Turchin 2019-11-22 8:49 ` Michael Shigorin 2019-11-22 9:05 ` Michael Shigorin 2019-11-22 9:20 ` [devel] LGPL-2.1-with-Qt-Company-Qt-exception-1.1 (was: license tag) Sergey V Turchin 2019-11-22 17:17 ` Alexey Gladkov 2019-11-25 7:24 ` Sergey V Turchin 2019-11-25 8:30 ` Alexey Gladkov 2019-11-25 8:35 ` Sergey V Turchin 2019-11-25 8:44 ` Alexey Gladkov 2019-11-25 8:56 ` Sergey V Turchin 2019-11-25 9:23 ` [devel] LGPL-2.1-with-Qt-Company-Qt-exception-1.1 Anton Farygin 2019-11-25 9:52 ` Alexey Gladkov 2019-11-22 9:22 ` [devel] I: license tag (BSD* и подобные) Michael Shigorin 2019-11-22 17:09 ` Alexey Gladkov 2019-11-25 14:38 ` [devel] I: license tag for ClamAV Sergey Afonin 2019-11-25 14:53 ` Alexey Gladkov 2019-11-25 15:24 ` Sergey Afonin 2019-11-25 15:47 ` Sergey Afonin 2019-11-25 15:06 ` Vladimir D. Seleznev 2019-11-26 15:44 ` Sergey Afonin 2020-01-01 19:13 ` [devel] I: license tag for Cyrus-IMAP Sergey Y. Afonin 2020-01-01 19:35 ` Alexey Gladkov 2020-01-01 20:01 ` Sergey Y. Afonin 2020-01-01 20:12 ` Alexey Gladkov 2020-01-01 20:44 ` Sergey Y. Afonin 2020-01-02 8:48 ` Andrey Savchenko 2020-01-02 11:13 ` Sergey Y. Afonin 2020-03-16 12:50 ` Sergey Afonin 2020-01-09 9:04 ` Sergey V Turchin 2020-01-10 7:39 ` Sergey V Turchin 2020-03-15 16:33 ` [devel] I: license tag Sergey Y. Afonin 2020-03-16 11:53 ` Sergey Afonin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20191119200516.6xsutqsrg3sijjy3@localhost \ --to=legion@altlinux.ru \ --cc=devel@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git