Created aliases and functions for the bash shell
This commit is contained in:
		
							
								
								
									
										7
									
								
								bash/aliases.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								bash/aliases.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
			
		||||
#!/usr/bin/bash
 | 
			
		||||
 | 
			
		||||
alias clone="rsync -pogAXtlHrDx --stats --info=progress2"
 | 
			
		||||
alias yubicrypt="gpg -a -r 4B6331BEF3AC0BE7! -r 0224C38EB9F83CEC! -e"
 | 
			
		||||
alias codium="flatpak run --user com.vscodium.codium"
 | 
			
		||||
alias flatshell="flatpak run --user --command=sh"
 | 
			
		||||
# @REMINDER: Add `eval "$(direnv hook bash)"` to end of `~/.bashrc` when install `direnv` package
 | 
			
		||||
							
								
								
									
										126
									
								
								bash/functions.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										126
									
								
								bash/functions.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,126 @@
 | 
			
		||||
#!/usr/bin/bash
 | 
			
		||||
 | 
			
		||||
gcfmount () {
 | 
			
		||||
    if [ "$1" == "data" ]; then
 | 
			
		||||
        GOCRYPTFS_CONFIG_ARG=~/.keys/gocryptfs/data-cipher/gocryptfs.conf
 | 
			
		||||
        GOCRYPTFS_PASSFILE_ARG=~/.keys/gocryptfs/gocryptfs.key
 | 
			
		||||
        GOCRYPTFS_VAULT_ARG=~/.${1}
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ "$1" == "classified" ]; then
 | 
			
		||||
        GOCRYPTFS_CONFIG_ARG=~/.keys/gocryptfs/secret-cipher/gocryptfs.conf
 | 
			
		||||
        GOCRYPTFS_PASSFILE_ARG=~/.keys/gocryptfs/gocryptfs.key
 | 
			
		||||
        GOCRYPTFS_VAULT_ARG=~/Documents/.secret
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ "$1" == "works-in-progress" ]; then
 | 
			
		||||
        GOCRYPTFS_CONFIG_ARG=~/.keys/gocryptfs/wip-cipher/gocryptfs.conf
 | 
			
		||||
        GOCRYPTFS_PASSFILE_ARG=~/.keys/gocryptfs/gocryptfs-wip.key
 | 
			
		||||
        GOCRYPTFS_VAULT_ARG=~/Portfolio/.WIP
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if ! [ -f ~/.mnt/data ]; then
 | 
			
		||||
        mkdir -p ~/.mnt/data
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if ! [ -f ~/.mnt/works-in-progress ]; then
 | 
			
		||||
        mkdir -p ~/.mnt/works-in-progress
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if ! [ -f ~/.mnt/classified ]; then
 | 
			
		||||
        mkdir -p ~/.mnt/classified
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    gocryptfs -config "$GOCRYPTFS_CONFIG_ARG" -passfile "$GOCRYPTFS_PASSFILE_ARG" "$GOCRYPTFS_VAULT_ARG" ~/.mnt/"${1}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
gcfunmount () {
 | 
			
		||||
    GOCRYPTFS_PLAIN_ARG=~/.mnt/${1}
 | 
			
		||||
 | 
			
		||||
    fusermount -u "$GOCRYPTFS_PLAIN_ARG"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
gpgcrypt () {
 | 
			
		||||
    if [ -z "$2" ] || [ -z "$1" ]; then
 | 
			
		||||
        exit 1
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ "$1" == "prof-yubi-meth" ]; then
 | 
			
		||||
        ENCRYPTION_SUBKEYS=("4B6331BEF3AC0BE7" "0224C38EB9F83CEC")
 | 
			
		||||
    elif [ "$1" == "prof-meth" ]; then
 | 
			
		||||
        ENCRYPTION_SUBKEYS=("52BF88A647736790" "310C56CDE883C607")
 | 
			
		||||
    elif [ "$1" == "pers-meth" ]; then
 | 
			
		||||
        ENCRYPTION_SUBKEYS=("3C75E89F4CF28B73" "C588608AC4ECA184")
 | 
			
		||||
    elif [ "$1" == "perv-meth" ]; then
 | 
			
		||||
        ENCRYPTION_SUBKEYS=("CA4E8224B296365A")
 | 
			
		||||
    elif [ "$1" == "perv-yubi-meth" ]; then
 | 
			
		||||
        ENCRYPTION_SUBKEYS=("8B0C4AEF8B316FC9")
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if [ -z "$3" ]; then
 | 
			
		||||
        SUBKEY_ARG_LEN="${#ENCRYPTION_SUBKEYS[@]}"
 | 
			
		||||
        if (( SUBKEY_ARG_LEN < 2 )); then
 | 
			
		||||
            gpg -a -r "${ENCRYPTION_SUBKEYS[0]}"! -e "$2"
 | 
			
		||||
        else
 | 
			
		||||
            gpg -a -r "${ENCRYPTION_SUBKEYS[0]}"! -r "${ENCRYPTION_SUBKEYS[1]}"! -e "$2"
 | 
			
		||||
        fi
 | 
			
		||||
    else
 | 
			
		||||
        if (( SUBKEY_ARG_LEN < 2 )); then
 | 
			
		||||
            gpg -a -r "${ENCRYPTION_SUBKEYS[0]}"! -o "$3" -e "$2"
 | 
			
		||||
        else
 | 
			
		||||
            gpg -a -r "${ENCRYPTION_SUBKEYS[0]}"! -r "${ENCRYPTION_SUBKEYS[1]}"! -o "$3" -e "$2"
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
znap () {
 | 
			
		||||
    DATE_OF_ZFS_SNAPSHOT=$(date '+%Y%m%d%H%M%S')
 | 
			
		||||
 | 
			
		||||
    if [ -z "$1" ]; then
 | 
			
		||||
        exit 1
 | 
			
		||||
    elif [ "$1" == "essential" ]; then
 | 
			
		||||
        sudo zfs snapshot "zroot${HOME}@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot${HOME}/.config@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot${HOME}/.var/app@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot${HOME}/.local/share/flatpak@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/var/lib/nfs@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/var/lib/NetworkManager@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/keystore@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/srv@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/var/games@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/var/mail@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/var/www@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/usr/local@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot "zroot/var/lib/AccountsService@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        sudo zfs snapshot -r "medialib@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        zfs list -t snapshot
 | 
			
		||||
        # @NOTE: reccommended w option for zfs send
 | 
			
		||||
    else
 | 
			
		||||
        sudo zfs snapshot "${1}@${DATE_OF_ZFS_SNAPSHOT}"
 | 
			
		||||
        zfs list -t snapshot | grep "$1"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
zeject () {
 | 
			
		||||
    if [ -z "$1" ]; then
 | 
			
		||||
        exit 1
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    sudo zpool export "$1"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ffcompress ()  {
 | 
			
		||||
    if [ -z "$2" ]; then
 | 
			
		||||
        CONVCODEC="libx265"
 | 
			
		||||
    else
 | 
			
		||||
        CONVCODEC=$2
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    ffmpeg -i "$1" -c:v "$CONVCODEC" -preset veryfast "new-${1}"
 | 
			
		||||
    rm "$1"
 | 
			
		||||
    mv "new-${1}" "$1"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
z-apt-clean () {
 | 
			
		||||
    zfs list -t snapshot | grep 'apt-' | sed 's| .*$||g' | head -n -5 | xargs -d '\n' -I {} sudo zfs destroy {}
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user