====== Electron-forge ====== いつのまにか正式にElectron-forge なるものが electron-builder に取って代わっていたので、メモ。導入等はオフィシャルで確認 * https://www.electronforge.io/ 初期導入時では dmg 等いくつかのパッケージがないため、それらは別途 package.json もしくは forge.config.js に追記の必要があり。 ===== 既存のプロジェクトをimportして配布する(github上)までの流れ ===== おそらくこのパターンが自分にとって一番多いので、メモしておく。なおmacOS環境でwindowsのパッケージまでを作成するのは現時点(2023年10月8日)では困難であるのがわかり、windows環境でビルドしておくほかなし。 - https://www.electronforge.io/import-existing-project の手順どおりに実行 ==== 基本的な考え方 ==== package.json側では基本的に electron-forge のコマンドを追加するだけ、ビルドするパッケージや発行先などの情報は forge.config.js に記載することになる。 ====== code signing and notarize ====== code signing と notarizeはmacOSで配布する際に一般ユーザを対象としているならばほぼ必須の手順である。なかなかうまく行かなかったのでここにメモる。基本的には * https://www.electronjs.org/ja/docs/latest/tutorial/tutorial-publishing-updating ここをよく読んで丁寧に進めれば問題ない。ただしこちらの環境では process.envが機能しなかったため、forge.config.jsに直接アカウント情報などを入力する必要があった。 "osxNotarize": { "tool": "notarytool", "appBundleId": "QuickGPT", "appleId": "hogehoge@hogehoge.com", "appleIdPassword": "hoge-hoge-hoge-hoge", "teamId": "hogehoge", } みたいな感じでforge.config.jsの module.exports内に記述した。