Repository navigation
π§ Asher v2.1.0 β Linux support
Asher 2.1.0 adds a full Linux version alongside the Windows manager. The manager is now cross-platform behind a small platform abstraction; the shared install / uninstall / launch core stays in C# (Asher.Services), with a Windows launcher-swap implementation and a Linux LD_PRELOAD bootstrap implementation.
Linux support
- Game discovery β Steam (XDG roots + multiple
libraryfolders.vdflibraries), best-effort Heroic/Lutris, and manual folder selection. - Installation β deploys the native bootstrap + managed runtime into
<game>/Asher/, plus aninstall.jsonmanifest (payload version + ELF architecture). The game executable is never modified (no launcher swap, no backup). - Launch β starts the native
DustAETwithLD_PRELOAD=libasher_bootstrap.soand theASHER_*/MONO_PATHenvironment; the game's stdout/stderr are kept off the manager's JSONL channel. - Packaging β
AppImageandtar.gzfor Linux x64, withlatest-linux.ymlupdate metadata. - Uninstall β removes only the Asher files under
Asher/;DustAETstays untouched.
Bootstrap
libasher_bootstrap.soattaches to the Mono runtime embedded in Dust and loadsAsher.Runtime(Harmony patching: PreInit / Patch / Lifecycle).- Fixed the
mono_thread_attachtiming race (object.c:1938) with a settle delay (ASHER_BOOTSTRAP_SETTLE_MS, default 1000 ms) after the root domain appears.
Windows
- New NSIS installer (
Asher-Setup-2.1.0.exe) alongside the portable zip (Asher-2.1.0-win32.zip). - Update metadata
latest.ymlis now generated and published for Windows. - Build resilience: optional patches that need missing build-time dependencies (for example XNA) no longer abort the whole host build.
Install state
- Explicit install state (
installed/partial/notInstalled) withcanUninstall/canRestore; the UI derives capabilities from it instead of backup presence.
Installation
- Windows: run
Asher-Setup-2.1.0.exe(installer) or extractAsher-2.1.0-win32.zipand runAsher.exe. - Linux: run
Asher-2.1.0-linux-x86_64.AppImage(or extractAsher-2.1.0-linux-x64.tar.gzand runAsher). Electron needs the NSS/NSPR/ALSA system libraries. - Use Setup to locate your Dust: An Elysian Tail folder, then Install.
- Start the game through Steam or the manager's Launch Game (on Linux, launch goes through the manager).
Known limitations
- Linux: external Steam/desktop launch and in-app updates are not implemented (updates are manual downloads).
- Linux: the Intro Skipper's ESRB splash can briefly appear before the late bootstrap attach patches it.
Notes
latest.yml(Windows) andlatest-linux.yml(Linux) are the update metadata for this release.- Keep the extracted Distribution folder / AppImage β that is the app you update later.