Code Monkey home page Code Monkey logo

Comments (18)

WebReflection avatar WebReflection commented on June 14, 2024 1

Filed an issue here: nebrius/raspi-serial#10

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024 1

FYI I can confirm no errors is shown anymore building all the things, including serialport, raspi-io, and johnny-five 👋

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

to start with, I think Python3, being the default, is installed by default. If that's not the case, I can explicitly install it in the automated procedure.

However, I think the main mistake here is that you put electron and serialport in your package.json, while both are already present in the BENJA user folder (alarm by default).

As I don't know why you need electron-rebuild neither, as compiling stuff in the Pi is not usually the Pi way to go, I am not sure I can suggest to drop everything from your package.json (dependencies and devDependencies), but I believe with a clean install of BENJA, your project would work just fine without those.

Last, but not least, BENJA is an installer and nothing else. Once you install it, and it works, its job/responsibility is completed.

From that time on, you're on ArchLinux ARM world, and there is a forum full of people willing to help.

The learning curve is about how linux, nodejs, and npm, within node-gyp, work together, but I wouldn't blame BENJA for that, as BENJA is the enabler, not the manager of these programs.

from archibold.io.

ubidefeo avatar ubidefeo commented on June 14, 2024

hey @WebReflection
I'm sure there's something wrong on my side, I'm still learning after all.
Also not blaming BENJA at all, I'm ecstatic about it.

What I'm suggesting is that BENJA could be a great case to start learning how this workflow is structured and how to produce content for it.

I'd love to see a tutorial/walk-through which tells BENJA users how you got there.
I've showed it to my team mates and they all like it.
I hope I can build enough knowledge to be able to contribute to it.

That said, Python2 was default in my install, but maybe now that it's officially sunset (https://www.python.org/doc/sunset-python-2/) Python 3 will be default in Arch (haven't looked).

Thank you so much for your patience, mate.
I love projects which push me into fields I haven't touched yet, and this is definitely one of them :)

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

I'm fresh-installing on the background to see if python3 gets in ... in ArchLinux, pacman -S python already brings in version 3, as that's the default, but many things still use the dead Python 2.

from archibold.io.

ubidefeo avatar ubidefeo commented on June 14, 2024

I know, but believe me when I say I had to manually install Python 3 as you can read above.
Actually invoking python didn't bring anything and which python didn't find anything.
I created a temporary alias to python2 to get it triggered.

I keep believing there's something wrong happening during my provisioning/installing process which hinders parts of the chain while still giving me a functioning BENJA on the Pi 4.
On the Pi 3 I haven't been able to create a single successful SD Card on Mac, but that's for another issue when I have time to mess around with it :)

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

BTW, you are right ... they removed Python from the base-devel / default installed applications, which is the ArchLinux way (to be minimalistic) but quite annoying when you trust default apps installed (they recently removed even vi from base ArchLinux installation) ... recent changes brings Python3 and Python2 in, and I hope this fixes all the gotchas.

from archibold.io.

ubidefeo avatar ubidefeo commented on June 14, 2024

thank you for checking.
you know, as I age it's easy to start doubting myself and my memory :D

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

OK, it looks like node-gyp is incapable of building @serialport/bindings needed somewhere with raspi-io ... it also uses a super jurassic version of that, which might be an issue if it needs Python 2 but the rest uses Python 3 ... what a bummer.

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

FYI, it looks like the issue is with NodeJS 13, as version 12 works just fine.

from archibold.io.

ubidefeo avatar ubidefeo commented on June 14, 2024

I thought so, but didn't want to downgrade Node yesterday.
I figured the hardest path was the one to choose. :palmface

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

so, latest file uses nodejs-lts-erbium instead of nodejs, that ensures you'll run LTS version of nodejs, which is version 12, which (should) compiles raspi-io just fine.

will spin another SD card during lunch, but I think that solves, for the time being.

from archibold.io.

ubidefeo avatar ubidefeo commented on June 14, 2024

thank you for the hard work
in the meantime I had a colleague give me a crash course in Node/npm and we discussed BENJA a lot :D

from archibold.io.

ubidefeo avatar ubidefeo commented on June 14, 2024

awesome!

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

Still remember to never install by yourself these libraries or even electron ... just drop anything that requires node-gyp from your package.json, and use a parent folder on your Mac/Linux/PC if you need those modules.

from archibold.io.

ubidefeo avatar ubidefeo commented on June 14, 2024

thank you, mate
I have learned a lot already, and I think I get the philosophy behind BENJA much better :)

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

FYI the aarch64 installation also has issues due https://archlinuxarm.org/forum/viewtopic.php?f=65&t=14203 ... the node-gyp there is the old one, and it will fail at building anything.

Hopefully it's just a matter of time (hours? days?) before the latest node-gyp is used, and the current procedure would work in RPi3 too.

from archibold.io.

WebReflection avatar WebReflection commented on June 14, 2024

P.S. this should fix the issue

sed -i 's/= semver.Range/= new semver.Range/' /usr/lib/node_modules/node-gyp/lib/find-python.js

from archibold.io.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.