# General aliases, should only be sourced in interactive shells

# Add an "alert" alias for long running commands.  Use like so:
#   sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'

# Cryptsetup alias
alias luksFormat='cryptsetup luksFormat --type=luks2 --pbkdf-memory=2560000 --pbkdf=argon2id -i 15000 -s 512 -h sha256 -c aes-xts-plain64'

# Colors
if ls --version >/dev/null 2>&1 ; then
  alias ls='ls --color=auto'
fi
if [ `uname` != 'Darwin' -a `uname` != 'NetBSD' -a `uname` != 'FreeBSD' -a `uname` != 'OpenBSD' ] ; then
  # Should have a better way to check for GNU versions
  alias grep='grep --color=auto'
  alias egrep='egrep --color=auto'
  alias fgrep='fgrep --color=auto'
fi

# Easy upgrade
alias dist-upgrade="sudo sh -c 'apt-get update && apt-get -y dist-upgrade'"

# Timestamp in a machine-sortable form
alias tstamp="date '+%Y%m%d-%H%M%S'"

# Prepare code for markdown
alias mdcode="sed 's/^/    /'"

# Intel format plz
alias objdump="command objdump -M intel"

# Useful directory utilities
alias dircount="for d in * ; do find \$d -type d | wc -l | tr -d '\n' ; echo ' ' \$d ; done | sort -n"

# Drop caches for swap issues
alias drop_caches="echo 3 | sudo /usr/bin/tee /proc/sys/vm/drop_caches"

# dump acpi temperature
alias gettemp='printf "%02.2f\n" "$(cat /sys/class/thermal/thermal_zone0/temp)e-3"'

# get git working directory
alias gitroot="git rev-parse --show-toplevel"

# SSH without host key checking
alias sshanon="ssh -oUserKnownHostsFile=/dev/null -oStrictHostKeyChecking=no"

# Straight to ipython
alias ipy="ipython3"

# Skip the header on bc
alias bc="command bc -q"

# Get a decently readable df
alias dfh="df -h -x tmpfs -x devtmpfs"

# Clear the GPG agent
alias clear-gpg-agent="echo RELOADAGENT | gpg-connect-agent"

# Battery details
alias bat-details='upower -i $(upower -e | grep battery)'

# Nvidia refresh rate
alias nvidia-refresh-rate='nvidia-settings --display=:0 -q RefreshRate -t'

# Earthly ssh
alias earthly='earthly --ssh-auth-sock ""'
