| 1 | # Nushell Environment Config File |
| 2 | # |
| 3 | # version = "0.99.1" |
| 4 | |
| 5 | # The prompt indicators are environmental variables that represent |
| 6 | # the state of the prompt |
| 7 | $env.PROMPT_INDICATOR = {|| "> " } |
| 8 | $env.PROMPT_INDICATOR_VI_INSERT = {|| "" } |
| 9 | $env.PROMPT_INDICATOR_VI_NORMAL = {|| "" } |
| 10 | $env.PROMPT_MULTILINE_INDICATOR = {|| "::: " } |
| 11 | $env.STARSHIP_SHELL = "nu" |
| 12 | |
| 13 | # Specifies how environment variables are: |
| 14 | # - converted from a string to a value on Nushell startup (from_string) |
| 15 | # - converted from a value back to a string when running external commands (to_string) |
| 16 | # Note: The conversions happen *after* config.nu is loaded |
| 17 | $env.ENV_CONVERSIONS = { |
| 18 | "PATH": { |
| 19 | from_string: { |s| $s | split row (char esep) | path expand --no-symlink } |
| 20 | to_string: { |v| $v | path expand --no-symlink | str join (char esep) } |
| 21 | } |
| 22 | "Path": { |
| 23 | from_string: { |s| $s | split row (char esep) | path expand --no-symlink } |
| 24 | to_string: { |v| $v | path expand --no-symlink | str join (char esep) } |
| 25 | } |
| 26 | } |
| 27 | |
| 28 | # Directories to search for scripts when calling source or use |
| 29 | # The default for this is $nu.default-config-dir/scripts |
| 30 | $env.NU_LIB_DIRS = [ |
| 31 | ($nu.default-config-dir | path join 'scripts') # add <nushell-config-dir>/scripts |
| 32 | ($nu.data-dir | path join 'completions') # default home for nushell completions |
| 33 | ] |
| 34 | |
| 35 | # Directories to search for plugin binaries when calling register |
| 36 | # The default for this is $nu.default-config-dir/plugins |
| 37 | $env.NU_PLUGIN_DIRS = [ |
| 38 | ($nu.default-config-dir | path join 'plugins') # add <nushell-config-dir>/plugins |
| 39 | ] |
| 40 | |
| 41 | |
| 42 | # To add entries to PATH (on Windows you might use Path), you can use the following pattern: |
| 43 | # $env.PATH = ($env.PATH | split row (char esep) | prepend '/some/path') |
| 44 | # An alternate way to add entries to $env.PATH is to use the custom command `path add` |
| 45 | # which is built into the nushell stdlib: |
| 46 | use std "path add" |
| 47 | |
| 48 | # $env.PATH = ($env.PATH | split row (char esep)) |
| 49 | # path add /some/path |
| 50 | # path add ($env.CARGO_HOME | path join "bin") |
| 51 | # path add ($env.HOME | path join ".local" "bin") |
| 52 | # $env.PATH = ($env.PATH | uniq) |
| 53 | |
| 54 | path add /opt/homebrew/bin |
| 55 | path add /usr/local/go/bin |
| 56 | path add ~/.cargo/bin |
| 57 | path add ~/.local/share/go/bin |
| 58 | path add ~/.local/bin |
| 59 | path add /usr/local/bin |
| 60 | path add ~/.bun/bin |
| 61 | path add /Applications/Docker.app/Contents/Resources/bin |
| 62 | $env.GOROOT = "/usr/local/go" |
| 63 | $env.GOPATH = "/Users/stevedylandev/.local/share/go" |
| 64 | $env.GOMODCACHE = "/Users/stevedylandev/.local/share/go-mod-cache" |
| 65 | $env.FZF_DEFAULT_COMMAND = 'fd --type f --hidden --exclude ".git"' |
| 66 | $env.FZF_DEFAULT_OPTS = [ |
| 67 | '--color=fg:#c1c1c1,fg+:#ffffff,bg:#121113,bg+:#222222' |
| 68 | '--color=hl:#5f8787,hl+:#fbcb97,info:#e78a53,marker:#fbcb97' |
| 69 | '--color=prompt:#e78a53,spinner:#5f8787,pointer:#fbcb97,header:#aaaaaa' |
| 70 | '--color=border:#333333,label:#888888,query:#ffffff' |
| 71 | '--border="rounded"' |
| 72 | '--border-label=""' |
| 73 | '--preview-window="border-rounded"' |
| 74 | '--prompt="> "' |
| 75 | '--marker=">"' |
| 76 | '--pointer="◆"' |
| 77 | '--separator="─"' |
| 78 | '--scrollbar="│"' |
| 79 | ] | str join ' ' |
| 80 | path add ~/.tmux/plugins/t-smart-tmux-session-manager/bin |
| 81 | path add ~/.deno/bin |
| 82 | path add ~/.foundry/bin |
| 83 | path add ~/.local/share/pinata-go-cli |
| 84 | path add ~/.local/share/ |
| 85 | path add ~/.local/share/solana/install/active_release/bin |
| 86 | path add /Users/stevedylandev/.local/share/pinata |
| 87 | path add ~/.sp1/bin |
| 88 | path add ~/.aztec/bin |
| 89 | path add ~/.nargo/bin |
| 90 | path add ~/.helios/bin |
| 91 | $env.ANDROID_HOME = "~/Library/Android/sdk" |
| 92 | path add ~/Library/Android/sdk/emulator |
| 93 | path add ~/Library/Android/sdk/platform-tools |
| 94 | $env.JAVA_HOME = "/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home" |
| 95 | # $env.RUSTUP_TOOLCHAIN = "nightly-2025-01-05" |
| 96 | $env.config.filesize.unit = "MB" |
| 97 | $env.BAT_THEME_DARK = "ansi" |
| 98 | $env.BAT_THEME = "ansi" |
| 99 | # $env.FNM_DIR = "/Users/stevedsimkins/Library/Application Support/fnm" |
| 100 | # $env.FNM_ARCH = "arm64" |
| 101 | # $env.FNM_LOGLEVEL = "info" |
| 102 | # $env.FNM_COREPACK_ENABLED = "false" |
| 103 | # $env.FNM_RESOLVE_ENGINES = "false" |
| 104 | # $env.FNM_VERSION_FILE_STRATEGY = "local" |
| 105 | # $env.FNM_MULTISHELL_PATH = "/Users/stevedsimkins/.local/state/fnm_multishells/96094_1730946598404" |
| 106 | # $env.FNM_NODE_DIST_MIRROR = "https://nodejs.org/dist" |
| 107 | fnm env --json | from json | load-env |
| 108 | path add ($env.FNM_MULTISHELL_PATH + "/bin") |
| 109 | |
| 110 | # To load from a custom file you can use: |
| 111 | # source ~/.config/nushell/env.nu |
| 112 | |
| 113 | # source ~/.config/nushell/darkmatter.nu |
| 114 | # source ~/.config/nushell/zoxide.nu |
| 115 | source ~/.config/nushell/git-completions.nu |
| 116 | source ~/.cargo/env.nu |
| 117 | |
| 118 | $env.EDITOR = "nvim" |
| 119 | |
| 120 | zoxide init nushell | save -f ~/.zoxide.nu |
| 121 | mkdir ~/.cache/starship |
| 122 | starship init nu | save -f ~/.cache/starship/init.nu |