use std::path::PathBuf;
pub struct Shim {
target: PathBuf,
}
impl Shim {
pub fn new(bin: &str) -> Self {
let path = PathBuf::from(bin);
if !path.exists() {
panic!("Requested path is not available: {}", bin);
}
Self { target: path }
}
pub fn generate(&self) -> String {
let target_path = self.target.to_string_lossy();
format!("#!/bin/sh\nexec \"{}\" \"$@\"", target_path)
}
}