Init
This commit is contained in:
commit
ce9edb03b6
137
my_zsh.sh
Executable file
137
my_zsh.sh
Executable file
@ -0,0 +1,137 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Created by hmike
|
||||||
|
# https://gitlab.com/whitemike00/scripts/-/blob/master/install_zsh-omz.sh
|
||||||
|
|
||||||
|
############################ INSTALL <----------------------------*******************
|
||||||
|
# curl https://gist.githubusercontent.com/balmacefa/87818833c9ada45af09b5f8ac0b179a7/raw/908705adea903a1d34e999241fcf1e39c3c3f172/install_OhMyZSH_PowerLevel10k.sh | sh
|
||||||
|
|
||||||
|
# mod by: @balmacefa
|
||||||
|
|
||||||
|
set -o errexit
|
||||||
|
set -o pipefail
|
||||||
|
APPS="zsh git curl wget unzip"
|
||||||
|
OS=$(source /etc/os-release && echo "${ID}")
|
||||||
|
DATE=$(date '+%d.%m.%Y_%Hh%M')
|
||||||
|
|
||||||
|
# Installation of packages
|
||||||
|
case ${OS} in
|
||||||
|
"debian" | "ubuntu" | "linuxmint" | "pop")
|
||||||
|
sudo apt update && sudo apt install $APPS -y
|
||||||
|
;;
|
||||||
|
"arch" | "manjaro")
|
||||||
|
sudo pacman -Sy $APPS --noconfirm
|
||||||
|
;;
|
||||||
|
"fedora" | "centos" | "rhel")
|
||||||
|
sudo dnf install $APPS -y
|
||||||
|
;;
|
||||||
|
"solus")
|
||||||
|
sudo eopkg install $APPS -y
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo -e "\e[31mSystem can't be defined."
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Fonts installlation
|
||||||
|
if [[ ! -d /usr/share/fonts/hack ]]; then
|
||||||
|
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v2.1.0/Hack.zip -O "${HOME}"/hack.zip
|
||||||
|
unzip "${HOME}"/hack.zip -d "${HOME}"/hack && rm "$HOME"/hack.zip
|
||||||
|
find "${HOME}"/hack/ -iname "*Windows*" -exec rm {} \;
|
||||||
|
sudo mkdir -p /usr/share/fonts/hack
|
||||||
|
sudo mv "${HOME}"/hack/* /usr/share/fonts/hack
|
||||||
|
rmdir "${HOME}"/hack
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Change default shell
|
||||||
|
sudo chsh -s /usr/bin/zsh "${USER}"
|
||||||
|
|
||||||
|
# Backup old zshrc
|
||||||
|
if [[ -f "${HOME}"/.zshrc ]]; then
|
||||||
|
cp "${HOME}"/.zshrc "${HOME}"/.zshrc.backup_"${DATE}"
|
||||||
|
elif [[ ! -f "${HOME}"/.zshrc ]]; then
|
||||||
|
touch "${HOME}"/.zshrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Backup old installation of oh-my-zsh
|
||||||
|
if [[ -d "${HOME}"/.oh-my-zsh ]]; then
|
||||||
|
mv "${HOME}"/.oh-my-zsh "${HOME}"/.oh-my-zsh.backup_"${DATE}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Installation OhMyZsh + powerlevel10k + plugins
|
||||||
|
git clone https://github.com/ohmyzsh/ohmyzsh.git "${HOME}"/.oh-my-zsh
|
||||||
|
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
|
||||||
|
git clone https://github.com/zsh-users/zsh-completions ${ZSH_CUSTOM:=~/.oh-my-zsh/custom}/plugins/zsh-completions
|
||||||
|
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
|
||||||
|
git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k
|
||||||
|
|
||||||
|
echo '# Path to your oh-my-zsh installation
|
||||||
|
export ZSH="$HOME/.oh-my-zsh"
|
||||||
|
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||||
|
# Initialization code that may require console input (password prompts, [y/n]
|
||||||
|
# confirmations, etc.) must go above this block, everything else may go below.
|
||||||
|
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||||
|
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||||
|
fi
|
||||||
|
# Fix slowness of pastes with zsh-syntax-highlighting.zsh
|
||||||
|
pasteinit() {
|
||||||
|
OLD_SELF_INSERT=${${(s.:.)widgets[self-insert]}[2,3]}
|
||||||
|
zle -N self-insert url-quote-magic
|
||||||
|
}
|
||||||
|
pastefinish() {
|
||||||
|
zle -N self-insert $OLD_SELF_INSERT
|
||||||
|
}
|
||||||
|
zstyle :bracketed-paste-magic paste-init pasteinit
|
||||||
|
zstyle :bracketed-paste-magic paste-finish pastefinish
|
||||||
|
source ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
||||||
|
export ZSH_HIGHLIGHT_MAXLENGTH="60"
|
||||||
|
# ZSH Theme
|
||||||
|
ZSH_THEME="powerlevel10k/powerlevel10k"
|
||||||
|
# Uncomment the following line to use case-sensitive completion.
|
||||||
|
CASE_SENSITIVE="off"
|
||||||
|
# Uncomment the following line to use hyphen-insensitive completion.
|
||||||
|
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||||
|
HYPHEN_INSENSITIVE="true"
|
||||||
|
# Uncomment the following line to disable bi-weekly auto-update checks.
|
||||||
|
DISABLE_AUTO_UPDATE="off"
|
||||||
|
# Uncomment the following line to automatically update without prompting.
|
||||||
|
DISABLE_UPDATE_PROMPT="off"
|
||||||
|
# Uncomment the following line to change how often to auto-update (in days).
|
||||||
|
export UPDATE_ZSH_DAYS=15
|
||||||
|
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||||
|
DISABLE_MAGIC_FUNCTIONS="true"
|
||||||
|
# Uncomment the following line to disable colors in ls.
|
||||||
|
DISABLE_LS_COLORS="off"
|
||||||
|
# Uncomment the following line to disable auto-setting terminal title.
|
||||||
|
DISABLE_AUTO_TITLE="off"
|
||||||
|
# Uncomment the following line to enable command auto-correction.
|
||||||
|
ENABLE_CORRECTION="true"
|
||||||
|
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||||
|
COMPLETION_WAITING_DOTS="true"
|
||||||
|
# History time stamp
|
||||||
|
# You can set one of the optional three formats:
|
||||||
|
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||||
|
HIST_STAMPS="dd.mm.yyyy"
|
||||||
|
# ZSH plugins
|
||||||
|
plugins=(
|
||||||
|
git
|
||||||
|
zsh-autosuggestions
|
||||||
|
zsh-completions
|
||||||
|
zsh-syntax-highlighting)
|
||||||
|
source $ZSH/oh-my-zsh.sh
|
||||||
|
# User configuration
|
||||||
|
export MANPATH="/usr/local/man:$MANPATH"
|
||||||
|
# You may need to manually set your language environment
|
||||||
|
# export LANG=en_US.UTF-8
|
||||||
|
# Preferred editor for local and remote sessions
|
||||||
|
if [[ -n $SSH_CONNECTION ]]; then
|
||||||
|
export EDITOR='vim'
|
||||||
|
else
|
||||||
|
export EDITOR='vim'
|
||||||
|
fi
|
||||||
|
# Compilation flags
|
||||||
|
export ARCHFLAGS="-arch x86_64"
|
||||||
|
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||||
|
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh' > "${HOME}"/.zshrc
|
||||||
|
|
||||||
|
echo -e "\e[32mInstallation is finished you must relaunch your $USER session to apply the configurations.\n\e[32mTo get display of special characters, you must set up fonts in your terminal options.\e[0m"
|
Loading…
Reference in New Issue
Block a user