# Coral Package Manager Configuration # /etc/coral/coral.conf # # This is a sample configuration file showing all available options. # Copy to /etc/coral/coral.conf and modify as needed. [general] # Target architecture arch = "amd64" # Parallel build jobs (0 = auto-detect CPU count) jobs = 0 # Ask for confirmation before operations confirm = true # Enable colored output color = true [paths] # Alternate root directory (empty = /, used for cross-building) root = "" # Installation prefix prefix = "/usr/local" # Ports tree location ports = "/usr/zports" # Built packages cache packages = "/usr/zports/pkgs/packages" # Downloaded sources cache sources = "/usr/zports/pkgs/sources" # Installed package database database = "/var/lib/coral/installed" # Ports index directory index = "/var/lib/coral/db" # Build work directory build = "/usr/zports/pkgs/build" [build] # Default C compiler flags cflags = "-O2 -pipe" # Default C++ compiler flags cxxflags = "-O2 -pipe" # Default make flags makeflags = "" # Strip binaries strip = true # Compress man pages compress_man = true # Fall back to building from source if binary not available fallback_to_source = true # Clean work directory after successful build clean_work = true # Clean package staging directory after successful build clean_pkg = true # Log build output to file (in work directory) logging = true # Hide subprocess output from terminal (still logged to file) quiet = false [network] # Download timeout in seconds timeout = 30 # Number of retry attempts retries = 3 # Use proxy (reads http_proxy/https_proxy env vars) use_proxy = false [sync] # Auto-refresh repository metadata auto_refresh = false [cache] # Keep downloaded packages after install keep_packages = true # Keep downloaded sources after build keep_sources = true [security] # Require signed repository manifests require_signed_repos = false # Require signed packages require_signed_packages = false # Coral Package Definition # /usr/ports///package.toml # # This is a sample package.toml showing all available options. # Only [package] section with name and version is required. [package] # Required: Package name (lowercase, alphanumeric, hyphens allowed) name = "example-package" # Required: Package version (semantic versioning recommended) version = "1.2.3" # Package release number (increment when rebuilding same version) release = 1 # Short description of the package description = "An example package demonstrating all package.toml options" # Project homepage URL url = "https://example.com/example-package" # License identifier (SPDX recommended: MIT, BSD-2-Clause, GPL-3.0, etc.) license = "MIT" # Package maintainer maintainer = "Your Name " # Target architecture (x86_64, aarch64, or "any" for arch-independent) arch = "x86_64" # Alternative package names this provides (for dependency resolution) # If another package depends on "editor", this package can satisfy it alternatives = ["editor", "text-editor"] # Packages this conflicts with (cannot be installed together) conflicts = ["other-editor"] [dependencies] # Packages required at runtime runtime = ["libfoo", "libbar"] # Packages required only for building build = ["gcc", "gmake", "pkg-config"] # Alternative dependencies: any one of the listed packages satisfies the dep # Format: "base_name:option1,option2,option3" # Example: depends on any database # runtime = ["database:postgresql,mysql,sqlite"] # ============================================================================= # Source Files - New format with mirror support (recommended) # ============================================================================= # Each [[source]] block defines a source file to download [[source]] # Output filename (what to save the file as) file = "example-package-1.2.3.tar.gz" # URLs to download from (tried in order until success) # Can mix remote URLs and local files (relative to port directory) urls = [ "https://example.com/releases/example-package-1.2.3.tar.gz", "https://mirror.example.org/example-package-1.2.3.tar.gz", "example-package-1.2.3.tar.gz" ] # SHA256 checksum for verification # Use "SKIP" to skip verification (not recommended for production) checksum = "abc123def456789..." # Whether to extract the archive (default: true) # Set to false for files that shouldn't be extracted (patches, data files) extract = true # Multiple sources example: # [[source]] # file = "extra-data.tar.gz" # urls = ["https://example.com/extra-data.tar.gz"] # checksum = "789xyz..." # extract = false # ============================================================================= # Legacy Source Format (deprecated, still supported) # ============================================================================= # [sources] # urls = ["https://example.com/example-package-1.2.3.tar.gz"] # checksums = ["abc123def456789..."] [patches] # Patch files to apply (in order), relative to port directory files = [ "patches/fix-build.patch", "patches/add-feature.patch" ] # Strip level for patch command (-p flag) strip = 1 [build] # Enable parallel builds parallel = true # Number of parallel jobs (0 = auto-detect, uses JOBS env var) jobs = 0