]> git.sesse.net Git - vlc/blobdiff - extras/package/win32/vlc.win32.nsi.in
Win7 compliance for test1: installer fixes.
[vlc] / extras / package / win32 / vlc.win32.nsi.in
index 1d637a87aaae9e3a527a2571c82b2b478bdcfd9d..6afecd4b676894d019f340654655978e83a41b78 100644 (file)
@@ -20,6 +20,9 @@
 !define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_DIR_REGKEY}"
 !define MUI_LANGDLL_REGISTRY_VALUENAME "Language"
 
+@BUILD_ACTIVEX_TRUE@ !define INSTALL_ACTIVEX
+@BUILD_MOZILLA_TRUE@ !define INSTALL_MOZILLA
+
 @FILE_LIBVLCCORE_DLL@
 @FILE_LIBVLC_DLL@
 
@@ -37,8 +40,6 @@ SetCompressor lzma
 SetCompressor /SOLID lzma
 !endif
 
-;ShowInstDetails show
-;ShowUnInstDetails show
 SetOverwrite ifnewer
 CRCCheck on
 BrandingText "${PRODUCT_GROUP} ${PRODUCT_NAME}"
@@ -105,11 +106,15 @@ InstType $Name_InstTypeFull
   !insertmacro MUI_LANGUAGE "Greek"
   !insertmacro MUI_LANGUAGE "Russian"
   !insertmacro MUI_LANGUAGE "Portuguese"
+  !insertmacro MUI_LANGUAGE "PortugueseBR"
   !insertmacro MUI_LANGUAGE "Arabic"
   !insertmacro MUI_LANGUAGE "Polish"
   !insertmacro MUI_LANGUAGE "Romanian"
   !insertmacro MUI_LANGUAGE "Slovak"
   !insertmacro MUI_LANGUAGE "Czech"
+  !insertmacro MUI_LANGUAGE "Hungarian"
+  !insertmacro MUI_LANGUAGE "Catalan"
+  !insertmacro MUI_LANGUAGE "Bulgarian"
 
 ; Reserve files for solid compression
   !insertmacro MUI_RESERVEFILE_LANGDLL
@@ -136,9 +141,9 @@ NoBackup:
   WriteRegStr HKCR "$R0" "" "VLC$R0"
   ReadRegStr $0 HKCR "VLC$R0" ""
   WriteRegStr HKCR "VLC$R0" "" "VLC media file ($R0)"
-  WriteRegStr HKCR "VLC$R0\shell" "" "Play"
-  WriteRegStr HKCR "VLC$R0\shell\Play" "" $ShellAssociation_Play
-  WriteRegStr HKCR "VLC$R0\shell\Play\command" "" '"$INSTDIR\vlc.exe" --started-from-file "%1"'
+  WriteRegStr HKCR "VLC$R0\shell" "" "Open"
+  WriteRegStr HKCR "VLC$R0\shell\Open" "" $ShellAssociation_Play
+  WriteRegStr HKCR "VLC$R0\shell\Open\command" "" '"$INSTDIR\vlc.exe" --started-from-file "%1"'
   WriteRegStr HKCR "VLC$R0\DefaultIcon" "" '"$INSTDIR\vlc.exe",0'
 
 ;;; Vista Only part
@@ -200,6 +205,7 @@ FunctionEnd
   !insertmacro ${_action} ".a52"
   !insertmacro ${_action} ".aac"
   !insertmacro ${_action} ".ac3"
+  !insertmacro ${_action} ".aob"
   !insertmacro ${_action} ".dts"
   !insertmacro ${_action} ".flac"
   !insertmacro ${_action} ".m4a"
@@ -392,7 +398,7 @@ FunctionEnd
 ; The CORE of the    ;
 ; installer          ;
 ;;;;;;;;;;;;;;;;;;;;;;
-  
+
 Section $Name_Section01 SEC01
   SectionIn 1 2 3 RO
   SetShellVarContext all
@@ -413,10 +419,11 @@ Section $Name_Section01 SEC01
   ; Subfolders
   !insertmacro InstallFolder plugins
   !insertmacro InstallFolder locale
-  !insertmacro InstallFolder osdmenu
-  !insertmacro InstallFolder skins
-  !insertmacro InstallFolder http
-  !insertmacro InstallFolder lua
+@BUILD_OSDMENU_TRUE@ !insertmacro InstallFolder osdmenu
+@BUILD_SKINS_TRUE@   !insertmacro InstallFolder skins
+@BUILD_HTTPD_TRUE@   !insertmacro InstallFolder http
+@BUILD_LUA_TRUE@     !insertmacro InstallFolder lua
+
 
   ; URLs
   WriteIniStr "$INSTDIR\${PRODUCT_GROUP} Website.url" "InternetShortcut" "URL" \
