<div dir="ltr"><div>I use Squeak on several different platforms and would like the Preferences to be saved via Monticello. <br></div><div>Make a separate project for preferences and we could just load our own latest version.<br></div>
<pre>For example <a href="http://source.squeak.org/preferences">http://source.squeak.org/preferences</a><br><br></pre><pre>Best,<br></pre><pre>Karl<br></pre>

</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jan 2, 2022 at 9:07 PM Jakob Reschke <<a href="mailto:jakres%2Bsqueak@gmail.com">jakres+squeak@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Tim,<br>
<br>
Happy new year!<br>
<br>
We need to find the correct directory for both the sources and for the<br>
preferences, but the situation is different for each of the two. The<br>
source file can be written once at installation time and it needs only<br>
be readable while Squeak is running, not writable. It is a resource<br>
like man pages or icons. A file with default preferences (in the way I<br>
proposed it) cannot be installed beforehand and it needs to be<br>
writable while Squeak is running.<br>
<br>
For example, you could put the sources under /usr/local/share/squeak<br>
or /opt/squeak, but since they are not generally writable, that would<br>
not work for the preferences. Also the preferences are user-specific,<br>
whereas the source file is not.<br>
<br>
Having system-wide Squeak preferences in addition to user-specific<br>
preferences would be more of a complete solution, but I think the<br>
benefit is marginal. So in my opinion we should not invest in this at<br>
present. Or does somebody use Squeak from different user accounts on<br>
the same machine regularly?<br>
<br>
Kind regards,<br>
Jakob<br>
<br>
<br>
Am Fr., 31. Dez. 2021 um 01:09 Uhr schrieb tim Rowledge <<a href="mailto:tim@rowledge.org" target="_blank">tim@rowledge.org</a>>:<br>
><br>
> Yes, this is a problem on a wider scale than just the preferences. Consider the sources file; we really want to keep a single copy and so it should be in a place easily found.<br>
><br>
> The all-in-one packages have a somewhat convoluted directory structure that isn't the most convenient for daily usage, though at least the sources file is in the same directory as the image.<br>
><br>
> The platform specific packages have different layouts. We may want to put images in different directories to suit our projects.<br>
><br>
> Originally the rule was that the sources file would be either next to the image, or next to the VM. IIRC there was a primitive that reported the location as well and I faintly remember the Unix VM having quite the list of places it would look. Now we also have a problem when loading VMs from the autobuilder or after manually building, in that there is the whole sqcogspur64ARMv8linuxht/lib/squeak/5.0-202112201228-64bit/* type path to the VM. We *can't* have the sources file 'next to' the VM in any practical sense here; at least not without either having many copies, or using links. FS links are not something we've ever got to grips with...<br>
><br>
> And obviously preferences may be systemwide or user local, so we ought to handle those both.<br>
><br>
> I'm not completely sure what the answer is. On unix one could decide to go with the suggestions at <a href="https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s09.html" rel="noreferrer" target="_blank">https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s09.html</a> and use /usr/local but then again that appears to be intended for 'admin' users and we all know how hard unix works to prevent mere users from doing anything. Maybe /opt/squeak would be better? That is supposedly for "Add-on application software packages".<br>
><br>
> Should we use a primitive to locate the directories? We kinda-sorta have a template for that in the ScratchPlugin, and somewhat in the SecurityPlugin. Or we could do it all in the image easily enough, at some cost in platform spread in-image.<br>
><br>
> tim<br>
> --<br>
> tim Rowledge; <a href="mailto:tim@rowledge.org" target="_blank">tim@rowledge.org</a>; <a href="http://www.rowledge.org/tim" rel="noreferrer" target="_blank">http://www.rowledge.org/tim</a><br>
> Useful random insult:- Fell out of the family tree.<br>
><br>
><br>
><br>
<br>
</blockquote></div>