212 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			212 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
# Detect distribution
 | 
						|
if [ -f /etc/os-release ]; then
 | 
						|
    . /etc/os-release
 | 
						|
fi
 | 
						|
 | 
						|
# Application management
 | 
						|
case "$ID" in
 | 
						|
    ubuntu|debian|pop)
 | 
						|
        # Install something bypassing the prompts
 | 
						|
        alias inst='sudo apt-get install -y'
 | 
						|
        # Do a basic update
 | 
						|
        alias update='sudo apt-get update -y && sudo apt-get upgrade -y'
 | 
						|
        # Upgrade everything
 | 
						|
        alias upgrade_all='sudo apt-get update -y && sudo apt-get upgrade -y && sudo apt-get dist-upgrade -y && sudo apt-get autoremove -y && sudo apt-get autoclean -y && sudo apt-get --with-new-pkgs upgrade -y'
 | 
						|
        # Search packages
 | 
						|
        alias pacs='apt-cache search'
 | 
						|
        # Uninstall
 | 
						|
        alias burn='sudo apt-get autoremove'
 | 
						|
        ;;
 | 
						|
    arch|archlinux)
 | 
						|
        # Check if yay is installed
 | 
						|
        if command -v yay >/dev/null 2>&1; then
 | 
						|
            # Install something bypassing the prompts
 | 
						|
            alias inst='yay -S --noconfirm'
 | 
						|
            # Do a basic update
 | 
						|
            alias update='yay -Syu --noconfirm'
 | 
						|
            # Upgrade everything
 | 
						|
            alias upgrade_all='yay -Syu --noconfirm && yay -Rns $(pacman -Qdtq) --noconfirm && sudo paccache -r'
 | 
						|
            # Search packages
 | 
						|
            alias pacs='yay -Ss'
 | 
						|
            # Uninstall
 | 
						|
            alias burn='yay -Rns --noconfirm'
 | 
						|
        else
 | 
						|
            # Install something bypassing the prompts
 | 
						|
            alias inst='sudo pacman -S --noconfirm'
 | 
						|
            # Do a basic update
 | 
						|
            alias update='sudo pacman -Syu --noconfirm'
 | 
						|
            # Upgrade everything
 | 
						|
            alias upgrade_all='sudo pacman -Syu --noconfirm && sudo pacman -Rns $(pacman -Qdtq) --noconfirm && sudo paccache -r'
 | 
						|
            # Search packages
 | 
						|
            alias pacs='pacman -Ss'
 | 
						|
            # Uninstall
 | 
						|
            alias burn='sudo pacman -Rns --noconfirm'
 | 
						|
        fi
 | 
						|
        ;;
 | 
						|
    alpine)
 | 
						|
        # Install something bypassing the prompts
 | 
						|
        alias inst='sudo apk add'
 | 
						|
        # Do a basic update
 | 
						|
        alias update='sudo apk update && sudo apk upgrade'
 | 
						|
        # Upgrade everything
 | 
						|
        alias upgrade_all='sudo apk update && sudo apk upgrade && sudo apk cache clean'
 | 
						|
        # Search packages
 | 
						|
        alias pacs='apk search'
 | 
						|
        # Uninstall
 | 
						|
        alias burn='sudo apk del'
 | 
						|
        ;;
 | 
						|
    *)
 | 
						|
        # Add any other distribution-specific aliases here
 | 
						|
        ;;
 | 
						|
esac
 | 
						|
 | 
						|
# General
 | 
						|
# Get $HOME quick 
 | 
						|
alias ~='cd ~/;clear'
 | 
						|
# A Nice display of all files in a directory
 | 
						|
alias ll='ls -hog'
 | 
						|
# Above but...different I'm sure
 | 
						|
alias lsa='ls -lah'
 | 
						|
# List stuff sorted by size
 | 
						|
alias lt='ls --human-readable --size -1 -S --classify'
 | 
						|
# Grep command history fast-like
 | 
						|
alias gh='history|grep'
 | 
						|
# lol
 | 
						|
alias please='sudo !!'
 | 
						|
# sometimes it feels good
 | 
						|
alias fucking='sudo'
 | 
						|
# Install bat. It's better.
 | 
						|
alias cat='bat'
 | 
						|
# Source this very file
 | 
						|
alias src='source ~/.bashrc'
 | 
						|
# Big Boy edit something
 | 
						|
alias svim='sudo vim'
 | 
						|
# Ping but with sounds
 | 
						|
alias ding='ping -i 5 -a'
 | 
						|
# An extremely useful benchmark script
 | 
						|
alias yabs='curl -sL yabs.sh | bash'
 | 
						|
 | 
						|
# Utilities
 | 
						|
# A faster way to do the thing it does
 | 
						|
alias sysres='sudo systemctl restart'
 | 
						|
# This one too
 | 
						|
alias sysup='sudo systemctl enable --now'
 | 
						|
# Also this one
 | 
						|
alias sysdn='sudo systemctl disable --now'
 | 
						|
 | 
						|
#opens specified command in new window in screen session
 | 
						|
alias s='screen -X screen '
 | 
						|
# Resume screen or create a new one named main
 | 
						|
alias scr='screen -r || screen -S main'
 | 
						|
# press enter to continue. Occasionally useful 
 | 
						|
alias cnfrm='read -p "Press enter to proceed" '
 | 
						|
 | 
						|
# A more intense ping for the professional on the go
 | 
						|
alias pang='ping -i 10 -v -a'
 | 
						|
# List the mounted things
 | 
						|
alias mnts='mount | column -t'
 | 
						|
