Skip to content

Commit 98deaba

Browse files
committed
qt/linux: don't bundle libwayland-client.so.0
This fixes this crash: ``` BitBox: symbol lookup error: /lib/x86_64-linux-gnu/libEGL_mesa.so.0: undefined symbol: wl_display_create_queue_with_name ``` which is likely caused by the target system having a newer version of Mesa that is incompatible with the verison of libwayland-client.so.0 that we bundled.
1 parent 32ed238 commit 98deaba

File tree

3 files changed

+12
-4
lines changed

3 files changed

+12
-4
lines changed

CHANGELOG.md

+3
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
- Reduced support for BitBox01
55
- Fix a bug that would prevent the app to perform firmware upgrade when offline.
66

7+
# v4.47.2
8+
- Linux: fix compatiblity with some versions of Mesa that are incompatible with the bundled wayland libraries
9+
710
# 4.47.1
811
- Linux: fix support for Wayland
912
- Linux: release device upon app close, enabling other apps to connect to the BitBox after the BitBoxApp closes

backend/update.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ const updateFileURL = "https://bitboxapp.shiftcrypto.io/desktop.json"
2727

2828
var (
2929
// Version of the backend as displayed to the user.
30-
Version = semver.NewSemVer(4, 47, 1)
30+
Version = semver.NewSemVer(4, 47, 2)
3131
)
3232

3333
// UpdateFile is retrieved from the server.

frontends/qt/Makefile

+8-3
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,15 @@ linux:
3333
# Add Wayland libs so the app can run natively on Wayland too.
3434
# The linuxdeployqt maintainer unfortunately refuses to support it automatically: https://github.com/probonopd/linuxdeployqt/issues/189
3535
# The list of related plugins was found by: `find $(qmake -query QT_INSTALL_PLUGINS) | grep wayland`
36+
#
37+
# Exclude libwayland-client.so.0, see https://github.com/AppImageCommunity/pkg2appimage/commit/15a64c20dc23a0154622ba25829364323903b6b5,
38+
# but that is yet in the default exclusion lib of linuxdeployqt.
39+
# See also: https://github.com/probonopd/linuxdeployqt/issues/631 - we can remove the libwayland-client.so.0 exclusion once this is merged and we updated our linuxdeployqt binary.
3640
cd build/linux-tmp && /opt/linuxdeployqt-continuous-x86_64.AppImage BitBox \
3741
-bundle-non-qt-libs \
3842
-unsupported-allow-new-glibc \
39-
-extra-plugins=platforms/libqwayland-generic.so,platforms/libqwayland-egl.so,wayland-graphics-integration-client,wayland-decoration-client,wayland-shell-integration
43+
-extra-plugins=platforms/libqwayland-generic.so,platforms/libqwayland-egl.so,wayland-graphics-integration-client,wayland-decoration-client,wayland-shell-integration \
44+
-exclude-libs=libwayland-client.so.0
4045
cp /usr/lib/x86_64-linux-gnu/nss/* build/linux-tmp/lib
4146
# See https://github.com/probonopd/linuxdeployqt/issues/554#issuecomment-1761834180
4247
cp "$(shell qmake -query QT_INSTALL_DATA)/resources/v8_context_snapshot.bin" build/linux-tmp/resources
@@ -45,8 +50,8 @@ linux:
4550
cp resources/linux/usr/share/icons/hicolor/128x128/apps/bitbox.png build/linux-tmp
4651
mkdir build/tmp-deb/opt/
4752
cp -aR build/linux-tmp build/tmp-deb/opt/bitbox
48-
cd build/linux && fpm --after-install ../../resources/deb-afterinstall.sh -s dir -t deb -n bitbox -v 4.47.1 -C ../tmp-deb/
49-
cd build/linux && fpm --after-install ../../resources/deb-afterinstall.sh -s dir -t rpm -n bitbox -v 4.47.1 -C ../tmp-deb/
53+
cd build/linux && fpm --after-install ../../resources/deb-afterinstall.sh -s dir -t deb -n bitbox -v 4.47.2 -C ../tmp-deb/
54+
cd build/linux && fpm --after-install ../../resources/deb-afterinstall.sh -s dir -t rpm -n bitbox -v 4.47.2 -C ../tmp-deb/
5055
# create AppImage
5156
cd build/linux-tmp && /opt/linuxdeployqt-continuous-x86_64.AppImage BitBox -appimage -unsupported-allow-new-glibc
5257
mv build/linux-tmp/BitBoxApp-*-x86_64.AppImage build/linux/

0 commit comments

Comments
 (0)