# Moving aliases and other setup to non-shell-specific # file ~/.profile case $(uname) in Darwin) if [ $SHELL = "/bin/bash" ] || [ $SHELL = "/opt/homebrew/bin/bash" ] || [ $SHELL = "/opt/local/bin/bash" ]; then set -o posix # OSX-specific bash warning export BASH_SILENCE_DEPRECATION_WARNING=1 fi # MacPorts setup if [ -d '/opt/local' ]; then export PATH="/opt/local/bin:/opt/local/sbin:$PATH" export MANPATH=/opt/local/share/man:$MANPATH fi # Brew (OSX) specifics if [ -f '/opt/homebrew/bin/brew' ]; then export HOMEBREW_PREFIX="/opt/homebrew" export HOMEBREW_CELLAR="/opt/homebrew/Cellar" export HOMEBREW_REPOSITORY="/opt/homebrew" export HOMEBREW_FORCE_BREWED_CURL=1 export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:/opt/homebrew/opt/curl/bin${PATH+:$PATH}" export MANPATH="/opt/homebrew/share/man${MANPATH+:$MANPATH}:" export INFOPATH="/opt/homebrew/share/info:${INFOPATH:-}" if [ -f "/opt/homebrew/etc/bash_completion.d/git-completion.bash" ]; then source /opt/homebrew/etc/bash_completion.d/git-completion.bash fi fi if [ $(command -v python3) ]; then export PATH=$(python3 -m site --user-base)/bin:$PATH fi # Load config from filesystem export AWS_SDK_LOAD_CONFIG=1 # Add Local bin export PATH=$PATH:$HOME/.local/bin # Unlock Keychain cli alias unlock='security unlock-keychain ~/Library/Keychains/login.keychain' alias ls='/bin/ls -F -h -A -D "%F %H:%M:%S"' alias ll='/bin/ls -F -h -A -D "%F %H:%M:%S" -l' alias dua='du -h -d 1 | sort -h' ;; Linux) alias ls="/bin/ls --color=never -F -h -A " alias ll="/bin/ls --color=never -F -h -A -l" alias dua='du -h -d 1 | sort -h' ;; *BSD) export PAGER=less alias ls="/bin/ls -F -h -A " alias ll="/bin/ls -F -h -A -l" alias cvs-st="cvs -q -n update" set -o emacs if [ $SHELL = "/bin/sh" ]; then set -o tabcomplete fi if [ -d "/usr/pkg/bin" ]; then export PATH=$PATH:/usr/pkg/bin fi if [ -d "/usr/pkg/sbin" ]; then export PATH=$PATH:/usr/pkg/sbin fi export PATH=$PATH:/sbin:/usr/sbin:$HOME/.local/bin export CVS_RSH="ssh" export CVSROOT="anoncvs@anoncvs.NetBSD.org:/cvsroot" #Newsraft env export NO_COLOR="true" ;; esac # Go setup if [ -d "$HOME/.golang" ]; then ### Just in case it's missing mkdir -p ~/.golang/path # Go in the homedir if [ -d "$HOME/.golang/go" ]; then #export GOROOT_BOOTSTRAP=$HOME/.golang/bootstrap_go export GOROOT_BOOTSTRAP=/usr/pkg/go122/ export GOROOT=$HOME/.golang/go fi export GOPATH=$HOME/.golang/path # Disable broken caching by proxy.golang export GOPROXY=direct export GOSUMDB=off export PATH=$HOME/.golang/go/bin:$PATH:$HOME/.golang/path/bin fi # == Editors == # Vim not detected? Use vi as a fallback if [ ! "$(command -v vim)" ]; then alias vim=vi export EDITOR="vi" fi if [ "$(command -v code)" ] && [ "$(env | grep VSCODE)" ]; then export EDITOR="code" export VISUAL="code" #elif [ "$(command -v hx)" ]; then # export EDITOR="hx" # export VISUAL="hx" else export EDITOR="vim" export VISUAL="vim" fi # Ensure less always uses the one-page, raw control characters, and no-init settings export LESS=FRX # Defaults alias upcode="find $HOME/.code -name \".git\" -exec fetchgit {} \;" alias gc_all="find $HOME/.code -name \".git\" | xargs -I {} -n 1 bash -c \"cd {}; echo {}; git gc --aggressive;\" " ## Zstd always uses all cores if [ "$(command -v zstd)" ]; then alias zstd='zstd -T0' fi # == Rust Tools ==# # Add Rust paths if present if [ -d "$HOME/.cargo/bin" ]; then export PATH=$HOME/.cargo/bin:$PATH fi if [ $(command -v yt-dlp) ]; then alias yt-dlp="yt-dlp -S ext:mp4:m4a " fi # == END TOOLS == ## == DOTFILES == # To load files # git clone --bare ssh://tydavis@git.gluecode.net:/var/www/.gitdata/dotfiles $HOME/.dotfiles # OR # git clone --bare git@git.sr.ht:~tydavis/dotfiles $HOME/.dotfiles #shorten the git dotfiles management alias dotfiles='git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME' # Ignore files that aren't relevant # dotfiles config --local status.showUntrackedFiles no ## == END DOTFILES == # Dedupe path entries export PATH=$(printf %s "$PATH" | awk -v RS=: '{ if (!arr[$0]++) {printf("%s%s",!ln++?"":":",$0)}}') export HISTFILE=~/.history export HISTSIZE=10000 export PS1='\$ '