question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

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:closed
  • Created 4 years ago
  • Reactions:6
  • Comments:33 (5 by maintainers)

github_iconTop GitHub Comments

8reactions
TheAssassincommented, May 20, 2020

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.

8reactions
mcouscommented, Jan 10, 2020

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

Read more comments on GitHub >

github_iconTop 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 >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found