#env-var #bash #zsh #export

app gexport

Manage and synchronize environment variables between interactive shell sessions for Bash and Zsh

5 stable releases

Uses new Rust 2024

1.1.2 Aug 13, 2025
1.1.1 Aug 4, 2025
1.0.1 Jul 3, 2025

#359 in Development tools

Download history 3/week @ 2025-09-28 2/week @ 2025-10-05

275 downloads per month

MIT license

27KB
693 lines

Gexport

Manage and synchronize environment variables between interactive shell sessions for Bash and Zsh.

Functions similarly to set -U in Fish, just for Bash / Zsh and with syntax based on standard POSIX export.

Installation

Requirements

Cargo

cargo install gexport

Manual

Download release binary and extract to /usr/local/bin for system-wide install or ~/.local/bin for user install.

Setup

Bash

Ensure bash-preexec.sh is installed and is correctly initialized. For initialization of bash-preexec you should have something similar to this in your .bashrc:

[[ -f ~/.bash-preexec.sh ]] && source ~/.bash-preexec.sh

Then to setup gexport itself:

echo 'eval "$(gexport --init bash)"' >> ~/.bashrc

Zsh

echo 'eval "$(gexport --init zsh)"' >> ~/.zshrc

Dependencies

~3.5–7.5MB
~130K SLoC