Compare commits

..

13 Commits

22 changed files with 149 additions and 104 deletions

View File

@ -1,7 +1,7 @@
#!/bin/bash
# Colors
alias ls='ls -G'
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'

7
aliases.d/nvim Normal file
View File

@ -0,0 +1,7 @@
#!/bin/bash
# Vim Editor
if [ -x ~/AppImages/nvim.appimage ]
then
alias nvim='~/AppImages/nvim.appimage'
fi

View File

@ -5,5 +5,5 @@ if [ -x /usr/bin/vim ]
then
alias vi='vim -p'
alias view='vim -R'
alias vless='vim -u /usr/share/vim/vim74/macros/less.vim -c "colorscheme mustangpp"'
alias vless='vim -u /usr/share/vim/vim*/macros/less.vim'
fi

2
bashrc
View File

@ -24,7 +24,7 @@ if [ -d $HOME/.bash/aliases ]; then for file in $(ls $HOME/.bash/aliases/*); do
if [ -d $HOME/.bash/aliases.d ]; then for file in $(ls $HOME/.bash/aliases.d/*); do source $file; done; fi
# Source bash completion definitions
#for file in /etc/bash*completion /etc/profile.d/bash*completion* ; do source $file ; done
for file in /etc/bash*completion /etc/profile.d/bash*completion* ; do source $file ; done
if [ -f $HOME/.bash_completion ]; then source $HOME/.bash_completion; fi
if [ -f $HOME/.bash/completion ]; then source $HOME/.bash/completion; fi

View File

@ -1,10 +1,10 @@
#!/bin/bash
#SSH
#if [ -e ~/.ssh/config ]; then
# complete -W "$(cat ~/.ssh/config | egrep -i "^\s*host\s+[a-zA-Z]" | sed -e "s/^host\s*//i")" ssh
#fi
#
#if [ -e ~/.ssh/known_hosts ]; then
# complete -W "$(cat ~/.ssh/known_hosts | cut -f 1 -d ' ' | sed -e s/,.*//g | uniq | grep -v "\[")" ssh
#fi
if [ -e ~/.ssh/config ]; then
complete -W "$(cat ~/.ssh/config | egrep -i "^\s*host\s+[a-zA-Z]" | sed -e "s/^host\s*//i")" ssh
fi
if [ -e ~/.ssh/known_hosts ]; then
complete -W "$(cat ~/.ssh/known_hosts | cut -f 1 -d ' ' | sed -e s/,.*//g | uniq | grep -v "\[")" ssh
fi

View File

@ -1,7 +1,5 @@
#!/bin/bash
which virsh || return &> /dev/null
hypervisor_connect() {
if [ -e "${1}" ]; then echo "Usage : $0 hypervisor_name_or_ip"; return 1; fi

View File

@ -1,8 +1,8 @@
#!/bin/bash
# Defined prefered applications
export TERMINAL=urxvtc
export TERMINAL=kitty
export PAGER=less
export EDITOR=vim
export BROWSER=surf
export EDITOR=nvim
export BROWSER=firefox

View File

@ -1,4 +1,4 @@
#!/bin/bash
# Define prefered LANG
export LANG=fr_FR.UTF-8
export LANG=fr_FR.utf8

12
rc.d/asdf Normal file
View File

@ -0,0 +1,12 @@
#!/bin/bash
if [ -f ~/.asdf/asdf.sh ]
then
# activate asdf
source ~/.asdf/asdf.sh
# activate completion
source ~/.asdf/completions/asdf.bash
fi

0
rc.d/cgroups Executable file → Normal file
View File

View File

@ -1,6 +1,24 @@
#!/bin/bash
if (which -s direnv)
if ( which asdf &> /dev/null )
then
eval "$(direnv hook bash)"
if ( asdf which direnv &> /dev/null )
then
# Hook direnv into your shell.
eval "$(asdf exec direnv hook bash)"
# A shortcut for asdf managed direnv.
direnv() { asdf exec direnv "$@"; }
return
fi
elif ( which direnv &> /dev/null )
then
# Hook direnv into your shell.
eval "$(direnv hook bash)"
fi

9
rc.d/helm Normal file
View File

@ -0,0 +1,9 @@
#!/bin/bash
if (which helm &> /dev/null)
then
# activate completion
source <( helm completion bash )
fi

6
rc.d/krew Normal file
View File

@ -0,0 +1,6 @@
#!/bin/bash
if [ -d ~/.krew/bin ]
then
export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
fi

17
rc.d/kubectl Normal file
View File

@ -0,0 +1,17 @@
#!/bin/bash
if (which kubectl &> /dev/null)
then
# activate completion
source <(kubectl completion bash)
# create a quick alias
alias k=kubectl
alias ks="kubectl --namespace kube-system"
# add completion for the alias as well
complete -o default -F __start_kubectl k
complete -o default -F __start_kubectl ks
fi

10
rc.d/lsd Normal file
View File

@ -0,0 +1,10 @@
#!/bin/bash
if (which lsd &> /dev/null)
then
# create a aliases
alias ls='lsd'
alias lt='lsd --tree'
fi

9
rc.d/mcfly Normal file
View File

@ -0,0 +1,9 @@
#!/bin/bash
if (which mcfly &> /dev/null)
then
export MCFLY_INTERFACE_VIEW=BOTTOM
export MCFLY_RESULTS=25
export MCFLY_RESULTS_SORT=LAST_RUN
eval "$(mcfly init bash)"
fi

View File

@ -1,60 +0,0 @@
#!/bin/bash
if ( ! which mcfly &> /dev/null ); then return; fi
# Avoid loading this file more than once
if [[ "$__MCFLY_LOADED" == "loaded" ]]; then
return 0
fi
__MCFLY_LOADED="loaded"
export MCFLY_SESSION_ID=$(cat /dev/urandom | env LC_ALL=C tr -dc 'a-zA-Z0-9' | fold -w 24 | head -n 1)
export MCFLY_HISTORY=$(mktemp -t mcfly.XXXX)
export HISTFILE="${HISTFILE:-$HOME/.bash_history}"
if [[ -f "$HISTFILE" ]];
then
tail -n100 "${HISTFILE}" >| ${MCFLY_HISTORY}
else
printf "Welcome to McFly\n" >| ${MCFLY_HISTORY}
fi
# Ignore commands with a leading space
#export HISTCONTROL="ignorespace"
# Append new history items to .bash_history
shopt -s histappend
# Setup a function to be used by $PROMPT_COMMAND.
function mcfly_prompt_command {
local exit_code=$? # Record exit status of previous command.
history -a ${MCFLY_HISTORY} # Append history to $MCFLY_HISTORY.
# Run mcfly with the saved code. It will:
# * append commands to $HISTFILE, (~/.bash_history by default)
# for backwards compatibility and to load in new terminal sessions;
# * find the text of the last command in $MCFLY_HISTORY and save it to the database.
mcfly add --exit ${exit_code} --append-to-histfile
# Clear the in-memory history and reload it from $MCFLY_HISTORY
# (to remove instances of '#mcfly: ' from the local session history).
history -cr ${MCFLY_HISTORY}
return ${exit_code} # Restore the original exit code by returning it.
}
# Set $PROMPT_COMMAND run mcfly_prompt_command and then any existing $PROMPT_COMMAND.
PROMPT_COMMAND="mcfly_prompt_command;$PROMPT_COMMAND"
# If this is an interactive shell, take ownership of ctrl-r.
# The logic here is:
# 1. Jump to the beginning of the edit buffer, add 'mcfly: ', and comment out the current line. We comment out the line
# to ensure that all possible special characters, including backticks, are ignored. This commented out line will
# end up as the most recent entry in the $MCFLY_HISTORY file.
# 2. Type "mcfly search" and then run the command. McFly will pull the last line from the $MCFLY_HISTORY file,
# which should be the commented-out search from step #1. It will then remove that line from the history file and
# render the search UI pre-filled with it.
if [[ $- =~ .*i.* ]]; then
if set -o | grep "vi " | grep -q on; then
bind "'\C-r': '\e0i#mcfly: \e\C-j mcfly search\C-j'"
else
bind "'\C-r': '\C-amcfly: \e# mcfly search\C-j'"
fi
fi

44
rc.d/prompt Executable file → Normal file
View File

@ -2,36 +2,46 @@
# Customize the prompt
# Limit the path to 3 levels
PROMPT_DIRTRIM=3
POWERLINE_LOCATION=$(command -v powerline-go || command -v powerline) &>/dev/null
POWERLINE=$(basename "$POWERLINE_LOCATION")
if [ "${POWERLINE}" = "powerline-go" ]; then
# Use powerline-go if availaible
echo "Using $POWERLINE"
# -modules string
# The list of modules to load, separated by ','
# (valid choices: aws, cwd, docker, dotenv, duration, exit, git, gitlite, hg, host, jobs, kube, load, newline, nix-shell, node, perlbrew, perms, root, shell-var, ssh, svn, termtitle, terraform-workspace, time, user, venv, vgo)
# (default "nix-shell,venv,user,host,ssh,cwd,perms,git,hg,jobs,exit,root,vgo")
# -modules-right string
# The list of modules to load anchored to the right, for shells that support it, separated by ','
# (valid choices: aws, cwd, docker, dotenv, duration, exit, git, gitlite, hg, host, jobs, kube, load
if (which powerline-go &> /dev/null); then
function _update_ps1() {
#eval $(powerline-go -shell bash -mode patched -modules "nix-shell,cwd,perms,jobs,git,venv,docker,kube,aws" -modules-right "exit,ssh,user,host" -newline -error $? -eval)
eval $(powerline-go -shell bash -mode patched -modules "nix-shell,cwd,perms,jobs,git,venv,aws,docker,kube,exit" -newline -error $? -eval)
PS1=$($POWERLINE -jobs "$(jobs -p | wc -l)" -error $? -modules "ssh,host,wsl,user,cwd,direnv,venv,perms,git,jobs,exit,root" -modules-right "docker,docker-context,kube,terraform-workspace" -newline)
}
if [ "$TERM" != "linux" ] ; then
export PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND"
fi
if [ "$TERM" != "linux" ]; then PROMPT_COMMAND="$PROMPT_COMMAND; _update_ps1"; fi
elif [ "${POWERLINE}" = "powerline" ]; then
echo "Using $POWERLINE"
# Run powerline daemon
powerline-daemon -q
# Cache powerline location
# To locate this directory, run: pip show powerline-status
export POWERLINE_LOCATION="/home/xavier/.local/lib/python3.10//site-packages/powerline" # Set up powerline environment
export POWERLINE_CONFIG_COMMAND=powerline-config
export POWERLINE_BASH_CONTINUATION=1
export POWERLINE_BASH_SELECT=1# Invoke binding script
. "$POWERLINE_LOCATION/bindings/bash/powerline.sh"
else
if [ "$UID" -eq 0 ]; then
export PS1='\[\e[01;31m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '
else
export PS1='\[\e[01;32m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '
fi
fi
# Limit the path to 3 levels
PROMPT_DIRTRIM=3
# Add a smiley at end of prompt showing last command status code
#smiley() {
# ret_val=$?

0
rc.d/screen Executable file → Normal file
View File

9
rc.d/stern Normal file
View File

@ -0,0 +1,9 @@
#!/bin/bash
if (which stern &> /dev/null)
then
# activate completion
source <(stern --completion bash)
fi

0
rc.d/tmux Executable file → Normal file
View File

0
rc.d/urxvt Executable file → Normal file
View File