[Gpg4win-commits] r686 - in trunk: . src

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Mon Jan 21 22:07:06 CET 2008


Author: marcus
Date: 2008-01-21 22:07:05 +0100 (Mon, 21 Jan 2008)
New Revision: 686

Modified:
   trunk/ChangeLog
   trunk/src/inst-claws-mail.nsi
   trunk/src/inst-eudoragpg.nsi
   trunk/src/inst-gnupg.nsi
   trunk/src/inst-gnupg2.nsi
   trunk/src/inst-gpa.nsi
   trunk/src/inst-gpgee.nsi
   trunk/src/inst-gpgex.nsi
   trunk/src/inst-gpgol.nsi
   trunk/src/inst-kleopatra.nsi
   trunk/src/inst-man_advanced_de.nsi
   trunk/src/inst-man_advanced_en.nsi
   trunk/src/inst-man_novice_de.nsi
   trunk/src/inst-man_novice_en.nsi
   trunk/src/inst-sections.nsi
   trunk/src/inst-sylpheed-claws.nsi
   trunk/src/inst-winpt.nsi
   trunk/src/installer.nsi
   trunk/src/make-msi.guids
   trunk/src/make-msi.pl
Log:
2008-01-21  Marcus Brinkmann  <marcus at g10code.de>

	* src/installer.nsi: Include Memento.nsh, define
	MEMENTO_REGISTRY_ROOT and MEMENTO_REGISTRY_KEY.
	* src/inst-sections.nsi: Call MementoSectionDone.
	(onInit): Call MementoSectionRestore.
	(onInstSuccess): Call MementoSectionSave.
	* src/inst-claws-mail.nsi, src/inst-eudoragpg.nsi,
	src/inst-gnupg.nsi, src/inst-gnupg2.nsi, src/inst-gpa.nsi,
	src/inst-gpgee.nsi, src/inst-gpgex.nsi, src/inst-gpgol.nsi,
	src/inst-kleopatra.nsi, src/inst-man_advanced_de.nsi,
	src/inst-man_advanced_en.nsi, src/inst-man_novice_de.nsi,
	src/inst-man_novice_en.nsi, src/inst-sylpheed-claws.nsi,
	src/inst-winpt.nsi: Replace Section/SectionEnd by Memento macro
	calls.
	* src/make-msi.pl (gpg4win_nsis_stubs): Support memento sections.


Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/ChangeLog	2008-01-21 21:07:05 UTC (rev 686)
@@ -1,3 +1,20 @@
+2008-01-21  Marcus Brinkmann  <marcus at g10code.de>
+
+	* src/installer.nsi: Include Memento.nsh, define
+	MEMENTO_REGISTRY_ROOT and MEMENTO_REGISTRY_KEY.
+	* src/inst-sections.nsi: Call MementoSectionDone.
+	(onInit): Call MementoSectionRestore.
+	(onInstSuccess): Call MementoSectionSave.
+	* src/inst-claws-mail.nsi, src/inst-eudoragpg.nsi,
+	src/inst-gnupg.nsi, src/inst-gnupg2.nsi, src/inst-gpa.nsi,
+	src/inst-gpgee.nsi, src/inst-gpgex.nsi, src/inst-gpgol.nsi,
+	src/inst-kleopatra.nsi, src/inst-man_advanced_de.nsi,
+	src/inst-man_advanced_en.nsi, src/inst-man_novice_de.nsi,
+	src/inst-man_novice_en.nsi, src/inst-sylpheed-claws.nsi,
+	src/inst-winpt.nsi: Replace Section/SectionEnd by Memento macro
+	calls.
+	* src/make-msi.pl (gpg4win_nsis_stubs): Support memento sections.
+
 2008-01-18  Marcus Brinkmann  <marcus at g10code.de>
 
 	* packages/packages.current: Update gpgol.

Modified: trunk/src/inst-claws-mail.nsi
===================================================================
--- trunk/src/inst-claws-mail.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-claws-mail.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -24,7 +24,7 @@
 !define prefix ${ipdir}/claws-mail-${gpg4win_pkg_claws_mail_version}
 
 
