[nu-demo] hero_skills installers.nu missing required apt dev packages #128

Closed
opened 2026-04-23 23:14:21 +00:00 by mik-tf · 1 comment
Owner

Symptom

Fresh service_install_all run fails across multiple services with linker/pkg-config errors. Examples:

  • hero_code: libseccomp-dev, libcap-ng-dev missing
  • generic: pkg-config, libssl-dev, protobuf-compiler, libprotobuf-dev, libsqlite3-dev, libxml2-dev, libudev-dev, libpq-dev, libfontconfig1-dev, libasound2-dev, brotli missing
  • hero_livekit: redis-server, redis-tools missing (see companion issue for the redis-specific case)

Root cause

hero_skills/tools/modules/installers/installers.nu::install_base does not install the full set of *-dev apt packages required to compile the Hero services from scratch. It installs a minimal base, and individual service_*.nu modules assume the system already has all dev libs.

Demo workaround (applied 2026-04-23)

Manual apt-get install of each missing package as build errors surfaced, then resumed service_install_all.

Proper fix

Extend installers/installers.nu::install_base with a pkg_ensure_dev call for the full required set:

libseccomp-dev libcap-ng-dev pkg-config libssl-dev
protobuf-compiler libprotobuf-dev libsqlite3-dev libxml2-dev
libudev-dev libpq-dev libfontconfig1-dev libasound2-dev
redis-server redis-tools brotli

So a fresh install on a clean Ubuntu VM completes without manual intervention.

Filed 2026-04-23 nu-shell demo bring-up. Signed-off-by: mik-tf

## Symptom Fresh `service_install_all` run fails across multiple services with linker/pkg-config errors. Examples: - hero_code: `libseccomp-dev`, `libcap-ng-dev` missing - generic: `pkg-config`, `libssl-dev`, `protobuf-compiler`, `libprotobuf-dev`, `libsqlite3-dev`, `libxml2-dev`, `libudev-dev`, `libpq-dev`, `libfontconfig1-dev`, `libasound2-dev`, `brotli` missing - hero_livekit: `redis-server`, `redis-tools` missing (see companion issue for the redis-specific case) ## Root cause `hero_skills/tools/modules/installers/installers.nu::install_base` does not install the full set of `*-dev` apt packages required to compile the Hero services from scratch. It installs a minimal base, and individual `service_*.nu` modules assume the system already has all dev libs. ## Demo workaround (applied 2026-04-23) Manual `apt-get install` of each missing package as build errors surfaced, then resumed `service_install_all`. ## Proper fix Extend `installers/installers.nu::install_base` with a `pkg_ensure_dev` call for the full required set: ``` libseccomp-dev libcap-ng-dev pkg-config libssl-dev protobuf-compiler libprotobuf-dev libsqlite3-dev libxml2-dev libudev-dev libpq-dev libfontconfig1-dev libasound2-dev redis-server redis-tools brotli ``` So a fresh install on a clean Ubuntu VM completes without manual intervention. Filed 2026-04-23 nu-shell demo bring-up. Signed-off-by: mik-tf
despiegk added this to the ACTIVE project 2026-04-26 10:12:03 +00:00
Author
Owner

Fixed in hero_skills commit 871ca0d on development.

Verification audit before applying — only 5 of the 14 packages from the issue's "Proper fix" list were already in install_base:

Package Status before this fix
pkg-config ✓ already present
libssl-dev ✓ already present
libsqlite3-dev ✓ already present
redis-server ✓ added by home#133
redis-tools ✓ added by home#133
libseccomp-dev added by this commit
libcap-ng-dev added by this commit
libprotobuf-dev added by this commit
protobuf-compiler added by this commit
libxml2-dev added by this commit
libudev-dev added by this commit
libpq-dev added by this commit
libfontconfig1-dev added by this commit
libasound2-dev added by this commit
brotli added by this commit

(libclang-dev + libespeak-ng-dev landed earlier via home#169.)

Each added line carries an inline note with the consuming crate(s) so future audits can prune accurately. apt commands are idempotent, so install_base re-running on existing hosts is a no-op.

Verification: nu -c 'source installers.nu' parses cleanly. Functional verification (a clean VM running service_install_all end-to-end without manual apt) deferred to the next fresh bring-up.

Meta-tracker: home#193.

Signed-off-by: mik-tf

Fixed in hero_skills commit `871ca0d` on `development`. Verification audit before applying — only 5 of the 14 packages from the issue's "Proper fix" list were already in `install_base`: | Package | Status before this fix | |---------|------------------------| | pkg-config | ✓ already present | | libssl-dev | ✓ already present | | libsqlite3-dev | ✓ already present | | redis-server | ✓ added by home#133 | | redis-tools | ✓ added by home#133 | | libseccomp-dev | ❌ added by this commit | | libcap-ng-dev | ❌ added by this commit | | libprotobuf-dev | ❌ added by this commit | | protobuf-compiler | ❌ added by this commit | | libxml2-dev | ❌ added by this commit | | libudev-dev | ❌ added by this commit | | libpq-dev | ❌ added by this commit | | libfontconfig1-dev | ❌ added by this commit | | libasound2-dev | ❌ added by this commit | | brotli | ❌ added by this commit | (libclang-dev + libespeak-ng-dev landed earlier via home#169.) Each added line carries an inline note with the consuming crate(s) so future audits can prune accurately. apt commands are idempotent, so install_base re-running on existing hosts is a no-op. Verification: `nu -c 'source installers.nu'` parses cleanly. Functional verification (a clean VM running `service_install_all` end-to-end without manual apt) deferred to the next fresh bring-up. Meta-tracker: home#193. Signed-off-by: mik-tf
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/home#128
No description provided.