Make package::User
and package::Group
public
This commit is contained in:
parent
723d697e90
commit
0ab84def2e
@ -1,13 +1,12 @@
|
|||||||
pub mod tar;
|
|
||||||
mod package;
|
mod package;
|
||||||
mod plist;
|
mod plist;
|
||||||
|
pub mod tar;
|
||||||
mod version;
|
mod version;
|
||||||
|
|
||||||
pub use {
|
pub use {
|
||||||
deku,
|
deku,
|
||||||
package::{Arch, Dependency, Package, Specs},
|
package::{Arch, Dependency, Package, Specs, User, Group},
|
||||||
plist::*,
|
plist::*,
|
||||||
ron,
|
ron, sha2,
|
||||||
sha2,
|
|
||||||
version::*,
|
version::*,
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use std::{fmt, str::FromStr, error::Error};
|
use std::{error::Error, fmt, str::FromStr};
|
||||||
|
|
||||||
#[cfg(target_arch = "arm")]
|
#[cfg(target_arch = "arm")]
|
||||||
pub const HOST_ARCH: Arch = Arch::armv7l;
|
pub const HOST_ARCH: Arch = Arch::armv7l;
|
||||||
@ -33,7 +33,10 @@ impl Default for Arch {
|
|||||||
|
|
||||||
impl fmt::Display for Arch {
|
impl fmt::Display for Arch {
|
||||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
write!(f, "{}", match self {
|
write!(
|
||||||
|
f,
|
||||||
|
"{}",
|
||||||
|
match self {
|
||||||
Self::armv7l => "armv7l",
|
Self::armv7l => "armv7l",
|
||||||
Self::aarch64 => "aarch64",
|
Self::aarch64 => "aarch64",
|
||||||
Self::i486 => "i486",
|
Self::i486 => "i486",
|
||||||
@ -42,7 +45,8 @@ impl fmt::Display for Arch {
|
|||||||
Self::riscv64 => "riscv64",
|
Self::riscv64 => "riscv64",
|
||||||
Self::x86_64 => "x86_64",
|
Self::x86_64 => "x86_64",
|
||||||
Self::any => "any",
|
Self::any => "any",
|
||||||
})
|
}
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,7 +73,7 @@ impl FromStr for Arch {
|
|||||||
"arm64" | "aarch64" | "armv8" => Ok(Self::aarch64),
|
"arm64" | "aarch64" | "armv8" => Ok(Self::aarch64),
|
||||||
"riscv" | "riscv64" => Ok(Self::riscv64),
|
"riscv" | "riscv64" => Ok(Self::riscv64),
|
||||||
"any" => Ok(Self::any),
|
"any" => Ok(Self::any),
|
||||||
_ => Err(ParseArchError)
|
_ => Err(ParseArchError),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@ mod dependency;
|
|||||||
mod specs;
|
mod specs;
|
||||||
|
|
||||||
use {
|
use {
|
||||||
|
crate::tar::{Node, Owner},
|
||||||
crate::{Plist, Version},
|
crate::{Plist, Version},
|
||||||
ron::ser::{to_string_pretty, PrettyConfig},
|
ron::ser::{to_string_pretty, PrettyConfig},
|
||||||
serde::{Deserialize, Serialize},
|
serde::{Deserialize, Serialize},
|
||||||
@ -13,7 +14,6 @@ use {
|
|||||||
io::{BufWriter, Write},
|
io::{BufWriter, Write},
|
||||||
path::Path,
|
path::Path,
|
||||||
},
|
},
|
||||||
crate::tar::{Node, Owner},
|
|
||||||
};
|
};
|
||||||
|
|
||||||
pub use {arch::Arch, dependency::Dependency, specs::Specs};
|
pub use {arch::Arch, dependency::Dependency, specs::Specs};
|
||||||
@ -88,10 +88,7 @@ impl Package {
|
|||||||
to_string_pretty(self, cfg)
|
to_string_pretty(self, cfg)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn save_ron_and_create_tar_node(
|
pub fn save_ron_and_create_tar_node(&self, outdir: &Path) -> Result<Node, Box<dyn Error>> {
|
||||||
&self,
|
|
||||||
outdir: &Path,
|
|
||||||
) -> Result<Node, Box<dyn Error>> {
|
|
||||||
if !outdir.exists() {
|
if !outdir.exists() {
|
||||||
fs::create_dir_all(outdir)?;
|
fs::create_dir_all(outdir)?;
|
||||||
}
|
}
|
||||||
@ -113,12 +110,18 @@ impl Package {
|
|||||||
|
|
||||||
/// Returns the formatted full package name including version and release strings
|
/// Returns the formatted full package name including version and release strings
|
||||||
pub fn fullname(&self) -> String {
|
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
|
/// Returns the name of the package archive
|
||||||
pub fn archive_name(&self) -> String {
|
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
|
/// Tests whether this package is an update for another
|
||||||
|
Loading…
Reference in New Issue
Block a user