CINXE.COM
Aptitude - Debian Wiki
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="shortcut icon" href="/htdocs/favicon.ico"> <script type="text/javascript" src="/htdocs/bugstatus.js"></script> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <meta name="robots" content="index,nofollow"> <title>Aptitude - Debian Wiki</title> <script type="text/javascript" src="/htdocs/common/js/common.js"></script> <script type="text/javascript"> <!-- var search_hint = "Search"; //--> </script> <link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="/htdocs/debwiki/css/common.css"> <link rel="stylesheet" type="text/css" charset="utf-8" media="screen" href="/htdocs/debwiki/css/screen.css"> <link rel="stylesheet" type="text/css" charset="utf-8" media="print" href="/htdocs/debwiki/css/print.css"> <link rel="stylesheet" type="text/css" charset="utf-8" media="projection" href="/htdocs/debwiki/css/projection.css"> <link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="/htdocs/debian-wiki-1.0.css"> <!-- css only for MS IE6/IE7 browsers --> <!--[if lt IE 8]> <link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="/htdocs/debwiki/css/msie.css"> <![endif]--> <link rel="alternate" title="Debian Wiki: Aptitude" href="/Aptitude?diffs=1&show_att=1&action=rss_rc&unique=0&page=Aptitude&ddiffs=1" type="application/rss+xml"> <link rel="Start" href="/FrontPage"> <link rel="Alternate" title="Wiki Markup" href="/Aptitude?action=raw"> <link rel="Alternate" media="print" title="Print View" href="/Aptitude?action=print"> <link rel="Search" href="/FindPage"> <link rel="Index" href="/TitleIndex"> <link rel="Glossary" href="/WordIndex"> <link rel="Help" href="/HelpOnFormatting"> </head> <body lang="en" dir="ltr"> <div id="logo"><a href="https://www.debian.org" title="Debian Homepage"><img src="https://www.debian.org/Pics/openlogo-50.png" alt="Debian" width="50" height="61"></a></div> <div id="header"> <div id="wikisection"> <p class="section"><a href="/FrontPage" title="Debian Wiki Homepage">Wiki</a></p> <div id="username"><a href="/Aptitude?action=login" id="login" rel="nofollow">Login</a></div> </div> <div id="navbar"> <ul id="navibar"> <li class="wikilink"><a href="/FrontPage">FrontPage</a></li><li class="wikilink"><a href="/RecentChanges">RecentChanges</a></li><li class="wikilink"><a href="/FindPage">FindPage</a></li><li class="wikilink"><a href="/HelpContents">HelpContents</a></li><li class="current"><a href="/Aptitude">Aptitude</a></li> </ul> </div> <form id="searchform" method="get" action="/Aptitude"> <div> <input type="hidden" name="action" value="fullsearch"> <input type="hidden" name="context" value="180"> <label for="searchinput">Search:</label> <input id="searchinput" type="text" name="value" value="" size="20" onfocus="searchFocus(this)" onblur="searchBlur(this)" onkeyup="searchChange(this)" onchange="searchChange(this)" alt="Search"> <input id="titlesearch" name="titlesearch" type="submit" value="Titles" alt="Search Titles"> <input id="fullsearch" name="fullsearch" type="submit" value="Text" alt="Search Full Text"> </div> </form> <script type="text/javascript"> <!--// Initialize search form var f = document.getElementById('searchform'); f.getElementsByTagName('label')[0].style.display = 'none'; var e = document.getElementById('searchinput'); searchChange(e); searchBlur(e); //--> </script> <div id="logo"><a href="https://www.debian.org" title="Debian Homepage"><img src="https://www.debian.org/Pics/openlogo-50.png" alt="Debian" width="50" height="61"></a></div> <div id="breadcrumbs"><a href="/FrontPage" title="Debian Wiki Homepage">Wiki</a><span class="sep">/</span> </div> <ul class="editbar"><li><a href="/Aptitude?action=login" id="login-1" rel="nofollow">Login</a></li><li class="toggleCommentsButton" style="display:none;"><a href="#" class="nbcomment" onClick="toggleComments();return false;">Comments</a></li><li><a class="nbinfo" href="/Aptitude?action=info" rel="nofollow">Info</a></li><li><a class="nbattachments" href="/Aptitude?action=AttachFile" rel="nofollow">Attachments</a></li><li> <form class="actionsmenu" method="GET" action="/Aptitude"> <div> <label>More Actions:</label> <select name="action" onchange="if ((this.selectedIndex != 0) && (this.options[this.selectedIndex].disabled == false)) { this.form.submit(); } this.selectedIndex = 0;"> <option value="raw">Raw Text</option> <option value="print">Print View</option> <option value="RenderAsDocbook">Render as Docbook</option> <option value="refresh">Delete Cache</option> <option value="show" disabled class="disabled">------------------------</option> <option value="SpellCheck">Check Spelling</option> <option value="LikePages">Like Pages</option> <option value="LocalSiteMap">Local Site Map</option> <option value="show" disabled class="disabled">------------------------</option> <option value="RenamePage" disabled class="disabled">Rename Page</option> <option value="DeletePage" disabled class="disabled">Delete Page</option> <option value="show" disabled class="disabled">------------------------</option> <option value="show" disabled class="disabled">Subscribe User</option> <option value="show" disabled class="disabled">------------------------</option> <option value="show" disabled class="disabled">Remove Spam</option> <option value="show" disabled class="disabled">Revert to this revision</option> <option value="PackagePages">Package Pages</option> <option value="show" disabled class="disabled">------------------------</option> <option value="Load">Load</option> <option value="Save">Save</option> <option value="SlideShow">SlideShow</option> </select> <input type="submit" value="Do"> </div> <script type="text/javascript"> <!--// Init menu actionsMenuInit('More Actions:'); //--> </script> </form> </li></ul> <h1 id="locationline"> <ul id="pagelocation"> <li><a href="/Aptitude">Aptitude</a></li> </ul> </h1> </div> <div id="page" lang="en" dir="ltr"> <div dir="ltr" id="content" lang="en"><span class="anchor" id="top"></span> <span class="anchor" id="line-1"></span><span class="anchor" id="line-2"></span><span class="anchor" id="line-3"></span><span class="anchor" id="line-4"></span><span class="anchor" id="line-5"></span><div><table style="&quot; width: 100%; &quot;"><tbody><tr> <td style="&quot; border: 0px hidden&quot;"><p class="line891"><small><a href="/DebianWiki/EditorGuide#translation">Translation(s)</a>: <a href="/nl/Aptitude">Dutch</a> - <a href="/Aptitude">English</a> - <a href="/es/Aptitude">Español</a> - <a href="/fr/Aptitude">Français</a> - <a href="/it/Aptitude">Italiano</a> -<a href="/ko/Aptitude">한국어</a> - <a href="/ru/Aptitude">Русский</a> - <a href="/zh_CN/Aptitude">简体中文</a></small></td> <td style="&quot; text-align: right; border: 0px hidden&quot;"><p class="line862"> <img alt="(!)" height="16" src="/htdocs/debwiki/img/idea.png" title="(!)" width="16" /> <a class="nonexistent" href="/Aptitude/Discussion">?</a>Discussion</td> </tr> <p class="line891"></tbody></table></div><span class="anchor" id="line-7"></span><p class="line867"><hr /><p class="line874"> <span class="anchor" id="line-8"></span><span class="anchor" id="line-9"></span><p class="line867"><div class="table-of-contents"><p class="table-of-contents-heading">Contents<ol><li> <a href="#Introduction">Introduction</a></li><li> <a href="#Aptitude_User_Manual">Aptitude User Manual</a></li><li> <a href="#Interactive_Use">Interactive Use</a></li><li> <a href="#Commandline_Use">Commandline Use</a></li><li> <a href="#How_to_upgrade_your_distribution">How to upgrade your distribution</a></li><li> <a href="#apt_vs_aptitude">apt vs aptitude</a></li><li> <a href="#Advanced_search_patterns">Advanced search patterns</a></li><li> <a href="#Historic_Aptitude_GUI">Historic Aptitude GUI</a></li><li> <a href="#See_Also">See Also</a></li></ol></li></ol></div> <span class="anchor" id="line-10"></span><span class="anchor" id="line-11"></span><p class="line867"> <h2 id="Introduction">Introduction</h2> <span class="anchor" id="line-12"></span><span class="anchor" id="line-13"></span><p class="line862">Aptitude is an <a href="/Ncurses">Ncurses</a> and command-line based <a class="interwiki" href="https://en.wikipedia.org/wiki/Front_and_back_ends" title="WikiPedia">front-end</a> to numerous Apt libraries, which are also used by <a href="/Apt">Apt</a>, the default Debian package manager. Aptitude is text based and run from a terminal. <span class="anchor" id="line-14"></span><span class="anchor" id="line-15"></span><p class="line874">Aptitude has a number of useful features, including: <span class="anchor" id="line-16"></span><span class="anchor" id="line-17"></span><ul><li>a mutt-like syntax for matching packages in a flexible manner <span class="anchor" id="line-18"></span></li><li><p class="line862">mark packages as "automatically installed" or "manually installed" so that packages can be <em>auto-removed when no longer required</em> (feature available in Apt, too, since quite a few Debian release) <span class="anchor" id="line-19"></span></li><li>preview of actions about to be taken with different colors marking different actions <span class="anchor" id="line-20"></span></li><li>persistence of user actions (similar to dselect) <span class="anchor" id="line-21"></span></li><li>the ability to interactively retrieve and display the Debian changelog of all available official packages <span class="anchor" id="line-22"></span></li><li><p class="line891"><a href="/AptCLI">apt</a>-like (i.e. apt-get and apt-cache) command line mode ("aptitude install foo") <span class="anchor" id="line-23"></span></li><li><p class="line862">Score-based dependency resolver which is more suitable for interactive dependency resolution with additional hints from the user like "I don't want that part of the solution but keep that other part of the solution for your next try". <a href="/Apt">Apt</a>'s dependency resolver on the other hand is optimized for good "one shot" solutions. <span class="anchor" id="line-24"></span><span class="anchor" id="line-25"></span></li></ul><p class="line862">The primary command is "aptitude", as is the name of its primary <a class="interwiki" href="https://packages.debian.org/aptitude" title="DebianPkg">Debian package</a>. <span class="anchor" id="line-26"></span><span class="anchor" id="line-27"></span><span class="anchor" id="line-28"></span><p class="line867"> <h2 id="Aptitude_User_Manual">Aptitude User Manual</h2> <span class="anchor" id="line-29"></span><span class="anchor" id="line-30"></span><ul><li><p class="line862">Online: The <a class="https" href="https://www.debian.org/doc/manuals/aptitude/index.en.html">manual for the latest version of aptitude</a> is usually available (in English) on the Debian website. <span class="anchor" id="line-31"></span></li><li>On your local system: <span class="anchor" id="line-32"></span><ul><li><p class="line862">If you have the package <a class="interwiki" href="https://packages.debian.org/aptitude-doc-en" title="DebianPkg">aptitude-doc-en</a> installed (<a class="https" href="https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=aptitude-doc">other languages are available</a>), you can find an HTML manual for your installed version in <a class="file" href="file:///usr/share/doc/aptitude/html/en/index.html">/usr/share/doc/aptitude/html/en/index.html</a> (change path for other languages as appropriate). <span class="anchor" id="line-33"></span></li><li><p class="line862">If you have just aptitude installed (e.g. for disk space reasons), a plain text variant of the user manual is still available at <a class="file" href="file:///usr/share/doc/aptitude/README">/usr/share/doc/aptitude/README</a>. <span class="anchor" id="line-34"></span><span class="anchor" id="line-35"></span><span class="anchor" id="line-36"></span></li></ul></li></ul><p class="line867"> <h2 id="Interactive_Use">Interactive Use</h2> <span class="anchor" id="line-37"></span><span class="anchor" id="line-38"></span><p class="line862">To run interactively, enter the following from a <a href="/TerminalEmulator">terminal emulator</a>: <span class="anchor" id="line-39"></span><span class="anchor" id="line-40"></span><span class="anchor" id="line-41"></span><pre><span class="anchor" id="line-1"></span>aptitude</pre><span class="anchor" id="line-42"></span><span class="anchor" id="line-43"></span><p class="line874">After running it, use: <span class="anchor" id="line-44"></span><span class="anchor" id="line-45"></span><ul><li>F10 or Ctrl-T to access the menu. <span class="anchor" id="line-46"></span></li><li>'?' for help <span class="anchor" id="line-47"></span></li><li>The 'up', 'down', 'left', 'right' keys to navigate. <span class="anchor" id="line-48"></span></li><li>The 'Enter' key to select or open and close a single level <span class="anchor" id="line-49"></span></li><li>The bracket keys ('[' and ']') to open and close levels recursively <span class="anchor" id="line-50"></span></li><li>The '+' or '-' key to install/update or remove a package <span class="anchor" id="line-51"></span></li><li>The 'g' key to preview/confirm actions <span class="anchor" id="line-52"></span></li><li>'q' to quit – this also closes the currently open window (‘g’ goes forward, ‘q’ goes back) <span class="anchor" id="line-53"></span></li><li>Forward and backward slash ('/' and '\') for searching forward or backward. <span class="anchor" id="line-54"></span><span class="anchor" id="line-55"></span></li></ul><p class="line874">The common use of aptitude in TUI (text user interface) is; run aptitude; press 'u' (update the lists of available packages); press 'U' (Mark all upgradable packages to be upgraded); (search/select some stuff to install, is optional); press 'g' (to see the pending actions and modify if needed); press 'g' (again, to start the download). <span class="anchor" id="line-56"></span><span class="anchor" id="line-57"></span><p class="line874">Some time when you need to resolve conflicts, you discover that you made a mistake; you can easily use 'Cancel pending actions' in the 'Actions' menu so that you can re-select. <span class="anchor" id="line-58"></span><span class="anchor" id="line-59"></span><p class="line874">When reviewing dependency resolutions (shown after pressing 'e'), press: <span class="anchor" id="line-60"></span><span class="anchor" id="line-61"></span><ul><li>cursor keys or vi style j/k to select actions or action groups, <span class="anchor" id="line-62"></span></li><li>'a' to explicitly insist on an action (use again to go back to no specific decision) <span class="anchor" id="line-63"></span></li><li>'r' to reject an action (use again to go back to no specific decision) <span class="anchor" id="line-64"></span></li><li>dot ('.') to show the next proposed dependency resolution <span class="anchor" id="line-65"></span></li><li>comma (',') to show the previous proposed dependency resolution <span class="anchor" id="line-66"></span></li><li>exclamation mark ('!') to accept the currently shown dependency resolution <span class="anchor" id="line-67"></span><span class="anchor" id="line-68"></span></li></ul><p class="line874">When reviewing pending actions, press: <span class="anchor" id="line-69"></span><span class="anchor" id="line-70"></span><ul><li>'g' again to go ahead and execute the pending actions <span class="anchor" id="line-71"></span></li><li>'q' to go back to the previous view <span class="anchor" id="line-72"></span><span class="anchor" id="line-73"></span></li></ul><p class="line862">See <a class="https" href="https://debian.org/doc/manuals/aptitude/ch02s02s02.en.html">Accessing package information</a> for understanding the letters in the package synopsis line (e.g., 'i' means "will be installed", 'p' means "not installed", etc.) <span class="anchor" id="line-74"></span><span class="anchor" id="line-75"></span><span class="anchor" id="line-76"></span><p class="line867"> <h2 id="Commandline_Use">Commandline Use</h2> <span class="anchor" id="line-77"></span><span class="anchor" id="line-78"></span><p class="line867"> <h3 id="Functions_only_useful_as_root">Functions only useful as root</h3> <span class="anchor" id="line-79"></span><p class="line874">You can also use aptitude in the same manner as apt-get: <span class="anchor" id="line-80"></span><span class="anchor" id="line-81"></span><p class="line874">Update the packages list : <span class="anchor" id="line-82"></span><span class="anchor" id="line-83"></span><span class="anchor" id="line-84"></span><pre><span class="anchor" id="line-1-1"></span># aptitude update</pre><span class="anchor" id="line-85"></span><span class="anchor" id="line-86"></span><p class="line874">Upgrade the packages : <span class="anchor" id="line-87"></span><span class="anchor" id="line-88"></span><span class="anchor" id="line-89"></span><pre><span class="anchor" id="line-1-2"></span># aptitude safe-upgrade</pre><span class="anchor" id="line-90"></span><span class="anchor" id="line-91"></span><p class="line874">Install foo : <span class="anchor" id="line-92"></span><span class="anchor" id="line-93"></span><span class="anchor" id="line-94"></span><pre><span class="anchor" id="line-1-3"></span># aptitude install foo</pre><span class="anchor" id="line-95"></span><span class="anchor" id="line-96"></span><p class="line874">Remove bar : <span class="anchor" id="line-97"></span><span class="anchor" id="line-98"></span><span class="anchor" id="line-99"></span><pre><span class="anchor" id="line-1-4"></span># aptitude remove bar</pre><span class="anchor" id="line-100"></span><span class="anchor" id="line-101"></span><p class="line874">Purge foo : <span class="anchor" id="line-102"></span><span class="anchor" id="line-103"></span><span class="anchor" id="line-104"></span><pre><span class="anchor" id="line-1-5"></span># aptitude purge foo</pre><span class="anchor" id="line-105"></span><span class="anchor" id="line-106"></span><span class="anchor" id="line-107"></span><p class="line867"> <h3 id="Functions_useful_for_every_user">Functions useful for every user</h3> <span class="anchor" id="line-108"></span><span class="anchor" id="line-109"></span><p class="line867"><span class="anchor" id="search"></span> <span class="anchor" id="line-110"></span>Search for packaging containing foo : <span class="anchor" id="line-111"></span><span class="anchor" id="line-112"></span><span class="anchor" id="line-113"></span><pre><span class="anchor" id="line-1-6"></span>$ aptitude search foo</pre><span class="anchor" id="line-114"></span><span class="anchor" id="line-115"></span><p class="line862">Personally, I still use <tt>apt-cache search foo</tt> to perform a search – <tt>aptitude search foo</tt> is slower. But you should try the <tt>aptitude search foo</tt> way. You should discover that the output is a bit different from <tt>apt-cache</tt>, in some cases, it may be useful to search for a package to see if it is already installed. <span class="anchor" id="line-116"></span><span class="anchor" id="line-117"></span><p class="line867"><span class="anchor" id="show"></span> <span class="anchor" id="line-118"></span>showing if a specific package is installed : <span class="anchor" id="line-119"></span><span class="anchor" id="line-120"></span><span class="anchor" id="line-121"></span><pre><span class="anchor" id="line-1-7"></span>$ aptitude show foo</pre><span class="anchor" id="line-122"></span><span class="anchor" id="line-123"></span><p class="line867"><span class="anchor" id="upgrade"></span> <span class="anchor" id="line-124"></span><span class="anchor" id="line-125"></span><p class="line867"> <h2 id="How_to_upgrade_your_distribution">How to upgrade your distribution</h2> <span class="anchor" id="line-126"></span><p class="line862">Upgrading from one stable release to the next (e.g. Lenny to Squeeze) is done by following the <a class="https" href="https://www.debian.org/releases/stable/releasenotes">release notes</a> for your <a class="https" href="https://www.debian.org/ports/">architecture</a>. For most people with 32 bit systems that means the <a class="https" href="https://www.debian.org/releases/stable/i386/release-notes/">Release Notes for Intel x86</a>. For most with 64 bit systems that means the <a class="https" href="https://www.debian.org/releases/stable/amd64/release-notes/">Release Notes for AMD64</a>. <span class="anchor" id="line-127"></span><span class="anchor" id="line-128"></span><p class="line862">Using <tt>full-upgrade</tt> in the regular course of events is no longer the recommended practice (unless you are running sid, in which case you should not need to be reading this.) <span class="anchor" id="line-129"></span><span class="anchor" id="line-130"></span><p class="line862">Minor release upgrades (e.g. from lenny 5.0.1 to 5.0.2) and security updates are done with <tt>safe-upgrade</tt>. <span class="anchor" id="line-131"></span><span class="anchor" id="line-132"></span><ul><li>Find out the current version of Debian that you are running: <span class="anchor" id="line-133"></span></li></ul><p class="line867"><span class="anchor" id="line-134"></span><span class="anchor" id="line-135"></span><pre><span class="anchor" id="line-1-8"></span>$ cat /etc/debian_version</pre><span class="anchor" id="line-136"></span><p class="line874">Example for upgrading from, e.g., etch 4.0r1 to 4.0r2 ...etc., or applying security upgrades: <span class="anchor" id="line-137"></span><span class="anchor" id="line-138"></span><p class="line867"><span class="anchor" id="line-139"></span><span class="anchor" id="line-140"></span><span class="anchor" id="line-141"></span><pre><span class="anchor" id="line-1-9"></span># aptitude update <span class="anchor" id="line-2"></span># aptitude safe-upgrade</pre><span class="anchor" id="line-142"></span><p class="line867"> <h2 id="apt_vs_aptitude">apt vs aptitude</h2> <span class="anchor" id="line-143"></span><span class="anchor" id="line-144"></span><div><table><tbody><tr> <td><p class="line891"><strong>Action</strong></td> <td><p class="line891"><strong>apt command</strong></td> <td><p class="line891"><strong>aptitude command</strong></td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-145"></span><p class="line862">Install foo</td> <td><p class="line862">apt install foo</td> <td><p class="line862">aptitude install foo</td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-146"></span><p class="line862">Search foo</td> <td><p class="line862">apt search foo</td> <td><p class="line862">aptitude search foo</td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-147"></span><p class="line862">List installed packages</td> <td><p class="line862">apt list --installed</td> <td><p class="line862">aptitude search ~i</td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-148"></span><p class="line862">Remove foo</td> <td><p class="line862">apt remove foo</td> <td><p class="line862">aptitude remove foo</td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-149"></span><p class="line862">List reverse dependencies</td> <td><p class="line862">apt rdepends foo</td> <td><p class="line862">aptitude search ~Dfoo</td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-150"></span><p class="line862">Print information on priorities for foo</td> <td><p class="line862">apt policy foo (since Buster), apt-cache policy foo</td> <td><p class="line862">aptitude versions foo</td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-151"></span><p class="line862">Show package information for foo</td> <td><p class="line862">apt show foo</td> <td><p class="line862">aptitude show foo</td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-152"></span><p class="line862">Download foo's sources</td> <td><p class="line862">apt source foo</td> <td><p class="line862">aptitude source foo</td> </tr> <tr> <td style="&quot; background-color:#aaccff; &quot;"><span class="anchor" id="line-153"></span><p class="line862">Download foo's sources and build a binary .deb package</td> <td><p class="line862">apt source --compile foo</td> <td><p class="line891"><em>(none)</em></td> </tr> </tbody></table></div><span class="anchor" id="line-154"></span><span class="anchor" id="line-155"></span><p class="line867"> <h2 id="Advanced_search_patterns">Advanced search patterns</h2> <span class="anchor" id="line-156"></span><span class="anchor" id="line-157"></span><span class="anchor" id="line-158"></span><p class="line874">Looking for packages installed from anything else than stable: <span class="anchor" id="line-159"></span><span class="anchor" id="line-160"></span><p class="line867"><span class="anchor" id="line-161"></span><span class="anchor" id="line-162"></span><pre><span class="anchor" id="line-1-10"></span>aptitude search '?narrow(?installed, !?archive(stable))'</pre><span class="anchor" id="line-163"></span><span class="anchor" id="line-164"></span><p class="line874">Looking for packages installed from testing (assuming you have sources lists with stable and testing repositories): <span class="anchor" id="line-165"></span><span class="anchor" id="line-166"></span><p class="line867"><span class="anchor" id="line-167"></span><span class="anchor" id="line-168"></span><pre><span class="anchor" id="line-1-11"></span>aptitude search '?narrow(?installed, ?archive(testing) !?archive(stable))'</pre><span class="anchor" id="line-169"></span><span class="anchor" id="line-170"></span><p class="line874">List packages of contrib and non-free components installed: <span class="anchor" id="line-171"></span><span class="anchor" id="line-172"></span><p class="line867"><span class="anchor" id="line-173"></span><span class="anchor" id="line-174"></span><pre><span class="anchor" id="line-1-12"></span>aptitude search '~i ?section(non-free)'</pre><span class="anchor" id="line-175"></span><span class="anchor" id="line-176"></span><p class="line867"><span class="anchor" id="line-177"></span><span class="anchor" id="line-178"></span><pre><span class="anchor" id="line-1-13"></span>aptitude search '~i ?section(contrib)'</pre><span class="anchor" id="line-179"></span><span class="anchor" id="line-180"></span><p class="line874">To list packages of non-free-firmware installed: <span class="anchor" id="line-181"></span><span class="anchor" id="line-182"></span><p class="line867"><span class="anchor" id="line-183"></span><span class="anchor" id="line-184"></span><pre><span class="anchor" id="line-1-14"></span>aptitude search '~i ?section(non-free-firmware)'</pre><span class="anchor" id="line-185"></span><span class="anchor" id="line-186"></span><p class="line862">The Debian project has taken the <a class="https" href="https://lists.debian.org/debian-devel-announce/2022/10/msg00001.html">decision</a> in 2022-10 to create a new repository component non-free-firmware, and include its content on installation media for the upcoming Debian release bookworm to make things easier for our users. <span class="anchor" id="line-187"></span><span class="anchor" id="line-188"></span><p class="line874">But remember that: <span class="anchor" id="line-189"></span><span class="anchor" id="line-190"></span><p class="line874">The contrib packages contain DFSG-compliant software, but have dependencies not in main (possibly packaged for Debian in non-free). <span class="anchor" id="line-191"></span><span class="anchor" id="line-192"></span><p class="line874">The non-free contains software that does not comply with the DFSG. <span class="anchor" id="line-193"></span><span class="anchor" id="line-194"></span><p class="line862">See the <strong><a class="https" href="https://www.debian.org/doc/manuals/aptitude/ch02s04s05.en.html">aptitude search term reference</a></strong> <span class="anchor" id="line-195"></span><span class="anchor" id="line-196"></span><p class="line867"> <h2 id="Historic_Aptitude_GUI">Historic Aptitude GUI</h2> <span class="anchor" id="line-197"></span><span class="anchor" id="line-198"></span><p class="line874">Historically there were also a GTK and a never-finished Qt GUI. <span class="anchor" id="line-199"></span><span class="anchor" id="line-200"></span><p class="line874">Aptitude's GTK GUI was always considered experimental and formerly packaged as "aptitude-gtk". This is also the reason for the use of "update-alternatives" for aptitude. The last Aptitude release which shipped a GTK interface was Aptitude 0.6.5 (and the according Debian package aptitude 0.6.5-1). <span class="anchor" id="line-201"></span><span class="anchor" id="line-202"></span><p class="line874">The never-finished Qt interface was never included in any official Debian binary package. <span class="anchor" id="line-203"></span><span class="anchor" id="line-204"></span><p class="line874">While the Git history still contains the GTK and Qt code, the current branches HEADs no more have this code. Bringing them (or any of them) back would mean to re-add the code removed in the according commits and to update it to aptitude's current code on the one hand and the current GTK and Qt code bases on the other hand. <span class="anchor" id="line-205"></span><span class="anchor" id="line-206"></span><p class="line867"> <h2 id="See_Also">See Also</h2> <span class="anchor" id="line-207"></span><span class="anchor" id="line-208"></span><ul><li><p class="line891"><a class="https" href="https://screenshots.debian.net/package/aptitude">Aptitude Screenshots</a>. <span class="anchor" id="line-209"></span></li><li><p class="line891"><a class="https" href="https://www.debian.org/doc/manuals/reference/ch02.en.html#_basic_package_management_operations">Debian Reference Manual: Package Management</a> <span class="anchor" id="line-210"></span></li><li><p class="line891"><a href="/DebianSoftware">Additional Software for Debian Stable</a> <span class="anchor" id="line-211"></span></li><li><p class="line891"><a class="https" href="https://book.dpmb.org/debian-paketmanagement.online.html#aptitude">Aptitude in the Debian Package Management Book</a> (German only) <span class="anchor" id="line-212"></span></li><li><p class="line891"><a href="/Permissions/ResetPackagePermissions">Use Aptitude to restore an installed package permissions to their default</a> <span class="anchor" id="line-213"></span><span class="anchor" id="line-214"></span></li></ul><p class="line862">and ... <a href="/apt.conf">apt.conf</a>, <a href="/preferences">preferences</a>, <a href="/sources.list">sources.list</a>, <a href="/Aptitude%3A%3AParse-Description-Bullets%3Dtrue">Aptitude::Parse-Description-Bullets=true</a>, <a href="/AptitudeTodo">AptitudeTodo</a> <span class="anchor" id="line-215"></span><span class="anchor" id="line-216"></span><p class="line867"><hr /><p class="line874"> <span class="anchor" id="line-217"></span><span class="anchor" id="line-218"></span><p class="line867"><a href="/CategoryPackageManagement">CategoryPackageManagement</a> | <a href="/CategorySoftware">CategorySoftware</a> <span class="anchor" id="line-219"></span><span class="anchor" id="bottom"></span></div><div id="pagebottom"></div> </div> <div id="footer"> <p id="pageinfo" class="info" lang="en" dir="ltr">Aptitude (<a class="nbinfo" href="/Aptitude?action=info" rel="nofollow">last modified 2023-06-08 21:28:47</a>)</p> <ul id="credits"> <li>Debian <a href="https://www.debian.org/legal/privacy">privacy policy</a>, Wiki <a href="/Teams/DebianWiki">team</a>, <a href="https://bugs.debian.org/wiki.debian.org">bugs</a> and <a href="https://salsa.debian.org/debian/wiki.debian.org">config</a>.</li><li>Powered by <a href="https://moinmo.in/" title="This site uses the MoinMoin Wiki software.">MoinMoin</a> and <a href="https://moinmo.in/Python" title="MoinMoin is written in Python.">Python</a>, with hosting provided by <a href="https://www.man-da.de/">Metropolitan Area Network Darmstadt</a>.</li> </ul> </div> </body> </html>