export CONFIG_DIR="$HOME/.dotfiles" # ╦═╗┌─┐┌─┐┬─┐┌─┐┌─┐┬ ┬ # ╠╦╝├┤ ├┤ ├┬┘├┤ └─┐├─┤ # ╩╚═└─┘└ ┴└─└─┘└─┘┴ ┴ if [ -z "${ZSH}" ]; then alias refresh=". $HOME/.bashrc" else alias refresh=". $HOME/.zshrc" fi # ╦┌┐┌┌─┐┌┬┐┌─┐┬ ┬ # ║│││└─┐ │ ├─┤│ │ # ╩┘└┘└─┘ ┴ ┴ ┴┴─┘┴─┘ alias install_cli="$CONFIG_DIR/auto-config-cli.sh" alias install_gui="$CONFIG_DIR/auto-config.sh" # ╔╦╗╦╔═╗╔═╗ # ║║║║╚═╗║ # ╩ ╩╩╚═╝╚═╝ # Nautilus alias open="nautilus ." # Go to config directory alias config="cd $CONFIG_DIR" function config_update { cd $CONFIG_DIR git pull cd - } # Editor alias c='codium' # Find alias find='find . -name' # Minicom serial alias com='minicom -c on -D' # Aliases de retour alias b='cd ../' alias bb='cd ../../' alias bbb='cd ../../../' alias bbbb='cd ../../../../' alias bbbbb='cd ../../../../../' # Folder size alias sizes='du -h -d1 | sort -hr' alias size='du -h -d0' # Swap alias s_off='sudo swapoff -a' alias s_on='sudo swapon -a' function s_clean { s_off s_on } # Make alias mk='make -j5' alias mec='make' alias mecque='make' # VPN alias vpn="sudo openvpn --config $HOME/Nextcloud/#\ -\ Configs/rguiheneuf.ovpn" # ╔═╗┬┌┬┐ ╔═╗┬ ┬┌─┐┌─┐┌─┐┌─┐ # ║ ╦│ │ ╠═╣│ │├─┤└─┐├┤ └─┐ # ╚═╝┴ ┴ ╩ ╩┴─┘┴┴ ┴└─┘└─┘└─┘ alias gs='git status' alias gc='git checkout' alias gcm='git checkout master' alias gpl='git pull' alias gph='git push' alias gsu='git submodule update --init' alias gcp='git cherry-pick' alias add='git add' alias commit='git commit -m "To fixup"' alias cont='git rebase --continue' # Git cleaners alias branch_clean='git branch --merged | egrep -v "(^\*|master|dev)" | xargs git branch -d' alias tag_clean='git tag -l | xargs git tag -d && git fetch -t' function git_parent { git log --pretty=format:"%D" HEAD^ | \ # Show log refs grep -v "^$" | \ # Clear empty lines sed "s/, /\n/g" | \ # One ref by line grep -v "tag:[^,]*,*" | \ # Filter tag refs head -n1 | \ # Keep only the last sed "s/origin\/\([^,]*\)/\1/" # Local reference } alias log='git log --graph --decorate --oneline' # Branch function branch_create { git checkout -b $1 git push -u origin $1 } # Tag helpers function tag_create { git tag $1 git push origin $1 } function tag_replace { git tag --delete $1 git push origin --delete $1 git tag $1 git push origin $1 } function g_save { git add * git commit -m "[skip ci] Save: do not merge" git push -f } # ╔═╗┬┌┬┐ ╦═╗┌─┐┌┐ ┌─┐┌─┐┌─┐ # ║ ╦│ │ ╠╦╝├┤ ├┴┐├─┤└─┐├┤ # ╚═╝┴ ┴ ╩╚═└─┘└─┘┴ ┴└─┘└─┘ function grb { git rebase --interactive HEAD~$1 } function grbi { # Save current branch BRANCH=$(git branch | grep \* | cut -d ' ' -f2) # Save parent branch PARENT=$(git_parent) # Checkout parent & pull git checkout ${PARENT} git pull echo "Rebasing on" ${PARENT} # Back to previous branch git checkout ${BRANCH} git rebase --interactive ${PARENT} } function grbroot { git rebase --interactive --autosquash --root } function ga { git autofixup HEAD~$1 git rebase --interactive --autosquash HEAD~$1 } function gai { # Save parent branch PARENT=$(git_parent) echo "Rebasing with autofixup on" ${PARENT} git autofixup ${PARENT} git rebase --interactive --autosquash ${PARENT} } # ╔═╗┬┌┬┐ ╔═╗┌┬┐┌─┐┌┐┌┌┬┐ # ║ ╦│ │ ╠═╣│││├┤ │││ ││ # ╚═╝┴ ┴ ╩ ╩┴ ┴└─┘┘└┘─┴┘ alias amend_pro="GIT_EDITOR=true git rebase --preserve-merges --exec 'git commit --amend --author=\"Robin-Charles GUIHENEUF \"' $1" alias amend_perso="GIT_EDITOR=true git rebase --preserve-merges --exec 'git commit --amend --author=\"Robin-Charles Guihéneuf \"' $1" # ╦═╗┌─┐┌─┐┌─┐┌─┐┬┌┬┐┌─┐┬─┐┬┌─┐┌─┐ # ╠╦╝├┤ ├─┘│ │└─┐│ │ │ │├┬┘│├┤ └─┐ # ╩╚═└─┘┴ └─┘└─┘┴ ┴ └─┘┴└─┴└─┘└─┘ alias bc='cd $HOME/Netatmo/embedded/firmware-bitcloud' alias fw='cd $HOME/Netatmo/embedded/firmware' alias nmr='cd $HOME/Netatmo/embedded/nmr' alias py='cd $HOME/Netatmo/core/python-emb-tools' alias mag='cd $HOME/Netatmo/embedded/magellan' alias nsp='cd $HOME/Netatmo/embedded/nsp' alias mulot='cd $HOME/mulot/firmware' # In editor alias c_bc='c $HOME/Netatmo/firmware-bitcloud.code-workspace' alias c_fw='c $HOME/Netatmo/firmware.code-workspace' alias c_nmr='c $HOME/Netatmo/nmr.code-workspace' alias c_py='c $HOME/Netatmo/python-emb-tools.code-workspace' alias c_mag='c $HOME/Netatmo/magellan.code-workspace' alias c_nsp='c $HOME/Netatmo/nsp.code-workspace' alias c_mulot='c $HOME/mulot/mulot.code-workspace' # SSH keygen function ssh_keygen { cd $HOME/.ssh ssh-keygen -t rsa -b 4096 -f "$1" cat "$1.pub" cd - } # ╔╗╔┌─┐┌┬┐┌─┐┌┬┐┌┬┐┌─┐ # ║║║├┤ │ ├─┤ │ ││││ │ # ╝╚╝└─┘ ┴ ┴ ┴ ┴ ┴ ┴└─┘ # Flash sniffer nRF52 function nrf52 { arm-none-eabi-objcopy -O ihex output/nrf52840/bin/$1 $1.hex nrfutil pkg generate --hw-version 52 --sd-req=0x00 --application $1.hex --application-version 1 $1.zip if [ -z "$2" ] then nrfutil dfu usb-serial -pkg $1.zip -p /dev/ttyACM0 else nrfutil dfu usb-serial -pkg $1.zip -p $2 fi } # app.S function generate_objdump { arm-none-eabi-objdump -S $1.elf > app.S } # Netatmo specific alias flasher='flasher' # Skip USB mode alias fpm='flasher -forceplugmode' alias py_wireshark='$HOME/Netatmo/core/python-emb-tools/python/bin/zigbee/python_zigbee_interface.py -p ' alias stflash='sudo stm32_sbm -f app.bin -s 0x1000 -d' alias stflash_dfu='stm32_dfu -f app-jtag.bin -b' # ╔═╗┬┌┬┐ ╔═╗┬─┐┌─┐┌┬┐┌─┐┌┬┐ # ║ ╦│ │ ╠═╝├┬┘│ ││││├─┘ │ # ╚═╝┴ ┴ ╩ ┴└─└─┘┴ ┴┴ ┴ # Git prompt if [ -z "${ZSH}" ]; then if [ -f "$HOME/.bash-git-prompt/gitprompt.sh" ]; then GIT_PROMPT_ONLY_IN_REPO=1 source $HOME/.bash-git-prompt/gitprompt.sh fi else if [ -f "$HOME/.zsh-git-prompt/zshrc.sh" ]; then source $HOME/.zsh-git-prompt/zshrc.sh fi fi # ╔═╗─┐ ┬┌─┐┌─┐┬─┐┌┬┐ # ║╣ ┌┴┬┘├─┘│ │├┬┘ │ # ╚═╝┴ └─┴ └─┘┴└─ ┴ export PATH=$PATH:~/Netatmo/core/embedded-tools/Linux/flasher export PATH=$PATH:~/Netatmo/core/generic-embedded/stm32_sbm export PATH=$PATH:~/Netatmo/core/generic-embedded/stm32_dfu export PATH=$PATH:~/Netatmo/embedded/firmware-bitcloud/toolchain/arm-none-eabi/bin export PATH=$PATH:~/Netatmo/embedded/nmr/scripts/flash # Autofixup export PATH=$PATH:$HOME/.git-autofixup # Netatmo export NETATMO_WORK_DIR=$HOME/Netatmo # Cargo binaries (navi) export PATH=$PATH:$HOME/.cargo/bin # Navi if [ -z "${ZSH}" ]; then source <(navi widget bash) else source <(navi widget zsh) fi # Zephyr [ -f $HOME/mulot/firmware/zephyr/zephyr-env.sh ] && source $HOME/mulot/firmware/zephyr/zephyr-env.sh # West export WEST_DIR=$HOME/mulot/firmware/.west/west