Skip to content

aryan597/buildroot-external-nestshift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NestShift OS

NestShift OS is a specialized Linux distribution built using Buildroot, designed for high-performance kiosk applications on Raspberry Pi 3B+ hardware. It provides a lightweight, robust environment for running web-based dashboards and Python-powered automation services.

Key Features

  • Optimized Kiosk Mode: Uses WPE WebKit and Cog with a direct DRM/KMS backend for hardware-accelerated rendering without a window manager.
  • Service Management: Powered by systemd for reliable service orchestration and recovery.
  • Python Runtime: Includes a full Python 3 stack optimized for data processing and REST APIs.
  • IoT Ready: Built-in MQTT broker (Mosquitto) and support for Zigbee/Z-Wave peripherals.
  • Networking: Automated network management via systemd-networkd and wpa_supplicant.
  • Fast Boot: Minimalist configuration designed for rapid startup directly into the application.

Repository Structure

This is a Buildroot external tree (BR2_EXTERNAL).

.
├── board/nestshift/       # Board-specific configurations and overlays
│   ├── rootfs-overlay/    # Files merged directly into the target filesystem
│   ├── post-build.sh      # Customization script run after package installation
│   └── config.txt         # RPi firmware configuration
├── configs/               # Buildroot defconfigs
│   └── nestshift_pi3_defconfig
├── package/               # Custom Buildroot packages for NestShift services
│   ├── nestshift-brain/   # Neural processing service
│   ├── nestshift-dashboard/ # React-based web interface
│   └── nestshift-system/  # Core system configurations
├── Config.in              # Top-level configuration for external packages
├── external.desc          # External tree description
└── external.mk            # External tree makefile logic

Getting Started

Prerequisites

  • A Linux host system (Ubuntu 22.04+ recommended)
  • Buildroot (version 2024.02 or later recommended)
  • Dependencies: bc, build-essential, cpio, git, python3, rsync, unzip, wget

Build Instructions

  1. Clone Buildroot:

    git clone https://github.com/buildroot/buildroot.git
    cd buildroot
  2. Clone this External Tree:

    git clone https://github.com/aryan597/buildroot-external-nestshift.git ../buildroot-external-nestshift
  3. Configure the Project:

    make BR2_EXTERNAL=../buildroot-external-nestshift nestshift_pi3_defconfig
  4. Build the Image:

    make

    Note: The first build can take 30-60 minutes depending on your host machine.

Flashing the SD Card

The build process produces an sdcard.img in output/images/.

sudo dd if=output/images/sdcard.img of=/dev/sdX bs=4M status=progress
sync

(Replace /dev/sdX with your SD card device)

Configuration

  • Networking: Edit board/nestshift/rootfs-overlay/etc/systemd/network/ to customize network settings.
  • Kiosk URL: The browser kiosk target can be modified in the nestshift-kiosk.service file.
  • Packages: Additional packages can be enabled via make menuconfig.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors