How do I uninstall a software package in Mac OS X?

How Do I uninstall a software package in Mac OS X?

There are third-party applications to uninstall your software. For example, AppZapper is one such program that allows you to completely uninstall other applications, including their preferences, etc. It’s not free, but AppCleaner is a free application that works well enough to solve this problem.

But do you need to use a software package to uninstall your software?

No. You absolutely do not need to.

Most Mac OS X applications (anything that ends in .app), like Safari and iTunes, are bundles. The application icon you see in Finder (typically the Applications Folder) is usually a special folder itself, made to appear as a single double-clickable file. These “folders” contain all, or at least most, of the files needed to run the application. Application Bundles are self-contained, this also means that to uninstall these applications, you only have to drag them to the Trash. If you control-click (or right-click) on an Application icon, and you see “Show Package Contents”, then it is a bundle. Additionally, Application Bundles are typically installed by Dragging and Dropping the software in your Applications folder.

So why does Windows have an uninstaller, but the Mac OS X doesn’t?

Let’s step back a moment, under Windows, software packages are much more complex.

  • The program itself (c:\program files\xxxxxyyyyzzz)
  • The Windows Registry contains settings not only for the Operating System, but also for the applications that run under windows. So as a monolithic database, it is rarely cleaned, compressed, and compacted in any way. Yes, Registry cleaners do exist, but often they do more harm than good.
  • RunTime Libraries for the application (A variety of locations, including c:\windows\dlls, etc)
  • The Users Documents folder (Content can be stored here)

This leads us to:

  • Rule 1 – Applications that are distributed as software bundles are uninstalled by dragging the application’s icon to the Trash.
    • Collary – Software Bundles greatly simplify the task of installing and uninstalling software, especially when compared to Windows.

Why would we want to use AppCleaner?

To remove the cruft that is not removed by trashing an application. The Macintosh does not have a registry equivalent, so when an application needs to store its settings and preferences, the application creates a preference file in either ~\Library\Preferences or \Library\Preferences.

Unlike the Windows Registry though, there is no performance hit from having a preference file.  The preference file is only opened when the program that created specifically asks for the preference information.  Compare that to Windows, where the entire registry is always open, and accessible to every and all applications.  The Windows registry is equivalent to one large non-optimized database. The larger it gets, the more likely there will be performance issues.

But eliminating the old preference file will save disk space! A typical preference file is only 10-20K in size, so you would not be “saving any significant disk space”.  You also would be inconveniencing yourself!  If you ever decided to re-install the application, by keeping the preference file, you would still keep your settings and customizations for the application.

Generally, the only reason to remove a preference file is to troubleshoot to see if the preference file has been corrupted or damaged.

This leads us to:

  • Rule 2 – Eliminating Preferences files is an excellent troubleshooting process, but rarely improves the speed or performance of the Macintosh.

Applications that use Installers

Now if the application has an installer that you have to run, then the application is not fully contained in a Software Bundle. In short, it modifies or adds files that are normally outside of your Users Folder. For example, an Apple System Update would change the Mac OS X system, which requires access to the \System Folder.

Would an Uninstaller help here? Possibly. Any software package that comes with an installer, typically comes with an Uninstaller. This uninstaller maybe in the Applications folder, a “hidden file”, or part of the Software Installer itself. The best advice is to check the software’s instructions for instructions on how to uninstall the software.

Once the software is removed, then a 3rd party application could be used to remove the preferences or application support files.

Please note, Software Installers are the exception, not the rule, on the Macintosh. Maybe 10% of the applications you see will be software installers. In addition, the Mac App Store, sells software bundles, due to this I would I expect to see even less demand for Software Installers in the future.

This leads us to:

  • Rule 3 – If the Software has an Installer Application, then it includes a way to uninstall it.
    • Collary – This only applies to non-OS upgrades.  For an OS upgrade, your Mac OS X Installation disk is your uninstaller.

Examples:

  • Mac2Tivo
    • Drag the Mac2Tivo folder into the trash
    • Optionally remove the ~/Library/Application Suport/Mac2Tivo/MediaData and ~/Library/Preferences/com.roxio.Mac2TiVo.plist files.
  • CD Spin Doctor – Follow the hyperlink for Instructions
  • Toast – Follow the hyperlink for Instructions

Uninstalling System Preferences Panes

Sometimes applications can install extras in the form of System Preference panes. However, when you remove the app from your Mac, you might be left with extraneous System Preference panes.

To uninstall System Preference panes, just right-click (or control + click if you have a one button mouse) on the preference pane icon and select “remove preference pane.”

When you click “remove,” the preference pane will be instantly moved to the OS X Trash can where you can completely remove it from your system by emptying the trash. Please note that this will only work on System Preference panes located in the “Other” section of System Preferences.

Any other suggestions for Rules, and guidelines?  Please feel free to comment below.