Finger info for flibitijibibo@icculus.org...


SDL 3.2.0

After years of crunch, SDL3 is finally released! This includes a humongous amount of work from myself and the FNA team, including the new GPU API as well as lots of smaller things as well (SDL_Storage was one of mine, for example). We've also prepared day-1 support for Nintendo Switch and Xbox GDK, with PlayStation 5 support coming very soon.

https://github.com/libsdl-org/SDL/releases/tag/release-3.2.0

I've been testing SDL3 against most of my catalog, and you can actually try some SDL3 updates as well! The following games have Steam beta branches for SDL3 on Linux:

I have some private branches as well, but those are being tested internally for now (examples include TMNT: Shredder's Revenge and Streets of Rage 4).

Enjoy!

Last Year's Releases

These projects are possible via a combination of studios willing to hire me for game-specific work (you can too!), as well as my GitHub Sponsors program.

flibitBuild

Want to replicate my build machine? Grab a RHEL8-based OS and have a look!

"RHEL-based" OSes include RHEL for Developers, Rocky Linux, and AlmaLinux.

Your OS minimum will be "glibc 2.28+, 64-bit only".

# Update base install before doing anything else
dnf update
# Add EPEL
dnf install epel-release
crb enable
# SDL2 dependencies
dnf builddep SDL2
# All the base build tools!
dnf install bzip2 bzip2-devel chrpath clang cmake freetype-devel gcc-c++ \
    git gtk3-devel libstdc++-static libuuid-devel libvorbis-devel \
    libxml2-devel meson ninja-build ocl-icd-devel openal-soft-devel \
    opencl-headers openssl-devel patch perl-IPC-Cmd svn unix2dos zlib-static
# MinGW toolchain, not available on aarch64
dnf install mingw32-gcc-c++ mingw64-gcc-c++

# Use latest meson instead of the packaged version
git clone https://github.com/mesonbuild/meson

# libdecor
curl -O https://gitlab.freedesktop.org/libdecor/libdecor/-/archive/0.2.2/libdecor-0.2.2.tar.bz2
tar xvfj libdecor-0.2.2.tar.bz2
mkdir libdecor-0.2.2/flibitBuild
cd libdecor-0.2.2/flibitBuild
python3.11 ../../meson/meson.py setup .. --libdir=lib -Ddemo=false
ninja
su -c 'ninja install'

# PipeWire
curl -O https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/1.2.5/pipewire-1.2.5.tar.bz2
tar xvfj pipewire-1.2.5.tar.bz2
mkdir pipewire-1.2.5/flibitBuild
cd pipewire-1.2.5/flibitBuild
python3.11 ../../meson/meson.py setup .. --libdir=lib -Dsession-managers= -Dpipewire-v4l2=disabled -Dv4l2=disabled -Draop=disabled
ninja
su -c 'ninja install'

# Also:
# Configure SDL with PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure
# The CMake config provided by SDL2-mingw is terrible, delete the block
#  that starts with "if(NOT TARGET SDL2::SDL2)".

flibitBuild AArch64

This VM works fine on the latest Fedora. The OS installation process is the same as above, except it will be text-based rather than graphical.

# On Fedora...
dnf install qemu-system-aarch64
dnf group install --with-optional virtualization
virt-install --name rocky8_aarch64 --os-variant rhel8.10 --arch aarch64 \
    --vcpus 8 --ram 3072 \
    --disk path=/home/flibitijibibo/Programming/aarch64/rocky8-aarch64.img,format=raw,size=32 \
    --cdrom ~/Downloads/Rocky-8.10-aarch64-minimal.iso

flibitBuild Next

When SDL3 is tagged, I'll be moving to using the Sniper SDK since I can use it on Fedora easily and the glibc version is lower than RHEL9's.

Your OS minimum will be "glibc 2.31+, 64-bit only". When deploying to Steam, you are encouraged to set the Sniper runtime via App Admin > Installation > Linux Runtime.

# On Fedora...
toolbox create -i registry.gitlab.steamos.cloud/steamrt/sniper/sdk sniper
toolbox enter sniper

Unity Linux Editor Fix

I keep forgetting to write this down, so I'm putting it here:

./202x.x.x/Editor/Data/Tools/Roslyn/csc.runtimeconfig.json
./202x.x.x/Editor/Data/Tools/Roslyn/VBCSCompiler.runtimeconfig.json
# After System.GC.Server, add "System.Globalization.Invariant": true

Wait, a "plan"?

Well, this is a .plan file, so here's my TODO. Expect nothing from it, ever.

In Progress
    Codename a l'Orange
    FNA3D dumpspirv

Waiting Room
    SDL_ActionSet
        - After 3.0 :(
    Codename Line-o-tron
        - Waiting for wrap-up
    TBP load frame refresh
        - Will also revisit after SDL3
    Coding History
        - On call throughout development
    Anodyne FNA Console
        - Waiting on a handful of external things
    VVVVVV 2.5
        - Mostly staying hands-off again


When this .plan was written: 2025-01-23 04:50:25
.plan archives for this user are here (RSS here).
Powered by IcculusFinger v2.1.27
You could be playing Pringles for Genesis but instead you're here?