[Lazarus] The default Lazarus profile directory location

Graeme Geldenhuys graemeg.lists at gmail.com
Thu Jun 4 09:08:42 CEST 2009


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.

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)


> I think Linux is closer to BSD and OS X.
> Does BSD and OS X follow the freedesktop "standard"?

I got no idea, I only use Linux. But I can tell you that BSD and OS X
don't adhere to the same standards either, so you can't even compare
those to together - what still against Linux. Then Win95 can't be
compared to XP or Vista either, because there preferred profile
directory is also in different locations. Hence the reason I say,
GetAppConfigDir() should return the correct location for each
platform. Lazarus IDE or any application written with Free Pascal
should not care where that location is, they should simply use the
directory returned by 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.

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.


Regards,
  - Graeme -


_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/




More information about the Lazarus mailing list