Skip to content

Commit

Permalink
update readme
Browse files Browse the repository at this point in the history
  • Loading branch information
korewaChino committed Nov 16, 2024
1 parent 6a8dda9 commit e65a70e
Showing 1 changed file with 13 additions and 5 deletions.
18 changes: 13 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,19 +52,21 @@ build rather than running Electron inside Steam Proton.
1. Install Electron from your package manager, or download the binaries from the [Electron website](https://www.electronjs.org/) (see note below), make sure the `electron` binary is in your `$PATH`.
2. Download the latest release tarball
3. Extract to `~/.steam/root/compatibilitytools.d/`. You should have a directory structure like this:
```

```sh
~/.steam/root/compatibilitytools.d/boson/
├── boson
├── toolmanifest.vdf
└── compatibiltytool.vdf
```

4. Restart or start Steam if you haven't already
5. Right-click on the game you want to run with Boson, and select `Properties > Force the use of a specific Steam Play compatibility tool > Boson`
6. Run the game, And that's it! The game should now be running using the native Electron build.

## Building

All you need to build Boson is a Rust toolchain, and the `cargo` build tool. That's it.
You require Rust and Node.js to build Boson.

Install Rust by using [rustup](https://rustup.rs/), and then run the following commands:

Expand All @@ -77,14 +79,18 @@ The resulting Steam compatibility tool will be outputted to `build/`. You can ju
## Notes

- If you're using an electron binary that isn't in your $PATH and called `electron`, you can set the `ELECTRON_PATH` environment variable in your Steam launch options to point to the electron binary you want to use, e.g:
```

```sh
ELECTRON_PATH=/path/to/electron %command%
```

- Due to some incompatibility issues with the Steam overlay, it's recommended to disable the Steam overlay for the game you're running with Boson. Boson is currently hardcoded to remove any `LD_PRELOAD` envars on runtime, to prevent the Steam overlay from being loaded.
- Boson has a list of known ASAR paths that it checks through to find the game's files, if Boson somehow cannot find the electron ASAR assets path, you can set a custom environment variable to tell Boson where to find the game data, e.g:
```

```sh
BOSON_LOAD_PATH=/path/to/asar %command%
```

### Running Cookie Clicker (and other Greenworks games) with Boson

This guide assumes you already bought Cookie Clicker on Steam, and have it installed.
Expand All @@ -102,7 +108,8 @@ To get the Steamworks API to work with Cookie Clicker, you need to do the follow
- `sdk/public/steam/lib/linux64/libsdkencryptedappticket.so`
3. Download the nightly builds of Greenworks for the respective compatible version of Electron from [here](https://greenworks-prebuilds.armaldio.xyz/), rename the resulting `.node` binary to `greenworks-linux64.node`
4. Once you downloaded the SDK, extract the SDK libraries to Cookie Clicker's installation directory, like this:
```

```txt
~/.local/share/Steam/steamapps/common/Cookie Clicker/
├── resources
|── app
Expand All @@ -113,4 +120,5 @@ To get the Steamworks API to work with Cookie Clicker, you need to do the follow
|──libsdkencryptedappticket.so
|──(*libraries from other platforms*)
```

5. Once you're done installing Greenworks, your copy of Cookie Clicker should now integrate with Steamworks, and you can now get achievements, cloud saves, and Workshop support as if you're still running the game on Windows, with the added benefit of Native Linux support (and Discord Rich Presence support) :3

0 comments on commit e65a70e

Please sign in to comment.