forked from jtroo/kanata
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
80 lines (70 loc) · 2.25 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
[workspace]
members = [
"./",
"parser",
"keyberon",
]
[package]
name = "kanata"
version = "1.5.0"
authors = ["jtroo <[email protected]>"]
description = "Multi-layer keyboard customization"
keywords = ["cli", "linux", "windows", "keyboard", "layout"]
categories = ["command-line-utilities"]
homepage = "https://github.com/jtroo/kanata"
repository = "https://github.com/jtroo/kanata"
readme = "README.md"
license = "LGPL-3.0"
edition = "2021"
[dependencies]
clap = { version = "4.1.6", features = [ "std", "derive", "help", "suggestions" ], default_features = false }
log = { version = "0.4.8", default_features = false }
simplelog = "0.12.0"
anyhow = "1"
parking_lot = "0.12"
once_cell = "1"
serde = { version = "1", features = ["alloc", "derive"], default_features = false }
serde_json = { version = "1", features = ["alloc"], default_features = false }
serde_derive = "1.0"
radix_trie = "0.2"
rustc-hash = "1.1.0"
miette = { version = "5.7.0", features = ["fancy"] }
dirs = "5.0.1"
# Pinned to avoid including multiple versions of a dependency
is-terminal = "=0.4.7"
# kanata-keyberon = "0.150.4"
# kanata-parser = "0.150.4"
# Uncomment below and comment out above for testing local changes.
# Otherwise any changes to the local files will not reflect in the compiled
# binary.
kanata-keyberon = { path = "keyberon" }
kanata-parser = { path = "parser" }
[target.'cfg(target_os = "macos")'.dependencies]
karabiner-driverkit = "0.1.2"
[target.'cfg(target_os = "linux")'.dependencies]
evdev = "=0.12.0"
signal-hook = "0.3.14"
inotify = { version = "0.10.0", default_features = false }
mio = { version = "0.8.4", features = ["os-poll", "os-ext"] }
nix = { version = "0.26.1", features = ["ioctl"] }
sd-notify = "0.4.1"
[target.'cfg(target_os = "windows")'.dependencies]
encode_unicode = "0.3.6"
winapi = { version = "0.3.9", features = [
"wincon",
"timeapi",
"mmsystem",
] }
native-windows-gui = { version = "1.0.12", default_features = false }
kanata-interception = { version = "0.2.0", optional = true }
[features]
default = ["tcp_server"]
perf_logging = []
tcp_server = []
cmd = ["kanata-parser/cmd"]
interception_driver = ["kanata-interception", "kanata-parser/interception_driver"]
[profile.release]
opt-level = "z"
lto = "fat"
panic = "abort"
codegen-units = 1