-
-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AppImage errs out when /tmp is mounted with noexec #1125
Comments
If you find a way to fix this while also continuing to use the electron builder package let me know. We do not manually build the app image the library we use for packaging does. |
Disclaimer: I have absolutely zero experience with Electron.
The tmp directory that I set up for Wowup includes the whole app code, so maybe even set asar to false for Linux platform? I cannot find any asar setting in your electron-builder.json and I'm not sure what the default value is. |
The AUR package is also affected by I can confirm that the following configuration fixes the AUR package.
|
Running into this issue via downloaded AppImage file on Fedora 35 as well. Is the fix above being tested, or is it not a complete fix? |
I've tried running with this fix, but to no avail. The error still shows up, and the UI for the addons for a WoW install is empty. Mind you, I'm not 100% clear on how to test this. I did the npm install, then 'npm run electron:local'. I've also tried 'npm run electron:build:local', which made an unpacked installation - when run, it gave the same error. I also couldn't get it working via making a tempdir, at least not via Then again, my error is actually slightly different... When I run the release 2.7.0 AppImage with no special handling:
When I give it a tmpdir:
So it's not actually the 'failed to map segment from shared object' error. Should I split mine out into a new ticket at this point? It's a different message, but a similar 'AppImage is failing as it can't load resources' error... |
It does fix the AUR package. AppImage is not tested. As far as I have tested, modify fig. (1) |
The error message “ERR_FAILED (-2) loading ...” may indicate some other things go wrong. Message related to I tried the command |
It's the default Fedora kernel, and I have docker installed and working. I also have has CONFIG_USER_NS=y in the /boot/config, so I'm 99.9% sure it is. Opened #1169 for my issue. |
We provided the fix in code. I should not need to fork a repository just to promote a ONE LINE ONLY code change. |
If you open the file in github, there's an edit button and you can quickly propose the change that way |
I did. That automatically generates a fork. |
Can someone give the latest beta build a check to see if it fixes your issue? |
No, it did not :-( I did the corresponding PR here #1191. This is just me doing try and error, I have no way of testing anything before you build. |
@ilu33 Another build is out with that change. |
I think we've got it. Starts up now without the tmpdir workaround. @shawngmc maybe you could test again too? |
Linux AppImage errs out when /tmp is mounted with noexec. Tested with v. 2.6.1 and 2.7.0 b2.
/tmp is not a place for executable files on Linux, see http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#TMPTEMPORARYFILES. Mounting /tmp noexec is the correct way to keep the system secure.
Fix: Build the appimage correctly as explained by Electron main dev here, electron/electron#24242 (comment):
"The issue is the app in question is packaging their native modules into an ASAR file (normally app.asar). You can't load a native module from an ASAR so Electron tries to help you out by extracting the native module (effectively a shared library) to the temporary directory and load it from there. In the case where /tmp has noexec this isn't going to work.
Each app should ensure that native modules aren't packed into the ASAR and are instead stored / shipped in app.asar.unpacked."
At least I'm guessing that this is the issue here. If not, I'd have to troubleshoot further.
Edit: As a workaround I tried starting the appimage with a dedicated tmpdir and it worked, so I'm quite sure that the wrong handling of the ASAR is indeed the problem.
The text was updated successfully, but these errors were encountered: