bsp-rootfs-custom

Builds and customizes Ubuntu root filesystems for RDK boards using debootstrap and package lists.

3|Updated Aug 6, 2026
One-click install
npx skills add https://github.com/D-Robotics/rdk-skills --skill bsp-rootfs-custom-d-robotics
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: bsp-rootfs-custom
Source: https://github.com/D-Robotics/rdk-skills/tree/main/skills/bsp-rootfs-custom
Command: npx skills add https://github.com/D-Robotics/rdk-skills --skill bsp-rootfs-custom-d-robotics

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building a custom Ubuntu root filesystem for RDK X3/X5 boards requires knowing the samplefs tooling, package-list variables, and chroot workflow; this Skill guides that process safely with backups and confirmation gates. ## Core Features & Use Cases - Samplefs Generation: Runs make_ubuntu_rootfs.sh to produce desktop or server rootfs tarballs for X3/X5 boards. - Package Customization: Edits PYTHON_PACKAGE_LIST, DEBOOTSTRAP_LIST, BASE/SERVER/DESKTOP_PACKAGE_LIST variables to control preinstalled apt and Python packages. - Users and Autostart: Points per-image user creation and service autostart changes to hobot_customize_rootfs.sh, which runs during pack_image.sh. - Use Case: You want a minimal server image without desktop components. The Skill walks you through generating the server samplefs, trimming package lists with a dry-run review, and confirming changes before any deletion. ## Quick Start Ask the agent to build a server-edition Ubuntu rootfs for an X5 board with a specific list of preinstalled packages removed.

Frequently Asked Questions about bsp-rootfs-custom

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a custom Ubuntu rootfs for RDK X5 boards?▼

Run make_ubuntu_rootfs.sh inside the samplefs directory with sudo; the default builds the desktop edition and passing 'server' builds the server edition. Outputs include the rootfs tree and a compressed samplefs tarball with an installed-package info file.

How do I add or remove preinstalled packages in the RDK rootfs?▼

Edit the package-list variables in the make script: PYTHON_PACKAGE_LIST for Python packages, DEBOOTSTRAP_LIST for debootstrap-time packages, and BASE/SERVER/DESKTOP_PACKAGE_LIST for each image variant. Back up the lists and review a dry-run diff before confirming changes.

Can I edit files directly inside the generated rootfs directory?▼

No. Hand-editing the generated rootfs breaks reproducibility because the next build regenerates it. Make changes in the source scripts and package lists instead so every image stays reproducible.

How do I create users or enable autostart services in the RDK image?▼

Per-image user creation and autostart service changes belong in hobot_customize_rootfs.sh, which runs automatically during pack_image.sh. Modify that script rather than the samplefs package lists.

When should I not use this rootfs customization workflow?▼

Do not use it for full image builds, which belong to the image-build workflow, or for S-series boards, which have a separate toolchain. Changes to hobot-* source packages also route to the deb-build workflow instead.