Autoselect the keymanager to start
authorWerner Koch <wk@gnupg.org>
Tue, 29 Nov 2005 12:07:51 +0000 (12:07 +0000)
committerWerner Koch <wk@gnupg.org>
Tue, 29 Nov 2005 12:07:51 +0000 (12:07 +0000)
ChangeLog
src/inst-sections.nsi
src/installer.nsi

index 4a1411f..976ad1f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,9 @@
        * packages/download.sh: Rewritten.
 
        * src/inst-sections.nsi (.onInstFailed, .onInstSuccess): New.
+       (RunOnFinish): New function to run a key manager depending on the
+       installed ones.
+       * src/installer.nsi: Use a function to run the key manager on finish.
 
 2005-11-28  Werner Koch  <wk@g10code.com>
 
index 820c17e..6be9f21 100644 (file)
@@ -381,6 +381,28 @@ Function .onSelChange
 FunctionEnd
 
 
+# This function is run from the finish page.
+Function RunOnFinish
+!ifdef HAVE_PKG_GPA
+    SectionGetFlags ${SEC_gpa} $R0 
+    IntOp $R0 $R0 & ${SF_SELECTED} 
+    IntCmp $R0 ${SF_SELECTED} 0 no_gpa_avail
+       Exec "$INSTDIR\gpa.exe"
+       Return
+   no_gpa_avail:
+!endif
+!ifdef HAVE_PKG_WINPT
+    SectionGetFlags ${SEC_winpt} $R0 
+    IntOp $R0 $R0 & ${SF_SELECTED} 
+    IntCmp $R0 ${SF_SELECTED} 0 no_winpt_avail
+       Exec "$INSTDIR\WinPT.exe --keymanager"
+       Return
+   no_winpt_avail:
+!endif
+  MessageBox MB_OK "$(T_NoKeyManager)"
+FunctionEnd
+
+
 # This must be in a central place.  Urgs.
 
 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
index 3bb23d0..4e589d8 100644 (file)
@@ -92,7 +92,6 @@ VIAddVersionKey "FileVersion" "${PROD_VERSION}"
 #!define MUI_LANGDLL_REGISTRY_KEY "Software\GNU\${PRETTY_PACKAGE_SHORT}" 
 #!define MUI_LANGDLL_REGISTRY_VALUENAME "Installer Language"
 
-
 # The list of wizard pages.
 
 !define MUI_WELCOMEPAGE_TITLE "$(T_WelcomeTitle)"
@@ -109,6 +108,7 @@ VIAddVersionKey "FileVersion" "${PROD_VERSION}"
 
 !ifdef HAVE_STARTMENU
 Var STARTMENU_FOLDER
+
 !define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKCU"
 !define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\GNU\${PRETTY_PACKAGE_SHORT}"
 !define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder"
@@ -119,8 +119,8 @@ Var STARTMENU_FOLDER
 !define MUI_PAGE_CUSTOMFUNCTION_PRE PrintCloseOtherApps
 !insertmacro MUI_PAGE_INSTFILES
 
-!define MUI_FINISHPAGE_RUN "$INSTDIR\gpa.exe"
-!define MUI_FINISHPAGE_RUN_PARAMETERS "--keyring"
+!define MUI_FINISHPAGE_RUN
+!define MUI_FINISHPAGE_RUN_FUNCTION RunOnFinish
 !define MUI_FINISHPAGE_RUN_TEXT "$(T_RunKeyManager)"
 !define MUI_FINISHPAGE_RUN_NOTCHECKED
 !define MUI_FINISHPAGE_LINK "$(T_MoreInfo)"
@@ -194,6 +194,12 @@ LangString T_MoreInfo ${LANG_ENGLISH} \
 LangString T_MoreInfo ${LANG_GERMAN} \
    "Hier klicken um zur Homepage des Projekts zu gelangen"
 
+LangString T_NoKeyManager ${LANG_ENGLISH} \
+   "No key manager has been installed, thus we can't run one now."
+LangString T_NoKeyManager ${LANG_GERMAN} \
+   "Es wurde keine Schlüsselverwaltung installiert. \
+    Deswegen kann sie jetzt auch nicht ausgeführt werden."
+
 
 # Functions