id = "spack" name = "Spack" homepage = "https://spack.io" description = "Package manager for supercomputers." executables = ["spack"] [dotfiles] # https://github.com/spack/spack/blob/develop/lib/spack/docs/configuration.rst — # the user configuration scope is ~/.spack/ and the official list names these # YAML files as the supported configuration files in that scope. Spack's # changelog also says the pre-v1 compiler scope remains readable, so retain # the historical platform-specific compiler file. paths = [ "~/.spack/config.yaml", "~/.spack/concretizer.yaml", "~/.spack/include.yaml", "~/.spack/mirrors.yaml", "~/.spack/modules.yaml", "~/.spack/packages.yaml", "~/.spack/*/compilers.yaml", "~/.spack/repos.yaml", "~/.spack/toolchains.yaml", ] secret = [] [commands] format = 1 label = "Spack" description = "Build and install packages from specs. Environment-only, buildcache-mode, CDash and log options of spack install are left out; other spack subcommands are not covered." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.subcommand]] path = ["install"] label = "Install packages" description = "Concretize and install one or more package specs." [[commands.subcommand.source]] id = "help" kind = "help" url = "https://spack.readthedocs.io/en/latest/command_index.html" revision = "1.3.0.dev0" evidence = """ spack install [-h] [--only {package,dependencies}] [-u UNTIL] [-p CONCURRENT_PACKAGES] [-j JOBS] [--overwrite] Positional arguments spec package spec --only {package,dependencies} select the mode of installation -j, --jobs JOBS explicitly set number of parallel jobs --overwrite reinstall an existing spec, even if it has dependents --fail-fast stop all builds if any build fails (default is best effort) --keep-stage don't remove the build stage if installation succeeds --use-cache check for pre-built Spack packages in mirrors (default) --no-cache do not check for pre-built Spack packages in mirrors --cache-only only install package from binary mirrors --show-log-on-error print full build log to stderr if build fails -n, --no-checksum do not use checksums to verify downloaded files (unsafe) -v, --verbose display verbose build output while installing --test {root,all} run tests on only root packages or all packages -y, --yes-to-all assume "yes" is the answer to every confirmation request -U, --fresh do not reuse installed deps; build newest configuration --reuse reuse installed packages/buildcaches when possible """ [[commands.subcommand.field]] id = "specs" label = "Package specs" description = "For example zlib@1.3 +shared %gcc." type = "string" position = 0 multiple = true min = 0 sources = ["help"] [[commands.subcommand.field]] id = "only" label = "Install" type = "enum" option = ["--only"] choices = [{ value = "package", label = "Package only" }, { value = "dependencies", label = "Dependencies only" }] sources = ["help"] [[commands.subcommand.field]] id = "jobs" label = "Parallel jobs" type = "integer" option = ["--jobs", "-j"] sources = ["help"] [[commands.subcommand.field]] id = "overwrite" label = "Reinstall existing" type = "boolean" option = ["--overwrite"] effect = "overwrite" sources = ["help"] [[commands.subcommand.field]] id = "fail_fast" label = "Stop on first failure" type = "boolean" option = ["--fail-fast"] sources = ["help"] [[commands.subcommand.field]] id = "keep_stage" label = "Keep build stage" type = "boolean" option = ["--keep-stage"] sources = ["help"] [[commands.subcommand.field]] id = "no_cache" label = "Skip binary mirrors" type = "boolean" option = ["--no-cache"] sources = ["help"] [[commands.subcommand.field]] id = "cache_only" label = "Binary mirrors only" type = "boolean" option = ["--cache-only"] sources = ["help"] [[commands.subcommand.field]] id = "no_checksum" label = "Skip checksum verification (unsafe)" type = "boolean" option = ["--no-checksum", "-n"] sources = ["help"] [[commands.subcommand.field]] id = "verbose" label = "Verbose build output" type = "boolean" option = ["--verbose", "-v"] sources = ["help"] [[commands.subcommand.field]] id = "show_log_on_error" label = "Show log on error" type = "boolean" option = ["--show-log-on-error"] sources = ["help"] [[commands.subcommand.field]] id = "test" label = "Run tests" type = "enum" option = ["--test"] choices = [{ value = "root", label = "Root packages" }, { value = "all", label = "All packages" }] sources = ["help"] [[commands.subcommand.field]] id = "fresh" label = "Build fresh (no reuse)" type = "boolean" option = ["--fresh", "-U"] sources = ["help"] [[commands.subcommand.field]] id = "reuse" label = "Reuse installed" type = "boolean" option = ["--reuse"] sources = ["help"] [[commands.subcommand.task]] id = "install" label = "Install a package" fields = ["specs", "jobs", "verbose"] required = ["specs"] [[commands.subcommand.task]] id = "binary" label = "Install from binary mirrors only" fields = ["specs", "cache_only"] required = ["specs"] set = { cache_only = [true] } [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["specs", "only", "jobs", "verbose", "overwrite"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["fail_fast", "keep_stage", "no_cache", "cache_only", "no_checksum", "show_log_on_error", "test", "fresh", "reuse"]