.. _client-guide-installation: Installation ############# The Nano Client is available in prebuilt binary distribution packages for major platforms. Most users will wish to use these for convenience. People who wish to install from source can find the guide here as well. Either way, download the files of your choice from the :site_url:`download ` page. Common Criteria Certification ============================== Some versions of the Nano client will be CC certified. You can see the certified versions on the :site_url:`download ` page. Keep in mind, that only the binary software distributions are covered by the CC certification of any version of Nano. To check if your Nano is certified, open the "About" window and verify that your version was published with CC certification. Furthermore, the "Common Criteria" tab in the "About" window gives a summary and lists the relevant configuration that are necessary for CC certificated operation. Overview of the relevant configuration(s): - `Require explicit peer trust`: This configuration changes the identity verification policy of Nano from trust-on-first-use (TOFU) to verified-only. If it is switched on, no peer may request anything from the Nano from any room unless the owner has verified their identity in the web application. .. ATTENTION:: The "Identity verification" functions are only available as technology preview in the web application. The experimental "Identity Signature" feature in the "Advanced Settings" must be switched on to access them. Installing binaries ==================== The prebuilt applications have all of their dependencies bundled. They should work if the OS requirements are met. Windows ******** For Windows the prebuilt application is available as an installer executable. Launching it will prompt the user for elevated permissions, where the identity of the publisher is displayed for verification and the signing certificate can be inspected further. The installer will extract the application into the `Program Files` and create a start-menu shortcut. Creating a desktop and an auto-start on login shortcut can be disabled. macOS ****** For macOS there are two `dmg` (virtual disk image) files available. One for Intel (64bit) systems and the other for the new Apple Silicone (M1) systems. Download the image of the application corresponding to your device. Double-clicking on the downloaded file will verify and mount the distribution image. It will contain the Nano client application called `Clarabot Nano` and a link to your `Applications` folder. Dragging the `Clarabot Nano` to the `Applications` folder copies it to the system conveniently. The `Gatekeeper` will verify and prompt you when running the application for the very first time. Linux ****** For Linux we provide an AppImage containing the application. It is built on a fairly EOL distribution so most systems should have no trouble running it. To verify the AppImage, its checksum file shall be downloaded as well. By using the `sha384sum` utility (or relevant alternate for the checksum file) the integrity of the AppImage can be verified. Example of invoking the utility and successful output: :: $ sha384sum -c clarabot-nano-1.1.0-amd64.AppImage.sha384 clarabot-nano-1.1.0-amd64.AppImage: OK On recently released systems some compatibility packages may be needed for running it, like `libxcrypt-compat` on Arch Linux. Installing from source ======================= This guide is applicable to all platforms, but it focuses on Linux. This guide is a simple recommendation to give an overview of the steps necessary, but other customizations and configurations are possible. Prerequisites ************** - Python version 3.10 - wxWidgets 3+ (for compiling wxPython) - protobuf library (for compiling gcld3) - dbus library (for compiling dbus-python) - OpenJDK (Java) 11 Installation steps ******************* 1. Download the latest source package of `clarabot-nano` and `clarabot-crypto` from the :site_url:`downloads ` page 2. Create virtualenv for nano installation :code:`python3.10 -m venv ~/.nano && source ~/.nano/bin/activate` 3. Install the `wheel` package before any other :code:`pip install wheel` 4. Install `clarabot-crypto` and `clarabot-nano` packages :code:`pip install clarabot-crypto-X.X.X-src.zip clarabot-crypto-X.X.X-src.zip` 5. Launch `clarabot_nano`. It will stop with an error at this point, but it will bootstrap the local configuration. Close it :code:`python -m clarabot_nano` 6. Download `Apache Tika 2.6.0 `_ and `Apache Solr 8.11.2 `_. These version are what get bundled with binary distribution currently. Newer updates to these major releases may work as well. 7. Create directories for solr and tika :code:`mkdir ~/.nano/tika ~/.nano/solr` 8. Copy `tika-server-standard-X.X.X.jar` to `~/.nano/tika/` 9. Extract `solr-X.X.X.tgz` and copy the contents of the extracted `solr-X.X.X` directory to `~/.nano/solr/`. :code:`cd ~/.nano/solr && tar --strip-components=1 -xf solr-X.X.X.tgz` 10. Edit :code:`~/.config/clarabot/nano/local.yml` by uncommenting and setting :code:`solr_bundle_dir` to :code:`/home/YOUR_USERNAME/.nano/solr` and :code:`tika_bundle_dir` to :code:`/home/YOUR_USERNAME/.nano/tika`. They are at the bottom of the file. 11. Start nano with :code:`python -m clarabot_nano` OR Create script to start nano by saving the following to a file, set execute permissions with :code:`chmod +x filename`, then double-click on the file to run nano :: #!/bin/bash source ~/.nano/bin/activate python -m clarabot_nano After installation =================== After starting the application, log in with your Nano user account credentials. If you don't have a Nano account set up, make sure to do so by following the steps explained in the :ref:`getting-started-registration` chapter. The Nano Client comes with a default configuration wizard. The wizard will help you in setting up your client for first time general usage.