@@ -434,8 +441,8 @@ Section $Name_Section01 SEC01
   ; Add VLC to "recomended programs" for the following extensions
   WriteRegStr HKCR Applications\vlc.exe "" ""
   WriteRegStr HKCR Applications\vlc.exe "FriendlyAppName" "VLC media player"
-  WriteRegStr HKCR Applications\vlc.exe\shell\Play "" $ContextMenuEntry_PlayWith
-  WriteRegStr HKCR Applications\vlc.exe\shell\Play\command "" \
+  WriteRegStr HKCR Applications\vlc.exe\shell\Open "" $ContextMenuEntry_PlayWith
+  WriteRegStr HKCR Applications\vlc.exe\shell\Open\command "" \
     '"$INSTDIR\vlc.exe" --started-from-file "%1"'
   !insertmacro MacroAllExtensions WriteRegStrSupportedTypes
 
@@ -463,8 +470,8 @@ Section $Name_Section02a SEC02a
   CreateShortCut "$SMPROGRAMS\VideoLAN\Quick Settings\Audio\Set Audio mode to Waveout.lnk" \
     "$INSTDIR\vlc.exe" "--aout waveout --save-config vlc://quit"
   CreateDirectory "$SMPROGRAMS\VideoLAN\Quick Settings\Interface"
-  CreateShortCut "$SMPROGRAMS\VideoLAN\Quick Settings\Interface\Set Main Interface to Skinnable.lnk" \
-    "$INSTDIR\vlc.exe" "-I skins --save-config vlc://quit"
+@BUILD_SKINS_TRUE@  CreateShortCut "$SMPROGRAMS\VideoLAN\Quick Settings\Interface\Set Main Interface to Skinnable.lnk" \
+@BUILD_SKINS_TRUE@    "$INSTDIR\vlc.exe" "-I skins --save-config vlc://quit"
   CreateShortCut "$SMPROGRAMS\VideoLAN\Quick Settings\Interface\Set Main Interface to Qt (default).lnk" \
     "$INSTDIR\vlc.exe" "-I qt --save-config vlc://quit"
   CreateDirectory "$SMPROGRAMS\VideoLAN\Quick Settings\Video"
@@ -499,6 +506,7 @@ Section $Name_Section02b SEC02b
     "$INSTDIR\vlc.exe" ""
 SectionEnd
 
+!ifdef INSTALL_MOZILLA
 Section /o $Name_Section03 SEC03
   SectionIn 3
 
@@ -545,7 +553,9 @@ Section /o $Name_Section03 SEC03
  ;!undef Index
 
 SectionEnd
+!endif
 
+!ifdef INSTALL_ACTIVEX
 Section $Name_Section04 SEC04
   SectionIn 3
   SetOutPath "$INSTDIR"
@@ -555,28 +565,17 @@ Section $Name_Section04 SEC04
   !insertmacro CloseUninstallLog
   RegDLL "$INSTDIR\axvlc.dll"
 SectionEnd
-
-SectionGroup /e !$Name_Section06 SEC05
-  SectionGroup $Name_SectionGroupAudio
-    !insertmacro MacroAudioExtensions RegisterExtensionSection
-  SectionGroupEnd
-  SectionGroup $Name_SectionGroupVideo
-    !insertmacro MacroVideoExtensions RegisterExtensionSection
-  SectionGroupEnd
-  SectionGroup $Name_SectionGroupOther
-    !insertmacro MacroOtherExtensions RegisterExtensionSection
-  SectionGroupEnd
-SectionGroupEnd
+!endif
 
 
-Section $Name_Section05 SEC06
+Section $Name_Section05 SEC05
   SectionIn 1 2 3
   WriteRegStr HKCR "AudioCD\shell\PlayWithVLC" "" $ContextMenuEntry_PlayWith
   WriteRegStr HKCR "AudioCD\shell\PlayWithVLC\command" "" \
-    '"$INSTDIR\vlc.exe" --started-from-file "cdda://%1"'
+    '"$INSTDIR\vlc.exe" --started-from-file cdda://%1'
   WriteRegStr HKCR "DVD\shell\PlayWithVLC" "" $ContextMenuEntry_PlayWith
   WriteRegStr HKCR "DVD\shell\PlayWithVLC\command" "" \
-    '"$INSTDIR\vlc.exe" --started-from-file "dvd://%1"'
+    '"$INSTDIR\vlc.exe" --started-from-file dvd://%1'
 
   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\EventHandlers\PlayDVDMovieOnArrival" "VLCPlayDVDMovieOnArrival" ""
   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayDVDMovieOnArrival" "Action" $Action_OnArrivalDVD
