what's the use of dselect

From: Benedict Verheyen (linux4bene_at_pandora.be)
Date: 02/20/04

  • Next message: Richard Lyons: "Re: CLI"
    Date: Fri, 20 Feb 2004 00:13:29 +0100 (CET)
    To: debian-user@lists.debian.org
    
    

    Hi,

    I admit i'm a little confused as to what the use is of dselect when
    we have tools like aptitude and apt-get.
    Off course, if you like dselect, stop reading ;)
    I don't like it so i try to use other tools to accomplish the same
    stuff you can do with dselect.
    To try to figure this out,i looked at dselect, dpkg, apt-get and aptitude.
    According to the manpages of the aformentioned packages, the tools
    match up like this:

    Package Manager: dpkg
    Backend Tool: apt-get
    Frontend Tools: dselect, aptitude, synaptic, etc

    By looking at the manpages, i first looked at what files the tools
    use:

    1) Dpkg
    /var/lib/dpkg/status: status of packages
    /var/lib/dpkg/available: available packages

    2) Apt
    /var/lib/apt/lists: available packages
    /var/cache/apt/archives: saved/cached packages

    3) Dselect
    /var/lib/dpkg/available

    4) Aptitude
    /var/lib/aptitude/pkgstatus status of packages

    1. Now, the manpage of apt-get says this about /var/lib/apt/lists
    "/var/lib/apt/lists/
    Storage area for state information for each package resource specified
    in sources.list(5) Configuration Item: Dir::State::Lists. "
    This seems to be incorrect as the files in that dir seem to be
    about what packages are available on what location and not what
    the status of the package is on the system.

    2. /var/lib/dpkg/available seems the same as /var/lib/apt/lists.
    But to get the same in both files, you also need to do a
    dselect update (as opposed to a apt-get update)

    3. Something that wasn't clear for me: where does an "apt-cache policy"
    command gets it's info?

    4. If you do an "apt-get update", then i think aptitude knows
    about the updated lists.

    So as to what is the use of dselect:

    For the common daily use, apt-get and aptitude seem to do the job.
    The only situation i can think of where you'll need dselect is
    after a dpkg --set-selections < myselection.
    Because this changes the status of the packages and thus the
    /var/lib/dpkg/status file. "apt-get dselect-upgrade" is the
    command you should run to update the system and not
    "apt-get dist-upgrade".

    Why can't use apt-get in this situation (well according to me)?
    Because apt-get doesn't use the file /var/lib/dpkg/status.
    So it will probably just upgrade the system and not install
    for instance the new packages that where set by
    dpkg --set-selections.

    But, in order to do this correctly, you'll have to make sure
    that your sources.list matches the one from the source system
    (to have the same packages available) and that you've done
    a dselect update. That will make sure /var/lib/dpkg/available
    is in working order.
    apt-get dselect-upgrade then calls dselect to install the
    packages. So the versions of the available packages need to be
    known before we can change their status with dpkg --set-selections.

    So if the above is true, wouldn't it make sense for apt-get
    to do like dselect and use /var/lib/dpkg/available or would that
    typically be more of a job for a frontend tool like aptitude?
    If so, is there a similar command in aptitude for
    "apt-get dselect-upgrade" ? Or does it also use dselect to do this?
    It wouldn't make sense that if those tools are ment to replace
    dselect that they would still use dselect for some stuff.
    And frankly i find it confusing :)

    Any comments are appreciated.

    Benedict

    -- 
    To UNSUBSCRIBE, email to debian-user-request@lists.debian.org 
    with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
    

  • Next message: Richard Lyons: "Re: CLI"

    Relevant Pages

    • Re: fetching older packages?
      ... > I used dselect for 6 years or so. ... > automatically removed packages, so old libraries don't pile up. ... > I've attached my aptitude tips document. ... > the Recommends relationship. ...
      (Debian-User)
    • Re: To dselect or aptitude, that is the question
      ... > Nine reasons why you should be using aptitude instead of apt-get or dselect. ... > install', it looks and works just like apt-get, with a few enhancements. ... > Stop worrying about pruning unused libraries and support packages from ...
      (Debian-User)
    • Re: Moving "setup" from one computer to another?
      ... You can transfer this file to another computer, and install ... # apt-get -u dselect-upgrade # or dselect install ... "auto" state of packages (packages installed automatically as opposed ... I don't know of a way to do this that easily with aptitude. ...
      (Debian-User)
    • Re: aptitude vs synaptic
      ... >>packages automatically selected as dependencies by aptitude and synaptic ... >Synaptic and aptitude are very great, but I really don't enjoy dselect. ...
      (Debian-User)
    • Re: Newbie installation query
      ... With the -s option for apt-get you can preview what packages will be ... so that dselect-like feedback ... dselect, ...
      (Debian-User)