Electron-updater: Appimage linux updater fails with ENOSYS: function not implemented
See original GitHub issue- Version: 4.1.2 (electron-updater)
- Target: Linux Appimage, Manjaro Linux
Electron updater errors out with the following logs:
Checking for update...
Found version 1.1.70727281 (url: sag-electron-1.1.70727281.AppImage)
Update available.
Downloading update from sag-electron-1.1.70727281.AppImage
updater cache dir: /home/elite/.cache/sag-electron-updater
Update has already been downloaded to /home/elite/.cache/sag-electron-updater/pending/sag-electron-1.1.70727281.AppImage).
Update downloaded; will install in 1 seconds
Auto install update on quit
Install: isSilent: true, isForceRunAfter: false
Error: Error: ENOSYS: function not implemented, unlink '/run/user/1000/appimagelauncherfs/0001.AppImage'
at Object.unlinkSync (fs.js:1008:3)
at AppImageUpdater.doInstall (/tmp/.mount_sag-elLEvSvQ/resources/app.asar/node_modules/electron-updater/out/AppImageUpdater.js:144:9)
at AppImageUpdater.install (/tmp/.mount_sag-elLEvSvQ/resources/app.asar/node_modules/electron-updater/out/BaseUpdater.js:71:19)
at /tmp/.mount_sag-elLEvSvQ/resources/app.asar/node_modules/electron-updater/out/BaseUpdater.js:104:12
at App.<anonymous> (/tmp/.mount_sag-elLEvSvQ/resources/app.asar/node_modules/electron-updater/out/ElectronAppAdapter.js:60:48)
at Object.onceWrapper (events.js:282:20)
at App.emit (events.js:199:15)
at App.<anonymous> (/tmp/.mount_sag-elLEvSvQ/resources/app.asar/main.js:41:42)
at App.emit (events.js:199:15)
What’s interesting to note here is that /run/user/1000/appimagelauncherfs/
contains copies of appimages that are currently running. The error log implies that process.env.APPIMAGE
does not return the path where the file was started from (by the user). I suspect that this is an issue with AppImageLauncher, which is the default method of integrating and running appimages on a lot of systems. This could easily be solved if there was some way of knowing what directory the appimage was actually started from.
Package.json: https://gitlab.com/nullworks/accgen/accgen-electron-app/blob/CD/package.json Node ver: v11.15.0 Npm ver: 6.10.0
Issue Analytics
- State:
- Created 4 years ago
- Reactions:6
- Comments:33 (5 by maintainers)
Top Results From Across the Web
ENOSYS: function not implemented Show Error in Linux.
My installation stopped, and I show an ENOSYS: function not implemented Error. Error show again and again. I'm Go to StackOverflow and try...
Read more >electron-updater-appimage-fix - npm
Cross platform updater for electron applications with fixes for auto updating AppImages on Linux. Latest version: 0.0.0-semantic-release, ...
Read more >[resolved] Orbx Linux doesn't work - Orbx Central Support Forum
So I can log in. I can't use it. Also a lot of noise on the terminal: $ ./orbx-central-0.17.2.AppImage Checking for update ......
Read more >Electron-Builder Linux updates - APPIMAGE env is not defined
I am using Electron Updater (https://github.com/develar/electron-updater) for auto updates. Platform: Linux, Format: AppImage. When my app ...
Read more >Making AppImages updateable
Unlike other Linux distribution methods, the information where to look for updates is not contained in separate repository description files ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
It’s sad to see zero reaction from the electron builder team. I’m not a fan reading when people (have to?) recommend users to uninstall AppImageLauncher entirely for some auto-update (which I’m not a fan of) or general updates to work as intended. If there were a workaround I could implement, that’d be no problem, but it’s really not that hard to fix the problem in the Electron updater itself.
The AppImage type 3 currently discussed here fixes the need for AppImageLauncher to ship with a custom FUSE filesystem which could cause trouble.
binfmt_misc
is to blame here, too.@ozooner @mcous please recommend your users AppImageLauncher Lite instead of uninstalling AppImageLauncher entirely. The Lite version is not affected by this bug. And it provides at least some better desktop integration.
I believe this issue is still relevant. AppImageLauncher is recommended by electron-builder for desktop integration, but electron-updater does not work with AppImageLauncher installed AppImages