2007-08-14 Marcus Brinkmann <marcus@g10code.de>
[gpg4win.git] / src / inst-sections.nsi
index da937dc..dd62910 100644 (file)
 
 !include "Sections.nsh"
 
+
+Function CalcDefaults
+
+# The defaults for the installer-options.ini file.
+g4wihelp::config_fetch_bool "inst_start_menu"
+StrCmp $R0 "" +2
+!insertmacro MUI_INSTALLOPTIONS_WRITE "installer-options.ini" \
+       "Field 2" "State" $R0
+
+g4wihelp::config_fetch_bool "inst_desktop"
+StrCmp $R0 "" +2
+!insertmacro MUI_INSTALLOPTIONS_WRITE "installer-options.ini" \
+       "Field 3" "State" $R0
+
+g4wihelp::config_fetch_bool "inst_quick_launch_bar"
+StrCmp $R0 "" +2
+!insertmacro MUI_INSTALLOPTIONS_WRITE "installer-options.ini" \
+       "Field 4" "State" $R0
+
+
+
+!ifdef HAVE_PKG_GNUPG2
+  g4wihelp::config_fetch_bool "inst_gnupg2"
+  StrCmp $R0 "1" 0 calc_defaults_gnupg2_not_one
+   !insertmacro SelectSection ${SEC_gnupg2}
+   Goto calc_defaults_gnupg2_done
+  calc_defaults_gnupg2_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_gnupg2_done
+   !insertmacro UnselectSection ${SEC_gnupg2}
+calc_defaults_gnupg2_done:
+!endif
+
+!ifdef HAVE_PKG_GPGOL
+  g4wihelp::config_fetch_bool "inst_gpgol"
+  StrCmp $R0 "1" 0 calc_defaults_gpgol_not_one
+   !insertmacro SelectSection ${SEC_gpgol}
+   Goto calc_defaults_gpgol_done
+  calc_defaults_gpgol_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_gpgol_done
+   !insertmacro UnselectSection ${SEC_gpgol}
+calc_defaults_gpgol_done:
+!endif
+
+!ifdef HAVE_PKG_GPA
+  g4wihelp::config_fetch_bool "inst_gpa"
+  StrCmp $R0 "1" 0 calc_defaults_gpa_not_one
+   !insertmacro SelectSection ${SEC_gpa}
+   Goto calc_defaults_gpa_done
+  calc_defaults_gpa_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_gpa_done
+   !insertmacro UnselectSection ${SEC_gpa}
+calc_defaults_gpa_done:
+!endif
+
+!ifdef HAVE_PKG_WINPT
+  g4wihelp::config_fetch_bool "inst_winpt"
+  StrCmp $R0 "1" 0 calc_defaults_winpt_not_one
+   !insertmacro SelectSection ${SEC_winpt}
+   Goto calc_defaults_winpt_done
+  calc_defaults_winpt_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_winpt_done
+   !insertmacro UnselectSection ${SEC_winpt}
+calc_defaults_winpt_done:
+!endif
+
+!ifdef HAVE_PKG_GPGEE
+  g4wihelp::config_fetch_bool "inst_gpgee"
+  StrCmp $R0 "1" 0 calc_defaults_gpgee_not_one
+   !insertmacro SelectSection ${SEC_gpgee}
+   Goto calc_defaults_gpgee_done
+  calc_defaults_gpgee_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_gpgee_done
+   !insertmacro UnselectSection ${SEC_gpgee}
+calc_defaults_gpgee_done:
+!endif
+
+!ifdef HAVE_PKG_CLAWS_MAIL
+  g4wihelp::config_fetch_bool "inst_claws_mail"
+  StrCmp $R0 "1" 0 calc_defaults_claws_mail_not_one
+   !insertmacro SelectSection ${SEC_claws_mail}
+   Goto calc_defaults_claws_mail_done
+  calc_defaults_claws_mail_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_claws_mail_done
+   !insertmacro UnselectSection ${SEC_claws_mail}
+calc_defaults_claws_mail_done:
+!endif
+
+!ifdef HAVE_PKG_MAN_NOVICE_DE
+  g4wihelp::config_fetch_bool "inst_man_novice_de"
+  StrCmp $R0 "1" 0 calc_defaults_man_novice_de_not_one
+   !insertmacro SelectSection ${SEC_man_novice_de}
+   Goto calc_defaults_man_novice_de_done
+  calc_defaults_man_novice_de_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_man_novice_de_done
+   !insertmacro UnselectSection ${SEC_man_novice_de}
+calc_defaults_man_novice_de_done:
+!endif
+
+!ifdef HAVE_PKG_MAN_NOVICE_EN
+  g4wihelp::config_fetch_bool "inst_man_novice_en"
+  StrCmp $R0 "1" 0 calc_defaults_man_novice_en_not_one
+   !insertmacro SelectSection ${SEC_man_novice_en}
+   Goto calc_defaults_man_novice_en_done
+  calc_defaults_man_novice_en_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_man_novice_en_done
+   !insertmacro UnselectSection ${SEC_man_novice_en}
+calc_defaults_man_novice_en_done:
+!endif
+
+!ifdef HAVE_PKG_MAN_ADVANCED_DE
+  g4wihelp::config_fetch_bool "inst_man_advanced_de"
+  StrCmp $R0 "1" 0 calc_defaults_man_advanced_de_not_one
+   !insertmacro SelectSection ${SEC_man_advanced_de}
+   Goto calc_defaults_man_advanced_de_done
+  calc_defaults_man_advanced_de_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_man_advanced_de_done
+   !insertmacro UnselectSection ${SEC_man_advanced_de}
+calc_defaults_man_advanced_de_done:
+!endif
+
+!ifdef HAVE_PKG_MAN_ADVANCED_EN
+  g4wihelp::config_fetch_bool "inst_man_advanced_en"
+  StrCmp $R0 "1" 0 calc_defaults_man_advanced_en_not_one
+   !insertmacro SelectSection ${SEC_man_advanced_en}
+   Goto calc_defaults_man_advanced_en_done
+  calc_defaults_man_advanced_en_not_one:
+  StrCmp $R0 "0" 0 calc_defaults_man_advanced_en_done
+   !insertmacro UnselectSection ${SEC_man_advanced_en}
+calc_defaults_man_advanced_en_done:
+!endif
+
+FunctionEnd
+
+
 Function CalcDepends
   # This section could very well be autogenerated from the
   # information in configure.ac.  Note that it doesn't hurt to have
@@ -513,7 +647,7 @@ Call G4wRunOnce
   SetOutPath $TEMP
 !ifdef SOURCES
   File /oname=gpgspltmp.bmp "${TOP_SRCDIR}/doc/logo/gpg4win-logo-400px.bmp"
-  # We play the tune only for the soruce installer
+  # We play the tune only for the source installer
   File /oname=gpgspltmp.wav "${TOP_SRCDIR}/src/gpg4win-splash.wav"
   g4wihelp::playsound $TEMP\gpgspltmp.wav
   g4wihelp::showsplash 2500 $TEMP\gpgspltmp.bmp
@@ -527,6 +661,7 @@ Call G4wRunOnce
   # generate the file from a template.
   !insertmacro MUI_INSTALLOPTIONS_EXTRACT "installer-options.ini"
 
+  Call CalcDefaults
   Call CalcDepends
   Call CheckOtherGnuPGApps
 FunctionEnd