Commit Graph

439 Commits

Author SHA1 Message Date
Gerald Combs 3b08042a4e Remove README.windows.
It was a placeholder that pointed people at the download page and the
documentation page. There are plenty of references to those elsewhere.
2023-11-10 14:03:01 -08:00
Gerald Combs 5d7a0c149a NSIS: Make a bunch of sections hidden / mandatory
Hide many of our installation sections from the components page, which
installs them unconditionally. This brings the NSIS installer behavior in
line with the Debian and RPM installers and simplifies the installer UI.

Leave the extcaps individualy selectable for now.
2023-10-31 15:17:41 +00:00
Gerald Combs 9bd3965603 NSIS: Save our installation directory in the registry
We've been setting the InstallDirRegKey attribute since the NSIS package
was added in 2001, but we never set its corresponding registry key.

Fixes #15069.
2023-10-30 16:33:06 +00:00
Gerald Combs 18b5564537 Docs: Move the FAQ to the doc directory 2023-10-21 15:05:07 -07:00
João Valverde 15d3e3ff68 GUI: Add release notes to Help menu 2023-10-02 19:43:46 +00:00
Gerald Combs 4317a1dca2 Revert "Packaging: Increase our NSIS compressor dictionary size"
This made the Arm64 builder fail with

    Internal compiler error #12345: deflateInit() failed(initialization failed [-2]).

This reverts commit 3a6848c901.

[skip ci]
2023-09-08 14:13:53 -07:00
Gerald Combs 3a6848c901 Packaging: Increase our NSIS compressor dictionary size
NSIS 3.08 supports 128MB here, so use that.
2023-09-08 10:30:20 -07:00
Gerald Combs 1a4d139953 NSIS: Update the donation page 2023-08-27 19:34:35 +00:00
João Valverde cd4bf3b477 Fix Debian packaging and remove stale references to "init.lua" 2023-08-25 13:52:47 +00:00
João Valverde d745a9e128 NSIS: Uninstall no-longer-used Lua files 2023-08-23 20:28:43 +01:00
João Valverde b4a421cf82 Replace "manuf" files with static arrays
To reduce startup external file parsing replce the manuf file with
static arrays compiled into the binary.

Add 3 tables for MA-L, MA-M and MA-S. Add a fourth table to direct
a 24-bit MAC prefix (OUI) to one of these tables.

Adapt the make-manuf.py script to generate the static C data
instead of the text file.

The arrays are sorted and a binary search is performed to map
an OUI (24bit/28bit/36bit) to a short and long name.
2023-07-25 16:23:26 +00:00
João Valverde 75a778e893 Replace services file with static array
To speed up start-up we no longer read the services file
from an external resource. Instead it is compiled statically
into the binary in a sorted array.

The personal services file is still parsed and loaded at startup,
if it exists, to allow users to add custom entries and override
global entries.

For historical reasons the port list is mostly composed of
the same entry for TCP and UDP. To avoid a lot of duplication
we add an extra TCP+UDP table and do two lookups for TCP or
UDP, one in the TCP+UDP table and the other in the TCP/UDP table.

Because the services name space is pretty sparse, with lots of
holes, we also use a binary search instead of a linear array
with aprox. 49000 entries, where most would be empty.
2023-07-08 23:06:49 +01:00
João Valverde f47ce6e761 Remove no longer used enterprises.tsv file
Follow-up to 44258d5bed.
2023-07-06 09:46:23 +00:00
Gerald Combs 049a89b2ce CMake+Windows: Use "x64" instead of "win64"
Use "x64" to refer to "Windows running on 64-bit Intel processors". Get
rid of WIRESHARK_TARGET_PROCESSOR_ARCHITECTURE in favor of
WIRESHARK_TARGET_PLATFORM because the latter is shorter.
2023-06-10 21:41:27 +00:00
João Valverde 3f348f5cac CMake: Update some options
Try to autodetect ENABLE_SIGNED_NSIS and enable it if
sign-wireshark.bat is detected on the path.

Instead of skipping the whole Qt deployment, including things like
translations, just skip the DLLs in the manifest. This is useful
if the target machine has Qt installed and the static DLL list
for cross-compiling is not adequate.
2023-06-06 11:23:34 +00:00
João Valverde 6aa0490fdc CMake+NSIS: Allow building an unsigned installer 2023-06-05 10:59:11 +01:00
João Valverde 9195d63482 NSIS+MinGW: Add uninstaller
We remove the workaround for signing an installer that requires
creating an installer that just exists to write an uninstaller
and use WriteUninstaller instead to generate the installer.

