LSBackgroundOnly ok let me look at that logic.
Yes it appears you must pass in your wish to make the vm -headless via
the command line.
Otherwise it will switch the LSBackgroundOnly to no so that the
application icon will appear in the doc
If you set LSBackgroundOnly to yes and pass in -headless then it will
run headless and not appear in the dock.
In trying this I had to do
./Squeak\ VM\ Opt.app/Contents/MacOS/Squeak\ VM\ Opt -headless
Squeakx.image
so you need to indicate both headless and where the image is, and set
LSBackgroundOnly to YES
However I did not check this outside of having a user logon.
Also see
http://developer.apple.com/documentation/Carbon/Conceptual/LaunchServicesCo…
/apple_ref/doc/uid/TP30000999-CH202-DontLinkElementID_3
and maybe
http://developer.apple.com/technotes/tn2002/tn2062.html
You know your other choice is you can use the unix version of the
squeak vm that has been compiled to run on os-x.
On 1-Aug-09, at 3:44 PM, Aaron Rosenzweig wrote:
I'd like to thank Mariano, John, and Randal for
giving me pointers,
Please someone correct me if I am wrong but I believe it is
*impossible* to run Squeak headless in a nice manner on Mac OS X
with the ready made VMs that are available for download.
LSBackgroundOnly - setting this property to "true" in the plist file
seems to have no effect.
Using "-headless" from the command line and specifying the path to
the smalltalk image works like a charm but *only* from a terminal
window... which is pretty useless... Because if I'm doing it there I
might was well double click the .app bundle and have all the bells
and whistles in a GUI environment.
The idea is to use launchctl to control the startup and shutdown of
the daemon Squeak process without a user even having to login. When
I try to launch it this way (as the "appserver" user) I get this
error in the unix system console:
-headless: kCGErrorRangeCheck : Window Server communications from
outside of session allowed for root and console user only
After a bit of research, I realize that the "kCGErrorRangeCheck"
happens whenever you use a Carbon framework. It pretty much is non-
avoidable unless you are using pure cocoa or unix frameworks. The
Carbon stuff calls initialization bits that require a window server.
According to this link -
http://www.smalltalkconsulting.com/squeak.html
- A pure Cocoa version is in the works but not out now.
Please, if someone hears my call enlighten me. It shouldn't be this
hard. My current tact is to download the source for the VM and see
if there are options to be set that disable the window server
completely. Does this sound feasible? I hope so, it's the only
shimmer of light I can grasp for. That or just build a linux box to
run Squeak...
Any and all tips appreciated,
-- Aaron
_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
--
=
=
=
========================================================================
John M. McIntosh <johnmci(a)smalltalkconsulting.com> Twitter:
squeaker68882
Corporate Smalltalk Consulting Ltd.
http://www.smalltalkconsulting.com
=
=
=
========================================================================