DEBCONF-APT-PROGRESS.RU.1(1) | Debconf | DEBCONF-APT-PROGRESS.RU.1(1) |
НАЗВАНИЕ¶
debconf-apt-progress - устанавливает пакеты используя debconf для показа индикатора выполнения
СИНТАКСИС¶
debconf-apt-progress [--] команда [аргументы ...] debconf-apt-progress --config debconf-apt-progress --start debconf-apt-progress --from граница --to граница [--] команда [аргументы ...] debconf-apt-progress --stop
ОПИСАНИЕ¶
debconf-apt-progress устанавливает пакеты, используя debconf с показом индикатора выполнения. Указанная команда должна быть любой интерфейсной программой к apt, работающей в режиме командной строки; а именно, она должны уметь посылать информацию о ходе выполнения в файловый дескриптор, заданный параметром настройки "APT::Status-Fd", и должна держать открытыми файловые дескрипторы, назначенные в параметре настройки "APT::Keep-Fds" при вызове debconf (явно или неявно), так как эти файловые дескрипторы будут использоваться для работы с debconf.
В передаваемых аргументах команды обычно должен указываться параметр -y (для apt-get или aptitude) или подобный ему, для того чтобы интерфейс к apt не предлагал вводить данные. debconf-apt-progress не может сделать это самостоятельно, так как нужный аргумент может различаться у разных интерфейсов apt.
Параметры --start, --stop, --from и --to могут использоваться для создания многосегментного индикатора выполнения для разных стадий установки при условии, что запускающая сторона это debconf confmodule. Также, если требуется, запускающая сторона может самостоятельно взаимодействовать с индикатором выполнения через протокол debconf.
При запуске debconf блокирует доступ к своей базе данных config, что к сожалению не даёт иметь один экземпляр debconf отображающий индикатор выполнения и другой, задающий вопросы из устанавливаемых пакетов. Если вы используете многосегментный индикатор, то для того чтобы обойти это ограничение требуется обрабатывать результат работы параметра --config перед запуском интерфейса debconf. Подробней смотрите в разделе ПРИМЕРЫ далее.
ПАРАМЕТРЫ¶
- --config
- Вывести переменные окружения, необходимые для запуска индикатора выполнения интерфейса.
- --start
- Запустить индикатор выполнения, по умолчанию отсчитывающий от 0 до 100. Чтобы указать другие границы используйте --from и --to.
- --from граница
- Если
используется
вместе со
--start, то
индикатор
выполнения
начинает
отсчёт с
границы, а
не с 0.
Иначе, при установке пакетов индикатор выполнения начинается со значения «границы». Должен использоваться с параметром --to.
- --to граница
- Если
используется
вместе со
--start, то
индикатор
выполнения
заканчивает
отсчёт по
достижению
границы, а
не на 100.
Иначе, при установке пакетов индикатор выполнения заканчивается на значении «границы». Должен использоваться с параметром --from.
- --stop
- Остановить запущенный индикатор выполнения.
- --no-progress
- Не запускать, останавливать или изменять индикатор выполнения. Сообщения о ходе выполнения от apt, события смены носителей и вопросы debconf всё равно будут проходить через debconf.
- --dlwaypoint процент
- Задать, какой процент заполнения индикатора выполнения отвести на скачивание пакетов. Оставшаяся часть будет использована на показ установки пакетов. По умолчанию используется 15% на показ скачивания и оставшиеся 85% на установку.
- --logfile файл
- Направить результат работы apt в указанный файл.
- --logstderr
- Послать нормальные результаты работы apt в поток ошибок stderr. Если вы не укажите --logfile или --logstderr, то нормальные результаты работы apt пропадут.
- --
- Завершает параметры. Так как обычно нужно указать по крайней мере параметр -y для запускаемой команды, требуется использовать --, чтобы отделить эти параметры от параметров debconf-apt-progress.
ПРИМЕРЫ¶
Установить рабочий стол GNOME и среду разработки для X window system с выводом индикатора выполнения:
debconf-apt-progress -- aptitude -y install gnome x-window-system-dev
Установить рабочие столы GNOME, KDE и XFCE с выводом индикатора выполнения, отдав по 45% индикатора выполнения GNOME и KDE, а оставшиеся 10% под XFCE:
#! /bin/sh set -e case $1 in '') eval "$(debconf-apt-progress --config)" "$0" debconf ;; debconf) . /usr/share/debconf/confmodule debconf-apt-progress --start debconf-apt-progress --from 0 --to 45 -- apt-get -y install gnome debconf-apt-progress --from 45 --to 90 -- apt-get -y install kde debconf-apt-progress --from 90 --to 100 -- apt-get -y install xfce4 debconf-apt-progress --stop ;; esac
КОД ВОЗВРАТА¶
Код, возвращаемый при возврате указанной команды, если пользователь не нажал клавишу отмены на индикаторе выполнения. Если кнопка отмены была нажата, то возвращается значение 30. Для избежания неоднозначности, если команда возвращает 30, то будет возвращаться значение 3.
АВТОРЫ¶
Colin Watson <cjwatson@debian.org>
Joey Hess <joeyh@debian.org>
2023-01-08 |