Skip to content

Update inklab.db

Update inklab.db #35

Workflow file for this run

name: Release
on:
push:
tags:
- "v*"
workflow_dispatch:
permissions:
contents: write
jobs:
release:
name: Build and Release
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
include:
- os: windows-latest
platform: windows/amd64
artifact_base: InkLab-Windows
artifact_ext: zip
build_tags: ""
- os: ubuntu-latest
platform: linux/amd64
artifact_base: InkLab-Linux
artifact_ext: tar.gz
build_tags: "-tags webkit2_41"
- os: macos-latest
platform: darwin/universal
artifact_base: InkLab-macOS
artifact_ext: zip
build_tags: ""
runs-on: ${{ matrix.os }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
lfs: false
- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: "1.23"
check-latest: true
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install Linux Dependencies
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev
- name: Install Wails
run: go install github.com/wailsapp/wails/v2/cmd/wails@v2.11.0
- name: Install Frontend Dependencies
working-directory: frontend
run: npm install
- name: Set build version
shell: bash
run: |
VERSION="${{ github.ref_name }}"
VERSION="${VERSION#v}"
node -e "const fs=require('fs');const j=JSON.parse(fs.readFileSync('wails.json'));j.info.productVersion='$VERSION';fs.writeFileSync('wails.json',JSON.stringify(j,null,4)+'\n');"
echo "Set wails.json productVersion to $VERSION"
- name: Build
run: wails build -platform ${{ matrix.platform }} -skipbindings ${{ matrix.build_tags }} -ldflags "-X main.Version=${{ github.ref_name }} -X main.Repo=${{ github.repository }}"
# --- Windows Packaging ---
# The database is embedded in the binary; icons/maps/npc_images are built
# locally by the user (Import tab) and created under data/ on first run.
# So we ship just the executable — no empty data folders.
- name: Package Windows
if: matrix.os == 'windows-latest'
shell: pwsh
run: |
Compress-Archive -Path "build/bin/InkLab.exe" -DestinationPath "InkLab-Windows-${{ github.ref_name }}.zip"
# --- Linux Packaging ---
- name: Package Linux
if: matrix.os == 'ubuntu-latest'
run: |
tar -czvf "InkLab-Linux-${{ github.ref_name }}.tar.gz" -C build/bin InkLab
# --- macOS Packaging ---
- name: Package macOS
if: matrix.os == 'macos-latest'
run: |
cd build/bin
ditto -c -k --sequesterRsrc --keepParent InkLab.app InkLab.app.zip
mv InkLab.app.zip "../../InkLab-macOS-${{ github.ref_name }}.zip"
- name: Upload Release Asset
uses: softprops/action-gh-release@v1
with:
files: ${{ matrix.artifact_base }}-${{ github.ref_name }}.${{ matrix.artifact_ext }}
draft: false
prerelease: false
generate_release_notes: true