Skip to content

Building from source

GoldyL edited this page Mar 28, 2026 · 1 revision

Building from source

Requirements

  • JDK 25+
  • Gradle 9+ (or use the included ./gradlew wrapper)

Clone and run

git clone https://github.com/Kitty-Hivens/Aura-Launcher.git
cd Aura-Launcher

# Run in development mode
./gradlew :client-ui:run

# Run tests
./gradlew :client-core:test :client-launcher:test

Build release artifacts

# Windows — distributable folder (fed into Inno Setup)
./gradlew :client-ui:createReleaseDistributable

# macOS — DMG
./gradlew :client-ui:packageReleaseDmg

# Linux — uber JAR (AppImage is assembled manually in CI)
./gradlew :client-ui:packageReleaseUberJarForCurrentOS

CI / Release pipeline

Releases are built automatically by .github/workflows/build_release.yml on tag push (v*.*.*).

The pipeline:

  1. Runs tests — build fails if tests don't pass
  2. Builds Windows EXE (Inno Setup), Portable ZIP, Linux AppImage, macOS DMG in parallel
  3. Generates SHA256 checksums
  4. Publishes a GitHub Release with changelog extracted from CHANGELOG.md

Code quality

Every PR against dev is scanned by [Qodana].
Config: qodana.yaml, workflow: .github/workflows/qodana_code_quality.yml.

Platform notes

  • JNA on Windows: pinned to 5.18.1 in client-ui and forced to 6.1.6 globally via Gradle resolutionStrategy. Do not change — dorkbox/SystemTray 4.4 has a hardcoded version check.
  • AppImage on Linux: assembled manually in CI using appimagetool, not via Compose packaging. See the build-linux job in build_release.yml.

Clone this wiki locally