# Custom scripts #find ~/.scripts/ ~/.gscripts/ -type f -name "*.sh" | while read script; do #source "$script" #done [ -f ~/.scripts/index.sh ] && source ~/.scripts/index.sh [ -f ~/.gscripts/index.sh ] && source ~/.gscripts/index.sh # Prompt if [[ $USER == 'root' ]]; then col=31; elif [[ -n $ME ]]; then # $ME is a var set by my private config that is not empty if it is my account (and not a system account e.g. `git`) col=32; else col=33; fi export USER=$(whoami) PS1="\[\e]2;\u@\h \w\a\]\[\e[0;37m\][\[\e[0;${col}m\]\u\[\e[0;37m\]@\[\e[0;34m\]\h \[\e[0;36m\]\W\[\e[0;37m\]]\$\[\e[0m\] " PS2="> " PS3="+ " PS4="- " # Vars export PAGER=less export EDITOR=vim export VISUAL=vim export BROWSER=/usr/bin/qutebrowser export TZ=/usr/share/zoneinfo/Europe/Paris export PATH="$PATH" if [ -d $HOME/.gem/ruby ]; then $(which ls) $HOME/.gem/ruby | while read rubyVer; do export PATH="$PATH:$HOME/.gem/ruby/$rubyVer/bin/" done fi export PATH="$(echo "$PATH" | sed 's|:|\n|g' | sort | uniq | tr '\n' ':' | sed 's|:$||')" export LANG=fr_FR.utf8 export HISTSIZE=10000 export HISTFILESIZE=${HISTSIZE} export HISTCONTROL=ignoreboth export JAVA_FONTS=/usr/share/fonts/TTF export ANDROID_HOME=/opt/android-sdk export GOPATH=$HOME/.go if [ -z $XDG_CONFIG_HOME ]; then export XDG_CONFIG_HOME=$HOME/.config fi # Tweaks [[ $- != *i* ]] && return if [ -f /etc/bash_completion ]; then . /etc/bash_completion; fi xhost +local:root > /dev/null 2>&1 complete -cf sudo shopt -s cdspell shopt -s checkwinsize shopt -s cmdhist shopt -s dotglob shopt -s expand_aliases shopt -s extglob shopt -s histappend shopt -s hostcomplete export LS_OPTIONS='--group-directories-first --time-style=+"%d/%m/%Y %H:%M" --color=auto --classify --human-readable' alias ls="ls $LS_OPTIONS" alias ll="ls -l $LS_OPTIONS" alias la="ls -la $LS_OPTIONS" alias al=sl alias grep='grep --color=tty -d skip' alias mkdir='mkdir -v' alias cp="cp -i" alias mv="mv -iv" alias dd='dd status=progress' alias rm='rm -Iv --one-file-system' alias free='free -m' alias df='df -h' alias 49.3='sudo' alias pacman='pacman --color auto' alias x='startx; logout' alias s='sudo -s -E' if which gopass &> /dev/null; then alias pass='gopass' fi # Utils if which thefuck &> /dev/null; then alias fuck='TF_CMD=$(TF_ALIAS=fuck PYTHONIOENCODING=utf-8 TF_SHELL_ALIASES=$(alias) thefuck $(fc -ln -1)) && eval $TF_CMD && history -s $TF_CMD' alias FUCK='fuck' fi # Command not found [ -r /usr/share/doc/pkgfile/command-not-found.bash ] && . /usr/share/doc/pkgfile/command-not-found.bash [ -r /etc/profile.d/cnf.sh ] && . /etc/profile.d/cnf.sh # Functions function clean { find . -type d -name bower_components -or -name node_modules -print0 | while read file; do rm -rf "$file" done find . -type f -name Makefile -print0 | while IFS= read -r -d '' file; do echo "--> $file" (cd "${file//Makefile}"; make clean) done find . -type d -name .git -print0 | while IFS= read -r -d '' dir; do echo "--> $file" (cd "$dir"; git gc) done } function dafont { wget "http://dl.dafont.com/dl/?f=$1" -O /tmp/dafont.zip unzip /tmp/dafont.zip -d ~/.local/share/fonts -x *.txt rm -rf /tmp/dafont.zip } alias nw="sudo systemctl restart NetworkManager" # Clears everything it can to save space function emergency-space { rm -rf $HOME/.cache if which pacman &> /dev/null; then sudo pacman -Scc elif which apt-get &> /deb/null; then sudo apt-get clean fi if which journalctl &> /dev/null; then sudo journalctl --vacuum-size=100M fi }