install

install добавляет и удаляет модули расширений, проверяет совместимость, устанавливает обязательные зависимости и атомарно записывает обновлённый файл расширений. Обновление уже установленной версии относится к upgrade.

СистемаВерсия 1.4.5Стабильная
lil-terminal

Обзор

Используйте install для предсказуемой установки модулей: выбирайте Base или Minimum, точную совместимую версию, осознанно задавайте репозиторий или файл расширений, а обновление уже установленной версии оставляйте команде upgrade.

Установка и обновление — разные операции

install добавляет и удаляет модули, выбирает Base или Minimum, точный релиз и при необходимости другой репозиторий. Когда модуль уже установлен, заменой версии и восстановлением зависимостей занимается upgrade.

Синтаксис

lil-terminal
install [mod ...] [repo] [options]

Справочник

install

выполнить setup.lil (если он существует)

install <mod>

установить пакет из lil-репозитория

install <mod ...>

установить несколько пакетов (разделённых пробелами)

install <mod> <repo>

установить пакет из другого репозитория

-v <ver>

установить точную версию, совместимую с этим поколением ядра

-m

установить минимальный пакет (если он опубликован для данной версии)

-i

показать сведения о пакете и зависимостях

-l

показать установленные модули, версии и пакеты

-f <file>

использовать другой файл расширений

-ext <file> | -ext -

выбрать другой файл расширений или восстановить стандартный

-g @upgrade

обновить или восстановить через дополнительный модуль upgrade

-u

удалить несколько модулей расширений по порядку

uninstall <mod ...>

синоним @install <mod ...> -u

Подробности

Base содержит текущую полную функциональность, Minimum доступен только у модулей, которые его публикуют. Скачанный код ограничен по размеру, разбирается как trait, проверяется на ожидаемый метод и конфликты, после чего записывается через временный файл и атомарное переименование.

Безопасность

Удалённый PHP-код становится частью lil-terminal. Используйте доверенный HTTPS-репозиторий; проверка синтаксиса и атомарная запись защищают установку от повреждения, но не определяют намерения кода.

Вторичные команды

Документированные вторичные имена разрешаются в модуль-владелец: download upload, patch diff, coo ses, read echo и mariadb mysql. Они используют тот же поток версий, что и модуль-владелец.

Автоматическая интерактивная установка

Текущее Base-ядро lil-terminal может обращаться к установщику через префикс @command. Этот путь намеренно уже обычной команды install: он определяет канонический модуль-владелец, использует только стандартный lil-репозиторий, выбирает текущий публичный релиз Base, скрывает отчёт об установке и продолжает исходную интерактивную команду. Minimum, версии разработки и сторонние репозитории здесь не выбираются. Для таких вариантов остаётся явная команда install.

Массовые операции с модулями

install dns pwd del последовательно устанавливает каждый указанный Base-модуль. Имена также можно разделять запятыми или точками с запятой. uninstall dns pwd del независимо удаляет каждый модуль и показывает статус каждого элемента, поэтому ошибка одного модуля не скрывает результат остальных. Опции, относящиеся к конкретному модулю, репозиторию или файлу, остаются в обычной форме для одного модуля.

Источники репозитория

Аргумент <repo> может указывать на другой HTTPS-репозиторий или на локальный каталог с той же структурой репозитория. Локальный источник удобен для контролируемого тестирования; по умолчанию используется lil-репозиторий.

Отчёты о зависимостях

Если перед установкой запрошенного модуля требуется установить или обновить обязательную зависимость, отчёт зависимости и отчёт самого модуля разделяются пустой строкой. Массовые install и uninstall так же показывают результат каждого модуля отдельным визуальным блоком.

Интерактивный пример из `/sandbox/`

Запускайте подготовленные примеры прямо на странице. Результат заранее сформирован и показывается в браузере; команды терминала на сервере не выполняются.

Установить несколько пакетов (разделённых пробелами)

Установка и управление

Устанавливайте актуальную совместимую версию. Для полного набора возможностей выбирайте Base, для сокращённого — Minimum; уже установленный модуль обновляет команда upgrade.

