#env-var #variables #env #environment

env_perm

Sets environment variables in your profile

4 releases

0.1.3 Jun 20, 2019
0.1.2 Jun 20, 2019
0.1.1 Jan 1, 2019
0.1.0 Dec 21, 2018

#124 in #env-var

Download history 68/week @ 2023-12-21 19/week @ 2023-12-28 40/week @ 2024-01-04 65/week @ 2024-01-11 57/week @ 2024-01-18 28/week @ 2024-01-25 27/week @ 2024-02-01 53/week @ 2024-02-08 77/week @ 2024-02-15 87/week @ 2024-02-22 65/week @ 2024-02-29 92/week @ 2024-03-07 75/week @ 2024-03-14 88/week @ 2024-03-21 95/week @ 2024-03-28 71/week @ 2024-04-04

345 downloads per month
Used in moltenvk_deps

MIT license

6KB
62 lines

env_perm

This crate allows you to permanently set environment variables

Examples

// Check if DUMMY is set, if not set it to 1
// export DUMMY=1
env_perm::check_or_set("DUMMY", 1).expect("Failed to find or set DUMMY");
// Append $HOME/some/cool/bin to $PATH
// export PATH= "$HOME/some/cool/bin:$PATH"
env_perm::append("PATH", "$HOME/some/cool/bin").expect("Couldn't find PATH");
// Sets a variable without checking if it exists.
// Note you need to use a raw string literal to include ""
// export DUMMY="/something"
env_perm::set("DUMMY", r#""/something""#).expect("Failed to set DUMMY");

Usage

This crate simply appends to your .bash_profile or .bash_login or .profile in that order. It will create a .bash_profile file if none of the above are found in your home directory. ie. /Users/me/.bash_profile.

I have only tested this on macOS but it should work on any unix system. I want to add windows support soon.

Contributions are welcome.


lib.rs:

This crate allows you to permanently set environment variables

Examples

// Check if DUMMY is set, if not set it to 1
// export DUMMY=1
env_perm::check_or_set("DUMMY", 1).expect("Failed to find or set DUMMY");
// Append $HOME/some/cool/bin to $PATH
// export PATH= "$HOME/some/cool/bin:$PATH"
env_perm::append("PATH", "$HOME/some/cool/bin").expect("Couldn't find PATH");
// Sets a variable without checking if it exists.
// Note you need to use a raw string literal to include ""
// export DUMMY="/something"
env_perm::set("DUMMY", r#""/something""#).expect("Failed to set DUMMY");

Dependencies

~39–420KB