# The history command but shorter
 | 
						|
alias h='history'
 | 
						|
 | 
						|
# Misc
 | 
						|
# Get the weather. Put your location after the command
 | 
						|
alias wttr='ansiweather -u imperial -s false -l'
 | 
						|
##Read the fucking manual
 | 
						|
#rtfm() { help $@ || info $@ || man $@ || curl "http://cheat.sh/$@"; }
 | 
						|
## Get your public IP
 | 
						|
#extip(){ ip=$(curl -s http://api.ipify.org);
 | 
						|
#	echo "Public IP address is $ip"
 | 
						|
#}
 | 
						|
## Cheatsheet for linux commands
 | 
						|
#ch() { curl "http://cheat.sh/$@"; }
 | 
						|
## You can go to noti.toad.city and generate your own code to get browser notifications. It's all explained there. You'll need to modify this value
 | 
						|
#notica() { curl --data "d:$*" "https://noti.toad.city/?VFvu53" ; }
 | 
						|
#
 | 
						|
# A quick lil speedyboi
 | 
						|
alias speedTest='curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python3 -'
 | 
						|
# If you're runnng my exact mastodon setup, this will be useful
 | 
						|
alias tootctl='docker exec -it -w /app/www mastodon bin/tootctl'
 | 
						|
# HAHAHA Go for it. Hours of fun and profit or ruining all your stuff
 | 
						|
alias hackingtool='docker run -it --net=host --security-opt seccomp=unconfined --privileged blackarchlinux/blackarch:latest'
 | 
						|
# Do you need to reboot? Find out here!
 | 
						|
alias needrs='[ -f /var/run/reboot-required ] && echo "You need to reboot"'
 | 
						|
alias gitgraph='git log --graph --oneline --decorate'
 | 
						|
## Countdown Timer
 | 
						|
#countdown() {
 | 
						|
#  start="$(( $(date '+%s') + $1))"
 | 
						|
#  while [ $start -ge $(date +%s) ]; do
 | 
						|
#    time="$(( $start - $(date +%s) ))"
 | 
						|
#    printf '%s\r' "$(date -u -d "@$time" +%H:%M:%S)"
 | 
						|
#    sleep 0.1
 | 
						|
#  done
 | 
						|
#}
 | 
						|
## Random quote to avoid making useful commit messages
 | 
						|
#function rgcm() {
 | 
						|
#  api="https://whatthecommit.com/index.txt"
 | 
						|
#  message=$(curl -s $api)
 | 
						|
#  if [[ -z $message ]]; then
 | 
						|
#    echo "Error: Failed to retrieve a random commit message"
 | 
						|
#    return 1
 | 
						|
#  fi
 | 
						|
#  git add .
 | 
						|
#  git commit -m "$message"
 | 
						|
#  echo "Git commit submitted with message: $message"
 | 
						|
#}
 | 
						|
#function cntdn() {
 | 
						|
#    local count=$1
 | 
						|
#    while [ $count -gt 0 ]; do
 | 
						|
#        echo -en "\n$count... "
 | 
						|
#        if [ $count -eq 3 ]; then
 | 
						|
#            echo "You've still got a few seconds to live it up before your time runs out!"
 | 
						|
#        elif [ $count -eq 2 ]; then
 | 
						|
#            echo "Tick-tock, tick-tock, time's running out!"
 | 
						|
#        elif [ $count -eq 1 ]; then
 | 
						|
#            echo "You had a good run, but it's time to face the music!"
 | 
						|
#        fi
 | 
						|
#        sleep 1
 | 
						|
#        ((count--))
 | 
						|
#    done
 | 
						|
#    echo "Time's up!"
 | 
						|
#}
 | 
						|
#
 | 
						|
#function ramdisk() {
 | 
						|
#    if [ -z "$1" ]; then
 | 
						|
#        echo "Error: Ramdisk size not specified."
 | 
						|
#        return 1
 | 
						|
#    fi
 | 
						|
#    if [ ! -d "$HOME/ramdown" ]; then
 | 
						|
#        mkdir "$HOME/ramdown"
 | 
						|
#    fi
 | 
						|
#
 | 
						|
#    size="$1"
 | 
						|
#
 | 
						|
#    sudo mount -t tmpfs -o size="$size" tmpfs "$HOME/ramdown"
 | 
						|
#}
 | 
						|
#
 | 
						|
#ipin() {
 | 
						|
#  local ip=$1
 | 
						|
#  local endpoint="https://ipinfo.io"
 | 
						|
#  # Append IP to the endpoint if provided
 | 
						|
#  if [[ -n $ip ]]; then
 | 
						|
#    endpoint+="/$ip"
 | 
						|
#  fi
 | 
						|
#  endpoint+="/json?token=4ea2457429bf23"
 | 
						|
#  # Make the API call and prettify the JSON response
 | 
						|
#  curl -s "$endpoint" | jq .
 | 
						|
#}
 | 
						|
## Tere function
 | 
						|
#tere() {
 | 
						|
#    local result=$(command tere "$@")
 | 
						|
#    [ -n "$result" ] && cd -- "$result"
 | 
						|
#}
 | 
						|
## Compress files. Like the name says.
 | 
						|
#function compress_files() {
 | 
						|
#    if [ -z "$1" ]; then
 | 
						|
#        echo "Usage: compress_files <archive_name.zip> <file1> <file2> ..."
 | 
						|
#    else
 | 
						|
#        zip -r "$1" "${@:2}"
 | 
						|
#    fi
 | 
						|
#}
 | 
						|
## See open ports
 | 
						|
alias ports='netstat -tuln '
 |