Cockpit module for browsing, installing, and configuring container applications in HaLOS.
In Development - See docs/SPEC.md for the technical specification and docs/ARCHITECTURE.md for architecture details.
- Browse container app stores by category
- Search for container apps
- Install and uninstall container app packages
- Configure installed apps through dynamically generated forms
- Docker and Docker Compose
- Node.js 18+ (for frontend development)
- Git
# 1. Vendor utilities from cockpit-apt
./run vendor
# 2. Build development container
./run build-devtools
# 3. Run backend tests
./run test
# 4. Open development shell
./run backend shellcockpit-container-apps/
├── backend/ # Python backend
│ ├── cockpit_container_apps/ # Main package
│ │ ├── cli.py # CLI entry point
│ │ ├── commands/ # Command handlers
│ │ └── vendor/ # Vendored utilities
│ │ └── cockpit_apt_utils/ # Utils from cockpit-apt
│ ├── tests/ # Backend tests
│ └── pyproject.toml # Python dependencies
├── frontend/ # React frontend
│ ├── src/ # Source files
│ └── package.json # Node dependencies
├── docker/ # Docker configurations
├── debian/ # Debian packaging
├── docs/ # Documentation
│ ├── SPEC.md # Technical specification
│ └── ARCHITECTURE.md # Architecture documentation
├── run # Development commands
└── VERSION # Package version
# Vendoring
./run vendor # Vendor utilities from cockpit-apt
./run vendor-check # Check vendored version
# Backend
./run test # Run backend tests
./run lint # Run linter
./run typecheck # Run type checker
./run backend shell # Open development shell
# Frontend
cd frontend && npm install
./run frontend build # Build frontend
./run frontend test # Run frontend tests
# Docker
./run build-devtools # Build dev container
./run build-debtools # Build packaging container
# Packaging
./run build-deb # Build Debian packageThis project vendors utilities from cockpit-apt to avoid a package dependency. The vendoring is done at build time:
# Update vendored utilities
./run vendor
# Or specify a version
./run vendor v0.2.0+1The vendored utilities include:
- Error handling and formatting
- Input validation
- Store configuration loading
- Store filter matching
- Debtag parsing
- Repository metadata parsing
This module is part of the HaLOS distribution.
LGPL-2.1-or-later