Skip to content

ArmSector 1.0.0

Choose a tag to compare

@winters791 winters791 released this 15 Oct 20:31
· 1 commit to main since this release

ArmSector runs Starsector natively on Apple Silicon Macs (M1 or newer), so the game no longer goes through Rosetta.

  • No Rosetta: an arm64 Java 17 (Eclipse Temurin, trimmed with jlink) runs the game, with LWJGL 2.9.3 and OpenAL Soft built for arm64.
  • JVM settings for Apple Silicon: native mode uses the G1 garbage collector and drops the Java pack's x86 tuning (compiler directives that kept combat code away from the optimizing compiler, a near-constant GC mode, and pre-touching the whole heap).
  • Fullscreen that lets you leave: Cmd+Tab and Mission Control work while the game is fullscreen.

Requirements: an Apple Silicon Mac and Starsector 0.98a with a Java 17 community pack already applied. The plain official download isn't supported yet.

Install: quit Starsector, extract ArmSector-1.0.0.zip, and in Terminal run bash install.sh from the extracted folder. Then start the game as usual. To switch back to Rosetta, set USE_NATIVE_ARM64=0 in the launcher. To remove ArmSector, run bash uninstall.sh. The README has the details, including a manual install.

Tested on one setup so far: an M3 Mac running macOS 27.2 with Starsector 0.98a-RC8 and a Zulu 17 pack. Reports from other Macs are welcome; please open an issue.

Known limits:

  • On notched MacBooks, the notch hides a strip at the top of the screen in fullscreen.
  • Mods that ship Intel-only native libraries can't load them.
  • Rendering is unchanged: the game still uses OpenGL, which macOS runs on Metal. There's no MetalFX.

This is an unofficial fan project, not affiliated with Fractal Softworks. The zip contains no Starsector files.

Assets

File SHA-256
ArmSector-1.0.0.zip 4f051cf69ea010c9795a6576849e3169bc3f570c007b2302dce7c9bf3327eb72
openal-soft-1.23.1-lwjgl-0d5d3ad-source.tar.gz 66371f6bb25ff91c87f1480c4e80ec774f35c69b6ba1bd1877a2e980f94a6792

The second file is the source of the bundled OpenAL Soft (LGPL). Licenses for everything in the zip are in its LICENSES/ folder. liblwjgl.dylib rebuilds byte-for-byte from source with rebuild-kit/rebuild.sh.