# Programming languages ## Go export GOPATH="$HOME/go" PATH="$PATH:$GOPATH/bin" ## Node PATH="$PATH:/home/simon/opt/node/bin" export NVM_DIR=$(realpath "$HOME/.nvm") source "$NVM_DIR/nvm.sh" ## Python (pip) PATH="$PATH:/home/simon/.local/bin" ## Lua PATH="$PATH:$HOME/.luarocks/bin/" # Misc ## Local binaries PATH="$PATH:$HOME/bin" # Ergonomic ## Battery percentage alias batt="upower -i /org/freedesktop/UPower/devices/battery_BAT0|grep percentage|awk '{print $2}'" ## Upload to transfer.sh transfer() { if [ $# -eq 0 ];then echo -e "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /tmp/test.md | transfer test.md" return 1 fi tmpfile=$(mktemp -t transferXXX) if tty -s;then basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g') curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" >> $tmpfile else curl --progress-bar --upload-file "-" "https://transfer.sh/$1" >> $tmpfile fi cat $tmpfile rm -f $tmpfile } ## Touchpad enabling/disabling function touchpad() { touchpad="SynPS/2 Synaptics TouchPad" if [[ $1 == "disable" ]];then xinput --set-prop "$touchpad" "libinput Send Events Mode Enabled" 1 1 notify-send "Touchpad" "Disabled" else xinput --set-prop "$touchpad" "libinput Send Events Mode Enabled" 0 0 notify-send "Touchpad" "Enabled" fi } ## Terminal font function tfont() { ( [ -z "$1" ] && font="Terminess Powerline" || font="$1" [ -z "$2" ] && fontsize=18 || fontsize="$2" echo -e "\033]710;xft:$font:pixelsize=$fontsize\007" ) } # Fancy stuff ## dircolors eval "$(dircolors -b $HOME/.dircolors)" ## Color switcher alias dynamic-colors="~/.dynamic-colors/bin/dynamic-colors" ## Timer function timer() { ( if [ -z "$1" ] || [ -z "$2" ]; then echo "USAGE: $0 [u|f] TIME/DURATION" >&2 return 1 fi if [ "$1" != "u" ] && [ "$1" != "f" ]; then echo "Invalid mode “$1” supplied. Valid modes are: u|f" >&2 return 2 fi [ "$1" = "u" ] && mode="until" [ "$1" = "f" ] && mode="for" gosleep --${mode} "$2" if [ "$?" = 0 ]; then echo "Press CTRL-C to stop the alarm…" >&2 echo -en "\a" # highlight window play -q ~/Dokumente/sound/ringtones/commando.ogg else echo "The sleep command failed. Please check the options." >&2 return 3 fi ) } # Bugs ## silversearcher-ag and not apt-get unalias ag 2>/dev/null # Program aliases/env ## Aliases for programs alias apktool="java -jar ~/opt/apktool_2.3.1.jar" if which exa 2>&1 >> /dev/null;then alias exa="exa --git" alias ls="exa" fi alias ipy="ipython3" alias mc="$GOPATH/bin/mc" alias mpvhdr="mpv --tone-mapping=hable" alias rls="/bin/ls --color=auto" alias shiori="docker exec shiori_shiori_1 shiori" alias tearstop="compton --backend=glx" function jitsi-meet() { chromium --app="https://meet.jit.si/$1" } ## Environment variables export HVSC_BASE="$HOME/Dokumente/sound/HVSC/" export ESP_ROOT="$HOME/projekte/esp8266/esp-open-sdk" export ANDROID_HOME="$HOME/projekte/android/sdk" export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on' # force antialiasing in java ## include docker functions source ~/.zshrc.docker ## drone ci function drone-add-hub() { ( drone secret add --name docker_username --value sbruder "$1" drone secret add --name docker_password --value "$(pass show devops/docker|head -n 1)" "$1" ) } function drone-add-registry() { ( drone secret add --name docker_username --value sbruder "$1" drone secret add --name docker_password --value "$(pass show accounts/sbruderldap|head -n 1)" "$1" ) } function drone-add-netlify() { ( drone secret add --name netlify_key --value "$(pass show devops/netlify |grep Drone-Key|cut -d: -f2|tr -d ' ')" "$1" ) } function drone-add-s3() { ( drone secret add --name aws_access_key_id --value "$(pass show management/minio/personal|grep User|cut -d: -f2|tr -d ' ')" "$1" drone secret add --name aws_secret_access_key --value "$(pass show management/minio/personal|head -n 1)" "$1" ) } function drone() { ( source ~/.drone-env $GOPATH/bin/drone $@ ) } function docker-ls() { ( DOCKER_LS_PASSWORD=$(pass show accounts/sbruderldap|head -n 1) ~/go/bin/docker-ls $@ ) } function docker-rm() { ( DOCKER_LS_PASSWORD=$(pass show accounts/sbruderldap|head -n 1) ~/go/bin/docker-rm $@ ) }