summaryrefslogtreecommitdiff
path: root/nushell/env.nu
diff options
context:
space:
mode:
Diffstat (limited to 'nushell/env.nu')
-rw-r--r--nushell/env.nu68
1 files changed, 68 insertions, 0 deletions
diff --git a/nushell/env.nu b/nushell/env.nu
new file mode 100644
index 0000000..16e4511
--- /dev/null
+++ b/nushell/env.nu
@@ -0,0 +1,68 @@
+# ---- XDG base directories ----
+$env.XDG_CONFIG_HOME = ($env.XDG_CONFIG_HOME? | default ($env.HOME | path join '.config'))
+$env.XDG_DATA_HOME = ($env.XDG_DATA_HOME? | default ($env.HOME | path join '.local/share'))
+$env.XDG_STATE_HOME = ($env.XDG_STATE_HOME? | default ($env.HOME | path join '.local/state'))
+$env.XDG_CACHE_HOME = ($env.XDG_CACHE_HOME? | default ($env.HOME | path join '.cache'))
+
+# ---- Homebrew ----
+$env.HOMEBREW_PREFIX = '/opt/homebrew'
+$env.HOMEBREW_CELLAR = '/opt/homebrew/Cellar'
+$env.HOMEBREW_REPOSITORY = '/opt/homebrew'
+$env.MANPATH = (if ($env.MANPATH? | is-empty) {
+ $env.HOMEBREW_PREFIX | path join 'share/man'
+} else {
+ $'($env.HOMEBREW_PREFIX)/share/man:($env.MANPATH)'
+})
+
+# ---- Rust / cargo ----
+$env.CARGO_HOME = ($env.CARGO_HOME? | default ($env.HOME | path join '.local/share/cargo'))
+
+# ---- Apps ----
+$env.WAKATIME_HOME = ($env.XDG_CONFIG_HOME | path join 'wakatime')
+$env.BUN_INSTALL = ($env.HOME | path join '.bun')
+$env.PNPM_HOME = ($env.HOME | path join '.local/share/pnpm')
+$env.NVM_DIR = ($env.HOME | path join '.config/nvm')
+$env.EDITOR = 'nvim'
+$env.HOMEBREW_NO_ENV_HINTS = '1'
+$env.PUPPETEER_EXECUTABLE_PATH = ($env.HOME | path join '.cache/puppeteer/chrome/mac_arm-142.0.7444.59/chrome-mac-arm64/Google Chrome for Testing.app/Contents/MacOS/Google Chrome for Testing')
+
+# Proxy
+$env.http_proxy = 'http://127.0.0.1:7890'
+$env.https_proxy = 'http://127.0.0.1:7890'
+$env.all_proxy = 'socks5://127.0.0.1:7890'
+$env.no_proxy = 'localhost,127.0.0.1'
+
+# GPG
+try { $env.GPG_TTY = (tty | str trim) } catch { }
+
+# Java
+try { $env.JAVA_HOME = (/usr/libexec/java_home -v 17 | str trim) } catch { }
+
+# Temporary files
+let state_tmp = ($env.XDG_STATE_HOME | path join 'tmp')
+mkdir $state_tmp
+$env.TMPDIR = $state_tmp
+
+# ---- PATH ----
+$env.PATH = ([
+ ($env.HOME | path join '.local/bin') # ~/.local/bin/env
+ $env.PNPM_HOME # pnpm
+ ($env.BUN_INSTALL | path join 'bin') # bun
+ '/opt/nanobrew/prefix/bin' # nanobrew
+ ($env.HOME | path join 'bin') # ~/bin
+ '/Library/Frameworks/Python.framework/Versions/3.13/bin' # Python 3.13 (.zprofile)
+ '/usr/local/bin' # macOS standard
+ '/opt/homebrew/bin' # Homebrew
+ '/opt/homebrew/sbin' # Homebrew
+ ($env.CARGO_HOME | path join 'bin') # cargo/rustup (.zshenv)
+ ...$env.PATH
+ ($env.HOME | path join 'Library/Python/3.9/bin') # Python 3.9 (user)
+ ($env.HOME | path join '.local/share/go/bin') # Go
+] | uniq)
+
+# pnpm
+$env.PNPM_HOME = "/Users/eltrac/.local/share/pnpm"
+$env.PATH = ($env.PATH | split row (char esep) | prepend ($env.PNPM_HOME | path join "bin") )
+# pnpm end
+
+source secrets.nu