require_relative '../lib/package' class Command def self.prop(property) case property when 'arch_flags_override' puts "Use the 'arch_flags_override' property to override architecture specific flags." when 'cache_build' puts "The 'cache_build' property caches build tree artifacts to checkpoint builds." when 'conflicts_ok' puts "The 'conflicts_ok' property bypasses checks for other package file conflicts." when 'git_clone_deep' puts "The 'git_clone_deep' property clones the repository without a depth value." puts "Applicable only when 'source_url' is a git repository." when 'git_fetchtags' puts "The 'git_fetchtags' property gets the repository tags." puts "Applicable only when 'source_url' is a git repository." when 'gnome' puts "Use the 'gnome' property to include options for gnome specific packages." when 'is_fake' puts "Use the 'is_fake' property for packages that simply depend on other packages." when 'is_musl' puts "Use the 'is_musl' property for musl specific packages." when 'is_static' puts "Use the 'is_static' property for packages which do not require shared dependencies." when 'no_compile_needed' puts "Use the 'no_compile_needed' property for packages that do not require pre-built binaries." when 'no_compress' puts "Use the 'no_compress' property for packages that do not need compressed files." when 'no_env_options' puts "Use the 'no_env_options' property for packages that do not require" puts 'environment options or to override the default options.' when 'no_fhs' puts "The 'no_fhs' property bypasses FHS3 compliance checks." when 'no_git_submodules' puts "Use the 'no_git_submodules' property for repositories without git submodules." puts "Applicable only when 'source_url' is a git repository." when 'no_links' puts "Use the 'no_links' property to bypass checks for duplicate links." when 'no_lto' puts "Use the 'no_lto' property to bypass lto usage." when 'no_patchelf' puts "Use the 'no_patchelf' property to bypass patchelf execution." when 'no_shrink' puts "Use the 'no_shrink' property to bypass upx binary compression." when 'no_source_build' puts "Use the 'no_source_build' property to build even if source is unspecified or unavailable." when 'no_strip' puts "Use the 'no_strip' property to bypass strip execution." when 'no_upstream_update' puts "Use the 'no_upstream_update' property for packages that cannot be updated from an upstream repository." when 'no_zstd' puts "Use the 'no_zstd' property for the alternate xz compression algorithm." when 'patchelf' puts "Use the 'patchelf' property for patchelf execution." when 'print_source_bashrc' puts "Prints 'source ~/.bashrc' message at end of install." when 'run_tests' puts "Use the 'run_tests' property to execute make check tests." else puts <<~EOT Explain the purpose of various package boolean properties. Usage: crew prop Available properties: #{Package.available_boolean_properties.join(', ')} EOT end end end