Base и Minimum — два пакета одного текущего релиза модуля, а не разные версии команды.

Пакет Base

Установить полный пакет с локальной справкой и всеми опубликованными режимами.

install install
Пакет Minimum

Установить сокращённый пакет без локальной справки; help <cmd> -i открывает актуальную серверную справку.

install install -m
Точная публичная версия

Установить именно эту опубликованную версию.

install install -v 1.4.5
Удалить модуль

Удалить блок расширения, не затрагивая ядро и остальные модули.

install install -u

Примеры

Примеры можно копировать, но сайт их не выполняет. Перед запуском на реальном проекте проверьте пути, права и разрушающие флаги.

Установить несколько пакетов (разделённых пробелами)
install pwd find dns | cd \sandbox | pwd -s | find "error" -t -f -p logs
Встроен pwd

Установлен find, v1.7 (base)
    repo.lil.dog > .lil.php

Установлен dns, v1.8 (base)
    repo.lil.dog > .lil.php

\sandbox\logs\errors.log
Выполнить setup.lil (если он существует)
install
setup.lil не найден
Установить пакет из lil-репозитория
install upgrade
Установлен upgrade, v1.12 (base)
    repo.lil.dog > .lil.php
Установить несколько пакетов (разделённых пробелами)
install dns pwd del
Установлен dns, v1.8 (base)

Встроен pwd

Установлен del, v1.7 (base)
Установить несколько пакетов (разделённых пробелами)
install dns,pwd;del
Установлен dns, v1.8 (base)

Встроен pwd

Установлен del, v1.7 (base)
Установить пакет из lil-репозитория
install code
Установлен include, v1.18 (base)

Установлен code, v1.14 (base)

Пакет интерфейса  code 1.0
Установить минимальный пакет (если он опубликован для данной версии)
install code -m
Установлен code, v1.14 (minimum)
Пакет интерфейса  не запрошен
Показать сведения о пакете и зависимостях
install code -i
Модуль       code
Версия      1.14
Base         да
Minimum      да
Зависимость   include >= 1.16
Пакет интерфейса   code 1.0
Установить точную версию, совместимую с этим поколением ядра
install ping -v 1.2.4
Установлен ping, v1.10 (base)
    repo.lil.dog > .lil.php
Установить пакет из другого репозитория
install ping https://mirror.example.net/lil
Установлен ping, v1.11 (base)
    mirror.example.net > .lil.php
Использовать другой файл расширений
install ping -f \sandbox\tmp\extensions.php
Установлен ping, v1.11 (base)
    repo.lil.dog > \sandbox\tmp\extensions.php
Выбрать другой файл расширений или восстановить стандартный
install -ext \sandbox\tmp\extensions.php | install -ext -
Ext  \sandbox\tmp\extensions.php

Ext  .lil.php
Показать установленные модули, версии и пакеты
install -l
code     v1.14 · base
find     v1.7 · base
help     v1.42 · base
install  v1.39 · base
upgrade  v1.12 · base
Удалить несколько модулей расширений по порядку
install dns -u
Удалён dns

uninstall направляется в install <module> -u: удалением модулей по-прежнему управляет один Installer, без второго менеджера пакетов.

Удалить несколько модулей расширений по порядку
uninstall dns pwd del
Удалён dns

pwd: встроенную команду нельзя удалить

Удалён del

uninstall направляется в install <module> -u: удалением модулей по-прежнему управляет один Installer, без второго менеджера пакетов.

Install · @dns
@dns google.com
A     142.250.72.14
AAAA  2607:f8b0:4007:80e::200e
MX    10 smtp.google.com
NS    ns1.google.com
TXT   …
Установить пакет из lil-репозитория
install missing_module
missing_module: нет версии, совместимой с lil.core.v1

Связанная документация

Текущая публичная версия

v1.4.52026-08-11

Синхронизация языков

Завершена синхронизация локальной и серверной справки и усилена безопасность локализации install.