Repository navigation
Building from Source
mprattmd edited this page May 31, 2026
·
1 revision
Requires the .NET 9 SDK and PortAudio present on the build machine.
- macOS:
brew install portaudio - Linux: install
portaudio/libportaudio2from your distro's package manager
# Build everything (Core + platform backend + Avalonia UI)
dotnet build HTCommander.CrossPlatform.sln
# Run the app
dotnet run --project cross/HTCommander.UI.Avalonia/HTCommander.UI.Avalonia.csproj# Needs appimagetool + FUSE on PATH; without them you still get a runnable
# packaging/AppDir/AppRun.
./packaging/build-appimage.shSee packaging/README.md in the repo for details.
# Linux x64
dotnet publish cross/HTCommander.UI.Avalonia/HTCommander.UI.Avalonia.csproj \
-c Release -r linux-x64 --self-contained true -o out/
# macOS Apple Silicon
dotnet publish cross/HTCommander.UI.Avalonia/HTCommander.UI.Avalonia.csproj \
-c Release -r osx-arm64 --self-contained true -o out/RuntimeIdentifiers covers win-x64;win-x86;linux-x64;osx-x64;osx-arm64.
-
HTCommander.CrossPlatform.sln— the cross-platform build (Core + Linux/Mac platform backends + Avalonia UI). This is what you build for Linux/macOS. -
HTCommander.sln— the original Windows/WinForms app undersrc/, which shares the sameCore.
The repo ships GitHub Actions workflows that build and attach the Linux
AppImage and macOS .app on a tag push, and (when Developer ID secrets are
present) codesign + notarize the macOS app. See .github/workflows/.
See Architecture for the project layout (Core / Platform / UI), the seam
interfaces, and the DataBroker pub/sub backbone. Porting status and the plan to
close Windows→Linux gaps are in Roadmap and Parity.
Cross-platform (Linux/macOS) port of Ylianst/HTCommander by Ylian Saint-Hilaire · Apache 2.0 · 📡 73!
Getting started
Using the app
Developers