Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal. You can also buy games using our partner links for GOG and Humble Store.
We do often include affiliate links to earn us some pennies. See more here.

Batocera is a well-known retro-gaming distribution that was forked from Recalbox back in 2016.

Since then, Batocera has become one of the best turnkey solutions to bring old PCs back to life as emulation powerhouses, or to provide SBCs like Raspberry PI, Steam Deck, arm-based Android TV boxes and many others a way to easily bundle all emulators, a nice GUI with Emulation Station and supplementary scripts for global and standalone emulators configuration, all in one Buildroot based Linux distribution.

Version 39 was released and while the complete changelog is here, let's highlight some of the more relevant items on this release: 

Special notes and Hardware:

  • Wine now uses GE custom runner by default.
  • Due to some emulators being windows-only (Xenia, BigPemu, FPinball and Model2Emu), bottles will be provisioned in a different filesystem path because of the GE changes.
  • Completely disabling the TPM module will also be needed since even with Secure Boot disabled some interactions are mate with that hardware. See more here.
  • Multiple hardware got initial support added including: AYN Loki MiniPro, Anbernic RG353V, ASUS ROG Ally, Raspberry Pi 5, Steam Deck OLED, Le-Potato v2 and a plethora of RK3568 based boards.
  • Support for Thunderbolt 3 / USB4 eGPU chassis.
  • Expanded steering wheel support.

System related:

  • Kernel to 6.7.2.
  • Mesa to 23.3.4, VKD3D-Proton to 2.11.1, Xorg Server to 21.1.10, XWayland to 23.2.3.
  • SDL2 to 2.28.5, Sound Open Firmware to 2023.12, Bluez to 5.71, Pipewire to 1.0.0.
  • NVIDIA to 545.29.06 and NVIDIA legacy driver to 470.223.02.
  • Vulkan stack to support 1.3.275.
  • Wine Tricks to 20240105 and Proton & Lutris replaced by the Glorious Eggroll custom WINE runner.

Also, if you need to dual-boot your current distribution with Batocera, while there is no graphical installer to help you on that matter, there is a documented step-by-step here.

Fixes:

  • Fallback to OpenGL if Vulkan is configured as API but no Vulkan-enabled GPU is provided.
  • Hostname was not sent to DHCP server and hostnames from DHCP were not honored.
  • Multiple bugs on Install-to-disk feature.
  • Multiple storage related bugs (NVMe automount, ANYEXTERNAL storage for ROMs and BIOS).
  • Prime for NVIDIA and AMD defaults index to 1(eGPU).

NOTE: Batocera does not distribute any ROMS or BIOSes and you are on your own on that matter. Please also do not ask for them on the comments of this article.

Article taken from GamingOnLinux.com.
8 Likes
About the author -
author picture
I'm an enthusiast of Linux on Laptops and Secure Boot related stuff. Playing exclusively on Linux since 2013. Played on Wine on dates that trace back to 2008 (Diablo 2, Lineage 2...). A troubleshooter that used to work with strace and it is now working with Kubernetes...
See more from me
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
4 comments

nwildner Mar 8
Another thing here: Batocera wiki pages might look rough edged but that's because this is a distro for you to install on any equipment and dedicate it completely for retro-gaming so, solutions like the Dual boot one that is linked on this article is really made on best effort, and they assume the ones doing it have some "medium to advanced" knowledge on Linux setup.

That being said, Batocera is usually one big FAT32 partition that holds the overlay image for the entire system, and a second partition for the SHARE storage, which is user data and batocera initialized data. SHARE partition is created from the remaining space on the disk.

There is are another wiki links[refer 1] article with instructions on how to use ROMs stored on an already existing partition, if ext4 or btrfs:

1 - Edit /boot/batocera-boot.conf, set sharedevice=SHARE
2 - Add the line sharedevice_part1=ROMS@2efa1068-UUID-OFYR-PART-EXAMPLEEEE:/home/<user>/roms

This might be helpful to dualboot with Batocera and keep your ROMs on the home folder of your current desktop distro for example.

References
====================================
[1] https://wiki.batocera.org/store_games_on_a_second_usb_sata_drive
storma Mar 10
Thanks for this.

I've just put together a rpi zero 2 and a waveshare zero-disp-7A 7" display. What started off as just a photo frame soon evolved to a retro gaming system.

I tried Retropie, Recalbox and Lakka but none of them was a smooth experince, Lakka not even starting. Came across this article and gave it a shot. Works well out of the box. This will stay as the default.


Last edited by storma on 10 March 2024 at 1:41 am UTC
Peffse Mar 10
Thanks for this.
I tried Retropie, Recalbox and Lakka but none of them was a smooth experince, Lakka not even starting. Came across this article and gave it a shot. Works well out of the box. This will stay as the default.
Yeah, the Retropie team seems to be dragging their feet quite a bit. I don't know if it's a lack of manpower or what... but their last prebuilt image was for RPi4, on Debian Buster 32-bit. They've missed the launch of Bullseye, removal of OMXPlayer, launch of Pi Zero-2, launch of Bookworm, launch of RPi5 (and it's 64bit-only kernel), standardization of Wayland, and they still have ongoing issues with default audio devices. It's no wonder you constantly see people asking if the project is dead.

Maybe they are waiting to release on Pi Day again?
nwildner Mar 11
I tried Retropie, Recalbox and Lakka but none of them was a smooth experince, Lakka not even starting. Came across this article and gave it a shot. Works well out of the box. This will stay as the default.

Yeah, back at the time when I've acquired a RPI3B, I started using Retropie because it was more flexible, but I ended up taking too much time configuring, downloading and compiling things.

When Recalbox v4.2 launched, I jumped in and found amazing because a lot of stuff that was done through Retropie-Setup scripts and required a keyboard was already available at the Emulation Station on Recalbox, and also, the plethora of supported controllers was great. But the drawback of buildroot based distros is that it is pretty static so, no way to add additional stuff.

Batocera is now on a nice balance here: you have a buildroot systemd but you can also use pacman for some basic stuff and flatpak for more elaborate software like Steam. So now I have a Retrogaming and a Steam Box plugged in my TV.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register