1DEBCONF-APT-PROGRESS(1) Debconf DEBCONF-APT-PROGRESS(1)
2
3
4
6 debconf-apt-progress - install packages using debconf to display a
7 progress bar
8
10 debconf-apt-progress [--] command [args ...]
11 debconf-apt-progress --config
12 debconf-apt-progress --start
13 debconf-apt-progress --from waypoint --to waypoint [--] command [args ...]
14 debconf-apt-progress --stop
15
17 debconf-apt-progress installs packages using debconf to display a
18 progress bar. The given command should be any command-line apt
19 frontend; specifically, it must send progress information to the file
20 descriptor selected by the "APT::Status-Fd" configuration option, and
21 must keep the file descriptors nominated by the "APT::Keep-Fds"
22 configuration option open when invoking debconf (directly or
23 indirectly), as those file descriptors will be used for the debconf
24 passthrough protocol.
25
26 The arguments to the command you supply should generally include -y
27 (for apt-get or aptitude) or similar to avoid the apt frontend
28 prompting for input. debconf-apt-progress cannot do this itself because
29 the appropriate argument may differ between apt frontends.
30
31 The --start, --stop, --from, and --to options may be used to create a
32 progress bar with multiple segments for different stages of
33 installation, provided that the caller is a debconf confmodule. The
34 caller may also interact with the progress bar itself using the debconf
35 protocol if it so desires.
36
37 debconf locks its config database when it starts up, which makes it
38 unfortunately inconvenient to have one instance of debconf displaying
39 the progress bar and another passing through questions from packages
40 being installed. If you're using a multiple-segment progress bar,
41 you'll need to eval the output of the --config option before starting
42 the debconf frontend to work around this. See "EXAMPLES" in the
43 EXAMPLES section below.
44
46 --config
47 Print environment variables necessary to start up a progress bar
48 frontend.
49
50 --start
51 Start up a progress bar, running from 0 to 100 by default. Use
52 --from and --to to use other endpoints.
53
54 --from waypoint
55 If used with --start, make the progress bar begin at waypoint
56 rather than 0.
57
58 Otherwise, install packages with their progress bar beginning at
59 this "waypoint". Must be used with --to.
60
61 --to waypoint
62 If used with --start, make the progress bar end at waypoint rather
63 than 100.
64
65 Otherwise, install packages with their progress bar ending at this
66 "waypoint". Must be used with --from.
67
68 --stop
69 Stop a running progress bar.
70
71 --no-progress
72 Avoid starting, stopping, or stepping the progress bar. Progress
73 messages from apt, media change events, and debconf questions will
74 still be passed through to debconf.
75
76 --dlwaypoint percentage
77 Specify what percent of the progress bar to use for downloading
78 packages. The remainder will be used for installing packages. The
79 default is to use 15% for downloading and the remaining 85% for
80 installing.
81
82 --logfile file
83 Send the normal output from apt to the given file.
84
85 --logstderr
86 Send the normal output from apt to stderr. If you supply neither
87 --logfile nor --logstderr, the normal output from apt will be
88 discarded.
89
90 -- Terminate options. Since you will normally need to give at least
91 the -y argument to the command being run, you will usually need to
92 use -- to prevent that being interpreted as an option to debconf-
93 apt-progress itself.
94
96 Install the GNOME desktop and an X window system development
97 environment within a progress bar:
98
99 debconf-apt-progress -- aptitude -y install gnome x-window-system-dev
100
101 Install the GNOME, KDE, and XFCE desktops within a single progress bar,
102 allocating 45% of the progress bar for each of GNOME and KDE and the
103 remaining 10% for XFCE:
104
105 #! /bin/sh
106 set -e
107 case $1 in
108 '')
109 eval "$(debconf-apt-progress --config)"
110 "$0" debconf
111 ;;
112 debconf)
113 . /usr/share/debconf/confmodule
114 debconf-apt-progress --start
115 debconf-apt-progress --from 0 --to 45 -- apt-get -y install gnome
116 debconf-apt-progress --from 45 --to 90 -- apt-get -y install kde
117 debconf-apt-progress --from 90 --to 100 -- apt-get -y install xfce4
118 debconf-apt-progress --stop
119 ;;
120 esac
121
123 The exit code of the specified command is returned, unless the user hit
124 the cancel button on the progress bar. If the cancel button was hit, a
125 value of 30 is returned. To avoid ambiguity, if the command returned
126 30, a value of 3 will be returned.
127
129 Colin Watson <cjwatson@debian.org>
130
131 Joey Hess <joeyh@debian.org>
132
133
134
135 2023-07-19 DEBCONF-APT-PROGRESS(1)