# ~/.profile: executed by the command interpreter for login shells. # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login # exists. # see /usr/share/doc/bash/examples/startup-files for examples. # the files are located in the bash-doc package. # the default umask is set in /etc/profile; for setting the umask # for ssh logins, install and configure the libpam-umask package. #umask 022 add_path () { local EXTRA_PATH="${1}" if [[ -d "$EXTRA_PATH" ]]; then case ":$PATH:" in *:"$EXTRA_PATH":*) ;; *) export PATH="$EXTRA_PATH:$PATH" ;; esac fi } # set PATH so it includes user's private bin add_path "$HOME/.local/bin" # set GOPATH and add bin directory to PATH variable export GOPATH="$HOME/.local/lib/go" add_path "$GOPATH/bin" # add fnm path and environment variables if [[ -x "$(command -v fnm)" ]]; then eval "$(fnm env --use-on-cd)" fi # add cargo/rust bin to path add_path "$HOME/.cargo/bin" # set default editor if [[ -x "$(command -v hx)" ]] ; then export EDITOR="hx" elif [[ -x "$(command -v vim)" ]] ; then export EDITOR="vim" fi # set default options for less # i: case-insensitive; R: use ANSI-Escape sequences; F: quit if one screen export LESS=iRF # set exa colors export EXA_COLORS="da=32" # set ripgrep config file export RIPGREP_CONFIG_PATH="$HOME/.config/ripgreprc" # use all cores with Makefile's export MAKEFLAGS="-j$(nproc --all)" # Postgres env export PGHOST=localhost export PGUSER=knmav # Opt out from .NET CLI Tools telemetry DOTNET_CLI_TELEMETRY_OPTOUT=1