[squeak-dev] Interaction with Sugar on Ubuntu.
David T. Lewis
lewis at mail.msen.com
Fri Dec 6 02:17:44 UTC 2013
On Thu, Dec 05, 2013 at 02:36:42PM -0800, Eliot Miranda wrote:
> On Thu, Dec 5, 2013 at 2:01 PM, Gustavo Duarte
> <gduarte at activitycentral.com>wrote:
>
> > Eliot,
> >
> > Here the output of ps ww PID command.
> >
> > XO:
> >
> > PID TTY STAT TIME COMMAND
> > 976 ? S 0:22 /usr/lib/squeak/4.10.2-2614/squeakvm -encoding
> > UTF-8 -vm-display-x11 -xshm -sugarBundleId org.vpri.EtoysActivity
> > -sugarActivityId d25f8c2f9a19397ce914965abf04ed31b3f6b0ea -vm-sound-ALSA
> > /usr/share/etoys/etoys.image BUNDLE_PATH
> > /home/olpc/Activities/Etoys.activity SQUEAKLETS
> > /home/olpc/.sugar/default/org.vpri.EtoysActivity/instance BUNDLE_ID
> > org.vpri.EtoysActivity ACTIVITY_ID d25f8c2f9a19397ce914965abf04ed31b3f6b0ea
> >
> >
> > CM:
> >
> > PID TTY STAT TIME COMMAND
> > 5912 ? Rl 0:06 /usr/lib/squeak/4.4.7-2357/squeakvm -encoding
> > UTF-8 -vm-display-x11 -xshm -sugarBundleId org.vpri.EtoysActivity
> > -sugarActivityId c03be0a816bee1440f701b7d3b504b0968cb3274 -vm-sound-pulse
> > /usr/share/etoys/etoys.image BUNDLE_PATH
> > /usr/share/sugar/activities/Etoys.activity SQUEAKLETS
> > /home/gustavo-cm1/.sugar/default/org.vpri.EtoysActivity/instance BUNDLE_ID
> > org.vpri.EtoysActivity ACTIVITY_ID c03be0a816bee1440f701b7d3b504b0968cb3274
> >
> >
> > Seem the script that start squeak is ok, right ?
> >
>
>
> Looks like it :-(. That implies theres a bug in the VM on ubuntu :-(.
> Might it be something to do with the vm-sound-pulse plugin mis-parsing the
> command line? What happens if you start it with no sound (omit
> -vm-sound-pulse) ?
>
After reading this thread, I was initially confused by the command line
options that are being passed to the VM:
-encoding UTF-8
-vm-display-x11
-xshm
-sugarBundleId org.vpri.EtoysActivity
-sugarActivityId c03be0a816bee1440f701b7d3b504b0968cb3274
-vm-sound-pulse
These are options that are parsed by the VM executable itself, as opposed
to being passed to the Etoys image and evaluated there.
I took a look at the VM sources, and see that the -sugarBundleId and
the -sugarActivityId parameters will be interpreted by the VM executable
if and only if the VM was compiled with Sugar support:
# if defined(SUGAR)
else if (!strcmp(arg, "-sugarBundleId")) sugarBundleId= argv[1];
else if (!strcmp(arg, "-sugarActivityId")) sugarActivityId= argv[1];
# endif
I expect that if the Etoys image is run from a script that specifies those
two VM parameters, and if the VM was not compiled without Sugar support,
then the command line parameters are probably going to get out of whack.
The dictionary that got turned inside out is probably a side effect of this.
So my guess is that the script is trying to run a VM for Etoys in the
Sugar environment, but the VM that is being run by that script was not
compiled with Sugar support enabled.
Dave
More information about the Squeak-dev
mailing list
|