@distromate/avalonia
v0.1.7
Published
Build Avalonia apps with DistroMate packaging and publishing
Maintainers
Readme
@distromate/avalonia
Build Avalonia desktop apps through distromate with dotnet publish as the host build step.
Install
npm install -D @distromate/cli @distromate/avaloniadotnet must be available on your PATH, or configured through source.options.dotnetCliPath.
Usage
Point distromate.yaml at the builder plugin and keep Avalonia-specific overrides in source.options:
source:
type: adapter
plugin: avalonia
options:
projectDir: .
projectFile: src/DemoApp/DemoApp.csproj
runtime: win-x64
selfContained: true
dotnetArgs:
- --property:PublishSingleFile=true
publish:
appId: "70253487"
channel: stable
package:
publisher: Demo Inc.Run DistroMate directly:
distromate package -v 1.2.3
distromate publish -v 1.2.3Installing @distromate/avalonia adds the dm-plugin-avalonia command. distromate no longer installs plugins for you.
Behavior
- runs
dotnet publishfor a host-native RID - derives package metadata, icons, and executable paths from project metadata and published output
- reuses the native
dotnet publishoutput directory and writes DistroMate package artifacts there unlessoutputDiris overridden - returns prepared native source metadata plus inferred DistroMate defaults over JSON/stdio so
distromatecontinues the package or publish flow
Notes
- host-native only: target platform and arch must match the current machine
- plugin-specific overrides go under
source.options - the adapter defaults to the native
bin/<Configuration>/<Framework>/<RID>/publishlayout unlesspublishDiris overridden - if the published output does not contain a runnable app host, enable
UseAppHostor publish with an explicit RID
