In, A Year Away From Mac OS, I wrote about my switch to FreeBSD on my desktop computer and noted one of the downsides was losing Stardew Valley:

I initially missed playing the game Stardew Valley on FreeBSD. It was consuming a few hours of my time each week prior to the FreeBSD install. The extra friction of rebooting into Arch to run the game basically stopped me playing, which wasn't entirely a bad thing. There was some recent progress running Stardew Valley on OpenBSD so I could look into porting that work... I have enough side projects as it is though.

Fortunately Mariusz Zaborski (oshogbo) did the porting work and you can now play Stardew Valley (and other games) on FreeBSD. In this post I'll describe the steps I took to get it running.

Stardew Valley running on FreeBSD

Prerequisites

You will need the following packages installed

Note: To get audio to work I had to build openal-soft from ports with pulseaudio support enabled, as this was not in the default configuration.

You will also need the FreeBSD port of the fnaify script, which can be cloned or downloaded from GitHub.

git clone https://github.com/oshogbo/fbsd-fnaify.git

fnaify

Assuming you have purchased Stardew Valley from GOG. Login and visit your games collection, click on Stardew Valley, change the system to Linux and download the game.

Once the download has finished, extract it with unzip . Note that the file name may differ if there has been an update to the game:

cd ~/Downloads mkdir stardew-valley cd stardew-valley unzip ../stardew_valley_1_3_32_25307.sh

Now run fnaify to check that all the dependencies are installed, fix up paths to system libraries and create a new launcher script. Change the path to fnaify to match where you cloned/downloaded it:

cd data/noarch/game ~/Source/fbsd-fnaify/fnaify

You should see output similar to this:

Checking installed libraries... Result of configuration testing: SUCCESS Adjusting config files for BSD... Replacing launcher script with BSD variant... You should now be able to start the game by running: $ ./StardewValley