kanidm/tools/cli/Cargo.toml
Jinna Kiisuo 03645c8bf2
Improve deb packaging, add aarch64 (#3083)
* feat: Rebuild the deb packaging flow
fix: Add more sudo, GHA likes sudo
fix: Give build_debs.sh only the triplet argument
fix: Work around more GHA weirdness in apt sources
Drop crossbuild as it was only used by debian packaging
docs: Update book and other docs for packaging flow
feat: package kanidm_tools aka kanidm cli
docs: Update packaging docs for latest process and clarity
fix: use full triple in sdynlib variants
fix: Correct kanidm.pam asset placement
fix: Give pam & nss modules a description so the debs get it
fix: Work around wonky libssl3 naming in Ubuntu 24.04
fix: Place kanidm bin correctly :3
feat: Pin all blame on @yaleman :3
WIP: Swap out the submodule reference. Still not the final one though.
refactor: Switch kanidm-pam & kanidm-nss to mandatory deps
While in theory unixd will start and run without them, it also won't do
anything useful.
fix: explicit depends for nss & pam libs without versions
We build the debs on the ubuntu24.04 GHA runner so automatic pins
versions that are too new for 22.04. Ideally we'd run cargo-deb also on
the target images but that'll have to be a future improvement.
* refactor: Switch nss_kanidm & pam_kanidm package naming closer to debian guidance
* feat: Attempt enabling unixd by default with secure defaults
* fix: Relax config permissions so the kanidm user can read
Also, update postinst config instructions
2024-10-15 02:27:48 +00:00

95 lines
2.7 KiB
TOML

[package]
name = "kanidm_tools"
default-run = "kanidm"
description = "Kanidm Client Tools"
documentation = "https://kanidm.github.io/kanidm/stable/"
version = { workspace = true }
authors = { workspace = true }
rust-version = { workspace = true }
edition = { workspace = true }
license = { workspace = true }
homepage = { workspace = true }
repository = { workspace = true }
[features]
default = ["unix"]
unix = []
[lib]
name = "kanidm_cli"
path = "src/cli/lib.rs"
test = true
doctest = false
[[bin]]
name = "kanidm"
path = "src/cli/main.rs"
doc = false
test = true
doctest = false
[[bin]]
name = "kanidm_ssh_authorizedkeys_direct"
path = "src/ssh_authorizedkeys.rs"
test = true
doctest = false
[dependencies]
anyhow = { workspace = true }
clap = { workspace = true, features = ["derive", "env"] }
compact_jwt = { workspace = true, features = ["openssl"] }
dialoguer = { workspace = true }
futures-concurrency = { workspace = true }
libc = { workspace = true }
kanidm_client = { workspace = true }
kanidm_lib_file_permissions = { workspace = true }
kanidm_proto = { workspace = true }
qrcode = { workspace = true }
rpassword = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
shellexpand = { workspace = true }
time = { workspace = true, features = ["serde", "std"] }
tracing = { workspace = true }
tracing-subscriber = { workspace = true, features = ["env-filter", "fmt"] }
tokio = { workspace = true, features = ["rt", "macros", "fs", "signal"] }
url = { workspace = true, features = ["serde"] }
uuid = { workspace = true }
zxcvbn = { workspace = true }
lazy_static.workspace = true
regex = { workspace = true }
sketching = { workspace = true }
[build-dependencies]
kanidm_proto = { workspace = true }
clap = { workspace = true, features = ["derive"] }
clap_complete = { workspace = true }
kanidm_build_profiles = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
uuid = { workspace = true }
url = { workspace = true }
[target."cfg(target_os = \"windows\")".dependencies.webauthn-authenticator-rs]
workspace = true
features = ["win10"]
[target."cfg(not(any(target_os = \"windows\")))".dependencies.webauthn-authenticator-rs]
workspace = true
features = ["u2fhid"]
## Debian packaging
[package.metadata.deb]
name = "kanidm"
maintainer = "James Hodgkinson <james@terminaloutcomes.com>"
# Can't use $auto depends because the name of libssl3 varies by distro and version
depends = ["libc6", "libudev1", "libssl3 | libssl3t64"]
section = "admin"
priority = "optional"
changelog = "../../target/debian/changelog" # Generated by packaging scripts
assets = [
[ "target/release/kanidm", "usr/bin/", "755" ],
[ "../../examples/config", "usr/share/kanidm/", "444" ],
]
maintainer-scripts = "debian/"