[Lazarus] Lazarus config woes

Martin lazarus at mfriebe.de
Sat Apr 2 10:39:05 CEST 2011


On 02/04/2011 00:45, Hans-Peter Diettrich wrote:
> Martin schrieb:
>
>>> If a global config is found, but is invalid/incompatible, a local 
>>> config should be created.
>>
>> sounds good at first, but is actually worse.
>>
>> Because this behaviour is unpredictable from the end users view.
>
> Unpredictable why?
Because as I wrote a line further down:
"Rules for "invalid/incompatible" may be complex. They may not always 
apply, even if the user hopes for. "

Also I wrote "from the end users view. "

Someone knowning all the "rules" can predict, if the current config is 
"invalid/incompatible" or not.

But a "normal"/"les experienced" end user will not be able to predict 
that, for him it will look random what happens.

Note: I never said the current solution was perfect. But it doesn't need 
replacement by something that isn't any better.

>
> Currently the results are unpredictable, when the IDE finds a config 
> unusable, or does not find out, and produces consequential errors :-(
apparently it now comes up with one single setup dialog...

>
>> Rules for "invalid/incompatible" may be complex. They may not always 
>> apply, even if the user hopes for.
>>
>> In fact they may change, later. 2 installations that have shared the 
>> global conf for a long time, may become "invalid/incompatible" at 
>> some point (maybe only for a short time) => but then all the sudden 
>> one of them has a conf in the exe-dir => not good at all.
>
> It's up to the inventors/maintainers of the config thingy, to provide 
> checks and solutions. I only can assist in improving the current state.
>
> E.g. split the config into an always compatible (user preferences), 
> and an installation specific part. This will allow to retain as much 
> of the settings as possible, in case of problems somewhere else. Next 
> offer the user a menu item, to save the config into the Lazarus 
> directory (current scp), and later load from that location whatever 
> config files are found there, before loading missing files from other 
> locations.
splitting may be a good idea. but is a new topic


>>> The requirement for an explicit -pcp can be reduced to the single 
>>> invocation, that shall create a new config. This job also could 
>>> become a menu option, or an option button in the IDE settings 
>>> dialog. Why press the user to specify a new pcp at the commandline, 
>>> when the config always is created by the started IDE?
>>
>> the requirement to create a script, is a single invocation too...
>> where is the difference?
>>
>> a profile manager, selectable from menu, could create this script for 
>> you (or the windows shortcut). Again where is the difference?
>
> The difference is, what the user must know about the script. When the 
> IDE creates it, the user only has to know about the invocation of the 
> script (filename or desktop icon), not about the contents of that script.

Sorry, but I am not sure what you mean. Isn't that the idea of a script, 
just run it?

>> -----
>> btw , whith config in the exe dir => it can get really fuzzy.
>>
>> if you have a link (or shortcut) to your exe, and there is config in 
>> the real exe-dir, and the link-dir... which one to take?
>
> Then it's up to the creator of that link, to make it work as it should.
That wasn't the question. How should it?


>
> Windos "links" (desktop shortcuts) allow to specify the working 
> directory, so it's up to the creator of the link to fill in that 
> information. Console users on any system may create an equivalent 
> script, and create links to that script instead of to the executable.

Ok, "creator"? The end user, or the lazarus developper?

if  the end user, then that is the same as --pcp, or scripts, the user 
has to set it up onc
if the laz-developer, then tyes, it is easy to implement some rule, but 
the bigger the set of overall rules grows, the more confusing for the 
usser...


Martin




More information about the Lazarus mailing list