openstenoproject / plover

Open source stenotype engine
http://opensteno.org/plover
GNU General Public License v2.0
2.33k stars 281 forks source link

Does not build on Debian Bullseye #1641

Open aaron-michaux opened 11 months ago

aaron-michaux commented 11 months ago

Describe the bug

The script linux/appimage/build.sh has the following line:

run cp -a "$pyprefix/lib/$pyldlib"* "$pyprefix/lib/$pypy3lib" "$pydist/lib/"

This will fail on Debian Bullseye (10), because the python3 binary does not link to libpython*.so. That is, the copy command fails because the files being copied don't exist, and are not needed. This can be fixed:

run cp -a "$pyprefix/lib/$pyldlib"* "$pyprefix/lib/$pypy3lib" "$pydist/lib/" || true

To Reproduce

On Debian Bullseye

linux/appimage/build.sh --python /usr/bin/python3 --wheel dist/plover-4.0.0rc2-py3-none-any.whl

Expected behavior

The App image should build.

Operating system

Hardware

x86_64

aaron-michaux commented 11 months ago

As a general note, it would be helpful if the AppImages were built against a conservative glibc... so, for example, using CentOS.

This is because, unfortunately, glibc cannot be statically linked.

Alternatively, the AppImage could be built on AlpineLinux, which is based on musl, which can be statically linked, which means that the AppImage depends only on the kernel itself.