aboutsummaryrefslogtreecommitdiffstats
path: root/packaging
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2014-09-02 12:18:20 -0700
committerGerald Combs <gerald@wireshark.org>2014-09-02 23:55:54 +0000
commit85eec7f603f63f1df357691bb558ad47fcc4a224 (patch)
tree37b82c3851217b5f36ad40a98fdb47a23e06cf7d /packaging
parent9555c24740540aff840605595919fa2f5e2a2c23 (diff)
Fix PortableApps packaging.
Our Windows portable packaging environment has a lot of cruft which is no longer relevant. We removed support for U3 packages and the method we use to generate PortableApps packages has been deprecated for a while. Create PortableApps packages using current file formats (AppInfo v3.0) and tools. Generate the PA launcher using the PortableApps.com Launcher generator. Copy files and directories from the top level instead of using a manifest derived from the NSIS installer. The manifest is a good idea, but we should create a central manifest and use that to generate the NSIS and PortableApps packages instead of trying to parse wireshark.nsi. The new package still needs a bit of work but it installs and runs in the current version of the PA Platform. Remove the define for MAKENSIS_UNICODE. It doesn't look like we were using it. Start tearing down makefiles and scripts that we no longer use. Ping-Bug: 4191 Change-Id: Ib7173eec887d0abf69bb176a1e3f943a5a63bee4 Reviewed-on: https://code.wireshark.org/review/3962 Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'packaging')
-rw-r--r--packaging/Makefile.nmake9
-rw-r--r--packaging/portableapps/win32/Makefile.nmake207
-rw-r--r--packaging/portableapps/win32/WiresharkPortable.ini3
-rwxr-xr-xpackaging/portableapps/win32/WiresharkPortable.nsi251
-rwxr-xr-xpackaging/portableapps/win32/appinfo.tmpl6
-rw-r--r--packaging/portableapps/win32/help.html8
-rwxr-xr-xpackaging/portableapps/win32/installer.ini0
-rwxr-xr-xpackaging/ws-manifest.pl7
8 files changed, 139 insertions, 352 deletions
diff --git a/packaging/Makefile.nmake b/packaging/Makefile.nmake
index 2506497323..ee72cdd164 100644
--- a/packaging/Makefile.nmake
+++ b/packaging/Makefile.nmake
@@ -1,14 +1,13 @@
-#
+# This is no longer used and can probably be removed.
include ../config.nmake
-wireshark.manifest: nsis/wireshark.nsi ws-manifest.pl
- $(PERL) ws-manifest.pl nsis/wireshark.nsi > $@
+#wireshark.manifest: nsis/wireshark.nsi ws-manifest.pl
+# $(PERL) ws-manifest.pl nsis/wireshark.nsi > $@
clean:
rm -rf wireshark.manifest
distclean: clean
-
+
maintainer-clean: distclean
-
diff --git a/packaging/portableapps/win32/Makefile.nmake b/packaging/portableapps/win32/Makefile.nmake
index 60dee968ba..b6cfe96a92 100644
--- a/packaging/portableapps/win32/Makefile.nmake
+++ b/packaging/portableapps/win32/Makefile.nmake
@@ -1,21 +1,29 @@
#
+TOPDIR = ..\..\..
+TOOLS_DIR = $(TOPDIR)\tools
+
include ../../../config.nmake
-FILES = Files
-APP = App
-DATA = Data
-OTHER = Other
-APPINFO = AppInfo
-WIRESHARK = Wireshark
-SOURCE = WiresharkPortableSource
+PROGRAM_PORTABLE = $(PROGRAM_NAME)Portable
+
+STAGING_DIR = $(PROGRAM_PORTABLE)
+APP = $(STAGING_DIR)\App
+APPINFO = $(APP)\AppInfo
+LAUNCHER_DIR = $(APPINFO)\Launcher
+WIRESHARK_DIR = $(APP)\$(PROGRAM_NAME)
+DATA = $(STAGING_DIR)\Data
+OTHER = $(STAGING_DIR)\Other
+SOURCE = $(OTHER)\Source
+
+APPINFO_INI = $(APPINFO)\appinfo.ini
+LAUNCHER_INI = $(LAUNCHER_DIR)\$(PROGRAM_PORTABLE).ini
WSMANIFEST = ../../wireshark.manifest
NSIS_PLUGINS = nsis-plugins
FINDPROCDLL = $(WIRESHARK_LIB_DIR)\$(NSIS_PLUGINS)\FindProcDLL.dll
-TOPDIR = ..\..\..
COPY = xcopy
MKDIR = mkdir
COPY_FLAGS = /d /y
@@ -23,6 +31,8 @@ COPY_FLAGS = /d /y
WIN32_SETUP_OPT = --download
!ENDIF
+NSIS_DIR = $(TOPDIR)\packaging\nsis
+
# XXX This should be defined in config.nmake.
!IF EXIST("..\..\wireshark-qt-release\wireshark.exe")
QT_DIR = "..\..\wireshark-qt-release"
@@ -34,107 +44,118 @@ NEED_QT5_DLL = USE
NEED_QT4_DLL = USE
!ENDIF
+#wireshark.nsi: qt-dll-manifest.nsh
+#qt-dll-manifest.nsh: windeployqt-to-nsis.ps1 Makefile.nmake
+#!IF EXIST("$(QT5_BASE_DIR)\bin\qmake.exe")
+# set PATH=%PATH%;$(QT5_BASE_DIR)\bin
+#!ENDIF
+# $(POWERSHELL) windeployqt-to-nsis.ps1 \
+# -Executable ..\..\wireshark-qt-release\wireshark.exe \
+# -FilePath $@
+
UPX_FLAGS = -q
PAPPS_VERSION=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_MICRO).0
-all: package
+all: package
-package: WiresharkPortable-$(VERSION).paf.exe
+package: $(PROGRAM_PORTABLE)-$(VERSION).paf.exe
dirs:
- if not exist $(FILES) $(MKDIR) $(FILES)
- if not exist $(FILES)\$(APP) $(MKDIR) $(FILES)\$(APP)
- if not exist $(FILES)\$(APP)\$(APPINFO) $(MKDIR) $(FILES)\$(APP)\$(APPINFO)
- if not exist $(FILES)\$(APP)\$(WIRESHARK) $(MKDIR) $(FILES)\$(APP)\$(WIRESHARK)
- if not exist $(FILES)\$(DATA) $(MKDIR) $(FILES)\$(DATA)
- if not exist $(FILES)\$(OTHER) $(MKDIR) $(FILES)\$(OTHER)
- if not exist $(FILES)\$(OTHER)\$(SOURCE) $(MKDIR) $(FILES)\$(OTHER)\$(SOURCE)
-
-nsis-bits:
- cd ../../nsis
- $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake user-guide.chm
- cd ../portableapps/win32
-
-$(WSMANIFEST):
- cd ../..
- $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake wireshark.manifest
- cd portableapps/win32
-
-distribution.nmake: makenmake.pl $(WSMANIFEST) ../../ws-manifest.pl
- $(PERL) makenmake.pl $(WSMANIFEST) > $@
-
-distribution: distribution.nmake
- nmake -f distribution.nmake
-
-pack: distribution
-!IFDEF UPX
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\[a-z]*.exe
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\*.dll
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\plugins\$(VERSION)\*.dll
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders\*.dll
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\lib\gtk-2.0\$(GTK_LIB_DIR)\immodules\*.dll
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\$(GTK_WIMP_DLLDST_DIR)\*.dll
-!ENDIF
-
-
-appinfo.ini: appinfo.tmpl $(TOPDIR)\config.nmake
+ if not exist $(STAGING_DIR) $(MKDIR) $(STAGING_DIR)
+ if not exist $(APP) $(MKDIR) $(APP)
+ if not exist $(APPINFO) $(MKDIR) $(APPINFO)
+ if not exist $(LAUNCHER_DIR) $(MKDIR) $(LAUNCHER_DIR)
+ if not exist $(WIRESHARK_DIR) $(MKDIR) $(WIRESHARK_DIR)
+ if not exist $(DATA) $(MKDIR) $(DATA)
+ if not exist $(OTHER) $(MKDIR) $(OTHER)
+ if not exist $(SOURCE) $(MKDIR) $(SOURCE)
+
+#nsis-bits:
+# cd ../../nsis
+# $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake user-guide.chm
+# cd ../portableapps/win32
+
+#distribution.nmake: makenmake.pl $(WSMANIFEST) ../../ws-manifest.pl
+# $(PERL) makenmake.pl $(WSMANIFEST) > $@
+
+#distribution: distribution.nmake
+# nmake -f distribution.nmake
+
+#pack: distribution
+#!IFDEF UPX
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\[a-z]*.exe
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\*.dll
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\plugins\$(VERSION)\*.dll
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders\*.dll
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\lib\gtk-2.0\$(GTK_LIB_DIR)\immodules\*.dll
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\$(GTK_WIMP_DLLDST_DIR)\*.dll
+#!ENDIF
+
+$(APPINFO_INI): dirs appinfo.tmpl $(TOPDIR)\config.nmake
sed -e 's/$$(PAPPS_VERSION)/$(PAPPS_VERSION)/g' \
-e 's/$$(VERSION_MAJOR)/$(VERSION_MAJOR)/g' \
-e 's/$$(VERSION_MINOR)/$(VERSION_MINOR)/g' \
- < appinfo.tmpl > appinfo.ini
-
-WiresharkPortable.ini: WiresharkPortable.tmpl $(TOPDIR)\config.nmake
- sed -e 's/$$(WINPCAP_VERSION)/$(WINPCAP_VERSION)/g' \
- -e 's/$$(TARGET_MACHINE)/$(TARGET_MACHINE)/g' \
- < WiresharkPortable.tmpl > WiresharkPortable.ini
-
-appinfo: appinfo.ini
- $(COPY) appinfo.ini $(FILES)\$(APP)\$(APPINFO) $(COPY_FLAGS)
- $(COPY) installer.ini $(FILES)\$(APP)\$(APPINFO) $(COPY_FLAGS)
- copy $(TOPDIR)\image\wireshark.ico $(FILES)\$(APP)\$(APPINFO)\appicon.ico /y
- copy $(TOPDIR)\image\wsicon16.png $(FILES)\$(APP)\$(APPINFO)\appicon_16.png /y
- copy $(TOPDIR)\image\wsicon32.png $(FILES)\$(APP)\$(APPINFO)\appicon_32.png /y
-
-source: WiresharkPortable.ini
- $(COPY) WiresharkPortable.ini $(FILES)\$(OTHER)\$(SOURCE) $(COPY_FLAGS)
- $(COPY) readme.txt $(FILES)\$(OTHER)\$(SOURCE) $(COPY_FLAGS)
- $(COPY) WiresharkPortable.nsi $(FILES)\$(OTHER)\$(SOURCE) $(COPY_FLAGS)
- $(COPY) Installer.nsi $(FILES)\$(OTHER)\$(SOURCE) $(COPY_FLAGS)
-
-findprocdll:
- if not exist $(FINDPROCDLL) \
- @$(SH) ../../../tools/win-setup.sh "$(WIN32_SETUP_OPT)" "$(WIRESHARK_LIB_DIR)" \
- $(NSIS_PLUGINS) FindProc.zip "$(DOWNLOAD_TAG)" "$(WIRESHARK_TARGET_PLATFORM)"
-
-
-WiresharkPortable-$(VERSION).paf.exe : dirs appinfo nsis-bits pack source Files/WiresharkPortable.exe Installer.nsi
- $(MAKENSIS) \
- /DVERSION=$(PAPPS_VERSION) \
- /DWSVERSION=$(VERSION) \
- /DQT_DIR=$(QT_DIR) \
- /DNEED_QT5_DLL=$(NEED_QT5_DLL) \
- /DNEED_QT4_DLL=$(NEED_QT4_DLL) \
- /DEXTRA_PLUGINS="$(WIRESHARK_LIB_DIR)\$(NSIS_PLUGINS)" \
- Installer.nsi
-
-Files/WiresharkPortable.exe : WiresharkPortable.nsi findprocdll
- $(MAKENSIS) \
- /DVERSION=$(PAPPS_VERSION) \
- /DWSVERSION=$(VERSION) \
- /DEXTRA_PLUGINS="$(WIRESHARK_LIB_DIR)\$(NSIS_PLUGINS)" \
- /DDEFAULTWINPCAP=WinPcap_$(WINPCAP_VERSION).exe \
- /DDEFAULTMSVCREDIST=vcredist_$(TARGET_MACHINE).exe \
- WiresharkPortable.nsi
+ < appinfo.tmpl > $@
+
+$(LAUNCHER_INI): dirs $(PROGRAM_PORTABLE).ini
+ copy $(PROGRAM_PORTABLE).ini $(LAUNCHER_INI) /y
+
+appinfo: $(APPINFO_INI) $(LAUNCHER_INI)
+ copy help.html $(STAGING_DIR)\help.html /y
+ copy $(TOPDIR)\image\wireshark.ico $(APPINFO)\appicon.ico /y
+ copy $(TOPDIR)\image\wsicon16.png $(APPINFO)\appicon_16.png /y
+ copy $(TOPDIR)\image\wsicon32.png $(APPINFO)\appicon_32.png /y
+ copy $(TOPDIR)\image\wsicon128.png $(APPINFO)\appicon_128.png /y
+
+# It'd be nice if we could get some sort of status or debugging output. For now
+# just cross our fingers.
+applauncher: appinfo
+ $(PORTABLEAPPS_DIR)\PortableApps.comLauncher\PortableApps.comLauncherGenerator.exe \
+ $(MAKEDIR)\$(PROGRAM_PORTABLE)
+
+appbinaries: applauncher
+ xcopy $(TOPDIR)\wireshark-qt-release $(WIRESHARK_DIR) /D /I /E /Y
+ xcopy $(TOPDIR)\capinfos.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\captype.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\dumpcap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\editcap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\mergecap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\randpkt.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\reordercap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\rawshark.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\text2pcap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\tfshark.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\tshark.exe $(WIRESHARK_DIR) /d
+
+#WiresharkPortable.ini: WiresharkPortable.tmpl $(TOPDIR)\config.nmake
+# sed -e 's/$$(WINPCAP_VERSION)/$(WINPCAP_VERSION)/g' \
+# -e 's/$$(TARGET_MACHINE)/$(TARGET_MACHINE)/g' \
+# < WiresharkPortable.tmpl > WiresharkPortable.ini
+
+source: dirs
+ $(COPY) readme.txt $(SOURCE) $(COPY_FLAGS)
+ $(TEXTIFY) -Destination $(SOURCE) \
+ $(TOPDIR)/COPYING \
+ $(TOPDIR)/NEWS \
+ $(TOPDIR)/README.windows
+
+WiresharkPortable-$(VERSION).paf.exe : dirs appinfo appbinaries source
+!IFDEF PORTABLEAPPS_DIR
+ $(PORTABLEAPPS_DIR)\PortableApps.comInstaller\PortableApps.comInstaller.exe \
+ $(MAKEDIR)\$(PROGRAM_PORTABLE)
+!ELSE
+!MESSAGE PORTABLEAPPS_DIR not configured in config.nmake. Skipping.
+!ENDIF
clean:
cd ../../
$(MAKE) -f Makefile.nmake $@
cd portableapps/win32
- rm -rf $(FILES)
+ rm -rf $(STAGING_DIR)
rm -rf appinfo.ini
- rm -rf WiresharkPortable.ini
- rm -rf distribution.nmake
+ #rm -rf WiresharkPortable.ini
+ #rm -rf distribution.nmake
rm -rf WiresharkPortable-$(VERSION).paf.exe
rm -rf *~ *.*~
diff --git a/packaging/portableapps/win32/WiresharkPortable.ini b/packaging/portableapps/win32/WiresharkPortable.ini
new file mode 100644
index 0000000000..b9ea785d0d
--- /dev/null
+++ b/packaging/portableapps/win32/WiresharkPortable.ini
@@ -0,0 +1,3 @@
+[Launch]
+ProgramExecutable=Wireshark\Wireshark.exe
+WaitForProgram=false \ No newline at end of file
diff --git a/packaging/portableapps/win32/WiresharkPortable.nsi b/packaging/portableapps/win32/WiresharkPortable.nsi
deleted file mode 100755
index 50538ac646..0000000000
--- a/packaging/portableapps/win32/WiresharkPortable.nsi
+++ /dev/null
@@ -1,251 +0,0 @@
-
-; WiresharkPortable.nsi - runs Wireshark Portable from a PortableApps enabled device
-
-; $Id$
-
-;Copyright (C) 2004-2007 John T. Haller of PortableApps.com
-
-;Website: http://www.wireshark.org/
-
-;This software is OSI Certified Open Source Software.
-;OSI Certified is a certification mark of the Open Source Initiative.
-
-;This program is free software; you can redistribute it and/or
-;modify it under the terms of the GNU General Public License
-;as published by the Free Software Foundation; either version 2
-;of the License, or (at your option) any later version.
-
-;This program is distributed in the hope that it will be useful,
-;but WITHOUT ANY WARRANTY; without even the implied warranty of
-;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;GNU General Public License for more details.
-
-;You should have received a copy of the GNU General Public License
-;along with this program; if not, write to the Free Software
-;Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-!define NAME "WiresharkPortable"
-!define FULLNAME "Wireshark Portable"
-!define APP "Wireshark"
-!define WEBSITE "www.wireshark.org"
-!define DEFAULTEXE "wireshark.exe"
-!define DEFAULTAPPDIR "Wireshark"
-
-!addplugindir "${EXTRA_PLUGINS}"
-
-;=== Program Details
-Name "${FULLNAME}"
-OutFile "Files\${NAME}.exe"
-Caption "${FULLNAME} | PortableApps.com"
-VIProductVersion "${VERSION}"
-VIAddVersionKey ProductName "${FULLNAME}"
-VIAddVersionKey Comments "Allows ${APP} to be run from a removable drive. For additional details, visit ${WEBSITE}"
-VIAddVersionKey CompanyName "Wireshark.org"
-VIAddVersionKey LegalCopyright "Gerald Combs"
-VIAddVersionKey FileDescription "${FULLNAME}"
-VIAddVersionKey FileVersion "${VERSION}"
-VIAddVersionKey ProductVersion "${VERSION}"
-VIAddVersionKey InternalName "${FULLNAME}"
-VIAddVersionKey LegalTrademarks "Wireshark and the fin logo are registered trademarks of Gerald C. Combs"
-VIAddVersionKey OriginalFilename "${NAME}.exe"
-;VIAddVersionKey PrivateBuild ""
-;VIAddVersionKey SpecialBuild ""
-
-;=== Runtime Switches
-CRCCheck On
-WindowIcon Off
-SilentInstall Silent
-AutoCloseWindow True
-RequestExecutionLevel user
-XPStyle on
-
-;=== Include
-!include "FileFunc.nsh"
-!insertmacro GetParameters
-
-;=== Program Icon
-Icon "Files\App\AppInfo\appicon.ico"
-
-;=== Variables
-Var PROGRAMDIRECTORY
-Var ADDITIONALPARAMETERS
-Var EXECSTRING
-Var PROGRAMEXECUTABLE
-Var INIPATH
-Var DISABLEWINPCAPINSTALL
-Var WINPCAPINSTALLER
-Var WINPCAP_UNINSTALL ;declare variable for holding the value of a registry key
-Var MSVCREDIST
-Var MSVCREDIST_UNINSTALL ;declare variable for holding the value of a registry key
-Var PDRIVE
-
-Section "Main"
- ;=== Check if another WiresharkPortable already running
- ;System::Call 'kernel32::CreateMutexA(i 0, i 0, t "${NAME}") i .r1 ?e'
- ;Pop $0
- ;StrCmp $0 0 CheckINI
- ; Goto WarnAnotherInstance
-
- CheckINI:
- ;=== Find the INI file, if there is one
- IfFileExists "$EXEDIR\${NAME}.ini" "" CheckSubINI
- StrCpy "$INIPATH" "$EXEDIR"
- Goto ReadINI
-
- CheckSubINI:
- IfFileExists "$EXEDIR\${NAME}\${NAME}.ini" "" NoINI
- StrCpy "$INIPATH" "$EXEDIR\${NAME}"
- Goto ReadINI
-
- ReadINI:
- ;=== Read the parameters from the INI file
- ReadINIStr $0 "$INIPATH\${NAME}.ini" "${NAME}" "${APP}Directory"
- StrCpy "$PROGRAMDIRECTORY" "$EXEDIR\$0"
-
- ;=== Check that the above required parameters are present
- IfErrors NoINI
-
- ReadINIStr $PROGRAMEXECUTABLE "$INIPATH\${NAME}.ini" "${NAME}" "${APP}Executable"
- ReadINIStr $ADDITIONALPARAMETERS "$INIPATH\${NAME}.ini" "${NAME}" "AdditionalParameters"
-
- ReadINIStr $DISABLEWINPCAPINSTALL "$INIPATH\${NAME}.ini" "${NAME}" "DisableWinPcapInstall"
- ReadINIStr $WINPCAPINSTALLER "$INIPATH\${NAME}.ini" "${NAME}" "WinPcapInstaller"
- ReadINIStr $MSVCREDIST "$INIPATH\${NAME}.ini" "${NAME}" "MSVCRedist"
-
- ;CleanUpAnyErrors:
- ;=== Any missing unrequired INI entries will be an empty string, ignore associated errors
- ClearErrors
-
- ;=== Correct PROGRAMEXECUTABLE if blank
- StrCmp $PROGRAMEXECUTABLE "" "" EndINI
- StrCpy "$PROGRAMEXECUTABLE" "${DEFAULTEXE}"
- Goto EndINI
-
- ;=== Correct WINPCAPINSTALLER if blank
- StrCmp $WINPCAPINSTALLER "" "" EndINI
- StrCpy "$WINPCAPINSTALLER" "${DEFAULTWINPCAP}"
- Goto EndINI
-
- NoINI:
- ;=== No INI file, so we'll use the defaults
- StrCpy "$ADDITIONALPARAMETERS" ""
- StrCpy "$PROGRAMEXECUTABLE" "${DEFAULTEXE}"
- StrCpy "$WINPCAPINSTALLER" "${DEFAULTWINPCAP}"
- StrCpy "$MSVCREDIST" "${DEFAULTMSVCREDIST}"
-
- IfFileExists "$EXEDIR\App\${DEFAULTAPPDIR}\${DEFAULTEXE}" "" CheckPortableProgramDIR
- StrCpy "$PROGRAMDIRECTORY" "$EXEDIR\App\${DEFAULTAPPDIR}"
- GoTo EndINI
-
- CheckPortableProgramDIR:
- IfFileExists "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}\${DEFAULTEXE}" "" NoProgramEXE
- StrCpy "$PROGRAMDIRECTORY" "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}"
- GoTo EndINI
-
- EndINI:
- IfFileExists "$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" GetPassedParameters
-
- NoProgramEXE:
- ;=== Program executable not where expected
- MessageBox MB_OK|MB_ICONEXCLAMATION `$PROGRAMEXECUTABLE was not found. Please check your configuration`
- Abort
-
- FoundProgramEXE:
- ;=== Check if Wireshark running from somwehere else (e.g. U3 device)
- ; if the following step fails, you'll need the FindProcDLL plug-in from:
- ; http://nsis.sourceforge.net/Find_Process_By_Name
- ;FindProcDLL::FindProc "${PROGRAMEXECUTABLE}"
- ;StrCmp $R0 "1" WarnAnotherInstance GetPassedParameters
-
- ;WarnAnotherInstance:
- ; MessageBox MB_OK|MB_ICONINFORMATION `Another instance of ${APP} is already running. Please close other instances of ${APP} before launching ${FULLNAME}.`
- ; Abort
-
- GetPassedParameters:
- ;=== Get any passed parameters
- ${GetParameters} $0
- StrCmp "'$0'" "''" "" LaunchProgramParameters
-
- ;=== No parameters
- StrCpy $EXECSTRING `"$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE"`
- Goto AdditionalParameters
-
- LaunchProgramParameters:
- StrCpy $EXECSTRING `"$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" $0`
-
- AdditionalParameters:
- StrCmp $ADDITIONALPARAMETERS "" CheckWinPcap
-
- ;=== Additional Parameters
- StrCpy $EXECSTRING `$EXECSTRING $ADDITIONALPARAMETERS`
-
- CheckWinPcap:
- StrCmp $DISABLEWINPCAPINSTALL "true" EnvironmentVariables
-
- ReadRegStr $WINPCAP_UNINSTALL HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" "UninstallString"
- IfErrors InstallWinPcap
-
- StrCpy $WINPCAP_UNINSTALL ""
-
- goto CheckRedist
-
- InstallWinPcap:
- MessageBox MB_YESNO "If you want to capture packets from the network you will need to install WinPcap.\nIt will be uninstalled when you exit Wireshark.\n\nDo you want to install WinPcap?" /SD IDYES IDNO CheckRedist
- ExecWait `"$PROGRAMDIRECTORY\$WINPCAPINSTALLER"`
- ;=== remember the uninstall string for when we are done
- ReadRegStr $WINPCAP_UNINSTALL HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" "UninstallString"
-
- CheckRedist:
-
- ReadRegStr $MSVCREDIST_UNINSTALL HKLM "SOFTWARE\Microsoft\CurrentVersion\Uninstall\{A49F249F-0C91-497F-86DF-B2585E8E76B7}" "UninstallString"
- IfErrors InstallRedist
-
- StrCpy $MSVCREDIST_UNINSTALL ""
-
- goto EnvironmentVariables
-
- InstallRedist:
- ExecWait `"$PROGRAMDIRECTORY\$MSVCREDIST" /q`
- ;=== remember the uninstall string for when we are done
-
- ReadRegStr $MSVCREDIST_UNINSTALL HKLM "SOFTWARE\Microsoft\CurrentVersion\Uninstall\{A49F249F-0C91-497F-86DF-B2585E8E76B7}" "UninstallString"
-
- EnvironmentVariables:
- ; set the U3 environment variables
- StrCpy $PDRIVE $EXEDIR 2
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_SERIAL", "0000060414068917").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_PATH", "$PDRIVE").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DOCUMENT_PATH", "$PDRIVE\Documents").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_VENDOR", "Wireshark Developers").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_PRODUCT", "PortableApps").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_VENDOR_ID", "0000").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_APP_DATA_PATH", "$EXEDIR\Data").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_HOST_EXEC_PATH", "$EXEDIR\App\Wireshark").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_EXEC_PATH", "$EXEDIR\App\Wireshark").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_ENV_VERSION", "1.0").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_ENV_LANGUAGE", "1033").r0'
- StrCmp $SECONDARYLAUNCH "true" LaunchAndExit
-
- ExecWait $EXECSTRING
-
- CheckRunning:
- Sleep 1000
- FindProcDLL::FindProc "${DEFAULTEXE}"
- StrCmp $R0 "1" CheckRunning
-
- StrCmp $WINPCAP_UNINSTALL "" UninstallRedist ;=== if we installed it, uninstall it
- ExecWait $WINPCAP_UNINSTALL
-
- UninstallRedist:
-
- StrCmp $MSVCREDIST_UNINSTALL "" TheEnd ;=== if we installed it, uninstall it
-
- ExecWait $MSVCREDIST_UNINSTALL
-
- Goto TheEnd
-
- LaunchAndExit:
- Exec $EXECSTRING
-
- TheEnd:
-SectionEnd
diff --git a/packaging/portableapps/win32/appinfo.tmpl b/packaging/portableapps/win32/appinfo.tmpl
index 5d7f2e7b24..4710115feb 100755
--- a/packaging/portableapps/win32/appinfo.tmpl
+++ b/packaging/portableapps/win32/appinfo.tmpl
@@ -1,16 +1,16 @@
[Format]
Type=PortableApps.comFormat
-Version=2.0
+Version=3.0
[Details]
Name=Wireshark Portable
AppID=WiresharkPortable
Publisher=Wireshark.org
-Homepage=www.wireshark.org
+Homepage=https://www.wireshark.org/
Category=Internet
Description=Wireshark is one of the world's foremost network protocol analyzers.
Language=Multilingual
-Trademarks=Wireshark and the fin logo are registered trademarks of Gerald C. Combs
+Trademarks=Wireshark and the fin logo are registered trademarks of the Wireshark Foundation
[License]
Shareable=true
diff --git a/packaging/portableapps/win32/help.html b/packaging/portableapps/win32/help.html
new file mode 100644
index 0000000000..35dae9b006
--- /dev/null
+++ b/packaging/portableapps/win32/help.html
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<html>
+<head>
+<title>Wireshark Portable ยท Help</title>
+</head>
+<body>
+Please see <a href="https://www.wireshark.org/docs/">the online documentation</a>.
+</body> \ No newline at end of file
diff --git a/packaging/portableapps/win32/installer.ini b/packaging/portableapps/win32/installer.ini
deleted file mode 100755
index e69de29bb2..0000000000
--- a/packaging/portableapps/win32/installer.ini
+++ /dev/null
diff --git a/packaging/ws-manifest.pl b/packaging/ws-manifest.pl
index 41a0fbba9e..793f5ef16d 100755
--- a/packaging/ws-manifest.pl
+++ b/packaging/ws-manifest.pl
@@ -1,3 +1,10 @@
+# This is no longer used and should probably be replaced. For example, we could
+# replace most of the copy/xcopy commands for the install-generated-files target
+# in ../Makefile.nmake with echo commands that append to a deployment manifest.
+# We could then use that manifest to fill in the section includes in
+# nsis\wireshark.nsi, copy files to wireshark-gtk2, and copy files to
+# portableapps\win32\WiresharkPortable\App\Wireshark.
+
#
# ws-manifest.pl - create a generic manifest file (including u3 information) from the wireshark.nsi