All Projects → nxhack → Openwrt Node Packages

nxhack / Openwrt Node Packages

Licence: gpl-2.0
OpenWrt Project Node.js packages. v10.x LTS and v12.x LTS and v14.x LTS

Projects that are alternatives of or similar to Openwrt Node Packages

cross
“Zero setup” cross compilation and “cross testing” of Rust crates
Stars: ✭ 3,550 (+1917.05%)
Mutual labels:  arm, mips, aarch64
Docker Homebridge
Homebridge Docker. HomeKit support for the impatient using Docker on x86_64, Raspberry Pi (armhf) and ARM64. Includes ffmpeg + libfdk-aac.
Stars: ✭ 1,847 (+949.43%)
Mutual labels:  homebridge, arm, aarch64
Openfpgaduino
All open source file and project for OpenFPGAduino project
Stars: ✭ 137 (-22.16%)
Mutual labels:  makefile, arm, iot
interp
Interpreter experiment. Testing dispatch methods: Switching, Direct/Indirect Threaded Code, Tail-Calls and Inlining
Stars: ✭ 32 (-81.82%)
Mutual labels:  arm, mips, aarch64
Cross
“Zero setup” cross compilation and “cross testing” of Rust crates
Stars: ✭ 2,461 (+1298.3%)
Mutual labels:  arm, aarch64, mips
Rt Thread
RT-Thread is an open source IoT operating system.
Stars: ✭ 6,466 (+3573.86%)
Mutual labels:  arm, mips, iot
Steed
[INACTIVE] Rust's standard library, free of C dependencies, for Linux systems
Stars: ✭ 520 (+195.45%)
Mutual labels:  arm, aarch64, mips
Cemu
Cheap EMUlator: lightweight multi-architecture assembly playground
Stars: ✭ 666 (+278.41%)
Mutual labels:  arm, aarch64, mips
Gateway Go
🎁GateWay Client for OpenIoTHub[云易连访问内网端口和设备的网关]
Stars: ✭ 127 (-27.84%)
Mutual labels:  iot, openwrt
Rcore
Rust version of THU uCore OS. Linux compatible.
Stars: ✭ 2,175 (+1135.8%)
Mutual labels:  aarch64, mips
Amie
A Minimalist Instruction Extender for the ARM architecture and IDA Pro
Stars: ✭ 136 (-22.73%)
Mutual labels:  arm, aarch64
Pm2 Slack
A PM2 module to emit events to Slack
Stars: ✭ 124 (-29.55%)
Mutual labels:  node-module, nodejs-modules
Openwrt Examples
Examples for creating OpenWrt programs&packages.
Stars: ✭ 120 (-31.82%)
Mutual labels:  makefile, openwrt
Build
Armbian Linux build framework
Stars: ✭ 1,827 (+938.07%)
Mutual labels:  arm, aarch64
Smart Home
Phodal's Smart Home Setup Guide:HomeBridge + Home Assistant + Amazon Echo
Stars: ✭ 149 (-15.34%)
Mutual labels:  homebridge, iot
Keystone
Keystone assembler framework: Core (Arm, Arm64, Hexagon, Mips, PowerPC, Sparc, SystemZ & X86) + bindings
Stars: ✭ 1,654 (+839.77%)
Mutual labels:  arm, mips
Openwrt Shadowsocksr
ShadowsocksR-libev for OpenWrt/LEDE
Stars: ✭ 136 (-22.73%)
Mutual labels:  makefile, openwrt
Polymcu
An open framework for micro-controller software
Stars: ✭ 173 (-1.7%)
Mutual labels:  arm, iot
Openwrt
Mercer's OpenWrt source tree
Stars: ✭ 158 (-10.23%)
Mutual labels:  makefile, openwrt
Arm Assembly Cheat
MOVED TO: https://github.com/cirosantilli/linux-kernel-module-cheat#userland-assembly SEE README. ARMv7 and ARMv8 assembly userland minimal examples tutorial. Runnable asserts on x86 hosts with QEMU user mode or natively on ARM targets. Nice GDB step debug setup. Tested on Ubuntu 18.04 host and Raspberry Pi 2 and 3 targets.
Stars: ✭ 159 (-9.66%)
Mutual labels:  makefile, arm

