Man Linux: Main Page and Category List


       dselect - Debian package management frontend


       dselect   [--admindir   <directory>]  [--help]  [--version]  [--expert]
       [--debug|-D<file>]             [<action>]             [--colour|--color


       dselect  is one of the primary user interfaces for managing packages on
       a Debian system. At the dselect main  menu,  the  system  administrator
        - Update the list of available package versions,
        - View the status of installed and available packages,
        - Alter package selections and manage dependencies,
        - Install new packages or upgrade to newer versions.

       dselect  operates  as  a  front-end  to  dpkg(1),  the low-level debian
       package handling tool. It features  a  full-screen  package  selections
       manager  with  package  depends  and  conflicts resolver. When run with
       administrator privileges,  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 apt, which is provided by the
       package apt.

       Normally dselect 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 dselect or show additional information about the  program.


       All options can be specified both on the commandline and in the dselect
       configuration  file  /etc/dpkg/dselect.cfg  or   the   files   on   the
       configuration   directory   /etc/dpkg/dpkg.cfg.d/.  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 #).

       --admindir <directory>
              Changes the directory where the dpkg `status',  `available'  and
              similar  files  are  located. This defaults to /var/lib/dpkg and
              normally there shouldn't be any need to change it.

       --debug <file> | -D<file>
              Turn on debugging. Debugging information is sent to <file>.

              Turns on expert mode, i.e.  doesn't  display  possibly  annoying
              help messages.

       --colour|--color  screenpart:[foreground],[background][:attr[+attr+..]]
              Configures  screen  colors.  This  works  only  if  your display
              supports colors.  This option may be used multiple times (and is
              best  used  in  dselect.cfg).  Each  use  changes the color (and
              optionally, other attributes) of one part of  the  screen.   The
              parts of the screen (from top to bottom) are:

              title  The screen title.

                     The header line above the list of packages.

              list   The scrolling list of packages (and also some help text).

                     The selected item in the list.

                     In the list of packages, the text indicating the  current
                     state of each package.

                     In  the list of packages, the text indicating the current
                     state of the currently selected package.

                     The header line that displays the state of the  currently
                     selected package.

                     The package's short description.

              info   Used  to  display  package  info  such  as  the package's

                     The last line of the screen when selecting packages.

              query  Used to display query lines

                     Color of help screens.

       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

       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

       --help Print a brief help text and exit successfully.

              Print version information and exit successfully.


       When  dselect is started interactively, it prompts the user with a menu
       of available actions:

       Choose and configure an access method to access package repositories.

       By default, dselect provides several methods such as  floppy,  harddisk
       or  cdrom,  but  other packages may provide additional methods, eg. the
       apt access method provided by  the  apt  package  or  multi_cd  by  the
       dpkg-multicd package.

       The use of the apt access method is strongly recommended.

       Refresh the available packages database.

       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 Packages or Packages.gz.  These files can  be
       generated    by    repository    maintainers,    using    the   program

       Details  of  the  update  action  depend   on   the   access   method's
       implementation.   Normally  the process is straightforward and requires
       no user interaction.

       View or manage package selections and dependencies.

       This is the main function of dselect. 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.  dselect tracks the implications of
       these changes to other depending or conflicting packages.

       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 dselect, override them, or  back  out  all  the
       changes,  including  the  ones  that  created the unresolved depends or

       The use of the interactive  package  selections  management  screen  is
       explained in more detail below.

       Installs selected packages.

       The  configured  access  method  will  fetch  installable or upgradable
       packages from the relevant repositories and install these  using  dpkg.
       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.

       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 or by reading the documentation  for  bug(1)
       or reportbug(1), if these are installed.

       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
       debconf(1)  library,  allowing  for  more  flexible  or  even automated
       installation setups.

       Configures any previously installed, but not fully configured packages.

       Removes or purges installed packages, that are marked for removal.

       Quit dselect

       Exits the program with zero (successful) errorcode.

Package selections management

       dselect  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  dselect  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
       dpkg(1)  manpage  and  the  Debian  Policy  manual,  contained  in  the
       debian-policy package.

       Unless  dselect  is  run  in expert or immediate mode, a help screen is
       first displayed when choosing this action from the menu.  The  user  is
       strongly  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 '?' key.

   Screen layout
       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.

       Pressing the 'I' key toggles a  full-screen  display  of  the  packages
       list,  an  enlarged  view  of the package details, or the equally split

   Package details view
       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  'i'
       key. This alternates between:
        - the extended description
        - the control information for the installed version
        - the control information for the available version

       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.

   Packages status list
       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.

       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 'V' key, the
       display of the installed and available version can be  toggled  between
       on  an  off.  By  pressing  the  'v' key, the package status display is
       toggled between  verbose  and  shorthand.   Shorthand  display  is  the

       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.

       These are the meanings of the shorthand package status indicator codes:
        Error flag:
         empty   no error
         R       serious error, needs reinstallation;
        Installed state:
         empty   not installed;
         *       fully installed and configured;
         -       not installed but some config files may remain;
         U       unpacked but not yet configured;
         C       half-configured (an error happened);
         I       half-installed (an error happened).
        Current and requested selections:
         *       marked for installation or upgrade;
         -       marked for removal, configuration files remain;
         =       on hold: package will not be processed at all;
         _       marked for purge, also remove configuration;
         n       package is new and has yet to be marked.

   Cursor and screen movement
       The package selection  list  and  the  dependency  conflict  resolution
       screens  can be navigated using motion commands mapped to the following
         p, Up, k           move cursor bar up
         n, Down, j         move cursor bar down
         P, Pgup, Backspace scroll list 1 page up
         N, Pgdn, Space     scroll list 1 page down
         ^p                 scroll list 1 line up
         ^n                 scroll list 1 line down
         t, Home            jump to top of list
         e, End             jump to end of list
         u                  scroll info 1 page up
         d                  scroll info 1 page down
         ^u                 scroll info 1 line up
         ^d                 scroll info 1 line down
         B, Left-arrow      pan display 1/3 screen left
         F, Right-arrow     pan display 1/3 screen right
         ^b                 pan display 1 character left
         ^f                 pan display 1 character right

   Searching and sorting
       The list of packages can be searched by package name. This is  done  by
       pressing  '/',  and  typing  a  simple  search  string.  The  string is
       interpreted as a regex(7) regular expression.  If you add '/d'  to  the
       search expression, dselect will also search in descriptions. If you add
       '/i' the search will be case insensitive.  You may  combine  these  two
       suffixes  like  this:  '/id'.   Repeated  searching  is accomplished by
       repeatedly pressing the 'n' or '\' 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.

       The list sort order can be varied by pressing  the  'o'  and  'O'  keys
       repeatedly.  The following nine sort orderings can be selected:
        alphabet          available           status
        priority+section  available+priority  status+priority
        section+priority  available+section   status+section
       Where  not  listed  above  explicitly,  alphabetic order is used as the
       final subordering sort key.

   Altering selections
       The requested selection state of individual  packages  may  be  altered
       with the following commands:
         +, Insert    install or upgrade
         =, H         hold in present state and version
         :, G         unhold: upgrade or leave uninstalled
         -, Delete    remove, but leave configuration
         _            remove & purge configuration

       When  the  change request results in one or more unsatisfied depends or
       conflicts, dselect  prompts  the  user  with  a  dependency  resolution
       screen. This will be further explained below.

       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

       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.

   Resolving depends and conflicts
       When the change request results in one or more unsatisfied  depends  or
       conflicts,  dselect  prompts  the  user  with  a  dependency resolution
       screen. First however, an informative help screen is displayed.

       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.

       When  the  sublist of packages is displayed initially, dselect may have
       already set the requested  selection  status  of  some  of  the  listed
       packages,  in order to resolve the depends or conflicts that caused the
       dependency resolution screen to be displayed. Usually, it  is  best  to
       follow up the suggestions made by dselect.

       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  'R'  key.  By  pressing  the  'D' 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 'U', the selections are again set to the automatic
       suggestion values.

   Establishing the requested selections
       By  pressing  enter,  the  currently  displayed  set  of  selections is
       accepted. If dselect detects no unresolved depends as a result  of  the
       requested  selections,  the  new  selections  will be set.  However, if
       there are any unresolved depends, dselect will again  prompt  the  user
       with a dependency resolution screen.

       To  alter  a  set  of  selections  that  creates  unresolved depends or
       conflicts and forcing dselect to accept it, press  the  'Q'  key.  This
       sets   the  selections  as  specified  by  the  user,  unconditionally.
       Generally, don't do this unless you've read the fine print.

       The opposite effect, to back out any selections change requests and  go
       back  to  the  previous list of selections, is attained by pressing the
       'X' or escape 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.

       If you mistakenly establish some settings and wish to  revert  all  the
       selections  to what is currently installed on the system, press the 'C'
       key.  This is somewhat similar to  using  the  unhold  command  on  all
       packages,  but  provides a more obvious panic button in cases where the
       user pressed enter by accident.


       HOME   If set, dselect will use it as the directory from which to  read
              the user specific configuration file.


       The dselect package selection interface is confusing to some new users.
       Reportedly, it even makes seasoned kernel developers cry.

       The documentation is lacking.

       There is no help option in the main menu.

       The visible list of available packages cannot be reduced.

       The built in access methods can no longer stand up to  current  quality
       standards.  Use  the  access method provided by apt, it is not only not
       broken, it is also much more flexible than the built in access methods.


       dpkg(1), apt-get(8), sources.list(5), deb(5).


       dselect was written by Ian Jackson ( Full list
       of contributors may be found in 'dselect --version'.
       This manual page was written by  Juho  Vuori  <>,
       Josip Rodin and Joost kooij.