[Debian-on-mobile-maintainers] Bug#1016534: osk-sdl: "failed to open iris" cannot use it
realroot
scorpion2185 at protonmail.com
Tue Aug 2 15:39:08 BST 2022
Package: osk-sdl
Version: 0.67-1
Severity: important
Tags: patch
X-Debbugs-Cc: scorpion2185 at protonmail.com
Dear Maintainer,
I see the error:
MESA-DRIVER: failed to open iris: /usr/lib/dri/iris_dri.so
But I have it so you need to add in /usr/share/initramfs/hooks/osk-sdl at line
67:
copy_exec "$libdir/dri/iris_dri.so"
-- System Information:
Debian Release: bookworm/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 5.18.0-3-amd64 (SMP w/4 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages osk-sdl depends on:
ii cryptsetup 2:2.4.3-1+b1
ii cryptsetup-initramfs 2:2.4.3-1
ii fonts-dejavu-core 2.37-2
ii libc6 2.33-8
ii libcryptsetup12 2:2.4.3-1+b1
ii libegl1 1.4.0-1
ii libgcc-s1 12.1.0-7
ii libgl1 1.4.0-1
ii libgles2 1.4.0-1
ii libsdl2-2.0-0 2.0.22+dfsg-6
ii libsdl2-ttf-2.0-0 2.20.0+dfsg-1
ii libstdc++6 12.1.0-7
osk-sdl recommends no packages.
osk-sdl suggests no packages.
-- no debconf information
-------------- next part --------------
#!/bin/sh
PREREQ=""
prereqs()
{
echo "$PREREQ"
}
case "$1" in
prereqs)
prereqs
exit 0
;;
esac
. /usr/share/initramfs-tools/hook-functions
# Many dri modules are kmsro, use a symlink there
dri_inst() {
so_src="${libdir}/dri/$1"
shift
sos=$@
so_sum=$(md5sum "${so_src}" | awk '{ print $1 }')
copy_exec "${so_src}"
for so in $sos; do
if [ "$(md5sum "${libdir}/dri/${so}" | awk '{ print $1 }')" = "${so_sum}" ]; then
ln -s "$(basename "${so_src}")" "${DESTDIR}/${libdir}/dri/${so}"
else
copy_exec "${libdir}/dri/${so}"
fi
done
}
IMX_KMSRO="etnaviv_dri.so imx-drm_dri.so imx-dcss_dri.so mxsfb-drm_dri.so"
case "$DPKG_ARCH" in
arm64)
libdir=/usr/lib/aarch64-linux-gnu
# Pinephone
if grep -q "allwinner" /proc/device-tree/compatible 2>/dev/null; then
copy_exec "$libdir/dri/sun4i-drm_dri.so"
copy_exec "$libdir/libGLESv2.so.2"
manual_add_modules goodix goodix_ts
# Librem 5 and Librem 5 Devkit
elif grep -q "imx" /proc/device-tree/compatible 2>/dev/null; then
dri_inst ${IMX_KMSRO}
copy_exec "$libdir/libGLESv2.so.2"
manual_add_modules edt-ft5x06 goodix pwm_vibra goodix_ts
# PinePhone Pro
elif grep -q "PinePhonePro" /proc/device-tree/model 2>/dev/null; then
dri_inst ${IMX_KMSRO} panfrost_dri.so rockchip_dri.so
copy_exec "$libdir/libGLESv2.so.2"
manual_add_modules goodix pwm_vibra goodix_ts
# Generic / Installer (needs to include all of the above)
else
dri_inst ${IMX_KMSRO} sun4i-drm_dri.so panfrost_dri.so rockchip_dri.so
copy_exec "$libdir/libGLESv2.so.2"
manual_add_modules edt-ft5x06 goodix pwm_vibra goodix_ts
fi
;;
amd64)
libdir=/usr/lib/x86_64-linux-gnu
copy_exec "$libdir/dri/vmwgfx_dri.so"
copy_exec "$libdir/dri/virtio_gpu_dri.so"
copy_exec "$libdir/dri/i965_dri.so"
copy_exec "$libdir/dri/iris_dri.so"
copy_exec "$libdir/dri/kms_swrast_dri.so"
copy_exec "$libdir/libGLESv2.so.2"
;;
*)
echo "osk-sdl unsupported arch: $DPKG_ARCH"
exit 0
;;
esac
find -L "$libdir" -name "libGL*.so*" -o -name "libEGL*.so*" -o -name "libEGL_mesa.so*" -type f | while read -r so; do
copy_exec "$so"
done
if ! copy_exec /usr/bin/osk-sdl; then
echo "ERROR: Couldn't copy /bin/osk-sdl" >&2
exit 1
fi
if ! copy_file text /etc/osk.conf; then
echo "ERROR: Couldn't copy config file for osk-sdl: /etc/osk.conf"
exit 1
fi
if ! copy_exec /usr/share/initramfs-tools/scripts/osk-sdl-keyscript; then
echo "ERROR: Couldn't copy osk-sdl keyscript" >&2
exit 1
fi
copy_exec /sbin/dmsetup
# GLVND config needed for EGL
[ -f /usr/share/glvnd/egl_vendor.d/50_mesa.json ] && copy_file text /usr/share/glvnd/egl_vendor.d/50_mesa.json
ttf_font=$(sed -ne 's/^keyboard-font\s*=\s*\(.*\)/\1/p' /etc/osk.conf)
if [ -n "${ttf_font}" ]; then
copy_file font "$ttf_font"
else
echo "ERROR: No font specified in /etc/osk.conf" >&2
exit 1
fi
# crypto modules
manual_add_modules dm_mod
manual_add_modules dm_crypt
copy_modules_dir "kernel/crypto"
copy_modules_dir "kernel/arch/$DPKG_ARCH/crypto"
# Input Driver
manual_add_modules evdev
More information about the Debian-on-mobile-maintainers
mailing list