OK, here goes trouble... re c:\gnupg

Mark H. Wood mwood at IUPUI.Edu
Tue Nov 9 14:19:19 CET 2004


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tue, 9 Nov 2004, Werner Koch wrote:
[snip some history]
> I now lean toward using GNUPGHOME with precedence over the registry
> entry.  However it will make it harder for us to analyze bug reports.

The difficulty arises because some people want the MS Windows version to
work like every other MS Windows application, and some want it to work
like every Unix application.  Your proposed behavior is probably the best
compromise between these two irreconcilable desires.

The default user-settings directory can *and should* be dependent on the
OS, because the conventions are different.  On Unix-alikes it should be
$HOME/.gnupg, and on MS Windows it should be %ApplicationData%/gnupg/gnupg
(the first "gnupg" is the "vendor" and the second the product).

The product should not be installing itself directly off the root of the
file system.  A product using an active installer should ask the user
where to install itself, and the default should be
%ProgramFiles%\vendor\product .  Further, no per-user data should *ever*
be stored there, unless the user insists; user settings go in the profile,
as indicated above, unless the user says otherwise.  (OTOH I usually try
to keep layered products *off* of %SystemDrive% and complain bitterly when
the installer doesn't let me change the install path.)

(I've shown the environment variables ApplicationData and ProgramFiles,
but those paths should actually be fetched using the appropriate Shell
APIs.  Microsoft say that the variable names may be localized, but the API
argument constants won't change.)

On MS Windows an executable can discover the path from which it was run,
and that's probably the best way for the product to find its installed
location.  There's also a Registry key AppPaths somewhere in which the
path should be stored if other applications need to find yours.

I may be arguing for a lot of stuff that's already been done, because I
only use GnuPG on Linux and haven't seen the MS Windows deployment.  But I
do develop stuff for MS Windows [hangs head in shame] and the above is the
way that MS Windows fans will expect things to work.  People who want
things to work as in Unix should IMHO use Unix, but sometimes one can't,
so some *optional* accommodations for that situation would be a great
kindness.

- -- 
Mark H. Wood, Lead System Programmer   mwood at IUPUI.Edu
Open-source executable:  $0.00.  Source:  $0.00  Control:  priceless!

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: pgpenvelope 2.10.2 - http://pgpenvelope.sourceforge.net/

iD8DBQFBkMPcs/NR4JuTKG8RAk1oAKCfVV3m6OyOmXbLWpJlgxwB9rfEDQCgi40/
6jPgWgFOeHg1WzBx0AvMHnA=
=A1Vy
-----END PGP SIGNATURE-----



More information about the Gnupg-users mailing list