### Global accepted licenses list Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Example global accepted list with MIT and ISC licenses, shown as a starting point for per-crate accepted configuration. ```ini accepted = ["MIT", "ISC"] ``` -------------------------------- ### Install, initialize, and generate licenses with cargo-about Source: https://embarkstudios.github.io/cargo-about/ Run this command to install cargo-about, initialize your project with a default configuration, and generate a licenses.html file using the about.hbs template. ```bash cargo install --locked cargo-about && cargo about init && cargo about generate -o licenses.html about.hbs ``` -------------------------------- ### Per-crate accepted configuration for ring Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Example about.toml configuration that appends the OpenSSL license to the global accepted list for the 'ring' crate, satisfying its license requirements. ```ini accepted = ["MIT", "ISC"] [ring] accepted = ["OpenSSL"] ``` -------------------------------- ### workarounds config Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Opt into built-in license clarifications for crates with packaging issues. The example enables workarounds for ring and rustls. ```ini workarounds = [ "ring", "rustls", ] ``` -------------------------------- ### about.toml with private.ignore = true Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Example about.toml configuration that sets private.ignore = true, causing the 'sekret' package to be ignored during license checking. ```ini # about.toml # The sekret package would be ignored now private = { ignore = true } ``` -------------------------------- ### Example handlebars template for license overview Source: https://embarkstudios.github.io/cargo-about/cli/generate/output.html A handlebars template that iterates over the 'overview' variable to render a list of license links with counts. Uses the 'id', 'name', and 'count' fields from LicenseSet. ```hbs ``` -------------------------------- ### Cargo.toml with private package (publish = false) Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Example Cargo.toml showing a package named 'sekret' with a non-standard license and publish = false, marking it as private. Used with the private.ignore configuration to skip license checking. ```ini # Cargo.toml [package] name = "sekret" license = "¯\_(ツ)_/¯" publish = false # "private"! ``` -------------------------------- ### about.toml with private.registries = ["sauce"] Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Example about.toml configuration that sets private.ignore = true and private.registries = ["sauce"], so a workspace member publishing only to the 'sauce' registry is still ignored. ```ini # about.toml # Still ignored! private = { ignore = true, registries = ["sauce"] } ``` -------------------------------- ### Cargo.toml with private registries (publish = ["sauce"]) Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Example Cargo.toml showing a package named 'sekret' that publishes only to a private registry 'sauce'. Used with private.registries to ignore it when private.ignore is true. ```ini # Cargo.toml [package] name = "sekret" license = "¯\_(ツ)_/¯" publish = ["sauce"] ``` -------------------------------- ### Clarify ring crate with files source of truth Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Specifies a `files` entry for the `ring` crate to define the license source of truth. The `path` is relative to the crate root, `license` overrides the parent expression, `checksum` is the full sha-256, and `start`/`end` are substring markers for extracting a portion of the file. ```ini [ring.clarify] license = "ISC AND MIT AND OpenSSL" [[ring.clarify.files]] path = 'LICENSE' license = 'OpenSSL' checksum = '53552a9b197cd0db29bd085d81253e67097eedd713706e8cd2a3cc6c29850ceb' start = '/* ====================================================================' end = '\n * Hudson (tjh@cryptsoft.com).\n *\n */' ``` -------------------------------- ### accepted licenses priority list in cargo-about config Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Defines the priority list of accepted licenses. cargo-about tries to satisfy license expressions in the order declared; for 'Apache-2.0 OR MIT', Apache-2.0 is used because it has higher priority. Applies globally to all crates; if a crate's license cannot be satisfied, an error is emitted. ```ini accepted = [ "Apache-2.0", "MIT", ] ``` -------------------------------- ### ignore-build-dependencies config Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Set to true to ignore all crates used only as build dependencies. ```ini ignore-build-dependencies = true ``` -------------------------------- ### ignore-dev-dependencies config Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Set to true to ignore all crates used only as dev dependencies. ```ini ignore-dev-dependencies = true ``` -------------------------------- ### targets list in cargo-about config Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Optional list of build targets. Crates only included via cfg() expressions that don't match any listed target are ignored. Targets are evaluated all at once, so a crate might be included that is impossible for any single target alone. ```ini targets = [ "x86_64-unknown-linux-gnu", "x86_64-unknown-linux-musl", "x86_64-pc-windows-msvc", "x86_64-apple-darwin", ] ``` -------------------------------- ### ignore-transitive-dependencies config Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Set to true to include only direct dependencies of workspace crates, ignoring transitive dependencies. ```ini ignore-transitive-dependencies = true ``` -------------------------------- ### Clarify license expression for ring crate Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Sets the top-level SPDX license expression for a crate. This overrides the crate's own license expression if present. Used in the `[ring.clarify]` section. ```ini [ring.clarify] license = "ISC AND MIT AND OpenSSL" ``` -------------------------------- ### Override git commit for core-graphics-types Source: https://embarkstudios.github.io/cargo-about/cli/generate/config.html Provides a git revision or tag when the `.cargo_vcs_info.json` file is missing (e.g., when published with `cargo publish --allow-dirty`). The value can be a full git revision or a tag. ```ini [core-graphics-types.clarify] override-git-commit = "3841d2bb3aa76dec2ea6319e757603fb923b5a50" ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.