<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Aptos;
panose-1:2 11 0 4 2 2 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Aptos",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#467886;
text-decoration:underline;}
span.EmailStyle200
{mso-style-type:personal-reply;
font-family:"Aptos",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:11.0pt;
mso-ligatures:none;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="#467886" vlink="#96607D" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Please ignore. I’ll work with Juan offline about this. It’s obviously his call if anything gets published. I am perhaps being a bit eager to engage with the community. If something gets decided I’m sure it will be shared. Of course it could
be that nothing happens. <span style="font-family:"Apple Color Emoji"">😊</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">*<b>waves hands</b>* You did not see anything here!<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Cheers,<o:p></o:p></p>
<p class="MsoNormal">Jon<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div id="mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">Cuis-dev <cuis-dev-bounces@lists.cuis.st> on behalf of Jon Raiford via Cuis-dev <cuis-dev@lists.cuis.st><br>
<b>Date: </b>Friday, April 5, 2024 at 7:52</span><span style="font-size:12.0pt;font-family:"Arial",sans-serif;color:black"> </span><span style="font-size:12.0pt;color:black">AM<br>
<b>To: </b>Discussion of Cuis Smalltalk <cuis-dev@lists.cuis.st><br>
<b>Cc: </b>Jon Raiford <raiford@labware.com><br>
<b>Subject: </b>Re: [Cuis-dev] Cuis on macOS - Dynamic loading of Homebrew libraries<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal">As a quick follow up to this, I think we may have come up with a good compromise. I’m going to look into adding Cuis to homebrew so it can be installed like “brew install cuis” or “brew install cuis-smalltalk”. As part of the installation
I’ll add the DYLD_LIBRARY_PATH reference. This way if everything is installed with Homebrew then it should all “just work” but won’t impose on the upstream Cuis project. Right now I’m just playing with this idea. If anyone has any comments or suggestions there
will be plenty of time to consider them before publishing anything.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Jon<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<div id="mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">Cuis-dev <cuis-dev-bounces@lists.cuis.st> on behalf of Jon Raiford via Cuis-dev <cuis-dev@lists.cuis.st><br>
<b>Date: </b>Thursday, April 4, 2024 at 10:36</span><span style="font-size:12.0pt;font-family:"Arial",sans-serif;color:black"> </span><span style="font-size:12.0pt;color:black">AM<br>
<b>To: </b>Discussion of Cuis Smalltalk <cuis-dev@lists.cuis.st><br>
<b>Cc: </b>Jon Raiford <raiford@labware.com><br>
<b>Subject: </b>[Cuis-dev] Cuis on macOS - Dynamic loading of Homebrew libraries</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Our group has tiptoed around this problem for a little bit but it would be nice to actually address it. I’m curious what you all think.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">If you want to use FFI calls on a Mac to libraries installed via Homebrew (or other ways that don’t use the standard library path, really) then you have to set a library path just before launching Cuis. As I understand it, the environment
variable DYLIB_LIBRARY_PATH is used to specify this path, however Apple wipes this at each startup as a security mechanism.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Here is an old discussion of a similar problem: <a href="https://forums.developer.apple.com/forums/thread/13161">
https://forums.developer.apple.com/forums/thread/13161</a><o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">So the question is, should the Open Smalltalk VM reference the homebrew library paths to make digesting these libraries easier? Should Cuis add something like this to the launch script for Mac?<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"> export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/opt/homebrew/lib<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Or should this fall to application developers to do it themselves? I don’t think Homebrew folks have any intention of switching to the Apple standard library folders.<br>
<br>
Ultimately I think it should be possible to launch a Cuis app from Launchpad and I don’t think it lets you launch from a script, but honestly I’m not very familiar with that.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Jon<o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>