feat: add rpm-read-rs
This commit is contained in:
1639
rpm-read-rs/Cargo.lock
generated
Normal file
1639
rpm-read-rs/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
10
rpm-read-rs/Cargo.toml
Normal file
10
rpm-read-rs/Cargo.toml
Normal file
@@ -0,0 +1,10 @@
|
||||
[package]
|
||||
name = "rpm-read-rs"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
rpm-rs = "0.8.1"
|
||||
rust_util = "0.6.41"
|
||||
17
rpm-read-rs/src/main.rs
Normal file
17
rpm-read-rs/src/main.rs
Normal file
@@ -0,0 +1,17 @@
|
||||
use std::fs::File;
|
||||
use std::io::BufReader;
|
||||
use rpm::RPMPackage;
|
||||
use rust_util::{failure_and_exit, information, opt_result};
|
||||
|
||||
fn main() {
|
||||
let args = std::env::args().skip(1).collect::<Vec<_>>();
|
||||
if args.is_empty() {
|
||||
failure_and_exit!("Args is empty");
|
||||
}
|
||||
let file = &args[0];
|
||||
let rpm_file = opt_result!(File::open(file), "Open file: {} failed: {}", file);
|
||||
let mut buf_reader = BufReader::new(rpm_file);
|
||||
let pkg = opt_result!(RPMPackage::parse(&mut buf_reader), "Read rpm: {} failed: {}", file);
|
||||
information!("Lead: {:?}", pkg.metadata.lead);
|
||||
information!("Header: {:?}", pkg.metadata.header);
|
||||
}
|
||||
Reference in New Issue
Block a user