OpenWrt Node.js Packages (nodejs)

Description

OpenWrt/LEDE Node.js Packages : for Head (Development branch)

Note: support arches are aarch64, arm, x86_64

MIPS without hardware FPU no longer be supported

License

See LICENSE file.

Usage

Add the following line to feeds.conf or feeds.conf.default.

src-git node https://github.com/nxhack/openwrt-node-packages.git

Run

./scripts/feeds update node
rm ./package/feeds/packages/node
rm ./package/feeds/packages/node-*
./scripts/feeds install -a -p node
make defconfig

Request to add a package is welcome

If you want a new module (native module) that requires a precompiled binary, please open the issue.

Note

If you want to use with Chaos Calmer(15.05), see for-15.05 branch (End of life)

If you want to use with LEDE (17.01), see lede-17.01 branch (End of life)

If you want to use with 18.06, see openwrt-18.06 branch (Outdated release: No longer receiving updates)

If you want to use with 19.07, see openwrt-19.07 branch (MIPS FPU EMULATOR support)

OpenSSL 1.0.x becomes EoL, OpenWrt-18.06 will not be supported. Python2 becomes EoL, node v8.x will not be supported.

On the host side, the following preparations are required.

  • GCC 6.3 or higher is required.
  • To build a 32-bit target, gcc-multilib, g++-multilib are required.
  • The libatomic package is required. (Install the 32-bit library at the same time, if necessary).

Illegal instruction issue

V8 JIT code generates FP instruction. Node.js does not work without hardware FPU.

If you are running nodejs on the Atheros AR71xx/AR933x, MediaTek MT76x8, it will not work because there is no hardware FPU. ARM cores without vfp or neon (such as bcm53xx) will not work either.

Enable Inspector

Processor ICU Inspector
32bit Disable NO
32bit small-icu YES
64bit Disable NO
64bit small-icu YES
64bit system-icu YES

Debugging Guide Nice to use Chrome DevTools.

Note: ICU currently supports only LITTLE ENDIAN.

Note about mDNS and homebridge

If you use node-homebridge(node-hap-nodejs), please install mDNS package (umdns / avahi-dbus-daemon / mdnsresponder).

(1) Some OpenWrt / Lede images have built in dnscrypt-proxy package, which by default listening on 5353 port.

In that case, installed avahi-daemon will not start on ipv4 interface, only on ipv6 because ipv4 port is taken.

This will lead to strange issue: your homebrdge accessory will be visible in 'Home' app, but can't finish pairing.

To fix this, you have to stop and disable dnscrypt-proxy

Also, you have to enable: dbus and avahi-daemon services to start automatically, i.e for Lede:

/etc/init.d/dbus enable
/etc/init.d/avahi-daemon enable

(2) avahi on home network

Please read this document. 'Why avahi and bonjour don't work on your home network'

IGMP-querier will solve your problem.

OpenWrt custom packages available: https://github.com/nxhack/openwrt-custom-packages

Low memory

Specify v8-options.

--max_old_space_size=80

Or use swap.

Modules that use pre-compiled binary (native module)

node-authenticate-pam
node-aws-crt
node-bcryp
node-bignum
node-bluetooth-hci-socket
node-bufferutil
node-deasync
node-ejdb2_node
node-epoll
node-expat
node-ffi-napi			(ffi-napi, ref-napi)
node-fuse-bindings
node-hid
node-pty-prebuilt-multiarch
node-i2c-bus
node-leveldown
node-megahash
node-mdns
node-net-ping			(raw-socket)
node-openzwave-shared
node-pi-spi
node-pty
node-rpio
node-serialport-bindings
node-sleep
node-spi-device
node-sqlite3
node-statvfs
node-ubus
node-usb
node-utf-8-validate
node-zigbee2mqtt		(@serialport/bindings,unix-dgram)

Other modules can be installed by 'npm install'.

Package Guidelines

See CONTRIBUTING.md file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].