11
This commit is contained in:
parent
280cc73921
commit
1e6a8da283
@ -10,7 +10,7 @@ fn parse_dpkg_output(output: &str) -> Vec<Package> {
|
|||||||
.lines()
|
.lines()
|
||||||
.filter_map(|line| {
|
.filter_map(|line| {
|
||||||
let mut parts = line.split('\t');
|
let mut parts = line.split('\t');
|
||||||
let name = parts.next()?.trim().trim_matches('\"').trim().to_string();
|
let name = parts.next()?.to_string();
|
||||||
let version = parts.next()?.to_string();
|
let version = parts.next()?.to_string();
|
||||||
Some(Package { name, version })
|
Some(Package { name, version })
|
||||||
})
|
})
|
||||||
@ -38,7 +38,7 @@ pub fn save_packages_to_toml(packages: &[Package], path: &str) -> Result<(), Box
|
|||||||
|
|
||||||
pub fn get_installed_packages() -> Result<Vec<Package>, Box<dyn std::error::Error>> {
|
pub fn get_installed_packages() -> Result<Vec<Package>, Box<dyn std::error::Error>> {
|
||||||
let output = Command::new("dpkg-query")
|
let output = Command::new("dpkg-query")
|
||||||
.args(&["-W"])
|
.args(&["-W", "-f='${Package}\t${Version}\n'"])
|
||||||
.output()?;
|
.output()?;
|
||||||
let stdout = String::from_utf8(output.stdout)?;
|
let stdout = String::from_utf8(output.stdout)?;
|
||||||
Ok(parse_dpkg_output(&stdout))
|
Ok(parse_dpkg_output(&stdout))
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user