# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 CRATES=" addr2line@0.25.1 adler2@2.0.1 aead@0.5.2 aes-gcm@0.10.3 aes@0.8.4 aes@0.9.3 agent-client-protocol-schema@1.5.0 ahash@0.8.12 aho-corasick@1.1.5 alloc-no-stdlib@2.0.4 alloc-stdlib@0.2.4 allocator-api2@0.2.21 android_system_properties@0.1.6 ansi_colours@1.2.3 anstream@1.0.0 anstyle-parse@1.0.0 anstyle-query@1.1.5 anstyle-wincon@3.0.11 anstyle@1.0.14 anyhow@1.0.104 approx@0.5.1 ar_archive_writer@0.5.3 arboard@3.6.1 arc-swap@1.9.2 arrayvec@0.7.8 ascii@1.1.0 askama@0.16.0 askama_derive@0.16.0 askama_macros@0.16.0 askama_parser@0.16.0 asn1-rs-derive@0.6.0 asn1-rs-impl@0.2.0 asn1-rs@0.7.2 assert-json-diff@2.0.2 ast_node@5.0.0 async-channel@2.5.0 async-compression@0.4.44 async-io@2.6.0 async-lock@3.4.2 async-once-cell@0.5.4 async-process@2.5.0 async-signal@0.2.14 async-stream-impl@0.3.6 async-stream@0.3.6 async-task@4.7.1 async-trait@0.1.92 async-utility@0.3.2 async-wsocket@0.17.0 async_io_stream@0.3.3 atoi@2.0.0 atomic-waker@1.1.2 audio-codec-algorithms@0.8.1 audioadapter-buffers@5.2.0 audioadapter-sample@5.2.0 audioadapter@5.0.0 autocfg@1.5.1 aws-config@1.11.0 aws-credential-types@1.3.0 aws-lc-rs@1.18.1 aws-lc-sys@0.45.0 aws-runtime@1.9.1 aws-sdk-bedrockruntime@1.142.0 aws-sdk-sagemakerruntime@1.112.0 aws-sdk-sso@1.108.0 aws-sdk-ssooidc@1.110.0 aws-sdk-sts@1.113.0 aws-sigv4@1.5.1 aws-smithy-async@1.3.0 aws-smithy-eventstream@0.61.2 aws-smithy-http@0.64.0 aws-smithy-json@0.63.0 aws-smithy-observability@0.3.0 aws-smithy-query@0.62.0 aws-smithy-runtime-api-macros@1.1.0 aws-smithy-runtime-api@1.16.0 aws-smithy-runtime@1.14.0 aws-smithy-schema@0.2.0 aws-smithy-types@1.6.3 aws-smithy-xml@0.62.0 aws-types@1.5.0 axum-core@0.5.6 axum-macros@0.5.1 axum-server@0.8.0 axum@0.8.9 az@1.3.0 backon@1.6.0 backtrace@0.3.76 base16ct@0.2.0 base16ct@1.0.0 base32@0.5.1 base64-simd@0.8.0 base64@0.13.1 base64@0.21.7 base64@0.22.1 base64@0.23.1 base64ct@1.8.3 basic-toml@0.1.10 bat@0.26.1 bech32@0.12.0 better_scoped_tls@1.0.1 bincode@1.3.3 bindgen@0.72.1 biome_console@0.3.1 biome_deserialize@0.3.1 biome_diagnostics@0.3.1 biome_diagnostics_categories@0.3.1 biome_diagnostics_macros@0.3.1 biome_formatter@0.3.1 biome_js_factory@0.3.1 biome_js_formatter@0.3.1 biome_js_parser@0.3.1 biome_js_syntax@0.3.1 biome_js_unicode_table@0.3.1 biome_json_factory@0.3.1 biome_json_parser@0.3.1 biome_json_syntax@0.3.1 biome_markup@0.3.1 biome_parser@0.3.1 biome_rowan@0.3.1 biome_text_edit@0.3.1 biome_text_size@0.3.1 bip39@2.2.2 bit-set@0.8.0 bit-vec@0.8.0 bit-vec@0.9.1 bit_field@0.10.3 bitcoin-consensus-encoding@1.2.0 bitcoin-internals@0.6.0 bitcoin-io@0.1.101 bitcoin_hashes@0.14.101 bitcoin_hashes@1.2.0 bitflags@1.3.2 bitflags@2.13.1 bitvec@1.1.1 blake3@1.8.7 block-buffer@0.10.4 block-buffer@0.12.1 block-padding@0.3.3 block-padding@0.4.2 block2@0.6.2 block@0.1.6 blocking@1.7.0 bon-macros@3.10.0 bon@3.10.0 borrow-or-share@0.2.4 boxed_error@0.2.3 bpaf@0.9.27 bpaf_derive@0.5.26 brotli-decompressor@5.0.3 brotli@8.0.4 bs58@0.5.1 bstr@1.13.1 bumpalo@3.20.3 bytecount@0.6.9 bytemuck@1.25.2 bytemuck_derive@1.12.0 byteorder-lite@0.1.0 byteorder@1.5.0 bytes-str@0.2.8 bytes-utils@0.1.4 bytes@1.12.1 bytesize@1.3.3 bzip2@0.6.1 cache_control@0.2.0 calendrical_calculations@0.2.4 camino@1.2.5 candle-core@0.11.0 candle-kernels@0.11.0 candle-metal-kernels@0.11.0 candle-nn@0.11.0 candle-transformers@0.11.0 candle-ug@0.11.0 capacity_builder@0.5.0 capacity_builder_macros@0.3.0 cargo-platform@0.3.3 cargo_metadata@0.23.1 castaway@0.2.4 cbc@0.1.2 cbc@0.2.1 cc@1.4.4 cesu8@1.1.0 cexpr@0.6.0 cfb@0.14.0 cfg-if@0.1.10 cfg-if@1.0.4 cfg_aliases@0.2.2 chacha20@0.10.2 chacha20@0.9.1 chacha20poly1305@0.10.1 chrono-tz@0.10.4 chrono@0.4.45 cipher@0.4.4 cipher@0.5.2 clang-sys@1.9.1 clap@4.6.6 clap_builder@4.6.6 clap_complete@4.6.9 clap_complete_nushell@4.6.2 clap_derive@4.6.4 clap_lex@1.1.0 clap_mangen@0.3.3 cliclack@0.5.6 clipboard-win@5.4.1 clircle@0.6.1 cmake@0.1.58 cmov@0.5.4 cmpv2@0.2.0 cms@0.2.3 cobs@0.3.0 color_quant@1.1.0 colorchoice@1.0.5 colored@3.1.1 combine@4.6.8 comfy-table@8.0.0 compact_str@0.7.1 compact_str@0.9.1 compression-codecs@0.4.39 compression-core@0.4.33 concurrent-queue@2.5.0 console@0.16.4 const-oid@0.10.2 const-oid@0.9.6 const-str@1.1.0 const_panic@0.2.17 constant_time_eq@0.4.2 content_inspector@0.2.4 convert_case@0.10.0 cooked-waker@5.0.0 cookie@0.18.2 cookie_store@0.22.1 cordyceps@0.3.5 core-foundation-sys@0.8.7 core-foundation@0.10.1 core-foundation@0.9.4 core-graphics-types@0.1.3 core_maths@0.1.1 countio@0.3.0 countme@3.0.1 cpubits@0.1.1 cpufeatures@0.2.17 cpufeatures@0.3.1 crc-catalog@2.5.0 crc32fast@1.5.1 crc@3.4.0 critical-section@1.2.0 crmf@0.2.0 croner@3.0.1 crossbeam-channel@0.5.16 crossbeam-deque@0.8.7 crossbeam-epoch@0.9.20 crossbeam-queue@0.3.13 crossbeam-utils@0.8.22 crunchy@0.2.4 crypto-bigint@0.5.5 crypto-common@0.1.7 crypto-common@0.2.2 ctor@1.0.13 ctr@0.9.2 ctutils@0.4.2 cudarc@0.17.8 cudarc@0.19.9 curve25519-dalek-derive@0.1.1 curve25519-dalek@4.1.3 curve25519-dalek@5.0.0 daachorse@3.0.3 darling@0.20.11 darling@0.23.0 darling@0.24.1 darling_core@0.20.11 darling_core@0.23.0 darling_core@0.24.1 darling_macro@0.20.11 darling_macro@0.23.0 darling_macro@0.24.1 dary_heap@0.3.9 dashmap@5.5.3 dashmap@6.2.1 data-encoding-macro-internal@0.1.19 data-encoding-macro@0.1.21 data-encoding@2.11.1 data-url@0.3.2 dbus-secret-service@4.1.0 dbus@0.9.12 deadpool-runtime@0.1.4 deadpool@0.12.3 debugid@0.8.0 defmt-macros@1.1.1 defmt-parser@1.0.0 defmt@1.1.1 deno_ast@0.52.0 deno_cache_dir@0.26.3 deno_config@0.77.0 deno_core@0.381.1 deno_core_icudata@0.77.0 deno_error@0.7.1 deno_error_macro@0.7.1 deno_lockfile@0.32.2 deno_maybe_sync@0.14.0 deno_media_type@0.3.0 deno_npm@0.42.3 deno_ops@0.257.0 deno_package_json@0.29.0 deno_path_util@0.6.4 deno_resolver@0.58.0 deno_semver@0.9.1 deno_terminal@0.2.3 deno_unsync@0.4.4 der-parser@10.0.0 der@0.7.10 der@0.8.1 der_derive@0.7.3 deranged@0.5.8 derive_builder@0.20.2 derive_builder_core@0.20.2 derive_builder_macro@0.20.2 derive_more-impl@2.1.1 derive_more@2.1.1 diatomic-waker@0.2.3 diff@0.1.13 digest@0.10.7 digest@0.11.3 diplomat-runtime@0.14.0 diplomat@0.14.0 diplomat_core@0.14.0 dirs-sys@0.5.0 dirs@6.0.0 dispatch2@0.3.1 displaydoc@0.2.7 dissimilar@1.0.9 dlopen2@0.8.2 document-features@0.2.12 docx-rs@0.4.22 dotenvy@0.15.7 downcast@0.11.0 dprint-swc-ext@0.26.1 drop_bomb@0.1.5 dtor@1.0.6 dunce@1.0.5 dyn-clone@1.0.20 dyn-stack-macros@0.1.3 dyn-stack@0.13.2 ecb@0.2.1 ecdsa@0.16.9 ecow@0.2.6 ed25519-dalek@2.2.0 ed25519-dalek@3.0.0 ed25519@2.2.3 ed25519@3.0.0 either@1.18.0 elliptic-curve@0.13.8 email_address@0.2.9 embedded-io@0.4.0 embedded-io@0.6.1 encode_unicode@1.0.0 encoding_rs@0.8.35 endian-type@0.2.0 enum-as-inner@0.6.1 enum-assoc@1.4.1 enumflags2@0.7.12 enumflags2_derive@0.7.12 env-lock@1.0.2 env_home@0.1.0 equivalent@1.0.2 errno@0.3.14 error-code@3.4.0 esaxx-rs@0.1.10 etcetera@0.11.0 event-listener-strategy@0.5.4 event-listener@5.4.2 exr@1.74.2 extended@0.1.0 fancy-regex@0.17.0 fancy-regex@0.18.0 fancy-regex@0.19.0 faster-hex@0.10.0 fastrand@2.5.0 fax@0.2.7 fdeflate@0.3.7 ff@0.13.1 fiat-crypto@0.2.9 fiat-crypto@0.3.0 filetime@0.2.29 find-msvc-tools@0.1.11 find_cuda_helper@0.2.0 fixedbitset@0.5.7 flagset@0.4.7 flate2@1.1.10 float8@0.7.0 fluent-uri@0.4.1 flume@0.12.0 fnv@1.0.7 foldhash@0.2.0 foreign-types-macros@0.2.4 foreign-types-shared@0.1.1 foreign-types-shared@0.3.1 foreign-types@0.3.2 foreign-types@0.5.0 form_urlencoded@1.2.2 fraction@0.17.0 fragile@2.1.0 from_variant@3.0.0 fs-err@3.3.1 fs2@0.4.3 fs_extra@1.3.0 fslock@0.2.1 funty@2.0.0 futures-buffered@0.2.13 futures-channel@0.3.34 futures-concurrency@7.7.1 futures-core@0.3.34 futures-executor@0.3.34 futures-intrusive@0.5.0 futures-io@0.3.34 futures-lite@2.6.1 futures-macro@0.3.34 futures-sink@0.3.34 futures-task@0.3.34 futures-util@0.3.34 futures@0.3.34 gearhash@0.1.3 gemm-c32@0.18.2 gemm-c32@0.19.0 gemm-c64@0.18.2 gemm-c64@0.19.0 gemm-common@0.18.2 gemm-common@0.19.0 gemm-f16@0.18.2 gemm-f16@0.19.0 gemm-f32@0.18.2 gemm-f32@0.19.0 gemm-f64@0.18.2 gemm-f64@0.19.0 gemm@0.18.2 gemm@0.19.0 generator@0.8.9 generic-array@0.14.7 gethostname@1.1.0 getrandom@0.2.17 getrandom@0.3.4 getrandom@0.4.3 ghash@0.5.1 gif@0.13.3 gif@0.14.2 gimli@0.32.3 git-version-macro@0.3.9 git-version@0.3.9 glob@0.3.4 globset@0.4.20 gloo-timers@0.3.0 goblin@0.8.2 group@0.13.0 gzip-header@1.1.0 h2@0.4.19 half@2.7.1 handlebars@6.4.4 hash32@0.3.1 hashbrown@0.12.3 hashbrown@0.14.5 hashbrown@0.16.1 hashbrown@0.17.1 hashlink@0.11.1 heapify@0.2.0 heapless@0.8.0 heck@0.5.0 hermit-abi@0.5.3 hex-conservative@0.2.3 hex-conservative@1.2.0 hex@0.4.3 hf-hub@1.0.0 hf-xet@1.6.0 hickory-net@0.26.1 hickory-proto@0.26.1 hickory-resolver@0.26.1 hipstr@0.6.0 hkdf@0.12.4 hkdf@0.13.0 hmac@0.12.1 hmac@0.13.0 home@0.5.12 hstr@3.0.6 html5gum@0.8.4 http-body-util@0.1.5 http-body@0.4.6 http-body@1.1.0 http@0.2.12 http@1.5.0 httparse@1.10.1 httpdate@1.0.3 humantime@2.4.0 hybrid-array@0.4.14 hyper-rustls@0.27.9 hyper-timeout@0.5.2 hyper-tls@0.6.0 hyper-util@0.1.20 hyper@1.11.1 iana-time-zone-haiku@0.1.2 iana-time-zone@0.1.65 icu_calendar@2.1.1 icu_calendar_data@2.1.1 icu_collections@2.1.1 icu_locale@2.1.1 icu_locale_core@2.3.0 icu_locale_data@2.1.2 icu_normalizer@2.1.1 icu_normalizer_data@2.1.1 icu_properties@2.1.2 icu_properties_data@2.1.2 icu_provider@2.3.1 ident_case@1.0.1 identity-hash@0.1.0 idna@1.1.0 idna_adapter@1.2.1 if_chain@1.0.3 ignore@0.4.33 image@0.24.9 image@0.25.10 imagesize@0.14.0 import_map@0.24.0 include_dir@0.7.4 include_dir_macros@0.7.4 indexmap@1.9.3 indexmap@2.14.1 indicatif@0.18.6 indoc@2.0.7 inout@0.1.4 inout@0.2.2 insta@1.48.0 ipconfig@0.3.4 ipnet@2.12.1 iroh-base@1.1.0 iroh-dns@1.1.0 iroh-metrics-derive@1.0.1 iroh-metrics@1.0.1 iroh-relay@1.1.0 iroh@1.1.0 is-docker@0.2.0 is-macro@0.3.8 is-wsl@0.4.0 is_terminal_polyfill@1.70.2 itertools@0.13.0 itertools@0.14.0 itertools@0.15.0 itoa@1.0.18 ixdtf@0.6.6 jetscii@0.5.3 jiff-core@0.1.0 jiff-static@0.2.35 jiff-tzdb-platform@0.1.3 jiff-tzdb@0.1.8 jiff@0.2.35 jni-macros@0.22.4 jni-sys-macros@0.4.1 jni-sys@0.3.1 jni-sys@0.4.1 jni@0.21.1 jni@0.22.4 jobserver@0.1.35 jpeg-decoder@0.3.2 js-sys@0.3.104 jsonc-parser@0.27.1 jsonschema-regex@0.52.1 jsonschema-value@0.52.1 jsonschema@0.52.1 jsonwebtoken@11.0.0 keyring@3.6.3 konst@0.4.3 konst_proc_macros@0.4.1 lazy-regex-proc_macros@3.6.1 lazy-regex@3.6.1 lazy_static@1.5.0 lebe@0.5.3 libbz2-rs-sys@0.2.5 libc@0.2.189 libdbus-sys@0.2.7 libloading@0.8.9 libloading@0.9.0 libm@0.2.16 libredox@0.1.23 libsqlite3-sys@0.37.0 link-section@0.19.3 linktime-proc-macro@0.2.3 linux-keyutils@0.2.5 linux-raw-sys@0.12.1 linux-raw-sys@0.4.15 litemap@0.8.3 litrs@1.0.0 llama-cpp-2@0.1.146 llama-cpp-sys-2@0.1.146 lock_api@0.4.14 log@0.4.34 loom@0.7.2 lopdf@0.44.0 lru-slab@0.1.2 lru@0.18.4 lz4_flex@0.13.1 mac-addr@0.3.0 mach-sys@0.5.4 macro_rules_attribute-proc_macro@0.2.3 macro_rules_attribute@0.2.3 malloc_buf@0.0.6 matchers@0.2.0 matchit@0.8.4 md-5@0.11.0 memchr@2.8.3 memmap2@0.9.11 memo-map@0.3.4 memoffset@0.8.0 metal@0.29.0 micromap@0.3.0 mime@0.3.17 mime_guess@2.0.5 minijinja-contrib@2.24.0 minijinja@2.24.0 minimal-lexical@0.2.1 miniz_oxide@0.8.9 miniz_oxide@0.9.1 mio@1.2.3 mockall@0.15.0 mockall_derive@0.15.0 moka@0.12.16 monch@0.5.0 monostate-impl@0.1.18 monostate@0.1.18 more-asserts@0.3.1 moxcms@0.8.1 n0-error-macros@1.0.1 n0-error@1.0.1 n0-future@0.3.2 n0-watcher@1.0.0 nanoid@0.5.0 native-tls@0.2.18 ndk-context@0.1.1 negentropy@0.5.1 netdev@0.45.0 netdev@0.46.2 netlink-packet-core@0.8.2 netlink-packet-core@0.9.0 netlink-packet-route@0.31.0 netlink-packet-route@0.33.0 netlink-proto@0.12.2 netlink-sys@0.8.8 netlink-sys@0.9.0 netwatch@0.19.3 new_debug_unreachable@1.0.6 nibble_vec@0.1.0 nix@0.31.3 node_resolver@0.65.0 nom@7.1.3 nom@8.0.0 noq-proto@1.2.0 noq-udp@1.2.0 noq@1.2.0 nostr-database@0.45.1 nostr-gossip@0.45.0 nostr-sdk@0.45.2 nostr@0.45.4 ntapi@0.4.3 nu-ansi-term@0.50.3 num-bigint-dig@0.8.6 num-bigint@0.4.8 num-cmp@0.1.0 num-complex@0.4.6 num-conv@0.2.2 num-derive@0.4.2 num-integer@0.1.47 num-iter@0.1.46 num-modular@0.6.5 num-order@1.2.0 num-rational@0.4.2 num-traits@0.2.19 num@0.4.3 num_cpus@1.17.0 num_enum@0.7.6 num_enum_derive@0.7.6 oauth2@5.0.0 objc2-app-kit@0.3.2 objc2-core-foundation@0.3.2 objc2-core-graphics@0.3.2 objc2-core-wlan@0.3.2 objc2-encode@4.1.0 objc2-foundation@0.3.2 objc2-io-kit@0.3.2 objc2-io-surface@0.3.2 objc2-metal@0.3.2 objc2-security-foundation@0.3.2 objc2-security@0.3.2 objc2-system-configuration@0.3.2 objc2@0.6.4 objc@0.2.7 object@0.37.3 object@0.39.1 oid-registry@0.8.1 once_cell@1.21.4 once_cell_polyfill@1.70.2 oneshot@0.1.13 onig@6.5.3 onig_sys@69.9.3 opaque-debug@0.3.1 opaquerr@0.2.0 open@5.4.3 openssl-macros@0.1.1 openssl-probe@0.2.1 openssl-src@300.6.1+3.6.3 openssl-sys@0.9.117 openssl@0.10.81 opentelemetry-appender-tracing@0.32.0 opentelemetry-http@0.31.0 opentelemetry-http@0.32.0 opentelemetry-otlp@0.31.1 opentelemetry-otlp@0.32.0 opentelemetry-proto@0.31.0 opentelemetry-proto@0.32.0 opentelemetry-stdout@0.32.0 opentelemetry@0.31.0 opentelemetry@0.32.0 opentelemetry_sdk@0.31.0 opentelemetry_sdk@0.32.1 option-ext@0.2.0 os_str_bytes@6.6.1 outref@0.5.2 p256@0.13.2 p384@0.13.1 papaya@0.2.5 par-core@2.0.0 parking@2.2.1 parking_lot@0.12.5 parking_lot_core@0.9.12 paste@1.0.15 pastey@0.2.3 path-clean@0.1.0 path_abs@0.5.1 pathdiff@0.2.3 pctx_code_execution_runtime@0.2.2 pctx_code_mode@0.5.0 pctx_codegen@0.3.3 pctx_config@0.1.5 pctx_deno_transpiler@0.1.1 pctx_executor@0.2.2 pctx_registry@0.1.3 pctx_type_check_runtime@0.1.3 pem-rfc7468@0.7.0 pem-rfc7468@1.0.0 pem@3.0.6 pem@4.0.0 percent-encoding@2.3.2 pest@2.9.0 pest_derive@2.9.0 pest_generator@2.9.0 pest_meta@2.9.0 pharos@0.5.3 phf@0.11.3 phf@0.12.1 phf@0.14.0 phf_generator@0.11.3 phf_generator@0.14.0 phf_macros@0.11.3 phf_macros@0.14.0 phf_shared@0.11.3 phf_shared@0.12.1 phf_shared@0.14.0 pin-project-internal@1.1.13 pin-project-lite@0.2.17 pin-project@1.1.13 pin-utils@0.1.0 piper@0.2.5 pkcs1@0.7.5 pkcs8@0.10.2 pkcs8@0.11.0 pkg-config@0.3.34 plain@0.2.3 plist@1.10.0 png@0.17.16 png@0.18.1 polling@3.11.0 poly1305@0.8.0 polyval@0.6.2 portable-atomic-util@0.2.7 portable-atomic@1.15.0 postcard-derive@0.2.2 postcard@1.1.3 potential_utf@0.1.6 powerfmt@0.2.0 ppv-lite86@0.2.21 predicates-core@1.0.10 predicates-tree@1.0.13 predicates@3.1.4 prefix-trie@0.8.4 pretty_assertions@1.4.1 prettyplease@0.2.37 prettyplease@0.3.0 primeorder@0.13.6 proc-macro-crate@3.5.0 proc-macro-error-attr@1.0.4 proc-macro-error@1.0.4 proc-macro2@1.0.107 process-wrap@9.1.0 prost-derive@0.14.4 prost@0.14.4 psl-types@2.0.11 psm@0.1.32 publicsuffix@2.3.0 pulldown-cmark@0.13.4 pulp-wasm-simd-flag@0.1.1 pulp@0.21.5 pulp@0.22.3 pxfm@0.1.30 qrcode@0.14.1 quick-error@2.0.1 quick-xml@0.41.0 quinn-proto@0.11.17 quinn-udp@0.5.15 quinn@0.11.11 quote@1.0.47 r-efi@5.3.0 r-efi@6.0.0 radium@0.7.0 radix_trie@0.3.0 rand@0.10.2 rand@0.8.8 rand@0.9.5 rand_chacha@0.3.1 rand_chacha@0.9.0 rand_core@0.10.1 rand_core@0.6.4 rand_core@0.9.5 rand_distr@0.5.1 rand_pcg@0.10.2 rangemap@1.8.0 raw-cpuid@11.6.0 rayon-cond@0.4.0 rayon-core@1.13.0 rayon@1.12.0 rcgen@0.14.10 reborrow@0.5.5 redb@3.1.3 redox_syscall@0.5.18 redox_users@0.5.2 ref-cast-impl@1.0.27 ref-cast@1.0.27 referencing@0.52.1 regex-automata@0.4.18 regex-lite@0.1.9 regex-syntax@0.8.11 regex@1.13.1 reloadable-core@0.1.0 reloadable-state@0.1.0 reqwest-middleware@0.5.2 reqwest@0.12.28 reqwest@0.13.4 resb@0.1.2 resolv-conf@0.7.6 rfc6979@0.4.0 rgb@0.8.53 ring@0.17.14 rmcp-macros@1.8.0 rmcp-macros@3.2.0 rmcp@1.8.0 rmcp@3.2.0 roff@1.1.1 rsa@0.9.10 rubato@5.0.0 rustc-demangle@0.1.28 rustc-hash@1.1.0 rustc-hash@2.1.3 rustc_version@0.4.1 rusticata-macros@4.1.0 rustix@0.38.44 rustix@1.1.4 rustls-cert-file-reader@0.4.2 rustls-cert-read@0.3.0 rustls-cert-reloadable-resolver@0.7.1 rustls-native-certs@0.8.4 rustls-pki-types@1.15.1 rustls-platform-verifier-android@0.1.1 rustls-platform-verifier@0.7.0 rustls-webpki@0.103.15 rustls@0.23.43 rustversion@1.0.23 rustyline@18.0.1 ryu-js@1.0.3 ryu@1.0.23 safe-transmute@0.11.3 safemlx-internal-macros@0.1.1 safemlx-lm-utils@0.1.4 safemlx-lm@0.4.1 safemlx-macros@0.1.1 safemlx-sys@0.1.3 safemlx@0.1.3 safetensors@0.4.5 safetensors@0.8.0 same-file@1.0.6 schannel@0.1.29 schemars@0.8.22 schemars@0.9.0 schemars@1.2.2 schemars_derive@0.8.22 schemars_derive@1.2.2 scoped-tls@1.0.1 scopeguard@1.2.0 scroll@0.12.0 scroll_derive@0.12.1 sec1@0.7.3 sec1@0.8.1 secp256k1-sys@0.10.1 secp256k1@0.30.0 security-framework-sys@2.17.0 security-framework@2.11.1 security-framework@3.7.0 seize@0.5.1 semver@1.0.28 send_wrapper@0.6.0 seq-macro@0.3.6 serde@1.0.229 serde_bytes@0.11.19 serde_core@1.0.229 serde_derive@1.0.229 serde_derive_internals@0.29.1 serde_derive_internals@0.30.0 serde_json@1.0.151 serde_json_canonicalizer@0.3.2 serde_path_to_error@0.1.20 serde_plain@1.0.2 serde_repr@0.1.21 serde_spanned@1.1.1 serde_urlencoded@0.7.1 serde_v8@0.290.0 serde_with@3.22.0 serde_with_macros@3.22.0 serde_yaml@0.9.34+deprecated serdect@0.4.3 serial_test@4.0.1 serial_test_derive@4.0.1 sha1@0.10.7 sha1@0.11.0 sha1_smol@1.0.1 sha2@0.10.9 sha2@0.11.0 sharded-slab@0.1.7 shell-words@1.1.1 shellexpand@3.1.2 shlex@1.3.0 shlex@2.0.1 signal-hook-registry@1.4.8 signature@2.2.0 signature@3.0.0 sigstore-bundle@0.11.0 sigstore-crypto@0.11.0 sigstore-merkle@0.11.0 sigstore-rekor@0.11.0 sigstore-trust-root@0.11.0 sigstore-tsa@0.11.0 sigstore-tuf@0.11.0 sigstore-types@0.11.0 sigstore-verify@0.11.0 simd-adler32@0.3.10 simd_cesu8@1.2.0 simdutf8@0.1.5 similar@2.7.0 simple-dns@0.12.0 simple_asn1@0.6.4 siphasher@0.3.11 siphasher@1.0.3 slab@0.4.12 smallvec@1.16.0 smartstring@1.0.1 smawk@0.3.3 smithy-transport-reqwest@0.1.0 snap@1.1.2 socket2@0.6.5 sorted-index-buffer@0.2.1 sourcemap@9.3.2 spez@0.1.2 spin@0.10.1 spin@0.9.9 spki@0.7.3 spki@0.8.0 spm_precompiled@0.1.4 sptr@0.3.2 sqlx-core@0.9.0 sqlx-macros-core@0.9.0 sqlx-macros@0.9.0 sqlx-mysql@0.9.0 sqlx-postgres@0.9.0 sqlx-sqlite@0.9.0 sqlx@0.9.0 sse-stream@0.2.6 stable_deref_trait@1.2.1 stacker@0.1.25 static_assertions@1.1.0 statrs@0.18.0 std_prelude@0.2.12 strck@1.0.0 streaming-iterator@0.1.9 string_enum@1.0.2 stringcase@0.4.0 stringprep@0.1.5 strsim@0.11.1 strum@0.27.2 strum@0.28.0 strum_macros@0.27.2 strum_macros@0.28.0 subtle@2.6.1 swc_allocator@4.0.1 swc_atoms@9.0.0 swc_common@17.0.1 swc_config@3.1.2 swc_config_macro@1.0.1 swc_ecma_ast@18.0.0 swc_ecma_codegen@20.0.2 swc_ecma_codegen_macros@2.0.2 swc_ecma_lexer@26.0.0 swc_ecma_loader@17.0.0 swc_ecma_parser@27.0.7 swc_ecma_transforms_base@30.0.1 swc_ecma_transforms_classes@30.0.0 swc_ecma_transforms_macros@1.0.1 swc_ecma_transforms_proposal@30.0.0 swc_ecma_transforms_react@33.0.0 swc_ecma_transforms_typescript@33.0.0 swc_ecma_utils@24.0.0 swc_ecma_visit@18.0.1 swc_eq_ignore_macros@1.0.1 swc_macros_common@1.0.1 swc_sourcemap@9.3.4 swc_visit@2.0.1 symlink@0.1.0 symphonia-bundle-mp3@0.6.1 symphonia-codec-aac@0.6.1 symphonia-codec-adpcm@0.6.1 symphonia-codec-alac@0.6.1 symphonia-codec-pcm@0.6.1 symphonia-codec-vorbis@0.6.1 symphonia-common@0.6.1 symphonia-core@0.6.1 symphonia-format-isomp4@0.6.1 symphonia-format-mkv@0.6.1 symphonia-format-riff@0.6.1 symphonia-metadata@0.6.1 symphonia@0.6.1 syn-match@0.3.1 syn@1.0.109 syn@2.0.119 syn@3.0.4 sync_wrapper@1.0.2 synstructure@0.13.2 syntect@5.3.0 sys-info@0.9.1 sys_traits@0.1.17 sys_traits_macros@0.1.0 sysctl@0.6.0 sysinfo@0.38.4 system-configuration-sys@0.6.0 system-configuration@0.7.0 tagptr@0.2.0 tap@1.0.1 tar@0.4.46 tempfile@3.27.0 temporal_capi@0.1.2 temporal_rs@0.1.2 termcolor@1.4.1 terminal-colorsaurus@1.0.3 terminal-trx@0.2.6 termtree@0.5.1 test-case-core@3.3.1 test-case-macros@3.3.1 test-case@3.3.1 text_lines@0.6.0 textwrap@0.16.2 thiserror-impl@1.0.69 thiserror-impl@2.0.20 thiserror@1.0.69 thiserror@2.0.20 thousands@0.2.0 thread_local@1.1.10 tiff@0.11.3 tiff@0.9.1 tiktoken-rs@0.12.0 time-core@0.1.9 time-macros@0.2.32 time@0.3.55 timezone_provider@0.1.2 tinystr@0.8.4 tinyvec@1.12.0 tinyvec_macros@0.1.1 tls_codec@0.4.2 tls_codec_derive@0.4.2 tokenizers@0.22.2 tokenizers@0.23.2 tokio-cron-scheduler@0.15.1 tokio-happy-eyeballs@0.1.0 tokio-macros@2.7.2 tokio-native-tls@0.3.1 tokio-openssl@0.6.5 tokio-retry@0.3.2 tokio-rustls-acme@0.9.1 tokio-rustls@0.26.4 tokio-socks@0.5.3 tokio-stream@0.1.19 tokio-tungstenite@0.28.0 tokio-tungstenite@0.29.0 tokio-util@0.7.19 tokio-websockets@0.13.3 tokio@1.53.1 tokio_with_wasm@0.8.8 tokio_with_wasm_proc@0.8.8 toml@0.9.12+spec-1.1.0 toml@1.1.5+spec-1.1.0 toml_datetime@0.7.5+spec-1.1.0 toml_datetime@1.1.1+spec-1.1.0 toml_edit@0.25.13+spec-1.1.0 toml_parser@1.1.3+spec-1.1.0 toml_writer@1.1.2+spec-1.1.0 tonic-prost@0.14.6 tonic@0.14.6 tower-http@0.6.11 tower-http@0.7.1 tower-layer@0.3.3 tower-service@0.3.3 tower@0.5.3 tracing-appender@0.2.5 tracing-attributes@0.1.31 tracing-core@0.1.36 tracing-futures@0.2.5 tracing-log@0.2.0 tracing-opentelemetry@0.33.0 tracing-serde@0.2.0 tracing-subscriber@0.3.23 tracing@0.1.44 tree-sitter-go@0.25.0 tree-sitter-java@0.23.5 tree-sitter-javascript@0.25.0 tree-sitter-kotlin-ng@1.1.0 tree-sitter-language@0.1.8 tree-sitter-python@0.25.0 tree-sitter-ruby@0.23.1 tree-sitter-rust@0.24.2 tree-sitter-swift@0.7.3 tree-sitter-typescript@0.23.2 tree-sitter@0.26.13 triomphe@0.1.16 try-lock@0.2.5 tungstenite@0.28.0 tungstenite@0.29.0 twox-hash@2.1.0 typed-path@0.12.3 typenum@1.20.1 typewit@1.15.2 ucd-trie@0.1.7 ug-cuda@0.5.0 ug-metal@0.5.0 ug@0.5.0 umya-spreadsheet@3.1.0 unicase@2.9.0 unicode-bidi@0.3.18 unicode-bom@2.0.3 unicode-general-category@1.1.0 unicode-id-start@1.4.0 unicode-ident@1.0.24 unicode-linebreak@0.1.5 unicode-normalization-alignments@0.1.12 unicode-normalization@0.1.25 unicode-properties@0.1.4 unicode-segmentation@1.13.3 unicode-width@0.1.14 unicode-width@0.2.2 unicode-xid@0.2.6 unicode_categories@0.1.1 uniffi@0.32.0 uniffi_bindgen@0.32.0 uniffi_core@0.32.0 uniffi_internal_macros@0.32.0 uniffi_macros@0.32.0 uniffi_meta@0.32.0 uniffi_pipeline@0.32.0 uniffi_udl@0.32.0 unit-prefix@0.5.2 universal-hash@0.5.1 universal-time@0.3.1 unsafe-libyaml@0.2.11 untrusted@0.7.1 untrusted@0.9.0 url@2.5.8 urlencoding@2.1.3 utf-8@0.7.6 utf8_iter@1.0.4 utf8parse@0.2.2 utoipa-gen@5.5.0 utoipa@5.5.0 uuid-simd@0.8.0 uuid@1.26.0 v8-goose@145.0.2 v_escape-base@0.1.0 v_htmlescape@0.17.0 valuable@0.1.1 vcpkg@0.2.15 version_check@0.9.5 visibility@0.1.1 vsimd@0.8.0 walkdir@2.5.0 want@0.3.1 wasi@0.11.1+wasi-snapshot-preview1 wasi@0.14.7+wasi-0.2.4 wasip2@1.0.4+wasi-0.2.12 wasite@1.0.2 wasm-bindgen-futures@0.4.77 wasm-bindgen-macro-support@0.2.127 wasm-bindgen-macro@0.2.127 wasm-bindgen-shared@0.2.127 wasm-bindgen@0.2.127 wasm-streams@0.5.0 wasm_dep_analyzer@0.4.0 web-sys@0.3.104 web-time@1.1.0 webbrowser@1.2.4 webpki-root-certs@1.0.9 webpki-roots@0.26.11 webpki-roots@1.0.9 weedle2@5.0.0 weezl@0.1.12 weezl@0.2.1 which@6.0.3 which@7.0.3 which@8.0.6 whoami@2.1.3 widestring@1.2.1 winapi-i686-pc-windows-gnu@0.4.0 winapi-util@0.1.11 winapi-x86_64-pc-windows-gnu@0.4.0 winapi@0.3.9 windowfunctions@0.1.1 windows-collections@0.3.2 windows-core@0.56.0 windows-core@0.62.2 windows-future@0.3.2 windows-implement@0.56.0 windows-implement@0.60.2 windows-interface@0.56.0 windows-interface@0.59.3 windows-link@0.2.1 windows-numerics@0.3.1 windows-registry@0.6.1 windows-result@0.1.2 windows-result@0.4.1 windows-strings@0.5.1 windows-sys@0.45.0 windows-sys@0.52.0 windows-sys@0.59.0 windows-sys@0.60.2 windows-sys@0.61.2 windows-targets@0.42.2 windows-targets@0.52.6 windows-targets@0.53.5 windows-threading@0.2.1 windows@0.56.0 windows@0.62.2 windows_aarch64_gnullvm@0.42.2 windows_aarch64_gnullvm@0.52.6 windows_aarch64_gnullvm@0.53.1 windows_aarch64_msvc@0.42.2 windows_aarch64_msvc@0.52.6 windows_aarch64_msvc@0.53.1 windows_i686_gnu@0.42.2 windows_i686_gnu@0.52.6 windows_i686_gnu@0.53.1 windows_i686_gnullvm@0.52.6 windows_i686_gnullvm@0.53.1 windows_i686_msvc@0.42.2 windows_i686_msvc@0.52.6 windows_i686_msvc@0.53.1 windows_x86_64_gnu@0.42.2 windows_x86_64_gnu@0.52.6 windows_x86_64_gnu@0.53.1 windows_x86_64_gnullvm@0.42.2 windows_x86_64_gnullvm@0.52.6 windows_x86_64_gnullvm@0.53.1 windows_x86_64_msvc@0.42.2 windows_x86_64_msvc@0.52.6 windows_x86_64_msvc@0.53.1 winnow@0.7.15 winnow@1.0.4 winsafe@0.0.19 wiremock@0.6.5 wit-bindgen@0.57.1 wmi@0.18.4 writeable@0.6.4 ws_stream_wasm@0.7.5 wyz@0.5.1 x11rb-protocol@0.13.2 x11rb@0.13.2 x509-cert@0.2.5 x509-parser@0.18.1 x509-tsp@0.1.0 xet-client@1.6.0 xet-core-structures@1.6.0 xet-data@1.6.0 xet-runtime@1.6.0 xmlparser@0.13.6 xterm-color@1.0.2 yansi@1.0.1 yasna@0.6.0 yoke-derive@0.7.5 yoke-derive@0.8.2 yoke@0.7.5 yoke@0.8.3 zerocopy-derive@0.8.56 zerocopy@0.8.56 zerofrom-derive@0.1.7 zerofrom@0.1.8 zeroize@1.9.0 zeroize_derive@1.5.0 zerotrie@0.2.5 zerovec-derive@0.11.6 zerovec@0.11.8 zip@8.6.0 zlib-rs@0.6.7 zmij@1.0.23 zoneinfo64@0.2.1 zopfli@0.8.3 zstd-safe@7.2.4 zstd-sys@2.0.16+zstd.1.5.7 zstd@0.13.3 zune-core@0.5.3 zune-inflate@0.2.54 zune-jpeg@0.5.15 " declare -A GIT_CRATES=( [agent-client-protocol-derive]='https://github.com/agentclientprotocol/rust-sdk;c97a5203d3392f7f231514d84eea014f9f43e6fb;rust-sdk-%commit%/src/agent-client-protocol-derive' [agent-client-protocol-http]='https://github.com/agentclientprotocol/rust-sdk;c97a5203d3392f7f231514d84eea014f9f43e6fb;rust-sdk-%commit%/src/agent-client-protocol-http' [agent-client-protocol]='https://github.com/agentclientprotocol/rust-sdk;c97a5203d3392f7f231514d84eea014f9f43e6fb;rust-sdk-%commit%/src/agent-client-protocol' [cudaforge]='https://github.com/jbg/cudaforge;e7c1967340e40673db98dc9e17da0f04834a456f;cudaforge-%commit%' ) ACP_COMMIT="c97a5203d3392f7f231514d84eea014f9f43e6fb" CUDAFORGE_COMMIT="e7c1967340e40673db98dc9e17da0f04834a456f" inherit cargo DESCRIPTION="Local, extensible AI agent that executes, edits and tests code, with MCP support" HOMEPAGE="https://goose-docs.ai/ https://github.com/aaif-goose/goose" # Upstream moved from block/goose to aaif-goose/goose; the old path resolves # only through a GitHub 301 that can be withdrawn at any time. SRC_URI=" https://github.com/aaif-goose/goose/releases/download/v${PV}/goose-source-v${PV}.tar.gz -> ${P}.tar.gz " # cargo.eclass computes CARGO_CRATE_URIS from CRATES but does NOT touch # SRC_URI, so the crates have to be appended by hand. Appending after the # assignment above matters: a plain SRC_URI="..." here would drop all of them. SRC_URI+=" ${CARGO_CRATE_URIS}" S="${WORKDIR}/goose-v${PV}" LICENSE="Apache-2.0" # Dependent crate licenses LICENSE+=" Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD Boost-1.0 CC0-1.0 CDLA-Permissive-2.0 ISC LGPL-3+ MIT MIT-0 MPL-2.0 MPL-2.0 Unicode-3.0 Unlicense ZLIB BZIP2 " SLOT="0" KEYWORDS="~amd64 ~arm64" # Upstream's default feature set is not reproduced verbatim, and each # difference is deliberate: # # local-inference off by default. It pulls candle plus llama-cpp-sys-2, # which builds a full llama.cpp through cmake -- a large # build most users of an agent CLI do not want, and one # that only pays off once models are downloaded at runtime. # telemetry off by default. Reporting usage is the user's call to # make, not the packager's. # update NEVER enabled. It is a self-updater that would overwrite # a Portage-managed binary behind Portage's back. # # cuda and vulkan are accelerator backends for local inference and stay # optional, so nobody has to pull CUDA in to run this on a CPU. IUSE="aws cuda +keyring local-inference telemetry vulkan" DEPEND=" keyring? ( sys-apps/dbus ) " RDEPEND="${DEPEND}" BDEPEND=" local-inference? ( dev-build/cmake ) " QA_FLAGS_IGNORED="usr/bin/goose" src_prepare() { default # Upstream's own [patch.crates-io] redirects these crates at GIT URLs. # cargo.eclass writes its own [patch] into the cargo config pointing at # the tarballs it already unpacked, but the two patch tables ADD UP # instead of overriding, so cargo still tries to reach github and dies # on --offline with "can't checkout ... you are in the offline mode". # Rewriting upstream's entries to local paths is what actually removes # the network access. local acp="${WORKDIR}/rust-sdk-${ACP_COMMIT}/src" local forge="${WORKDIR}/cudaforge-${CUDAFORGE_COMMIT}" # sed exits 0 when it matches nothing, so every substitution is asserted # below -- otherwise an upstream reshuffle would silently restore the # network fetch and only fail much later. sed -i -E \ -e "s|^(agent-client-protocol) = \{ git = .*\}$|\1 = { path = \"${acp}/agent-client-protocol\" }|" \ -e "s|^(agent-client-protocol-http) = \{ git = .*\}$|\1 = { path = \"${acp}/agent-client-protocol-http\" }|" \ -e "s|^(cudaforge) = \{ git = .*\}$|\1 = { path = \"${forge}\" }|" \ Cargo.toml || die "failed to rewrite upstream [patch.crates-io]" local crate for crate in agent-client-protocol agent-client-protocol-http cudaforge; do grep -qF "${crate} = { path = " Cargo.toml || die "[patch.crates-io] entry for ${crate} was not rewritten" done ! grep -qE '^[a-z-]+ = \{ git = ' Cargo.toml || die "a git dependency survived in Cargo.toml [patch.crates-io]" } src_configure() { local myfeatures=( code-mode rustls-tls $(usev aws aws-providers) $(usev keyring system-keyring) $(usev telemetry) ) # cuda and vulkan accelerate LOCAL inference and mean nothing without it, # so they are folded in here rather than gated by REQUIRED_USE. That is # deliberate: both are global USE flags that the stock desktop profiles # enable by default, so "vulkan? ( local-inference )" failed REQUIRED_USE # on 36 profiles -- turning a common desktop USE setting into a refusal to # emerge. Silently ignoring them when local-inference is off is the lesser # evil, and metadata.xml says so. if use local-inference; then myfeatures+=( local-inference $(usev cuda) $(usev vulkan) ) fi # --no-default-features is what keeps "update" out: it is in upstream's # default list, and there is no feature that switches it back off. cargo_src_configure --no-default-features } src_compile() { # The workspace also builds generate_manpages and mcp_conformance_driver, # which are development helpers and are not installed. cargo_src_compile -p goose-cli --bin goose } src_install() { # cargo_src_install runs "cargo install", which takes --path and not the # -p of "cargo build" -- passing -p here dies with "unexpected argument". # The feature list from src_configure still applies: the eclass threads # ECARGO_ARGS through both phases. cargo_src_install --path crates/goose-cli --bin goose einstalldocs }