This is done at install time. This method allows the uninstaller
to be created portably, namely using Linux.

To add back the signing aspect, including for Windows, we need
to use !uninstfinalize. This changes the compiler to generate
the installer at compile time and is also a portable method of
signing code. The code signing script will have to be platform
specific. This is called by the NSIS compiler using system()
and must be a batch file on Windows. The code assumes a script
named 'sign-wireshark.bat' exists on the path to sign the
executables.

An example of a sign.bat script would be:
    signtool sign /f c:\path\to\MySPC.pfx /t http://[insert timestamp URL] /fd sha256 %1

This is also a nice simplification of the build procedure for NSIS.

The !uninstfinalize stanza requires NSIS 3.08.
2023-06-05 10:14:16 +01:00
Gerald Combs f330087f08 NSIS: Add support for Arm64
Warn the user, but don't exit if we're running the x64 installer on an
Arm64 system. Warn the user and do exit if we're running the Arm64
installer on an x64 system. Fixup the 32 bit check.

Ping #18123
2023-05-31 19:44:34 +00:00
João Valverde 4d39bdb942 NSIS: Make some components optional
Make components that depend on optional external dependencies
optional to build NSIS.

Ping #19108
2023-05-29 01:12:04 +00:00
João Valverde 0003d94086 NSIS: Skip Qt deployment and uninstaller when cross-compiling
Qt deployment does not work because windeployqt cannot be run
when cross compiling (unless Wine is used). Skip this step until
other solutions are investigated and this is fixed. This means
that the target system must have the Qt Windows SDK installed with
MinGW binaries.

Also skip crreating an installer. Has somewhat complicated requirements
for signing that currently don't work when cross-compiling.

This allows building a usable NSIS Windows installer from Fedora,
with the limitations mentioned above.

Ping #19108
2023-05-29 01:12:04 +00:00
João Valverde 155da04d67 CMake: Remove SKIP_QT_TRANSLATIONS
Now that 6.5.1 is released, remove the work-around but keep the
warning.
2023-05-29 01:12:04 +00:00
Gerald Combs fb1b022922 Packaging: Change our Windows installer filename format
Switch to Wireshark-<version>-{x64,arm64}.{exe,msi}.
2023-05-23 20:05:39 +00:00
João Valverde aa6b8368b7 MSYS2: Add support for building a stand-alone NSIS installer
This changes the existing code for the MSVC installer as little
as possible to allow building the Wireshark .exe Windows installer
using the MinGW-w64 toolchain.

Currently the DLL dependency list is static, this may change in
the future. Ideally we would use CPack and install() logic
to copy the DLLs.

The msys2checkdeps.py script is copied from the Inkscape project[1].
It doesn't have a specific license identifier. The Inkscape project
is licensed under the GPL version 2 or later.

TODO: Download Npcap and USBPcap using CMake instead of requiring
manual action.

[1]https://gitlab.com/inkscape/inkscape

Ping #17771.
2023-05-22 00:54:39 +01:00
João Valverde c66fc43e5b GUI: Ship authors as a Qt resource file 2023-01-20 13:35:03 +00:00
João Valverde 2ab291b3b2 GUI: Ship license + acknowledgements as Qt resource 2023-01-19 19:14:32 +00:00
João Valverde 277605ac57 Windows: Do not ship dftest in installers
DFTest is a developer-oriented utility and none of the other
platforms ship it to end-users.

Remove it from the windows installers.
2023-01-19 00:17:56 +00:00
Gerald Combs 963dba2d60 NSIS: Add an initial donation page.
Add a donation page to the Wireshark installer.
2022-12-15 08:36:50 +00:00
Pascal Quantin ae3f4832c5 Windows: install etwdump extcap utility by default
Now that Microsoft own documentation references this utility,
it probably makes sense to activate it by default
2022-11-04 23:30:56 +00:00
Chuck Craft 00179b710c NSIS: add Extcap group; tidy up other groups and WSUG
Partial fix for https://ask.wireshark.org/question/29063/
Event Tracing for Windows ETW file reader
Future work: add user friendly Extcap examples to WSUG and wiki
2022-10-31 12:14:34 +00:00
Branimir Rajtar 7b7aaf0fcf Update nsi files with 5x9 Radius dictionary 2022-10-10 08:17:03 +00:00
João Valverde b8ec3199ab Convert Acknowledgements to markdown and update GUI
Move Acknowledgements to a separate file to enable some code
simplification and improve maintenance and discoverability
for acknowlegements.

