diff --git a/README.md b/README.md index 100f072..be39ca7 100644 --- a/README.md +++ b/README.md @@ -84,6 +84,8 @@ PyInstaller is used to build Windows executables and binaries for Linux/macOS. The use of CustomTkinter dictates that some extra options need to be defined to ensure non-Python files are included in the binary, otherwise they will not execute correctly. +**NOTE** when building on Linux, you must use a flavour of Linux with fontconfig version 2.13.1 or later, otherwise users of newer Linux flavours will receive warnings or exceptions relating to the "description" element in the configuration. + ### Build script A build script "build_app.py" has been written to make the build process simpler, and relies on a virtual environment being setup in a directory called "venv" within the EX-Installer repository directory. @@ -93,7 +95,7 @@ The script will refer to the "version.py" file mentioned above, so this needs to To run the script, you need to pass the EX-Installer repository directory and the platform being built for: ```shell -python build_app.py -D -P +python build_app.py -D -P ``` ### Building manually @@ -108,7 +110,6 @@ These directories are referenced in the commands below: - Win64 - Windows 64 bit - Win32 - Windows 32 bit - Linux64 - Linux 64 bit - - Linux32 - Linux 32 bit - macOS - macOS (64 bit only) The build commands should be executed in a command prompt or terminal window in the directory containing the cloned repository. diff --git a/build_app.py b/build_app.py index 93ec56b..625811f 100644 --- a/build_app.py +++ b/build_app.py @@ -37,8 +37,8 @@ # Create the argument parser and add the various required arguments parser = argparse.ArgumentParser() -parser.add_argument("-P", "--platform", help="Platform type: Win32|Win64|Linux32|Linux64|macOS", - choices=["Win32", "Win64", "Linux32", "Linux64", "macOS"], required=True, +parser.add_argument("-P", "--platform", help="Platform type: Win32|Win64|Linux64|macOS", + choices=["Win32", "Win64", "Linux64", "macOS"], required=True, dest="platform") parser.add_argument("-D", "--directory", help="Directory containing the cloned repository and virtual environment", required=True, diff --git a/dist/EX-Installer-Linux64 b/dist/EX-Installer-Linux32 similarity index 73% rename from dist/EX-Installer-Linux64 rename to dist/EX-Installer-Linux32 index 649967e..bb07b8b 100755 Binary files a/dist/EX-Installer-Linux64 and b/dist/EX-Installer-Linux32 differ diff --git a/dist/EX-Installer-Win32.exe b/dist/EX-Installer-Win32.exe new file mode 100644 index 0000000..776bd30 Binary files /dev/null and b/dist/EX-Installer-Win32.exe differ diff --git a/ex_installer/version.py b/ex_installer/version.py index 41d6684..a045546 100644 --- a/ex_installer/version.py +++ b/ex_installer/version.py @@ -14,6 +14,7 @@ 0.0.17 - Move fonts to a separate common class - Change default font to Arial for Windows/Mac and FreeSans for Linux + - Update various modules versions to resolve Dependapot identified vulnerabilities 0.0.16 - Implement less restrictive matching for context highlights in Device Monitor - Implement device specific restrictions and recommendations: - Uno/Nano disable TrackManager, select disable EEPROM/PROG options by default diff --git a/requirements.txt b/requirements.txt index 12a0335..31069f1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,12 +1,12 @@ -aiohttp==3.8.1 +aiohttp==3.9.2 aiosignal==1.3.1 altgraph==0.17.3 async-timeout==4.0.2 attrs==23.1.0 -certifi==2023.5.7 +certifi==2023.7.22 cffi==1.15.1 charset-normalizer==2.1.1 -cryptography==40.0.2 +cryptography==41.0.6 CTkMessagebox==2.0 customtkinter==5.1.2 darkdetect==0.8.0 @@ -15,17 +15,17 @@ frozenlist==1.3.3 idna==3.4 multidict==6.0.4 pefile==2023.2.7 -Pillow==9.5.0 +Pillow==10.2.0 pycparser==2.21 pygit2==1.12.1 -pyinstaller==5.11.0 +pyinstaller==5.13.1 pyinstaller-hooks-contrib==2023.3 PyJWT==2.7.0 PyNaCl==1.5.0 pyserial==3.5 -pywin32-ctypes==0.2.0 +pywin32-ctypes==0.2.1 requests==2.31.0 typing_extensions==4.6.2 -urllib3==2.0.2 +urllib3==2.0.7 wrapt==1.15.0 yarl==1.9.2