Starbase Launcher is a desktop application designed to manage multiple instances of OpenStarbound, a community-driven open-source re-implementation of the Starbound game engine. It allows users to:
- Create and manage different OpenStarbound instances.
- Select and switch between various OpenStarbound versions for each instance.
- Enable and disable mods for each instance.
- Browse and download mods directly from the Steam Workshop.
- Launch OpenStarbound instances with their configured mods.
Warning
This has only been thoroughly tested on Arch Linux!
This application is built using Electron. To build and install it, follow these steps:
- Node.js (LTS version recommended)
- npm (Node Package Manager)
- Git
git clone https://github.com/RohanBhattacharyya/Starbase.git
cd Starbasenpm installTo build the application, you can use electron-builder. A prebuild.js script is used to handle the embedding of the Steam Web API Key, ensuring it's included in the compiled application without being exposed in plain text.
To embed your Steam Web API Key, set the STARBASE_STEAM_API_KEY environment variable before running the build command. The prebuild.js script will automatically detect this variable, encode the key, and embed it into the application. This means the end-user will not need to manually enter an API key.
STARBASE_STEAM_API_KEY="YOUR_STEAM_WEB_API_KEY" npm run distReplace "YOUR_STEAM_WEB_API_KEY" with your actual Steam Web API Key. You can obtain a key from https://steamcommunity.com/dev/apikey.
Note
An embedded key is not printed in build logs, but a key shipped inside a desktop application should not be treated as unrecoverable from the artifact.
The GitHub workflow builds Linux, Windows, and macOS artifacts when run manually or when a v* tag is pushed. To include the Steam Web API Key without exposing it in workflow logs, add a repository secret named STARBASE_STEAM_API_KEY:
- Open the repository on GitHub.
- Go to Settings > Secrets and variables > Actions.
- Add a new repository secret named
STARBASE_STEAM_API_KEY. - Run the Build Starbase workflow or push a version tag such as
v1.3.0.
Do not pass the key as a workflow_dispatch input; workflow inputs are not secret values.
If you do not wish to embed a key, simply run the build command without setting the STARBASE_STEAM_API_KEY environment variable. Users will be prompted to enter their own Steam Web API Key the first time they attempt to browse the Steam Workshop.
npm run distAfter the build process completes, you will find the installer or executable files in the dist/ directory, specific to your operating system. Run the appropriate installer or executable to install the application.
- Windows:
Starbase Setup X.Y.Z.exe - macOS:
Starbase-X.Y.Z.dmg - Linux:
starbase-X.Y.Z.AppImageorstarbase-X.Y.Z.deb(depending on your build configuration)
Once installed, launch the Starbase Launcher. The first time you run it, you will be prompted to select your Starbound packed.pak file. After this, you can start managing your OpenStarbound instances and mods.