diff options
author | Gerald Combs <gerald@wireshark.org> | 2016-09-08 11:24:34 -0700 |
---|---|---|
committer | Gerald Combs <gerald@wireshark.org> | 2016-09-13 21:23:15 +0000 |
commit | aa44e3b75da316bb9ee3237c401042afa36db7d8 (patch) | |
tree | 935af606c7c99dc88cbb4afad855dd1ff8d9c3a0 /packaging | |
parent | 3c163637d6890ce5782fc204186629b789932d32 (diff) |
NSIS: Disable GTK+ by default.
Disable the legacy UI by default. Associate our Programs and Features icon
with Wireshark.exe. Move some GTK+-specific code to SecWiresharkGtk. Make
sure the /desktopicon and /quicklaunchicon apply to Wireshark.exe. Remove
unneeded parentheses in the display name.
Change-Id: Ia7662d003d15afd809d81631e059e249a93d0999
Reviewed-on: https://code.wireshark.org/review/17593
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'packaging')
-rwxr-xr-x | packaging/nsis/common.nsh | 2 | ||||
-rw-r--r-- | packaging/nsis/wireshark.nsi | 88 |
2 files changed, 38 insertions, 52 deletions
diff --git a/packaging/nsis/common.nsh b/packaging/nsis/common.nsh index 9745b74a31..a08b4fb991 100755 --- a/packaging/nsis/common.nsh +++ b/packaging/nsis/common.nsh @@ -15,7 +15,7 @@ !define BITS 64 !endif -!define DISPLAY_NAME "${PROGRAM_NAME} ${VERSION} (${BITS}-bit)" +!define DISPLAY_NAME "${PROGRAM_NAME} ${VERSION} ${BITS}-bit" Name "${DISPLAY_NAME}" !define PROGRAM_NAME_QT "${PROGRAM_NAME}" diff --git a/packaging/nsis/wireshark.nsi b/packaging/nsis/wireshark.nsi index 33d300d530..83d41ca1c2 100644 --- a/packaging/nsis/wireshark.nsi +++ b/packaging/nsis/wireshark.nsi @@ -318,6 +318,11 @@ FunctionEnd Function DisplayAdditionalTasksPage !insertmacro MUI_HEADER_TEXT "Select Additional Tasks" "Which additional tasks should be done?" + + ; Make sure we disable our AdditionalTasksPage fields. Setting "Flags=DISABLED" + ; in the .ini file doesn't appear to be sufficient. + Call .onSelChange + !insertmacro MUI_INSTALLOPTIONS_DISPLAY "AdditionalTasksPage.ini" FunctionEnd @@ -715,7 +720,9 @@ File "${STAGING_DIR}\help\faq.txt" !define UNINSTALL_PATH "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PROGRAM_NAME}" WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "Comments" "${DISPLAY_NAME}" -WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayIcon" "$INSTDIR\${PROGRAM_NAME_PATH_GTK},0" +!ifdef QT_DIR +WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayIcon" "$INSTDIR\${PROGRAM_NAME_PATH_QT},0" +!endif WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayName" "${DISPLAY_NAME}" WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "DisplayVersion" "${VERSION}" WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "HelpLink" "https://ask.wireshark.org/" @@ -732,54 +739,9 @@ WriteRegDWORD HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "VersionMinor" ${VERSION_MI WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "UninstallString" '"$INSTDIR\${UNINSTALLER_NAME}"' WriteRegStr HKEY_LOCAL_MACHINE "${UNINSTALL_PATH}" "QuietUninstallString" '"$INSTDIR\${UNINSTALLER_NAME}" /S' -; Write an entry for ShellExecute -WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME_PATH_GTK}" "" '$INSTDIR\${PROGRAM_NAME_PATH_GTK}' -WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME_PATH_GTK}" "Path" '$INSTDIR' -!ifdef QT_DIR -WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME_PATH_QT}" "" '$INSTDIR\${PROGRAM_NAME_PATH_QT}' -WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME_PATH_QT}" "Path" '$INSTDIR' -!endif - -; Create start menu entries (depending on additional tasks page) -ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 5" "State" -StrCmp $0 "0" SecRequired_skip_StartMenu -SetOutPath $PROFILE -;CreateDirectory "$SMPROGRAMS\${PROGRAM_NAME}" ; To quote "http://download.microsoft.com/download/0/4/6/046bbd36-0812-4c22-a870-41911c6487a6/WindowsUserExperience.pdf" ; "Do not include Readme, Help, or Uninstall entries on the Programs menu." Delete "$SMPROGRAMS\${PROGRAM_NAME}\Wireshark Web Site.lnk" -;WriteINIStr "$SMPROGRAMS\${PROGRAM_NAME}\Wireshark Web Site.url" "InternetShortcut" "URL" "https://www.wireshark.org/" -CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME_GTK}.lnk" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" "" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" 0 "" "" "${PROGRAM_FULL_NAME_GTK}" -;CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME}\Wireshark Manual.lnk" "$INSTDIR\wireshark.html" -;CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME}\Display Filters Manual.lnk" "$INSTDIR\wireshark-filter.html" -;CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME}\Wireshark Program Directory.lnk" "$INSTDIR" -SecRequired_skip_StartMenu: - -; is command line option "/desktopicon" set? -${GetParameters} $R0 -${GetOptions} $R0 "/desktopicon=" $R1 -StrCmp $R1 "no" SecRequired_skip_DesktopIcon -StrCmp $R1 "yes" SecRequired_install_DesktopIcon - -; Create desktop icon (depending on additional tasks page and command line option) -ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 6" "State" -StrCmp $0 "0" SecRequired_skip_DesktopIcon -SecRequired_install_DesktopIcon: -CreateShortCut "$DESKTOP\${PROGRAM_NAME_GTK}.lnk" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" "" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" 0 "" "" "${PROGRAM_FULL_NAME_GTK}" -SecRequired_skip_DesktopIcon: - -; is command line option "/quicklaunchicon" set? -${GetParameters} $R0 -${GetOptions} $R0 "/quicklaunchicon=" $R1 -StrCmp $R1 "no" SecRequired_skip_QuickLaunchIcon -StrCmp $R1 "yes" SecRequired_install_QuickLaunchIcon - -; Create quick launch icon (depending on additional tasks page and command line option) -ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 7" "State" -StrCmp $0 "0" SecRequired_skip_QuickLaunchIcon -SecRequired_install_QuickLaunchIcon: -CreateShortCut "$QUICKLAUNCH\${PROGRAM_NAME_GTK}.lnk" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" "" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" 0 "" "" "${PROGRAM_FULL_NAME_GTK}" -SecRequired_skip_QuickLaunchIcon: ; Create File Extensions (depending on additional tasks page) ; None Associate @@ -875,9 +837,12 @@ SectionEnd ; "Required" !ifdef QT_DIR Section "${PROGRAM_NAME}" SecWiresharkQt ;------------------------------------------- -; by default, Wireshark is installed but file is always associate with Wireshark GTK+ +; by default, Wireshark.exe is installed SetOutPath $INSTDIR File "${QT_DIR}\${PROGRAM_NAME_PATH_QT}" +; Write an entry for ShellExecute +WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME_PATH_QT}" "" '$INSTDIR\${PROGRAM_NAME_PATH_QT}' +WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME_PATH_QT}" "Path" '$INSTDIR' !include qt-dll-manifest.nsh ${!defineifexist} TRANSLATIONS_FOLDER "${QT_DIR}\translations" !ifdef TRANSLATIONS_FOLDER @@ -888,9 +853,6 @@ ${!defineifexist} TRANSLATIONS_FOLDER "${QT_DIR}\translations" !endif Push $0 -;SectionGetFlags ${SecWiresharkQt} $0 -;IntOp $0 $0 & 1 -;CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME_QT}.lnk" "$INSTDIR\${PROGRAM_NAME_PATH_QT}" "" "$INSTDIR\${PROGRAM_NAME_PATH_QT}" 0 "" "" "${PROGRAM_FULL_NAME_QT}" ; Create start menu entries (depending on additional tasks page) ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 2" "State" @@ -938,13 +900,37 @@ SectionEnd !ifdef GTK_DIR -Section "${PROGRAM_NAME} 1" SecWiresharkGtk +Section /o "${PROGRAM_NAME} 1" SecWiresharkGtk ;------------------------------------------- SetOutPath $INSTDIR File "${STAGING_DIR}\${PROGRAM_NAME_PATH_GTK}" +; Write an entry for ShellExecute +WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME_PATH_GTK}" "" '$INSTDIR\${PROGRAM_NAME_PATH_GTK}' +WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\App Paths\${PROGRAM_NAME_PATH_GTK}" "Path" '$INSTDIR' !include gtk-dll-manifest.nsh +Push $0 + +; Create start menu entries (depending on additional tasks page) +ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 5" "State" +StrCmp $0 "0" SecRequired_skip_StartMenuGtk +CreateShortCut "$SMPROGRAMS\${PROGRAM_NAME_GTK}.lnk" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" "" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" 0 "" "" "${PROGRAM_FULL_NAME_GTK}" +SecRequired_skip_StartMenuGtk: + +; Create desktop icon (depending on additional tasks page and command line option) +ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 6" "State" +StrCmp $0 "0" SecRequired_skip_DesktopIconGtk +CreateShortCut "$DESKTOP\${PROGRAM_NAME_GTK}.lnk" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" "" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" 0 "" "" "${PROGRAM_FULL_NAME_GTK}" +SecRequired_skip_DesktopIconGtk: + +; Create quick launch icon (depending on additional tasks page and command line option) +ReadINIStr $0 "$PLUGINSDIR\AdditionalTasksPage.ini" "Field 7" "State" +StrCmp $0 "0" SecRequired_skip_QuickLaunchIconGtk +CreateShortCut "$QUICKLAUNCH\${PROGRAM_NAME_GTK}.lnk" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" "" "$INSTDIR\${PROGRAM_NAME_PATH_GTK}" 0 "" "" "${PROGRAM_FULL_NAME_GTK}" +SecRequired_skip_QuickLaunchIconGtk: + +Pop $0 SectionEnd ; "SecWiresharkGtk" !endif |