Updated .zshrc
This commit is contained in:
		@@ -1,188 +0,0 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					 | 
				
			||||||
# shellcheck disable=2045,2086
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
ZSHFOLDER=$HOME/.config/zsh
 | 
					 | 
				
			||||||
CONFIG="$HOME/.config"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Colours
 | 
					 | 
				
			||||||
RED='\033[0;31m'
 | 
					 | 
				
			||||||
GREEN='\033[0;0;32m'
 | 
					 | 
				
			||||||
NC='\033[0m'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function timestamp() {
 | 
					 | 
				
			||||||
    echo -e "${GREEN}[+]${NC} $(date +'%F %T') [INFO] $*"
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function err() {
 | 
					 | 
				
			||||||
    echo -e "${RED}[-] $(date +'%F %T') [ERROR] $*${NC}" >&2
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function command_start() {
 | 
					 | 
				
			||||||
    timestamp "Command $* has been started."
 | 
					 | 
				
			||||||
    if ! "$*"; then
 | 
					 | 
				
			||||||
        err "Command $* went wrong."
 | 
					 | 
				
			||||||
        exit
 | 
					 | 
				
			||||||
    fi
 | 
					 | 
				
			||||||
    timestamp "Command $* has been ended."
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function update_pip() {
 | 
					 | 
				
			||||||
    # Update the pip
 | 
					 | 
				
			||||||
    python3 -m pip install --upgrade pip --user
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_neovim_module_for_python() {
 | 
					 | 
				
			||||||
    # Python module in neovim
 | 
					 | 
				
			||||||
    pip3 install neovim --pre --user --force --quiet
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_pyright() {
 | 
					 | 
				
			||||||
    # Install pyright
 | 
					 | 
				
			||||||
    sudo npm -s -g i pyright --force
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_bash-language-server() {
 | 
					 | 
				
			||||||
    # Install bash-language-server
 | 
					 | 
				
			||||||
    sudo npm -s -g i bash-language-server --force
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_yaml-language-server() {
 | 
					 | 
				
			||||||
    # Install yaml-language-server
 | 
					 | 
				
			||||||
    sudo npm -s -g i yaml-language-server --force
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_shfmt() {
 | 
					 | 
				
			||||||
    # Install shfmt
 | 
					 | 
				
			||||||
    GO111MODULE=on go install mvdan.cc/sh/v3/cmd/shfmt@latest
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_terraform() {
 | 
					 | 
				
			||||||
    # Install terraform and terraform-ls
 | 
					 | 
				
			||||||
    GO111MODULE=on go install github.com/hashicorp/terraform@latest
 | 
					 | 
				
			||||||
    GO111MODULE=on go install github.com/hashicorp/terraform-ls@latest
 | 
					 | 
				
			||||||
    if [[ "$(uname)" == "Darwin" ]]; then
 | 
					 | 
				
			||||||
        brew install tflint -q
 | 
					 | 
				
			||||||
        brew install tfenv -q
 | 
					 | 
				
			||||||
    else
 | 
					 | 
				
			||||||
        curl -s https://raw.githubusercontent.com/terraform-linters/tflint/master/install_linux.sh | bash
 | 
					 | 
				
			||||||
    fi
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_terragrunt() {
 | 
					 | 
				
			||||||
    # Install terragrunt
 | 
					 | 
				
			||||||
    if [[ "$(uname)" == "Darwin" ]]; then
 | 
					 | 
				
			||||||
        brew install terragrunt -q
 | 
					 | 
				
			||||||
    else
 | 
					 | 
				
			||||||
        wget https://github.com/gruntwork-io/terragrunt/releases/latest/download/terragrunt_linux_amd64 -O $HOME/.local/bin/terragrunt
 | 
					 | 
				
			||||||
        chmod +x $HOME/.local/bin/terragrunt
 | 
					 | 
				
			||||||
    fi
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_shellcheck() {
 | 
					 | 
				
			||||||
    # Install shellcheck
 | 
					 | 
				
			||||||
    if [[ "$(uname)" == "Darwin" ]]; then
 | 
					 | 
				
			||||||
        brew install shellcheck -q
 | 
					 | 
				
			||||||
    else
 | 
					 | 
				
			||||||
        curl -s https://raw.githubusercontent.com/terraform-linters/tflint/master/install_linux.sh | bash
 | 
					 | 
				
			||||||
    fi
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_gopls() {
 | 
					 | 
				
			||||||
    # Install gopls
 | 
					 | 
				
			||||||
    GO111MODULE=on go install golang.org/x/tools/gopls@latest
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_black() {
 | 
					 | 
				
			||||||
    # Install black
 | 
					 | 
				
			||||||
    pip3 install black --pre --user --force --quiet
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_ansible() {
 | 
					 | 
				
			||||||
    # Install Ansible
 | 
					 | 
				
			||||||
    pip3 install ansible ansible-lint ansible-core --pre --user --force --quiet
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_ansible-language-server() {
 | 
					 | 
				
			||||||
    # Install ansible-language-server
 | 
					 | 
				
			||||||
    sudo npm -s -g i @ansible/ansible-language-server --force
 | 
					 | 
				
			||||||
    sudo npm -s -g i yaml-language-server --force
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_meraki_ansible() {
 | 
					 | 
				
			||||||
    # Install python, ansible module for meraki
 | 
					 | 
				
			||||||
    ansible-galaxy collection install cisco.meraki --force
 | 
					 | 
				
			||||||
    pip3 install meraki --user --force --quiet
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_azure_cli() {
 | 
					 | 
				
			||||||
    # Install azure_cli
 | 
					 | 
				
			||||||
    pip3 install azure-cli --pre --user --force --quiet
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function install_awscli() {
 | 
					 | 
				
			||||||
    # Install awscli
 | 
					 | 
				
			||||||
    pip3 install awscli --pre --user --force --quiet
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function update() {
 | 
					 | 
				
			||||||
    if [ -d $CONFIG/fzf ]; then
 | 
					 | 
				
			||||||
        FOLDER="$CONFIG/fzf"
 | 
					 | 
				
			||||||
        cd $FOLDER || err "Folder $FOLDER has been NOT found"
 | 
					 | 
				
			||||||
        git pull -q && timestamp "Pulling the $FOLDER configuration"
 | 
					 | 
				
			||||||
    else
 | 
					 | 
				
			||||||
        FOLDER="$CONFIG/fzf"
 | 
					 | 
				
			||||||
        git clone https://github.com/junegunn/fzf.git $FOLDER && timestamp "Cloning the FZF"
 | 
					 | 
				
			||||||
        git pull -q && timestamp "Pulling the $FOLDER configuration"
 | 
					 | 
				
			||||||
    fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if [ ! -d $ZSHFOLDER/aws ]; then
 | 
					 | 
				
			||||||
        curl -s https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/plugins/aws/aws.plugin.zsh \
 | 
					 | 
				
			||||||
            -o "$ZSHFOLDER"/aws/aws.plugin.zsh &&
 | 
					 | 
				
			||||||
            timestamp "Downloaded the newest version of aws plugin for zsh"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        curl -s https://raw.githubusercontent.com/Azure/azure-cli/dev/az.completion \
 | 
					 | 
				
			||||||
            -o "$ZSHFOLDER"/azure-cli/az.completion &&
 | 
					 | 
				
			||||||
            timestamp "Downloaded the newest version of az plugin for zsh"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        mkdir -p "$ZSHFOLDER/azure-cli" "$ZSHFOLDER/aws"
 | 
					 | 
				
			||||||
        cd $ZSHFOLDER || err "Folder $ZSHFOLDER has been NOT found"
 | 
					 | 
				
			||||||
        git clone https://github.com/popstas/zsh-command-time.git &&
 | 
					 | 
				
			||||||
            timestamp "Cloning the zsh-command-time"
 | 
					 | 
				
			||||||
        git clone https://github.com/zsh-users/zsh-syntax-highlighting.git &&
 | 
					 | 
				
			||||||
            timestamp "Cloning the zsh-syntax-highlighting"
 | 
					 | 
				
			||||||
        git clone https://github.com/zsh-users/zsh-autosuggestions.git &&
 | 
					 | 
				
			||||||
            timestamp "Cloning the zsh-autosuggestions"
 | 
					 | 
				
			||||||
    fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    for i in $(ls $ZSHFOLDER); do
 | 
					 | 
				
			||||||
        FOLDER="$ZSHFOLDER/$i"
 | 
					 | 
				
			||||||
        if [ -d "$FOLDER/.git" ]; then
 | 
					 | 
				
			||||||
            cd "$FOLDER" || err "Folder $FOLDER has been NOT found"
 | 
					 | 
				
			||||||
            git pull -q && timestamp "Pulling the $FOLDER configuration"
 | 
					 | 
				
			||||||
        fi
 | 
					 | 
				
			||||||
    done
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    curl -s https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/plugins/aws/aws.plugin.zsh -o "$ZSHFOLDER"/aws/aws.plugin.zsh && timestamp "Downloaded the newest version of aws plugin for zsh"
 | 
					 | 
				
			||||||
    curl -s https://raw.githubusercontent.com/Azure/azure-cli/dev/az.completion -o "$ZSHFOLDER"/azure-cli/az.completion && timestamp "Downloaded the newest version of az plugin for zsh"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function main() {
 | 
					 | 
				
			||||||
    command_start update_pip
 | 
					 | 
				
			||||||
    command_start install_pyright
 | 
					 | 
				
			||||||
    command_start install_bash-language-server
 | 
					 | 
				
			||||||
    command_start install_yaml-language-server
 | 
					 | 
				
			||||||
    command_start install_ansible-language-server
 | 
					 | 
				
			||||||
    command_start install_shfmt
 | 
					 | 
				
			||||||
    command_start install_shellcheck
 | 
					 | 
				
			||||||
    command_start install_gopls
 | 
					 | 
				
			||||||
    command_start install_terraform
 | 
					 | 
				
			||||||
    command_start install_terragrunt
 | 
					 | 
				
			||||||
    command_start install_azure_cli
 | 
					 | 
				
			||||||
    command_start install_black
 | 
					 | 
				
			||||||
    command_start install_ansible
 | 
					 | 
				
			||||||
    command_start install_meraki_ansible
 | 
					 | 
				
			||||||
    command_start update
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
main
 | 
					 | 
				
			||||||
							
								
								
									
										3
									
								
								.zshrc
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								.zshrc
									
									
									
									
									
								
							@@ -139,7 +139,7 @@ if [[ "$(uname)" == "Darwin" ]]; then
 | 
				
			|||||||
    alias pip='/opt/homebrew/bin/pip$PYTHONVERSION'
 | 
					    alias pip='/opt/homebrew/bin/pip$PYTHONVERSION'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    alias lsblk="diskutil list"
 | 
					    alias lsblk="diskutil list"
 | 
				
			||||||
    alias Update="~/.config/nvim/installer.sh; brew update; brew upgrade"
 | 
					    alias Update="~/.local/bin/Update-pkg; brew update; brew upgrade"
 | 
				
			||||||
    alias ls="ls -Gh"
 | 
					    alias ls="ls -Gh"
 | 
				
			||||||
    alias mpv="mpv --ytdl-raw-options="yes-playlist=" --no-resume-playback --ytdl-format='bestvideo[height<=?1080]+bestaudio/best'"
 | 
					    alias mpv="mpv --ytdl-raw-options="yes-playlist=" --no-resume-playback --ytdl-format='bestvideo[height<=?1080]+bestaudio/best'"
 | 
				
			||||||
    alias code="open -a 'Visual Studio Code'"
 | 
					    alias code="open -a 'Visual Studio Code'"
 | 
				
			||||||
@@ -166,6 +166,7 @@ alias vim="$EDITOR -p"
 | 
				
			|||||||
# Commands
 | 
					# Commands
 | 
				
			||||||
alias rsync="rsync -h --progress"
 | 
					alias rsync="rsync -h --progress"
 | 
				
			||||||
alias lg="lazygit"
 | 
					alias lg="lazygit"
 | 
				
			||||||
 | 
					alias ldocker="lazydocker"
 | 
				
			||||||
alias ls="ls -h --color=auto"
 | 
					alias ls="ls -h --color=auto"
 | 
				
			||||||
alias ll='ls -lha'
 | 
					alias ll='ls -lha'
 | 
				
			||||||
alias r="ranger"
 | 
					alias r="ranger"
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user