IANAL, TINLA.
> Подскажите пожалуйста — могу ли я создать мобильное приложение на основе TDLib и продавать?
С самого первого взгляда можно предположить, что эта библиотека свободна, однако первое впечатление зачастую бывает обманчивым, поэтому надо изучить все договора со всеми ее хозяевами.
Для начала просто посмотрим, не написано ли чего в документации — и окажется, что написано, а именно — в README.md есть такие строки:
«TDLib is licensed under the terms of the Boost Software License. See LICENSE_1_0.txt for more information».
Во-первых, решительно ничего не мешает нам прочитать этот LICENSE_1_0.txt:
Boost Software License - Version 1.0 - August 17th, 2003
Permission is hereby granted, free of charge, to any person or organization
obtaining a copy of the software and accompanying documentation covered by
this license (the "Software") to use, reproduce, display, distribute,
execute, and transmit the Software, and to prepare derivative works of the
Software, and to permit third-parties to whom the Software is furnished to
do so, all subject to the following:
The copyright notices in the Software and this entire statement, including
the above license grant, this restriction and the following disclaimer,
must be included in all copies of the Software, in whole or in part, and
all derivative works of the Software, unless such copies or derivative
works are solely in the form of machine-executable object code generated by
a source language processor.
<здесь отказ от гарантий — Z.>
— и убедиться, что он написана довольно поверхностно, и в частности прямого ответа на ваш вопрос о продажах она, строго говоря, не дает.
Поэтому обратимся к каноническому справочнику «Различные лицензии и комментарии к ним» под редакцией Лаборатории лицензирования ФСПО, и найдем, что эта лицензия охарактеризована там [0] так:
Лицензия программ Boost (Boost Software License) (#boost)
Это безвольная неограничительная лицензия свободных программ без авторского лева, совместимая с GNU GPL.
Итак, некая программа на условиях одной лицензии «Буста» должна быть свободна, что по определению [1] значило бы, что на ее основе можно писать мобильные или любые другие приложения и продавать их.
[0]
https://www.gnu.org/licenses/license-list.ru.html#boost
[1]
https://www.gnu.org/philosophy/free-sw.ru.htmlТеперь стоит убедиться, что интересующая вас программа действительно распространяется на условиях лицензии «Буста». Заберем ее исходники [2], и прогоним по ним licensecheck(1p).
Полный вывод я позволю себе не приводить, но суть такова:
На большей части файлов действительно недвусмысленно обозначена BSL 1.0:
...
./td/mtproto/AuthData.cpp: BSL (v1.0)
./td/mtproto/AuthData.h: BSL (v1.0)
./td/mtproto/AuthKey.h: BSL (v1.0)
./td/mtproto/CryptoStorer.h: BSL (v1.0)
./td/mtproto/Handshake.cpp: BSL (v1.0)
...
На многих файлах ничего не обозначено, но это все, насколько я вижу, либо сборочные правила (а то вовсе что-нибудь в помощь разработчику), либо же шаблоны настроек:
...
./td/generate/scheme/mtproto_api.tl: *No copyright* UNKNOWN
./td/generate/scheme/mtproto_api.tlo: UNKNOWN
./td/generate/scheme/secret_api.tl: *No copyright* UNKNOWN
./td/generate/scheme/secret_api.tlo: UNKNOWN
./td/generate/scheme/td_api.tl: *No copyright* UNKNOWN
./td/generate/scheme/td_api.tlo: *No copyright* UNKNOWN
./td/generate/scheme/telegram_api.tl: *No copyright* UNKNOWN
./td/generate/scheme/telegram_api.tlo: UNKNOWN
./td/generate/scheme/update-tlo.sh: *No copyright* UNKNOWN
./tdutils/td/utils/config.h.in: *No copyright* UNKNOWN
...
Два ненужных вам образца:
...
./example/go/main.go: *No copyright* UNKNOWN
./example/ruby/example.rb: *No copyright* UNKNOWN
...
Ну и наконец в каталоге ./sqlite лежит какой-то местный вариант SQLite’а, который здесь почему-то на условиях трехпунктной лицензии BSD, выданной неким ZETETIC’ом, хотя оригинал распространяется как т. н. «общественное достояние» и отнюдь не ZETETIC’ом.
(С справочником сверяйтесь сами [3], если хотите. :-)
[2]
https://github.com/tdlib/td
[3]
https://www.gnu.org/licenses/license-list.ru.html#...Таким образом стоит думать, что библиотека TDLib действительно свободна, а значит на ее основе можно писать мобильные или любые другие приложения и продавать их.
> Или же я могу использовать данную библиотеку только для
> "открытых" проектов?
Что бы вы не имели в виду, под странным словечком «открытый», все требования лицензии «Буста» и трехпунктной лицензии BSD сводятся по существу к тому, что вам следует так или иначе воспроизводить имена хозяев работы, и текст этих лицензий.
Если же вы спрашиваете, не должно ли ваше приложение быть свободным, чтобы вы могли включить в него TDLib, то нет, не должно быть. Об этом вам говорят слова «безвольная неограничительная» и «без авторского лева» из списка «Различных лицензий».
Что ни в коем случае не следует понимать, как совет делать свою программу несвободной. Я смею предполагать, что хотя авторы TDLib и дают вам такое право, они все-таки надеются на вашу порядочность.
> Или же дела обстоят совсем иначе чем я могу представить?
Да, мне показалось, что вы разделяете заблуждение о том, что свободные якобы нельзя продавать. Хотя, разумеется, свободные программы продавать можно и полезно (на то они и свободные ;-).