[Openmcl-devel] Application created with save-application: it is possible to reduce the time of the bouncing icon in Mac OS X Dock at the start?

R. Matthew Emerson rme at acm.org
Mon Mar 12 12:19:08 PDT 2018



> On Mar 11, 2018, at 3:43 AM, Renzo Orsini <renzo.orsini at gmail.com> wrote:
> 
> I’ve created a no-console CCL application that starts a web server, open automatically the application home page, and then stop when the the user perform some action. Then I save this application on Mac OS X with save-application, prepending the kernel and producing a neat self-contained application bundle that can be runned by double clicking on it (I’m planning a future version for Windows and Linux).
> 
> Everything works well, the only annoying thing is that in Mac OS X the application icon bounces on the dock when the application starts for two minutes, even after the initialization phase.
> 
> I suppose it depends on the fact that the application does not terminates with the top-level function that I am using (that starts the web server and open the application page). I tried to different strategies inside this function: opened a socket with an “accept-connection” on it to terminate when a connection is done to the socket port, or perform a (read) (which does not return since the application does not read anything).
> 
> So I am asking: can you think of some way of reducing the time the icon is bouncing in the dock? 

Are you making a Cocoa-based application? If so, there are a couple of Info.plist keys that might be helpful.

One is LSUIElement.  If this is true, then the app won't show in the dock, although the app can still come to the foreground and show a user interface.

The other is LSBackgroundOnly. This is used when you want to make a faceless background app.

If you are not using a Cocoa-based app, then I'm not too sure.  In order to make something double-clickable, I think you generally need to have it in an app bundle structure.

Some brief googling turns up https://github.com/subtleGradient/tilde-bin/blob/master/appify

This is a shell script that will create a minimal app bundle for a given program.  Maybe reading that will give you some ideas.




More information about the Openmcl-devel mailing list