Does Mac OS X manage registries for installed applications?

11

2

I am a beginner in Mac OS. Till now I was using Windows. I know a little about the registry in Windows.

Does Mac OS X manage registries for installed application?

  • If yes
    • Where is the registry stored?
    • How do you modify this registry?
    • Reference link regarding Mac OS registry management.
  • If no
    • what system does Mac OS X follow for installed application?
    • Reference links regarding Mac OS application management.

Sagar R. Kothari

Posted 2009-10-15T18:34:17.810

Reputation: 4 267

Answers

14

There's no registry in Mac OS.

However, you can find most application settings in the Library/Preferences folder. Most apps saves their settings there in separate files. This is not something that's managed by the OS. There's no hive, there's no regedit, nothing like that, Just a bunch of plist files.

alex

Posted 2009-10-15T18:34:17.810

Reputation: 16 172

There is a regedit, sort of -- it's a command-line tool called defaults. Run man defaults in a terminal window to see the manual for it. – SilverWolf - Reinstate Monica – 2018-04-29T00:52:21.013

So what happens to these files if I "uninstall" an application by simply moving it to the trash from Applications Directory. Do I need to remove there Preferences manually as well by going into Library/Preferences? – basarat – 2012-07-08T08:51:58.463

1

@BasaratAli They remain there. However, you could use something like apptrap to remove those files as well; if you move an app to the trash, apptrap will ask you if you also want to remove its corresponding plist files.

– alex – 2012-07-08T09:03:07.573

Right one. didn't know. thanks for sharing. – Sagar R. Kothari – 2009-10-15T18:56:54.410

9

One should add that some programs — mainly those with a Unix or Linux background — are likely to store their data in ~/ in a dotted (thus invisible to the Finder) folder or somewhere inside ~/.config .

So, in the end it is not too simple, unfortunately.

Debilski

Posted 2009-10-15T18:34:17.810

Reputation: 1 288

@BenjaminSchollnick, How is this different from window's user applications registry? – Pacerier – 2017-08-22T04:27:27.987

@Pacerier, It's different, because in all of these cases the data is stored in the User's account, and can be copied or eliminated without causing damage to the underlying OS.

In windows, if your registry gets damaged or reloaded (e.g. OS reload) you have to start over. Re-install everything. With MOSX all of that data is still intact, and you don't need to waste your time reloading. – Benjamin Schollnick – 2017-08-23T10:20:59.533

1But fortunately - I like it. there is no problems like "registry Cleaner", "Registry hack", "Registry problems", "Reinstalling os due to bad registries problems." – Sagar R. Kothari – 2009-10-15T19:29:45.500

5@sagar: It's not so simple. There's also no uninstaller for most applications in Mac OS X, so instead of applications clearing their preferences from Library/Preferences, they're usually just left there, taking up space. You end up having to use extra applications like AppZapper to try to clean up the mess when uninstalling. I'd consider this exactly the same as "Registry cleaning". – Will Eddins – 2009-10-15T19:45:50.927

@Will Eddins - Sir, Would You plz give me the download link for "AppZapper"? – Sagar R. Kothari – 2009-10-15T21:34:54.653

2@Will the major issue though is that even though old preferences aren't necessarily automatically eliminated, it doesn't cause the same damage that bad registry errors do. If the application isn't started, the preference is never touched. The Preference files take virtually no disk space. So the amount of cruft is minimal. – Benjamin Schollnick – 2009-10-16T00:13:08.577

8

Yes, to some degree the so-called Launch Services Database compares to the HKEY_CLASSES_ROOT section of the Windows registry. It is used to determine what applications are willing to open certain documents or URLs, and how they can be used (like to edit or to view). It also tells OS X which application can create the icons as shown in, for example, Finder.

When, for example, you drop some new application into the Applications folder, OS X will notice that and register the new application. This way, there's often no need to run a set up program like in Windows. If this database gets messed up, then one can quite easily rebuild it.

(Likewise, Quick Look might keep a list of generators it has found earlier, but I guess such cache would be updated automatically whenever needed. If one explicitly selects some application to open a file, then that is stored in the file's resource fork.)

Arjan

Posted 2009-10-15T18:34:17.810

Reputation: 29 084

while I agree with dlamblin this is a bad answer, it showed me new info I didn't know about OSX. thanks! – cregox – 2011-03-26T19:12:02.330

1I think this should be a Partial Yes not a bolded Yes. – dlamblin – 2009-10-15T21:25:02.333

2Well, followed by an italic some, and as a reaction on all the earlier (and accepted) plain No's, I disagree a bit... ;-) – Arjan – 2009-10-15T21:33:47.073

4

Apple does not have a registry like Windows, much to most users glee. Applications themselves are self contained bundles, which at the low-level are really a folder with all the things the app needs to run. This makes application management easy. To install, you just drag the app to the Applications folder. To delete, you just delete it in the Applications folder.

To save preferences and the like for a given application and users, things called property lists are used (plist is the extension for these files). The common place for finding these things are ~/Library/Preferences Applications will also store user specific data/settings in ~/Library/Application Support

Generally these things are modified through the applications GUI, most Apple apps have a Preferences menu. There are a few ways to modify these settings by hand, but tread with similar care as you would before modifying the Windows Registry (though at worst you would break only a specific app and not the entire OS). You can use the utility app Property List Editor to modify plists (which are basically just XML files with key/value pairs). Also you can use the command line "defaults" command. Try "man defaults" from the terminal for more info. But again, this is for the brave at heart.

Hope that helps some.

macauley

Posted 2009-10-15T18:34:17.810

Reputation: 209

But unlike chrome extensions, what's stopping an app from writing its tracking data all over the place? – Pacerier – 2017-08-22T04:29:03.453

0

Don't forget the System Configuration database which holds network settings:

man scutil

NAME
     scutil -- Manage system configuration parameters

SYNOPSIS
     scutil
     scutil --prefs [preference-file]
     scutil -r [-W] { nodename | address | local-address remote-address }
     scutil -w dynamic-store-key [-t timeout]
     scutil --get pref
     scutil --set pref [newval]
     scutil --dns
     scutil --proxy
     scutil --nc nc-arguments

DESCRIPTION
     Invoked with no options, scutil provides a command line interface to
     the "dynamic store" data maintained by configd(8). Interaction with
     this data (using the SystemConfiguration.framework SCDynamicStore APIs)
     is handled with a set of commands read from standard input. A list of
     the available commands is available by entering the help directive.

alfwatt

Posted 2009-10-15T18:34:17.810

Reputation: 163