use ructe::{Ructe, RucteError}; use std::process::Command; fn main() -> Result<(), Box> { let mut ructe = Ructe::from_env()?; let mut statics = ructe.statics()?; statics.add_files("statics")?; ructe.compile_templates("templates")?; let output = Command::new("git") .args(&["rev-parse", "HEAD"]) .output() .unwrap(); let out = std::env::var("out").unwrap_or("/fake".into()); println!("cargo:rustc-env=out={}", out); let git_hash = String::from_utf8(output.stdout).unwrap(); println!( "cargo:rustc-env=GIT_SHA={}", if git_hash.as_str() == "" { out.into() } else { git_hash } ); Ok(()) }