name: Release on: push: tags: - '[0-9][0-9][0-9][0-9].[0-9][0-9].[0-9][0-9]*' permissions: contents: write jobs: release: runs-on: macos-latest steps: - name: checkout uses: actions/checkout@v4 - name: setup Python uses: actions/setup-python@v5 with: python-version: '3.12' - name: install Python dependencies run: pip install fpdf2 - name: extract version from tag id: version run: echo "version=${GITHUB_REF_NAME}" >> "$GITHUB_OUTPUT" - name: build bundle run: bash scripts/build-bundle.sh --version "${{ steps.version.outputs.version }}" - name: validate layouts run: python3 scripts/validate_layouts.py - name: create DMG run: bash scripts/build-dmg.sh --version "${{ steps.version.outputs.version }}" - name: create GitHub release uses: softprops/action-gh-release@v2 with: name: EurKEY Next ${{ steps.version.outputs.version }} files: build/EurKEY-Next-${{ steps.version.outputs.version }}.dmg body: | ## EurKEY Next - **ANSI compatibility:** the ISO-only key between left Shift and Z does not exist on ANSI keyboards. Its characters § and ± are now accessible via the `⌥\` dead key (`⌥\` `s` → §, `⌥\` `S` → ±). - Normalize Caps Lock: Caps Lock = Shift, no special bindings. - Configure every key exactly as printed on the MacBook keyboard (ISO, English International). - Remove distinction between left/right modifier keys. - Rename all dead key states to their initializing key combination for easier identification. - Fix Greek dead key terminator (Ω → α) to match official EurKEY spec. - Fix modifier key order to Apple canonical: Option+Shift (not Shift+Option). - Clean up duplicate dead key compositions. - Change Mathematicians (`⌥⇧m`) dead key terminator from invisible space to 𝕄. ## v1.4 - Normalize Caps Lock: Caps Lock = Shift, no special bindings. - Fix accidental Caps Lock changes from previous release. ## v1.3 - Normalize Caps Lock: Caps Lock = Shift, no special bindings. ## v1.2 - Normalize Caps Lock: Caps Lock = Shift, no special bindings. ## Project - Rename v2.0 → EurKEY Next. - Rename bundle to `EurKEY-Next.bundle`. - New lightweight static website at eurkey-macos.eu. - Interactive keyboard viewer with modifier layer preview and dead key compositions. - Layout PDF downloads. - New monochrome macOS template icon. - Restructure project with automated build, validation, and release pipelines. ## Installation 1. Download `EurKEY-Next-${{ steps.version.outputs.version }}.dmg` 2. Open the DMG 3. Drag `EurKEY-Next.bundle` to the `Install Here (Keyboard Layouts)` folder 4. Log out and back in (or restart) 5. System Settings → Keyboard → Input Sources → Add → Select EurKEY Next generate_release_notes: false