Skip to main content
Version: 4.35.0

macOS Auto-Update Support

Version: 4.35.0 Date: 2026-02-13

Goal: Enable automatic updates for macOS users, bringing feature parity with Windows.

Solution: Integrated electron-updater with channel detection (beta/stable) and nuts release API.

Features:

  • macOS users now see update notifications like Windows users
  • Auto-detection of beta/stable channel based on app version
  • Update banner with "Click to install and restart" action
  • Update error handling to hide banner on failure

Implementation Details:

  • Refactored autoUpdater setup into dedicated setupAutoUpdater(window) function
  • Feed URL uses nuts release API: /download/channel/{beta|stable}
  • Added update-error IPC event to reset UI state on failure
  • Modified setUpdate(boolean) action to support reset

Files Modified:

  • index.js - Refactored autoUpdater setup with channel detection
  • src/store/actions.ts - setUpdate now accepts boolean parameter
  • src/services/fileProtect/storeAction.ts - actionSetUpdate accepts boolean
  • src/services/fileProtect/ipcRenderAction.ts - Added update-error listener
  • package.json - Added mac.target: ["dmg", "zip"] for auto-update compatibility
  • .gitlab-ci.yml - Include .zip and *-mac.yml in artifacts