-Section /o "Claws-Mail" SEC_claws_mail
+${MementoUnselectedSection} "Claws-Mail" SEC_claws_mail
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_claws_mail}"
@@ -47,7 +47,7 @@
   SetOutPath "$INSTDIR\share\locale\de\LC_MESSAGES"
   File ${prefix}/share/locale/de/LC_MESSAGES/claws-mail.mo
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_SEC_claws_mail ${LANG_ENGLISH} \

Modified: trunk/src/inst-eudoragpg.nsi
===================================================================
--- trunk/src/inst-eudoragpg.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-eudoragpg.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -24,7 +24,7 @@
 !define prefix ${ipdir}/eudoragpg-${gpg4win_pkg_eudoragpg_version}
 
 
-Section "EudoraGPG" SEC_eudoragpg
+${MementoSection} "EudoraGPG" SEC_eudoragpg
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_eudoragpg}"
@@ -34,7 +34,7 @@
   SetOutPath "$INSTDIR\share\eudoragpg"
   File "${prefix}/share/eudoragpg/eudoragpg.html"
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_SEC_eudoragpg ${LANG_ENGLISH} \

Modified: trunk/src/inst-gnupg.nsi
===================================================================
--- trunk/src/inst-gnupg.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-gnupg.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -24,7 +24,7 @@
 !define prefix ${ipdir}/gnupg-${gpg4win_pkg_gnupg_version}
 
 
-Section "GnuPG" SEC_gnupg
+${MementoSection} "GnuPG" SEC_gnupg
   SectionIn RO
 
   SetOutPath "$INSTDIR"
@@ -89,7 +89,7 @@
   Call AddToPath
 
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_SEC_gnupg ${LANG_ENGLISH} \

Modified: trunk/src/inst-gnupg2.nsi
===================================================================
--- trunk/src/inst-gnupg2.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-gnupg2.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -26,7 +26,7 @@
 !define source ${bpdir}/gnupg2-${gpg4win_pkg_gnupg2_version}
 
 
-Section "GnuPG2" SEC_gnupg2
+${MementoSection} "GnuPG2" SEC_gnupg2
   SectionIn RO
 
   SetOutPath "$INSTDIR"
@@ -105,7 +105,7 @@
 
   no_config_gpg_conf_files:
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 LangString DESC_SEC_gnupg2 ${LANG_ENGLISH} \
    "GNU Privacy Guard with S/MIME support"

Modified: trunk/src/inst-gpa.nsi
===================================================================
--- trunk/src/inst-gpa.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-gpa.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -24,7 +24,7 @@
 !define prefix ${ipdir}/gpa-${gpg4win_pkg_gpa_version}
 
 
-Section "GPA" SEC_gpa
+${MementoSection} "GPA" SEC_gpa
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_gpa}"
@@ -56,7 +56,7 @@
   no_config_gpa_files:
 
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_SEC_gpa ${LANG_ENGLISH} \

Modified: trunk/src/inst-gpgee.nsi
===================================================================
--- trunk/src/inst-gpgee.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-gpgee.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -24,7 +24,7 @@
 !define prefix ${ipdir}/gpgee-${gpg4win_pkg_gpgee_version}
 
 
-Section /o "GPGee" SEC_gpgee
+${MementoUnselectedSection} /o "GPGee" SEC_gpgee
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_gpgee_src}"
@@ -60,7 +60,7 @@
   File ${prefix}/GPGee/gpl.txt
 
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 LangString T_GPGee_RegFailed ${LANG_ENGLISH} \
    "Warning: Registration of the GPGee explorer extension failed."

Modified: trunk/src/inst-gpgex.nsi
===================================================================
--- trunk/src/inst-gpgex.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-gpgex.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -40,7 +40,7 @@
 SectionEnd
 
 
