Thanks for the awesome background libretro!
Project Gamestation took a major backseat when I discovered RetroPie. petRockBlog did a fantastic job putting everything together and making it “Just Work”. I seriously recommend checking it out. When it comes to gaming on the Raspberry Pi, RetroPie did everything I could have wanted and more, but it’s really designed for the Pi, not for x86/x64 systems.
That’s where Gamestation comes in. The project is really nothing special. It’s a couple shell scripts that automate fetching the repos, building other people’s projects, creating a Debian package, and installing it. It’s not a major piece of work, but it makes my life easier and has resulted in a great double-click-easy system that I can hook to my TV that has a bit more power than a Pi 2.
The best part of this is combining it with Syncthing. I always hated how my roms and saves would differ between machines, requiring a central folder somewhere on ownCloud or manually syncing. Syncthing is like Bittorrent Sync, but open source and well respected. By using this and a centralized folder structure, you can keep all roms/saves/themes/metadata syncronized between Gamestation machines. It works really well and is useful for bootstrapping new machines.
Right now Gamestation is only supported by Debian and Debian-family Linux distributions. I’m 98% sure you can get it running on just about any *nix OS out there, but I can’t claim to have tested it. If you’d like to add other OS support, check out the GitLab Repo.
Grab the .deb
here
and install with sudo dpkg -i
. If your system complains about dependencies, try sudo apt-get -f install
to find and install the missing libraries.
Gamestation expects the following folders to be in ~/roms/
:
amiga
amstradcpc
apple2
atari2600
atari5200
atari7800
atari800
atarilynx
atarist
c64
coco
dragon32
fba
fds
gamegear
gb
gba
gbc
intellivision
macintosh
mame-advmame
mame-mame4all
mastersystem
megadrive
msx
n64
nds
neogeo
nes
ngp
pc
pcengine
ports
psx
quake3
scummvm
sega32x
segacd
sg-1000
snes
vectrex
videopac
wonderswan
zmachine
zxspectrum
And a symlink from ~/roms/megadrive
to ~/roms/genesis
: ln -s ~/roms/megadrive ~/roms/genesis
To actually run the system, use the command emulationstation
.
As usual, the project is open source, grab the code here.
This project is licensed under the GNU GPL v3.
If you’re building a nightly-release, check out the source code’s README.md. It’ll walk you through how to build one from source and end up with a Debian package of your own.
There’s still a lot of work to be done. If you’d like to make this project better, send me a merge request.
sudo cp /usr/lib/systemd/system/syncthing@.service /etc/systemd/system/syncthing@`whoami`.service
Add Folder
and add ~/roms/
, feel free to set up file versioning if you’d like.Add Folder
and add ~/.emulationstation
, feel free to set up file versioning if you’d like.Actions -> Show ID
to show your device’s code.Add Device
, paste in your first device’s code and give it a name.
.emulationstation
and ~/roms/
folders with it.This project wouldn’t be possible without the amazing work by the following projects:
For full details and credits, check out the README.md file.