.gitignore Loading last commit info...
InstallerBase.csproj
Program.cs
README.md
\WXLauncher.lnk
\WXLauncher\WXLauncher.lnk
build.ps1
build.sh
setup.ps1
setup.sh
README.md

InstallerBase - Template Installer Repository

A clean, standalone template project for building application installers powered by InstallerFramework (.NET Core + Avalonia UI).


🚀 Quickstart & Setup

This repository contains the installer UI & setup script logic without embedding the entire framework source code directly.

1. Run Setup Script

Run the setup script to automatically pull InstallerFramework from https://code.weexnes.dev/InstallerFramework.git and link it into lib/InstallerFramework:

Linux / macOS:

chmod +x setup.sh build.sh
./setup.sh

Windows (PowerShell):

.\setup.ps1

2. Run Locally

After running ./setup.sh (or .\setup.ps1), test the installer UI:

dotnet run

3. Customize Your Installer (Program.cs)

Edit Program.cs to configure your application branding, license terms, target folder, configuration form inputs, and installation actions:

var config = InstallerBuilder.Create("My App")
    .WithVersion("1.0.0")
    .WithPublisher("Acme Corp")
    .WithDefaultDirectory(@"{LocalAppData}\Programs\MyApp")
    .RequireAdmin(ElevationMode.AutoDetect)
    .AddWelcomePage()
    .AddLicensePage(licenseText)
    .AddDirectoryPage()
    .AddConfigPage(c => c
        .AddTextInput("server_port", "Server Port", defaultValue: "8080"))
    .AddStep("Deploying Files", new CopyDirectoryAction(@"Payload", "{TargetDir}"))
    .AddCompletionPage(launchExecutableOnFinish: "{TargetDir}/App.exe")
    .Build();

InstallerRunner.Run(config, args);

4. Build Standalone Installer Executable

Compile a single-file executable for distribution:

Linux / macOS:

./build.sh

Windows (PowerShell):

.\build.ps1

The resulting single-file binary will be generated in publish/win-x64/InstallerBase.exe.

Please wait...
Connection lost or session expired, reload to recover
Page is in error, reload to recover