-Section "GpgEX" SEC_gpgex
+${MementoSection} "GpgEX" SEC_gpgex
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_gpgex}"
@@ -68,7 +68,7 @@
   File ${prefix}/share/doc/gpgex/gpgex-de.html
 
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString T_GpgEX_RegFailed ${LANG_ENGLISH} \

Modified: trunk/src/inst-gpgol.nsi
===================================================================
--- trunk/src/inst-gpgol.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-gpgol.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -24,7 +24,7 @@
 !define bdir ${bpdir}/gpgol-${gpg4win_pkg_gpgol_version}-build
 
 
-Section "GpgOL" SEC_gpgol
+${MementoSection} "GpgOL" SEC_gpgol
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_gpgol}"
@@ -51,7 +51,7 @@
   File "${bdir}/doc/gpgol.pdf"
 
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString T_GpgOL_RegFailed ${LANG_ENGLISH} \

Modified: trunk/src/inst-kleopatra.nsi
===================================================================
--- trunk/src/inst-kleopatra.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-kleopatra.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -23,7 +23,7 @@
 !endif
 !define prefix ${ipdir}/kleopatra-${gpg4win_pkg_kleopatra_version}
 
-Section "Kleopatra" SEC_kleopatra
+${MementoSection} "Kleopatra" SEC_kleopatra
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_kleopatra_src}"
@@ -100,7 +100,7 @@
   File ${prefix}/share/icons/oxygen/scalable/apps/kleopatra.svgz
 
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_SEC_kleopatra ${LANG_ENGLISH} \

Modified: trunk/src/inst-man_advanced_de.nsi
===================================================================
--- trunk/src/inst-man_advanced_de.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-man_advanced_de.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -23,7 +23,7 @@
 !endif
 
 
-Section "$(DESC_Name_man_advanced_de)" SEC_man_advanced_de
+${MementoSection} "$(DESC_Name_man_advanced_de)" SEC_man_advanced_de
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   # No need to include anything as the manuals are part of gpg4win
@@ -33,7 +33,7 @@
   SetOutPath "$INSTDIR\share\gpg4win"
   File "${BUILD_DIR}/../doc/manual/durchblicker.pdf"
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_Name_man_advanced_de ${LANG_ENGLISH} \

Modified: trunk/src/inst-man_advanced_en.nsi
===================================================================
--- trunk/src/inst-man_advanced_en.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-man_advanced_en.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -23,7 +23,7 @@
 !endif
 
 
-Section "$(DESC_Name_man_advanced_en)" SEC_man_advanced_en
+${MementoSection} "$(DESC_Name_man_advanced_en)" SEC_man_advanced_en
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   # No need to include anything as the manuals are part of gpg4win
@@ -33,7 +33,7 @@
   SetOutPath "$INSTDIR\share\gpg4win"
   File "${BUILD_DIR}/../doc/manual/advanced.pdf"
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_Name_man_advanced_en ${LANG_ENGLISH} \

Modified: trunk/src/inst-man_novice_de.nsi
===================================================================
--- trunk/src/inst-man_novice_de.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-man_novice_de.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -23,7 +23,7 @@
 !endif
 
 
-Section "$(DESC_Name_man_novice_de)" SEC_man_novice_de
+${MementoSection} "$(DESC_Name_man_novice_de)" SEC_man_novice_de
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   # No need to include anything as the manuals are part of gpg4win
@@ -33,7 +33,7 @@
   SetOutPath "$INSTDIR\share\gpg4win"
   File "${BUILD_DIR}/../doc/manual/einsteiger.pdf"
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_Name_man_novice_de ${LANG_ENGLISH} \

Modified: trunk/src/inst-man_novice_en.nsi
===================================================================
--- trunk/src/inst-man_novice_en.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-man_novice_en.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -23,7 +23,7 @@
 !endif
 
 
-Section "$(DESC_Name_man_novice_en)" SEC_man_novice_en
+${MementoSection} "$(DESC_Name_man_novice_en)" SEC_man_novice_en
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   # No need to include anything as the manuals are part of gpg4win
@@ -33,7 +33,7 @@
   SetOutPath "$INSTDIR\share\gpg4win"
   File "${BUILD_DIR}/../doc/manual/novices.pdf"
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_Name_man_novice_en ${LANG_ENGLISH} \

