From 208d615ad0d1bda60723a40d09f1b2ca2cd5bcfe Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Sun, 1 Nov 2020 10:13:58 -0800 Subject: Add desktop documentation about building CLI wheel, and make CircleCI tests build CLI wheel first as well --- .circleci/config.yml | 4 ++++ desktop/README.md | 35 +++++++++++++++++++---------------- 2 files changed, 23 insertions(+), 16 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index f8df8451..2c47bfc5 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -50,6 +50,10 @@ jobs: command: | sudo apt-get update sudo apt-get install -y xvfb tor obfs4proxy gcc python3-dev + cd ~/repo/cli + poetry install + poetry build + cp dist/onionshare_cli-*.whl ~/repo/desktop cd ~/repo/desktop pip install briefcase pytest pytest-briefcase pytest-faulthandler pytest-qt pip install $(python -c 'import toml; print(" ".join(toml.loads(open("pyproject.toml").read())["tool"]["briefcase"]["app"]["onionshare"]["requires"]))') diff --git a/desktop/README.md b/desktop/README.md index b1b36956..cf3c4113 100644 --- a/desktop/README.md +++ b/desktop/README.md @@ -34,7 +34,15 @@ python scripts\get-tor-windows.py ### Prepare the code -#### All platforms +In order to work with the desktop app, you'll need to build a wheel of the CLI package first, and copy it into the `desktop` folder: + +```sh +cd ../cli +poetry install +poetry build +cp dist/onionshare_cli-*.whl ../desktop +cd ../desktop +``` OnionShare uses [Briefcase](https://briefcase.readthedocs.io/en/latest/). @@ -42,21 +50,16 @@ Install Briefcase dependencies by following [these instructions](https://docs.be Now create and/or activate a virtual environment. -#### Linux and macOS - -``` -python3 -m venv venv -. venv/bin/activate -``` - -#### Windows - -``` -python -m venv venv -venv\Scripts\activate.bat -``` - -#### All platforms +* Linux and macOS + ``` + python3 -m venv venv + . venv/bin/activate + ``` +* Windows + ``` + python -m venv venv + venv\Scripts\activate.bat + ``` While your virtual environment is active, install briefcase from pip. -- cgit v1.2.3-54-g00ecf