diff --git a/src/loaders/packages.rs b/src/loaders/packages.rs index 02f58bc..abb72d5 100644 --- a/src/loaders/packages.rs +++ b/src/loaders/packages.rs @@ -2,7 +2,7 @@ use std::fs; use crate::structs::Package; use std::error::Error; use serde::Serialize; -use std::collections::HashMap; +use std::collections::BTreeMap; use std::process::Command; fn parse_dpkg_output(output: &str) -> Vec { @@ -17,14 +17,14 @@ fn parse_dpkg_output(output: &str) -> Vec { .collect() } -fn packages_to_hashmap(packages: &[Package]) -> HashMap { +fn packages_to_hashmap(packages: &[Package]) -> BTreeMap { packages.iter().map(|p| (p.name.clone(), p.version.clone())).collect() } pub fn save_packages_to_toml(packages: &[Package], path: &str) -> Result<(), Box> { #[derive(Serialize)] struct PackagesWrapper<'a> { - packages: &'a HashMap, + packages: &'a BTreeMap, } let pkg_map = packages_to_hashmap(packages);