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

Secret Stuff

© May 2019 Anthony Lawrence


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.

(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> Secret Stuff

Inexpensive and informative Apple related e-books:

Take Control of Apple Mail, Third Edition

iOS 8: A Take Control Crash Course

Take Control of High Sierra

iOS 10: A Take Control Crash Course

Photos: A Take Control Crash Course

More Articles by © Anthony Lawrence

Printer Friendly Version

Have you tried Searching this site?

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

Printer Friendly Version

The idea of "work, then get paid" has been deeply ingrained in our culture by employers who want to limit their risk. Well, I like to limit my risks also. I like to get paid before I do work. (Tony Lawrence)

Linux posts

Troubleshooting posts

This post tagged:


Unix/Linux Consultants

Skills Tests

Unix/Linux Book Reviews

My Unix/Linux Troubleshooting Book

This site runs on Linode

SCO Unix Sales, Support, & Service

Phone:  707-SCO-UNIX (707-726-8649Toll Free: 833-SCO-UNIX (833-726-8649)