= Hatch Install Documentation = This documentation assumes Windows users will use the Hatch Windows installer. The Linux-only steps can also be done on Windows, but are not documented here. == Install Java == === Windows === Windows only requires a JRE to run Hatch, not a full JDK. Download and install JRE version 1.8 or higher from (for example) http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html[oracle.com]. === Linux === [source,sh] ------------------------------------------------------------------------- # Debian/Ubuntu version $ sudo apt-get install openjdk-8-jdk openjfx ------------------------------------------------------------------------- == Install Hatch == === Windows === Execute the 'Hatch Installer.exe' executable. NOTE: See installer/windows/README.adoc for building the Windows installer from Linux or Windows. When building the Windows installer on Windows, the full JDK will be required (for compiling Java). === Linux === [source,sh] ------------------------------------------------------------------------- $ ./hatch.sh compile ------------------------------------------------------------------------- ==== Optional: Test Hatch ==== NOTE: print commands are disabled by default in the tests to avoid unexpected printing, but they can be added by un-commenting them in src/org/evergreen_ils/hatch/TestHatch.java and recompiling. [source,sh] ------------------------------------------------------------------------- $ mkdir -p ~/.evergreen $ ./hatch.sh test ------------------------------------------------------------------------- == Install Chrome Extension [Windows & Linux] == . Open Chrome/Chromium and navigate to chrome://extensions . Enable "Developer Mode" along the top right of the page. . Click the "Load Unpacked Extension..." button. . Load the directory at Hatch => extension => app .. In Windows, the default location for the app directory will be C:\Program Files (x86)\Hatch\extension\app === Optional: Debugging The Chrome Extension === * Click the "Background Page" link to see the exension console. * When the extension is loaded (or reloaded), it should show "Connecting to native messaging host: org.evergreen_ils.hatch" in the Background Page console with no errors. * Use the "Reload" link to apply local changes made to the extension (e.g. main.js). * See also https://developer.chrome.com/extensions/getstarted === Linux: Configure Native Messaging === Edit extension/host/org.evergreen_ils.hatch.json and change the "path" value to match the location of your copy of "hatch.sh", found in the root directory of the Hatch repository. Copy the host file into Chrome's configuration directory. For Chrome: [source,sh] ------------------------------------------------------------------------- $ mkdir -p ~/.config/google-chrome/NativeMessagingHosts/ $ cp extension/host/org.evergreen_ils.hatch.json ~/.config/google-chrome/NativeMessagingHosts/ ------------------------------------------------------------------------- For Chromium: [source,sh] ------------------------------------------------------------------------- $ mkdir -p ~/.config/chromium/NativeMessagingHosts/ $ cp extension/host/org.evergreen_ils.hatch.json ~/.config/chromium/NativeMessagingHosts/ ------------------------------------------------------------------------- == Using Hatch == NOTE: At time of writing, the Evergreen server used must have the patches included in the http://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/berick/lp1646166-hatch-2.12-omnibus[Hatch 2.12 Omnibus Branch]. * In Chrome, navigate to the browser staff URL (https://HOSTNAME/eg/staff/). * Open the Javascript console. It should show messages like: [source,sh] ------------------------------------------------------------------------- Loading Hatch relay content script ... sending to Hatch: {"key":"eg.workstation.all","action":"get","msgid":1} ... Hatch responded to message ID 1 ------------------------------------------------------------------------- * Enable Hatch features by navigating to https://HOSTNAME/eg/staff/admin/workstation/hatch. * To determine if Hatch can see your printer(s), navigate to https://HOSTNAME/eg/staff/admin/workstation/print/config ** The "Select Printer" drop-down should show your printer(s). ** The various printer attribute selectors should show values supported by the selected printer.