@@ -592,18 +591,31 @@ Section $Name_Section05 SEC06
   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" "InvokeVerb" "play"
   WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers\VLCPlayCDAudioOnArrival" "Provider" "VideoLAN VLC media player"
   WriteRegStr HKCR "VLC.DVDMovie" "" "VLC DVD Movie"
-  WriteRegStr HKCR "VLC.DVDMovie\shell" "" "Play"
-  WriteRegStr HKCR "VLC.DVDMovie\shell\Play\command" "" \
-    '"$INSTDIR\vlc.exe" --started-from-file "dvd://%1"'
+  WriteRegStr HKCR "VLC.DVDMovie\shell" "" "Open"
+  WriteRegStr HKCR "VLC.DVDMovie\shell\Open\command" "" \
+    '"$INSTDIR\vlc.exe" --started-from-file dvd://%1'
   WriteRegStr HKCR "VLC.DVDMovie\DefaultIcon" "" '"$INSTDIR\vlc.exe",0'
   WriteRegStr HKCR "VLC.CDAudio" "" "VLC CD Audio"
-  WriteRegStr HKCR "VLC.CDAudio\shell" "" "Play"
-  WriteRegStr HKCR "VLC.CDAudio\shell\Play\command" "" \
-    '"$INSTDIR\vlc.exe" --started-from-file "cdda://%1"'
+  WriteRegStr HKCR "VLC.CDAudio\shell" "" "Open"
+  WriteRegStr HKCR "VLC.CDAudio\shell\Open\command" "" \
+    '"$INSTDIR\vlc.exe" --started-from-file cdda://%1'
   WriteRegStr HKCR "VLC.CDAudio\DefaultIcon" "" '"$INSTDIR\vlc.exe",0'
 
 SectionEnd
 
+
+SectionGroup /e !$Name_Section06 SEC06
+  SectionGroup $Name_SectionGroupAudio
+    !insertmacro MacroAudioExtensions RegisterExtensionSection
+  SectionGroupEnd
+  SectionGroup $Name_SectionGroupVideo
+    !insertmacro MacroVideoExtensions RegisterExtensionSection
+  SectionGroupEnd
+  SectionGroup $Name_SectionGroupOther
+    !insertmacro MacroOtherExtensions RegisterExtensionSection
+  SectionGroupEnd
+SectionGroupEnd
+
 Section $Name_Section07 SEC07
   SectionIn 1 3
   !insertmacro MacroAllExtensions AddContextMenu
@@ -619,8 +631,8 @@ SectionEnd
   !insertmacro MUI_DESCRIPTION_TEXT ${SEC01} $Desc_Section01
   !insertmacro MUI_DESCRIPTION_TEXT ${SEC02a} $Desc_Section02a
   !insertmacro MUI_DESCRIPTION_TEXT ${SEC02b} $Desc_Section02b
-  !insertmacro MUI_DESCRIPTION_TEXT ${SEC03} $Desc_Section03
-  !insertmacro MUI_DESCRIPTION_TEXT ${SEC04} $Desc_Section04
+@BUILD_MOZILLA_TRUE@ !insertmacro MUI_DESCRIPTION_TEXT ${SEC03} $Desc_Section03
+@BUILD_ACTIVEX_TRUE@ !insertmacro MUI_DESCRIPTION_TEXT ${SEC04} $Desc_Section04
   !insertmacro MUI_DESCRIPTION_TEXT ${SEC05} $Desc_Section05
   !insertmacro MUI_DESCRIPTION_TEXT ${SEC06} $Desc_Section06
   !insertmacro MUI_DESCRIPTION_TEXT ${SEC07} $Desc_Section07
@@ -633,12 +645,52 @@ Function .onInit
 
   !include "languages\english.nsh"
   StrCmp $LANGUAGE ${LANG_FRENCH} French 0
-  StrCmp $LANGUAGE ${LANG_FINNISH} Finnish EndLanguageCmp
+  StrCmp $LANGUAGE ${LANG_ITALIAN} Italian 0
+  StrCmp $LANGUAGE ${LANG_HUNGARIAN} Hungarian 0
+  StrCmp $LANGUAGE ${LANG_ROMANIAN} Romanian 0
+  StrCmp $LANGUAGE ${LANG_CATALAN} Catalan 0
+  StrCmp $LANGUAGE ${LANG_BULGARIAN} Bulgarian 0
+  StrCmp $LANGUAGE ${LANG_SLOVAK} Slovak 0
+  StrCmp $LANGUAGE ${LANG_POLISH} Polish 0
+  StrCmp $LANGUAGE ${LANG_DUTCH} Dutch 0
+  StrCmp $LANGUAGE ${LANG_SIMPCHINESE} SChinese 0
+  StrCmp $LANGUAGE ${LANG_FINNISH} Finnish 0
+  StrCmp $LANGUAGE ${LANG_PORTUGUESEBR} Brazilian EndLanguageCmp
   French:
   !include "languages\french.nsh"
   Goto EndLanguageCmp
