 
    
<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>application Archives - Complete, Concrete, Concise</title>
	<atom:link href="https://complete-concrete-concise.com/tag/application/feed/" rel="self" type="application/rss+xml" />
	<link>https://complete-concrete-concise.com/tag/application/</link>
	<description>Practical Information Without The Bloat</description>
	<lastBuildDate>Mon, 29 Apr 2013 10:29:12 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>Ubuntu 13.04 &#8211;  How to Completely Uninstall/Remove a Package/Software/Program</title>
		<link>https://complete-concrete-concise.com/ubuntu-2/ubuntu-13-04/ubuntu-13-04-how-to-completely-uninstallremove-a-packagesoftwareprogram/</link>
		
		<dc:creator><![CDATA[richardsplanet]]></dc:creator>
		<pubDate>Mon, 29 Apr 2013 10:29:12 +0000</pubDate>
				<category><![CDATA[Ubuntu 13.04]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[complete]]></category>
		<category><![CDATA[completely]]></category>
		<category><![CDATA[package]]></category>
		<category><![CDATA[program]]></category>
		<category><![CDATA[remove]]></category>
		<category><![CDATA[removing]]></category>
		<category><![CDATA[total]]></category>
		<category><![CDATA[totally]]></category>
		<category><![CDATA[ubuntu 13.04]]></category>
		<category><![CDATA[uninstall]]></category>
		<category><![CDATA[uninstalling]]></category>
		<guid isPermaLink="false">http://complete-concrete-concise.com/?p=2894</guid>

					<description><![CDATA[<p>Learn how to remove all the files and packages that were installed.</p>
<p>The post <a href="https://complete-concrete-concise.com/ubuntu-2/ubuntu-13-04/ubuntu-13-04-how-to-completely-uninstallremove-a-packagesoftwareprogram/">Ubuntu 13.04 &#8211;  How to Completely Uninstall/Remove a Package/Software/Program</a> appeared first on <a href="https://complete-concrete-concise.com">Complete, Concrete, Concise</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="c1">
This tutorial shows how to completely remove or uninstall a package in Ubuntu 13.04. These instructions should work for other versions of Ubuntu, it&#8217;s derivatives (Edubuntu, Kubuntu, Lubuntu, Xubuntu, Ubuntu Studio, Myhtbuntu) and other Debian based Linux distributions &#8211; but no guarantee is made.<br />
This tutorial is definitely on the <u>advanced</u> rather than <u>basic</u> side of things, but if you are careful, it shouldn&#8217;t be a problem.
</div>
<div class="c4">
<h1>WARNING ! ! !</h1>
<p>There is a <u>small</u> but <u>real</u> risk of <strong><u>data loss</u></strong> or making other programs or Ubuntu <u><strong>unusable</strong></u>.<br />
It is advisable to <strong>ensure</strong> you have a backup before proceeding.</p>
<div class="c2">
I am somewhat over emphasizing the risk, but anything can happen &#8211; there might be a power failure in the middle of uninstalling and this might leave your system in a funky state, or you might select a critical system file for deletion and this leaves your system unusable.<br />
I don&#8217;t expect anything bad to happen (because nothing bad has ever happened to me), but I make no guarantees.<br />
<strong>Note:</strong> the risk is about the same as applying software updates where old packages are removed and new packages are installed.
</div>
</div>
<div class="c1">
You can jump directly to the &#8220;How To&#8221; part <a href="#howto">here.</a>
</div>
<p>Uninstalling a package should be as easy and straightforward as installing it &#8211; either enter <code>sudo apt-get remove --auto-remove </code> at a command line or click <u>Remove</u> in the <u>Ubuntu Software Center</u>. Unfortunately, it is not:<br />
<img decoding="async" class="centered" src="http://i1.wp.com/complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-1.png?w=586" alt="" border="0" data-recalc-dims="1" /></p>
<h1>The Problem</h1>
<p>There are three types of packages: (1) simple, (2) with dependencies, (3) complicated.<br />
<strong>Simple</strong> packages install only a single program file and that&#8217;s it. They are completely self contained and don&#8217;t depend on anything other than the core operating system being present. These types of packages are rare.</p>
<div class="c1">
<u>stella</u> (an Atari 2600 emulator) is an example of a simple package.
</div>
<p>Packages <strong>with dependencies</strong> need other files in order to work. When installing one of these packages, <u>Ubuntu Software Center</u> or <u>apt-get</u> determine what additional files are needed and automatically installs them for you. When you uninstall the package, the dependency files are usually left behind. Sometimes they can be removed by using the command <code>sudo apt-get autoremove</code>, but that is an exception rather than the rule.</p>
<div class="c1">
<u>stellarium</u> (a 3D planetarium / sky simulator) requires the additional file (<u>stellarium-data</u>) to be installed in order to work. When you uninstall it, it leaves behind <u>stellarium-data</u>. The good news is that <u>stellarium-data</u> can be uninstalled using <code>sudo apt-get autoremove</code>.<br />
<u>abiword</u> (a word processor) requires additional files (about 16) to be installed. One of these is <u>ttf-lyx</u> (a font). When you uninstall, <u>abiword</u> it will automatically uninstall some of the files, the remainder can be removed using <code>sudo apt-get autoremove</code>, but the file <u>ttf-lyx</u> is not &#8211; it must be explicitly removed.
</div>
<p><strong>Complicated</strong> packages (also called <u>metapackages</u>), typically, do not install any files. Instead, they are a collection of dependent packages. These are the hardest to clean up, since you have to uninstall each dependent package (along with its dependencies) separately.</p>
<div class="c1">
<u>lubuntu-desktop</u> (a desktop environment based on the lxde interface) is an example of a package that installs several dependent packages. Each of those packages installs other packages and files. In total, about 200 files get installed (totalling 377 MB of data). When you uninstall <u>lubuntu-desktop</u>, it only removes the <u>lubuntu-desktop</u> package (about 30kB). Using <code>sudo apt-get autoremove</code> will remove nothing else. All the extra files which were installed because <u>lubuntu-desktop</u> said it depended on them remain behind and they use up about about 377 MB of disk space.<br />
These include packages like <u>abiword</u>, <u>leafpad</u> (a text editor), <u>lubuntu-core</u>, <u>lxde-common</u>, along with many, many other packages.</p>
<div class="c2">
<strong>Note:</strong>The 30 kB and 377 MB are not typos, uninstalling <u>lubuntu-desktop</u> leaves behind about 99.99% of everything it installed.
</div>
</div>
<p>Not only are various packages left behind after an uninstall, but also configuration data used by the (now removed) package, directories (folders) and user data &#8211; all of these have to be manually removed.</p>
<h1>Why Can&#8217;t Everything be Uninstalled?</h1>
<p>My best guess is because it is a low priority:</p>
<ul>
<li>Users want applications to install easily and work. In the (fairly distant) past, installing applications in Linux was a pain &#8211; users would install an application and it wouldn&#8217;t work, then they would discover they needed to install some other package to get it working, and then there were package incompatibilities (still a problem in Linuxland) and so on. Nowadays, most Linux distributions do a very good job in packaging applications for easy installation.</li>
<li>Hard disks are big. If you have a 500GB hard disk, will you really notice if 3MB or 50MB or even 1GB of data are cluttering it up? Probably not, the files cached by your Internet browser is likely occupy more space on your hard disk.</li>
<li>It is not sexy. Who cares if a programmer wrote a really neat uninstaller? Probably no one. Programmers are more interested in &#8220;cool&#8221; apps. And since it is possible to manually uninstall all the unnecessary applications, there is no incentive to write a proper uninstaller.</li>
<li>Uninstallation should be a &#8220;rare&#8221; activity. Although, I think users are very likely to try out applications and uninstall them if they don&#8217;t like them or find it is not what they wanted.</li>
<li>It is hard. If a package is uninstalled shortly after installing it, this is probably no problem uninstalling it because nothing is likely to have changed on the system. But if a package is uninstalled 2 years after having been installed, then there are serious concerns: (1) other applications may have been installed that depend on some of the same files (this makes deciding which files to uninstall complicated), (2) it is likely that updates and upgrades have been applied over time (the files and dependencies may have changed. Consider a program that originally depended on a file called <u>cutting-edge-library</u>, but later the developers switched to using <u>mature-and-stable-library</u> instead &#8211; this poses problems to the uninstallation program.</li>
<li>Finally, if the uninstaller breaks an application the user wants to keep, the user is going to be unhappy, so it is better to be very conservative when uninstalling and leave stuff you are not sure about behind.</li>
</ul>
<p>All the information needed to uninstall an installed package is available (sometimes it takes a little poking around). The only information not available is which files and folders are created by an application &#8211; so cleaning up all the config data, application folders and user data is harder.<br />
This is a long standing problem with Linux &#8211; many projects have been started (and abandoned) whose purpose was to clean up leftover files on the computer.<br />
<a name="howto"></a></p>
<h1>How to Completely Remove a Package</h1>
<p>&nbsp;</p>
<h1>Quick Instructions</h1>
<p><strong>1) Open</strong> the aptitude log file (<code>/var/log/apt/history.log</code>).<br />
<strong>2) Locate</strong> the files that were installed.<br />
<strong>3) Remove</strong> the files using <code>sudo apt-get purge --auto-remove &lt;<em>file names</em>&gt;</code></p>
<div class="c1">
<strong>NOTE:</strong> it is a good idea to ensure that you are not removing any extra files. This might happen if you (or someone else) has installed other packages or updates since the package you are uninstalling was installed.
</div>
<p><strong>4) Locate and remove</strong> configuration files and data associated with the package. Most often, they will be found in <code>/home/</code> and <code>/home/.config/</code> directories.</p>
<h1>Detailed Instructions</h1>
<h3>Finding Out Which Packages Were Installed</h3>
<div class="c1">
These instructions are for Ubuntu 13.04, using the Unity interface and the <code>Terminal</code> application.<br />
I expect the instructions to be similar for other environments, but no guarantee is made.<br />
Instructions for opening a terminal can be found <a href="//complete-concrete-concise.com/ubuntu-2/ubuntu-13-04/ubuntu-13-04-how-to-get-a-command-line-shell-or-terminal">here</a>.
</div>
<h3>Opening the Installation History Log File</h3>
<p>All installation and uninstallation operations that happen using either <code>apt-get</code> or <u>Ubuntu Software Center</u> (or any of the <code>aptitude</code> family of functions) are stored in <code>/var/log/apt/history.log</code>. Examining the contents of this file allows us to determine which packages were installed.<br />
<strong>1) Click</strong> on the <u>Files</u> icon:<br />
<img fetchpriority="high" decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-1.jpg" alt="" width="480" height="180" border="0" /><br />
<strong>2) Click</strong> on <u>Computer</u>:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-2.png" alt="" border="0" /><br />
<strong>3) Double-click</strong> on the <code>var</code> folder:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-3.png" alt="" border="0" /><br />
<strong>4) Double-click</strong> on the <code>log</code> folder:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-4.png" alt="" border="0" /><br />
<strong>5) Double-click</strong> on the <code>apt</code> folder:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-5.png" alt="" border="0" /><br />
<strong>6) Double-click</strong> on the <code>history.log</code> file &#8211; this should open it with <code>gedit</code>, the default text editor in Ubuntu 13.04:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-6.png" alt="" border="0" /></p>
<div class="c3">
<h3>A Quick Overview of the history.log File</h3>
<p>The <code>history.log</code> file contains all the operations performed on your system using <code>apt-get</code> (or any of the <code>aptitude</code> family of programs)<br />
Each block of operations contains:</p>
<ul>
<li>a Start-Date and End-Date (red) for the operation</li>
<li>the operation performed (blue)</li>
<li>additional information about the operation (green)</li>
</ul>
<p><img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-7.png" alt="" border="0" /><br />
In our case, we are interested in the <code>Install</code> information.
</div>
<h3>Finding the Installation Data</h3>
<p><strong>7) Search</strong> for the package you installed. If it was the last package you installed, then it will be at the end of the file. The records are stored with the newest operations towards the end (bottom) of the file and the oldest at the beginning (top) of the file.</p>
<div class="c2">
<strong>Note:</strong> the <code>history.log</code> file is archived monthly. If you don&#8217;t find the required install information in <code>history.log</code>, then check the <code>history.log.&lt;number&gt;.gz</code> files:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-8.png" alt="" border="0" /><br />
Double clicking the .gz file will open it with <u>Archive Manager</u>. Inside <u>Archive Manager</u> you double click on the file to open it with <u>gedit</u>
</div>
<p>In the sample below, you can see I installed <code>lxde-core</code> on 27-April-2013:</p>
<pre><code class="i3"><strong>Start-Date:</strong> 2013-04-27  16:29:19</code>
<code class="i2"><strong>Commandline:</strong> apt-get install lxde-core</code>
<code class="i1"><strong>Install:</strong> libobrender27:i386 (3.5.0-7, automatic), lxsession:i386
(0.4.9.2~git20130310-0ubuntu1, automatic), openbox-themes:i386 (1.0.2,
automatic), libfm-data:i386 (1.1.0-0ubuntu2, automatic), libfm-gtk-bin:i386
(1.1.0-0ubuntu2, automatic), obconf:i386 (2.0.3+20110805+debian-1, automatic),
libjpeg-turbo-progs:i386 (1.2.1-0ubuntu2, automatic), xscreensaver:i386 (5.15-2ubuntu1,
automatic), lxde-common:i386 (0.5.0-4ubuntu4, automatic), lxsession-data:i386
(0.4.9.2~git20130310-0ubuntu1, automatic), pcmanfm:i386 (1.1.0-0ubuntu2, automatic),
lxde-core:i386 (0.5.0-4ubuntu4), libfm-gtk-data:i386 (1.1.0-0ubuntu2, automatic),
libgif4:i386 (4.1.6-10ubuntu1, automatic), libfm-gtk3:i386 (1.1.0-0ubuntu2, automatic),
openbox:i386 (3.5.0-7, automatic), libglade2-0:i386 (2.6.4-1ubuntu2, automatic),
lxmenu-data:i386 (0.1.2-2, automatic), libfm3:i386 (1.1.0-0ubuntu2, automatic),
lxshortcut:i386 (0.1.2-3, automatic), lxpanel:i386 (0.5.12-0ubuntu2, automatic),
libid3tag0:i386 (0.15.1b-10build3, automatic), libimlib2:i386 (1.4.5-1ubuntu1, automatic),
libjpeg-progs:i386 (8c-2ubuntu7, automatic), libmenu-cache2:i386 (0.4.1-0ubuntu1, automatic),
xscreensaver-data:i386 (5.15-2ubuntu1, automatic), libobt0:i386 (3.5.0-7, automatic)</code>
<code class="i3"><strong>End-Date:</strong> 2013-04-27  16:30:00</code></pre>
<p><strong>8) Cut and paste</strong> the <u>Install</u> data into an editor. You can start a new document in <code>gedit</code> by clicking on the <u>Create a new document</u> icon:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-9.png" alt="" border="0" /><br />
<strong>9) Edit</strong> the data to remove all unnecessary text.</p>
<div class="c2">
The data has the following form: <span class="i4"><code>&lt;package name&gt;</code><em><strong>:i386</strong> (something in parentheses),</em></span><br />
Only the package name is important. The <span class="i4">:i386 (something in parentheses),</span> needs to be deleted.<br />
So <code>libopenal1:i386 (1.13-2, automatic)</code> becomes <code>libopenal1</code> after removing the extra information.</p>
<div class="c4">
<strong>Note:</strong> if you are running the 64 bit version of Ubuntu, then it will be <span class="i4">:amd64 (something in parentheses),</span> instead.
</div>
</div>
<div class="c1">
If you have a lot of text to edit (as in this example), you might consider using a text editor that offers regular expression matching &#8211; like LibreOffice Writer &#8211; for search and replace.<br />
Using LibreOffice Writer 4.0.2.2, you can use one of the following regular expressions (I think they are complete, but they might miss the odd expression):</p>
<div class="c3">
Use this if you are running the i386 version of Ubuntu:</p>
<pre><code>:i386 \([0-9\~\.\+a-zA-Z\-, ]*\),?</code></pre>
</div>
<div class="c3">
Use this if you are running the amd64 version of Ubuntu:</p>
<pre><code>:amd64 \([0-9\~\.\+a-zA-Z\-, ]*\),?</code></pre>
</div>
<div class="c4">
Let me know if you encounter a case where the regular expression doesn&#8217;t work.
</div>
<p>Press <code>Ctrl + H</code> to launch the <u>Find and Replace</u> dialog in LibreOffice Writer.</p>
<ol>
<li><strong>Click</strong> on the <u>More Options</u> button (it will change to <u>Fewer Options</u>).</li>
<li><strong>Click</strong> on the <u>Regular expressions</u> box.</li>
<li><strong>Enter</strong> the regular expression into the <u>Search for</u> field.</li>
<li><strong>Click</strong> on the <u>Replace All</u> button.</li>
</ol>
<p><img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-10.png" alt="" border="0" />
</div>
<p><strong>10) Add</strong> the following to the start of the edited package list: <strong><code>sudo apt-get purge --auto-remove </code></strong>. You should have something that looks like this:<br />
<code><strong>sudo apt-get purge --auto-remove</strong> libobrender27 lxsession openbox-themes ... </code></p>
<div class="c1">
I recommend use of the <code>purge</code> option over the <code>remove</code> option because purge claims to remove some of the configuration data.<br />
You can always use <code>sudo apt-get remove --auto-remove</code> instead.
</div>
<div class="c4">
<strong>Note:</strong> if you are using <u>LibreOffice Writer</u> make sure that it does not <em>autocorrect</em> what you are entering.<br />
Two very common problems are:</p>
<ol>
<ol>
<li>the &#8216;s&#8217; in <code>sudo</code> gets changed to UPPERCASE. The Linux command line is case sensitive, so <code>Sudo</code> is not the same as <code>sudo</code>.</li>
<li>the double minus (&#8211;) gets converted in a single DASH (–).</li>
</ol>
</ol>
<p>Either error will cause the uninstall script to fail.
</p></div>
<p><strong>11) Cut and paste</strong> this package list with the <code>apt-get</code> command from step 10 into a <code>Terminal</code> to completely uninstall the package.</p>
<div class="c1">
To paste into a terminal, you need to <strong>right-click</strong> in the terminal and select the <u>Paste</u> option from the popup menu. Using the traditional shortcut <code>Ctrl+V</code> will not work.</p>
<div class="c2">
Detailed instructions on how to open a terminal can be found <a href="//complete-concrete-concise.com/ubuntu-2/ubuntu-13-04/ubuntu-13-04-how-to-get-a-command-line-shell-or-terminal">here</a>.
</div>
<p><img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-11.png" alt="" border="0" />
</div>
<p>It should <strong>look</strong> something like this (the exact list of files will depend on what you are uninstalling):<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-12.png" alt="" border="0" /><br />
<strong>12) Press</strong> the <u>Enter</u> key and <strong>enter</strong> your password (this is your login password):</p>
<div class="c2">
<strong>NOTE:</strong> when you type your password, nothing will happen on the screen. This is normal. As a security feature, Linux does not echo back any indication of the characters you are typing in.
</div>
<div class="c3">
<strong>Note:</strong> You will only be asked for your password if this is the first time in this terminal session that you are using <code>sudo apt-get</code>.
</div>
<p><img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-13.png" alt="" border="0" /><br />
<strong>13) Press</strong> the <u>Enter</u> key after entering your password and <code>apt-get</code> will respond by showing which files are going to be uninstalled:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-14.png" alt="" border="0" /><br />
If you want to uninstall the files, then <strong>press</strong> the <u>Enter</u> key. If you don’t want to uninstall the files, <strong>type</strong> the <code>N</code> key and then <strong>press</strong> the <u>Enter</u> key.</p>
<div class="c2">
<strong>Note:</strong> if this was not the last package installed. Or if updates have been installed, I <u><strong>STRONGLY</strong></u> advise you to <u>double-check</u> the files being uninstalled to ensure they do not include any extra files.
</div>
<div class="c4">
<h1>WARNING ! ! !</h1>
<p>This should work <u>perfectly</u> if the package you are uninstalling is the <strong><u>LAST</u></strong> package you (or anybody else) installed on your system. In other words: <span class="i4">No one has installed anything else &#8211; not even updates &#8211; since this package was installed!</span><br />
If other packages have been installed, if updates have been installed, then there is a <strong><u>RISK</u></strong> that those packages or updates <em>may </em>have a dependency on one or more of the packages you are uninstalling.<br />
If you uninstall a package that some other package depends on, then that package will no longer function correctly.<br />
Examining all package dependencies is very complicated. Proceed at your own risk &#8211; backups are strongly recommended.
</div>
<h1>Double Checking Your Uninstall Script</h1>
<p>If the package you are uninstalling was not the last package installed, there is the risk that you will accidentally uninstall a package that some other application depends on.</p>
<h3>Why Double Check?</h3>
<p>For example, you install <u>abiword</u>. <u>Abiword</u> depends on the package <u>ttf-lyx</u> and it will be installed it if it is not already installed.<br />
Later, you install <u>cadabra</u>. <u>Cadabra</u> also depends on <u>ttf-lyx</u>, but since it is already installed, it will use the installed copy instead of installing a new copy.<br />
If you uninstall <u>abiword</u> using the technique above, it will explicitly uninstall <u>ttf-lyx</u> (which is also needed by <u>cadabra</u> – which was installed after <u>abiword</u>).<br />
This will cause <code>apt-get</code> to uninstall <u>cadabra</u> because <u>cadabra</u> depends on <u>ttf-lyx</u>.<br />
To avoid this problem, it is necessary to double check that you are not removing any extra files.<br />
Since <code>apt-get</code> displays the files it is going to uninstall, it is a simple matter of checking that no additional files were added to the uninstallation:<br />
<img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-14.png" alt="" border="0" /></p>
<h1>Uninstalling Configuration Data</h1>
<div class="c4">
I don’t recommend doing this unless you know <u>exactly</u> what you are looking to delete.
</div>
<p>The last thing left to do is to delete / remove all the configuration data.<br />
Unfortunately, this is hard to do since there is no record of what files and folders the (now uninstalled) application put on your computer.<br />
A good place to start is in your <code>/home</code> directory and your <code>/home/.config/</code> directory.<br />
However, data, files, and folders could be squirreled away all over the place.<br />
As you can see, it is not necessarily obvious what folders and files need deleting:<br />
<a href="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-15-big.png" target="_blank"><img decoding="async" class="centered" src="//complete-concrete-concise.com/wp-content/uploads/2013/04/1304-remove-package-15-thumb.png" alt="" border="0" /></a><br />
In this case, I know that it is the three highlighted folders that need deleting, but there is no easy way to tell (except by doing a before and after comparison &#8211; even that is tricky because an application typically does not write a <code>.config</code> file until it is used. For example, <code>gedit</code> creates the <code>gedit</code> folder after it is used. If you used <code>gedit</code> after you installed a package and then did a before and after comparison, you might be tempted to think the <code>gedit</code> folder needs to be removed as well.<br />
</p>
<p>The post <a href="https://complete-concrete-concise.com/ubuntu-2/ubuntu-13-04/ubuntu-13-04-how-to-completely-uninstallremove-a-packagesoftwareprogram/">Ubuntu 13.04 &#8211;  How to Completely Uninstall/Remove a Package/Software/Program</a> appeared first on <a href="https://complete-concrete-concise.com">Complete, Concrete, Concise</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Ubuntu 12.10 &#8211; How to Completely Uninstall/Remove a Package/Software/Program</title>
		<link>https://complete-concrete-concise.com/ubuntu-2/ubuntu-12-10/ubuntu-12-10-how-to-completely-uninstallremove-a-packagesoftwareprogram/</link>
		
		<dc:creator><![CDATA[richardsplanet]]></dc:creator>
		<pubDate>Tue, 30 Oct 2012 03:15:40 +0000</pubDate>
				<category><![CDATA[Ubuntu 12.10]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[complete]]></category>
		<category><![CDATA[completely]]></category>
		<category><![CDATA[package]]></category>
		<category><![CDATA[program]]></category>
		<category><![CDATA[remove]]></category>
		<category><![CDATA[removing]]></category>
		<category><![CDATA[total]]></category>
		<category><![CDATA[totally]]></category>
		<category><![CDATA[ubuntu 12.10]]></category>
		<category><![CDATA[uninstall]]></category>
		<category><![CDATA[uninstalling]]></category>
		<guid isPermaLink="false">http://complete-concrete-concise.com/?p=2517</guid>

					<description><![CDATA[<p>This tutorial shows how to completely remove or uninstall a package in Ubuntu 12.10. These instructions should work for other versions of Ubuntu, it&#8217;s derivatives (Edubuntu, Kubuntu, Lubuntu, Xubuntu, Ubuntu Studio, Myhtbuntu) and other Debian based Linux distributions &#8211; but no guarantee is made. This tutorial is definitely on the advanced rather than basic side [&#8230;]</p>
<p>The post <a href="https://complete-concrete-concise.com/ubuntu-2/ubuntu-12-10/ubuntu-12-10-how-to-completely-uninstallremove-a-packagesoftwareprogram/">Ubuntu 12.10 &#8211; How to Completely Uninstall/Remove a Package/Software/Program</a> appeared first on <a href="https://complete-concrete-concise.com">Complete, Concrete, Concise</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="c1">
<p>This tutorial shows how to completely remove or uninstall a package in Ubuntu 12.10. These instructions should work for other versions of Ubuntu, it&#8217;s derivatives (Edubuntu, Kubuntu, Lubuntu, Xubuntu, Ubuntu Studio, Myhtbuntu) and other Debian based Linux distributions &#8211; but no guarantee is made.</p>
<p>This tutorial is definitely on the <u>advanced</u> rather than <u>basic</u> side of things, but if you are careful, it shouldn&#8217;t be a problem.</p>
</div>
<div class="c4">
<h1>WARNING ! ! !</h1>
<p>There is a <u>small</u> but <u>real</u> risk of <strong><u>data loss</u></strong> or making other programs or Ubuntu <u><strong>unusable</strong></u>.</p>
<p>It is advisable to <strong>ensure</strong> you have a backup before proceeding.</p>
<div class="c2">
<p>I am somewhat over emphasizing the risk, but anything can happen &#8211; there might be a power failure in the middle of uninstalling and this might leave your system in a funky state, or you might select a critical system file for deletion and this leaves your system unusable.</p>
<p>I don&#8217;t expect anything bad to happen, but I make no guarantees.</p>
<p><strong>Note:</strong> the risk is about the same as applying software updates (old packages are removed and new packages are installed).</p>
</div>
</div>
<div class="c1">
<p>You can jump directly to the How To part <a href="#howto">here.</a></p>
</div>
<p>You would think that uninstalling a package would be as easy and straightforward as installing it &#8211; either enter <code>sudo apt-get remove --auto-remove &lt;package name&gt;</code> at a command line or click <u>Remove</u> in the <u>Ubuntu Software Center</u>. Unfortunately, it is not:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-1.png" alt="" border="0" class="centered" /></p>
<h1>The Problem</h1>
<p>There are three types of packages: (1) simple, (2) with dependencies, (3) complicated.</p>
<p><strong>Simple</strong> packages install only a single program file and that&#8217;s it. They are completely self contained and don&#8217;t depend on anything other than the core operating system being present. These types of packages are rare.</p>
<div class="c1">
<p><u>stella</u> (an Atari 2600 emulator) is an example of a simple package.</p>
</div>
<p>Packages <strong>with dependencies</strong> need other files in order to work. When installing one of these packages, <u>Ubuntu Software Center</u> or <u>apt-get</u> determine what other files are needed and automatically installs them for you. Unfortunately, when you uninstall the package, the dependency files are usually left behind. Sometimes they can be removed by using the command <code>sudo apt-get autoremove</code>, but that is an exception rather than the rule.</p>
<div class="c1">
<p><u>stellarium</u> (a 3D planetarium / sky simulator) requires an additional file (<u>stellarium-data</u>) to be installed in order to work. When you uninstall it, it leaves behind <u>stellarium-data</u>. The good news is that <u>stellarium-data</u> can be uninstalled using <code>sudo apt-get autoremove</code>.</p>
<p><u>abiword</u> (a word processor) requires additional files (about 16) to be installed. One of these is <u>ttf-lyx</u> (a font). When you uninstall, <u>abiword</u> it will automatically uninstall some of the files, the remainder can be removed using <code>sudo apt-get autoremove</code>, but the file <u>ttf-lyx</u> must explicitly removed.</p>
</div>
<p><strong>Complicated</strong> packages (also called <u>metapackages</u>), typically, do not install any files. Instead, they are a collection of dependent packages. These are the hardest to clean up, since you have to uninstall each dependent package (along with its dependencies) separately.</p>
<div class="c1">
<p><u>lubuntu-desktop</u> (a desktop environment based on the lxde interface) is an example of a package that installs several dependent packages. Each of those packages installs other packages and files. All told, about 189 files get installed. When you uninstall <u>lubuntu-desktop</u>, it only removes <u>lubuntu-desktop</u> (about 30kB). Using <code>sudo apt-get autoremove</code> removes nothing else. All the extra files which were installed because <u>lubuntu-desktop</u> said it depended on them remain behind and they use up about about 321 MB of disk space.</p>
<p>These include packages like <u>abiword</u>, <u>leafpad</u> (a text editor), <u>lubuntu-core</u>, <u>lxde-common</u>, along with many, many other packages.</p>
<div class="c2">
<p><strong>Note:</strong>The 30 kB and 321 MB are not typos, uninstalling <u>lubuntu-desktop</u> leaves behind about 99.99% of everything it installed.</p>
</div>
</div>
<p>Not only are various packages left behind after an uninstall, but also configuration data used by the removed package, directories (folders) and user data &#8211; all of these have to be manually removed.</p>
<h1>Why Can&#8217;t Everything be Uninstalled?</h1>
<p>My best guess is because it is a low priority:</p>
<ul>
<li>
<p>Users want applications to install easily and work. In the (fairly distant) past, installing applications in Linux was a pain &#8211; users would install an application and it wouldn&#8217;t work, then they would discover they needed to install some other package to get it working, and then there were package incompatibilities (still a problem in Linuxland) and so on. Nowadays, most Linux distributions do a very good job in packaging applications for easy installation.</p>
</li>
<li>
<p>Hard disks are big. If you have a 500GB hard disk, will you really notice if 3MB or 50MB or even 1GB of data are cluttering it up? Probably not, the files cached by your Internet browser&#8217;s likely occupy more space on your hard disk.</p>
</li>
<li>
<p>It is not sexy. Who cares if a programmer wrote a really neat uninstaller? Probably no one. Programmers are more interested in &#8220;cool&#8221; apps. And since it is possible to manually uninstall all the unnecessary applications, there is no incentive to write a proper uninstaller.</p>
</li>
<li>
<p>Uninstallation should be a &#8220;rare&#8221; activity. Although, I think users are very likely to want to try out applications and uninstall them if they don&#8217;t like them or find it is not what they wanted.</p>
</li>
<li>It is hard. If the user uninstalls something shortly after installing it, this is not too much of a problem because nothing much is likely to have happened on the system. But if the user chooses to uninstall something 2 years after they installed in &#8211; then there are numerous problems: (1) other applications may have been installed that depend on some of the same files (this makes deciding which files to uninstall complicated), (2) it is likely that updates and upgrades have been applied over time (the files and dependencies may have changed. Consider a program that originally depended on a file called <u>cutting-edge-library</u>, but later the developers switched to using <u>mature-and-stable-library</u> instead &#8211; this poses problems to the uninstallation program.</p>
<li>
<p>Finally, if the uninstaller breaks an application the user wants to keep, the user is going to be unhappy, so it is better to be very conservative when uninstalling.</p>
</li>
</ul>
<p>All the information needed to uninstall an installed package is available (sometimes it takes a little poking around). The only information not available is which files and folders are created by an application &#8211; so cleaning up all the config data, application folders and user data is harder.</p>
<p>This is a long standing problem with Linux &#8211; many projects have been started (and abandoned) whose purpose was to clean up leftover files on the computer.</p>
<p><a name="howto"></p>
<h1>How to Completely Remove a Package</h1>
<p></a></p>
<h1>Quick Instructions</h1>
<p><strong>1) Open</strong> the aptitude log file (<code>/var/log/apt/history.log</code>).</p>
<p><strong>2) Locate</strong> the files that were installed.</p>
<p><strong>3) Remove</strong> the files using <code>sudo apt-get remove --auto-remove &lt;<em>file names</em>&gt;</code></p>
<div class="c1">
<p><strong>NOTE:</strong> it is a good idea to ensure that you are not removing any extra files. This might happen if you (or someone else) has installed other packages or updates.</p>
</div>
<p><strong>4) Locate and remove</strong> configuration files and data associated with the package. Most often, they will be found in <code>/home/</code> and <code>/home/.config/</code> directories.</p>
<h1>Detailed Instructions</h1>
<h3>Finding Out Which Packages Were Installed</h3>
<div class="c1">
<p>These instructions are for Ubuntu 12.10, using the Unity interface and the <code>Terminal</code> application.</p>
<p>I expect the instructions to be similar for other environments, but no guarantee is made.</p>
<p>Instructions for opening a terminal can be found <a href="//complete-concrete-concise.com/ubuntu-2/ubuntu-12-10/how-to-get-a-command-line-shell-or-terminal">here</a>.</p>
</div>
<h3>Opening the Installation History Log File</h3>
<p>All installation and uninstallation operations that happen using <code>apt-get</code> or <u>Ubuntu Software Center</u> (or any of the <code>aptitude</code> family of functions) are stored in <code>/var/log/apt/history.log</code>. Examining the contents of this file allows us to determine which packages were installed.</p>
<p><strong>1) Click</strong> on the <u>Home Folder</u> icon:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-1.jpg" width="480" height="206" alt="" border="0" class="centered"/></p>
<p><strong>2) Click</strong> on <u>File System</u>:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-2.png" alt="" border="0" class="centered"/></p>
<p><strong>3) Double-click</strong> on the <code>var</code> folder:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-3.png" alt="" border="0" class="centered"/></p>
<p><strong>4) Double-click</strong> on the <code>log</code> folder:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-4.png" alt="" border="0" class="centered"/></p>
<p><strong>5) Double-click</strong> on the <code>apt</code> folder:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-5.png" alt="" border="0" class="centered"/></p>
<p><strong>6) Double-click</strong> on the <code>history.log</code> file &#8211; this should open it with <code>gedit</code>, the default text editor in Ubuntu 12.10:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-6.png" alt="" border="0" class="centered"/></p>
<div class="c3">
<h3>A Quick Overview of the history.log File</h3>
<p>The <code>history.log</code> file contains all the operations performed on your system using <code>apt-get</code> (or any of the <code>aptitude</code> family of programs)</p>
<p>Each block of operations contains:</p>
<ul>
<li>a Start-Date and End-Date (red) for the operation</li>
<li>the operation performed (blue)</li>
<li>additional information about the operation (green)</li>
</ul>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-7.png" alt="" border="0" class="centered"/></p>
<p>In our case, we are interested in the <code>Install</code> information.</p>
</div>
<h3>Finding the Installation Data</h3>
<p><strong>7) Search</strong> for the package you installed. If it was the last package you installed, then it will be at the end of the file. The records are stored with the newest operations towards the end (bottom) of the file and the oldest at the beginning (top) of the file.</p>
<div class="c2">
<p><strong>Note:</strong> the <code>history.log</code> file is archived monthly. If you don&#8217;t find the required install information in <code>history.log</code>, then check the <code>history.log.&lt;number&gt;.gz</code> files:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-8.png" alt="" border="0" class="centered"/></p>
<p>Double clicking the </code>.gz</code> file will open it with <u>Archive Manager</u>. Inside <u>Archive Manager</u> you double click on the file to open it with <u>gedit</u></p>
</div>
<p>In the sample below, you can see I installed <code>lubuntu-core</code> on 29-Oct-2012:</p>
<p><code class="i3">Start-Date: 2012-10-29  21:52:00</code><br />
<code class="i2"><strong>Commandline:</strong> apt-get install lubuntu-core</code><br />
<code class="i1"><strong>Install:</strong> lightdm-gtk-greeter:i386 (1.3.1-0ubuntu1), libobrender27:i386 (3.5.0-4, automatic), lxsession:i386 (0.4.9.1~git20120828-0ubuntu1, automatic), openbox-themes:i386 (1.0.2, automatic), libfm-data:i386 (1.0.1-0ubuntu1, automatic), libfm-gtk-bin:i386 (1.0.1-0ubuntu1, automatic), obconf:i386 (2.0.3+20110805+debian-1, automatic), lubuntu-default-settings:i386 (0.29), lubuntu-icon-theme:i386 (0.34, automatic), lxsession-data:i386 (0.4.9.1~git20120828-0ubuntu1, automatic), lubuntu-artwork:i386 (0.34), plymouth-theme-lubuntu-text:i386 (0.34), pcmanfm:i386 (1.0.1-0ubuntu1, automatic), lubuntu-core:i386 (0.45), libfm-gtk-data:i386 (1.0.1-0ubuntu1, automatic), libgif4:i386 (4.1.6-9.1ubuntu1, automatic), libfm-gtk3:i386 (1.0.1-0ubuntu1, automatic), lubuntu-lxpanel-icons:i386 (0.34, automatic), lubuntu-artwork-12-10:i386 (0.34, automatic), openbox:i386 (3.5.0-4), libglade2-0:i386 (2.6.4-1ubuntu2, automatic), gnome-icon-theme-full:i386 (3.6.0-0ubuntu2, automatic), elementary-icon-theme:i386 (2.7.1-0ubuntu6, automatic), lxmenu-data:i386 (0.1.2-2, automatic), libfm3:i386 (1.0.1-0ubuntu1, automatic), lxshortcut:i386 (0.1.2-3, automatic), lxpanel:i386 (0.5.10+git20120823-0ubuntu1), libid3tag0:i386 (0.15.1b-10build3, automatic), libimlib2:i386 (1.4.5-1ubuntu1, automatic), libmenu-cache1:i386 (0.3.3-1, automatic), libobt0:i386 (3.5.0-4, automatic), plymouth-theme-lubuntu-logo:i386 (0.34)<br />
</code><code class="i3"><strong>End-Date:</strong> 2012-10-29  21:57:50</code></p>
<p><strong>8) Cut and paste</strong> the <u>Install</u> data into an editor. You can start a new document in <code>gedit</code> by clicking on the <u>Create a new document</u> icon:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-8a.png" alt="" border="0" class="centered"/></p>
<p><strong>9) Edit</strong> the data to remove all unnecessary text.</p>
<div class="c2">
<p>The data has the following form: <span class="i4"><code>&lt;package name&gt;</code><em><strong>:i386</strong> (something in parentheses),</em></span></p>
<p>Only the package name is important. The <span class="i4">:i386 (something in parentheses),</span> needs to be deleted.</p>
<p>So <code>libopenal1:i386 (1.13-2, automatic)</code> becomes <code>libopenal1</code> after removing the extra information.</p>
</div>
<div class="c1">
<p>If you have a lot of text to edit (as in this example), you might consider using a text editor that offers regular expression matching &#8211; like LibreOffice Writer &#8211; for search and replace.</p>
<p>Using LibreOffice Writer 3.6.2.2, you can use one of the following regular expressions (I think they are complete, but they might miss the odd expression):</p>
<div class="c3">
<p>Use this if you are running the i386 version of Ubuntu:</p>
<pre><code>:i386 \([0-9\~\.\+a-zA-Z\-, ]*\),?</code></pre>
</div>
<div class="c3">
<p>Use this if you are running the amd64 version of Ubuntu:</p>
<pre><code>:amd64 \([0-9\~\.\+a-zA-Z\-, ]*\),?</code></pre>
</div>
<div class="c4">
<p>Let me know if you encounter a case where the regular expression doesn&#8217;t work.</p>
</div>
<p>Press <code>Ctrl + H</code> to launch the <u>Find and Replace</u> dialog in LibreOffice Writer.</p>
<ol>
<li><strong>Click</strong> on the <u>More Options</u> button (it will change to <u>Fewer Options</u>). </li>
<li><strong>Click</strong> on the <u>Regular expressions</u> box. </li>
<li><strong>Enter</strong> the regular expression into the <u>Search for</u> field. </li>
<li><strong>Click</strong> on the <u>Replace All</u> button.</li>
</ol>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-9.png" alt="" border="0" class="centered"/></p>
</div>
<p><strong>10) Add</strong> the following to the start of the edited package list: <strong><code>sudo apt-get purge --auto-remove </code></strong>. You should have something that looks like this:</p>
<p><code><strong>sudo apt-get purge --auto-remove</strong> lightdm-gtk-greeter libobrender27 lxsession ... </code></p>
<div class="c1">
<p>I recommend use of the <code>purge</code> option over the <code>remove</code> option because purge removes some of the configuration data.</p>
<p>You can always use <code>sudo apt-get remove --auto-remove</code> instead.</p>
</div>
<div class="c4">
<p><strong>Note:</strong> if you are using <u>LibreOffice Writer</u> make sure that it does not <em>autocorrect</em> what you are entering.</p>
<p>Two very common problems are:</p>
<ol>
<li>the &#8216;s&#8217; in <code>sudo</code> gets changed to UPPERCASE. The Linux command line is case sensitive, so <code>Sudo</code> is not the same as <code>sudo</code>.</li>
<li>the double minus (&#8211;) gets converted in a single DASH (&#8211;).</li>
<p>Either error will cause the uninstall script to fail.</p>
</div>
<p><strong>11) Cut and paste</strong> this package list with the <code>apt-get</code> command from step 10 into a <code>Terminal</code> to completely uninstall the package.</p>
<div class="c1">
<p>To paste into a terminal, you need to <strong>right-click</strong> in the terminal and select the <u>Paste</u> option from the popup menu. Using the traditional shortcut <code>Ctrl+V</code> will not work.</p>
<div class="c2">
<p>Detailed instructions on how to open a terminal can be found <a href="//complete-concrete-concise.com/ubuntu-2/ubuntu-12-10/how-to-get-a-command-line-shell-or-terminal">here</a>.</p>
</div>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-11.png" alt="" border="0" class="centered" /></div>
<p>It should <strong>look</strong> something like this (the exact list of files will depend on what you are uninstalling):</p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-10-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-10-thumb.png" alt="" border="0" class="centered"/></a>
</p>
<p><strong>12) Press</strong> the <u>Enter</u> key and <strong>enter</strong> your password (this is your login password):</p>
<div class="c2">
<p><strong>NOTE:</strong> when you type your password, nothing will happen on the screen. This is normal. As a security feature, Linux does not echo back any indication of the characters you are typing in.</p>
</div>
<div class="c3">
<p><strong>Note:</strong> You will only be asked for your password if this is the first time in this terminal session that you are using <code>sudo apt-get</code>.</div>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-11-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-11-thumb.png" alt="" border="0" class="centered"/></a>
</p>
<p><strong>13) Press</strong> the <u>Enter</u> key after entering your password and <code>apt-get</code> will respond by showing which files are going to be uninstalled:</p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-12-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-12-thumb.png" alt="" border="0" class="centered"/></a>
</p>
<p>If you want to uninstall the files, then <strong>press</strong> the <u>Enter</u> key. If you don&#8217;t want to uninstall the files, <strong>type</strong> the <code>N</code> key and then <strong>press</strong> the <u>Enter</u> key.</p>
<div class="c2">
<p><strong>Note:</strong> if this was not the last package installed. Or if updates have been installed, I <u><strong>STRONGLY</strong></u> advise you to <u>double-check</u> the files being uninstalled to ensure they do not include any extra files.</p>
</div>
<div class="c4">
<h1>WARNING ! ! !</h1>
<p>This should work <u>perfectly</u> if the package you are uninstalling is the <strong><u>LAST</u></strong> package you (or anybody else) installed on your system. In other words: <span class="i4">No one has installed anything else &#8211; not even updates &#8211; since this package was installed!</span></p>
<p>If other packages have been installed, if updates have been installed, then there is a <strong><u>RISK</u></strong> that those packages or updates <em>may </em>have a dependency on one or more of the packages you are uninstalling.</p>
<p>If you uninstall a package that some other package depends on, then that package will no longer function correctly.</p>
<p>Examining all package dependencies is very complicated. Proceed at your own risk &#8211; backups are strongly recommended.</p>
</div>
<h1>Double Checking Your Uninstall Script</h1>
<p>If the package you are uninstalling was not the last package installed, there is the risk that you will accidentally uninstall a package that some other application depends on.</p>
<h3>Why Double Check?</h3>
<p>For example, you install <u>abiword</u>. <u>Abiword</u> depends on the package <u>ttf-lyx</u> and it will be installed it if it is not already installed.</p>
<p>Later, you install <u>cadabra</u>. <u>Cadabra</u> also depends on <u>ttf-lyx</u>, but since it is already installed, it will use the installed copy instead of installing a new copy.</p>
<p>If you uninstall <u>abiword</u> using the technique above, it will explicitly uninstall <u>ttf-lyx</u> (which is also needed by <u>cadabra</u> &#8211; which was installed after <u>abiword</u>).</p>
<p>This will cause <code>apt-get</code> to uninstall <u>cadabra</u> because <u>cadabra</u> depends on <u>ttf-lyx</u>.</p>
<p>To avoid this problem, it is necessary to double check that you are not removing any extra files.</p>
<p>Since <code>apt-get</code> displays the files it is going to uninstall, it is a simple matter of checking that no additional files were added to the uninstallation:</p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-12-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-12-thumb.png" alt="" border="0" class="centered"/></a>
</p>
<h1>Uninstalling Configuration Data</h1>
<div class="c4">
<p>I don&#8217;t recommend doing this unless you know <u>exactly</u> what you are looking to delete.</p>
</div>
<p>The last thing left to do is to delete / remove all the configuration data.</p>
<p>Unfortunately, this is hard to do since there is no record of what files and folders the (now uninstalled) application put on your computer.</p>
<p>A good place to start is in your <code>/home</code> directory and your <code>/home/.config/</code> directory.</p>
<p>However, data, files, and folders could be squirreled away all over the place.</p>
<p>As you can see from these screenshots, it is not necessarily obvious what folders and files need deleting:</p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-13-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-13-thumb.png" alt="" border="0" class="centered"/></a></p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-14-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/10/ubuntu-12.10-uninstall-14-thumb.png" alt="" border="0" class="centered"/></a><br />
</p>
<p>The post <a href="https://complete-concrete-concise.com/ubuntu-2/ubuntu-12-10/ubuntu-12-10-how-to-completely-uninstallremove-a-packagesoftwareprogram/">Ubuntu 12.10 &#8211; How to Completely Uninstall/Remove a Package/Software/Program</a> appeared first on <a href="https://complete-concrete-concise.com">Complete, Concrete, Concise</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Ubuntu 12.04 &#8211; How to Completely Uninstall/Remove a Package/Software/Program</title>
		<link>https://complete-concrete-concise.com/ubuntu-2/ubuntu-12-04/ubuntu-12-04-how-to-completely-uninstallremove-a-packagesoftwareprogram/</link>
					<comments>https://complete-concrete-concise.com/ubuntu-2/ubuntu-12-04/ubuntu-12-04-how-to-completely-uninstallremove-a-packagesoftwareprogram/#comments</comments>
		
		<dc:creator><![CDATA[richardsplanet]]></dc:creator>
		<pubDate>Wed, 23 May 2012 22:17:21 +0000</pubDate>
				<category><![CDATA[Ubuntu 12.04]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[complete]]></category>
		<category><![CDATA[completely]]></category>
		<category><![CDATA[package]]></category>
		<category><![CDATA[program]]></category>
		<category><![CDATA[remove]]></category>
		<category><![CDATA[removing]]></category>
		<category><![CDATA[total]]></category>
		<category><![CDATA[totally]]></category>
		<category><![CDATA[ubuntu 12.04]]></category>
		<category><![CDATA[uninstall]]></category>
		<category><![CDATA[uninstalling]]></category>
		<guid isPermaLink="false">http://complete-concrete-concise.com/?p=2140</guid>

					<description><![CDATA[<p>This tutorial shows how to completely remove or uninstall a package in Ubuntu 12.04. These instructions should work for other versions of Ubuntu, it&#8217;s derivatives (Edubuntu, Kubuntu, Lubuntu, Xubuntu, Ubuntu Studio) and other Debian based Linux distributions &#8211; but no guarantee is made. This tutorial is definitely on the advanced rather than basic side of [&#8230;]</p>
<p>The post <a href="https://complete-concrete-concise.com/ubuntu-2/ubuntu-12-04/ubuntu-12-04-how-to-completely-uninstallremove-a-packagesoftwareprogram/">Ubuntu 12.04 &#8211; How to Completely Uninstall/Remove a Package/Software/Program</a> appeared first on <a href="https://complete-concrete-concise.com">Complete, Concrete, Concise</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="c1">
<p>This tutorial shows how to completely remove or uninstall a package in Ubuntu 12.04. These instructions should work for other versions of Ubuntu, it&#8217;s derivatives (Edubuntu, Kubuntu, Lubuntu, Xubuntu, Ubuntu Studio) and other Debian based Linux distributions &#8211; but no guarantee is made.</p>
<p>This tutorial is definitely on the <u>advanced</u> rather than <u>basic</u> side of things, but if you are careful, it shouldn&#8217;t be a problem.</p>
</div>
<div class="c4">
<h1>WARNING ! ! !</h1>
<p>There is a <u>small</u> but <u>real</u> risk of <strong><u>data loss</u></strong> or making other programs or Ubuntu <u><strong>unusable</strong></u>.</p>
<p>It is advisable to <strong>ensure</strong> you have a backup before proceeding.</p>
<div class="c2">
<p>I am somewhat over emphasizing the risk, but anything can happen &#8211; there might be a power failure in the middle of uninstalling and this might leave your system in a funky state, or you might select a critical system file for deletion and this leaves your system unusable.</p>
<p>I don&#8217;t expect anything bad to happen, but I make no guarantees.</p>
</div>
</div>
<div class="c1">
<p>You can jump directly to the How To part <a href="#howto">here.</a></p>
</div>
<p>You would think that uninstalling a package would be as easy and straightforward as installing it &#8211; either enter <code>sudo apt-get remove --auto-remove &lt;package name&gt;</code> at a command line or click <u>Remove</u> in the <u>Ubuntu Software Center</u>. Unfortunately, it is not.</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-1.png" alt="" border="0" class="centered" /></p>
<h1>The Problem</h1>
<p>There are three types of packages: (1) simple, (2) with dependencies, (3) complicated.</p>
<p><strong>Simple</strong> packages just install the program and that&#8217;s it. They are completely self contained and don&#8217;t depend on anything other than the core operating system being present. These types of packages are rare.</p>
<div class="c1">
<p><u>stella</u> (an Atari 2600 emulator) is an example of a package that depends only on the core operating system files.</p>
</div>
<p>Packages <strong>with dependencies</strong> require other packages in order to work. When one of these packages is installed, the <u>Ubuntu Software Center</u> or <u>apt-get</u> figure out which other packages are needed and automatically install them for you. Unfortunately, when you uninstall the original package, these extra packages are usually left behind. Sometimes you can clean them up by using the command <code>sudo apt-get autoremove</code>, but that is the exception rather than the rule.</p>
<div class="c1">
<p><u>stellarium</u> (a 3D planetarium / sky simulator) is an example of a package that requires an additional package (<u>stellarium-data</u>) to be installed in order to work. When you uninstall it, it leaves behind <u>stellarium-data</u>. The good news is that <u>stellarium-data</u> can be uninstalled using <code>sudo apt-get autoremove</code>.</p>
<p><u>abiword</u> (a word processor) is an example of a package that requires additional packages (about 16) to be installed . One of those packages is <u>ttf-lyx</u> (a font). When you uninstall, <u>abiword</u> it will automatically uninstall some packages, the remainder can be removed using <code>sudo apt-get autoremove</code>, but the package <u>ttf-lyx</u> will not be removed unless you explicitly remove it.</p>
</div>
<p><strong>Complicated</strong> packages (also called <u>metapackages</u>) install the package requested and any dependencies, and they also install additional packages that are not at all related to the original package. These are the hardest to clean up, since you have to uninstall each additional package (along with its dependencies) separately.</p>
<div class="c1">
<p><u>lubuntu-desktop</u> (a desktop environment based on the lxde interface) is an example of a package that installs several dependency packages and several additional packages (about 189). When you uninstall it, it only removes <u>lubuntu-desktop</u> (about 30kB). Even <code>sudo apt-get autoremove</code> will remove nothing else &#8211; all those extra files and packages remain on your system (about 321MB). The 30kB and 321MB are not typos, uninstalling <u>lubuntu-desktop</u> leaves behind about 99.99% of everything it installed.</p>
<p>These include packages like <u>abiword</u>, <u>leafpad</u> (a text editor), <u>lubuntu-core</u>, <u>lxde-common</u>, along with many, many other packages.</p>
</div>
<p>Not only are various packages left behind after an uninstall, but also configuration data used by the removed package, directories (folders) and user data &#8211; all of these have to be manually removed.</p>
<h1>Why Can&#8217;t Everything be Uninstalled?</h1>
<p>My best guess is because it is a low priority:</p>
<ul>
<li>
<p>Users want applications to install easily and work. In the (fairly distant) past, installing applications in Linux was a pain &#8211; users would install an application and it wouldn&#8217;t work, then they would discover they needed to install some other package to get it working, and then there were package incompatibilities (still a problem in Linuxland) and so on. Various Linux distributions do a very good job in packaging applications for easy installation.</p>
</li>
<li>
<p>Hard disks are big. If you have a 500GB hard disk, will you really notice if 3MB or 50MB or even 1GB of data are cluttering it up? Probably not, your Internet browser&#8217;s web cache is probably bigger.</p>
</li>
<li>
<p>It is not sexy. Who cares if a programmer wrote a really neat uninstaller? Probably no one. Programmers are more interested in &#8220;cool&#8221; apps. And since it is possible to manually uninstall all the unnecessary applications, there is no incentive to write a proper uninstaller.</p>
</li>
<li>
<p>Uninstallation should be a &#8220;rare&#8221; activity. Although, I think users are very likely to want to try out applications and uninstall them if they don&#8217;t like them or find it is not what they wanted.</p>
</li>
<li>
<p>Finally, if the uninstaller breaks an application the user wants to keep, the user is going to be unhappy, so it is better to be very conservative when uninstalling.</p>
</li>
</ul>
<p>All the information needed to uninstall an installed package is readily available. The only information not readily available is which files and folders are created by an application &#8211; so cleaning up all the config data, application folders and user data is harder.</p>
<p>This is a long standing problem with Linux and many projects have been started (and abandoned) for cleaning up leftover files on the computer.</p>
<p><a name="howto"></p>
<h1>How to Completely Remove a Package</h1>
<p></a></p>
<h1>Quick Instructions</h1>
<p><strong>1) Open</strong> the aptitude log file (<code>/var/log/apt/history.log</code>).</p>
<p><strong>2) Locate</strong> the files that were installed.</p>
<p><strong>3) Remove</strong> the files using <code>sudo apt-get remove --auto-remove &lt;<em>file names</em>&gt;</code></p>
<div class="c1">
<p><strong>NOTE:</strong> it is a good idea to ensure that you are not removing any extra files. This might happen if you (or someone else) has installed other packages or updates.</p>
</div>
<p><strong>4) Locate and remove</strong> configuration files and data associated with the package. Most often, they will be found in <code>/home/</code> and <code>/home/.config/</code> directories.</p>
<h1>Detailed Instructions</h1>
<h3>Finding Out Which Packages Were Installed</h3>
<div class="c1">
<p>These instructions are for Ubuntu 12.04, using the Unity interface and the <code>Terminal</code> application.</p>
<p>I expect the instructions to be similar for other environments, but no guarantee is made.</p>
<p>Instructions for openning a terminal can be found <a href="//complete-concrete-concise.com/ubuntu-2/ubuntu-12-04/ubuntu-12-04-how-to-get-a-command-line-shell-or-terminal">here</a>.</p>
</div>
<h3>Opening the Installation History Log File</h3>
<p>All installation and uninstallation operations that happen using <code>apt-get</code> or <u>Ubuntu Software Center</u> (or any of the <code>aptitude</code> family of functions) are stored in <code>/var/log/apt/history.log</code>. Examining the contents of this file allows us to determine which packages were installed.</p>
<p><strong>1) Click</strong> on the <u>Home Folder</u> icon:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-2.jpg" width="240" height="179" alt="" border="0" class="centered" /></p>
<p><strong>2) Click</strong> on <u>File System</u>:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-3.png" alt="" border="0" class="centered" /></p>
<p><strong>3) Double-click</strong> on the <code>var</code> folder:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-4.png" alt="" border="0" class="centered" /></p>
<p><strong>4) Double-click</strong> on the <code>log</code> folder:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-5.png" alt="" border="0" class="centered" /></p>
<p><strong>5) Double-click</strong> on the <code>apt</code> folder:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-6.png" alt="" border="0" class="centered" /></p>
<p><strong>6) Double-click</strong> on the <code>history.log</code> file – this should open it with <code>gedit</code>, the default text editor in Ubuntu 12.04:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-7.png" alt="" border="0" class="centered" /></p>
<div class="c3">
<h3>A Quick Overview of the history.log File</h3>
<p>The <code>history.log</code> file contains all the operations performed on your system using <code>apt-get</code> (or any of the <code>aptitude</code> family of programs)</p>
<p>Each block of operations (yellow) contains:</p>
<ul>
<li>a Start-Date and End-Date (red) for the operation</li>
<li>the operation performed (blue)</li>
<li>additional information about the operation (green)</li>
</ul>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-8.png" alt="" border="0" class="centered" /></p>
<p>In our case, we are interested in the <code>Install</code> information.</p>
</div>
<h3>Finding the Installation Data</h3>
<p><strong>7) Search</strong> for the package you installed. If it was the last package you installed, then it will be at the end of the file. The records are stored with the newest operations towards the end (bottom) of the file and the oldest at the beginning (top) of the file:</p>
<p>In the sample below, you can see I installed <code>lubuntu-desktop</code> on 16-May-2012:</p>
<p><code class="i1"><span class="i3"><strong>Start-Date:</strong> 2012-05-16  04:23:17</span><br />
<span class="i2"><strong>Commandline:</strong> apt-get install lubuntu-desktop</span><br />
<strong>Install:</strong> libopenal1:i386 (1.13-2, automatic), libxfcegui4-4:i386 (4.8.1-5, automatic), chromium-browser-l10n:i386 (14.0.835.202~r103287-0ubuntu1, automatic), libobrender27:i386 (3.5.0-0ubuntu3, automatic), lxsession:i386 (0.4.6.1-1, automatic), libts-0.0-0:i386 (1.0-9, automatic), libswscale2:i386 (0.7.2-1ubuntu1, automatic), chromium-codecs-ffmpeg:i386 (14.0.835.202~r103287-0ubuntu1, automatic), libavutil51:i386 (0.7.2-1ubuntu1, automatic), libhttp-daemon-perl:i386 (6.00-1, automatic), and, many, many others ...<br />
<span class="i3"><strong>End-Date:</strong> 2011-11-01  04:34:04</span></code></p>
<p><strong>8) Cut and paste</strong> the <u>Install</u> data into an editor. You can start a new document in <code>gedit</code> by clicking on the <u>Create a new document</u> icon:</p>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-9.png" alt="" border="0" class="centered" /></p>
<p><strong>9) Edit</strong> the data to be to remove all unnecessary text.</p>
<div class="c2">
<p>The data has the following form: <span class="i4"><code>&lt;package name&gt;</code><em><strong>:i386</strong> (something in parentheses),</em></span></p>
<p>Only the package name is important. The <span class="i4">:i386 (something in parentheses),</span> needs to be deleted.</p>
<p>So <code>libopenal1:i386 (1.13-2, automatic)</code> becomes <code>libopenal1</code> after removing the extra information.</p>
</div>
<div class="c1">
<p>If you have a lot of text to edit (as in this example), you might consider using a text editor that offers regular expression matching – like LibreOffice Writer – for search and replace.</p>
<p>Using LibreOffice Writer 3.5, you can use the following regular expression (I think it is complete, but it might miss the odd expression):</p>
<div class="c3">
<p>Use this if you are running the i386 version of Ubuntu:</p>
<pre><code>:i386 \([0-9\~\.\+a-zA-Z\-, ]*\),?</code></pre>
</div>
<div class="c3">
<p>Use this if you are running the amd64 version of Ubuntu:</p>
<pre><code>:amd64 \([0-9\~\.\+a-zA-Z\-, ]*\),?</code></pre>
</div>
<div class="c4">
<p>This regular expression is slightly different from the one I used in the <a href="//complete-concrete-concise.com/ubuntu-2/ubuntu-11-10-how-to-completely-remove-a-package/3">11.10 version of this article</a>. LibreOffice has made some changes to the way it parses regular expressions since version 3.4. It has also changed the default shortcut key for bringing up the <u>Find and Replace</u> dialog from <code>Ctrl+Alt+F</code> to <code>Ctrl+H</code>.</p>
</div>
<p>Press <code>Ctrl + H</code> to launch the <u>Find and Replace</u> dialog in LibreOffice Writer.</p>
<ol>
<li><strong>Click</strong> on the <u>More Options</u> button (it will change to <u>Fewer Options</u>). </li>
<li><strong>Click</strong> on the <u>Regular expressions</u> box. </li>
<li><strong>Enter</strong> the regular expression into the <u>Search for</u> field. </li>
<li><strong>Click</strong> on the <u>Replace All</u> button.</li>
</ol>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-10.png" alt="" border="0" class="centered" /></p>
</div>
<p><strong>10) Add</strong> the following at the start of the edited package list: <strong><code>sudo apt-get remove --auto-remove </code></strong></p>
<p><strong>11) Cut and paste</strong> this package list with the <code>apt-get</code> command from step 10 into a <code>Terminal</code> to completely uninstall the package.</p>
<div class="c1">
<p>To paste into a terminal, you need to <strong>right-click</strong> in the terminal and select the <u>Paste</u> option from the popup menu. Using the traditional shortcut <code>Ctrl+V</code> will not work.</p>
<div class="c2">
<p>Detailed instructions on how to open a terminal can be found <a href="//complete-concrete-concise.com/ubuntu-2/ubuntu-12-04/ubuntu-12-04-how-to-get-a-command-line-shell-or-terminal">here</a>.</p>
</div>
<p><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-11.png" alt="" border="0" class="centered" /></div>
<p>It should <strong>look</strong> something like this (the exact list of files will depend on what you are uninstalling):</p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-12-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-12-thumb.png" alt="" border="0" class="centered" /></a></p>
<p><strong>12) Press</strong> the <u>Enter</u> key and <strong>enter</strong> your password (this is your login password):</p>
<div class="c2">
<p><strong>NOTE:</strong> when you type your password, nothing will happen on the screen. This is normal. As a security feature, Linux does not echo back any indication of the characters you are typing in.</p>
</div>
<div class="c3">
<p><strong>NOTE:</strong> You will only be asked for your password if this is the first time in this terminal session that you are using <code>sudo apt-get</code>.</div>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-13-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-13-thumb.png" alt="" border="0" class="centered" /></a></p>
<p><strong>13) Press</strong> the <u>Enter</u> key after entering your password and <code>apt-get</code> will respond by showing which files are going to be uninstalled:</p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-14-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-14-thumb.png" alt="" border="0" class="centered" /></a></p>
<p>If you want to uninstall the files, then <strong>press</strong> the <u>Enter</u> key. If you don&#8217;t want to uninstall the files, <strong>type</strong> the <code>N</code> key and then <strong>press</strong> the <u>Enter</u> key.</p>
<div class="c2">
<p><strong>NOTE:</strong> if this was not the last package installed. Or if updates have been installed, it is <u><strong>STRONGLY</strong></u> advised that you <u>double-check</u> the files being uninstalled to ensure they do not include any extra files.</p>
</div>
<div class="c4">
<h1>WARNING ! ! !</h1>
<p>This should work <u>perfectly</u> if the package you are uninstalling is the <strong><u>LAST</u></strong> package you (or anybody else) installed on your system. In other words: <span class="i4">No one has installed anything else – not even updates – since this package was installed!</span></p>
<p>If other packages have been installed, if updates have been installed, then there is a <strong><u>RISK</u></strong> that those packages or updates <em>may </em>have a dependency on one or more of the packages you are uninstalling.</p>
<p>If you uninstall a package that some other package depends on, then that package will no longer function correctly.</p>
<p>Examining all package dependencies is very complicated. Proceed at your own risk – backups are strongly recommended.</p>
</div>
<h1>Double Checking Your Uninstall Script</h1>
<p>If the package you are uninstalling is not the last package to be installed, there is the risk that you will accidentally uninstall a package that some other application depends on.</p>
<h3>Why Double Check?</h3>
<p>For example, you install <u>abiword</u>. <u>Abiword</u> depends on the package <u>ttf-lyx</u> and it will be installed it if it is not already installed.</p>
<p>Later, you install <u>cadabra</u>. <u>Cadabra</u> also depends on <u>ttf-lyx</u>, but since it is already installed, it will use the installed copy instead of installing a new copy.</p>
<p>If you uninstall <u>abiword</u> using the technique above, it will explicitly uninstall <u>ttf-lyx</u> (which is also needed by <u>cadabra</u> &#8211; which was installed after <u>abiword</u>).</p>
<p>This will cause <code>apt-get</code> to uninstall <u>cadabra</u> because <u>cadabra</u> depends on <u>ttf-lyx</u>.</p>
<p>To avoid this problem, it is necessary to double check that you are not removing any extra files.</p>
<p>Since <code>apt-get</code> displays the files it is going to uninstall, it is a simple matter of checking that no additional files were added to the uninstallation:</p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-14-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-14-thumb.png" alt="" border="0" class="centered" /></a></p>
<h1>Uninstalling Configuration Data</h1>
<div class="c4">
<p>I don&#8217;t recommend doing this unless you know <u>exactly</u> what you are looking to delete.</p>
</div>
<p>The last thing left to do is to delete / remove all the configuration data.</p>
<p>Unfortunately, this is hard to do since there is no record of what files and folders the (now uninstalled) application put on your computer.</p>
<p>A good place to start is in your <code>/home</code> directory and your <code>/home/.config/</code> directory.</p>
<p>However, data, files, and folders could be squirreled away all over the place.</p>
<p>As you can see from these screenshots, it is not necessarily obvious what folders and files need deleting:</p>
<p><a href="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-home-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-home-thumb.png" alt="" border="0" class="centered" /></a><br />
<a href="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-home-config-big.png" target="_blank"><img decoding="async" src="//complete-concrete-concise.com/wp-content/uploads/2012/05/ubuntu-12.04-how-to-complete-remove-a-package-home-config-thumb.png" alt="" border="0" class="centered" /></a><br />
</p>
<p>The post <a href="https://complete-concrete-concise.com/ubuntu-2/ubuntu-12-04/ubuntu-12-04-how-to-completely-uninstallremove-a-packagesoftwareprogram/">Ubuntu 12.04 &#8211; How to Completely Uninstall/Remove a Package/Software/Program</a> appeared first on <a href="https://complete-concrete-concise.com">Complete, Concrete, Concise</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://complete-concrete-concise.com/ubuntu-2/ubuntu-12-04/ubuntu-12-04-how-to-completely-uninstallremove-a-packagesoftwareprogram/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
	</channel>
</rss>
