From 629ae6899ae9930fbdd45b2341f4d7fd4aefbc2f Mon Sep 17 00:00:00 2001 From: Rukira Date: Tue, 25 Aug 2026 16:06:46 +0100 Subject: [PATCH] Publish via Homebrew --- .github/workflows/release.yml | 30 +++++++++++++++ INSTALL.md | 72 ++++++++++++++++++++++++++--------- 2 files changed, 84 insertions(+), 18 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1a22ca1..b2360d9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -206,3 +206,33 @@ jobs: done echo "Forgejo release published successfully." + + - name: Update Homebrew Tap Cask + env: + FORGEJO_PAT: ${{ secrets.FORGEJO_PAT }} + RELEASE_VERSION: ${{ needs.bump-version.outputs.version }} + run: | + DMG_FILE=$(find dist -name "*.dmg" | head -n 1) + if [ -z "$DMG_FILE" ] || [ ! -f "$DMG_FILE" ]; then + echo "::error::No DMG file found in dist/ to update Homebrew Cask." + exit 1 + fi + + SHA256=$(sha256sum "$DMG_FILE" | awk '{print $1}') + echo "Calculated DMG SHA256: ${SHA256} for version ${RELEASE_VERSION}" + + echo "Cloning homebrew-tap repository..." + git clone "https://rukira:${FORGEJO_PAT}@git.asarius.site/rukira/homebrew-tap.git" tap-repo + cd tap-repo + + echo "Updating Casks/wow-backup.rb..." + sed -i "s/version \".*\"/version \"${RELEASE_VERSION}\"/" Casks/wow-backup.rb + sed -i "s/sha256 \".*\"/sha256 \"${SHA256}\"/" Casks/wow-backup.rb + + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + git add Casks/wow-backup.rb + git commit -m "chore(cask): update wow-backup to v${RELEASE_VERSION}" || echo "No changes to commit" + git push origin main + + echo "Homebrew tap updated successfully." diff --git a/INSTALL.md b/INSTALL.md index 1463ea0..b7ff920 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -14,24 +14,6 @@ _Note: The Linux version is untested and experimental. Use at your own risk._ --- -## macOS - -1. Download the `.dmg` file from the latest release. -2. Double-click the `.dmg` file to mount the disk image. -3. Drag **WoW Backup.app** into your `/Applications` folder. -4. Eject the disk image. - -### Unsigned Application / Gatekeeper Notice -Because WoW Backup is distributed without Apple Developer ID code-signing notarization, macOS Gatekeeper may show a warning on first launch (*"WoW Backup cannot be opened because the developer cannot be verified"* or *"Apple could not verify that WoW Backup is free of malware"*). - -To launch the app for the first time: -1. Open **System Settings** -2. Navigate to **Security & Privacy**. -3. Click **Open Anyway** under **Allow apps downloaded from**. -4. Restart WoW Backup. - ---- - ## Windows 1. Download the `.msi` installer from the latest release. @@ -46,6 +28,60 @@ If Windows Defender SmartScreen flags the installer (*"Windows protected your PC --- +## macOS + +### Option 1: Install via Homebrew (Recommended) + +Installing via [Homebrew](https://brew.sh/) automatically handles macOS quarantine flags and simplifies future updates: + +**Install:** +1. Add the tap: + ```shell + brew tap rukira/tap https://git.asarius.site/rukira/homebrew-tap.git + ``` + +2. Install WoW Backup: + ```shell + brew install --cask --no-quarantine wow-backup + ``` + +**Update:** + ```shell + brew update + brew upgrade --cask wow-backup + ``` + +**Uninstall:** + ```shell + brew uninstall --cask --zap wow-backup + ``` + +--- + +### Option 2: Manual DMG Download + +1. Download the `.dmg` file from the **[latest release](https://git.asarius.site/rukira/wow-backup/releases/latest)**. +2. Double-click the `.dmg` file to mount the disk image. +3. Drag **WoW Backup.app** into your `/Applications` folder. +4. Eject the disk image. + +#### Unsigned Application / Gatekeeper Notice +Because WoW Backup is distributed without Apple Developer ID code-signing notarization, macOS Gatekeeper may show a warning on first launch (*"WoW Backup cannot be opened because the developer cannot be verified"* or *"Apple could not verify that WoW Backup is free of malware"*). + +To launch the app: + +- **Terminal (Fastest):** Run the following command to strip the quarantine attribute: + ```shell + xattr -cr "/Applications/WoW Backup.app" + ``` +- **macOS System Settings:** + 1. Open **System Settings** → **Privacy & Security**. + 2. Scroll down to the **Security** section. + 3. Click **Open Anyway** next to the WoW Backup notice. + 4. Confirm and launch the app. + +--- + ## Linux (Experimental) 1. Download the `.deb` package from the latest release.