A comprehensive system configuration toolkit for HiFiBerry audio devices, providing both command-line tools and a REST API for managing system settings. This is the backend for HiFiBerryOS that handles all system configuration. While it's possible to use it standalone, it's only goal is to provide the functionalities required for the HiFiBerryOS system configuration. It's not designed to be a general standalone config tool.
- Network Configuration: Interface management, IPv6 control, and connectivity settings
- Audio Configuration: ALSA sound setup, sound card detection and configuration
- System Configuration: Raspberry Pi config.txt, kernel parameters, and HAT management
- Storage & Sharing: Samba client/mount management and volume control
- Service Management: systemd service control and monitoring
- Command-Line Tools: Individual utilities for specific configuration tasks
- REST API Server: HTTP endpoints for programmatic configuration access
- Configuration Database: Centralized key-value storage with encryption support
- Raspberry Pi with HiFiBerry HATs
- NetworkManager-based systems
- systemd-managed services
This package is typically installed as part of HiFiBerry OS. For manual installation:
pip install -r requirements.txt
python setup.py installComprehensive documentation is available in the docs/ directory:
- API Documentation - Complete REST API reference with examples
- Version Management - Version management and release process
- Python 3.6+
- NetworkManager (for network configuration)
- Root privileges (for system configuration changes)
MIT License - see LICENSE file for details.