openwrt / openwrt/packages

Feature Request: Enable full-icu support for Node.js to meet OpenClaw requirements

Open
#28,981 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Makefile
Stars
4.6k
Forks
4k
Avg merge
3d 12h
Merged PRs (30d)
134

Description

Package Name

node.js

Maintainer

morikw2@gmail.com

OpenWrt Version

snapshot

OpenWrt Target/Subtarget

x86_64

Steps to Reproduce

Background
Currently, the node package in the OpenWrt official feed is often compiled with small-icu or limited internationalization support. While this saves space on embedded devices, it causes compatibility issues with modern Node.js applications that rely on global data standards.

The Problem
Specifically, when running OpenClaw (an AI Agent Gateway) or other i18n-heavy frameworks on OpenWrt, the application fails or behaves unexpectedly during date manipulation, string normalization, or locale-specific operations. These applications require the full Unicode dataset provided by full-icu.

Technical Context
Node.js offers three levels of ICU support:

none: No ICU support.

small-icu: Support for English only (often the default in OpenWrt).

full-icu: Support for all locales (Required for OpenClaw).

Actual Behaviour

I suggest updating the lang/node Makefile to support the --with-intl=full-icu configuration. Ideally, this could be implemented as a configurable option in menuconfig so users can choose between binary size and feature completeness.

Suggested Makefile Changes
In feeds/packages/lang/node/Makefile, the configuration arguments should be adjusted:

Makefile

Proposed logic for menuconfig

CONFIGURE_ARGS +=
--with-intl=full-icu
--shared-icu

Note on Dependencies: Enabling full-icu will require linking against the icu package (libicu) or ensuring the ICU data is correctly bundled during the build process.

Confirmation Checklist

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with feeds/packages/lang/node/Makefile and inspect how Node.js ICU options and package dependencies are currently configured. Determine how a menuconfig choice can select full-icu while linking the ICU package or bundling the required data. Done means the package supports the requested full-icu configuration without removing the existing size-oriented option.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.