summaryrefslogtreecommitdiff
path: root/.bash_profile
blob: 7252b7fd6963afe73a072e884be64e4982ee846b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
##
#       System Settings
##
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export TERM='st-256color'
export TERMINAL=st
export EDITOR='vim'
export VISUAL='vim'
export PROMPT_COMMAND='echo -ne "\033]0;`cwd`\007"'
export PS1="\[$(tput setaf 12)\][\[$(tput bold)\]\[$(tput setaf 2)\]\u\[$(tput sgr0)\]\[$(tput setaf 12)\]]\[$(tput setaf 13)\]\\$ \[$(tput sgr0)\]"

##
#	Exports
##
export PRJ_HOME=$HOME/projects

## Programming langs - may be worth moving to pc_local if I move off of arch for all
export JAVA_HOME=/usr/lib/jvm/default/
export GO_HOME=/usr/local/go
export GOPATH=$PLAYGROUND_HOME/go
export CARGO_HOME=$HOME/.cargo/

## Path export
export PATH=$PATH:/snap/bin:$GO_HOME/bin:$GOPATH:/home/senders/.local/bin:$CARGO_HOME/bin

##
#	Alias
##
alias tgz='tar czvf'
alias utgz='tar xzvf'
alias bgrand='fn_bg_rand'
alias bgset='xsetroot -solid '
alias resource='source ~/.bash_profile'
alias ssh-evict='ssh-keygen -f "/home/senders/.ssh/known_hosts" -R'
alias add-ssh='ssh-add ~/.ssh/id_rsa'

##
#	Functions
##

# Prompt Command Function CWD
function cwd {
    pwd | awk '{ n=split($0,a,"/"); print a[n-1]"/"a[n] }'
}

function prj {
    cd $PRJ_HOME/$1
}

function fn_bg_set {
    xsetroot -solid "#$1"
}

function fn_bg_rand {
    local color=$(openssl rand -hex 3)
    fn_bg_set $color
    echo "#"$color
    unset $color
}

function mvnversion {
  mvn versions:set -DnewVersion=$1 -DgenerateBackupPoms=false
}

function venv {
  virtualenv ~/tmp/venv/$1
  source ~/tmp/venv/$1/bin/activate
}

##
#      Bootstraps
##

# Git Autocompelte
GIT_AUTOCOMPLETE=/usr/share/git/completion/git-completion.bash
if [ -f $GIT_AUTOCOMPLETE ]; then
    source $GIT_AUTOCOMPLETE
fi

# Private Bash Profile for things I don't want in git
# or that should only exist in this SPECIFIC PC setup
if [ -f ~/.pc_local_bash_profile ]; then
  . ~/.pc_local_bash_profile
fi