apt-get vs. aptitude .vs synaptic compatibility

11,382

Solution 1

The only real difference is Aptitude.

  • If you use it interactively install something, then remove that package in something else and then go back to Aptitude, it will think you want to reinstall it. You just have to clear selections when it loads (easy enough through the menu).

  • It will also run an autoremove so old dependencies are cleaned up. This can be dangerous if you accidentally remove something that is a dependant of a metapackage and you remove it and all its deps. This isn't an issue if you know what you're doing.

Solution 2

All of those use dpkg as a backend. Neither one uses any specialized database that breaks when you use something else.

It's definitely urban legend.

If you want to install something from source code, cleanest way is to use checkinstall, or install it to /usr/local. Using package manager is better, because then removing that package is much easier.

Solution 3

Synaptic and apt-get are compatible. Aptitude is not compatible with synaptic. This is fact, not "urban legend" as another poster claimed.

Today I wanted to find out which Java runtime my system has. Googling turned up the following suggestion: in a command shell, type:

aptitude search "?provides(java-runtime)"

This generated (among other lines) the following:

pi  gcj-4.4-jre
pi  gcj-jre

What the "pi" means is that it's not currently installed, but is marked for installation. So if I went into aptitude and just asked it to install requested packages, it would install gcj-4.4-jre. However, in Synaptic, it is neither installed nor marked for installation. If I ask Synaptic to install requested packages, it does nothing.

I'm no expert on this stuff, and I have no idea where aptitude is stashing its notions of package states, but it's obvious that it's not compatible with Synaptic.

Share:
11,382

Related videos on Youtube

Stephane Rolland
Author by

Stephane Rolland

Author of the PL XYZ (name is still to be defined, also I'm extremely late compared to what I was expecting, and it's quite possible there's at least one year of work before I can release something). At marathon my time is 5:30, that's far from a world record. I plan longer trails (60 km seems feasible for now) after I have made public the version 0.0 of the language. Machine Learning: kaggle AI competitions Favourite Techs: Haskell, C++14, Python 3, PostgreSQL, NixOs Linux, Zsh/Bash/Perl, XMonad. Photography/Graphical Arts: Abstract Photography , Pinterests Boards Author-Composer: Publicly released music, tracks on soundcloud Interests: Language Design, Categorial and Linear logic, Type Theory, Artificial Intelligence, Design Patterns, Lambda Calculus, Web Design, Pi Calculus, Pattern Calculus, Digital Signal Processing, Test Driven Development, Software Craftsmanship Everyday experience: C++, Python, Haskell Practicing: Perl, Cython/CPython, Machine Learning, Scikit-Learn Used: C, C#, Xml, Regex, Sql, Javascript, Win32, Mfc, Com/Atl, Stl, Design Patterns, MsXml, Wpf, C++/Cli, Html, Java, Soap, Sql Server, Http, Boost C++, Xaml, Xslt, Xschema, Xpath, Bash, Powershell, VB Practiced: R, Elixir, Erlang, Elm, F#, AngularJS, jQuery, Html5, Css, Svg, Web Audio Api, Underscore.js, Node.js, Octave Small memories of: Prolog, Oz/ML, Pict and Nomadic Pict Wish to learn: Agda, Idris, Coq, Rebol/Red Language Love: English, Deutsch, Español, French (mother tongue), Esperanto (though I no longer practice since at least 10 years, this language is beautiful) Learning: 中文 (Chinese), 日本語 (Japanese) Wish to learn (one day... if possible, or at least some basics elements for calligraphy): Korean, Arabic, Mongolian, Russian, Dutch/Nederland, Italian, Sanskrit, and a bit of Tibetan... let's see.

Updated on September 17, 2022

Comments

  • Stephane Rolland
    Stephane Rolland 8 months

    As a former Debian user, I "kind of" remember that I should only use one of the package managers... Either apt-get, aptitude, or synaptic, but not the three in combination 'cause there may be conflicts, they don't mix well.

    I don't know where I have heard it, but it has left its memory print. So I just want to check with you if it is really not advised or if it is an urban legend and it is completely safe. Could you confirm this ?

    Is the cleanest way of installing a package is still using the command checkinstall before invoking dpkg ?

    • ProgramME
      ProgramME over 12 years
      I freely switch between apt-get and synaptic, depending on whether I need to explore the available packages or not, and I've never had a problem. I've never understood the point of aptitude.
    • jmardones
      jmardones over 12 years
      I use sudo aptitude safe-upgrade in the 11.04 development environment. The advantage is "Safe-upgrade" will hold pack groups of packages until they have all bee updated. This means it minimises the number of times you have a non working system.
    • Stephane Rolland
      Stephane Rolland over 12 years
      @Chris... Same for me, I never got used to Aptitude. Close to Synaptic, I had also used KPackage in KDE. It was nice.
    • James McMahon
      James McMahon about 11 years
      Possible duplicate of askubuntu.com/questions/7644/…
  • Stephane Rolland
    Stephane Rolland over 12 years
    It is for a server. I will put the less packages possible, updated the less possible, and only for security updates. ;-) so I think I am gonna stay with the simple apt-get... though I have never learnt using aptitude and that would be a cool occasion...
  • James McMahon
    James McMahon about 11 years
    Stow (gnu.org/software/stow) is great for /usr/local installs.
  • Stephane Rolland
    Stephane Rolland over 10 years
    thx for the constructive argument. This is an explicit difference that you are pointing to.