Make package::User and package::Group public

This commit is contained in:
Nathan Fisher 2023-04-07 19:08:23 -04:00
parent 723d697e90
commit 0ab84def2e
3 changed files with 30 additions and 24 deletions

View File

@ -1,13 +1,12 @@
pub mod tar;
mod package;
mod plist;
pub mod tar;
mod version;
pub use {
deku,
package::{Arch, Dependency, Package, Specs},
package::{Arch, Dependency, Package, Specs, User, Group},
plist::*,
ron,
sha2,
ron, sha2,
version::*,
};

View File

@ -1,5 +1,5 @@
use serde::{Deserialize, Serialize};
use std::{fmt, str::FromStr, error::Error};
use std::{error::Error, fmt, str::FromStr};
#[cfg(target_arch = "arm")]
pub const HOST_ARCH: Arch = Arch::armv7l;
@ -33,7 +33,10 @@ impl Default for Arch {
impl fmt::Display for Arch {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "{}", match self {
write!(
f,
"{}",
match self {
Self::armv7l => "armv7l",
Self::aarch64 => "aarch64",
Self::i486 => "i486",
@ -42,7 +45,8 @@ impl fmt::Display for Arch {
Self::riscv64 => "riscv64",
Self::x86_64 => "x86_64",
Self::any => "any",
})
}
)
}
}
@ -69,7 +73,7 @@ impl FromStr for Arch {
"arm64" | "aarch64" | "armv8" => Ok(Self::aarch64),
"riscv" | "riscv64" => Ok(Self::riscv64),
"any" => Ok(Self::any),
_ => Err(ParseArchError)
_ => Err(ParseArchError),
}
}
}

View File

@ -3,6 +3,7 @@ mod dependency;
mod specs;
use {
crate::tar::{Node, Owner},
crate::{Plist, Version},
ron::ser::{to_string_pretty, PrettyConfig},
serde::{Deserialize, Serialize},
@ -13,7 +14,6 @@ use {
io::{BufWriter, Write},
path::Path,
},
crate::tar::{Node, Owner},
};
pub use {arch::Arch, dependency::Dependency, specs::Specs};
@ -88,10 +88,7 @@ impl Package {
to_string_pretty(self, cfg)
}
pub fn save_ron_and_create_tar_node(
&self,
outdir: &Path,
) -> Result<Node, Box<dyn Error>> {
pub fn save_ron_and_create_tar_node(&self, outdir: &Path) -> Result<Node, Box<dyn Error>> {
if !outdir.exists() {
fs::create_dir_all(outdir)?;
}
@ -113,12 +110,18 @@ impl Package {
/// Returns the formatted full package name including version and release strings
pub fn fullname(&self) -> String {
format!("{}-{}_{}_{}", self.name, self.version, self.release, self.arch)
format!(
"{}-{}_{}_{}",
self.name, self.version, self.release, self.arch
)
}
/// Returns the name of the package archive
pub fn archive_name(&self) -> String {
format!("{}-{}_{}_{}.tar.zstd", self.name, self.version, self.release, self.arch)
format!(
"{}-{}_{}_{}.tar.zstd",
self.name, self.version, self.release, self.arch
)
}
/// Tests whether this package is an update for another