[package]
edition = "2021"
rust-version = "1.82"
name = "wdotool"
version = "0.5.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "xdotool-compatible automation for Wayland"
homepage = "https://github.com/cushycush/wdotool"
readme = "README.md"
keywords = [
"wayland",
"xdotool",
"automation",
"input",
"libei",
]
categories = [
"command-line-utilities",
"os::linux-apis",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/cushycush/wdotool"
[package.metadata.deb]
maintainer = "Matthew Cushing <hgxtymphwn@privaterelay.appleid.com>"
section = "x11"
priority = "optional"
depends = "libxkbcommon0, libwayland-client0"
extended-description = """
xdotool-compatible CLI for input automation on Wayland.
Uses the protocols Wayland provides for this (libei via the XDG RemoteDesktop portal, the wlr-* virtual-keyboard / virtual-pointer protocols, KWin scripting on KDE, a companion Shell extension on GNOME). Falls back to /dev/uinput only when nothing better is available."""
license-file = [
"../LICENSE-MIT",
"0",
]
assets = [
[
"target/release/wdotool",
"usr/bin/",
"755",
],
[
"../README.md",
"usr/share/doc/wdotool/README.md",
"644",
],
[
"../CHANGELOG.md",
"usr/share/doc/wdotool/CHANGELOG.md",
"644",
],
[
"../LICENSE-MIT",
"usr/share/doc/wdotool/LICENSE-MIT",
"644",
],
[
"../LICENSE-APACHE",
"usr/share/doc/wdotool/LICENSE-APACHE",
"644",
],
]
[package.metadata.generate-rpm]
summary = "xdotool-compatible automation CLI for Wayland"
[[package.metadata.generate-rpm.assets]]
source = "target/release/wdotool"
dest = "/usr/bin/wdotool"
mode = "755"
[[package.metadata.generate-rpm.assets]]
source = "../README.md"
dest = "/usr/share/doc/wdotool/README.md"
mode = "644"
doc = true
[[package.metadata.generate-rpm.assets]]
source = "../CHANGELOG.md"
dest = "/usr/share/doc/wdotool/CHANGELOG.md"
mode = "644"
doc = true
[[package.metadata.generate-rpm.assets]]
source = "../LICENSE-MIT"
dest = "/usr/share/licenses/wdotool/LICENSE-MIT"
mode = "644"
doc = true
[[package.metadata.generate-rpm.assets]]
source = "../LICENSE-APACHE"
dest = "/usr/share/licenses/wdotool/LICENSE-APACHE"
mode = "644"
doc = true
[package.metadata.generate-rpm.requires]
libxkbcommon = "*"
libwayland-client = "*"
[features]
default = ["recorder"]
recorder = ["wdotool-core/recorder"]
[lib]
name = "wdotool"
path = "src/lib.rs"
[[bin]]
name = "wdotool"
path = "src/main.rs"
[[test]]
name = "cli_introspection"
path = "tests/cli_introspection.rs"
[[test]]
name = "cli_keyboard"
path = "tests/cli_keyboard.rs"
[[test]]
name = "cli_pointer"
path = "tests/cli_pointer.rs"
[[test]]
name = "cli_replay"
path = "tests/cli_replay.rs"
[[test]]
name = "cli_roundtrip"
path = "tests/cli_roundtrip.rs"
[[test]]
name = "cli_smoke"
path = "tests/cli_smoke.rs"
[[test]]
name = "cli_window"
path = "tests/cli_window.rs"
[dependencies.anyhow]
version = "1"
[dependencies.clap]
version = "4"
features = ["derive"]
[dependencies.regex]
version = "1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.tokio]
version = "1"
features = [
"rt",
"rt-multi-thread",
"macros",
"signal",
"time",
]
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.wdotool-core]
version = "0.5.2"
[dev-dependencies.tempfile]
version = "3"
[target.'cfg(target_os = "linux")'.dev-dependencies]