diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 0000000..dfbaac0
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,56 @@
+name: Build
+
+on:
+ push:
+ branches: ["**"]
+ pull_request:
+ branches: ["**"]
+
+jobs:
+ build:
+ name: Build (${{ matrix.name }})
+ permissions:
+ contents: read
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - os: windows-latest
+ name: windows
+ - os: ubuntu-latest
+ name: linux
+ - os: macos-latest
+ name: macos
+ runs-on: ${{ matrix.os }}
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+
+ - name: Setup .NET 8
+ uses: actions/setup-dotnet@v4
+ with:
+ dotnet-version: "8.0.x"
+
+ - name: Restore dependencies
+ run: dotnet restore
+
+ - name: Publish (win-x64)
+ run: dotnet publish -c Release -r win-x64 --self-contained false -o publish/
+
+ - name: Upload build artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: LegacyConsolePackEditor-${{ matrix.name }}
+ path: publish/
+
+ - name: Build Windows installer (Inno Setup)
+ if: matrix.name == 'windows'
+ run: iscc /DMySourceDir=publish LegacyConsolePackEditorInstaller.iss
+
+ - name: Upload Windows installer artifact
+ if: matrix.name == 'windows'
+ uses: actions/upload-artifact@v4
+ with:
+ name: LegacyConsolePackEditor-Installer
+ path: LegacyConsolePackEditor-Setup.exe
diff --git a/LegacyConsolePackEditor.csproj b/LegacyConsolePackEditor.csproj
index 0364b4c..2def62d 100644
--- a/LegacyConsolePackEditor.csproj
+++ b/LegacyConsolePackEditor.csproj
@@ -7,6 +7,7 @@
true
enable
Cactus_1.13.ico
+ true
MCLCE Texture Pack Editor
MCLCE Texture Pack Editor
MCLCETexturePackEditor
diff --git a/LegacyConsolePackEditorInstaller.iss b/LegacyConsolePackEditorInstaller.iss
index 6b427f7..43ac99c 100644
--- a/LegacyConsolePackEditorInstaller.iss
+++ b/LegacyConsolePackEditorInstaller.iss
@@ -1,7 +1,9 @@
#define MyAppName "MC LCE TP Editor"
#define MyAppVersion "0.3"
#define MyAppExeName "LegacyConsolePackEditor.exe"
-#define MySourceDir "C:\Users\eolia\minecraft-legacy-editor\LegacyConsolePackEditor\bin\Release\net8.0-windows"
+#ifndef MySourceDir
+ #define MySourceDir "bin\Release\net8.0-windows\win-x64\publish"
+#endif
[Setup]
AppId={{C8E7B3C2-4D3F-4B6A-9A1B-9F9D11B0A001}