gib (tobey's Guided Installer for BepInEx) is a CLI utility for automating the installation of BepInEx, the popular modding framework for Unity games.
Currently only macOS is supported, as the process of manual BepInEx installation is exceptionally cumbersome on this operating system.
gib aims to automate whatever it can, and hold your hand through whatever it cannot.
Just run the following command in Terminal:
curl -fsSL https://cdn.jsdelivr.net/gh/toebeann/gib/gib.sh | sh
This command will make sure that pnpm (a package manager for
node modules) is installed, then install and run the
latest version of gib with it. If you're curious how it all works or want to
verify the source code is safe, check
gib.sh
and
index.ts
for
details.
If you get stuck, refer to the below walkthrough.
Tip
If you run into any unexpected issues while following these instructions or
need further assistance, please feel free to send a DM on discord to toebean
(that's me) explaining the issue and I'll reply when I remember to check my
message requests.
Note
These usage instructions were written for macOS Sonoma. The instructions below should work for other versions of macOS, but there may be some slight differences.
-
If you don't own the game on Steam, you'll need to add it to Steam as a non-Steam game. Follow the guide to add a non-Steam game to Steam if you're unsure how.
-
You'll want a Finder window open at the folder where the game is installed.
-
If you own the game on Steam (i.e. you didn't add the game to Steam as a non-Steam game), find the game in your library, then right-click it and select
Manage
->Browse local files
. -
For the Epic Games Launcher, find the game in your library, then right-click it and select
Manage
. In the window that opens, look for the folder icon and click it.
-
-
You'll want a copy of BepInEx downloaded and unzipped in your Downloads folder.
If you're unsure where to get BepInEx from, try a Google search for
[game name] bepinex pack
, e.g. for Subnautica, I would search for:Subnautica BepInEx pack
Where available, it is always advised to use a popular pack of BepInEx which has been tailored to the specific game you're trying to mod.
If you can't find a BepInEx pack for the game, then the latest stable version of BepInEx from their official GitHub repo will do. You can find it here - scroll down to the
Assets
section, then download the file with "unix" in the name, e.g.BepInEx_unix_5.4.22.0.zip
.Make sure it is unzipped in your Downloads folder after downloading it, as presently gib requires this. By default, Safari will have unzipped it for you. If you use other browsers, simply open the .zip and macOS should unzip it for you.
Go ahead and open a Finder window in the unzipped BepInEx folder, so that you can see the file
run_bepinex.sh
.Leave this Finder window open - you'll want to come back to it later.
Tip
In some cases the shell script to load BepInEx may be named something else,
e.g. start_game_bepinex.sh
- in this case you will need to rename it to
run_bepinex.sh
for gib to recognise it.
-
Open Terminal from Launchpad or Spotlight (press
⌘ Space
, typeterminal
and pressEnter
). -
Copy the command from the TL;DR section above and paste it in your terminal window with
⌘ V
, then pressEnter
to run it. -
Now, simply follow the instructions in the terminal to install BepInEx to your game!
Tip
If you ran into any unexpected issues while following these instructions or
need further assistance, please feel free to send a DM on discord to toebean
(that's me) explaining the issue and I'll reply when I remember to check my
message requests.
-
Only native macOS applications are currently supported.
-
Support for Windows apps on macOS (e.g. via CrossOver or Wine) is being considered.
-
Support for other operating systems is being considered.
-
-
Only BepInEx 5 is currently supported. Support for BepInEx 6 is being considered.
-
I have not personally tested gib on Apple silicon, i.e. M1, M2, M3 etc., but it should work as long as the BepInEx pack you're downloading is compatible with Apple silicon.
- If the shell script to launch BepInEx is named something other than
run_bepinex.sh
(e.g.start_game_bepinex.sh
), gib will not recognise it. I plan to fix this in an update. In the meantime, you can workaround this by renaming the shell script torun_bepinex.sh
as needed.
gib is licensed under the ISC License.