mikaelbr / node-notifier

A Node.js module for sending notifications on native Mac, Windows and Linux (or Growl as fallback)
MIT License
5.73k stars 322 forks source link

WSL2: had to manually chmod +x on snoreToast/snoretoast-x*.exe #353

Closed jakedowns closed 3 years ago

jakedowns commented 3 years ago

just fyi, this tripped me up for a while, and in case anyone on google stumbles on this, if you try running, say: DEBUG=notifier npm run mix or whatever (in my case i'm looking for laravel-mix / webpack-notifier messages)

and you SEE notifier path and notifier options are called, but you never SEE the notifications, and you checked Notification Settings, and they're enabled for SnoreToast,

you may need to manually add +x permissions to those exe files within WSL2 for them to actually execute.

maybe a note that could be added to the ReadMe wrt WSL, and/or something that could happen auto-magically via a build step? /shrug

thanks for a great tool!

jakedowns commented 3 years ago

FWIW, this happened with 6.0.0 and 8.0.0

mikaelbr commented 3 years ago

Thanks. Added note in readme!

pkkummermo commented 3 years ago

Just had this problem and had to chmod +x the .exe vendor files. As a reference, these are the steps you need to run after installing the package.

chmod +x node_modules/node-notifier/vendor/snoreToast/snoretoast-x64.exe
chmod +x node_modules/node-notifier/vendor/snoreToast/snoretoast-x86.exe

A super hackish it's-almost-christmas-and-hey-it-works is to make a postinstall in your package.json file to contain

    "postinstall": "chmod +x node_modules/node-notifier/vendor/snoreToast/snoretoast-x64.exe; chmod +x node_modules/node-notifier/vendor/snoreToast/snoretoast-x86.exe"

(Quiet note, this will crash on all systems that aren't UNIX)

Cheers!