Local Copr (lc)
A lightweight, secure local RPM build system for Fedora/RHEL-based distributions. Build and manage your own RPM repositories without needing Copr infrastructure.
Features
Local RPM Building - Build RPMs in isolated mock environments
Git Automation - Push-to-Build workflow via lc-githooks
GPG Signing Support - Optional package and repository signing
Resource Control - Memory and CPU limits for safe builds
Network Isolation - Offline builds by default
Repository Management - Create and maintain local yum/dnf repositories
Auto-Rebuild Planner - Intelligent dependency-based rebuild chains via lc-rebuild
Configuration per Package - JSON config files for package-specific build options
Zero-Config - Works out of the box with sensible defaults
Architecture
Local Copr consists of four tools with clear separation of duties:
-
lc- Main build tool (runs as regular user)- Supports manual builds, chain builds via JSON plans
- Automatic version bumping for incremental builds
- Multiple storage backends (tmpfs, SSD, hybrid tmpfs)
-
lc-git- Git integration manager (manages local forges and build triggers)- Creates βforgesβ (git repositories) inside your RPM repository
- Push-to-build workflow with automatic hook installation
- Supports both local repos and remote cloning
-
lc-rebuild- Dependency planning tool using libdnf5- Analyzes package dependencies for rebuild orchestration
- Generates build plans that respect dependency chains
- Integrates with conf.json for per-package configuration
-
lc-add-repo- System integration tool (requires sudo)- Adds local repositories to system package manager
- Handles GPG key import and repository registration
- Manages repo files in /etc/yum.repos.d/