bromagosa / Snap4Arduino

Binding Snap! and Arduino together
http://snap4arduino.rocks
GNU Affero General Public License v3.0
133 stars 85 forks source link

Build on master / tag 7.0.4 is broken because of nw-builder #314

Closed coderbalak closed 1 year ago

coderbalak commented 1 year ago

I'm forced to build from sources on Mac OS Ventura as the pre-built binary does not run and generates a crash dump (has been the case with previous versions of Mac OS as well). I was able to get it to work by compiling from source about 5 months ago on Mac OS 12 (Monterey). But after upgrading to Mac OS 13 (Ventura), the system was unable to detect the Arduino board. So I wanted to see if rebuild will work.

Steps:

the following error is observed during build:

======= Asking nwbuilder to build Snap4Arduino for osx64 =======

src/platforms/desktop/osx/64/build: line 36: environments/node_modules/nw-builder/bin/nwbuild: No such file or directory mv: rename releases/desktop/Snap4Arduino/osx64/* to releases/desktop/osx/64/*: No such file or directory

prepare --all seems to be pulling in the following:

(13:50): npm ls nw-builder nw-builder@4.0.0-rc.8 ~/git/arduino/Snap4Arduino/environments/node_modules/nw-builder └── (empty) `(~/git/arduino/Snap4Arduino/environments/node_modules/nw-builder)` (13:50): ls -l total 16 -rw-r--r-- 1 ~ ~~ 2011 Nov 13 13:36 README.md -rw-r--r-- 1 ~ ~~ 2205 Nov 13 13:36 package.json drwxr-xr-x 7 ~ ~~ 224 Nov 13 13:36 src drwxr-xr-x 3 ~ ~~ 96 Nov 13 13:36 test

As can be seen, there is no bin/nwbuild under nw-builder. Tried downgrading nw-builder to 3.8.2, didn't help -- it seems the changes in src/platforms/desktop/build line 36 are incompatible with older versions of nw-builder:

# environments/node_modules/nw-builder/bin/nwbuild -v 0.34.5 -p $platform tmp -o releases/desktop environments/node_modules/nw-builder/bin/nwbuild -p $platform tmp -o releases/desktop

Any help in fixing any of the problems above is much appreciated. Kid is blocked on this for completing a school project.

Thanks!

jguille2 commented 1 year ago

Hi @coderbalak and sorry for the delay... I didn't see your issue :(

I will document this (I'm preparing now Snap4Arduino8.1 that will be released in a few days) but the problems you have are with the changes nw-builder module have done. Different possibilities.. but maybe the easiest is to build nw-builder@3.5.7 (you can change directly the prepare script) and all things will continue running ok.. I will document this... and maybe we don't adapt the builders to the current versions... because maybe Snap4Arduino8 is the last "node version". We want to change everything to WebSerialApi and create a single web version without connectors nor desktop apps.

Joan