diff --git a/build.rs b/build.rs
index 8c37fc3..774f85a 100644
--- a/build.rs
+++ b/build.rs
@@ -1,30 +1,34 @@
 use std::process::Command;
-use vergen::{vergen, Config};
+use std::str;
 
 fn main() {
     println!("cargo:rerun-if-changed=/src");
 
-    // Save details from build environment so they can be included in the binary
-    vergen(Config::default()).unwrap();
+    // Explicilty set variables because git isn't available
+    println!("cargo:rustc-env=GIT_VERSION={}", "v0.2.0");
+    println!("cargo:rustc-env=GIT_COMMIT_HASH={}", "9e8635a");
+    println!("cargo:rustc-env=VERGEN_CARGO_TARGET_TRIPLE=x86_64-gentoo-linux-gnu");
 
-    if let Some(git_tag) = Command::new("git")
-        .args(["describe", "--exact-match", "--tags", "HEAD"])
+    let rustc_output = Command::new("rustc")
+        .arg("--version")
         .output()
-        .ok()
-        .and_then(|output| String::from_utf8(output.stdout).ok())
-    {
-        if !git_tag.is_empty() {
-            println!("cargo:rustc-env=GIT_VERSION={}", git_tag);
-        }
+        .expect("Failed to run rustc");
+    if !rustc_output.status.success() {
+        panic!("Failed to get rustc version");
+    
     }
-
-    if let Some(short_commit) = Command::new("git")
-        .args(["rev-parse", "--short", "HEAD"])
-        .output()
-        .ok()
-        .and_then(|output| String::from_utf8(output.stdout).ok())
-    {
-        println!("cargo:rustc-env=GIT_COMMIT_HASH={}", short_commit);
+    let rustc_output_str = str::from_utf8(&rustc_output.stdout).expect("Output is not valid UTF-8");
+    let rustc_version = rustc_output_str
+        .lines()
+        .next()
+        .and_then(|line| line.split_whitespace().nth(1));
+    match rustc_version {
+        Some(version_str) => {
+            println!("cargo:rustc-env=VERGEN_RUSTC_SEMVER={}", version_str)
+        }
+        None => {
+            panic!("Unable to parse rustc version");
+        }
     }
 
     // Load icon data
