rpm-ostree/rust/Cargo.toml
Colin Walters cdf2c47b46 Use ostree-rs, and oxidize more treefile checksumming
The main goal here is simply to start the ball rolling
in having rpm-ostree use the ostree-rs crate, so we can
use it for other code in the future.  We also bump the
glib crate to a new major, but no code changes were
required for that.

I spent a bit of time looking through our C code for
an example to oxidize, but almost all of our C code using
libostree also has calls back into other nontrivial rpm-ostree
C code.  To make a lot more oxidation progress I think we need
to invent an internal `librpmostree-sys` crate so we can have
Rust -> C calls.

I found this bit of treefile code computing the checksum that
we can oxidize - and as soon as we have more libdnf bindings
we can move all of the checksumming into Rust too.
2020-09-09 21:26:53 -04:00

53 lines
1.3 KiB
TOML

[package]
name = "rpmostree-rust"
version = "0.1.0"
authors = ["Colin Walters <walters@verbum.org>", "Jonathan Lebon <jonathan@jlebon.com>"]
edition = "2018"
[dependencies]
anyhow = "1.0"
serde = "1.0.115"
serde_derive = "1.0.115"
serde_json = "1.0"
serde_yaml = "0.8"
libc = "0.2"
nix = "0.18.0"
glib-sys = "0.10.0"
glib = "0.10"
gio-sys = "0.10.0"
gio = "0.9"
ostree = { version = "0.9.0", features = ["v2020_4"] }
ostree-sys = "0.7.0"
tempfile = "3.0.3"
clap = "~2.33"
structopt = "0.3"
openat = "0.1.19"
openat-ext = "0.1.4"
curl = "0.4.33"
rayon = "1.4"
c_utf8 = "0.1.0"
rand = "0.7.3"
systemd = "0.5.0"
indicatif = "0.15.0"
lazy_static = "1.1.0"
envsubst = "0.2.0"
chrono = { version = "0.4.15", features = ["serde"] }
libdnf-sys = { path = "libdnf-sys", version = "0.1.0" }
[lib]
name = "rpmostree_rust"
path = "src/lib.rs"
crate-type = ["staticlib"]
[profile.release]
# Unwinding across FFI boundaries is undefined behavior, and anyways, we're
# [crash-only](https://en.wikipedia.org/wiki/Crash-only_software)
panic = "abort"
# We assume we're being delivered via e.g. RPM which supports split debuginfo
debug = true
# For true release builds, we do suggest you enable LTO via e.g.
# env RUSTFLAGS='-C lto=true' as part of the outer build. It's just
# off by default because it's quite slow and the default is more oriented
# towards local development.