-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Retroarch AppImage does not start with video driver set to vulkan on Linux/mesa/RADV #13714
Comments
Also retroarch works fine with |
I hit either this or a similar issue packaging a vulkan-based game, and found this issue when searching for a solution. One of my players figured out that removing libwayland-client.so.0 from the appimage for my game got it working. I can't easily test this myself, but if there is in fact a libwayland-client.so.0 in this RetroArch build, and if removing/repacking the image fixes this, it might be worth following AppImageCommunity/pkg2appimage#510. |
I've extracted the appimage, dumped the binary into the lib dir and removed libwayland-client.so.0 and retroarch boots correctly under vulkan just as it does from the flatpack and steam builds. |
Here is a script to re-create the #!/usr/bin/env bash
set -e
mkdir -p workdir
cd workdir
# Get AppImage of retroarch
wget -q --show-progress --progress=bar:noscroll -O retroarch.AppImage "https://github.com/hizzlekizzle/RetroArch-AppImage/releases/download/Linux_LTS_Nightlies/RetroArch-Linux-x86_64-Nightly.AppImage"
chmod +x ./retroarch.AppImage
# Extract
./retroarch.AppImage --appimage-extract
# Erase downloaded appimage
rm retroarch.AppImage
# Erase problematic file
rm squashfs-root/usr/lib/libwayland-client.so.0
# Create AppDir
mv squashfs-root AppDir
# Get appimagetool
wget -q --show-progress --progress=bar:noscroll -O appimagetool https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage
chmod +x appimagetool
# Create new fixed appimage
./appimagetool AppDir
mv ./*.AppImage ..
cd ..
rm -rf workdir
|
Sus, why are you getting this old AppImage from some random person. Official is https://buildbot.libretro.com/nightly/linux/x86_64/RetroArch.7z |
That random person is the guy who set up the appimage builds in the first place. |
Hi, this is the first link that appears when you search for retroarch appimages, I didn't know that there were more recent builds. Thanks for pointing this out :) |
This is still a problem with version 1.14.0. Thanks |
Still experiencing this issue specifically on the steam deck, so I updated the script to work with the latest nightly build. For some reason this doesn't work with the QT version, but the regular download works fine on vulkan after libwayland-client.so.0 is removed. #!/usr/bin/env bash
set -e
mkdir -p workdir
cd workdir
# Get AppImage of retroarch
wget -q --show-progress --progress=bar:noscroll "https://buildbot.libretro.com/nightly/linux/x86_64/RetroArch.7z"
7z x RetroArch.7z
mv RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/ .
chmod +x ./RetroArch-Linux-x86_64.AppImage
# Extract
./RetroArch-Linux-x86_64.AppImage --appimage-extract
# Erase downloaded appimage
rm RetroArch-Linux-x86_64.AppImage
# Erase problematic file
rm squashfs-root/usr/lib/libwayland-client.so.0
# Create AppDir
mv squashfs-root AppDir
# Get appimagetool
wget -q --show-progress --progress=bar:noscroll -O appimagetool https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage
chmod +x appimagetool
# Create new fixed appimage
./appimagetool AppDir
mv RetroArch-Linux-x86_64.AppImage.home RetroArch-x86_64.AppImage.home
mv ./*.AppImage RetroArch-x86_64.AppImage.home ..
cd ..
rm -rf workdir And I've been using the lower script to update. Just run it from the same directory the AppImage is in. Conveniently they have an update 7z file available, so this doesn't overwrite any configs. All it does is extract the archive, patch the new AppImage, and overwrite it on top of old files in the retroarch directory with any new ones. #!/usr/bin/env bash
set -e
mkdir -p workdir
cd workdir
# Get AppImage of retroarch
wget -q --show-progress --progress=bar:noscroll "https://buildbot.libretro.com/nightly/linux/x86_64/RetroArch_update.7z"
7z x RetroArch_update.7z
mv RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage RetroArch-Linux-x86_64/RetroArch-Linux-x86_64.AppImage.home/ .
chmod +x ./RetroArch-Linux-x86_64.AppImage
# Extract
./RetroArch-Linux-x86_64.AppImage --appimage-extract
# Erase downloaded appimage
rm RetroArch-Linux-x86_64.AppImage
# Erase problematic file
rm squashfs-root/usr/lib/libwayland-client.so.0
# Create AppDir
mv squashfs-root AppDir
# Get appimagetool
wget -q --show-progress --progress=bar:noscroll -O appimagetool https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage
chmod +x appimagetool
# Create new fixed appimage
./appimagetool AppDir
mv RetroArch-Linux-x86_64.AppImage.home RetroArch-x86_64.AppImage.home
cd ..
cp -R workdir/RetroArch-x86_64.AppImage.home/ .
mv workdir/*.AppImage .
rm -rf workdir |
The scripts work for me on the Steam Deck. @hizzlekizzle Any possibility that this can be done upstream so the user doesn't have to? |
I believe the problem is that without that file, the appimage won't work on other distros/devices. |
is it worth simply building two appimages (one with the file, one without), and on the download page indicate which distros each is known to work with? |
This is still an issue with the beta steamOS 3.6 for Steam Deck. |
Do you have both amdvlk and vulkan-radeon packages installed? That caused issue with me on Arch, even though the Steam version worked, so I had to uninstall amdvlk for RA to work with vulkan enabled. |
An appimage (I built it) that worked on the Steamdeck in July stopped working in this manner after I updated my Steamdeck. That would lead me to believe it's some conflict with a newer version of the wayland file on the host, even if wayland isn't being used. Modifying as said here #13714 (comment) allows the appimage to work in my case. |
From the 11/6 Nightly (with this commit ae20251) onwards, I am now able to use the build straight from buildbot on the Steam Deck with vulkan. |
Description
With
video_driver = "vulkan"
set Retroarch immediately crashes, it does not even start.Vulkan works with literally everything else on my system.
Expected behavior
Retroarch starts.
Actual behavior
It crashes.
Steps to reproduce the bug
Bisect Results
Version/Commit
This happens on latest 2022-03-08 nightly and 1.9.14 stable, I have not tried any older.
Environment information
The text was updated successfully, but these errors were encountered: