[Lazarus] Lazarus shortcuts conflict with windows shortcuts

Martin lazarus at mfriebe.de
Wed Aug 15 17:50:40 CEST 2012


On 15/08/2012 16:15, Jürgen Hestermann wrote:
> > --primary-config-path=... or -pcp=...
> > In fact, it's the only way I know to change the configuration 
> directory.
>
> That's the root cause of all this confusion: If I *know* all the nitty 
> little details then I can act on them.
> But if I only want to use a software I don't see the need to invest so 
> much time into it.
> If that's not possible the installer should show a warning with all 
> the details the user has to know before he can use Lazarus.
A normal user, who only uses releases, should not need to know.

The latest installer eve warns you, if you try to install (windows) 
multiple copies (which is one known cause for config issues)

>
> >>> Hmm yes. You did read the warning on the snapshots page, did you?
>
> The reason for breaking things was not that I used snapshots. The same 
> would have happened for an official release. It is a kinda "design flaw".

Are you sure? Some of the issues that caused errors when upgrading to a 
snapshot, where fixed in the RC1 installer (again windows)

And I did tes myself, twice: starting once with a clean install of 
0.9.30.4 and once with a 0.9.30 (not sure if I did a 0.9.28 too).
Each time: Started the old install, compiled a new project, then quit 
and install the RC1.0. There were no errors.

So releases do differ from snapshots.

That said. everyone is entitled to use snapshots. Also entitled and 
invited to ask questions.
But not entitled to expect it to work flawless. And Required to pcik up 
some of that nitty gritty to kep going...

To bo clear. I am not saying the releases are flawless. No software is. 
But some effort goes into the releases, whereas none goes into the 
snapshots.

> > The fallback environmentoptions.xml is used in some situation. I can't
> > help it you don't grasp the difference of primary versus secondary
> > config path... TBH it took me a while to catch on as well.
> > For discussion: perhaps this version could be renamed as
> > environmentoptionstemplate.xml or something?
>
> It seems that you miss the whole point. Tell me *any* reason to have 
> multiple versions of the same (config) file? I can't think of any. 
There are 2 reasons for this primary/secondary conf

1st reason)
  the secondary (exe dir) is used as a template, if no primary exists 
yet. This is a once off. Since the primary will be created automatically.

So this is usually the case, after the very 1st install.
Most options have defaults hardcoded in the lazarus.exe. But some (like 
path) are OS and installation depending. So the installer creates a 
custom  environmentoptions.xml that reflects the directory into which 
the installation was made

Yes, the installer could write that to primary conf dir.
- As a weak argument: The existence of old config is easier to check in 
lazarus, than in the installer.
- Also: The installer does not know about a future 
--primary-config-path. Not automatically touching the default primary 
conf dir, means the installer can be used to *prepare* a secondary install
- historical (see next)

2nd reason)
0.9.26 and before actually stored all config in the exe dir

So if a user upgrades from 0.9.26 to 1.0 (or any other version, 
including future). Then his old config must be moved. This is currently 
happening.
This is the reason the installer needs to ask.

Though, either the installer should check, if it updates from such nan 
old version, or it should assume that it does not, and should skip the 
"overwrite" question


>
>
> > 1. I hope you realize by now Lazarus doesn't store its settings in the
> > registry. AFAIK, the only Lazarus-related things in the registry are 
> the
> > file associations.
Only file-associations
And the installer info (so it is listed for uninstall)

No actual config

>
> Yes. But a good idea would be to store paths to the configuration 
> file(s) in the registry and allow the user to (re)configure them in 
> the Lazarus IDE. This would allow a (Windows) installer to detect a 
> previous installation and (re)use config files (which the user may 
> have adapted heavily).
The (previous conf) should automatically be used.

- Either they are already in <user/appdata> Then they are used.
- Or they are in the exe dir (0.9.26), then they are copied to 
<user/appdata>

Only exception: previous install was 0.9.26 and you install to a new 
directory

>
> > 2. Talking about the environmentoptions.xml in the Lazarus directory,
> > how do you tell when "config files are in use" other than the method I
> > already described?
>
> I only expect one config file (for each purpose) and not many where 
> all except one are dummies.
Actually, it is a template.
But if you upgrade from 0.9.26, then it is a real config, and will be 
moved (actually copied)






More information about the Lazarus mailing list