[PATCH] win32: Add rcpath registry value to installer

Steve Borho steve at borho.org
Tue Dec 4 18:12:00 CST 2007


On Sat, 2007-12-01 at 22:54 -0600, Steve Borho wrote:
> # HG changeset patch
> # User Steve Borho <steve at borho.org>
> # Date 1196571254 21600
> # Node ID 2851949c5264666dab9b56d93337f1dcc62e61f0
> # Parent  415a66f248d90b9bcb4e242f8728efa1c06c3ee3
> win32: Add rcpath registry value to installer
> 
> Since system_rcpath() will still use the module name as a fallback,
> this is not strictly required for the default py2exe Windows installer.
> I include this mostly for reference.
> 
> diff --git a/contrib/win32/mercurial.iss b/contrib/win32/mercurial.iss
> --- a/contrib/win32/mercurial.iss
> +++ b/contrib/win32/mercurial.iss
> @@ -59,6 +59,9 @@ Name: {group}\Mercurial Web Site; Filena
>  [Run]
>  Filename: "{app}\add_path.exe"; Parameters: "{app}"; Flags: postinstall; Description: "Add the installation path to the search path"
>  
> +[Registry]
> +Root: HKLM; Subkey: Software\Mercurial; Flags: uninsdeletekey; ValueData: {app}\Mercurial.ini; ValueType: string
> +
>  [UninstallRun]
>  Filename: "{app}\add_path.exe"; Parameters: "/del {app}"

This concept could use more thought, as Lee pointed out on IRC.  Setting
the registry key is like a nuclear option.  It prevents one from having
multiple installs of Mercurial on a single Windows machine, at least it
prevents each one from having it's own Mercurial.ini file.

Perhaps we should check for the existence of a Mercurial.ini in the same
directory as the calling executable, and only consult the registry key
if the file was not found?  I think that would satisfy all of our
current installer requirements.

-- 
Steve Borho (steve at borho.org)
http://www.borho.org/~steve/steve.asc
Key fingerprint = 2D08 E7CF B624 624C DE1F  E2E4 B0C2 5292 F2C6 2C8C



More information about the Mercurial-devel mailing list