Appimage builds #28
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "appimage"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
this should in in theory work but i'm unsure, and i'm sure this could be improved
@ -76,0 +99,4 @@
echo "Unexpected PLATFORM_NAME "$PLATFORM_NAME""
exit 1
fi
if
build-appimage.sh
does not have the exec bit set, set it, prior to callng it.@ -131,0 +164,4 @@
# Add to release output
pushd publish_ava_appimage
mv Ryujinx.AppImage ../release_output/ryujinx-$BUILD_VERSION-$ARCH_NAME.AppImage
mv Ryujinx.AppImage.zsync ../release_output/ryujinx-$BUILD_VERSION-$ARCH_NAME.AppImage.zsync
same:
@ -0,0 +1,3 @@
#!/bin/sh
CURRENTDIR="$(readlink -f "$(dirname "$0")")"
exec "$CURRENTDIR"/usr/bin/Ryujinx.sh "$@"
not absolutely necessary to create an AppRun, if this is all you are doing. But it can stay in case you want to add more functionality in the future.
otherwise
ln -s AppDir/usr/bin/Ryujinx.sh AppDir/AppRun
@ -0,0 +16,4 @@
cp src/Ryujinx.UI.Common/Resources/Logo_Ryujinx.png AppDir/Ryujinx.svg
cp -r "$BUILDDIR"/* AppDir/usr/bin/
publish_ava creates a publish folder inside.
to capture the contents inside the folder.
PR will fail until PR https://github.com/GreemDev/Ryujinx/pull/31 is merged or you make the formatting and whitespace fixes.
Then your PR should build an AppImage.
And you have to set the path to upload the artifact as PR/Release build.
@ -76,0 +99,4 @@
echo "Unexpected PLATFORM_NAME "$PLATFORM_NAME""
exit 1
fi
it should have the exec bit set but it wouldn't hurt to double check it
@ -131,0 +164,4 @@
# Add to release output
pushd publish_ava_appimage
mv Ryujinx.AppImage ../release_output/ryujinx-$BUILD_VERSION-$ARCH_NAME.AppImage
mv Ryujinx.AppImage.zsync ../release_output/ryujinx-$BUILD_VERSION-$ARCH_NAME.AppImage.zsync
it should have the exec bit set but it wouldn't hurt to double check it
@ -0,0 +1,3 @@
#!/bin/sh
CURRENTDIR="$(readlink -f "$(dirname "$0")")"
exec "$CURRENTDIR"/usr/bin/Ryujinx.sh "$@"
i think it should stay just in case more functionality wants to be added down the road
@ -0,0 +16,4 @@
cp src/Ryujinx.UI.Common/Resources/Logo_Ryujinx.png AppDir/Ryujinx.svg
cp -r "$BUILDDIR"/* AppDir/usr/bin/
idk how i missed this
The packaging looks good now.
Forgot to add earlier, the log files/folder needs to be directed out of the publish folder, now located in
AppDir/usr/bin
, because it will cause a segfault due to trying to write to a read-only location.The project this is based on used a flag for Flatpak, which had the same issue.
Should set the Flatpak channel flag, or use custom code to create logs in XDG_DATA_HOME folder.
Download the artifacts for this pull request:
GUI-less (SDL2)
Only for Developers
this shouldn't be needed as it should default to
$HOME/.config/Ryujinx
@qurious-pixel This infra was from myself & @Samueru-sama's changes in ryujinx-mirror. There ended up being issues with just symlinking stuff for
appimagetool
, resulting in non-local AppImage builds simply not working due to invalid symlinks. (Why appimageool doesn't just follow symlinks like normal I have no clue) I'm unsure ifAppRun
really is necessary, so I'd just leave everything as-is from ryujinx-mirror.The appimage works for me including creating the logs folder in
$HOME/.config/Ryujinx
.The AppRun as designed accomodates running the extracted image, while appimagetool will create a relative symlink to binary if none is provided.
The zsync file doesn't need to be included in the zip, and should probably be uploaded as an artifact when published as a release. (to use with AppImageUpdate)
@regginator linuxdeploy is more robust at following symlinks, but I have used both tools for different goals.
@ -0,0 +13,4 @@
cp distribution/linux/Ryujinx.desktop AppDir/Ryujinx.desktop
cp distribution/linux/appimage/AppRun AppDir/AppRun
cp src/Ryujinx.UI.Common/Resources/Logo_Ryujinx.png AppDir/Ryujinx.svg
You might want to change this to
AppDir/Ryujinx.png
as well.And also add
ln -s Ryujinx.png AppDir/.DirIcon
@ -0,0 +13,4 @@
cp distribution/linux/Ryujinx.desktop AppDir/Ryujinx.desktop
cp distribution/linux/appimage/AppRun AppDir/AppRun
cp src/Ryujinx.UI.Common/Resources/Logo_Ryujinx.png AppDir/Ryujinx.svg
after discussion i have decided to keep it as svg for scaling reasons