-
-
Notifications
You must be signed in to change notification settings - Fork 569
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixed build and packaging issues #246
Conversation
A more in depth review will come soon. Thank you so much for all the work! |
for localization compatibility
A little recap: I've reviewed part of the PR but still a considerable part is missing and I'll do it in the next few days. I've just opened a (still incomplete) issue to track all the missing steps related to packaging: #252 Since various problems are going to be solved by this PR, I'm looking forward to release a new version ASAP after merge (so don't worry to much about the other steps for the moment). Thanks very much again 👍 |
It'll be merged in |
This patch addresses some cross-building and packaging issues, including: #47, #199, #220, #224, #225, #242, and rust-pcap/pcap#290.
Changes:
libssl.so*
) and it utilizes therust-tls
instead.resources/packaging/
installs the Npcap automaticallydisplays a notice about the need for manual Npcap installation and opens its official website for the user.sudo
.+ Some adjustments on PowerShell scripts, WXS template of WixToolset, info files, etc.
Hacks:
v0.8
oflibpcap
, the linker sets this version of the library (libpcap.so.0.8
) as the dependency of the ELF executable. That won't work on Redhat-based distros as they usually come withv1.x
. Therefore, I've changed it tolibpcap.so
manually which is symlinked to the actual installed version.To-Do:
Since the app doesn't have an icon in the Windows taskbar, I've tried to set the icon on the window settings of Iced, but I had to comment it out since it made the executable not work after compiling. I'm already in discussion with the Iced community to find a solution...xprop WM_CLASS
), hence theStartupWMClass=sniffnet
that I had set in the.desktop
file wouldn't work.Known Issues:
cargo bundle
command carries out an unavoidable extra build since it doesn't come with a--no-build
flag, unlike other packaging tools. (already sent a feature request)Tests
Other than the minor issues mentioned above, both the installer and the app are tested on a fresh installation of Debian, Ubuntu, and Fedora Linux distros as well as macOS and Windows 11. Feedback from other testers is highly appreciated!
Screenshots:
Footnotes
macOS and Redhat-based Linux distros only support 64-bit CPUs, and since most Windows machines are using x86 CPU families, we only provide packages for them. ↩
Developers would need
build-essential libfreetype6-dev, libexpat1-dev, libpcap-dev, libasound2-dev, libfontconfig1-dev
packages on Debian-based distros and@development-tools, expat-devel, libpcap-devel, alsa-lib-devel, fontconfig-devel
on Redhat-based distros in order to develop this app on Linux. But end users only require the non-development version of the dependencies:libpcap0.8, libasound2, libfontconfig1
for Debiab-based distros andlibpcap, alsa-lib, fontconfig
for Redhat-based. ↩