summaryrefslogtreecommitdiff
path: root/cli
diff options
context:
space:
mode:
Diffstat (limited to 'cli')
-rw-r--r--cli/build.rs14
-rw-r--r--cli/src/main.rs2
2 files changed, 9 insertions, 7 deletions
diff --git a/cli/build.rs b/cli/build.rs
index f7b70e7f..afaed657 100644
--- a/cli/build.rs
+++ b/cli/build.rs
@@ -1,9 +1,11 @@
-use std::error::Error;
use std::process::Command;
-fn main() -> Result<(), Box<dyn Error>> {
- let output = Command::new("git").args(&["rev-parse", "HEAD"]).output()?;
- let hash = std::str::from_utf8(&output.stdout)?;
- println!("cargo:rustc-env=TYPST_HASH={}", &hash[..8]);
- Ok(())
+fn main() {
+ let version = Command::new("git")
+ .args(&["rev-parse", "HEAD"])
+ .output()
+ .ok()
+ .and_then(|output| String::from_utf8(output.stdout[..8].into()).ok())
+ .unwrap_or_else(|| "(unknown version)".into());
+ println!("cargo:rustc-env=TYPST_VERSION={version}");
}
diff --git a/cli/src/main.rs b/cli/src/main.rs
index 3f41ac78..dfb13aaa 100644
--- a/cli/src/main.rs
+++ b/cli/src/main.rs
@@ -156,7 +156,7 @@ fn print_help(help: &'static str) -> ! {
/// Print the version hash and quit.
fn print_version() -> ! {
- println!("typst {}", env!("TYPST_HASH"));
+ println!("typst {}", env!("TYPST_VERSION"));
std::process::exit(0);
}