hbox 0.7.1

CLI tool that leverages container technology to manage packages.
Documentation
use crate::packages::Package;

pub struct Context {
    package_name: String,
    package_version: String,
}

impl Context {
    pub fn from(package: &Package) -> Self {
        Self {
            package_name: package.name.clone(),
            package_version: package.versions.current.clone(),
        }
    }

    pub fn apply(&self, mut text: String) -> String {
        text = text.replace("${hbox_package_name}", &self.package_name);
        text = text.replace("${hbox_package_version}", &self.package_version);
        shellexpand::full(&text).unwrap_or_default().to_string()
    }
}