Skip to content

Release

Release #16

Workflow file for this run

name: Release
on:
push:
tags: ['v*']
jobs:
release:
runs-on: windows-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- name: Setup .NET 8
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.x'
- name: Extract version from tag
id: version
shell: bash
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV
- name: Restore dependencies
run: dotnet restore
- name: Run tests
run: dotnet test --configuration Release --no-restore
# ── Standalone EXE: self-contained, compressed, all native libs bundled ──
- name: Publish standalone EXE
run: >
dotnet publish src/ClipHive/ClipHive.csproj
-c Release -r win-x64 --self-contained true
-p:PublishSingleFile=true
-p:EnableCompressionInSingleFile=true
-p:PublishReadyToRun=false
-p:IncludeNativeLibrariesForSelfExtract=true
-p:Version=${{ env.VERSION }}
-o dist/standalone
# ── Installer payload: framework-dependent, no runtime bundled ───────────
- name: Publish installer payload
run: >
dotnet publish src/ClipHive/ClipHive.csproj
-c Release -r win-x64 --self-contained false
-p:Version=${{ env.VERSION }}
-o dist/release
- name: Install Inno Setup
run: choco install innosetup -y --no-progress --ignore-checksums || true
- name: Build installer
shell: cmd
run: |
"C:\Program Files (x86)\Inno Setup 6\ISCC.exe" /DMyAppVersion=${{ env.VERSION }} installer\ClipHive.iss
- name: Copy standalone EXE to dist
shell: bash
run: cp dist/standalone/ClipHive.exe "dist/ClipHive-${{ env.VERSION }}-Standalone.exe"
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
files: |
dist/ClipHive-${{ env.VERSION }}-Setup.exe
dist/ClipHive-${{ env.VERSION }}-Standalone.exe
generate_release_notes: true
draft: false
body: |
## Downloads
| File | Description |
|------|-------------|
| `ClipHive-${{ env.VERSION }}-Setup.exe` | **Recommended** — Installer (~20 MB). Requires [.NET 8 Desktop Runtime](https://dotnet.microsoft.com/download/dotnet/8.0) — the installer will prompt if it's missing. |
| `ClipHive-${{ env.VERSION }}-Standalone.exe` | Portable EXE, no installer needed (~90 MB, .NET runtime bundled) |
### Requirements
- Windows 10 version 1809 or later (Windows 11 fully supported)
- **Installer**: .NET 8 Windows Desktop Runtime (prompted if missing)
- **Standalone**: No .NET installation required — runtime is bundled
### First Run
After installation, ClipHive starts in the system tray.
Press **Ctrl + Shift + V** to open your clipboard history.