Modified: trunk/src/inst-sections.nsi
===================================================================
--- trunk/src/inst-sections.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-sections.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -286,6 +286,8 @@
 
 # Dependency Management
 
+${MementoSectionDone}
+
 !include "Sections.nsh"
 
 
@@ -771,6 +773,7 @@
   # generate the file from a template.
   !insertmacro MUI_INSTALLOPTIONS_EXTRACT "installer-options.ini"
 
+  ${MementoSectionRestore}
   Call CalcDefaults
   Call CalcDepends
   Call CheckOtherGnuPGApps
@@ -782,6 +785,7 @@
 FunctionEnd
 
 Function .onInstSuccess
+  ${MementoSectionSave}
   Delete $TEMP\gpgspltmp.wav
 FunctionEnd
 

Modified: trunk/src/inst-sylpheed-claws.nsi
===================================================================
--- trunk/src/inst-sylpheed-claws.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-sylpheed-claws.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -24,7 +24,7 @@
 !define prefix ${ipdir}/sylpheed-claws-${gpg4win_pkg_sylpheed_claws_version}
 
 
-Section /o "Sylpheed-Claws" SEC_sylpheed
+${MementoUnselectedSection} "Sylpheed-Claws" SEC_sylpheed
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_sylpheed_claws}"
@@ -45,7 +45,7 @@
   SetOutPath "$INSTDIR\share\locale\de\LC_MESSAGES"
   File ${prefix}/share/locale/de/LC_MESSAGES/sylpheed-claws.mo
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_SEC_sylpheed ${LANG_ENGLISH} \

Modified: trunk/src/inst-winpt.nsi
===================================================================
--- trunk/src/inst-winpt.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/inst-winpt.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -23,7 +23,7 @@
 !endif
 !define prefix ${ipdir}/winpt-${gpg4win_pkg_winpt_version}
 
-Section "WinPT" SEC_winpt
+${MementoSection} "WinPT" SEC_winpt
   SetOutPath "$INSTDIR"
 !ifdef SOURCES
   File "${gpg4win_pkg_winpt}"
@@ -40,7 +40,7 @@
   #File ${prefix}/NEWS.txt
   #File ${prefix}/README.txt
 !endif
-SectionEnd
+${MementoSectionEnd}
 
 
 LangString DESC_SEC_winpt ${LANG_ENGLISH} \

Modified: trunk/src/installer.nsi
===================================================================
--- trunk/src/installer.nsi	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/installer.nsi	2008-01-21 21:07:05 UTC (rev 686)
@@ -39,9 +39,13 @@
 # !define Regkey_for_Env 'HKCU "Environment"'
 
 
+# We use Memento to remember past installation choices.
+!include Memento.nsh
+!define MEMENTO_REGISTRY_ROOT HKLM
+!define MEMENTO_REGISTRY_KEY \
+  Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRETTY_PACKAGE_SHORT}
 
 
-
 # We use the modern UI.
 !include "MUI.nsh"
 

Modified: trunk/src/make-msi.guids
===================================================================
--- trunk/src/make-msi.guids	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/make-msi.guids	2008-01-21 21:07:05 UTC (rev 686)
@@ -8,6 +8,7 @@
 80591336-e7ec-47d6-8b79-7d923c35d3de /PRODUCT/1.9.0.616
 bf1af37b-2d40-4956-add4-3abb7154b0ed /PRODUCT/1.9.0.625
 d75a8790-3457-49aa-ac8d-946a33c7bb1a /PRODUCT/1.9.0.668
+3f94d3d4-7d64-44fc-a2be-28073eb595e1 /PRODUCT/1.9.0.682
 fb54db39-2456-4fcc-9550-2790db663015 /REGISTRY/HKLM/Software\GNU\GnuPG/Install Directory
 ad23691b-1734-4dec-b91a-d4ff286190ea /REGISTRY/HKLM/Software\GNU\GnuPG/gpgProgram
 e0807a2f-4e70-48f8-b047-c5d3e219c3e7 /UPGRADE/1
