Небольшая утилита на Lua для генерации файлов лицензии в текущей директории.
Используйте следующую команду:
sudo luarocks install licensegen
- Склонируйте проект
- (опционально) Добавьте директорию с проектом в вашу переменную
$PATH
- Используйте
licensegen
илиlua licensegen.lua
licensegen <название лицензии> --<аргумент1>=<значение1> --<аргумент2>=<значение2> ...
Некоторые из опций не создают файла с лицензией, но они выводят полезную информацию:
-h
или--help
- Показывает страницу с документацией-v
или--version
- Показывает текущую версию программы--a
или--aliases
- Показывает псевдонимы лицензий--i
или--info
- Показывает подробную информацию о выбранной лицензии--list
или--licenses
- Выводит список всех лицензий--cfg
или--config
- Показывает директорию с конфигурационными файлами
Аргументы замены текста вводятся в таком формате: --<аргументе>=<текст>
, например --owner=имя
или --owner="Ваше полное имя"
. Все аргументы (с некоторыми исключениями) могут быть изменены через конфигурационный файл или при помощи параметров в консоли.
Существуют некоторые аргументы, которые могут задаваться автоматически:
- aliases - Задаёт псевдонимы для лицензий (таблица, проверьте
--aliases
для вывода списка псевдонимов) - filename - Название файла лицензии (по-умолчанию
LICENSE
) - licensename - Тип лицензии, которую вы хотите использовать (работает только в конфигурационном файле)
- owner - Владелец проекта (по-умолчанию имя пользователя этого компьютера)
- project - Название проекта (по-умолчанию название текущей директории)
- workdir - Полный путь до проекта, в котором будет создаваться файл
- year - Текущий год
Если пользователь создают директорию ~/.config/licensegen/
(на Unix) или папку %LOCALAPPDATA\licensegen\
(на Windows), config.lua
из этого пути можно использовать чтобв изменять значения по-умолчанию. Например:
return {
owner = "Моё имя",
aliases = {
bsd = "bsd-4-clause",
},
}
Этот конфиг задаёт Моё имя
как переменную $owner$
по-умолчанию и bsd
теперь является псевдонимом bsd-4-clause
.
Хотя создание своей собственной лицензии обычно не является хорошей идеей, в этом проекте присутствуют не все лицензии, которые могут кому-то пригодиться. В этом случае вы можете создать директорию licenses
в конфигруационной директории и скопировать туда текст шаблона лицензии с расширением .txt
. Имейте в виду что "пользовательские" лицензии имеют более высокий приоритет чем "стандартные".
Все лицензии были взяты из репозитория choosealicense.com.