# This file lists libraries that we will assume to be present on the host system and hence
# should NOT be bundled inside AppImages. This is a working document; expect it to change
# over time. File format: one filename per line. Each entry should have a justification comment.

libc.so.6
# Workaround for:
# relocation error: usr/lib/libc.so.6: symbol _dl_starting_up, version GLIBC_PRIVATE not defined in file ld-linux-x86-64.so.2 with link time reference

libdl.so.2
# Workaround for:
# Segmentation fault

libstdc++.so.6
# Workaround for:
# usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.21' not found

libm.so.6
# Workaround for:
# relocation error: usr/lib/libm.so.6: symbol __get_cpu_features, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference

libpthread.so.0
# Workaround for:
# usr/bin/inkscape: relocation error: usr/lib/libpthread.so.0: symbol h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference

libresolv.so.2
# Workaround for:
# usr/lib/libresolv.so.2: symbol h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference

libGL.so.1
# Workaround for:
# Different distributions put dri/ libraries in different places, which are not found if we supply a bundled libGL.so.1
# /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
# /usr/lib64/dri/swrast_dri.so

libdrm.so.2
# Workaround for:
# Antergos Linux release 2015.11 (ISO-Rolling)
# /usr/lib/libdrm_amdgpu.so.1: error: symbol lookup error: undefined symbol: drmGetNodeTypeFromFd (fatal)
# libGL error: unable to load driver: swrast_dri.so
# libGL error: failed to load driver: swrast
# Unrecognized OpenGL version

libxcb.so.1
# Workaround for:
# Fedora 23
# symbol lookup error: /lib64/libxcb-dri3.so.0: undefined symbol: xcb_send_fd
# 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

libX11.so.6
# Workaround for:
# Fedora 23
# symbol lookup error: ./lib/libX11.so.6: undefined symbol: xcb_wait_for_reply64
# 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

libgio-2.0.so.0
# Workaround for:
# On Ubuntu, "symbol lookup error: /usr/lib/x86_64-linux-gnu/gtk-2.0/modules/liboverlay-scrollbar.so: undefined symbol: g_settings_new"

libgdk-x11-2.0.so.0
libgtk-x11-2.0.so.0
# Simply to reduce size - not known to cause issues

libasound.so.2
# Workaround for:
# No sound, e.g., in VLC.AppImage (does not find sound cards)

libgdk_pixbuf-2.0.so.0
# Workaround for:
# On Ubuntu, get (inkscape:25621): GdkPixbuf-WARNING **: Error loading XPM image loader: Image type 'xpm' is not supported

libfontconfig.so.1
# Workaround for:
# Application stalls when loading fonts during application launch; e.g., KiCad on ubuntu-mate

libselinux.so.1
# Workaround for:
# sed: error while loading shared libraries: libpcre.so.3: cannot open shared object file: No such file or directory

# The following are assumed to be part of the base system
# Removing these has worked e.g., for Krita. Feel free to report if
# you think that some of these should go into AppImages and why.
libcom_err.so.2
libcrypt.so.1
libexpat.so.1
libgcc_s.so.1
libglib-2.0.so.0
libgpg-error.so.0
libgssapi_krb5.so.2
# libgssapi.so.3 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
libhcrypto.so.4
# libheimbase.so.1 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
# libheimntlm.so.0 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
libhx509.so.5
libICE.so.6
libidn.so.11
libk5crypto.so.3
libkeyutils.so.1
libkrb5.so.26
libkrb5.so.3
libkrb5support.so.0
libm.so.6
libp11-kit.so.0
# libpcre.so.3 # Missing on Fedora 24 and on SLED 12 SP1
libpthread.so.0
libresolv.so.2
libroken.so.18
librt.so.1
# libsasl2.so.2 # Seemingly needed when running Ubuntu 14.04 binaries on Fedora 23
libSM.so.6
libusb-1.0.so.0
libuuid.so.1
libwind.so.0
libz.so.1

# Remove these libraries, we need to use the system versions; 
# this means that Ubuntu 11.04 is not supported (making 12.04 is our baseline)
libGL.so.1
libdrm.so.2

# Potentially dangerous libraries
libgobject-2.0.so.0

# Workaround for:
# e.g., Spotify
# relocation error: /lib/x86_64-linux-gnu/libgcrypt.so.20: 
# symbol gpgrt_lock_lock, version GPG_ERROR_1.0 not defined
# in file libgpg-error.so.0 with link time reference
libgpg-error.so.0

# Unsolved issue:
# https://github.com/probonopd/linuxdeployqt/issues/35
# Error initializing NSS with a persistent database (sql:/home/me/.pki/nssdb): libsoftokn3.so: cannot open shared object file: No such file or directory
# Error initializing NSS without a persistent database: NSS error code: -5925
# nss_error=-5925, os_error=0
# libnss3.so should not be removed from the bundles, as this causes other issues, e.g.,
# https://github.com/probonopd/linuxdeployqt/issues/35#issuecomment-256213517
# and https://github.com/probonopd/AppImages/pull/114
# libnss3.so

# Workaround for:
# Fedora 25:
# undefined symbol: xcb_send_request_with_fds
# https://github.com/probonopd/AppImages/issues/128
libxcb.so.1

# The following cannot be excluded, see
# https://github.com/probonopd/AppImages/commit/6c7473d8cdaaa2572248dcc53d7f617a577ade6b
# http://stackoverflow.com/questions/32644157/forcing-a-binary-to-use-a-specific-newer-version-of-a-shared-library-so
# libssl.so.1
# libssl.so.1.0.0
# libcrypto.so.1
# libcrypto.so.1.0.0
