[package] name = "muscl" version = "0.1.0" edition = "2024" license = "BSD-3-Clause" authors = [ "oysteikt@pvv.ntnu.no", "felixalb@pvv.ntnu.no", ] repository = "https://git.pvv.ntnu.no/Projects/muscl" documentation = "https://pages.pvv.ntnu.no/Projects/muscl/main/docs/muscl/" description = "A command-line utility for MySQL administration for non-admin users" categories = ["command-line-interface", "command-line-utilities"] keywords = ["mysql", "cli", "administration"] readme = "README.md" autobins = false autolib = false [dependencies] anyhow = "1.0.100" async-bincode = "0.8.0" bincode = "2.0.1" clap = { version = "4.5.53", features = ["cargo", "derive"] } clap-verbosity-flag = { version = "3.0.4", features = [ "tracing" ] } clap_complete = { version = "4.5.61", features = ["unstable-dynamic"] } const_format = "0.2.35" derive_more = { version = "2.0.1", features = ["display", "error"] } dialoguer = "0.12.0" futures-util = "0.3.31" indoc = "2.0.7" itertools = "0.14.0" nix = { version = "0.30.1", features = ["fs", "process", "socket", "user"] } num_cpus = "1.17.0" prettytable = "0.10.0" rand = "0.9.2" sd-notify = "0.4.5" serde = "1.0.228" serde_json = { version = "1.0.145", features = ["preserve_order"] } sqlx = { version = "0.8.6", features = ["runtime-tokio", "mysql", "tls-rustls"] } tokio = { version = "1.48.0", features = ["rt-multi-thread", "macros", "signal"] } tokio-serde = { version = "0.9.0", features = ["bincode"] } tokio-stream = "0.1.17" tokio-util = { version = "0.7.17", features = ["codec", "rt"] } toml = "0.9.8" tracing = { version = "0.1.43", features = ["log"] } tracing-journald = "0.3.2" tracing-subscriber = "0.3.22" uuid = { version = "1.18.1", features = ["v4"] } [target.'cfg(target_os = "linux")'.dependencies] landlock = "0.4.4" [features] default = ["mysql-admutils-compatibility"] mysql-admutils-compatibility = [] suid-sgid-mode = [] [[bin]] name = "muscl" bench = false path = "src/main.rs" [profile.release] strip = true lto = true codegen-units = 1 [build-dependencies] anyhow = "1.0.100" git2 = { version = "0.20.2", default-features = false } [dev-dependencies] regex = "1.12.2" [package.metadata.deb] name = "muscl" priority = "optional" section = "databases" depends = "$auto" license-file = ["LICENSE", "0"] maintainer = "Programvareverkstedet " copyright = "Copyright (c) 2025, Programvareverkstedet" assets = [ [ "target/release/muscl", "usr/bin/", "755", ], [ "assets/debian/config.toml", "etc/muscl/config.toml", "644", ], [ "assets/completions/_*", "usr/share/zsh/site-functions/completions/", "644", ], [ "assets/completions/*.bash", "usr/share/bash-completion/completions/", "644", ], [ "assets/completions/*.fish", "usr/share/fish/vendor_completions.d/", "644", ], [ "assets/systemd/*", "etc/systemd/system/", "644", ], ] systemd-units = [ { unit-name = "muscl", unit-scripts = "assets/systemd", enable = true }, ]