Ok, I had to install node6 for the above to work.
I found that node_modules/electron/dist/electron
has an executable stack. This module seems to come from https://github.com/electron/electron and this issue would lie with them. I suggest someone file a bug with them, pointing them to https://wiki.ubuntu.com/SecurityTeam/Roadmap/ExecutableStacks and Snap and executable stacks. It is really important to understand this is not a ‘snap’ issue-- this is a problem in their builds that opens their code up to certain kinds of attacks that would otherwise be protected against if their build didn’t have an executable stack. It is also important to mention that the chromium builds in the Ubuntu archive (and therefore the chromium snap) does not end up with an executable stack, so this doesn’t seem to be a chromium content api issue. I believe @Wimpress has been working with them, perhaps he can file the bug?
Now that we know where the executable stack is coming in, I’ll take a look at webgl.