Closed Linguista closed 5 years ago
This looks like an issue with electron but I couldn't find any bug report related to this. Anyway, we can try updating it in the next release.
To test, can you try building https://github.com/electron/electron-quick-start ?
I just tried building what you suggested, nloveladyallen, and it fails. Here's the info:
me@MyBox { ~ } $ cd /media/me/Multimedia/Downloads/
me@MyBox { /media/me/Multimedia/Downloads } $ git clone https://github.com/electron/electron-quick-start
Cloning into 'electron-quick-start'...
remote: Counting objects: 227, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 227 (delta 0), reused 0 (delta 0), pack-reused 223
Receiving objects: 100% (227/227), 38.62 KiB | 39.00 KiB/s, done.
Resolving deltas: 100% (101/101), done.
Checking connectivity... done.
me@MyBox { /media/me/Multimedia/Downloads } $ cd electron-quick-start
me@MyBox { /media/me/Multimedia/Downloads/electron-quick-start } $ sudo npm install
[sudo] password for me:
npm WARN lifecycle electron@1.4.13~postinstall: cannot run in wd %s %s (wd=%s) electron@1.4.13 node install.js /media/me/Multimedia/Downloads/electron-quick-start/node_modules/electron
electron-quick-start@1.0.0 /media/me/Multimedia/Downloads/electron-quick-start
└─┬ electron@1.4.13
├─┬ electron-download@3.0.2
│ ├─┬ debug@2.5.1
│ │ └── ms@0.7.2
│ ├─┬ fs-extra@0.30.0
│ │ ├── graceful-fs@4.1.11
│ │ ├── jsonfile@2.4.0
│ │ ├── klaw@1.3.1
│ │ ├── path-is-absolute@1.0.1
│ │ └─┬ rimraf@2.5.4
│ │ └─┬ glob@7.1.1
│ │ ├── fs.realpath@1.0.0
│ │ ├─┬ inflight@1.0.6
│ │ │ └── wrappy@1.0.2
│ │ ├─┬ minimatch@3.0.3
│ │ │ └─┬ brace-expansion@1.1.6
│ │ │ ├── balanced-match@0.4.2
│ │ │ └── concat-map@0.0.1
│ │ └── once@1.4.0
│ ├── home-path@1.0.3
│ ├── minimist@1.2.0
│ ├─┬ nugget@2.0.1
│ │ ├─┬ pretty-bytes@1.0.4
│ │ │ ├── get-stdin@4.0.1
│ │ │ └─┬ meow@3.7.0
│ │ │ ├─┬ camelcase-keys@2.1.0
│ │ │ │ └── camelcase@2.1.1
│ │ │ ├── decamelize@1.2.0
│ │ │ ├─┬ loud-rejection@1.6.0
│ │ │ │ ├─┬ currently-unhandled@0.4.1
│ │ │ │ │ └── array-find-index@1.0.2
│ │ │ │ └── signal-exit@3.0.2
│ │ │ ├── map-obj@1.0.1
│ │ │ ├─┬ normalize-package-data@2.3.5
│ │ │ │ ├── hosted-git-info@2.1.5
│ │ │ │ ├─┬ is-builtin-module@1.0.0
│ │ │ │ │ └── builtin-modules@1.1.1
│ │ │ │ └─┬ validate-npm-package-license@3.0.1
│ │ │ │ ├─┬ spdx-correct@1.0.2
│ │ │ │ │ └── spdx-license-ids@1.2.2
│ │ │ │ └── spdx-expression-parse@1.0.4
│ │ │ ├── object-assign@4.1.0
│ │ │ ├─┬ read-pkg-up@1.0.1
│ │ │ │ ├── find-up@1.1.2
│ │ │ │ └─┬ read-pkg@1.1.0
│ │ │ │ ├─┬ load-json-file@1.1.0
│ │ │ │ │ ├─┬ parse-json@2.2.0
│ │ │ │ │ │ └─┬ error-ex@1.3.0
│ │ │ │ │ │ └── is-arrayish@0.2.1
│ │ │ │ │ ├── pify@2.3.0
│ │ │ │ │ └─┬ strip-bom@2.0.0
│ │ │ │ │ └── is-utf8@0.2.1
│ │ │ │ └── path-type@1.1.0
│ │ │ ├─┬ redent@1.0.0
│ │ │ │ ├─┬ indent-string@2.1.0
│ │ │ │ │ └─┬ repeating@2.0.1
│ │ │ │ │ └── is-finite@1.0.2
│ │ │ │ └── strip-indent@1.0.1
│ │ │ └── trim-newlines@1.0.0
│ │ ├─┬ progress-stream@1.2.0
│ │ │ ├── speedometer@0.1.4
│ │ │ └─┬ through2@0.2.3
│ │ │ ├─┬ readable-stream@1.1.14
│ │ │ │ └── isarray@0.0.1
│ │ │ └─┬ xtend@2.1.2
│ │ │ └── object-keys@0.4.0
│ │ ├─┬ request@2.79.0
│ │ │ ├── aws-sign2@0.6.0
│ │ │ ├── aws4@1.5.0
│ │ │ ├── caseless@0.11.0
│ │ │ ├─┬ combined-stream@1.0.5
│ │ │ │ └── delayed-stream@1.0.0
│ │ │ ├── extend@3.0.0
│ │ │ ├── forever-agent@0.6.1
│ │ │ ├─┬ form-data@2.1.2
│ │ │ │ └── asynckit@0.4.0
│ │ │ ├─┬ har-validator@2.0.6
│ │ │ │ ├─┬ chalk@1.1.3
│ │ │ │ │ ├── ansi-styles@2.2.1
│ │ │ │ │ ├── escape-string-regexp@1.0.5
│ │ │ │ │ ├── has-ansi@2.0.0
│ │ │ │ │ └── supports-color@2.0.0
│ │ │ │ ├─┬ commander@2.9.0
│ │ │ │ │ └── graceful-readlink@1.0.1
│ │ │ │ └─┬ is-my-json-valid@2.15.0
│ │ │ │ ├── generate-function@2.0.0
│ │ │ │ ├─┬ generate-object-property@1.2.0
│ │ │ │ │ └── is-property@1.0.2
│ │ │ │ ├── jsonpointer@4.0.1
│ │ │ │ └── xtend@4.0.1
│ │ │ ├─┬ hawk@3.1.3
│ │ │ │ ├── boom@2.10.1
│ │ │ │ ├── cryptiles@2.0.5
│ │ │ │ ├── hoek@2.16.3
│ │ │ │ └── sntp@1.0.9
│ │ │ ├─┬ http-signature@1.1.1
│ │ │ │ ├── assert-plus@0.2.0
│ │ │ │ ├─┬ jsprim@1.3.1
│ │ │ │ │ ├── extsprintf@1.0.2
│ │ │ │ │ ├── json-schema@0.2.3
│ │ │ │ │ └── verror@1.3.6
│ │ │ │ └─┬ sshpk@1.10.1
│ │ │ │ ├── asn1@0.2.3
│ │ │ │ ├── assert-plus@1.0.0
│ │ │ │ ├── bcrypt-pbkdf@1.0.0
│ │ │ │ ├─┬ dashdash@1.14.1
│ │ │ │ │ └── assert-plus@1.0.0
│ │ │ │ ├── ecc-jsbn@0.1.1
│ │ │ │ ├─┬ getpass@0.1.6
│ │ │ │ │ └── assert-plus@1.0.0
│ │ │ │ ├── jodid25519@1.0.2
│ │ │ │ ├── jsbn@0.1.0
│ │ │ │ └── tweetnacl@0.14.5
│ │ │ ├── is-typedarray@1.0.0
│ │ │ ├── isstream@0.1.2
│ │ │ ├── json-stringify-safe@5.0.1
│ │ │ ├─┬ mime-types@2.1.13
│ │ │ │ └── mime-db@1.25.0
│ │ │ ├── oauth-sign@0.8.2
│ │ │ ├── qs@6.3.0
│ │ │ ├── stringstream@0.0.5
│ │ │ ├─┬ tough-cookie@2.3.2
│ │ │ │ └── punycode@1.4.1
│ │ │ ├── tunnel-agent@0.4.3
│ │ │ └── uuid@3.0.1
│ │ ├─┬ single-line-log@1.1.2
│ │ │ └─┬ string-width@1.0.2
│ │ │ ├── code-point-at@1.1.0
│ │ │ ├─┬ is-fullwidth-code-point@1.0.0
│ │ │ │ └── number-is-nan@1.0.1
│ │ │ └─┬ strip-ansi@3.0.1
│ │ │ └── ansi-regex@2.0.0
│ │ └── throttleit@0.0.2
│ ├─┬ path-exists@2.1.0
│ │ └─┬ pinkie-promise@2.0.1
│ │ └── pinkie@2.0.4
│ ├─┬ rc@1.1.6
│ │ ├── deep-extend@0.4.1
│ │ ├── ini@1.3.4
│ │ └── strip-json-comments@1.0.4
│ ├── semver@5.3.0
│ └─┬ sumchecker@1.3.0
│ └── es6-promise@4.0.5
└─┬ extract-zip@1.6.0
├─┬ concat-stream@1.5.0
│ ├── inherits@2.0.3
│ ├─┬ readable-stream@2.0.6
│ │ ├── core-util-is@1.0.2
│ │ ├── isarray@1.0.0
│ │ ├── process-nextick-args@1.0.7
│ │ ├── string_decoder@0.10.31
│ │ └── util-deprecate@1.0.2
│ └── typedarray@0.0.6
├── debug@0.7.4
├─┬ mkdirp@0.5.0
│ └── minimist@0.0.8
└─┬ yauzl@2.4.1
└─┬ fd-slicer@1.0.1
└── pend@1.2.0
me@MyBox { /media/me/Multimedia/Downloads/electron-quick-start } $ npm start
> electron-quick-start@1.0.0 start /media/me/Multimedia/Downloads/electron-quick-start
> electron .
fs.js:549
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
^
Error: ENOENT: no such file or directory, open '/media/me/Multimedia/Downloads/electron-quick-start/node_modules/electron/path.txt'
at Error (native)
at Object.fs.openSync (fs.js:549:18)
at Object.fs.readFileSync (fs.js:397:15)
at Object.<anonymous> (/media/me/Multimedia/Downloads/electron-quick-start/node_modules/electron/index.js:4:42)
at Module._compile (module.js:410:26)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
npm ERR! Linux 4.9.0-040900-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start"
npm ERR! node v4.2.6
npm ERR! npm v3.5.2
npm ERR! code ELIFECYCLE
npm ERR! electron-quick-start@1.0.0 start: `electron .`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the electron-quick-start@1.0.0 start script 'electron .'.
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 electron-quick-start package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! electron .
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs electron-quick-start
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls electron-quick-start
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /media/me/Multimedia/Downloads/electron-quick-start/npm-debug.log
me@MyBox { /media/me/Multimedia/Downloads/electron-quick-start } $
And here's the contents of npm-debug.log
:
0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/nodejs', '/usr/bin/npm', 'start' ]
2 info using npm@3.5.2
3 info using node@v4.2.6
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle electron-quick-start@1.0.0~prestart: electron-quick-start@1.0.0
6 silly lifecycle electron-quick-start@1.0.0~prestart: no script for prestart, continuing
7 info lifecycle electron-quick-start@1.0.0~start: electron-quick-start@1.0.0
8 verbose lifecycle electron-quick-start@1.0.0~start: unsafe-perm in lifecycle true
9 verbose lifecycle electron-quick-start@1.0.0~start: PATH: /usr/share/npm/bin/node-gyp-bin:/media/me/Multimedia/Downloads/electron-quick-start/node_modules/.bin:/home/me/perl5/bin:/home/me/bin:/home/me/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/me/MyScripts:/home/me/MyProgs:/usr/local/cwb-3.4.10/bin:/home/me/MyProgs/ActiveState/ActivePerl/site/bin:/home/me/MyProgs/ActiveState/ActivePerl/bin:/home/me/MyProgs/ActiveState/Komodo/bin:/home/me/MyProgs/ActiveState/PDK/bin:/home/me/MyScripts:/home/me/MyProgs:/usr/local/cwb-3.4.10/bin:/home/me/MyProgs/ActiveState/ActivePerl/site/bin:/home/me/MyProgs/ActiveState/ActivePerl/bin:/home/me/MyProgs/ActiveState/Komodo/bin:/home/me/MyProgs/ActiveState/PDK/bin
10 verbose lifecycle electron-quick-start@1.0.0~start: CWD: /media/me/Multimedia/Downloads/electron-quick-start
11 silly lifecycle electron-quick-start@1.0.0~start: Args: [ '-c', 'electron .' ]
12 silly lifecycle electron-quick-start@1.0.0~start: Returned: code: 1 signal: null
13 info lifecycle electron-quick-start@1.0.0~start: Failed to exec start script
14 verbose stack Error: electron-quick-start@1.0.0 start: `electron .`
14 verbose stack Exit status 1
14 verbose stack at EventEmitter.<anonymous> (/usr/share/npm/lib/utils/lifecycle.js:232:16)
14 verbose stack at emitTwo (events.js:87:13)
14 verbose stack at EventEmitter.emit (events.js:172:7)
14 verbose stack at ChildProcess.<anonymous> (/usr/share/npm/lib/utils/spawn.js:24:14)
14 verbose stack at emitTwo (events.js:87:13)
14 verbose stack at ChildProcess.emit (events.js:172:7)
14 verbose stack at maybeClose (internal/child_process.js:821:16)
14 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
15 verbose pkgid electron-quick-start@1.0.0
16 verbose cwd /media/me/Multimedia/Downloads/electron-quick-start
17 error Linux 4.9.0-040900-generic
18 error argv "/usr/bin/nodejs" "/usr/bin/npm" "start"
19 error node v4.2.6
20 error npm v3.5.2
21 error code ELIFECYCLE
22 error electron-quick-start@1.0.0 start: `electron .`
22 error Exit status 1
23 error Failed at the electron-quick-start@1.0.0 start script 'electron .'.
23 error Make sure you have the latest version of node.js and npm installed.
23 error If you do, this is most likely a problem with the electron-quick-start package,
23 error not with npm itself.
23 error Tell the author that this fails on your system:
23 error electron .
23 error You can get information on how to open an issue for this project with:
23 error npm bugs electron-quick-start
23 error Or if that isn't available, you can get their info via:
23 error npm owner ls electron-quick-start
23 error There is likely additional logging output above.
24 verbose exit [ 1, true ]
Maybe try upgrading to Node 7.x?
It looks like the issue described here. Can you try their suggestions?
Like running this before starting the app:
cd ./node_modules/electron && node install.js
Sorry for the delay in getting back to all of you -- Xmas and all.
Pleasantly, running cd ./node_modules/electron && node install.js
makes not just the example electron thingy run, but Abricotine, too!
The version info from the "Hello World" program is as follows:
We are using Node.js 6.5.0, Chromium 53.0.2785.143, and Electron 1.4.13.
I think this is just version info about Electron, which is basically Chromium coupled with Node. It's not relevant to your issue.
Did you update your Node install? I'd recommend to at least try the latest LTS version (6.9.2).
Okay, I take back my happy news. After a reboot, Abricotine fails to launch as before, and the Electron "hello world" example, while it does open, throws an error:
$ npm start
> electron-quick-start@1.0.0 start /media/user/Multimedia/Downloads/electron-quick-start
> electron .
Gtk-Message: (for origin information, set GTK_DEBUG): failed to retrieve property `gtk-primary-button-warps-slider' of type `gboolean' from rc file value "((GString*) 0x16f3e1502920)" of type `gboolean'
Abricotine throws the same error. So I updated to Node.js version 7.3.0, and this is the result:
$ Abricotine
Gtk-Message: (for origin information, set GTK_DEBUG): failed to retrieve property `gtk-primary-button-warps-slider' of type `gboolean' from rc file value "((GString*) 0x300d1d66d520)" of type `gboolean'
Then I uninstalled that and tried Node.js 6.9.2. Same error:
$ Abricotine
Gtk-Message: (for origin information, set GTK_DEBUG): failed to retrieve property gtk-primary-button-warps-slider' of type
gboolean' from rc file value "((GString*) 0x1b69ba2b4120)" of type `gboolean'
On the 0.4.0
release, Abricotine made a huge leap on the Electron version: from 0.35.0
to 1.2.3
.
There could be an issue with the GTK version that Electron uses.
Which version do you have installed?
How do I find the Electron version?
Actually I was talking about GTK.
My libgtk-3-0 is version 3.18.9-1ubuntu3.1. I've also got libgtk-2.0-0 installed, specifically version 2.24.30-1ubuntu1. Is that the information you need?
This is obviously an issue with electron itself since you get the same issue with electron-quick-start. Maybe you could get more relevant answers in electron repo.
Could you explain to me the relationship between Abricotine and Electron? I wasn't familiar with Electron before this bug, and it's neither installed on my system as a package, nor listed as a dependency of Abricotine in Synaptic.
Does install its own personal binary of Electron? If so, where is it and how do I find out what version it is?
Electron is a runtime for running apps created with JavaScript.
Like every node.js dependency, it is managed with npm (Node Package Manager). It is not installed on your system with apt-get/synaptic/whatever but it is bundled into Abricotine binary as a "local dependency". This is the way node desktop applications work right now.
As @darahak said, if you are using Abricotine 0.4.0 then Electron version is 1.2.3.
Gtk-Message: (for origin information, set GTK_DEBUG): failed to retrieve property 'gtk-primary-button-warps-slider' of type 'gboolean' from rc file value "((GString*) 0x2f47ae287720)" of type 'gboolean'
@Linguista Just trying one more thing, because I'm not entirely convinced this is an Electron issue.
Do you have a ~/.gtkrc-2.0
config file?
If yes, could you open it and look for that gtk-primary-button-warps-slider
property?
I do indeed have a ~/.gtkrc-2.0
. Here's it's contents.
# File created by KDE Gtk Config
# Configs for GTK2 programs
include "/usr/share/themes/Breeze-Dark/gtk-2.0/gtkrc"
style "user-font"
{
font_name="Noto Sans Regular"
}
widget_class "*" style "user-font"
gtk-font-name="Noto Sans Regular 9"
gtk-theme-name="Breeze-Dark"
gtk-icon-theme-name="oxygen"
gtk-fallback-icon-theme="gnome"
gtk-cursor-theme-name="breeze_cursors"
gtk-toolbar-style=GTK_TOOLBAR_ICONS
gtk-menu-images=1
gtk-button-images=1
gtk-primary-button-warps-slider=false
Does this get us any closer to a solution? I'm really hooked on Abricotine and very much want to keep using it!
Well this is my last attempt. After that, I really have no clue.
See how gtk-primary-button-warps-slider
was required as a gboolean
?
This is a typedef for int
according to this doc, so try setting it to 0
or FALSE
and retry with your Abricotine install?
My concern here is that I don't know if you already had that file before and who modified it. Maybe your OS upgrade did it.
When I set gtk-primary-button-warps-slider
to 0
, Abricotine doesn't launch either. The difference is that there's no error message in the terminal.
When I set it to FALSE
rather than false
, I get the same error message I've been getting.
@brrd said that Abricotine is using Electron v. 1.2.3. What version of GTK does it expect? What versions do you folks have installed?
@Linguista Electron is still on GTK2 if you consider this issue. You should probably open an issue on the Electron repo to have a better chance to solve this.
I'm on Windows, but I'll try to setup a VM to reproduce this.
@Linguista On my debian: gtk version 2.24.25 and 3.14.5.
I agree with @darahak, this issue is obviously more related to electron, you should post your issue on the electron repo in order to get more accurate answers. We can keep this open in order to have your feedback when it's solved, though.
I'm closing this issue since electron was upgraded in Abricotine 0.7.0.
I've been using Abricotine for a couple months now, but just recently it started silently dying on launch. When executed from the terminal, the only message is the following:
Gtk-Message: (for origin information, set GTK_DEBUG): failed to retrieve property `gtk-primary-button-warps-slider' of type `gboolean' from rc file value "((GString*) 0x2f47ae287720)" of type `gboolean'
This is the latest version of Abricotine (0.4.0). The problem started after some Neon update or another (Neon is Ubuntu 16.04 with the latest KDE Plasma framework and apps, and the latter is rolling, so I can't really provide more information).
My system info follows: