[Lazarus] The default Lazarus profile directory location

Mattias Gaertner nc-gaertnma at netcologne.de
Thu Jun 4 09:46:13 CEST 2009

On Thu, 4 Jun 2009 09:08:42 +0200
Graeme Geldenhuys <graemeg.lists at gmail.com> wrote:

> 2009/6/3 Mattias Gaertner <nc-gaertnma at netcologne.de>:
> >> So why not change all platforms to use the GetAppConfigDir(False)
> >> result?  I'm a consistency freak. ;-)
> >
> > Well, looking at my home, it would be more "consistent" to keep it
> > ~/.lazarus.
> I'm not talking about consistency with other applications. I'm talking
> about consistency in the Lazarus IDE alone and it's various supported
> platforms. GetAppConfigDir(False) should return the correct location
> for each platform, be that Windows 95-2000, WinXP, Win Vista, Linux,
> *BSD, OS X. The Lazarus IDE should simply call GetAppConfigDir(False)
> and use the resulting location.

It does not *simply* call GetAppConfigDir. For example it considers the
command line parameters.

> Otherwise the IDE is going to end up with a mess of.... if platformX
> then ... else if platfromY then .... etc...   The whole point of FPC
> is remove that mess for the developer. "write once, compile
> everywhere" (tm)

IDE code and add-ons use the GetPrimaryConfigPath, which do more than a
simple GetAppConfigDir.

> > And add the warning that this move means that older lazarus version
> > won't find the configs anymore, that they will recreate the configs
> > at startup and you will end up with two independent config
> > directories.
> A new version of the IDE is just that, a new version. It's meant to
> replace an old version. The newer version having improved features.
> Why would you want to go back to an old version. There are many things
> that change between released versions. They same thing happens in FPC.
> Many times a new version breaks my code, and I'm 100% sure I'm not
> alone.

The breaks are caused by such changes.
Strange that you use that as argument.

> Also any sane developer would know that if he is "evaluating" a new
> version first, backup your data or use a separate profile directory.
> When I test the beta version of Firefox 3.5, I do NOT use my existing
> Firefox v3.0 profile, I use a new test profile. They same applies for
> Lazarus.
> Your statement is flawed. Even if the profiles stayed in the same
> location, if the developer opened their projects with a newer version
> of Lazarus, the .lpi file, .lfm files etc all get upgraded to the new
> properties and features of the newer Lazarus IDE and LCL. Then
> switching back to an old version will ALWAYS cause problems anyway. A
> moved profile directory is the least of there problems at that point.

You misunderstood me.
I said the IDE should show a warning and explain what will happen.
That is not an argument against it.

My only arguments are:
Consistency: I don't see why this is more consistent
Change: It is not compatible and will give some users some extra
headache and it will give developers extra work to test and consider
all cases.


More information about the Lazarus mailing list