forge
forge copied to clipboard
Add Built-in AppImage Maker
See: https://en.wikipedia.org/wiki/AppImage
I would rather not have code that calls the AppImage creator inside of Electron Forge, but rather it should be a separate package like the ones for .deb
, .rpm
, and Flatpak. (electron-installer-appimage
?)
Possibly @develar can share some insights or even code from his work with Electron and AppImage.
@probonopd Mantainers of this package decided to reinvent the wheel and declined the idea to use electron-builder under the hood — https://github.com/electron-userland/electron-forge/issues/1#issuecomment-267570247 In any case electron-builder will provide such API in the future (well, it is possible even now, just not documented / polished to be used standalone).
@develar I would avoid talking about "reinventing the wheel", given how electron-builder evolved.
In any event, if you (or another contributor) would like to extract the electron-builder AppImage code into a standalone NPM package (as mentioned in a related issue, preferably in the same style as the electron-installer-*
packages), we would be happy to investigate integrating that package into Electron Forge.
@malept https://github.com/develar/electron-builder/commit/9a3aee17e111dcb9ab3e1a4cdbe3491e0d0a392f#diff-9e7c5502a6b152427a4c43b0cd7d65d6
You can use electron-builder only to build prepackaged app into distributable format (AppImage, Snaps).
./node_modules/.bin/build --prepackaged <packed dir>
Do you like this solution (not yet merged to electron-builder)? Do you like CLI option name?
The main problem I have with this approach is that I don't want to add a heavyweight dependency where we'll only use a small fraction of the functionality. We're adhering to the Node community/UNIX convention where modules should ideally be created for one particular concept, and then meshed together in higher-level modules.
To reiterate what I said in an earlier comment:
if you (or another contributor) would like to extract the electron-builder AppImage code into a standalone NPM package (as mentioned in a related issue, preferably in the same style as the
electron-installer-*
packages), we would be happy to investigate integrating that package into Electron Forge.
@malept The only heavyweight dependency is request
from electron-download
(nugget
) :)
electron-builder downloads required binaries for various targets on the fly — so, if you build AppImage, nsis (or squirrel.windows, or anything else) will be not downloaded.
Ok, I got your point, thanks (e.g. currently archiver
is required only for squirrel.windows, but installed in any case).
Please check and possibly merge https://www.npmjs.com/package/electron-forge-maker-appimage
@probonopd All electron-builder targets now are available for electron-forge — https://github.com/electron-userland/electron-builder/issues/1193#issuecomment-288494214 (strictly speaking not all, but rest will be published in several days).
User just install mentioned module and can specify appimage target in the electron-forge config.
@develar am I missing an extra step to add the appimage make target besides:
-
yarn add electron-forge-maker-appimage
- add "appimage" to make_targets.linux
I get this error when I try to electron-forge make
:
┌─ 08:40 AM in ~/work/eforge
└───> electron-forge make
✔ Checking your system
✔ Resolving Forge Config
An unhandled rejection has occurred inside Forge:
Could not find a build target with the name: appimage for the platform: linux
Error: Could not find a build target with the name: appimage for the platform: linux
at _callee3$ (/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/make.js:170:19)
at tryCatch (/usr/local/share/.config/yarn/global/node_modules/regenerator-runtime/runtime.js:65:40)
at Generator.invoke [as _invoke] (/usr/local/share/.config/yarn/global/node_modules/regenerator-runtime/runtime.js:303:22)
at Generator.prototype.(anonymous function) [as next] (/usr/local/share/.config/yarn/global/node_modules/regenerator-runtime/runtime.js:117:21)
at Generator.tryCatcher (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/util.js:16:23)
at PromiseSpawn._promiseFulfilled (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/generators.js:97:49)
at Async._drainQueue (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/async.js:138:12)
at Async._drainQueues (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/async.js:143:10)
at Immediate.Async.drainQueues (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/async.js:17:14)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)
at processImmediate [as _immediateCallback] (timers.js:617:5)
And here is my config in a test program, "eforge":
{
"name": "eforge",
"productName": "eforge",
"version": "1.0.0",
"description": "My Electron application description",
"main": "src/index.js",
"scripts": {
"start": "electron-forge start",
"package": "electron-forge package",
"make": "electron-forge make",
"lint": "eslint src"
},
"keywords": [],
"author": "crunchex",
"license": "MIT",
"config": {
"forge": {
"make_targets": {
"win32": [
"squirrel"
],
"darwin": [
"zip"
],
"linux": [
"deb",
"rpm",
"appimage"
]
},
"electronPackagerConfig": {},
"electronWinstallerConfig": {
"name": "eforge"
},
"electronInstallerDebian": {},
"electronInstallerRedhat": {},
"github_repository": {
"owner": "",
"name": ""
},
"windowsStoreConfig": {
"packageName": "",
"name": "eforge"
}
}
},
"dependencies": {
"electron-compile": "^6.4.1",
"electron-forge-maker-appimage": "^17.0.1"
},
"devDependencies": {
"babel-plugin-transform-async-to-generator": "^6.24.1",
"babel-preset-env": "^1.4.0",
"babel-preset-react": "^6.24.1",
"electron-prebuilt-compile": "1.6.6",
"eslint": "^3.19.0",
"eslint-config-airbnb": "^14.1.0",
"eslint-plugin-import": "^2.2.0",
"eslint-plugin-jsx-a11y": "^3.0.0",
"eslint-plugin-react": "^6.10.3"
}
}
@crunchex Can you run with the DEBUG=electron-forge*
environment variable
And actually thinking about it, we just went through a breaking change in the API that our maker
logic expects (hence the recent 3.0.0
bump)
Makers now need to export an async function which determines if the maker can be used on the current system. Internal example and arguments are passed to the maker in one object instead of as multiple arguments example
The breaking change bump was made as per semver so if you want to use the existing electron-builder
makers until they are updated to the new API you can stick with electron-forge@^2.0.0
(anything in the 2.x.x major version)
/cc @develar
electron-forge-maker-appimage 18.2.0 published.
@develar looks like you added support for 3.0.0, but if I go through the same process and electron-forge init
a new test project and yarn add electron-forge-maker-appimage
with the latest version I still get the same error.
@MarshallOfSound here's the output with the latest version of the appimage package:
┌─ 05:09 PM in ~/work/eforge
└───> DEBUG=electron-forge* npm run make
> [email protected] make /home/mtl/work/eforge
> electron-forge make
WARNING: DEBUG environment variable detected. Progress indicators will be sent over electron-forge:lifecycle
electron-forge:lifecycle Process Started: Checking your system +0ms
electron-forge:lifecycle Process Succeeded: Checking your system +14ms
electron-forge:runtime-config setting key: verbose to value: false +6ms
WARNING: DEBUG environment variable detected. Progress indicators will be sent over electron-forge:lifecycle
electron-forge:lifecycle Process Started: Resolving Forge Config +0ms
electron-forge:project-resolver searching for project in: /home/mtl/work/eforge +2ms
electron-forge:project-resolver electron-forge compatible package.json found in /home/mtl/work/eforge/package.json +5ms
electron-forge:lifecycle Process Succeeded: Resolving Forge Config +5ms
electron-forge:require-search searching [ '../makers/linux/appimage.js',
'../makers/generic/appimage.js',
'electron-forge-maker-appimage',
'appimage',
'/home/mtl/work/eforge/appimage',
'/home/mtl/work/eforge/node_modules/appimage',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/makers/linux/appimage.js',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/makers/generic/appimage.js',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/electron-forge-maker-appimage',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/appimage',
'/home/mtl/work/eforge/appimage',
'/home/mtl/work/eforge/node_modules/appimage',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/makers/linux/appimage.js',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/makers/generic/appimage.js',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/node_modules/electron-forge-maker-appimage',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/node_modules/appimage',
'/home/mtl/work/eforge/appimage',
'/home/mtl/work/eforge/node_modules/appimage' ] relative to /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api +0ms
electron-forge:require-search testing ../makers/linux/appimage.js +3ms
electron-forge:require-search testing ../makers/generic/appimage.js +0ms
electron-forge:require-search testing electron-forge-maker-appimage +0ms
electron-forge:require-search testing appimage +0ms
electron-forge:require-search testing /home/mtl/work/eforge/appimage +0ms
electron-forge:require-search testing /home/mtl/work/eforge/node_modules/appimage +0ms
electron-forge:require-search testing /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/makers/linux/appimage.js +0ms
electron-forge:require-search testing /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/makers/generic/appimage.js +1ms
electron-forge:require-search testing /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/electron-forge-maker-appimage +0ms
electron-forge:require-search testing /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/appimage +0ms
electron-forge:require-search testing /home/mtl/work/eforge/appimage +0ms
electron-forge:require-search testing /home/mtl/work/eforge/node_modules/appimage +0ms
electron-forge:require-search testing /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/makers/linux/appimage.js +0ms
electron-forge:require-search testing /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/makers/generic/appimage.js +0ms
electron-forge:require-search testing /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/node_modules/electron-forge-maker-appimage +0ms
electron-forge:require-search testing /usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/node_modules/appimage +0ms
electron-forge:require-search testing /home/mtl/work/eforge/appimage +1ms
electron-forge:require-search testing /home/mtl/work/eforge/node_modules/appimage +0ms
electron-forge:require-search failed to find a module in [ '../makers/linux/appimage.js',
'../makers/generic/appimage.js',
'electron-forge-maker-appimage',
'appimage',
'/home/mtl/work/eforge/appimage',
'/home/mtl/work/eforge/node_modules/appimage',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/makers/linux/appimage.js',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/makers/generic/appimage.js',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/electron-forge-maker-appimage',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/appimage',
'/home/mtl/work/eforge/appimage',
'/home/mtl/work/eforge/node_modules/appimage',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/makers/linux/appimage.js',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/makers/generic/appimage.js',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/node_modules/electron-forge-maker-appimage',
'/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/node_modules/appimage',
'/home/mtl/work/eforge/appimage',
'/home/mtl/work/eforge/node_modules/appimage' ] +0ms
An unhandled rejection has occurred inside Forge:
Could not find a build target with the name: appimage for the platform: linux
Error: Could not find a build target with the name: appimage for the platform: linux
at _callee3$ (/usr/local/share/.config/yarn/global/node_modules/electron-forge/dist/api/make.js:170:19)
at tryCatch (/usr/local/share/.config/yarn/global/node_modules/regenerator-runtime/runtime.js:65:40)
at Generator.invoke [as _invoke] (/usr/local/share/.config/yarn/global/node_modules/regenerator-runtime/runtime.js:303:22)
at Generator.prototype.(anonymous function) [as next] (/usr/local/share/.config/yarn/global/node_modules/regenerator-runtime/runtime.js:117:21)
at Generator.tryCatcher (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/util.js:16:23)
at PromiseSpawn._promiseFulfilled (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/generators.js:97:49)
at Promise._settlePromise (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/promise.js:574:26)
at Promise._settlePromise0 (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/promise.js:614:10)
at Promise._settlePromises (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/promise.js:693:18)
at Async._drainQueue (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/async.js:133:16)
at Async._drainQueues (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/async.js:143:10)
at Immediate.Async.drainQueues (/usr/local/share/.config/yarn/global/node_modules/bluebird/js/release/async.js:17:14)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)
at processImmediate [as _immediateCallback] (timers.js:617:5)
npm ERR! Linux 4.4.0-77-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "run" "make"
npm ERR! node v7.9.0
npm ERR! npm v4.2.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] make: `electron-forge make`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] make script 'electron-forge make'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the eforge package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! electron-forge make
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs eforge
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls eforge
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/mtl/.npm/_logs/2017-05-03T00_10_17_252Z-debug.log
Looks like a small bug in our maker resolver. Can you try (for now) setting the make target in your config to be "electron-forge-maker-appimage" instead of just "appimage". It should get it working for now and I'll get a fix out for the underlying issue soon :)
@MarshallOfSound great, that worked and a super reasonable workaround. Thanks!
Issue can be closed?
I get next error
> electron-forge publish
✔ Checking your system
✔ Resolving Forge Config
An unhandled rejection has occurred inside Forge:
Path must be a string. Received undefined
TypeError: Path must be a string. Received undefined
at assertPath (path.js:28:11)
at Object.resolve (path.js:1171:7)
at buildForge (/home/dinko/public_html/seven-shop-electron/node_modules/electron-builder-lib/src/forge-maker.ts:16:22)
at new exports.default (/home/dinko/public_html/seven-shop-electron/node_modules/electron-forge-maker-appimage/main.js:12:10)
at /home/dinko/public_html/seven-shop-electron/node_modules/@electron-forge/core/src/api/make.ts:113:15
at Generator.next (<anonymous>)
at step (/home/dinko/public_html/seven-shop-electron/node_modules/@electron-forge/core/dist/api/make.js:38:221)
at _next (/home/dinko/public_html/seven-shop-electron/node_modules/@electron-forge/core/dist/api/make.js:38:409)
at <anonymous>
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] publish: `electron-forge publish`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] publish script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/dinko/.npm/_logs/2018-05-22T14_20_23_681Z-debug.log
package.json
{
"name": "pr",
"productName": "pr",
"version": "1.0.13",
"description": "My Electron application description",
"main": "src/index.js",
"scripts": {
"start": "electron-forge start --inspect-electron",
"package": "electron-forge package",
"make": "electron-forge make",
"publish": "electron-forge publish",
"lint": "echo \"No linting configured\""
},
"keywords": [],
"author": "dinko",
"license": "MIT",
"config": {
"forge": {
"packagerConfig": {},
"makers": [
{
"name": "@electron-forge/maker-deb",
"platforms": [
"linux"
],
"config": {}
},
{
"name": "electron-forge-maker-appimage",
"platforms": [
"linux"
],
"config": {}
}
],
"publishers": [
{
"name": "@electron-forge/publisher-nucleus",
"platforms": [
"linux"
],
"config": {
"host": "http://127.0.0.1:8888",
"appId": "1",
"channelId": "db0b627c9946b8dcaecab8006c2b49ff",
"token": "2b729ba59591bf3e745758c0cf674985"
}
}
]
}
},
"dependencies": {
"electron-squirrel-startup": "^1.0.0"
},
"devDependencies": {
"@electron-forge/cli": "^6.0.0-beta.16",
"@electron-forge/maker-deb": "^6.0.0-beta.16",
"@electron-forge/maker-rpm": "^6.0.0-beta.16",
"@electron-forge/publisher-nucleus": "^6.0.0-beta.16",
"electron": "2.0.1",
"electron-forge-maker-appimage": "^20.14.4"
}
Getting the same error @DinkoMiletic. Did you manage to fix it?
TLDR: a class for AppImage that extends MakerBase is missing. I hacked one in locally and it worked great! I have no idea where I should open a PR, either in electron-forge, electron-builder, or just make a new repo to hold the electron-forge maker.
I'm also unable to package my project as an AppImage with the same error, TypeError: Path must be a string. Received undefined
The root problem appears to be that the electron-forge-maker-appimage
simply exports a default function that returns a promise. Shown here:
https://github.com/electron-userland/electron-builder/blob/ebbd9f796e2d8d5b0720b2b699ba24dc159ee692/packages/electron-forge-maker-appimage/main.js#L12
However, electron-forge expects a class instead, MakerClass. Consumption of this is shown here: https://github.com/electron-userland/electron-forge/blob/fbbf9c8b05e4453261c62c1baaad0ba32bed373b/packages/api/core/src/api/make.ts#L115
For example, you can see this class in in the Zip Maker: https://github.com/electron-userland/electron-forge/blob/fbbf9c8b05e4453261c62c1baaad0ba32bed373b/packages/maker/zip/src/MakerZIP.ts#L9
I was able to get this work by modifying the electron-forge-maker-appimage source in place and replaced the default exported function with a class that extends MakerBase, and was able to get an app image to generate and run!
I'm working on a pull request but I ran into a snag, and I'm not sure what to do.
I'm working on updating this file to export a default class instead of a default function:
builder/blob/ebbd9f796e2d8d5b0720b2b699ba24dc159ee692/packages/electron-forge-maker-appimage/main.js#L12
I'm doing this in the electron-builder repository, but I just realized that the fully featured base class, MakerBase
from "@electron-forge/maker-base", is in the electron-forge repo.
What is the right way to do this?
- only touch electron-builder, and just re-implement the class members that are provided by the MakerBase in electron-forge.
- just put the maker class for AppImage in the electron-forge codebase, along side the rest here: https://github.com/electron-userland/electron-forge/tree/master/packages/maker
Or if I'm going down the wrong route, please let me know.
only touch electron-builder, and just re-implement the class members that are provided by the MakerBase in electron-forge.
@electron-forge/maker-base
is deliberately a separate module, why not just use it as a dependency? npm install @electron-forge/maker-base
Thanks @MarshallOfSound, just updated the PR https://github.com/electron-userland/electron-builder/pull/4131 This is my first contribution to electron-userland, any suggestions for next steps?
Digging into this further, I have a few questions.
Are makers based on buildForge
from forge-maker.ts in app-builder-lib of electron-builder obsolete? Only 4 makers in the electron-builder repository are based on buildForge
. snap, nsis, nsis-web, and appimage. I've tested both the appimage and snap makers, which just don't work due to electron-forge expecting them to export a class extending Maker instead of an async function.
In the case of snap, there is a newer version of this maker in the electron-forge repository: @electron-forge/maker-snap
which works great; it's not based on buildForge
, while the electron-forge-maker-snap
package from electron-builder does not work.
Also, I'm not sure about this but it seems like app-builder-lib might be obsolete, or just not designed to work with electron forge. I noticed that after I got buildForge
working for AppImage, that my application's meta data (version, etc) was not entirely correct because app-builder-lib's packageMetadata.ts
does not attempt to call the hooks in forgeconfig.js in its readPackageJson
function.
It looks like the right solution is not simply to update electron-forge-maker-appimage
in electron-builder to use the Maker base class, but to actually write a new maker modeled after the makers in electron-forge.
For example, deb packages are built using two packages:
@electron-forge/maker-deb
- a lightweight wrapper package inside of the electron-forge repo
electron-installer-debian
- a separate repository that handles the heavy lifting of packaging for deb.
I'm trying to build a new AppImage packager that follows the same general layout, and right now I'm trying to use some of the internals of app-builder-lib
and its go based packaging binary, while trying to copy the other electron-forge friendly makers.
Suggestions welcome, I'm quite lost. I'm only in this mess because we're using AppImage's AppRun.sh script to allow us to load libstdc++ and libgcc_s on select systems before launching the electron binary.
Ok, I'm still using some of the bits in app-builder-lib
but it's a pretty minimal set.
I have a new package, electron-forge-maker-appimage
which is working! It's very rough around the edges.
https://github.com/Marcus10110/electron-forge-maker-appimage
However it's now working for our application packaging needs!
@develar Do you mind updating electron-forge-maker-appimage for electron-forge v6?
@MarshallOfSound What may @develar need to update?
This is my electron-forge config:
module.exports = {
makers: [
{name: 'electron-forge-maker-appimage'},
],
}
This is the error I get:
An unhandled rejection has occurred inside Forge:
TypeError: Cannot read property 'targetArch' of undefined
at new exports.default (/home/trusktr/src/foo+bar/node_modules/electron-forge-maker-appimage/main.js:12:59)
at _default (/home/trusktr/src/foo+bar/node_modules/@electron-forge/core/src/api/make.ts:128:15)
at /home/trusktr/src/foo+bar/node_modules/@electron-forge/cli/src/electron-forge-make.ts:44:5
Oh, I just saw @Marcus10110's pull request on electron-builder: https://github.com/electron-userland/electron-builder/pull/4131. That does the trick.
To use @Marcus10110's version of electron-forge-maker-appimage as a dependency from git, I added this change: https://github.com/saleae/electron-forge-maker-appimage/pull/1. Then I put the following in my package.json pointing to my fork (for now):
{
"devDependencies": {
...
"electron-forge-maker-appimage": "trusktr/electron-forge-maker-appimage#patch-1",
...
}
}
Just ran into this error myself. Is depending on that patched version: trusktr/electron-forge-maker-appimage#patch-1
still a viable solution, or is there another AppImage maker?
Just ran into this error myself. Is depending on that patched version: trusktr/electron-forge-maker-appimage#patch-1 still a viable solution, or is there another AppImage maker?
@stevewillard I've forked @trusktr's repository and done some improvements into the code. Currently I use my fork for my own Electron-based project.
@SpacingBat3 Does it support auto-updates?
@SpacingBat3 Does it support auto-updates?
From what I believe, no. I believe this would need a major code rewrite if you would like some feature like that. I may develop my own maker for that in the future from scratch, so it won't depend on app-builder, but will require to have mksquashfs
binary installed within the OS (like other makers like ones for deb
or snap
, it will display an error when it's not installed). Also, I would need to get familiar with the AppImage documentation to properly implement it. Right now you could notify the users about the updates if you care your users are using up-to-date or supported versions (this is what I am doing right now).
Using this package cause The "path" argument must be of type string. Received undefined
makers: [
{
name: '@electron-forge/maker-squirrel',
platforms: ['win32'],
config: (arch) => {
return {
setupExe: `Install-TidGi-${version}-Windows-${arch}.exe`,
setupIcon: 'build-resources/icon-installer.ico',
};
},
},
{
name: '@electron-forge/maker-zip',
platforms: ['darwin'],
},
{
name: '@electron-forge/maker-deb',
config: {
maintainer: 'Lin Onetwo <[email protected]>',
},
},
{
name: '@electron-forge/maker-rpm',
config: {
maintainer: 'Lin Onetwo <[email protected]>',
},
},
{
name: 'electron-forge-maker-appimage',
config: {
maintainer: 'Lin Onetwo <[email protected]>',
},
},
],
Try install https://github.com/SpacingBat3/electron-forge-maker-appimage @SpacingBat3 resulted in this in the gh action
Run npm ci
npm ERR! Error while executing:
npm ERR! /usr/bin/git ls-remote -h -t ssh://[email protected]/Marcus10110/electron-forge-maker-appimage.git
npm ERR!
npm ERR! Warning: Permanently added the RSA host key for IP address '140.82.112.4' to the list of known hosts.
npm ERR! [email protected]: Permission denied (publickey).
npm ERR! fatal: Could not read from remote repository.
npm ERR!
npm ERR! Please make sure you have the correct access rights
npm ERR! and the repository exists.
npm ERR!
npm ERR! exited with error code: 128