Non-Volatile export https://pypi.org/project/nvexpo/
Go to file
kirbylife b1ebba5a0a Add license 2023-11-03 02:27:07 -06:00
nvexpo Implement compatibility with values with commas 2023-11-03 01:40:58 -06:00
tests Initial commit 2023-11-02 02:14:32 -06:00
.gitignore Add gitignore 2023-11-03 01:39:27 -06:00
LICENSE.md Add license 2023-11-03 02:27:07 -06:00
README.md Update README.md 2023-11-03 08:23:24 +00:00
poetry.lock Initial commit 2023-11-02 02:14:32 -06:00
pyproject.toml Update the README 2023-11-03 02:18:41 -06:00
test.env Initial commit 2023-11-02 02:14:32 -06:00

README.md

NVEXPO - Non-Volatile EXPOrt

nxexpo it's a simple tool to define environment variables on-the-fly and persisting them between shell sessions.

Dependencies

  • Python 3.8

Dependencies to build

Dependencies to develop

Installation

To install from the source follow the commands:

$ poetry build
$ pip install dist/nvexpo*.whl

And add the follow line to your .bashrc file:

eval "$(nvexpo init bash)"

Basic usage

The usage it's too simple. If you want to create a new env var into the current bash session use the command:

$ nx weird_variable=101

Then, you can close the current terminal or terminate the bash session, and when you start a new one, your env vars will still be there .

$ echo $weird_variable
101

Unset variables

To unset variables you need to use flag --unset:

$ nx var1="hello world"
$ echo $var1
hello world
$ nx --unset var1
$ echo $var1

$ works!!

Why?

The main motivation for creating this tool was that in my work I like to have the Git branch I'm working on in $branch, but it's annoying to have to create it every time I restart or close the terminal I was working on.
I could add it to .bashrc directly, but I would have to do it every time I have to work on a new branch and it wasn't comfortable.
So now instead of having to type:

branch="super_useful_change"

I have to write:

nx branch="super_useful_change"

and that's it, no matter how many times I restart, my variable will be there.