Graphical Installer

From Nxt Wiki
Jump to: navigation, search

1 Introduction

The integrated installer compliments the installation zip file with a more user friendly alternative. It effectively replaces the "Wesley" installer which is difficult to maintain and therefore always lags few versions behind the official zip.

The new installer provides the following advantages:

(1) All installation scripts and meta data are part of the core NXT code

(2) Installer is 100% reproducible

(3) Installation is digitally signed

(3) The installation is based on two open source tools IzPack and JavaExe

(4) The installer is Java based, it supports Windows, Linux and Mac.

(5) The installer bundles a Java Server JRE for Windows.

Installation is composed of the following steps

1. Language Selection

2. Welcome page

3. License agreement

4. Change log

5. Installation path selection

6. Node Configuration

7. Desktop shortcuts

On Windows platforms the installer supports the following features:

  • Wizard based installation
  • Start menu and desktop icons
  • Automatic installation of Java JRE
  • Creation of nxt.exe Windows executable which launches the server
  • System tray icons used for monitoring and management
  • Ability to run the server as a Windows service (so that it continues to run when the user logoff the workstation)
  • Ability to run the server on Windows without administrator rights

The installer is provided in the following flavors:

1. Windows executable - bundles a Java JRE and intended for normal Windows users.

2. Mac OS/X disk image - provides the installer as an OS/X App which installs the NXT App together with a JRE.

3. Java Jar file - smaller bundle without JRE designed for power users and Linux and Mac users

All versions of the installer are generated by the same build script and therefore contain identical content. The Windows executable and Mac disk image are larger since they include two copies of the Java JRE, one used to launch the server and another to invoke the installer itself.

The Jar file installation is compatible with Windows, Linux and Mac. To invoke it, open a command prompt, make sure Java 8 JRE is in your path, then execute the following command: java -jar <installer.name>.jar

On Windows, run the NXT server from the desktop icon or by executing nxt.exe installed in the installation root folder. In response an NXT icon will show up in the system tray and the following folders are created in the user profile folder, typically under c:\users\<UserName>\AppData\Roaming\NXT folder:

conf - contains the user configuration files nxt.properties and logging.properties

logs - contains the server logs

nxt_db - mainnet database

nxt_test_db - testnet database

Additional diagnostic information about the server, can be obtained from the files nxt.system.out.*.log and nxt.system.err.*.log in the Windows %TEMP% folder which capture the standard output and error streams. These files are especially useful to review environment information and diagnose startup problems.

In its default configuration, the server does not create or modify any files under the installation folder.

2 System tray support

On Windows and Mac workstations and possibly on Linux systems which support this functionality, starting the server will create an NXT tray icon which supports the following functions:

1. Monitor the server status

2. View log files

3. Launch the client wallet in a browser

4. Shutdown the server

3 Limitations

1. Uninstall from the Windows control panel does not clean all installed folders. You can manually remove the remaining files

2. In some cases, desktop shortcut icons, require a refresh of the desktop before the NXT icon becomes visible

3. The installer does not detect if NXT is already running on the workstation, always stop any running instances of NXT before attempting to install a new version

4 Windows Service

Running the server as a Windows service provides background operation of the server allowing the user to logoff the workstation while the server is still running. It also allows the server to automatically start after a workstation restart.

To register the NXT server as a windows service, invoke nxtservice.exe from the installation folder. Answer "Yes" to the confirmation prompt. The service is automatically registered and started.

Invoke nxtservice.exe again to unregister the service.

You can control the service operation and settings using the standard Windows Service dialog. Look for the "NXT Server" service.

When running as a windows service, the blockchain database and log files are created in the NXT installation folder itself since the service is not associated with any specific user.

When running as a windows service, the system tray icon is not displayed.

5 Console Installation

On Unix system which has no graphical environment, invoke the installer from the command line with the -console flag. i.e. java -jar nxt-client-<version>.jar -console

6 Support for Windows 32 bit

The installer executable bundles a Java 64 bit JRE therefore it won't work on a 32 bit Windows workstation.

To run NXT on a Windows 32 bit workstation, install Java 8 manually then install NXT from the Jar file.