[package]
name = "atuin"
edition = "2021"
description = "atuin - magical shell history"
readme = "./README.md"

rust-version = { workspace = true }
version = { workspace = true }
authors = { workspace = true }
license = { workspace = true }
homepage = { workspace = true }
repository = { workspace = true }

[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ target }.tar.gz"
bin-dir = "{ name }-{ target }/{ bin }{ binary-ext }"
pkg-fmt = "tgz"

[package.metadata.deb]
maintainer = "Ellie Huxtable <ellie@elliehuxtable.com>"
copyright = "2021, Ellie Huxtable <ellie@elliehuxtable.com>"
license-file = ["LICENSE"]
depends = "$auto"
section = "utility"

[package.metadata.rpm]
package = "atuin"

[package.metadata.rpm.cargo]
buildflags = ["--release"]

[package.metadata.rpm.targets]
atuin = { path = "/usr/bin/atuin" }

[features]
default = ["client", "sync", "server", "clipboard", "check-update", "daemon"]
client = ["atuin-client"]
sync = ["atuin-client/sync"]
daemon = ["atuin-client/daemon", "atuin-daemon"]
server = ["atuin-server", "atuin-server-postgres"]
clipboard = ["arboard"]
check-update = ["atuin-client/check-update"]

[dependencies]
atuin-server-postgres = { path = "../atuin-server-postgres", version = "18.4.0-beta.3", optional = true }
atuin-server = { path = "../atuin-server", version = "18.4.0-beta.3", optional = true }
atuin-client = { path = "../atuin-client", version = "18.4.0-beta.3", optional = true, default-features = false }
atuin-common = { path = "../atuin-common", version = "18.4.0-beta.3" }
atuin-dotfiles = { path = "../atuin-dotfiles", version = "18.4.0-beta.3" }
atuin-history = { path = "../atuin-history", version = "18.4.0-beta.3" }
atuin-daemon = { path = "../atuin-daemon", version = "18.4.0-beta.3", optional = true, default-features = false }

log = { workspace = true }
env_logger = "0.11.2"
time = { workspace = true }
eyre = { workspace = true }
directories = { workspace = true }
indicatif = "0.17.5"
serde = { workspace = true }
serde_json = { workspace = true }
crossterm = { version = "0.27", features = ["use-dev-tty"] }
unicode-width = "0.1"
itertools = { workspace = true }
tokio = { workspace = true }
async-trait = { workspace = true }
interim = { workspace = true }
base64 = { workspace = true }
clap = { workspace = true }
clap_complete = "4.5.8"
clap_complete_nushell = "4.5.2"
fs-err = { workspace = true }
whoami = { workspace = true }
rpassword = "7.0"
semver = { workspace = true }
rustix = { workspace = true }
runtime-format = "0.1.3"
tiny-bip39 = "1"
futures-util = "0.3"
fuzzy-matcher = "0.3.7"
colored = "2.0.4"
ratatui = "0.27"
tracing = "0.1"
tracing-subscriber = { workspace = true }
uuid = { workspace = true }
unicode-segmentation = "1.11.0"
sysinfo = "0.30.7"
regex="1.10.5"

[target.'cfg(any(target_os = "windows", target_os = "macos"))'.dependencies]
arboard = { version = "3.4", optional = true }

[target.'cfg(target_os = "linux")'.dependencies]
arboard = { version = "3.4", optional = true, features = ["wayland-data-control"] }

[dev-dependencies]
tracing-tree = "0.4"