Convert the Acknowledgements file to Github flavored markdown
and display it in rich text using QTextBrowser.

Add Acknowledgements.md to NSIS installer
2022-08-02 00:09:29 +00:00
João Valverde ab77d11599 Windows: Add missing license file to installer 2022-07-27 22:27:50 +00:00
Alexis La Goutte ca178cf03a NSIS(wireshark): Remove QUICK LAUNCH
It is not longer (really) supported with Windows 10, now it is pinned Taskbar
2022-07-17 19:55:33 +00:00
Gerald Combs 5d61db3ad5 CMake+NSIS: More variable cleanup. 2022-06-07 18:24:59 -07:00
Gerald Combs 8c7e3f0d30 Packaging: Add a Logwolf NSIS config.
Create Logwolf-specific copies of the various Wireshark NSIS config files
and modify them to install and uninstall Logwolf. There are still a bunch
of rough edges, but the installer works for a test capture I have here.
2022-06-03 21:24:21 +00:00
Gerald Combs 06f0b78ce6 NSIS: Deprecate 32-bit installs.
Recommend 3.6 or earlier for 32-bit users.
2022-06-03 10:26:19 -07:00
Gerald Combs 9e7a2b7699 NSIS: Fix our indentation.
The NSIS project uses 2-space indentation. Make sure we conform to that.
2022-06-03 10:26:14 -07:00
Gerald Combs 056fd8a1e3 NSIS: Update some target and filenames.
Rename the following build targets, similar to the recent macOS target
name changes:

nsis_package_prep to wireshark_nsis_prep
nsis_package to wireshark_nsis

Rename some NSIS files to reflect that they're specific to Wireshark.
Update the documentation and CI configurations.
2022-06-02 16:33:31 -07:00
Chuck Craft 0c316ec1a9 NSIS/Wix: missing preferences file for Bluetooth profile 2022-04-07 22:09:02 +00:00
Adrian Granados 8622c92a75 extcap: new interface, wifidump, to capture Wi-Fi frames using a remote SSH host 2022-03-09 08:01:39 +00:00
Gerald Combs f405771abb Packaging: Fix some paths. 2022-03-08 19:36:20 -08:00
Gerald Combs e482b375f2 Rename the "image" directory to "resources".
The "image" directory contains resource compiler assets and other
application resources, so name it "resources."
2022-03-09 02:07:51 +00:00
Gerald Combs 91463dde4d NSIS: Use the correct Visual C++ Redistributable file name.
Make sure the file we attempt to execute is the one we include with
our installer. Fixes #17893.
2022-01-18 18:25:26 -08:00
Gerald Combs c65f0a5a15 Update our Npcap URLs.
The official Npcap web site is now https://npcap.com/. Update our URLs
to match. Fixes #17838.
2022-01-06 16:12:30 -08:00
Gerald Combs 797c66cc4c NSIS: Complain about installing a 32-bit Wireshark on 64-bit Windows.
Show a warning messagebox if we're installing a 32-bit executable on
64-bit Windows.
2021-12-29 23:30:55 +00:00
Gerald Combs 5e345d390b NSIS: Remove some confusing error message text.
If the Visual C++ Redistributable installation fails, don't point users
to KB2999226. It applied to Windows 8.1 and earlier, and is more likely
to cause confusion than help fix the problem. Ping #17748.
2021-11-28 21:31:35 +00:00
Martin Mathieson 54ac7b4424 Fix some spelling errors 2021-10-20 10:00:12 +01:00
Gerald Combs 2236009e21 Packaging: Add captype to the Windows installers.
Add captype and its documentation to the NSIS and WiX packages.
2021-10-13 17:54:02 +00:00
Chuck Craft eb83421c96 NSIS: expand title area for long program names that wrap
Release candidates (rc blah blah hash) or if WIRESHARK_VERSION_EXTRA
is set for the build, are wrapped/clipped to be unreadable.
2021-09-04 06:19:42 +00:00
Gerald Combs 6bfab69d14 Windows: Switch from HTML Help to plain HTML.
Switch from HTML Help to plain HTML files. In the NSIS and WiX installers,
place the help assets in a directory with a friendly name.
2021-06-04 08:57:32 +00:00