SQUEAK(1)

πŸ“¦
version 4.10.2.2614+20120917 Β· 5 versions
, in debian bookworm, ubuntu jammy, ubuntu noble, ubuntu resolute, ubuntu stonking

SQUEAK(1) πŸ’–

okay so bestie, welcome to the manual page for squeak β€” the Unix Squeak virtual machine launcher ✨ this is the whole lore, no skips, no cuts, we're doing all of it 🫢


✨ NAME ✨

squeak β€” the Unix Squeak virtual machine launcher πŸŽ€


✨ SYNOPSIS ✨

squeak squeak [image filename]  [project filename]

✨ DESCRIPTION ✨

so squeak is the virtual machine for the Squeak Smalltalk system, and lowkey it needs three files to work right πŸ‘‘:

  • an image file holding a snapshot of a live Squeak session,
  • a changes file with the source code for all the modified methods in the image, and
  • a copy of (or a link to) a shared system sources file with the source code for methods that haven't been modified since the last major version increment.

the image and changes files are literally holding the state of a user's Squeak session, and that state is persistent between consecutive sessions 🌈 so yeah, private copies of these files are normally required, that's just how it is.

the squeak script checks that the local Squeak installation looks sane, and then copies the required files into the current working directory πŸ“ if squeak hits no problems, it finishes up by running squeak vm to start a Squeak session using the newly copied image and changes files. slay πŸ’…


✨ INVOCATION ✨

squeak accepts an optional image name, and/or an optional project name πŸ’–

  • if an image name is given on the command line, squeak tries to run that image.
  • otherwise squeak checks the environment variable SQUEAK_IMAGE and, if it's set, uses its value as the name of the image to run.
  • otherwise squeak goes looking for available images in the ~/squeak and /usr/share/squeak directories.
  • then squeak shows a dialog with all the available images so the user can pick one πŸŽ€ if the chosen image is at SQUEAK_IMAGE_DIR (which is by default /usr/share/squeak), it gets copied to ~/squeak.
  • if only one image is available, no dialog gets shown, the script just runs that image. no decisions needed, main character energy πŸ‘‘

the image argument can be followed by a project name πŸ¦‹ this is the name of a 'document' that should have been saved from a Squeak image. the project name must have the .pr extension.

the project argument can also be provided without an image name. in that case, squeak will look for an image to run the project following the same criteria explained above ✨


✨ ENVIRONMENT ✨

to know all the environment variables that can affect the squeak image launching, take a look at the Environment section of the squeakvm man page πŸ‘€

apart from those options, these ones are applied to this script:

  • SQUEAK_IMAGE_DIR β€” this is the directory, together with ~/squeak, where the launcher looks for Squeak images. (the default value is /usr/share/squeak) πŸ“‚
  • SQUEAK_IMAGE β€” this is the name of an image file to be run by the script πŸ’–
  • SQUEAK β€” this is the name of an alternative vm (or alternative vm options) to be run by the script. the script launches the vm with these default options: -mmap 1024M -nomixer πŸ”₯

✨ NOTES ✨

this manual page documents version [version] of Unix Squeak. it may not be appropriate for any other version, fr fr πŸ™ˆ

⚠️ the image and changes files containing a saved Squeak session are intimately related. they should always be used together, never be separated, and under no circumstances should an image be run with a changes file that has been used with a different image. failure to adhere to the above could cause the source code for the methods in the image to become garbled and impossible to retrieve πŸ’€ like, genuinely, do not do this.

the Unix Squeak virtual machine fully supports OpenGL in both the X11 and Quartz display drivers 🌈 Open Croquet will run just fine with either of these drivers (and many Mac OS X users will even have the choice of which driver to use :) ✨

because of licensing issues, a Squeak image or Squeak sources package is not available in Debian yet. so the user must download a proper image in order to get this script useful 🫢 available images can be found in these web sites:


✨ AUTHOR ✨

this manual page was written by JosΓ© L. Redrejo for the Debian project πŸ’œ


✨ SEE ALSO ✨

squeakvm(1) πŸ¦‹


and that's the whole thing bestie, we ate and left no crumbs πŸ“ this was SQUEAK(1) from the Debian project, signing off with so much love, ily, go run your image πŸ’…βœ¨

πŸ“¦ where this page comes from