aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main.rs5
-rw-r--r--src/venv.rs13
2 files changed, 16 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs
index b839325..1a77759 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -50,12 +50,13 @@ fn pista(zsh: bool) -> String {
50 ) 50 )
51 } else { 51 } else {
52 format!( 52 format!(
53 "{cwd} {branch} {status}\n{venv}{pchar} ", 53 "{cwd} {branch} {status}\n{venv}{nix}{pchar} ",
54 cwd = cwd, 54 cwd = cwd,
55 branch = branch, 55 branch = branch,
56 status = status, 56 status = status,
57 venv = venv, 57 venv = venv,
58 pchar = prompt_char 58 pchar = prompt_char,
59 nix = venv::in_nix_shell()
59 ) 60 )
60 } 61 }
61} 62}
diff --git a/src/venv.rs b/src/venv.rs
index 7906abc..da6830c 100644
--- a/src/venv.rs
+++ b/src/venv.rs
@@ -17,3 +17,16 @@ pub fn get_name() -> colored::ColoredString {
17 return "".white() 17 return "".white()
18} 18}
19 19
20pub fn in_nix_shell() -> colored::ColoredString {
21 match env::var("IN_NIX_SHELL") {
22 Ok(p) => {
23 if p == "pure" {
24 "(nix) ".green()
25 } else {
26 "(nix) ".red()
27 }
28 }
29 _ => return "".white(),
30 }
31}
32