Лицензии бывают разных видов, и некоторые накладывают ограничение на то, как приложение может быть оформлено в виде пакета, может ли оно продаваться для извлечения коммерческой выгоды, и так далее.
На вас, как на человека, портирующего приложение, ложится обязанность прочесть лицензионные соглашения на программное обеспечение и удостовериться, что проект FreeBSD не будет являться их нарушителем, если будет заниматься распространением исходного кода или в бинарном виде по FTP/HTTP или на CD-ROM. Если у вас возникли сомнения, то, пожалуйста, обратитесь в Список рассылки, посвящённый Портам FreeBSD.
В подобных ситуациях можно использовать переменные, описываемые в последующих разделах.
Эта переменная указывает, что мы не можем создавать для приложения двоичный пакет. К примеру, лицензия не позволяет бинарное распространение или она может запрещать распространение пакетов, созданных из изменённых исходников.
Однако файлы DISTFILES
могут свободно
зеркалироваться по FTP/HTTP. Они также могут распространяться,
используя CD-ROM (или на похожих носителях), если не установлена
переменная NO_CDROM
.
NO_PACKAGE
должна также использоваться, если
двоичный пакет, как правило, бесполезен, а приложение должно всегда
компилироваться из исходного кода. К примеру, если в приложение
во время компиляции жёстко включается конфигурационная информация,
привязанная к конкретной системе, то задайте переменную
NO_PACKAGE
.
Значением переменной NO_PACKAGE
должна быть
строка, описывающая причину, по которой пакет не должен
создаваться.
Эта переменная указывает на то, что, хотя мы имеем право
создавать бинарные пакеты, мы не можем помещать эти пакеты или
файлы DISTFILES
порта на CD-ROM (или на похожие носители) для
перепродажи. Однако бинарные пакеты и файлы
DISTFILES
порта будут оставаться
доступными посредством FTP/HTTP.
Если эта переменная устанавливается вместе с
NO_PACKAGE
, то только файлы порта
DISTFILES
будут доступны, и только посредством
FTP/HTTP.
В качестве значения NO_CDROM
должна
указываться строка, описывающая причины, по которым порт не может
распространяться на CD-ROM. К примеру, это применяется, если
лицензионное соглашение приложения предполагает только его
«некоммерческое» использование.
Файлы, определенные в переменной NOFETCHFILES
,
не будут извлекаться ни из одного из MASTER_SITES
.
Примером такого файла является файл, поставляемый на CD-ROM.
Инструменты, проверяющие доступность этих файлов на
MASTER_SITES
, должны игнорировать эти файлы и
не сообщать о них.
Задайте эту переменную, если лицензия на приложение не позволяет
ни зеркалировать файлы DISTFILES
, ни распространять
бинарный пакет через FTP/HTTP или на CD-ROM.
Ни NO_CDROM
, ни NO_PACKAGE
не стоит устанавливать вместе с RESTRICTED
, так
как последняя переменная подразумевает первые две.
В качестве значения RESTRICTED
должна
указываться строка, описывающая причины, по которым порт нельзя
распространять. Обычно это означает, что порт использует закрытое
программное обеспечение, а пользователь должен вручную сгрузить файлы
DISTFILES
, возможно, после заполнения
регистрационной формы или подтверждения соглашения с условиями
EULA.
Если заданы RESTRICTED
или
NO_CDROM
, то значение этой переменной по умолчанию
соответствует ${DISTFILES} ${PATCHFILES}
, в
противном случае она пуста. Если ограничены в распространении лишь
некоторые из дистрибутивных файлов, то в этой переменной задаётся их
список.
Обратите внимание, что при включении порта в дерево исходных
текстов системы коммиттер должен добавить запись в файл
/usr/ports/LEGAL
для каждого из перечисленных
файлов, в точности описав, что подразумевают ограничения.
Предпочтительным способом реализации утверждения "архивы исходных текстов для этого порта должны загружаться самостоятельно" является следующее:
some-website
to accept their license and download ${DISTFILES} into ${DISTDIR}
.endifЭто одновременно и информирует пользователя, и устанавливает нужные метаданные на пользовательской машине для использования автоматическими программами.
Обратите внимание, что данная кляуза должна предшествовать
подключению файла bsd.port.pre.mk
.
Этот, и другие документы, могут быть скачаны с http://ftp.FreeBSD.org/pub/FreeBSD/doc/.
По вопросам, связанным с FreeBSD, прочитайте
документацию прежде чем писать в
<questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите в рассылку
<doc@FreeBSD.org>.