<html><head></head><body>
<p>Hi Eliot,<br/>
</p>
<div class="moz-cite-prefix">On 5/25/20 2:29 PM, Eliot Miranda
wrote:<br/>
</div>
<blockquote type="cite" cite="mid:CAC20JE2E6UDBpk9TRBqnGcyTsyxRAO2bKXeXbL9-ki0GSd2bxQ@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<div dir="ltr">
<div dir="ltr">
<div>Hi Rob,</div>
<br/>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Mon, May 25, 2020 at
10:25 AM Robert Withers <<a href="mailto:robert.withers@pm.me" moz-do-not-send="true">robert.withers@pm.me</a>>
wrote:<br/>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div>
<p>Hey,</p>
<p>As I had changed a couple of scripts in the vm/image
directory, something was bugging me about them. I took
a long look at what git was pushing and made some
changes. I am attaching the changed/new files. What
steps could I take to publish on a branch in git? For
review. My git skills are rusty and there is a policy
issue for how you all proceed here. I am on Cog branch
atm.<br/>
</p>
<p>A few issues, <br/>
</p>
<ol>
<li>when UpdateSqueakTrunkImage.st, there are two
changesets requiring a merge. I click Rest Accept
and then click Merge, to get past them. It would be
really good to be able to auto-merge when updating
the trunk image, for CI and such. Is it possible?<br/>
<blockquote>
<ul>
<li>Merging Tools-eem.959</li>
<li>Merging Morphic-mt.1653<br/>
</li>
</ul>
</blockquote>
</li>
<li>The PreferenceWizard was not open in the resulting
images. I added a SetPreferenceWizardMorph.st squeak
script to restore and collapse any Workspaces
(VMMaker) and close any transcripts. Works for both
spur64 & vmmaker64 scripts.</li>
<li>The getGoodSpurVM.sh (32-bits) is not working on
my 64-bit system. Should it? Can I do 32-bits on a
64-bit OS?<br/>
</li>
</ol>
</div>
</blockquote>
<div><br/>
</div>
<div>No guarantee. MacOS is dropping support from 32-bits.
So best to use a 64-bit toolchain on a 64-bit OS and a
32-bit toolchain on a 32-bit OS.</div>
</div>
</div>
</div>
</blockquote>
<p>Oh dear, that's unfortunate. Would have been nice to test
32-bits.</p>
<blockquote type="cite" cite="mid:CAC20JE2E6UDBpk9TRBqnGcyTsyxRAO2bKXeXbL9-ki0GSd2bxQ@mail.gmail.com">
<div dir="ltr">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div>
<ol>
<li>The scripts for building the spur64image was
occurring in the update script. The
buildspurtrunk64image.sh (I think it was called), is
actually a migratespur32to64vmmakerimage.sh, so I
renamed it. It doesn't work due to #3.</li>
</ol>
</div>
</blockquote>
<div>(Notice the auto renumber bug) Now that a 64-bit
release is available we should probably apply
UpdateSqueakTrunkImage.st to it and avoid the image
rewrite.</div>
</div>
</div>
</div>
</blockquote>
<p>My apologies, I don't know what this means. The
buildspur64image.sh script is running UpdateSqueakTrunkImage.st
and avoids a re-retrieval of the latest 64 bit image, as the image
is already here. The only rewrite occurs in buildvmmaker64image.sh
when the Spur64VMMaker.image is absent. Once again the
buildspur64image.sh, called from there, only retrieves if the
trunk6-64.image is missing. This buildvmmaker64image.sh also does
a UpdateSqueakTrunkImage.st on the Spur64VMMaker.image. Those
calls to UpdateSqueakTrunkImage.st happen every time a
buildspur64image.sh/buildvmmmaker64image.sh is evaluated.</p>
<p><br/>
</p>
<blockquote type="cite" cite="mid:CAC20JE2E6UDBpk9TRBqnGcyTsyxRAO2bKXeXbL9-ki0GSd2bxQ@mail.gmail.com">
<div dir="ltr">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div>
<ol>
<li>The scripts for building the vmmaker64image was
occurring in the build script. The two sets of
scripts (spur64 & vmmaker64) were opposite.
spur64 was building in the update script and vmmaker
was building in the build script. I liked the way
the spur64 was being built so I made the vmmaker
build happen in the update script, like spur64.</li>
<li>Then I decided that the update scripts were doing
building and the building wass also doin gan update.
So I renamed everything and now the #build scripts
for spur64 and vmmaker are the scripts that both
build and update the image (trunk6-64 or
Spur64VMMaker). The update scripts simply call the
build script.</li>
<li>I renamed buildspurtrunkvmmaker64image.sh &
buildspurtrunkvmmakerimage.sh to
buildvmmakerimage.sh and buildvmmaker64image.sh<br/>
</li>
<li>I made all the 32 bit scripts, for spur &
vmmaker, look like the 64 bit scripts. Due to #3, I
cannot test.</li>
</ol>
<p>I think this is everything I ventured into and
changed, based on a "ll -t". I realize I changed the
way vmmaker/64 images are built, and also spur/64
images. I tried testing all combos and they worked.
Don't really need the #update scripts anymore. Please
let me know if you accept these and help me
commit&push. <br/>
</p>
</div>
</blockquote>
<div>Can you push on a branch? Then I can take a look... <br/>
</div>
</div>
</div>
</div>
</blockquote>
<p>Can I branch off Cog after having made changes and have those
changes follow into the new branch? This is my concern. So, <br/>
</p>
<blockquote>
<ul>
<li>"git branch -c rabbits" - *check*<br/>
</li>
<li>"git checkout rabbits" - *check*<br/>
</li>
<li>"git add ...", "git add ...", ***add all new/changed
files*** - *check*</li>
</ul>
<p>...<br/>
</p>
<ul>
<li>"git log ???" ***validate local changes***<br/>
</li>
<li>"git commit -m ' scripts updated' "</li>
<li>"git push"</li>
</ul>
</blockquote>
<p>Or somehow? How can I check the my immediate changes in the log?
That will be committed? I tried "git log" and it had all changes
since the first big bang.<br/>
</p>
<p>K, r<br/>
</p>
<blockquote type="cite" cite="mid:CAC20JE2E6UDBpk9TRBqnGcyTsyxRAO2bKXeXbL9-ki0GSd2bxQ@mail.gmail.com">
<div dir="ltr">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
<div>
<p> </p>
<p>I appreciate all'y'all for all y'all do!</p>
<p>Kindly,<br/>
Rabbit<br/>
</p>
<br/>
<div>On 5/24/20 4:23 PM, Robert Withers wrote:<br/>
</div>
<blockquote type="cite">
<p>Hey everyone,</p>
<p>I just reinstalled my OS and erased my disk to get
it to work right. A few issues that downgrading the
version helps: LibreOffice, Adobe Acroread, Facebook
Messenger clone called Caprine. These all required
special versions.</p>
<p>Then I clone the opensmalltalk/vm, and proceed...<br/>
</p>
<h4>Image generation for VMMaker<br/>
</h4>
<p>I thought I would explain what I had to do to
generate all sources and build a working
build.linux64x64/squeak.cog.spur VM.</p>
<p>In /image I had to add the following scripts or
update existing ones, I forget. We definitely need
these two scripts:<br/>
<br/>
</p>
<blockquote>
<ul>
<li>buildspurtrunk64image.sh</li>
<li>updatevmmaker64image.sh</li>
</ul>
</blockquote>
<p>With running these I was able to come up with a
Spur64VMMaker.image, with latest loaded. I modified
the in-image VMMaker method #generateVMPlugins to
reflect the new Cryptography plugins:</p>
<blockquote>
<ul>
<li>"Cryptography Plugins:" DESPlugin DSAPlugin
MD5Plugin SHA2Plugin</li>
</ul>
</blockquote>
<p>The method version with the clone has a reference
to SHA256Plugin which is no longer apropos.</p>
<p>I generate the vm and plugins.<br/>
</p>
<h4>Building dependencies</h4>
<p>From the HowToBuild in the linux64x64 directory, I
ran the following for installing support libraries
for my brand new Ubuntu 20.04 OS:<br/>
</p>
<blockquote>
<ul>
<li>sudo apt-get install uuid-dev libcairo2-dev
libpango1.0-dev libgl1-mesa-dev libgl1-mesa-glx
libssl-dev</li>
</ul>
</blockquote>
<p>In addition, my new shiny OS needed clang installed
so I also ran:</p>
<blockquote>
<ul>
<li>sudo apt-get install clang</li>
</ul>
</blockquote>
<h4>Running mvm:</h4>
<p>First, I needed to update the plugins.ext file to
reflect the new Cryptography plugins. I am attaching
that file.</p>
<p>Finally, I am ready to build. Go to
build.linux64x64/squeak.cog.spur/build/. I run the
following:</p>
<blockquote>
<ul>
<li><b>build.linux64x64/squeak.cog.spur/build/$ </b>.mvm
> ../mvm.log</li>
<li>and after running I type Y and return to cause
the script to make clean. (The clean? prompt is
hidden given the stdout redirection. See it in
the log).<br/>
</li>
</ul>
</blockquote>
<p>Once the VM and Plugins are generated, I installed
to my system by typing:</p>
<blockquote>
<ul>
<li><b>build.linux64x64/squeak.cog.spur/build/$
sudo make install</b></li>
</ul>
</blockquote>
<p>Now squeak is installed in my machine and I can run
the following:</p>
<blockquote>
<ul>
<li><b>image/$</b> squeak Spur64VMMaker.image
&</li>
<li>then save as <i><b>rabbit.image</b></i><br/>
</li>
</ul>
</blockquote>
<p>For my purposes, I now load my Crypto stuff and run
all tests:</p>
<blockquote>
<ul>
<li>Installer ss<br/>
project: 'Cryptography'; install:
'ProCrypto-1-1-1';<br/>
project: 'Cryptography'; install:
'ProCryptoTests-1-1-1';<br/>
project: 'Cryptography'; install:
'SSLLoader'.</li>
</ul>
</blockquote>
<p>Now I can pass all Crypto and ParrotTalk tests. SSL
is still failing, expectedly.</p>
<p>Well I think this is accurate enough. As I have
gone through all of this, already, I do not relish
trying to replicate my steps. Hopefully the other
Ubuntu heads out there will have success!<br/>
</p>
<p>Kindly,<br/>
Rabbit<br/>
</p>
</blockquote>
</div>
</blockquote>
</div>
<div><br/>
</div>
<div dir="ltr" class="gmail_signature">
<div dir="ltr">
<div><span style="font-size:small;border-collapse:separate">
<div>_,,,^..^,,,_<br/>
</div>
<div>best, Eliot</div>
</span></div>
</div>
</div>
</div>
</div>
</blockquote>
</body></html>