[vox-tech] Apt-get vs. Dselect
Karsten M. Self
kmself at ix.netcom.com
Sun Mar 13 20:21:45 PST 2005
on Fri, Mar 11, 2005 at 10:52:05AM -0800, Rick Moen (rick at linuxmafia.com) wrote:
> Quoting Bob Scofield (rscofield at afes.com):
>
> > I'm trying to do a little reading about apt-get when I have the
> > time. Every once and awhile I see a reference to dselect.
> > Sometimes I get the impression that apt-get has superceded dselect,
> > and sometimes I get the impression that dselect does things that
> > apt-get doesn't. My question is this: is there a good reason for
> > an apt-get user to use dselect?
There's also the APT HOWTO:
http://www.debian.org/doc/manuals/apt-howto/index.en.html
...and Osmau Aoki's "Debian Reference" which is in some ways more
current and complete:
http://www.debian.org/doc/manuals/reference/reference.en.html
> Here's a logical "stack" diagram that I made a long time ago, for my
> "Debian Tips" collection:
>
> gnome-apt ---------
> aptitude | Package selection
> Corel Update |
> Storm Package Manager or
> dselect* |
> console-apt ------- |
> |
> | calls
> v
> apt-get Dependency-resolution,
> | package-retrieval
> |
> | calls
> v
> dpkg Package installation & removal,
> configuration
Good general overview. I'm not entirely sure that apt-get is a class by
itself.
> *dselect _can_ use apt-get as a "method" as indicated here, but by
> default does not, bypassing that layer and calling dpkg directly.
dselect is also a much earlier tool. apt-get dates to 1998, dselect to
1994. First release of aptitude was 2000.
I'd also classify things a bit differently, with some context to
RPM-based systems:
- Package and package-file manipulation: dpkg
Roughly equivalent to rpm.
- Package *system* operation and manipulation: dselect, apt-get &
aptitude
Operates on packages _logically_; doesn't interact with package
_files_ directly, in that package files aren't arguments to actions.
Each offers varying levels and sophistication of dependency and
conflict detection and resolution.
Interfaces:
- CLI only: apt-get
- interactive full-screen (ncurses) only: dselect
- *Both* CLI and full-screen (ncurses): aptitude
Caution, see bug#299009 WRT aptitude's inconsistent results when
used in different modes.
http://bugs.debian.org/299009
- synaptic, gnome-apt, Corel Update, Storm Package Manager, etc.: GUI
front ends. Most offer the features of aptitude/synaptic with
various desktop or distro integration.
There are a number of other tools falling into a few different
categories:
dpkg tools:
dpkg dpkg-distaddfile dpkg-ruby
dpkg-architecture dpkg-genchanges dpkg-scanpackages
dpkg-awk dpkg-gencontrol dpkg-scansources
dpkg-buildpackage dpkg-name dpkg-shlibdeps
dpkg-checkbuilddeps dpkg-parsechangelog dpkg-source
dpkg-checkdeps.rb dpkg-query dpkg-split
dpkg-deb dpkg.rb
apt tools
apt-cache apt-file aptitude
apt-cdrom apt-ftparchive apt-listchanges
apt-config apt-get apt-sortpkgs
apt-extracttemplates apt-howto apt-setup
apt-listbugs
Others:
synaptic
wajig
I'll note wajig as a little-known tool that does a lot, it's becoming
sort of YAST-like in its capabilities. I *really* haven't messed with
it much, though I've met its author on a trip to AU a few years back.
In addition to package management, wajig and gijig provide wrappers for
other functionality, including, e.g.: /etc/init.d/
More info at:
http://www.togaware.com/wajig/
http://www.togaware.com/linux/survivor/wajig.shtml
> (Alternatively, skip the first category, package selection, and just
> use apt-get et al. directly from the command line. Many of us do this
> by preference.)
/me raises hand.
> My point is that apt-get and dselect are tools at different levels of
> abstraction. Comparing them is like comparing carburetors with
> Chevrolets -- except that carburetors by themselves aren't much use,
> whereas apt-get (and aptitude's command-line mode) are.
Um. apt-get and dselect, or apt-get and dpkg?
Back to aptitude, the basic advantages are outlined by Joey Hess:
Nine reasons why you should be using aptitude instead of apt-get or
dselect.
http://lists.debian.org/debian-user/2004/04/msg11344.html
1. aptitude can look just like apt-get -- in CLI mode.
2. aptitude tracks automatically installed packages -- no need for
debfoster, et al.
3. aptitude sanely handles recommends -- apt-get doesn't.
4. use aptitude as a normal user and avoid hosing your system -- for
package browsing (but not install).
5. aptitude has a powerful UI and searching capabilities -- both
search '/<regex>' and filter 'l <regex>' to quickly scan for
packages of interest. Familiar to mutt users.
6. aptitude makes it easy to keep track of obsolete software
7. aptitude has an interface to the Debian task system
8. aptitude supports multiple sources -- you can select the specific
version of a package to install.
9. aptitude logs its actions -- this is IMO its greatest single feature.
The filtering (limiting) feature is one I just realized today. Very
cool.
Peace.
--
Karsten M. Self <kmself at ix.netcom.com> http://kmself.home.netcom.com/
What Part of "Gestalt" don't you understand?
Light come, light go.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://ns1.livepenguin.com/pipermail/vox-tech/attachments/20050313/7776283c/attachment.bin
More information about the vox-tech
mailing list