@@ -35,6 +36,7 @@
 2a6c061a-c8df-4756-b075-f3b5d386b6a9 cjpeg.exe
 4c4e070f-6ca6-49b3-9ff5-aae36352e909 claws-mail-manual.pdf
 e727cf5b-9485-4b5c-b54d-5a0866082b03 claws-mail.exe
+d602f33b-70ae-465d-b768-1d436499ab44 dbus-env.bat
 460d777c-6ce0-48f3-90ac-d260c9dcbb3e dbus-launch.exe
 ee21a9ad-8d11-470d-8478-b89d19764248 dbus-monitor.exe
 90cc13c3-d94c-44e5-bf0f-bcde6b7105ae dbus-send.exe
@@ -273,6 +275,7 @@
 fa4fd7f9-1a16-4dd9-98f8-133a087247f6 share\config\ui\ui_standards.rc
 034afb0a-ea97-466c-a6b7-89a6be0891a9 share\doc\gpgex\gpgex-de.html
 3e81d9d7-fc44-4d0d-822c-44522b15b95d share\doc\gpgex\gpgex-en.html
+1e0dd2f5-40b2-466e-9bad-85dc8882aa26 share\doc\gpgol\gpgol.pdf
 333ef410-acf0-4cac-a9dc-d691c127cb7b share\gnupg\FAQ
 648f5486-56d0-4a03-a2f4-23ba6f7d0c74 share\gnupg\com-certs.pem
 03294f27-91ac-4eed-81e3-ee4ee602668d share\gnupg\faq.html

Modified: trunk/src/make-msi.pl
===================================================================
--- trunk/src/make-msi.pl	2008-01-21 10:42:15 UTC (rev 685)
+++ trunk/src/make-msi.pl	2008-01-21 21:07:05 UTC (rev 686)
@@ -652,13 +652,21 @@
     # We parse SetOutPath and File directives in sections.
     # Everything else is ignored.
 
-    elsif ($parser->{state} eq '' and $command eq 'Section')
+    elsif ($parser->{state} eq ''
+	   and ($command eq 'Section' or $command eq '${MementoSection}'
+		or $command eq '${MementoUnselectedSection}'))
     {
 	my $idx = 0;
 	# Default install level for MSI is 3.
 	my $level = $::nsis_level_default;
 	my $hidden = 0;
 	
+	if ($command eq '${MementoUnselectedSection}')
+	{
+	    # Default install level for MSI is 3.
+	    $level = $::nsis_level_optional;
+	}
+
 	# Check for options first.
 	return if ($idx > $#args);
 	if ($args[$idx] eq '/o')
@@ -667,7 +675,7 @@
 	    $level = $::nsis_level_optional;
 	    $idx++;
 	}
-
+	
 	return if ($idx > $#args);
 
 	my $title = nsis_eval ($parser, $file, $args[$idx++]);
@@ -681,7 +689,7 @@
 	    $hidden = 1;
 	    substr ($title, 0, 1) = '';
 	}
-		
+
 	# We only pay attention to special sections and those which
 	# have a section index defined.
 	if ($title eq 'startmenu')
@@ -715,7 +723,7 @@
     }
     elsif ($parser->{state} eq 'in-section')
     {
-	if ($command eq 'SectionEnd')
+	if ($command eq 'SectionEnd' or $command eq '${MementoSectionEnd}')
 	{
 	    delete $parser->{pkg};
 	    undef $parser->{state};
@@ -797,7 +805,7 @@
 
     elsif ($parser->{state} eq 'section-startmenu')
     {
-	if ($command eq 'SectionEnd')
+	if ($command eq 'SectionEnd' or $command eq '${MementoSectionEnd}')
 	{
 	    undef $parser->{state};
 	}



More information about the Gpg4win-commits mailing list