[squeak-dev] User config directories (was: Merge Request: autoEncloseBeforeSpace.cs)

karl ramberg karlramberg at gmail.com
Sun Jan 2 20:36:47 UTC 2022

I use Squeak on several different platforms and would like the Preferences
to be saved via Monticello.
Make a separate project for preferences and we could just load our own
latest version.

For example http://source.squeak.org/preferences



On Sun, Jan 2, 2022 at 9:07 PM Jakob Reschke <jakres+squeak at gmail.com>

> Hi Tim,
> Happy new year!
> We need to find the correct directory for both the sources and for the
> preferences, but the situation is different for each of the two. The
> source file can be written once at installation time and it needs only
> be readable while Squeak is running, not writable. It is a resource
> like man pages or icons. A file with default preferences (in the way I
> proposed it) cannot be installed beforehand and it needs to be
> writable while Squeak is running.
> For example, you could put the sources under /usr/local/share/squeak
> or /opt/squeak, but since they are not generally writable, that would
> not work for the preferences. Also the preferences are user-specific,
> whereas the source file is not.
> Having system-wide Squeak preferences in addition to user-specific
> preferences would be more of a complete solution, but I think the
> benefit is marginal. So in my opinion we should not invest in this at
> present. Or does somebody use Squeak from different user accounts on
> the same machine regularly?
> Kind regards,
> Jakob
> Am Fr., 31. Dez. 2021 um 01:09 Uhr schrieb tim Rowledge <tim at rowledge.org
> >:
> >
> > 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.
> >
> > 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.
> >
> > The platform specific packages have different layouts. We may want to
> put images in different directories to suit our projects.
> >
> > 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...
> >
> > And obviously preferences may be systemwide or user local, so we ought
> to handle those both.
> >
> > I'm not completely sure what the answer is. On unix one could decide to
> go with the suggestions at
> https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s09.html 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".
> >
> > 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.
> >
> > tim
> > --
> > tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
> > Useful random insult:- Fell out of the family tree.
> >
> >
> >
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220102/d9be4fb7/attachment.html>

More information about the Squeak-dev mailing list