From 8305c625102050fa7e49e4ea5789aa5d9bd37219 Mon Sep 17 00:00:00 2001 From: woodser Date: Sun, 26 Mar 2023 14:25:58 -0400 Subject: [PATCH] document packaging executable binaries --- desktop/package/README.md | 54 ++++++++++++++++++++++++++++++++++----- docs/developer-guide.md | 18 ++++++++----- docs/installing.md | 11 ++++---- 3 files changed, 63 insertions(+), 20 deletions(-) diff --git a/desktop/package/README.md b/desktop/package/README.md index 15dbdf7122..3fc7446584 100644 --- a/desktop/package/README.md +++ b/desktop/package/README.md @@ -1,12 +1,52 @@ -# Package Installers +Follow these instructions to package the Java desktop application as executable binaries. -Run `./gradlew packageInstallers` on the corresponding platform. Wix must be installed for Windows packaging. +## Linux -## Icons +1. `./gradlew packageInstallers` +2. Confirm prompts. +3. Path to installer printed at end. Execute to install: `sudo dpkg -i .deb` + +Haveno data folder: `/home//.local/share/Haveno/` + +## Mac + +1. `./gradlew packageInstallers` +2. Confirm prompts. +3. Path to installer printed at end. +4. `open ` +5. Open installer and drag Haveno.app to Applications. +6. `sudo xattr -rd com.apple.quarantine /Applications/Haveno.app` +7. Right click /Applications/Haveno.app > open. + +Haveno data folder: `/Users//Library/Application Support/Haveno/` + +## Windows + +1. Enable .NET Framework 3.5: + 1. Open the Control Panel on your Windows system. + 2. Click on "Programs and Features" or "Uninstall a Program." + 3. On the left-hand side, click on "Turn Windows features on or off." + 4. In the "Windows Features" dialog box, scroll down and find the ".NET Framework 3.5 (includes .NET 2.0 and 3.0)" option. + 5. Check the box next to it to select it. + 6. Click "OK" to save the changes and exit the dialog box. + 7. Windows will download and install the required files and components to enable the .NET Framework 3.5. This may take several minutes, depending on your internet connection speed and system configuration. + 8. Once the installation is complete, you will need to restart your computer to apply the changes. +2. Install wix: https://wixtoolset.org +3. Open MSYS2 for the following commands. +4. `export PATH=$PATH:$JAVA_HOME/bin:"C:\Program Files (x86)\WiX Toolset v3.11\bin"` +5. `./gradlew packageInstallers` +6. Confirm prompts. +7. Path to installer printed at end. Execute to install. + +Haveno data folder: `~\AppData\Roaming\Haveno\` + +## Additional Notes + +### Icons Icons (Haveno.zip) were obtained from https://github.com/haveno-dex/haveno-meta/issues/1#issuecomment-819741689. -### Linux +#### Linux The linux package requires the correct packaging tools installed. You may run into the following errors: @@ -33,16 +73,16 @@ This may happen if the source folder is on a different hard drive than the syste export _JAVA_OPTIONS="-Djava.io.tmpdir=/storage/tmp" ``` -### MacOs +#### MacOs Svg was converted into a 1024x1024 pixel PNG using https://webkul.github.io/myscale/, then converted to icns for macosx here https://cloudconvert.com/png-to-icns -#### Known Issues +##### Known Issues Signing is not implemented. -### Windows +#### Windows Pngs were resized and pasted into the WixUi images using paint. [CloudConvert](https://cloudconvert.com) was used to convert the Haveno png icon to ico. diff --git a/docs/developer-guide.md b/docs/developer-guide.md index af5499cc89..ecd4d71a22 100644 --- a/docs/developer-guide.md +++ b/docs/developer-guide.md @@ -2,25 +2,25 @@ This document is a guide for Haveno development. -## Installing and testing Haveno +## Install and test Haveno [Build Haveno and join the test network or test locally](installing.md). -## Running the UI proof of concept +## Run the UI proof of concept Follow [instructions](https://github.com/haveno-dex/haveno-ts#run-in-a-browser) to run Haveno's UI proof of concept in a browser. This proof of concept demonstrates using Haveno's gRPC server with a web frontend (react and typescript) instead of Haveno's JFX application. -## Importing Haveno into development environment +## Import Haveno into development environment Follow [instructions](import-haveno.md) to import Haveno into a development environment. -## Running end-to-end API tests +## Run end-to-end API tests Follow [instructions](https://github.com/haveno-dex/haveno-ts#run-tests) to run end-to-end API tests in the UI project. -## Adding new API functions and tests +## Add new API functions and tests 1. Follow [instructions](https://github.com/haveno-dex/haveno-ts#run-tests) to run Haveno's existing API tests successfully. 2. Define the new service or message in Haveno's [protobuf definition](../proto/src/main/proto/grpc.proto). @@ -34,7 +34,7 @@ Follow [instructions](https://github.com/haveno-dex/haveno-ts#run-tests) to run 9. Run the tests with `npm run test -- -t 'my test'` to run tests by name and `npm test` to run all tests together. Ensure all tests pass and there are no exception stacktraces in the terminals of Alice, Bob, or the arbitrator. 10. Open pull requests to the haveno and haveno-ts projects for the backend and frontend implementations. -## How to manually sign accounts as the arbitrator +## Manually sign accounts as the arbitrator 1. Open legacy UI as the arbitrator. 2. Go to the 'Account' tab. @@ -43,7 +43,11 @@ Follow [instructions](https://github.com/haveno-dex/haveno-ts#run-tests) to run b. Sign account age witness: `ctrl+p` then enter , (from past trade details) and click the "Import unsigned account age witness" button. c. Sign unsigned witness pub keys: `ctrl+o` -## How to rebase and squash your commits +## Package executable binaries + +See [instructions](/desktop/package/README.md). + +## Rebase and squash your commits When submitting a pull request for review, please first rebase and squash your commits. diff --git a/docs/installing.md b/docs/installing.md index a81a6dfcd3..6729df44ee 100644 --- a/docs/installing.md +++ b/docs/installing.md @@ -8,12 +8,11 @@ On Ubuntu: `sudo apt install make wget git openjdk-11-jdk` On Windows: - 1. Download [Java JDK 11](https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_windows-x64_bin.zip) and extract to C:\Program Files\Java\jdk-11.0.2. - 2. Add a new user environment variable called `JAVA_HOME` with value `C:\Program Files\Java\jdk-11.0.2` (Windows search > "Edit the system environment variables" > Environment variables...) - 3. Install [MSYS2](https://www.msys2.org/). - 4. Start MSYS2 MINGW64 or MSYS MINGW32 depending on your system. Use MSYS2 for all commands throughout this document. - 5. Update pacman: `pacman -Syy` - 6. Install dependencies. During installation, use default=all by leaving the input blank and pressing enter. + 1. Download [Java JDK 11](https://adoptium.net/temurin/archive/?version=11). During installation, enable the option to set the $JAVA_HOME environment variable. + 2. Install [MSYS2](https://www.msys2.org/). + 3. Start MSYS2 MINGW64 or MSYS MINGW32 depending on your system. Use MSYS2 for all commands throughout this document. + 4. Update pacman: `pacman -Syy` + 5. Install dependencies. During installation, use default=all by leaving the input blank and pressing enter. 64-bit: `pacman -S mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake git`