pkg

使用 Electron Forge 在 macOS 上為您的 Electron 應用程式建立 .pkg 檔案。

pkg 目標會為 macOS 建置一個 .pkg 安裝程式。這些用於將您的應用程式上傳到 Mac App Store (MAS),或可以用作在應用程式商店之外向使用者發佈的替代方法。

這種格式通常因歷史原因而被稱為平面套件安裝程式。在 Mac OS X Leopard (10.5) 之前,安裝套件是以階層式目錄組織的。OS X Leopard 引入了一種新的平面套件格式,用於現代的 .pkg 安裝程式。

Apple 對平面安裝程式套件格式的文檔很少。如果您想了解更多有關其規格的信息,可以使用一些使用者端的文章

需求

您只能在以 darwinmas 平台為目標的 macOS 機器上建置 pkg 目標。

安裝

npm install --save-dev @electron-forge/maker-pkg

用法

若要使用 @electron-forge/maker-pkg,請將其新增至您的Forge 組態設定中的 makers 陣列。

forge.config.js
module.exports = {
  makers: [
    {
      name: '@electron-forge/maker-pkg',
      config: {
        keychain: 'my-secret-ci-keychain'
        // other configuration options
      }
    }
  ]
};

所有組態設定選項都是可選的,並且選項記錄在 MakerPkgConfig的 API 文件中。

新增安裝腳本

使用 pkg 製作器,您可以新增一個 preinstallpostinstall bash 腳本,該腳本分別在您的應用程式安裝之前和之後執行。

preinstallpostinstall 腳本都需要

  • 具有執行權限

  • 沒有副檔名

  • 位於您檔案系統中的同一個資料夾中

例如,它們可以位於您專案中名為 scripts 的資料夾中。

my-app
├─── forge.config.js
└─── scripts
    ├── postinstall
    └── preinstall

然後,您的 Forge 組態設定將需要指向 ./scripts 資料夾。

forge.config.js
const path = require('node:path');

module.exports = {
  makers: [
    {
      name: '@electron-forge/maker-pkg',
      config: {
        install: path.join(__dirname, 'scripts)
      }
    }
  ]
};

偵錯

您的平面套件安裝程式的所有記錄都可以在 macOS 安裝記錄中找到,這些記錄儲存在 /var/log/install.log 中。它們也可以在 Console.app 公用程式中存取。

對於此製作器的高階偵錯記錄,請新增 DEBUG=electron-osx-sign* 環境變數。

上次更新時間