[squeak-dev] application packaging

Herbert König herbertkoenig at gmx.net
Mon Nov 3 15:47:32 UTC 2008


Hello Mark,

you seem a bit pressed, so let me reply as good as I can, hoping that
when you made it I find a nicer version on your web place :-))

MV> asked on the Sophie mailing list, but got no response. Is there a
MV> summary of the approach they use on the web somewhere?

The task is threefold:

Part one: make a Squeak image which presents your application (and
nothing else) to the user.

Part two: make your Squeak VM behave like your application.

Part three: make an installer, maybe for several OS.

Part one:
- you can use the startup mechanism of Squeak to start your app (has
been discussed recently).
- you can just prepare your image with the application started.
- you need to remove the programmer facilities.
- to quit you can use SmalltalkImage current snapshot: false andQuit: true,
iirc other alternatives have been discussed.

For this part I use a batch which starts my prepared image with a
script.

One example script (an st file):
"make it Autostart"
Smalltalk addToStartUpList: AssemblerAuswertungApp.
"Flaps killen"
Flaps globalFlapTabsIfAny do:   [:aFlapTab | Flaps removeFlapTab: aFlapTab keepInList: false].
GZipReadStream fileIn: 'SqueakLockdown-nk.1.cs.gz' asFileName.
Preferences disableProgrammerFacilities. SmalltalkImage current snapshot: true andQuit: true.

IIrc the last two statements need to stay on a single line.
        


Part two:
- you need to resource-hack your Squeak.exe (windows) to display your
icon in the title bar.
- can't tell you what came out of the recent discussion about "Quit
Squeak without saving".
- at least I'm not able to make Squeak perform as expected while
resizing the window. Only experience on Windows.
- there might be other unresolved issues in standard Squeak which may
have been solved in some of the mentioned apps.


I guess you are familiar with part three:
- you need any old installer to unzip and copy your package, place an
Icon on the desktop, associate filetypes with your application and so
on.

This is not different from any other language.

Does this help?


Cheers

Herbert                            mailto:herbertkoenig at gmx.net




More information about the Squeak-dev mailing list