2.7 KiB
2.7 KiB
Simple CLI
A simple, CLI-focused Debian-based particle-os system built on Universal Blue's framework. Simple CLI provides a minimal, immutable Linux distribution optimized for command-line usage and server workloads.
Features
- Immutable Filesystem: Built on OSTree for reliable, atomic updates
- Container-Native: Built as a container image, deployed with bootc
- Minimal Footprint: Focused on essential CLI tools and system utilities
- Modern Boot: Uses bootupd for modern bootloader management
- Debian Base: Built on Debian Trixie for stability and package availability
Quick Start
Building the Image
# Clone the repository
git clone https://github.com/your-username/simple-cli.git
cd simple-cli
# Build the container image
just build
# Test the image
just test
# Generate bootable images
just generate-bootable
Using the System
# Show system information
ujust info
# Check OSTree status
ujust ostree-status
# Update the system
ujust update
# View system services
ujust services
Architecture
Simple CLI follows the particle-os architecture:
- Container Image: The OS is built as a container image using the Containerfile
- OSTree Deployment: Container images are converted to OSTree commits
- Bootable Images: bootc-image-builder creates bootable disk images
- System Management: bootupd handles bootloader updates and management
Directory Structure
simple-cli/
├── Containerfile # Main container build definition
├── recipe.yml # particle-os recipe configuration
├── justfile # Build automation commands
├── config/ # System configuration files
├── usr/ # User space configurations
├── etc/ # System-wide configuration
├── build_files/ # Build-time specifications
└── .github/workflows/ # CI/CD automation
Development
Prerequisites
- Podman or Docker
- Just command runner
- bootc-image-builder (for bootable image generation)
Setup Development Environment
just setup-dev
Available Commands
just --list
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Test with
just test - Submit a pull request
License
This project is licensed under the Apache 2.0 License - see the LICENSE file for details.
Acknowledgments
- Built on particle-os framework
- Inspired by Aurora and other particle-os projects
- Uses bootc for container-native boot
- Powered by OSTree for immutable filesystems