refactor: changed how packages work

This commit is contained in:
Didier Slof 2023-07-17 21:15:30 +02:00
parent b83d44768d
commit 5fea156cfa
Signed by: didier
GPG key ID: 01E71F18AA4398E5
7 changed files with 134 additions and 59 deletions

View file

@ -14,7 +14,9 @@ impl Display for BinError {
}
#[derive(Debug)]
pub enum BuildError {}
pub enum BuildError {
InvalidManifest
}
impl Display for BuildError {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
@ -28,7 +30,7 @@ impl Display for BuildError {
pub enum InstallError {
BuildError(BuildError),
BinError(BinError),
InstallError
Generic
}
impl ToString for InstallError {
@ -36,7 +38,7 @@ impl ToString for InstallError {
match self {
InstallError::BuildError(e) => format!("Build error: {}", e),
InstallError::BinError(e) => format!("Bin error: {}", e),
InstallError::InstallError => "Install error".to_string(),
InstallError::Generic => "Install error".to_string(),
}
}
}

View file

@ -54,6 +54,13 @@ impl PackageInstaller {
}
fn build(&self) -> Result<(), BuildError> {
if let None = self.manifest.build.clone() {
return Err(BuildError::InvalidManifest);
}
let build_manifest = self.manifest.build.clone().unwrap();
// TODO: Check dependencies
Ok(())
}