Repository navigation
v0.3.0-dev.1
Pre-releaseBorea v0.3.0-dev.1: test build for developers
This pre-release is for the Borea team and developers who want to test v0.3.0 before it is released.
It is not for users. For normal use, stay on v0.2.1.
v0.3.0 follows in a day or two.
Tell us what did not work: Discord | GitHub issues
Please test these first
- The update from v0.2.1: set the update channel as described below, then click "Update now" on the Home banner, or run
borea update-self. - Shared mod files: install the same mod in two instances. The second install should download nothing, and the game should start with the mod in both instances.
- Staying signed in: sign in to GitHub in Settings, close Borea and start it again. You should still be signed in. This matters most on macOS and Linux, where Borea uses the Keychain and the Secret Service.
- A crash after the start: when the game closes unexpectedly, Borea should tell you and open the crash log.
New since v0.2.1
- Borea keeps one copy of each mod release and links it into every instance that uses it, so a second instance with the same mod downloads and unpacks nothing. You can turn this off with "Share mod files between instances" in Settings.
- When the game crashes after it started, Borea tells you, names the mod if one caused it, and opens the crash log.
- When StarMap restarts itself to load new mods, Borea follows the restarted game, so the launch keeps running until you close it.
- Borea remembers your GitHub sign-in in the secure credential store of your system, so you stay signed in after a restart.
- Discover: favorites, a filter for the mods you already use in other instances, a "Back to top" button, and free-form tags that read like the curated ones.
- Scroll any list by holding the middle mouse button, and move between pages with the back and forward buttons of your mouse.
- Instances: the tabs are tables with a "..." menu for each row, new instances can start from game settings presets, and saves and vehicles can be renamed.
- When a mod needs a step from you, before you play or when you remove it, its mod page and its install show that step.
- Borea no longer offers a release that can no longer be downloaded from its host.
- Mod packs: Borea tells you when the mods of a pack have newer releases, and when a pack install stops, it names the mod that stopped it.
- Mod authors: write a mod pack in the listing editor, make its next version, or turn an instance into a pack, and open its pull request from the App.
- Stewards of the content index: a new Steward page for the review queue, reviews, merges, reports, status changes and release amendments.
- Translators: preview a translation in Borea without a build.
- Linux: Borea adds itself to your application menu at the first start and starts from there without a terminal.
How to get the next test builds
With the default update channel, "Stable releases", Borea does not tell you about pre-releases like this one.
To see them, open Settings, General, and set "Update channel for Borea" to "All releases, dev builds included".
"Check for updates at start" must be on, and the change takes effect at the next start.
When v0.3.0 is released, every channel tells you about it.
Downloads
| File | SHA-256 |
|---|---|
| Borea-0.3.0-dev.1-linux-x64.tar.gz | f684c70e8991d1cbff10ab1cc848752fdd636491f6f32232ccc69c8e86e7932f |
| Borea-0.3.0-dev.1-macos-arm64.tar.gz | d93a085d063f9c4944c459fa568afeb43486853b037f396161aa7c7480a2facd |
| Borea-0.3.0-dev.1-win-x64.zip | 1ee98a2d1ebad59f61c344ed6991928d49ee9cd28725e4f840131a6eb4fe98bd |
| Borea-0.3.0-dev.1.cdx.json | 2e52e938ea2dbd0789a5eee29b4d41d369087d23a07b7c9560193389a684f884 |
| Borea-Cli-0.3.0-dev.1-linux-x64.tar.gz | b7bb98e52b653c5574c9f19118d51227cfa4b8c112cf72cc16411cf1d1eb4df7 |
| Borea-Cli-0.3.0-dev.1-macos-arm64.tar.gz | 0b86ecb4ea95a244e9f62f8fd4c4a1f7d88a343b6e3e1e90d6db0bd098cebd98 |
| Borea-Cli-0.3.0-dev.1-win-x64.zip | a03a7f91c75d43a937f258fc082ea18b9e79dd179a63dd3d140e776f98172e69 |
| Borea-Cli-0.3.0-dev.1.cdx.json | f585f779a52e6b4e23412855839151be766593a5b1a54bcf6c55aca4915a0cf5 |
Each platform has two archives.
The App archive, for example Borea-<version>-win-x64.zip, contains the program borea.
Without arguments, borea opens the desktop App, and with arguments, it runs a command.
Most users want this archive.
Archives whose names start with Borea-Cli- are a smaller download that contains only the command line.
The builds include the .NET runtime and are self-contained, so there is nothing to install first.
Each archive contains borea (borea.exe on Windows), LICENSE and THIRD-PARTY-NOTICES.txt, in a folder named Borea, or Borea-Cli for the CLI archive.
The App archive also contains BRANDING.md, because the Borea logo in the App is not covered by the MIT License.
Put that folder where it can stay, for example %LocalAppData%\Programs\Borea on Windows or ~/.local/share/Borea on Linux, because Borea updates itself into the folder it runs from.
First start
These builds are not code signed, so the first start might take an extra step on Windows and macOS. The README has the long explanation.
Windows. Right-click the zip, open Properties and select Unblock.
Then unpack the App archive and start borea.exe, or run .\borea.exe --help in PowerShell in the unpacked folder of either archive.
Without that step, Windows shows "Windows protected your PC". This is because the file might not be downloaded often and is not signed. Select "More info", then "Run anyway".
Linux. Unpack the App archive and run ./borea for the App, or run ./borea --help in the unpacked folder of either archive.
After the App has started once, Borea is in the application menu and starts from there without a terminal.
Both need the ICU and OpenSSL libraries of your distribution, and only the App also needs the X11, ICE, SM and fontconfig libraries. Most desktop installs already have them. See Readme.
macOS. Unpack and start Borea from Terminal, not from Finder: tar -xzf <file>, then run ./borea inside the new folder of the App archive for the App, or ./borea --help inside the new folder of either archive.
The macOS builds are for Apple silicon. Intel Macs are not supported.
Provenance
To check that a file came from this workflow:
gh attestation verify <file> --repo KSAModding/Borea \
--signer-workflow KSAModding/Borea/.github/workflows/release.yml
Borea-0.3.0-dev.1.cdx.json is the software bill of materials for the App archives, in CycloneDX JSON.
The App contains the command line, so this list includes the NuGet packages of the App and of the CLI.
Borea-Cli-0.3.0-dev.1.cdx.json is the software bill of materials for the CLI archives and includes only the packages of the CLI.
Each list includes the version, license and hash of every package.
Each list is attested only to the archives that it describes, and you can use this command to prove that it belongs to one.
With --format json, the output includes the attested list.
gh attestation verify <archive> --repo KSAModding/Borea \
--signer-workflow KSAModding/Borea/.github/workflows/release.yml \
--predicate-type https://cyclonedx.org/bom
Signing will come in the future and is tracked in #76.
What's Changed
- Change saves and vehicles without asking whether a file is open by @Maximilian-Nesslauer in #515
- Show backup sizes and refuse a restore while the game runs in the CLI by @Maximilian-Nesslauer in #514
- Check the dependencies before Borea takes over a mod by @Maximilian-Nesslauer in #516
- Tell mod authors that an instance moves the game profile by @Maximilian-Nesslauer in #513
- Make the App react the same way wherever a player clicks by @Maximilian-Nesslauer in #532
- Show the lists of an instance as tables and move row actions into a menu by @Maximilian-Nesslauer in #533
- Show full rows on Home and one instance menu everywhere by @Maximilian-Nesslauer in #534
- Keep the cost of Discover with the window, not the list by @Maximilian-Nesslauer in #537
- Wait for the task history save before the self-update close test by @Maximilian-Nesslauer in #540
- Start the listing branch at a commit the fork already has by @Maximilian-Nesslauer in #538
- Merge the v0.2.1 release branch into main by @Maximilian-Nesslauer in #542
- Say when the mods of a pack have newer releases, and copy its forum list by @Maximilian-Nesslauer in #545
- Show the update of Borea itself as a task in the Tasks drawer by @Maximilian-Nesslauer in #546
- Store each mod release once and link instances to it by @Maximilian-Nesslauer in #548
- Turn the shared mod store on, and give a mod that writes into its folder its own copy by @Maximilian-Nesslauer in #549
- Name the member that stops a pack install by @Maximilian-Nesslauer in #547
- Navigate with the back and forward buttons of a mouse by @Maximilian-Nesslauer in #551
- Mark mods and packs as favorites by @Maximilian-Nesslauer in #552
- Show mods installed in other instances on Discover by @Maximilian-Nesslauer in #553
- Show a phone Copy link in place of the Borea buttons on share pages by @Maximilian-Nesslauer in #557
- Add KSA 2026.9.22.5482 to the verified builds by @Maximilian-Nesslauer in #562
- Publish a release only from main or a release branch by @Maximilian-Nesslauer in #586
- Read short version bounds (RFC 0072) by @Maximilian-Nesslauer in #588
- Game settings presets, continued by @averageksp in #598
- Brand usage clarification by @renancamm in #592
- Ship BRANDING.md in the App archive by @Maximilian-Nesslauer in #601
- Show a toast when content is added without an active instance by @Maximilian-Nesslauer in #603
- Explain manual installs on the instance page by @Maximilian-Nesslauer in #604
- Show the install and uninstall steps of a listing by @Maximilian-Nesslauer in #606
- Rename a save or a vehicle by @Maximilian-Nesslauer in #608
- Preview a translation in Borea without a build by @Maximilian-Nesslauer in #609
- Read since under [releases] of a listing by @Maximilian-Nesslauer in #610
- Follow RFC 0078 for releases whose download is gone by @Maximilian-Nesslauer in #611
- Keep each game settings preset once when loads overlap by @Maximilian-Nesslauer in #612
- Start the App without a terminal window by @Maximilian-Nesslauer in #613
- Write a pack version in the listing editor by @Maximilian-Nesslauer in #614
- Make the next version of a listed pack in the listing editor by @Maximilian-Nesslauer in #615
- Make a pack from an instance by @Maximilian-Nesslauer in #616
- Open the pull request of a pack version from the App by @Maximilian-Nesslauer in #618
- Share the GitHub REST plumbing of the listing publisher by @Maximilian-Nesslauer in #619
- Check the listing ownership proof for any GitHub account by @Maximilian-Nesslauer in #620
- Know whether the signed-in account is a steward by @Maximilian-Nesslauer in #621
- Dispute, delist, retract and lift from Borea by @Maximilian-Nesslauer in #622
- Add the queue of pull requests that wait for a steward by @Maximilian-Nesslauer in #623
- Show the watcher and watchdog issues on the Steward page by @Maximilian-Nesslauer in #624
- Review one index pull request on the Steward page by @Maximilian-Nesslauer in #626
- Approve, request changes, comment, merge and close index pull requests by @Maximilian-Nesslauer in #627
- Takedown and dispute reports on the Steward page by @Maximilian-Nesslauer in #628
- Stay signed in to GitHub after a restart by @Maximilian-Nesslauer in #631
- Read an assembly named by its path in the launch watch by @Maximilian-Nesslauer in #632
- Release amendments in Core by @Maximilian-Nesslauer in #633
- Make the error bar opaque by @Maximilian-Nesslauer in #634
- Amend releases from the content page by @Maximilian-Nesslauer in #635
- Give back the icon files that no view shows by @Maximilian-Nesslauer in #637
- Scroll a view while the middle mouse button is held by @Maximilian-Nesslauer in #639
- Add a back to top button to Discover by @Maximilian-Nesslauer in #641
- Show free-form tags like curated ones, and normalize typed tags by @Maximilian-Nesslauer in #642
- Keep a launch running while StarMap restarts itself by @Maximilian-Nesslauer in #646
- Name Borea and a contact link in the User-Agent by @Maximilian-Nesslauer in #648
- Tell the player when the game crashes after its start by @Maximilian-Nesslauer in #647
- Refresh the reports tab in order in the reporter sign-out test by @Maximilian-Nesslauer in #651
- Wait for every view model of the test harness before its folder goes by @Maximilian-Nesslauer in #649
- Recognize Wine prefixes and macOS Wine wrappers by @Maximilian-Nesslauer in #654
- Start the game through a macOS Wine wrapper by @Maximilian-Nesslauer in #655
- Check for the .NET runtime of the loader in a Wine wrapper by @Maximilian-Nesslauer in #656
- Expand a scrollbar as soon as the pointer is over it by @Maximilian-Nesslauer in #657
- Stop fast scrolling on Discover from stuttering by @Maximilian-Nesslauer in #658
- Add the release notes of v0.3.0-dev.1 by @Maximilian-Nesslauer in #652
New Contributors
- @renancamm made their first contribution in #592
Full Changelog: v0.2.1...v0.3.0-dev.1