| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095 |
- <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
- <refentry id="dselect.8">
- <refmeta>
- <refentrytitle>dselect</refentrytitle>
- <manvolnum>8</manvolnum>
- <refmiscinfo class='source'>Debian Project</refmiscinfo>
- <refmiscinfo class='manual'>dpkg suite</refmiscinfo>
- </refmeta>
- <refnamediv>
- <refname>dselect</refname>
- <refpurpose>Debian package management frontend</refpurpose>
- </refnamediv>
- <refsynopsisdiv>
- <cmdsynopsis>
- <command>dselect</command>
- <arg choice="opt">--admindir <replaceable>directory</replaceable></arg>
- <arg choice="opt">--help</arg>
- <arg choice="opt">--version</arg>
- <group choice="opt">
- <arg choice="plain">--licence</arg>
- <arg choice='plain'>--license</arg>
- </group>
- <arg choice="opt">--expert</arg>
- <arg choice="opt">
- <group choice="plain">
- <arg choice="plain">--debug</arg>
- <arg choice="plain">-D</arg>
- </group>
- <replaceable>file</replaceable>
- </arg>
- <arg choice="opt">
- <group choice="plain">
- <arg choice="plain">--colour</arg>
- <arg choice="plain">--color</arg>
- </group>
- <replaceable>screenpart</replaceable>:<replaceable><optional>foreground</optional></replaceable>,<replaceable><optional>background</optional></replaceable>:<replaceable><optional>attr<replaceable><optional>+attr+..</optional></replaceable></optional></replaceable>
- </arg>
- <arg choice="opt"><replaceable>action</replaceable></arg>
- </cmdsynopsis>
- </refsynopsisdiv>
- <refsect1>
- <title>Description</title>
- <para>
- <command>dselect</command> is the primary user interface for managing
- packages on a Debian system. At the <command>dselect</command> main menu,
- the system administrator can:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- Update the list of available package versions
- </para>
- </listitem>
- <listitem>
- <para>
- View the status of installed and available packages,
- </para>
- </listitem>
- <listitem>
- <para>
- Alter package selections and manage dependencies,
- </para>
- </listitem>
- <listitem>
- <para>
- Install new packages or upgrade to newer versions.
- </para>
- </listitem>
- </itemizedlist>
- <para>
- <command>dselect</command> operates as a front-end to
- <command>>dpkg</command>, the medium-level debian package handling tool.
- It features a full-screen package selections manager with package depends
- and conflicts resolver. When run with adminitrator priviledges, packages
- can be installed, upgraded and removed. Various access methods can be
- configured to retrieve available package version information and
- installable packages from package repositories. Depending on the used
- access method, these repositories can be public archive servers on the
- internet, local archive servers or cdroms. The recommended access method
- is <emphasis>apt</emphasis>, which is provided by the package
- <productname>apt</productname>.
- </para>
- <para>
- Normally <command>dselect</command> is invoked without parameters. An
- interactive menu is presented, offering the user a list of actions. If
- an action is given as argument, then that action is started immediately.
- Several commandline parameters are still available to modify the running
- behaviour of <command>dselect</command> or show additional information
- about the program.
- </para>
- </refsect1>
- <refsect1>
- <title>Options</title>
- <para>
- All options can be specified both on the commandline and in the
- <command>dselect</command> configuration file
- <filename>/etc/dpkg/dselect.cfg</filename>. Each line in the
- configuration file is either an option (exactly the same as the
- commandline option but without leading dashes) or a comment (if it starts
- with a hash `#' sign).
- </para>
- <variablelist>
- <varlistentry>
- <term>
- <cmdsynopsis>
- <arg choice="plain">--admindir <replaceable>directory</replaceable></arg>
- </cmdsynopsis>
- </term>
- <listitem>
- <para>
- Changes the directory where the dpkg <filename>status</filename>,
- <filename>available</filename> and similar files are located. This
- defaults to <filename>/var/lib/dpkg</filename> and normally there
- should not be any need to change it.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <cmdsynopsis>
- <group choice="plain">
- <arg choice="plain">--debug <replaceable>file</replaceable></arg>
- <arg choice="plain">-D <replaceable>file</replaceable></arg>
- </group>
- </cmdsynopsis>
- </term>
- <listitem>
- <para>
- Turn on debugging. Debugging information is sent to
- <option>file</option>.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <cmdsynopsis>
- <arg choice="plain">--expert</arg>
- </cmdsynopsis>
- </term>
- <listitem>
- <para>
- Turns on expert mode, i.e. does not display possibly annoying
- help messages.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <cmdsynopsis>
- <arg choice="plain">
- <group choice="plain">
- <arg choice="plain">--colour</arg>
- <arg choice="plain">--color</arg>
- </group>
- <replaceable>screenpart</replaceable>:<replaceable><optional>foreground</optional></replaceable>,<replaceable><optional>background</optional></replaceable>:<replaceable><optional>attr<replaceable><optional>+attr+..</optional></replaceable></optional></replaceable>
- </arg>
- </cmdsynopsis>
- </term>
- <listitem>
- <para>
- Configures screen colours. This works only if your display
- supports colours. This option may be used multiple times (and is
- best used in <filename>dselect.cfg</filename>). Each use changes
- the colour (and optionally, other attributes) of one part of the
- screen. The parts of the screen (from top to bottom) are:
- </para>
- <variablelist>
- <varlistentry>
- <term>title</term>
- <listitem>
- <para>
- The screen title.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>listhead</term>
- <listitem>
- <para>
- The header line above the list of packages.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>list</term>
- <listitem>
- <para>
- The scrolling list of packages (and also some help text).
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>listsel</term>
- <listitem>
- <para>
- The selected item in the list.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>pkgstate</term>
- <listitem>
- <para>
- In the list of packages, the text indicating the current
- state of each package.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>pkgstatesel</term>
- <listitem>
- <para>
- In the list of packages, the text indicating the current
- state of the currently selected package.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>infohead</term>
- <listitem>
- <para>
- The header line that displays the state of the currently
- selected package.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>infodesc</term>
- <listitem>
- <para>
- The package's short description.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>info</term>
- <listitem>
- <para>
- Used to display package info such as the package's description.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>infofoot</term>
- <listitem>
- <para>
- The last line of the screen when selecting packages.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>query</term>
- <listitem>
- <para>
- Used to display query lines.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>helpscreen</term>
- <listitem>
- <para>
- Colour of help screens.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- <para>
- After the part of the screen comes a colon and the color
- specification. You can specify either the foreground color, the
- background color, or both, overriding the compiled-in colors. Use
- standard curses color names.
- </para>
- <para>
- Optionally, after the color specification is another colon, and
- an attribute specification. This is a list of one or more
- attributes, separated by plus ("+") characters. Available
- attributes include (not all of these will work on all terminals):
- normal, standout, underline, reverse, blink, bright, dim,
- bold.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <cmdsynopsis>
- <arg choice="plain">--help</arg>
- </cmdsynopsis>
- </term>
- <listitem>
- <para>
- Print a brief help text and exit successfully.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <cmdsynopsis>
- <group choice="plain">
- <arg choice="plain">--licence</arg>
- <arg choice="plain">--license</arg>
- </group>
- </cmdsynopsis>
- </term>
- <listitem>
- <para>
- Displays the <command>dselect</command> copyright and license
- information and exits successfully.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <cmdsynopsis>
- <arg choice="plain">--version</arg>
- </cmdsynopsis>
- </term>
- <listitem>
- <para>
- Print version information and exit successfully.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsect1>
- <refsect1>
- <title>Usage</title>
- <para>
- When <command>dselect</command> is started interactively, it prompts the
- user with a menu of available actions:
- </para>
- <variablelist>
- <varlistentry>
- <term>Access</term>
- <listitem>
- <para>
- Choose and configure an access method to access package repositories.
- </para>
- <para>
- By default, <command>dselect</command> provides several methods such
- as <emphasis>floppy</emphasis>, <emphasis>harddisk</emphasis> or
- <emphasis>cdrom</emphasis>, but other packages may provide additional
- methods, eg. the <emphasis>apt</emphasis> access method provided by
- the <productname>apt</productname> package or
- <emphasis>multi_cd</emphasis> by the
- <productname>dpkg-multicd</productname> package.
- </para>
- <note>
- <para>
- The use of the <emphasis>apt</emphasis> access method is strongly
- recommended.
- </para>
- </note>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Update</term>
- <listitem>
- <para>
- Refresh the available packages database.
- </para>
- <para>
- Retrieves a list of available package versions from the package
- repository, configured for the current access method, and update
- the dpkg database. The package lists are commonly provided by the
- repository as files named <filename>Packages</filename> or
- <filename>Packages.gz</filename>. These files can be generated by
- repository maintainers, using the program
- <command>dpkg-scanpackages</command>.
- </para>
- <para>
- Details of the update action depend on the access method's
- implementation. Normally the process is straightforward and
- requires no user interaction.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Select</term>
- <listitem>
- <para>
- View or manage package selections and dependencies.
- </para>
- <para>
- This is the main function of <command>dselect</command>. In the
- select screen, the user can review a list of all available and
- installed packages. When run with administrator privileges, it is
- also possible to interactively change packages selection state.
- <command>dselect</command> tracks the implications of these changes
- to other depending or conflicting packages.
- </para>
- <para>
- When a conflict or failed depends is detected, a dependency
- resolution subscreen is prompted to the user. In this screen, a
- list of conflicting or depending packages is shown, and for each
- package listed, the reason for its listing is shown. The user may
- apply the suggestions proposed by <command>dselect</command>,
- override them, or back out all the changes, including the ones that
- created the unresolved depends or conflicts.
- </para>
- <para>
- The use of the interactive package selections management screen is
- explained in more detail below.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Install</term>
- <listitem>
- <para>
- Installs selected packages.
- </para>
- <para>
- The configured access method will fetch installable or upgradable
- packages from the relevant repositories and install these using
- <command>dpkg</command>. Depending on the implementation of the
- access method, all packages can be prefetched before installation,
- or fetched when needed. Some access methods may also remove
- packages that were marked for removal.
- <para>
- <para>
- If an error occurred during install, it is usually advisable to run
- install again. In most cases, the problems will disappear or be
- solved. If problems persist or the installation performed was
- incorrect, please investigate into the causes and circumstances,
- and file a bug in the Debian bug tracking system. Instructions on
- how to do this can be found at <ulink
- url='http://bugs.debian.org/'>http://bugs.debian.org/</ulink> or by
- reading the documentation for <command>bug</command> or
- <command>reportbug</command>, if these are installed.
- <para>
- <para>
- Details of the install action depend on the access method's
- implementation. The user's attention and input may be required
- during installation, configuration or removal of packages. This
- depends on the maintainer scripts in the package. Some packages
- make use of the <productname>>debconf</productname> library,
- allowing for more flexible or even automated installation setups.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Config</term>
- <listitem>
- <para>
- Configures any previously installed, but not fully configured packages.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Remove</term>
- <listitem>
- <para>
- Removes or purges installed packages, that are marked for removal.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>Quit</term>
- <listitem>
- <para>
- Quit <command>dselect</command>.
- </para>
-
- <para>
- Exits the program with zero (succesful) errorcode.
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsect1>
- <refsect1>
- <title>Package Selections Management</title>
- <refsect2>
- <title>Introduction</title>
- <para>
- <command>dselect</command> directly exposes
- the administrator to some of the complexities involved with managing
- large sets of packages with many interdependencies. For a user who is
- unfamiliar with the concepts and the ways of the debian package
- management system, it can be quite overwhelming. Although <emphasis
- remap='B'>dselect</emphasis> is aimed at easing package management and
- administration, it is only instrumental in doing so and can not be
- assumed to be a sufficient substitute for administrator skill and
- understanding. The user is required to be familiar with the concepts
- underlying the Debian packaging system. In case of doubt, consult the
- <citerefentry><refentrytitle>dpkg</refentrytitle><manvolnum>8</manvolnum></citerefentry>
- manpage and the Debian policy manual.
- </para>
- <para>
- Unless <command>dselect</command> is run in expert or immediate mode, a
- help screen is first displayed when choosing this action from the menu.
- The user is <emphasis>strongly</emphasis> advised to study all of the
- information presented in the online help screens, when one pops up.
- The online help screens can at any time be invoked with the
- <keycap>?</keycap> key.
- </para>
- </refsect2>
- <refsect2>
- <title>Screen Layout</title>
- <para>
- The select screen is by default split in a top and a bottom half. The
- top half shows a list of packages. A cursor bar can select an
- individual package, or a group of packages, if applicable, by selecting
- the group header. The bottom half of the screen shows some details
- about the package currently selected in the top half of the screen.
- The type of detail that is displayed can be varied.
- </para>
- <para>
- Pressing the <keycap>I</keycap> key toggles a full-screen display of
- the packages list, an enlarged view of the package details, or the
- equally split screen.
- </para>
- </refsect2>
- <refsect2>
- <title>Package Details View</title>
- <para>
- The package details view by default shows the extended package
- description for the package that is currently selected in the packages
- status list. The type of detail can be toggled by pressing the
- <keycap>i</keycap> key. This alternates between:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- the extended description
- </para>
- </listitem>
- <listitem>
- <para>
- the control information for the installed version
- </para>
- </listitem>
- <listitem>
- <para>
- the control information for the available version
- </para>
- </listitem>
- </itemizedlist>
- <para>
- In a dependency resolution screen, there is also the possibility of
- viewing the specific unresolved depends or conflicts related to the
- package and causing it to be listed.
- </para>
- </refsect2>
- <refsect2>
- <title>Packages Status List</title>
- <para>
- The main select screen displays a list of all packages known to the
- debian package management system. This includes packages installed on
- the system and packages known from the available packages database.
- </para>
- <para>
- For every package, the list shows the package's status, priority,
- section, installed and available versions, the package name and its
- short description, all in one line. By pressing the <keycap>V</keycap>
- key, the display of the installed and available version can be toggled
- between on an off. By pressing the <keycap>v</keycap> key, the package
- status display is toggled between verbose and shorthand. Shorthand
- display is the default.
- </para>
- <para>
- The shorthand status indication consists of four parts: an error flag,
- which should normally be clear, the current status, the last selection
- state and the current selection state. The first two relate to the
- actual state of the package, the second pair are about the selections
- set by the user.
- </para>
- <para>
- These are the meanings of the shorthand package status indicator codes:
- </para>
- <table>
- <title>Error flags</title>
- <tgroup cols=2>
- <thead>
- <row>
- <entry>Flag</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>empty</entry>
- <entry>no error</entry>
- </row>
- <row>
- <entry>R</entry>
- <entry>serious error, needs reinstallation</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <table>
- <title>Installed state</title>
- <tgroup cols=2>
- <thead>
- <row>
- <entry>Flag</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>empty</entry>
- <entry>not installed</entry>
- </row>
- <row>
- <entry>*</entry>
- <entry>fully installed and configured</entry>
- </row>
- <row>
- <entry>-</entry>
- <entry>not installed but some config files may remain</entry>
- </row>
- <row>
- <entry>U</entry>
- <entry>unpacked but not yet configured</entry>
- </row>
- <row>
- <entry>C</entry>
- <entry>half-configured (an error happened)</entry>
- </row>
- <row>
- <entry>I</entry>
- <entry>half-installed (an error happened)</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <table>
- <title>Current and requested selsections</title>
- <tgroup cols=2>
- <thead>
- <row>
- <entry>Flag</entry>
- <entry>Description</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>*</entry>
- <entry>marked for installation or upgrade</entry>
- </row>
- <row>
- <entry>-</entry>
- <entry>marked for removal, configuration files remain</entry>
- </row>
- <row>
- <entry>=</entry>
- <entry>on hold: package will not be processed at all</entry>
- </row>
- <row>
- <entry>_</entry>
- <entry>marked for purge, also remove configuration and data</entry>
- </row>
- <row>
- <entry>n</entry>
- <entry>package is new and has yet to be marked</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </refsect2>
- <refsect2>
- <title>Cursor And Screen Movement</title>
- <para>
- The package selection list and the dependency conflict resolution
- screens can be navigated using motion commands mapped to the following
- keys:
- </para>
- <table>
- <title>movement keybindings</title>
- <tgroup cols=2>
- <thead>
- <row>
- <entry>Key(s)</entry>
- <entry>Action</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><keycap>p</keycap>, <keycap>Up</keycap>, <keycap>k</keycap></entry>
- <entry>move cursor bar up</entry>
- </row>
- <row>
- <entry><keycap>n</keycap>, <keycap>Down</keycap>, <keycap>j</keycap></entry>
- <entry>move cursor bar down</entry>
- </row>
- <row>
- <entry><keycap>P</keycap>, <keycap>PgUp</keycap>, <keycap>BackSpace</keycap></entry>
- <entry>scroll list 1 page up</entry>
- </row>
- <row>
- <entry><keycap>N</keycap>, <keycap>PgDn</keycap>, <keycap>Space</keycap></entry>
- <entry>scroll list 1 page down</entry>
- </row>
- <row>
- <entry><keycap>Ctrl</keycap>-<keycap>p</keycap></entry>
- <entry>scroll list 1 line up</entry>
- </row>
- <row>
- <entry><keycap>Ctrl</keycap>-<keycap>n</keycap></entry>
- <entry>scroll list 1 line down</entry>
- </row>
- <row>
- <entry><keycap>t</keycap>, <keycap>Home</keycap></entry>
- <entry>jump to top of list</entry>
- </row>
- <row>
- <entry><keycap>e</keycap>, <keycap>End</keycap></entry>
- <entry>jump to end of list</entry>
- </row>
- <row>
- <entry><keycap>u</keycap></entry>
- <entry>scroll info 1 page up</entry>
- </row>
- <row>
- <entry><keycap>d</keycap></entry>
- <entry>scroll info 1 page down</entry>
- </row>
- <row>
- <entry><keycap>Ctrl</keycap>-<keycap>u</keycap></entry>
- <entry>scroll info 1 line up</entry>
- </row>
- <row>
- <entry><keycap>Ctrl</keycap>-<keycap>d</keycap></entry>
- <entry>scroll info 1 line down</entry>
- </row>
- <row>
- <entry><keycap>B</keycap>, <keycap>Left</keycap></entry>
- <entry>pan display 1/3 screen left</entry>
- </row>
- <row>
- <entry><keycap>F</keycap>, <keycap>Right</keycap></entry>
- <entry>pan display 1/3 screen right</entry>
- </row>
- <row>
- <entry><keycap>Ctrl</keycap>-<keycap>b</keycap></entry>
- <entry>pan display 1 character left</entry>
- </row>
- <row>
- <entry><keycap>Ctrl</keycap>-<keycap>f</keycap></entry>
- <entry>pan display 1 character right</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </refsect2>
- <refsect2>
- <title>Searching And Sorting</title>
- <para>
- The list of packages can be searched by package name. This is done by
- pressing <keycap>/</keycap>, and typing a simple search string. The
- string is interpreted as a
- <citerefentry><refentrytitle>regex</refentrytitle><manvolnum>7</manvolnum></citerefentry>
- regular expression. If you add `<emphasis>/d</emphasis>' to the search
- expression, dselect will also search in descriptions. If you add
- `<emphasis>/i</emphasis>' the search will be case insensitive. You may
- combine these two suffixes like this: `<emphasis>'/id'</emphasis>.
- Repeated searching is accomplished by repeatedly pressing the
- <keycap>n</keycap> or <keycap>\</keycap> keys, until the wanted package
- is found. If the search reaches the bottom of the list, it wraps to
- the top and continues searching from there.
- </para>
- <para>
- The list sort order can be varied by pressing the <keycap>o</keycap>
- and <keycap>O</keycap> keys repeatedly. The following nine sort
- orderings can be selected:
- </para>
- <para>
- alphabet available status
- priority+section available+priority status+priority
- section+priority available+section status+section
- </para>
- <para>
- Where not listed above explicitly, alphabetic order is used as the
- final subordering sort key.
- </para>
- </refsect2>
- <refsect2>
- <title>Altering Selections</title>
- <para>
- The requested selection state of individual packages may be altered
- with the following commands:
- </para>
- <table>
- <title>action keybindings</title>
- <tgroup cols=2>
- <thead>
- <row>
- <entry>Key(s)</entry>
- <entry>Action</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><keycap>+</keycap>, <keycap>Insert</keycap></entry>
- <entry>install or upgrade</entry>
- </row>
- <row>
- <entry><keycap>=</keycap>, <keycap>H</keycap></entry>
- <entry>hold in present state and version</entry>
- </row>
- <row>
- <entry><keycap>:</keycap>, <keycap>G</keycap></entry>
- <entry>unhold: upgrade or leave uninstalled</entry>
- </row>
- <row>
- <entry><keycap>-</keycap>, <keycap>Delete</keycap></entry>
- <entry>remove, but leave configuration and data</entry>
- </row>
- <row>
- <entry><keycap>_</keycap></entry>
- <entry>remove & purge configuration and data</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- When the change request results in one or more unsatisfied depends or
- conflicts, <command>dselect</command> prompts the user with a
- dependency resolution screen. This will be further explained below.
- </para>
- <para>
- It is also possible to apply these commands to groups of package
- selections, by pointing the cursor bar onto a group header. The exact
- grouping of packages is dependent on the current
- list ordering settings.
- </para>
- <para>
- Proper care should be taken when altering large groups of selections,
- because this can instantaneously create large numbers of unresolved
- depends or conflicts, all of which will be listed in one dependency
- resolution screen, making them very hard to handle. In practice, only
- hold and unhold operations are useful when applied to groups.
- </para>
- </refsect2>
- <refsect2>
- <title>Resolving Depends And Conflicts</title>
- <para>
- When the change request results in one or more unsatisfied depends or
- conflicts, <command>dselect</command> prompts the user with a
- dependency resolution screen. First however, an informative help
- screen is displayed.
- </para>
- <para>
- The top half of this screen lists all the packages that will have
- unresolved depends or conflicts, as a result of the requested change,
- and all the packages whose installation can resolve any of these
- depends or whose removal can resolve any of the conflicts. The bottom
- half defaults to show the depends or conflicts that cause the currently
- selected package to be listed.
- </para>
- <para>
- When the sublist of packages is displayed initially,
- <command>dselect</command> may have already set the requested selection
- status of some of the listed packages, in order to resolve the depends
- of conflicts that caused the dependency resolution screen to be
- displayed. Usually, it is best to follow up the suggestions made by
- <command>dselect</command>.
- </para>
- <para>
- The listed packages' selection state may be reverted to the original
- settings, as they were before the unresolved depends or conflicts were
- created, by pressing the <keycap>R</keycap> key. By pressing the
- <keycap>D</keycap> key, the automatic suggestions are reset, but the
- change that caused the dependency resolution screen to be prompted is
- kept as requested. Finally, by pressing <keycap>U</keycap>, the
- selections are again set to the automatic suggestion values.
- </para>
- </refsect2>
- <refsect2>
- <title>Establishing The Requested Selections</title>
- <para>
- By pressing <keycap>Enter</keycap>, the currently displayed set of
- selections is accepted. If <command>dselect</command> detects no
- unresolved depends as a result of the requested selections, the new
- selections will be set. However, if there are any unresolveded
- depends, <command>dselect</command> will again prompt the user with a
- dependency resolution screen.
- </para>
- <para>
- To alter a set of selections that creates unresolved depends or
- conflicts and forcing <command>dselect</command> to accept it, press
- the <keycap>Q</keycap> key. This sets the selections as specified by
- the user, unconditionally. Generally, don't do this unless you've read
- the fine print.
- </para>
- <para>
- The opposite effect, to back out any selections change requests and go
- back to the previous list of selections, is attained by pressing the
- <keycap>X</keycap> or <keycap>Escape</keycap> keys. By repeatedly
- pressing these keys, any possibly detrimental changes to the requested
- package selections can be backed out completely to the last established
- settings.
- </para>
- </refsect2>
- </refsect1>
- <refsect1>
- <title>Bugs</title>
- <para>
- The <command>dselect</command> package selection interface is confusing
- to some new users. Reportedly, it even makes seasoned kernel developers
- cry.
- </para>
- <para>
- The documentation is lacking.
- </para>
- <para>
- There is no help option in the main menu.
- </para>
- <para>
- The visible list of available packages cannot be reduced.
- </para>
- <para>
- The built in access methods can no longer stand up to current quality
- standards. Use the access method provided by
- <productname>apt</productname>, it is not only not broken, it is also
- much more flexible than the built in access methods.
- </para>
- </refsect1>
- <refsect1>
- <title>See Also</title>
- <para>
- <citerefentry>
- <refentrytitle>dselect.cfg</refentrytitle>
- <manvolnum>5</manvolnum>
- </citerefentry>,
- <citerefentry>
- <refentrytitle>dpkg</refentrytitle>
- <manvolnum>8</manvolnum>
- </citerefentry>,
- <citerefentry>
- <refentrytitle>apt-get</refentrytitle>
- <manvolnum>8</manvolnum>
- </citerefentry>,
- <citerefentry>
- <refentrytitle>sources.list</refentrytitle>
- <manvolnum>5</manvolnum>
- </citerefentry>,
- <citerefentry>
- <refentrytitle>deb</refentrytitle>
- <manvolnum>5</manvolnum>
- </citerefentry>,
- the Debian policy manual.
- </para>
- </refsect1>
- </refentry>
|