This commit is contained in:
commit
882552f4e7
10 changed files with 675 additions and 0 deletions
108
README.md
Normal file
108
README.md
Normal file
|
|
@ -0,0 +1,108 @@
|
|||
# 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
|
||||
|
||||
```bash
|
||||
# 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
|
||||
|
||||
```bash
|
||||
# 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:
|
||||
|
||||
1. **Container Image**: The OS is built as a container image using the Containerfile
|
||||
2. **OSTree Deployment**: Container images are converted to OSTree commits
|
||||
3. **Bootable Images**: bootc-image-builder creates bootable disk images
|
||||
4. **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
|
||||
|
||||
```bash
|
||||
just setup-dev
|
||||
```
|
||||
|
||||
### Available Commands
|
||||
|
||||
```bash
|
||||
just --list
|
||||
```
|
||||
|
||||
## Contributing
|
||||
|
||||
1. Fork the repository
|
||||
2. Create a feature branch
|
||||
3. Make your changes
|
||||
4. Test with `just test`
|
||||
5. 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](https://github.com/particle-os) framework
|
||||
- Inspired by [Aurora](https://github.com/particle-os/aurora) and other particle-os projects
|
||||
- Uses [bootc](https://github.com/containers/bootc) for container-native boot
|
||||
- Powered by [OSTree](https://ostreedev.github.io/ostree/) for immutable filesystems
|
||||
Loading…
Add table
Add a link
Reference in a new issue