APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

Secret Stuff


Apple's Developer Site is a rich resource of information. That's particularly true in the Technical Notes section; I love rummaging through that area for hints and tips.

Recently I found something interesting: Setting environment variables for user processes. If you are an old Unix hand, your first reaction was probably like mine: Huh? What's the big deal: set whatever you want in /etc/profile or ~/.bash_profile.

Ah, but we forget: Mac OS X isn't entirely a traditional Unix system: processes don't necessarily start from a shell. The initial login is LoginWindow, which starts up the Dock and Finder.. what if you want a non-shell app to have an environment variable set?

Well, as the TechNote article describes, it's not very hard: you just need to create ~/.MacOSX/environment.plist for the user and populate it appropriately. They give a simple example at that link.

But why would you need to do this? Maybe for an app of your own design, but you'd have control of that anyway. Why would you want to set variables for other Mac apps?

The answer is debugging. Many Mac apps and system services are controlled by preference files or the mere existence of some particular file, but others trigger debugging or other actions because of environment variables. Of course a lot of that is detailed at the Developer Connection in Technical Note TN2124 Mac OS X Debugging Magic.

Apple's Developer Connection is full of helpful stuff like that. It's definitely not "for developers only".

Got something to add? Send me email.

Increase ad revenue 50-250% with Ezoic

More Articles by

Find me on Google+

© Anthony Lawrence

Kerio Samepage

Have you tried Searching this site?

Unix/Linux/Mac OS X support by phone, email or on-site: Support Rates

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us

The successful construction of all machinery depends on the perfection of the tools employed; and whoever is a master in the arts of tool-making possesses the key to the construction of all machines... The contrivance and construction of tools must therefore ever stand at the head of the industrial arts. (Charles Babbage)

This post tagged: