How anish7877/quiver works
Quiver is a rootless OCI-compatible container engine and CLI. Its primary workflow starts at the CLI, which dispatches container requests to the runtime; the runtime prepares OCI configuration and Linux isolation, runs the container, and persists state for lifecycle and inspection commands. Separate branches build and manage images. The README documents broader capabilities than the sampled excerpts; those unsampled subsystems are represented only where the tree supports a source path, and their internal wiring is not asserted.
Main entry points: container_runtime.cpp Container runtime · command_line_handler.cpp Command handler · build_executor.cpp Image build executor · database_command_queue.cpp Database command queue
Components 28
CLI and lifecycle
- Application entry
src/main.cpp - Command handler
src/command_line_handler.cpp
Container runtime
- Container runtime
src/container_runtime.cpp - OCI spec generator
src/spec_generator.cpp - Mount handling
src/mount.cpp - Capabilities and seccomp
src/caps_manager.cpp - Seccomp profiles
src/seccomp_profile_manager.cpp - Rootless networking
src/pasta_network.cpp - Interactive sessions
src/pty_session_manager.cpp
State and inspection
- Database command queue
src/database_command_queue.cpp - Database job processor
src/database_job_processor.cpp - Container metadata
src/container_db_manager.cpp - Image metadata
src/image_db_manager.cpp - Container monitoring
src/container_monitor.cpp
Images and builds
- Image manager
src/image_manager.cpp - Image build executor
image_build_system/build_executor.cpp - Buildfile parser
image_build_system/build_file_parser.cpp - Build graph
image_build_system/graph_builder.cpp - Layer cache
image_build_system/layer_cache_manager.cpp
Host integrations
- Cgroup selection
src/cgroups_manager_creator.cpp - Raw cgroups
src/raw_cgroups_manager.cpp - Systemd cgroups
src/systemd_cgroups_manager.cpp
Other components
- CLI user
- systemd user session
- pasta service
- Linux kernel
- OCI registry
- Rootless BuildKit
Connections 36
- CLI user → Application entry: invokes
- Application entry → Command handler: dispatches
- Command handler → Container runtime: requests lifecycle
- Container runtime → OCI spec generator: generates OCI spec
- Container runtime → Mount handling: configures mounts
- Container runtime → Capabilities and seccomp: configures capabilities
- Container runtime → Seccomp profiles: loads profiles
- Container runtime → Rootless networking: configures networking
- Container runtime → Interactive sessions: manages sessions
- Container runtime → Cgroup selection: selects cgroups
- Cgroup selection → Raw cgroups: selects implementation
- Cgroup selection → Systemd cgroups: selects implementation
- Systemd cgroups → systemd user session: sets properties
- Raw cgroups → Linux kernel: writes cgroup files
- OCI spec generator → Linux kernel: describes isolation
- Mount handling → Linux kernel: mounts filesystems
- Capabilities and seccomp → Linux kernel: sets capabilities
- Seccomp profiles → Linux kernel: sets seccomp
- Rootless networking → pasta service: starts networking
- Container runtime → Container metadata: persists container state
- Command handler → Container metadata: queries container state
- Command handler → Container monitoring: requests inspection
- Container metadata → Database command queue: enqueues jobs
- Image metadata → Database command queue: enqueues jobs
- Database command queue → Database job processor: dispatches jobs
- Database job processor → Container metadata: serves container jobs
- Database job processor → Image metadata: serves image jobs
- Command handler → Image manager: requests image actions
- Image manager → OCI registry: pulls or pushes
- Image manager → Image metadata: updates image metadata
- Command handler → Image build executor: requests image build
- Image build executor → Buildfile parser: parses buildfile
- Image build executor → Build graph: builds dependency graph
- Image build executor → Layer cache: looks up layers
- Image build executor → Rootless BuildKit: uses build backend
- Layer cache → Database command queue: enqueues cache jobs