The main reason why I'm asking all this is because I want o figure out how to divorce most of the bundle from the X11.app bundle and place it somewhere in /usr/X11. That is, the stuff used by Xquartz (main.nib, the localization, etc) shouldn't really be in that .app. We have this weird interdependence between the two, and I think the end goal should be like this: launchd runs /usr/X11/bin/startx which is an sh script in xinit. This checks org.x.X11 plist to figure out extra command line arguments (the stuff the 'server start X11.app' did) and starts Xquartz. Xquartz then loads its UI stuff, sets the icon, etc. That way, people running Xquartz directly will see it with menus and the right icon. Also, I think this is a bit stronger from a software engineering standpoint. The only problem with that is that we'll then have a new two-icon icon issue when people put /A/U/X11.app in the dock... hrm... On Dec 13, 2007, at 22:46, Peter O'Gorman wrote:
Jeremy Huddleston wrote:
Really? It needs argv to be the full path? That doesn't make sense since this works:
PATH=/Applications/TextEdit.app/Contents/MacOS TextEdit
Most of get bundle path etc are based around _NSExecutableGetPath, which, if you look at http://www.opensource.apple.com/darwinsource/10.5/dyld-95.3/src/dyldAPIs.cpp there is a comment:
* Note that _NSGetExecutablePath will return "a path" to the executable not a * "real path" to the executable. That is the path may be a symbolic link and * not the real file.
Basically it usually works, but can get confused. It is less likely to become confused if passed a full path to the real executable in argv[0].
Peter -- Peter O'Gorman http://pogma.com _______________________________________________ Xquartz-dev mailing list Xquartz-dev@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo/xquartz-dev