annotate deploy/linux/appimage-excludelist @ 737:4f3a8aa8d384 tip

Markdown
author Chris Cannam
date Wed, 28 Aug 2019 17:40:54 +0100
parents c39a04fed8b2
children
rev   line source
Chris@700 1 # This file lists libraries that we will assume to be present on the host system and hence
Chris@700 2 # should NOT be bundled inside AppImages. This is a working document; expect it to change
Chris@700 3 # over time. File format: one filename per line. Each entry should have a justification comment.
Chris@700 4
Chris@700 5 # See the useful tool at https://abi-laboratory.pro/index.php?view=navigator&symbol=hb_buffer_set_cluster_level#result
Chris@700 6 # to investigate issues with missing symbols.
Chris@700 7
Chris@700 8 ld-linux.so.2
Chris@700 9 ld-linux-x86-64.so.2
Chris@700 10 libanl.so.1
Chris@700 11 libBrokenLocale.so.1
Chris@700 12 libcidn.so.1
Chris@700 13 libcrypt.so.1
Chris@700 14 libc.so.6
Chris@700 15 libdl.so.2
Chris@700 16 libm.so.6
Chris@700 17 libmvec.so.1
Chris@723 18 # libnsl.so.1 # Not part of glibc anymore as of Fedora 28. See https://github.com/RPCS3/rpcs3/issues/5224#issuecomment-434930594
Chris@700 19 libnss_compat.so.2
Chris@700 20 libnss_db.so.2
Chris@700 21 libnss_dns.so.2
Chris@700 22 libnss_files.so.2
Chris@700 23 libnss_hesiod.so.2
Chris@700 24 libnss_nisplus.so.2
Chris@700 25 libnss_nis.so.2
Chris@700 26 libpthread.so.0
Chris@700 27 libresolv.so.2
Chris@700 28 librt.so.1
Chris@700 29 libthread_db.so.1
Chris@700 30 libutil.so.1
Chris@700 31 # These files are all part of the GNU C Library which should never be bundled.
Chris@700 32 # List was generated from a fresh build of glibc 2.25.
Chris@700 33
Chris@700 34 libstdc++.so.6
Chris@700 35 # Workaround for:
Chris@700 36 # usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.21' not found
Chris@700 37
Chris@700 38 libGL.so.1
Chris@723 39 libEGL.so.1
Chris@700 40 # Part of the video driver (OpenGL); present on any regular
Chris@700 41 # desktop system, may also be provided by proprietary drivers.
Chris@700 42 # Known to cause issues if it's bundled.
Chris@700 43
Chris@700 44 libdrm.so.2
Chris@700 45 # Workaround for:
Chris@700 46 # Antergos Linux release 2015.11 (ISO-Rolling)
Chris@700 47 # /usr/lib/libdrm_amdgpu.so.1: error: symbol lookup error: undefined symbol: drmGetNodeTypeFromFd (fatal)
Chris@700 48 # libGL error: unable to load driver: swrast_dri.so
Chris@700 49 # libGL error: failed to load driver: swrast
Chris@700 50 # Unrecognized OpenGL version
Chris@700 51
Chris@700 52 libglapi.so.0
Chris@700 53 # Part of mesa
Chris@700 54 # known to cause problems with graphics, see https://github.com/RPCS3/rpcs3/issues/4427#issuecomment-381674910
Chris@700 55
Chris@700 56 libxcb.so.1
Chris@700 57 # Workaround for:
Chris@700 58 # Fedora 23
Chris@700 59 # symbol lookup error: /lib64/libxcb-dri3.so.0: undefined symbol: xcb_send_fd
Chris@700 60 # Uncertain if this is required to be bundled for some distributions - if so we need to write a version check script and use LD_PRELOAD to load the system version if it is newer
Chris@700 61 # Fedora 25:
Chris@700 62 # undefined symbol: xcb_send_request_with_fds
Chris@700 63 # https://github.com/AppImage/AppImages/issues/128
Chris@700 64
Chris@700 65 libX11.so.6
Chris@700 66 # Workaround for:
Chris@700 67 # Fedora 23
Chris@700 68 # symbol lookup error: ./lib/libX11.so.6: undefined symbol: xcb_wait_for_reply64
Chris@700 69 # Uncertain if this is required to be bundled for some distributions - if so we need to write a version check script and use LD_PRELOAD to load the system version if it is newer
Chris@700 70
Chris@700 71 libgio-2.0.so.0
Chris@700 72 # Workaround for:
Chris@700 73 # On Ubuntu, "symbol lookup error: /usr/lib/x86_64-linux-gnu/gtk-2.0/modules/liboverlay-scrollbar.so: undefined symbol: g_settings_new"
Chris@700 74
Chris@700 75 # libgdk-x11-2.0.so.0 # Missing on openSUSE-Tumbleweed-KDE-Live-x86_64-Snapshot20170601-Media.iso
Chris@700 76 # libgtk-x11-2.0.so.0 # Missing on openSUSE-Tumbleweed-KDE-Live-x86_64-Snapshot20170601-Media.iso
Chris@700 77
Chris@700 78 libasound.so.2
Chris@700 79 # Workaround for:
Chris@700 80 # No sound, e.g., in VLC.AppImage (does not find sound cards)
Chris@700 81
Chris@700 82 libgdk_pixbuf-2.0.so.0
Chris@700 83 # Workaround for:
Chris@700 84 # On Ubuntu, get (inkscape:25621): GdkPixbuf-WARNING **: Error loading XPM image loader: Image type 'xpm' is not supported
Chris@700 85
Chris@700 86 libfontconfig.so.1
Chris@700 87 # Workaround for:
Chris@700 88 # Application stalls when loading fonts during application launch; e.g., KiCad on ubuntu-mate
Chris@700 89
Chris@700 90 libthai.so.0
Chris@700 91 # Workaround for:
Chris@700 92 # audacity: /tmp/.mount_AudaciUsFbON/usr/lib/libthai.so.0: version `LIBTHAI_0.1.25' not found (required by /usr/lib64/libpango-1.0.so.0)
Chris@700 93 # on openSUSE Tumbleweed
Chris@700 94
Chris@700 95 # other "low-level" font rendering libraries
Chris@700 96 # should fix https://github.com/probonopd/linuxdeployqt/issues/261#issuecomment-377522251
Chris@700 97 # and https://github.com/probonopd/linuxdeployqt/issues/157#issuecomment-320755694
Chris@700 98 libfreetype.so.6
Chris@700 99 libharfbuzz.so.0
Chris@700 100
Chris@700 101 # Note, after discussion we do not exlude this, but we can use a dummy library that just does nothing
Chris@700 102 # libselinux.so.1
Chris@700 103 # Workaround for:
Chris@700 104 # sed: error while loading shared libraries: libpcre.so.3: cannot open shared object file: No such file or directory
Chris@700 105 # Some distributions, such as Arch Linux, do not come with libselinux.so.1 by default.
Chris@700 106 # The solution is to bundle a dummy mock library:
Chris@700 107 # echo "extern int is_selinux_enabled(void){return 0;}" >> selinux-mock.c
Chris@700 108 # gcc -s -shared -o libselinux.so.1 -Wl,-soname,libselinux.so.1 selinux-mock.c
Chris@700 109 # strip libselinux.so.1
Chris@700 110 # More information: https://github.com/AppImage/AppImages/issues/83
Chris@700 111
Chris@700 112 # The following are assumed to be part of the base system
Chris@700 113 # Removing these has worked e.g., for Krita. Feel free to report if
Chris@700 114 # you think that some of these should go into AppImages and why.
Chris@700 115 libcom_err.so.2
Chris@700 116 libcrypt.so.1
Chris@700 117 libexpat.so.1
Chris@700 118 libgcc_s.so.1
Chris@700 119 libglib-2.0.so.0
Chris@700 120 libgpg-error.so.0
Chris@700 121 # libgssapi_krb5.so.2 # Disputed, seemingly needed by Arch Linux since Kerberos is named differently there
Chris@700 122 # libgssapi.so.3 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
Chris@700 123 # libhcrypto.so.4 # Missing on openSUSE LEAP 42.0
Chris@700 124 # libheimbase.so.1 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
Chris@700 125 # libheimntlm.so.0 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
Chris@700 126 # libhx509.so.5 # Missing on openSUSE LEAP 42.0
Chris@700 127 libICE.so.6
Chris@700 128 # libidn.so.11 # Does not come with Solus by default
Chris@700 129 # libk5crypto.so.3 # Runnning AppImage built on Debian 9 or Ubuntu 16.04 on an Archlinux fails otherwise; https://github.com/AppImage/AppImages/issues/301
Chris@700 130 libkeyutils.so.1
Chris@700 131 # libkrb5.so.26 # Disputed, seemingly needed by Arch Linux since Kerberos is named differently there. Missing on openSUSE LEAP 42.0
Chris@700 132 # libkrb5.so.3 # Disputed, seemingly needed by Arch Linux since Kerberos is named differently there
Chris@700 133 # libkrb5support.so.0 # Disputed, seemingly needed by Arch Linux since Kerberos is named differently there
Chris@700 134 libp11-kit.so.0
Chris@700 135 # libpcre.so.3 # Missing on Fedora 24, SLED 12 SP1, and openSUSE Leap 42.2
Chris@700 136 # libroken.so.18 # Mission on openSUSE LEAP 42.0
Chris@700 137 # libsasl2.so.2 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
Chris@700 138 libSM.so.6
Chris@700 139 libusb-1.0.so.0
Chris@700 140 libuuid.so.1
Chris@700 141 # libwind.so.0 # Missing on openSUSE LEAP 42.0
Chris@700 142 libz.so.1
Chris@700 143
Chris@700 144 # Potentially dangerous libraries
Chris@700 145 libgobject-2.0.so.0
Chris@700 146
Chris@700 147 # Workaround for:
Chris@700 148 # Rectangles instead of fonts
Chris@700 149 # https://github.com/AppImage/AppImages/issues/240
Chris@700 150 libpangoft2-1.0.so.0
Chris@700 151 libpangocairo-1.0.so.0
Chris@700 152 libpango-1.0.so.0
Chris@700 153
Chris@700 154 # Workaround for:
Chris@700 155 # e.g., Spotify
Chris@700 156 # relocation error: /lib/x86_64-linux-gnu/libgcrypt.so.20:
Chris@700 157 # symbol gpgrt_lock_lock, version GPG_ERROR_1.0 not defined
Chris@700 158 # in file libgpg-error.so.0 with link time reference
Chris@700 159 libgpg-error.so.0
Chris@700 160
Chris@700 161 libjack.so.0
Chris@700 162 # it must match the ABI of the JACK server which is installed in the base system
Chris@700 163 # rncbc confirmed this
Chris@700 164
Chris@700 165 # Unsolved issue:
Chris@700 166 # https://github.com/probonopd/linuxdeployqt/issues/35
Chris@700 167 # Error initializing NSS with a persistent database (sql:/home/me/.pki/nssdb): libsoftokn3.so: cannot open shared object file: No such file or directory
Chris@700 168 # Error initializing NSS without a persistent database: NSS error code: -5925
Chris@700 169 # nss_error=-5925, os_error=0
Chris@700 170 # libnss3.so should not be removed from the bundles, as this causes other issues, e.g.,
Chris@700 171 # https://github.com/probonopd/linuxdeployqt/issues/35#issuecomment-256213517
Chris@700 172 # and https://github.com/AppImage/AppImages/pull/114
Chris@700 173 # libnss3.so
Chris@700 174
Chris@700 175 # The following cannot be excluded, see
Chris@700 176 # https://github.com/AppImage/AppImages/commit/6c7473d8cdaaa2572248dcc53d7f617a577ade6b
Chris@700 177 # http://stackoverflow.com/questions/32644157/forcing-a-binary-to-use-a-specific-newer-version-of-a-shared-library-so
Chris@700 178 # libssl.so.1
Chris@700 179 # libssl.so.1.0.0
Chris@700 180 # libcrypto.so.1
Chris@700 181 # libcrypto.so.1.0.0
Chris@723 182
Chris@723 183 # The following may be spefific to a particular GPU and may need to be excluded
Chris@723 184 # according to https://github.com/RicardoEPRodrigues/3Engine/issues/4#issuecomment-402532194
Chris@723 185 # libGLEW.so.2.0 # to be confirmed
Chris@723 186
Chris@723 187 # libglut.so.3 # to be confirmed
Chris@723 188
Chris@723 189 libxcb-dri3.so.0 # https://github.com/AppImage/AppImages/issues/348