Buildroot Setup for Nagami

Introduction

This section guides you through cloning the NetCube Systems Buildroot repository and creating your first custom Linux image for the Nagami System-on-Module (SoM). The process is intended for developers, but is also suitable for advanced hobbyists who are comfortable working on the command line and building embedded Linux systems from source.

You will clone the Buildroot repository, select an appropriate Nagami carrier board configuration, and build a bootable image.


Prerequisites

Before proceeding, ensure you have the following:

  • A host system running:
  • A Debian-based Linux distribution or
  • Windows Subsystem for Linux 2 (WSL2) with a Debian-based distro
  • The required build dependencies installed via apt:
sudo apt update
sudo apt install -y \
  sed make binutils build-essential diffutils gcc g++ bash patch \
  gzip bzip2 perl tar cpio unzip rsync file bc findutils wget git
````

⚠️ Building Buildroot images can take significant time and disk space, especially on slower systems or inside WSL.

---

## Step 1: Clone the Buildroot Repository

1. Open a terminal on your host system.
2. Clone the NetCube Systems Buildroot repository:

```shell
git clone https://gitlab.com/netcube-systems-austria/buildroot.git

Clone Repository


Step 2: Select a Nagami Configuration

  1. Change into the cloned repository directory:
cd buildroot
  1. Select the appropriate default configuration depending on your carrier board:

  2. Nagami Basic Carrier

make netcube_nagami_basic_carrier_defconfig
  • Nagami Keypad Carrier
make netcube_nagami_keypad_carrier_defconfig

These defconfigs configure Buildroot with the correct kernel, bootloader, device tree, and userspace defaults for the selected Nagami carrier board.

Select Configuration


Step 3: Build the Image

  1. Start the build process:
make
  1. The build process may take anywhere from several minutes to a few hours depending on:

  2. CPU performance

  3. Available RAM
  4. Disk speed

Progress is shown directly in the terminal.


Step 4: Obtain the Built Images

  1. After the build completes successfully, navigate to:
output/images/
  1. This directory contains the generated artifacts, such as:

  2. Kernel images

  3. Device tree blobs
  4. Root filesystem images
  5. Flashable images (depending on configuration)

The exact filenames depend on the selected defconfig and image layout.

Built Image


Step 5: Customize the Build (Optional)

  1. To modify the Buildroot configuration, run:
make menuconfig
  1. Use the menu interface to customize:

  2. Kernel options

  3. Packages
  4. Filesystem layout
  5. Toolchain settings

Buildroot Menuconfig

  1. Save your changes and rebuild the image:
make

Any changes you make will be reflected in the newly generated images under output/images/.


Notes for Developers

  • The provided defconfigs are intended as starting points, not final production configurations.
  • You are expected to:

  • Review security settings

  • Configure users and passwords
  • Enable or disable services as needed
  • If you are unsure about preconfigured defaults, inspect the defconfig or modify it to suit your project.

Conclusion

You have successfully cloned the NetCube Systems Buildroot repository, configured it for the Nagami System-on-Module, and built a custom Linux image. From here, you can iterate on your configuration, integrate your own applications, and tailor the system for your specific hardware and use case.

For deeper customization and advanced topics, refer to the official Buildroot documentation: https://buildroot.org/downloads/manual/manual.html