PyInstaller packaging method triggers false positives on VirusTotal. Alternate methods -- such as using Py2EXE or Nuitka don't completely solve the problem.
Use Case
As a PIIDigger, common anti-virus programs should not trigger a potential virus alert.
Requirements
Packaging should be accomplished with Embedded Python. An alternate build_windows_embedded.ps1 script will be used to package all of the necessary dependencies from the .venv\Lib\site-packages folder along with the PIIDigger Python source and the Python embedded runtime binaries. A launcher script (piidigger.cmd) will be used to launch PIIDigger from the correct path.
Inputs
build_windows_embedded.ps1 will receive the following variables when called from the command line:
arch -- The system architecture to use. This will be used to pull the correct Python Embedded directly from Python.org
py_Version -- The version of the Python runtime to download. This will be used to pull the correct Python Embedded directly from Python.org
venv -- the relative path to the virtual environment used to build PIIDigger. this will be used to copy the \Lib\site-packages* files into the bin\ folder alongside the Python runtime binaries.
Outputs
A completed dist\piidigger-<arch> folder will contain PIIDigger and all necessary dependencies. GitHub Actions will prepare this folder as piidigger-<arch>.zip.
Problem
PyInstaller packaging method triggers false positives on VirusTotal. Alternate methods -- such as using Py2EXE or Nuitka don't completely solve the problem.
Use Case
As a PIIDigger, common anti-virus programs should not trigger a potential virus alert.
Requirements
Packaging should be accomplished with Embedded Python. An alternate
build_windows_embedded.ps1
script will be used to package all of the necessary dependencies from the.venv\Lib\site-packages
folder along with the PIIDigger Python source and the Python embedded runtime binaries. A launcher script (piidigger.cmd
) will be used to launch PIIDigger from the correct path.Inputs
build_windows_embedded.ps1
will receive the following variables when called from the command line:arch
-- The system architecture to use. This will be used to pull the correct Python Embedded directly from Python.orgpy_Version
-- The version of the Python runtime to download. This will be used to pull the correct Python Embedded directly from Python.orgvenv
-- the relative path to the virtual environment used to build PIIDigger. this will be used to copy thebin\
folder alongside the Python runtime binaries.Outputs
A completed
dist\piidigger-<arch>
folder will contain PIIDigger and all necessary dependencies. GitHub Actions will prepare this folder aspiidigger-<arch>.zip
.