Files
novelWriter/setup

Build and Install novelWriter

The root folder of the repository contains two scripts for setup and install:

Script setup.py

The setup.py is a standard Python setup script with a couple of additional options:

  • qthelp: Will attempt to build a single file QtAssistand documentation file. This requires the Qt tools to be installed on the local system, as well as the sphinx build tools for the documentation.
  • sample: Will create a sample.zip file in the nw/assets folder. This is the file the New Project Wizard uses to generate an example project. If novelWriter is run from source, this file is not needed.
  • launcher: Will try to copy the novelWriter icons and create a novelWriter.desktop file to launch the application. This should work on standard Linux desktops.

To install novelWriter as a local Python package, run:

sudo python setup.py install

Script make.py

The make.py script provides a number of convenient options for building packages if novelWriter.

Usage:

python make.py [command]

It currently accept the following commands:

  • help: Print the help message.
  • freeze: Freeze the package and produces a folder of all dependencies using pyinstaller.
  • onefile: Build a standalone executable with all dependencies bundled. Implies freeze, cannot be used with setup.
  • pip: Run pip to install all package dependencies for novelWriter and this build tool.
  • setup: Build a setup.exe installer for Windows. This option automaticall disables the onefile option.
  • clean: This will attempt to delete the build and dist folders in the current folder.

For instance, to create a Windows installer, run:

python make.py freeze setup