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 <
[email protected]>
Joey Hess <
[email protected]>