Start building Qt5 and PySide2 in snapcraft package instead of installing from PyPi

This commit is contained in:
Micah Lee 2021-09-17 14:08:10 -07:00
parent a291aa5843
commit c3f720a7b9
No known key found for this signature in database
GPG Key ID: 403C2657CD994F73
2 changed files with 36 additions and 8 deletions

View File

@ -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

View File

@ -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