Cargo Features

[dependencies]
voicsh = { version = "0.2.3", default-features = false, features = ["full", "whisper", "cpal-audio", "model-download", "cli", "portal", "symspell", "error-correction", "cuda", "vulkan", "hipblas", "openblas", "benchmark"] }
default = full

The full feature is set by default whenever voicsh is added without default-features = false somewhere in the dependency tree.

full default cuda? hipblas? openblas? vulkan? = benchmark, cli, cpal-audio, model-download, portal, symspell, whisper
whisper benchmark? full = whisper-rs

Affects stt::whisper, whisper::WhisperTranscriber

cpal-audio full

Enables cpal

Audio

Affects audio::capture, voicsh::daemon, voicsh::app

model-download benchmark? error-correction? full

Enables dirs, futures-util, and indicatif

dirs:

Paths

and reqwest, sha1 ^0.10, and sha2 ^0.10

reqwest:

HTTP client for model downloads

Affects voicsh::models, download::download_dictionary, download::format_remote_model, models::remote, voicsh::daemon, voicsh::app

cli benchmark? full

Enables humantime and owo-colors

humantime:

Human-friendly duration parsing (e.g., "30s", "5m", "1h30m")

and clap, clap_complete, and dirs

clap:

CLI

Affects inject::environment, voicsh::cli, voicsh::diagnostics, voicsh::gnome_extension, voicsh::systemd, voicsh::app

portal full

Enables ashpd ^0.12, dirs, and xkeysym

ashpd:

XDG Desktop Portal (RemoteDesktop for GNOME key injection)

Affects daemon::DaemonState.portal, inject::portal

symspell full

Enables symspell ^0.4

Error correction (SymSpell)

Affects hybrid::HybridCorrector, correction::symspell, hybrid::HybridCorrector, correction::hybrid

error-correction = model-download

Enables candle-core ^0.9, candle-nn ^0.9, candle-transformers ^0.9, hf-hub ^0.4, and tokenizers

candle-core:

Error correction (T5 via Candle)

Affects hybrid::HybridCorrector, correction::candle_t5, hybrid::HybridCorrector, correction::hybrid

cuda = full

Enables cuda of whisper-rs ^0.15

Speech-to-text (requires cmake to build)

vulkan = full

Enables vulkan of whisper-rs ^0.15

hipblas = full

Enables hipblas of whisper-rs ^0.15

openblas = full

Enables openblas of whisper-rs ^0.15

benchmark full = cli, model-download, whisper

Enables flate2 and sysinfo

Affects voicsh::benchmark, voicsh::init

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

whisper-rs cuda? hipblas? openblas? vulkan? whisper?

Enables whisper-rs ^0.15