add bash & git
Signed-off-by: Frank Villaro-Dixon <frank@villaro-dixon.eu>
This commit is contained in:
parent
4b17ef07a4
commit
ab5435961b
5 changed files with 349 additions and 0 deletions
278
files/bashrc
Normal file
278
files/bashrc
Normal file
|
@ -0,0 +1,278 @@
|
|||
shopt -s checkwinsize #Pour pas s'écrire dessus
|
||||
shopt -s histappend
|
||||
shopt -s autocd #No more cd xx
|
||||
shopt -s cdspell #drain bramage
|
||||
shopt -s dirspell
|
||||
##shopt -s autocd #Like zsh
|
||||
PROMPT_COMMAND='history -a'
|
||||
|
||||
set -o vi
|
||||
|
||||
|
||||
###############
|
||||
#### ALIAS ####
|
||||
###############
|
||||
# {{{
|
||||
|
||||
alias k='kubectl'
|
||||
alias klks='kubectl -n kube-system'
|
||||
alias change_yubikey='gpg-connect-agent "scd serialno" "learn --force" /bye'
|
||||
alias dockre='docker'
|
||||
alias dokcer='docker'
|
||||
alias ..='cd ..'
|
||||
|
||||
alias rm='rm -i'
|
||||
alias cp='cp -i'
|
||||
|
||||
alias mv='mv -i'
|
||||
alias vm='mv -i'
|
||||
|
||||
alias df='dfc'
|
||||
alias free='freec'
|
||||
alias shred='shred -n 35 -z -u -v -f'
|
||||
|
||||
if [ "$TERM" != "dumb" ]; then
|
||||
eval "`dircolors -b`"
|
||||
alias ls='ls --color=auto -N'
|
||||
fi
|
||||
alias la='ls -lahN'
|
||||
|
||||
|
||||
|
||||
alias sudp='sudo' #fuck tpyos :p
|
||||
alias sudpo='sudo'
|
||||
|
||||
|
||||
alias grep='grep --color'
|
||||
|
||||
alias bim='vim'
|
||||
alias vi='vim'
|
||||
alias VIM='vim'
|
||||
alias ivm='vim'
|
||||
alias vmi='vim'
|
||||
|
||||
alias makew='make'
|
||||
alias mkae='make'
|
||||
alias amke='make'
|
||||
alias mak='make'
|
||||
alias amek='make'
|
||||
|
||||
alias shm='cd /dev/shm'
|
||||
|
||||
alias arc='tig'
|
||||
alias ack='rg'
|
||||
# }}}
|
||||
|
||||
|
||||
###############
|
||||
## FONCTIONS ##
|
||||
###############
|
||||
# {{{
|
||||
|
||||
function cd #{{{
|
||||
{
|
||||
MY_LAST=`pwd`
|
||||
if [ $# -eq 0 ]; then
|
||||
builtin cd ~ && cons_set > /dev/null && ls
|
||||
else
|
||||
builtin cd "$*" && cons_set > /dev/null && ls
|
||||
fi
|
||||
}
|
||||
#}}}
|
||||
|
||||
function back {
|
||||
cd $MY_LAST
|
||||
}
|
||||
|
||||
|
||||
|
||||
function mkcd #{{{
|
||||
{
|
||||
mkdir -p "$@"
|
||||
cd "$@"
|
||||
}
|
||||
# }}}
|
||||
|
||||
|
||||
|
||||
#CONS(OLE) function, a pretty useful functions that keeps track of
|
||||
# the lasts whereabouts (in terms of folders) of the terminal
|
||||
CONS_ROOT_DIRECTORY=/dev/shm/cons_$USER
|
||||
function cons
|
||||
{
|
||||
if [ ! -d $CONS_ROOT_DIRECTORY ]; then
|
||||
mkdir $CONS_ROOT_DIRECTORY
|
||||
fi;
|
||||
|
||||
if [ $# -eq 0 ]; then
|
||||
for f in $CONS_ROOT_DIRECTORY/*; do
|
||||
echo -e "`echo $f|rev|cut -d/ -f1|rev` >>\n\t`cat $f`"
|
||||
#XXX basename
|
||||
done
|
||||
elif [ $# -eq 1 ]; then
|
||||
if [ -e $CONS_ROOT_DIRECTORY/$1 ]; then
|
||||
cd $(cat $CONS_ROOT_DIRECTORY/$1)
|
||||
else
|
||||
echo $1 does not exist
|
||||
fi;
|
||||
fi;
|
||||
}
|
||||
|
||||
function cons_set
|
||||
{
|
||||
TTY=$(tty)
|
||||
|
||||
if [ ! -d $CONS_ROOT_DIRECTORY ]; then
|
||||
mkdir $CONS_ROOT_DIRECTORY
|
||||
fi;
|
||||
|
||||
TTYNO=`echo $TTY | cut -d/ -f 4`
|
||||
pwd > $CONS_ROOT_DIRECTORY/$TTYNO
|
||||
}
|
||||
|
||||
|
||||
|
||||
###############
|
||||
### EXPORTS ###
|
||||
###############
|
||||
# {{{
|
||||
export EDITOR="vim"
|
||||
|
||||
export HISTCONTROL=erasedups
|
||||
export HISTSIZE=99999999
|
||||
HISTTIMEFORMAT="%d/%m/%y %T "
|
||||
# }}}
|
||||
# vim: set filetype=sh
|
||||
|
||||
# Reset
|
||||
Color_Off="\[\033[0m\]" # Text Reset
|
||||
|
||||
# Regular Colors
|
||||
Black="\[\033[0;30m\]" # Black
|
||||
Red="\[\033[0;31m\]" # Red
|
||||
Green="\[\033[0;32m\]" # Green
|
||||
Yellow="\[\033[0;33m\]" # Yellow
|
||||
Blue="\[\033[0;34m\]" # Blue
|
||||
Purple="\[\033[0;35m\]" # Purple
|
||||
Cyan="\[\033[0;36m\]" # Cyan
|
||||
White="\[\033[0;37m\]" # White
|
||||
|
||||
# Bold
|
||||
BBlack="\[\033[1;30m\]" # Black
|
||||
BRed="\[\033[1;31m\]" # Red
|
||||
BGreen="\[\033[1;32m\]" # Green
|
||||
BYellow="\[\033[1;33m\]" # Yellow
|
||||
BBlue="\[\033[1;34m\]" # Blue
|
||||
BPurple="\[\033[1;35m\]" # Purple
|
||||
BCyan="\[\033[1;36m\]" # Cyan
|
||||
BWhite="\[\033[1;37m\]" # White
|
||||
|
||||
# Underline
|
||||
UBlack="\[\033[4;30m\]" # Black
|
||||
URed="\[\033[4;31m\]" # Red
|
||||
UGreen="\[\033[4;32m\]" # Green
|
||||
UYellow="\[\033[4;33m\]" # Yellow
|
||||
UBlue="\[\033[4;34m\]" # Blue
|
||||
UPurple="\[\033[4;35m\]" # Purple
|
||||
UCyan="\[\033[4;36m\]" # Cyan
|
||||
UWhite="\[\033[4;37m\]" # White
|
||||
|
||||
# Background
|
||||
On_Black="\[\033[40m\]" # Black
|
||||
On_Red="\[\033[41m\]" # Red
|
||||
On_Green="\[\033[42m\]" # Green
|
||||
On_Yellow="\[\033[43m\]" # Yellow
|
||||
On_Blue="\[\033[44m\]" # Blue
|
||||
On_Purple="\[\033[45m\]" # Purple
|
||||
On_Cyan="\[\033[46m\]" # Cyan
|
||||
On_White="\[\033[47m\]" # White
|
||||
|
||||
# High Intensty
|
||||
IBlack="\[\033[0;90m\]" # Black
|
||||
IRed="\[\033[0;91m\]" # Red
|
||||
IGreen="\[\033[0;92m\]" # Green
|
||||
IYellow="\[\033[0;93m\]" # Yellow
|
||||
IBlue="\[\033[0;94m\]" # Blue
|
||||
IPurple="\[\033[0;95m\]" # Purple
|
||||
ICyan="\[\033[0;96m\]" # Cyan
|
||||
IWhite="\[\033[0;97m\]" # White
|
||||
|
||||
# Bold High Intensty
|
||||
BIBlack="\[\033[1;90m\]" # Black
|
||||
BIRed="\[\033[1;91m\]" # Red
|
||||
BIGreen="\[\033[1;92m\]" # Green
|
||||
BIYellow="\[\033[1;93m\]" # Yellow
|
||||
BIBlue="\[\033[1;94m\]" # Blue
|
||||
BIPurple="\[\033[1;95m\]" # Purple
|
||||
BICyan="\[\033[1;96m\]" # Cyan
|
||||
BIWhite="\[\033[1;97m\]" # White
|
||||
|
||||
# High Intensty backgrounds
|
||||
On_IBlack="\[\033[0;100m\]" # Black
|
||||
On_IRed="\[\033[0;101m\]" # Red
|
||||
On_IGreen="\[\033[0;102m\]" # Green
|
||||
On_IYellow="\[\033[0;103m\]" # Yellow
|
||||
On_IBlue="\[\033[0;104m\]" # Blue
|
||||
On_IPurple="\[\033[10;95m\]" # Purple
|
||||
On_ICyan="\[\033[0;106m\]" # Cyan
|
||||
On_IWhite="\[\033[0;107m\]" # White
|
||||
|
||||
# Various variables you might want for your PS1 prompt instead
|
||||
Time12h="\T"
|
||||
Time12a="\@"
|
||||
PathShort="\w"
|
||||
PathFull="\W"
|
||||
NewLine="\n"
|
||||
Jobs="\j"
|
||||
|
||||
__git_ps1 ()
|
||||
{
|
||||
local b="$(git symbolic-ref HEAD 2>/dev/null)";
|
||||
if [ -n "$b" ]; then
|
||||
printf " (%s)" "${b##refs/heads/}";
|
||||
fi
|
||||
}
|
||||
|
||||
IntroCol=$BIPurple;
|
||||
|
||||
PROMPT_COMMAND=__prompt_command
|
||||
__prompt_command() {
|
||||
local EXIT="$?"
|
||||
PS1="$On_Blue(\h)$Color_Off"
|
||||
|
||||
|
||||
if [ $EXIT -eq 0 ]; then
|
||||
PS1+="✔️"
|
||||
else
|
||||
PS1+="❌"
|
||||
fi
|
||||
|
||||
if [ -n "$VIRTUAL_ENV" ]; then
|
||||
PS1+="(🧙)"
|
||||
fi
|
||||
|
||||
PS1+=" "
|
||||
PS1+="$IntroCol$Time12h$Color_Off"
|
||||
|
||||
git branch &>/dev/null
|
||||
if [ $? -eq 0 ]; then #In repo
|
||||
git status | grep 'nothing to commit' >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
PS1+="$Green"$(__git_ps1 " (%s)")
|
||||
else
|
||||
PS1+="$IRed"$(__git_ps1 " {%s}")
|
||||
fi
|
||||
PS1+="$BYellow$PathShort$Color_Off"
|
||||
else
|
||||
PS1+=" $Yellow$PathShort$Color_Off\$ "
|
||||
fi
|
||||
|
||||
if [[ "$KUBECONFIG" =~ (.*pikprod.*|.*rapace.*) ]]; then
|
||||
PS1+="${URed}PIKPROD !!${Color_Off}"
|
||||
fi
|
||||
|
||||
PS1+="\n"
|
||||
|
||||
}
|
||||
|
||||
|
41
files/gitconfig
Normal file
41
files/gitconfig
Normal file
|
@ -0,0 +1,41 @@
|
|||
[user]
|
||||
name = Frank Villaro-Dixon
|
||||
email = frank@villaro-dixon.eu
|
||||
|
||||
[color]
|
||||
branch = auto
|
||||
diff = auto
|
||||
interactive = auto
|
||||
status = auto
|
||||
ui = auto
|
||||
|
||||
[alias]
|
||||
st = status
|
||||
ci = commit -s
|
||||
commti = commit
|
||||
co = checkout
|
||||
br = branch
|
||||
pu = push
|
||||
psuh = push
|
||||
puhs = push
|
||||
psh = push
|
||||
plul = pull
|
||||
dad = add
|
||||
undo-commit = reset --soft HEAD^
|
||||
tag = tag -s
|
||||
ap = add --patch
|
||||
|
||||
[core]
|
||||
editor = vim
|
||||
excludesfile = ~/.gitignore
|
||||
hooksPath = .githooks
|
||||
abbrev = 12
|
||||
|
||||
[merge]
|
||||
tool = vimdiff
|
||||
|
||||
[push]
|
||||
default = current
|
||||
|
||||
[init]
|
||||
defaultBranch = main
|
15
tasks/bash.yml
Normal file
15
tasks/bash.yml
Normal file
|
@ -0,0 +1,15 @@
|
|||
- name: Copy bashrc
|
||||
copy:
|
||||
src: files/bashrc
|
||||
dest: /root/.bashrc
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
|
||||
- name: set .bash_profile with var
|
||||
copy:
|
||||
content: '[[ -f ~/.bashrc ]] && . ~/.bashrc'
|
||||
dest: /root/.bash_profile
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
13
tasks/git.yml
Normal file
13
tasks/git.yml
Normal file
|
@ -0,0 +1,13 @@
|
|||
- name: Install git
|
||||
ansible.builtin.package:
|
||||
name: git
|
||||
state: present
|
||||
|
||||
- name: Copy .gitconfig
|
||||
copy:
|
||||
src: files/gitconfig
|
||||
dest: /root/.gitconfig
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
|
|
@ -1,3 +1,4 @@
|
|||
- import_tasks: bash.yml
|
||||
- import_tasks: journald.yml
|
||||
- import_tasks: ntp.yml
|
||||
- import_tasks: ssh.yml
|
||||
|
@ -5,3 +6,4 @@
|
|||
- import_tasks: motd.yml
|
||||
- import_tasks: setup_backup.yml
|
||||
- import_tasks: pkgs.yml
|
||||
- import_tasks: git.yml
|
||||
|
|
Loading…
Reference in a new issue