From c3f720a7b9cde55c9dd4371c0cd24d32a18e5254 Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Fri, 17 Sep 2021 14:08:10 -0700 Subject: Start building Qt5 and PySide2 in snapcraft package instead of installing from PyPi --- RELEASE.md | 8 ++------ snap/snapcraft.yaml | 36 ++++++++++++++++++++++++++++++++++-- 2 files changed, 36 insertions(+), 8 deletions(-) diff --git a/RELEASE.md b/RELEASE.md index 948b5713..a86842b5 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -50,6 +50,7 @@ Make sure snapcraft packaging works. In `snap/snapcraft.yaml`: - [ ] The `tor`, `libevent`, and `obfs4` parts should be updated if necessary - [ ] All python packages should be updated to match `cli/pyproject.toml` and `desktop/pyproject.toml` - [ ] Test the snap package, ensure it works +- [ ] Change `grade: devel` to `grade: stable` Finally: @@ -90,12 +91,7 @@ Run the OnionShare snap locally: /snap/bin/onionshare.cli # CLI version ``` -Upload the to Snapcraft: - -```sh -snapcraft login -snapcraft upload --release=stable onionshare_$VERSION_amd64.snap -``` +Login to snapcraft.io, wait for the CI builds to finish, and then in the Releases tab promote the release to stable. ## Linux AppImage release diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index e339168a..e3147532 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -44,7 +44,6 @@ parts: python-version: python3 python-packages: - psutil - - pyside2 == 5.15.2 - qrcode stage-packages: - libasound2 @@ -108,7 +107,7 @@ parts: - libxslt1.1 - libxtst6 - qtwayland5 - after: [onionshare-cli] + after: [onionshare-cli, pyside2] onionshare-cli: source: ./cli @@ -139,6 +138,39 @@ parts: - -usr/share/doc/libssl1.1/changelog.Debian.gz after: [tor, obfs4] + qt5: + source: git://code.qt.io/qt/qt5.git + source-type: git + source-tag: v5.15.2 + plugin: autotools + build-packages: + - python3 + - libwayland-dev + - libwayland-egl1 + - libgl1-mesa-dev + - libglu1-mesa-dev + override-build: | + perl init-repository -f + mkdir build + cd build + ../configure -opensource -confirm-license -nomake examples -nomake tests -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcanvas3d -skip qtcharts -skip qtconnectivity -skip qtdatavis3d -skip qtdoc -skip qtdocgallery -skip qtfeedback -skip qtgamepad -skip qtlocation -skip qtlottie -skip qtpurchasing -skip qtquick3d -skip qtquickcontrols -skip qtquickcontrols2 -skip qtquicktimeline -skip qtremoteobjects -skip qtspeech -skip qtwebengine -skip qtwebglplugin -skip qtwebview + make -j$(nproc) + make install + + pyside2: + source: https://code.qt.io/pyside/pyside-setup.git + source-type: git + source-tag: "5.15.2" + build-packages: + - cmake + plugin: python + python-version: python3 + python-packages: + - packaging + - setuptools + - wheel + after: [qt5] + tor: source: https://dist.torproject.org/tor-0.4.6.7.tar.gz source-checksum: sha256/ff665ce121b2952110bd98b9c8741b5593bf6c01ac09033ad848ed92c2510f9a -- cgit v1.2.3-54-g00ecf