diff --git a/setup.py b/setup.py index 9eb750c3..2d00ea6d 100755 --- a/setup.py +++ b/setup.py @@ -271,6 +271,11 @@ def makeMinimalPackage(): ] with ZipFile(outFile, "w", compression=ZIP_DEFLATED, compresslevel=9) as zipObj: + for nRoot, _, nFiles in os.walk("setup"): + print("Compressing: %s [%d files]" % (nRoot, len(nFiles))) + for aFile in nFiles: + zipObj.write(os.path.join(nRoot, aFile)) + for nRoot, _, nFiles in os.walk("nw"): if nRoot.endswith("__pycache__"): print("Skipping: %s" % nRoot) diff --git a/setup/README.md b/setup/README.md index 45aaf397..e49a670e 100644 --- a/setup/README.md +++ b/setup/README.md @@ -10,7 +10,7 @@ options: ### General -`help` – Print the help message +`help` – Print the help message. `pip` – Install all package dependencies for novelWriter using pip. @@ -26,14 +26,17 @@ creating sample projects in the in-app New Project Wizard. ### Python Packaging +`minimal-zip` – Creates a minimal zip file of the core application without all +the other source files. + `pack-pyz` – Creates a pyz package in a folder with all dependencies using the -zipapp tool. This option is intended for Windows deployment. +zipapp tool. On Windows, python embeddable is added to the folder. `freeze` – Freeze the package and produces a folder with all dependencies using the pyinstaller tool. This option is not designed for a specific OS. `onefile` – Build a standalone executable with all dependencies bundled using -the pyinstaller tool. Implies `freeze`, cannot be used with `setup-exe` +the pyinstaller tool. Implies `freeze`, cannot be used with `setup-exe`. ### General Installers @@ -44,7 +47,9 @@ install. `xdg-install` – Install launcher and icons for freedesktop systems. Run as root or with sudo for system-wide install, or as user for single user install. -### Windows Installers +`win-install` – Install desktop and start menu icons for Windows systems. + +### "Windows Installers `setup-exe` – Build a Windows installer from a pyinstaller freeze package using Inno Setup. This option automatically disables `onefile`. diff --git a/setup/icons/scaled/icon-novelwriter-192.png b/setup/icons/scaled/icon-novelwriter-192.png new file mode 100644 index 00000000..c4161426 Binary files /dev/null and b/setup/icons/scaled/icon-novelwriter-192.png differ diff --git a/setup/icons/scaled/mime-novelwriter-192.png b/setup/icons/scaled/mime-novelwriter-192.png new file mode 100644 index 00000000..7a65986d Binary files /dev/null and b/setup/icons/scaled/mime-novelwriter-192.png differ