I hardly ever hear anyone mention dselect, a deprecated package management front-end for Debian. Considering that it still exists as part of dpkg source, it must still have its uses. What are those? How does it compare with apt-get?

4 Answers 4


Dselect is an interactive dpkg front-end that resolves dependencies and conflicts. It lacks most of apt's advanced features: no differenciation between Suggests/Recommends/Depends, less good dependency and conflict resolution, no support for multiple sources of packages, no apt pinning/preferences, no automatically-installed package mark, …

(This is from memory. Actually dselect can now use apt backends for some functions, at least it can download from apt's sources.list.)

Dselect got a lot of hate simply from having unusual key bindings. I think your question will bring out unfond memories in some people.

I suppose dselect can still be useful if you want an interactive package selector with smaller memory consumption than apt.

  • Heh... Unfond memories? I sure remember the thrill switching from slack to debian... dselect... awesome! Anyhow, most of the things you mention here were outdated ten years ago. It does suggest/recommend/depend on packages. Dselect uses apt-get and its sources.list with as many sources you like. Dselect won't use less memory than apt-get tho since it calls apt-get for about everything. You're right about the pinning tho ;-) Nov 18, 2011 at 7:27
  • While I haven't used it in a couple of years dselect is still one of my most favourite package manager front ends and I loved those key bindings. I actually loath aptitude and still prefer dselect.
    – Brett Ryan
    Mar 23, 2016 at 2:40

Deselect doesn't have any of the wonderful dependency resolution, but you can kind of think of deselect as a curses based "synaptic". However, you only want to make selections with deselect; don't actually do the installation.

After making selections run this:

apt-get dselect-upgrade

Best of both worlds.

  • 2
    Aptitude is even better ;) Jan 18, 2011 at 5:03
  • I'm old school.
    – bahamat
    Jan 18, 2011 at 7:25
  • @bahamat Why use dselect instead of aptitude for selection?
    – tshepang
    Jan 18, 2011 at 8:18
  • 1
    @Tshepang I don't, I use apt-get. Although I do use dpkg --set-selections to set a large list of packages that I want then use apt-get dselect-upgrade to install them. This is extremely handy for automating system set up on a large scale.
    – bahamat
    Jan 18, 2011 at 8:25
  • 1
    I don't discourage it per sé. I don't particularly care for package menus. I already know what I want and don't need to browse. If I'm searching I much prefer apt-cache. But if you like to browse, then by all means. That's why there are different options. For a beginner, aptitude is much easier. But for an advanced user dselect is chock full of single keystroke commands and other difficult to discover goodies.
    – bahamat
    Jan 18, 2011 at 10:12

For an aptitude-based package-{backup, restore}, see this serverfault answer. For {deborphan-based package backup, aptitude-based package restore}, see advice from Bogdan Tokovenko (et al) .

  • I can vouch for aptitude and for deborphan. However you do not mention debfoster, which is a lifesaver to prune unwanted default packages or packages installed by mistake. In my opinion, the three are indispensable for any serious sysadmin [maybe except nowadays with the remote trends of Ansible, puppet and the likes]. I would also mention here, besides the link, that aptitude has a much more modern interactive interface dselect-like. Nov 17, 2015 at 6:55
  • @Rui F Ribeiro: Is the following quote (from this official-looking site) not correct? As of 2006-01-01, debfoster is officially deprecated: aptitude does the same stuff as debfoster but [is] integrated into [APT].
    – TomRoche
    Nov 18, 2015 at 4:33
  • Now that you mention it I do remember something about being obsolete. Thanks for pointing that out. I will investigate how to do it with aptitude, as the functionality is very convenient. Changed my post. Nov 18, 2015 at 6:02
  • However, and I have thought it what happens is that aptitude also maintains a DB of interdependencies like debfoster. What I do find useful in debfoster is not the houseking (that aptitude provides), it is deleting the DB, and do an audit of the system. It is excellent to prepare a base image, or to clean systems you inherited. Nov 18, 2015 at 6:59

I noticed this is a fairly old question. To answer it in a more modern tone, dselect is fairly old and obsolete. aptitude is far more consistent into evaluating dependencies than dselect and apt-get, and as a bonus, it you call aptitude without arguments, you have a dselect-like interface that works so much better.

aptitude does not come installed by default, and in Debian you have to do:

apt-get install aptitude

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.