xash3d-fwgs/scripts/flatpak/su.xash.Engine.Compat.i386.yml

93 lines
3.2 KiB
YAML

app-id: su.xash.Engine.Compat.i386
runtime: org.freedesktop.Platform
runtime-version: &runtime-version '23.08'
x-gl-version: &gl-version '1.4'
x-gl-versions: &gl-versions 23.08;1.4
sdk: org.freedesktop.Sdk
command: run.sh
separate-locales: false
sdk-extensions:
- org.freedesktop.Sdk.Compat.i386
- org.freedesktop.Sdk.Extension.toolchain-i386
finish-args:
- --share=ipc
- --socket=wayland
- --socket=x11
- --socket=pulseaudio
- --share=network
# Steam library path on Ubuntu
- --filesystem=~/.steam/steam/steamapps/common:ro
# ... on SteamOS 3
- --filesystem=~/.local/share/Steam/steamapps/common:ro
# ... on Steam Flatpak
- --filesystem=~/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common:ro
# allow talking with Discord for mods
# TODO: enable when somebody asks for it
# - --filesystem=xdg-run/app/com.discordapp.Discord:create
- --device=all
- --allow=multiarch
- --allow=devel
- --allow=bluetooth
add-extensions:
org.freedesktop.Platform.Compat.i386:
directory: lib/i386-linux-gnu
version: *runtime-version
org.freedesktop.Platform.Compat.i386.Debug:
directory: lib/debug/lib/i386-linux-gnu
version: *runtime-version
no-autodownload: true
org.freedesktop.Platform.GL32:
directory: lib/i386-linux-gnu/GL
version: *gl-version
versions: *gl-versions
subdirectories: true
autodelete: false
add-ld-path: lib
merge-dirs: vulkan/icd.d;glvnd/egl_vendor.d;OpenCL/vendors;lib/dri;lib/d3d;vulkan/explicit_layer.d;vulkan/implicit_layer.d
download-if: active-gl-driver
enable-if: active-gl-driver
x-compat-i386-opts: &compat-i386-opts
prepend-pkg-config-path: /app/lib32/pkgconfig:/usr/lib/i386-linux-gnu/pkgconfig
ldflags: -L/app/lib32
prepend-path: /usr/lib/sdk/toolchain-i386/bin
env:
CC: i686-unknown-linux-gnu-gcc
CXX: i686-unknown-linux-gnu-g++
libdir: /app/lib32
modules:
- name: bundle-setup
buildsystem: simple
build-commands:
- |
mkdir -p /app/lib/i386-linux-gnu
mkdir -p /app/lib/debug/lib/i386-linux-gnu
mkdir -p /app/lib/i386-linux-gnu/GL
mkdir -p /app/etc
echo "/app/lib32" > /app/etc/ld.so.conf
echo "/app/lib/i386-linux-gnu" >> /app/etc/ld.so.conf
- name: xash
buildsystem: simple
build-options: *compat-i386-opts
build-commands:
# HACKHACK: removed --enable-lto because it causes linker errors in Flatpak build
- |
python waf configure -T release --enable-all-renderers --enable-packaging --prefix=/app --libdir=/app/lib32 --bindir=/app/lib32/xash3d
python waf build
python waf install --destdir=/
mkdir -p /app/bin
mkdir -p /app/share/icons/hicolor/256x256/apps/
mkdir -p /app/share/applications
install -m 0755 3rdparty/vgui_support/vgui-dev/lib/vgui.so /app/lib32/xash3d/vgui.so
install -m 0755 scripts/flatpak/run.sh /app/bin/run.sh
install -m 0644 game_launch/icon-xash-material.png /app/share/icons/hicolor/256x256/apps/su.xash.Engine.Compat.i386.png
install -m 0644 scripts/flatpak/su.xash.Engine.Compat.i386.desktop /app/share/applications/su.xash.Engine.Compat.i386.desktop
sources:
- type: dir
path: ../../