+  Italian:
+  !include "languages\italian.nsh"
+  Goto EndLanguageCmp
+  Hungarian:
+  !include "languages\hungarian.nsh"
+  Goto EndLanguageCmp
+  Romanian:
+  !include "languages\romanian.nsh"
+  Goto EndLanguageCmp
+  Catalan:
+  !include "languages\catalan.nsh"
+  Goto EndLanguageCmp
+  Bulgarian:
+  !include "languages\bulgarian.nsh"
+  Goto EndLanguageCmp
+  Slovak:
+  !include "languages\slovak.nsh"
+  Goto EndLanguageCmp
+  Polish:
+  !include "languages\polish.nsh"
+  Goto EndLanguageCmp
+  Dutch:
+  !include "languages\dutch.nsh"
+  Goto EndLanguageCmp
+  Schinese:
+  !include "languages\schinese.nsh"
+  Goto EndLanguageCmp
   Finnish:
   !include "languages\finnish.nsh"
+  Goto EndLanguageCmp
+  Brazilian:
+  !include "languages\brazilian_portuguese.nsh"
   EndLanguageCmp:
 
   ReadRegStr $R0  ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \
@@ -666,6 +718,8 @@ Section -Post
     "DisplayName" "$(^Name)"
   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \
     "UninstallString" "$INSTDIR\uninstall.exe"
+  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \
+    "InstallLocation" "$INSTDIR"
   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \
     "DisplayIcon" "$INSTDIR\vlc.exe"
   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \
@@ -674,6 +728,10 @@ Section -Post
     "URLInfoAbout" "${PRODUCT_WEB_SITE}"
   WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \
     "Publisher" "${PRODUCT_PUBLISHER}"
+  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \
+    "VersionMajor"  "@VERSION_MAJOR@"
+  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" \
+    "VersionMinor" "@VERSION_MINOR@"
 SectionEnd
 
 ;;;;;;;;;;;;;;;;;;;;;;;;
@@ -838,11 +896,55 @@ SectionEnd
 
 Function un.onInit
   !insertmacro MUI_UNGETLANGUAGE
-  
+
   !include "languages\english.nsh"
-  StrCmp $LANGUAGE ${LANG_FRENCH} French EndLanguageCmp
+  StrCmp $LANGUAGE ${LANG_FRENCH} French 0
+  StrCmp $LANGUAGE ${LANG_ITALIAN} Italian 0
+  StrCmp $LANGUAGE ${LANG_HUNGARIAN} Hungarian 0
+  StrCmp $LANGUAGE ${LANG_ROMANIAN} Romanian 0
+  StrCmp $LANGUAGE ${LANG_CATALAN} Catalan 0
+  StrCmp $LANGUAGE ${LANG_BULGARIAN} Bulgarian 0
+  StrCmp $LANGUAGE ${LANG_SLOVAK} Slovak 0
+  StrCmp $LANGUAGE ${LANG_POLISH} Polish 0
+  StrCmp $LANGUAGE ${LANG_DUTCH} Dutch 0
+  StrCmp $LANGUAGE ${LANG_SIMPCHINESE} SChinese 0
+  StrCmp $LANGUAGE ${LANG_FINNISH} Finnish 0
+  StrCmp $LANGUAGE ${LANG_PORTUGUESEBR} Brazilian EndLanguageCmp
   French:
   !include "languages\french.nsh"
+  Goto EndLanguageCmp
+  Italian:
+  !include "languages\italian.nsh"
+  Goto EndLanguageCmp
+  Hungarian:
+  !include "languages\hungarian.nsh"
+  Goto EndLanguageCmp
+  Romanian:
+  !include "languages\romanian.nsh"
+  Goto EndLanguageCmp
+  Catalan:
+  !include "languages\catalan.nsh"
+  Goto EndLanguageCmp
+  Bulgarian:
+  !include "languages\bulgarian.nsh"
+  Goto EndLanguageCmp
+  Slovak:
+  !include "languages\slovak.nsh"
+  Goto EndLanguageCmp
+  Polish:
+  !include "languages\polish.nsh"
+  Goto EndLanguageCmp
+  Dutch:
+  !include "languages\dutch.nsh"
+  Goto EndLanguageCmp
+  Schinese:
+  !include "languages\schinese.nsh"
+  Goto EndLanguageCmp
+  Finnish:
+  !include "languages\finnish.nsh"
+  Goto EndLanguageCmp
+  Brazilian:
+  !include "languages\brazilian_portuguese.nsh"
   EndLanguageCmp:
-  
+
 FunctionEnd