mirror of
https://github.com/olexsmir/dotfiles.git
synced 2026-01-15 16:51:34 +02:00
Update install.sh and add zsh, tmux config
This commit is contained in:
parent
d6d447ed32
commit
00a1fea51b
4 changed files with 1581 additions and 46 deletions
81
install.sh
81
install.sh
|
|
@ -1,48 +1,43 @@
|
||||||
#/bin/bash
|
#!/bin/bash
|
||||||
read -p "\e[31m All your git, vim, bash, tmux, zsh settings will be deleted [y/n]" CONTINUE
|
read -p "All your git, vim, bash, tmux, zsh settings will be deleted [y/n]" CONTINUE
|
||||||
if [[ "$CONTINUE" == "y" ]]; then
|
|
||||||
|
if [[ "$CONTINUE" = "y" ]] || [[ "$CONTINUE" = "Y" ]]; then
|
||||||
rm -rf ~/.vimrc ~/.vim
|
rm -rf ~/.vimrc ~/.vim
|
||||||
rm -rf ~/.gitconfig ~/.git*
|
rm -rf ~/.gitconfig ~/.git
|
||||||
rm -rf ~/.bashrc ~/.bash*
|
rm -rf ~/.bashrc ~/.bash
|
||||||
rm -rf ~/.tmux ~/.tmux*
|
rm -rf ~/.tmux ~/.tmux
|
||||||
rm -rf ~/.zshrc ~/.oh-my-zsh
|
rm -rf ~/.zshrci
|
||||||
|
fi
|
||||||
|
|
||||||
read -p "Install vim config [y/n]: " VIM_CONF
|
read -p "Install vim config [y/n]: " VIM_CONF
|
||||||
read -p "Install git config [y/n]: " GIT_CONF
|
if [[ "$VIM_CONF" = "y" ]] || [[ "$VIM_CONF" = "Y" ]]; then
|
||||||
read -p "Install bash config [y/n]: " BASH_CONF
|
|
||||||
read -p "Intall tmux config [y/n]: " TMUX_CONF
|
|
||||||
read -p "Install zsh config [y/n]: " ZSH_CONF
|
|
||||||
|
|
||||||
cd ~/.dotfiles
|
|
||||||
if [[ "$VIM_CONF" = "y" ]]; then
|
|
||||||
sudo apt-get install vim vim-gui-common curl -y
|
sudo apt-get install vim vim-gui-common curl -y
|
||||||
curl -fLo ~.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
curl -fLo ~.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
||||||
ln vimrc ~/.vimrc
|
mv vimrc ~/.vimrc
|
||||||
#vim +source~/.vimrc +PlugInstall
|
fi
|
||||||
elif [[ "$GIT_CONF" = "y" ]]; then
|
|
||||||
ln gitconfig ~/.gitconfig
|
read -p "Install git config [y/n]: " GIT_CONF
|
||||||
ln gitignore_global ~/.gitignore_global
|
if [[ "$GIT_CONF" = "y" ]] || [[ "$GIT_CONF" = "Y" ]] ; then
|
||||||
elif [[ "$BASH_CONF" = "y" ]]; then
|
mv gitconfig ~/.gitconfig
|
||||||
sudo apt-get install bash -y
|
mv gitignore_global ~/.gitignore_global
|
||||||
ln bashrc ~/.bashrc
|
fi
|
||||||
elif [[ "$TMUX_CONF" = "y" ]]; then
|
|
||||||
sudo apt-get install tmux -y
|
read -p "Install bash config [y/n]: " BASH_CONF
|
||||||
git clone https://github.com/gpakosz/.tmux.git ~/.tmux
|
if [[ "$BASH_CONF" = "y" ]] || [[ "$BASH_CONF" = "Y" ]]; then
|
||||||
mv ~/.tmux/.tmux.conf ~/.tmux.conf
|
sudo apt-get install bash -y
|
||||||
mv ~/.tmux/.tmux.conf.local ~/.tmux.conf.local
|
mv bashrc ~/.bashrc
|
||||||
elif [[ "$ZSH_CONF" = "y" ]]; then
|
fi
|
||||||
sudo apt-get install zsh curl -y
|
|
||||||
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
read -p "Intall tmux config [y/n]: " TMUX_CONF
|
||||||
echo "alias cls='clear'" >> ~/.zshrc
|
if [[ "$TMUX_CONF" = "y" ]] || [[ "$TMUX_CONF" = "y" ]]; then
|
||||||
echo "alias sl='ls'" >> ~/.zshrc
|
sudo apt-get install tmux -y
|
||||||
echo "alias cd..='cd ..'" >> ~/.zshrc
|
mv tmux.conf ~/.tmux.conf
|
||||||
echo "alias py='python3'" >> ~/.zshrc
|
mv tmux.conf.local ~/.tmux.conf.local
|
||||||
echo "alias py3='python3'" >> ~/.zshrc
|
fi
|
||||||
echo "alias ipy='ipython3'" >> ~/.zshrc
|
|
||||||
echo "alias ipy3='ipython3'" >> ~/.zshrc
|
read -p "Install zsh config [y/n]: " ZSH_CONF
|
||||||
sed -i "s/plugins=(git)/plugins=(autopep8 djando pip git tmux docker)"
|
if [[ "$ZSH_CONF" = "y" ]] || [[ "$ZSH_CONF" = "Y" ]]; then
|
||||||
sed -i "s/ZSH_THEME=\"robbyrussell\"/ZSH_THEME=\"simple\"" ~/.zshrc
|
sudo apt-get install zsh curl git -y
|
||||||
else
|
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
||||||
echo ""
|
mv zshrc ~/.zshrc
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
266
tmux.conf.local
Normal file
266
tmux.conf.local
Normal file
|
|
@ -0,0 +1,266 @@
|
||||||
|
# -- windows & pane creation ---------------------------------------------------
|
||||||
|
|
||||||
|
# new window retains current path, possible values are:
|
||||||
|
tmux_conf_new_window_retain_current_path=false
|
||||||
|
|
||||||
|
# new pane retains current path, possible values are:
|
||||||
|
tmux_conf_new_pane_retain_current_path=true
|
||||||
|
|
||||||
|
# new pane tries to reconnect ssh sessions (experimental), possible values are:
|
||||||
|
tmux_conf_new_pane_reconnect_ssh=false
|
||||||
|
|
||||||
|
# prompt for session name when creating a new session, possible values are:
|
||||||
|
tmux_conf_new_session_prompt=false
|
||||||
|
|
||||||
|
|
||||||
|
# -- display -------------------------------------------------------------------
|
||||||
|
|
||||||
|
# RGB 24-bit colour support (tmux >= 2.2), possible values are:
|
||||||
|
tmux_conf_theme_24b_colour=false
|
||||||
|
|
||||||
|
# window style
|
||||||
|
tmux_conf_theme_window_fg='default'
|
||||||
|
tmux_conf_theme_window_bg='default'
|
||||||
|
|
||||||
|
# highlight focused pane (tmux >= 2.1), possible values are:
|
||||||
|
tmux_conf_theme_highlight_focused_pane=false
|
||||||
|
|
||||||
|
# focused pane colours:
|
||||||
|
tmux_conf_theme_focused_pane_fg='default'
|
||||||
|
tmux_conf_theme_focused_pane_bg='#0087d7' # light blue
|
||||||
|
|
||||||
|
# pane border style, possible values are:
|
||||||
|
tmux_conf_theme_pane_border_style=thin
|
||||||
|
|
||||||
|
# pane borders colours:
|
||||||
|
tmux_conf_theme_pane_border='#444444' # gray
|
||||||
|
tmux_conf_theme_pane_active_border='#00afff' # light blue
|
||||||
|
|
||||||
|
# pane indicator colours
|
||||||
|
tmux_conf_theme_pane_indicator='#00afff' # light blue
|
||||||
|
tmux_conf_theme_pane_active_indicator='#00afff' # light blue
|
||||||
|
|
||||||
|
# status line style
|
||||||
|
tmux_conf_theme_message_fg='#000000' # black
|
||||||
|
tmux_conf_theme_message_bg='#ffff00' # yellow
|
||||||
|
tmux_conf_theme_message_attr='bold'
|
||||||
|
|
||||||
|
# status line command style (<prefix> : Escape)
|
||||||
|
tmux_conf_theme_message_command_fg='#ffff00' # yellow
|
||||||
|
tmux_conf_theme_message_command_bg='#000000' # black
|
||||||
|
tmux_conf_theme_message_command_attr='bold'
|
||||||
|
|
||||||
|
# window modes style
|
||||||
|
tmux_conf_theme_mode_fg='#000000' # black
|
||||||
|
tmux_conf_theme_mode_bg='#ffff00' # yellow
|
||||||
|
tmux_conf_theme_mode_attr='bold'
|
||||||
|
|
||||||
|
# status line style
|
||||||
|
tmux_conf_theme_status_fg='#8a8a8a' # light gray
|
||||||
|
tmux_conf_theme_status_bg='#080808' # dark gray
|
||||||
|
tmux_conf_theme_status_attr='none'
|
||||||
|
|
||||||
|
# terminal title
|
||||||
|
# - built-in variables are:
|
||||||
|
# - #{circled_window_index}
|
||||||
|
# - #{circled_session_name}
|
||||||
|
# - #{hostname}
|
||||||
|
# - #{hostname_ssh}
|
||||||
|
# - #{username}
|
||||||
|
# - #{username_ssh}
|
||||||
|
tmux_conf_theme_terminal_title='#h ❐ #S ● #I #W'
|
||||||
|
|
||||||
|
# window status style
|
||||||
|
# - built-in variables are:
|
||||||
|
# - #{circled_window_index}
|
||||||
|
# - #{circled_session_name}
|
||||||
|
# - #{hostname}
|
||||||
|
# - #{hostname_ssh}
|
||||||
|
# - #{username}
|
||||||
|
# - #{username_ssh}
|
||||||
|
tmux_conf_theme_window_status_fg='#8a8a8a' # light gray
|
||||||
|
tmux_conf_theme_window_status_bg='#080808' # dark gray
|
||||||
|
tmux_conf_theme_window_status_attr='none'
|
||||||
|
tmux_conf_theme_window_status_format='#I #W'
|
||||||
|
#tmux_conf_theme_window_status_format='#{circled_window_index} #W'
|
||||||
|
#tmux_conf_theme_window_status_format='#I #W#{?window_bell_flag,🔔,}#{?window_zoomed_flag,🔍,}'
|
||||||
|
|
||||||
|
# window current status style
|
||||||
|
# - built-in variables are:
|
||||||
|
# - #{circled_window_index}
|
||||||
|
# - #{circled_session_name}
|
||||||
|
# - #{hostname}
|
||||||
|
# - #{hostname_ssh}
|
||||||
|
# - #{username}
|
||||||
|
# - #{username_ssh}
|
||||||
|
tmux_conf_theme_window_status_current_fg='#000000' # black
|
||||||
|
tmux_conf_theme_window_status_current_bg='#00afff' # light blue
|
||||||
|
tmux_conf_theme_window_status_current_attr='bold'
|
||||||
|
tmux_conf_theme_window_status_current_format='#I #W'
|
||||||
|
#tmux_conf_theme_window_status_current_format='#{circled_window_index} #W'
|
||||||
|
#tmux_conf_theme_window_status_current_format='#I #W#{?window_zoomed_flag,🔍,}'
|
||||||
|
|
||||||
|
# window activity status style
|
||||||
|
tmux_conf_theme_window_status_activity_fg='default'
|
||||||
|
tmux_conf_theme_window_status_activity_bg='default'
|
||||||
|
tmux_conf_theme_window_status_activity_attr='underscore'
|
||||||
|
|
||||||
|
# window bell status style
|
||||||
|
tmux_conf_theme_window_status_bell_fg='#ffff00' # yellow
|
||||||
|
tmux_conf_theme_window_status_bell_bg='default'
|
||||||
|
tmux_conf_theme_window_status_bell_attr='blink,bold'
|
||||||
|
|
||||||
|
# window last status style
|
||||||
|
tmux_conf_theme_window_status_last_fg='#00afff' # light blue
|
||||||
|
tmux_conf_theme_window_status_last_bg='default'
|
||||||
|
tmux_conf_theme_window_status_last_attr='none'
|
||||||
|
|
||||||
|
# status left/right sections separators
|
||||||
|
tmux_conf_theme_left_separator_main=''
|
||||||
|
tmux_conf_theme_left_separator_sub='|'
|
||||||
|
tmux_conf_theme_right_separator_main=''
|
||||||
|
tmux_conf_theme_right_separator_sub='|'
|
||||||
|
#tmux_conf_theme_left_separator_main='\uE0B0' # /!\ you don't need to install Powerline
|
||||||
|
#tmux_conf_theme_left_separator_sub='\uE0B1' # you only need fonts patched with
|
||||||
|
#tmux_conf_theme_right_separator_main='\uE0B2' # Powerline symbols or the standalone
|
||||||
|
#tmux_conf_theme_right_separator_sub='\uE0B3' # PowerlineSymbols.otf font, see README.md
|
||||||
|
|
||||||
|
# status left/right content:
|
||||||
|
# - separate main sections with '|'
|
||||||
|
# - separate subsections with ','
|
||||||
|
# - built-in variables are:
|
||||||
|
# - #{battery_bar}
|
||||||
|
# - #{battery_hbar}
|
||||||
|
# - #{battery_percentage}
|
||||||
|
# - #{battery_status}
|
||||||
|
# - #{battery_vbar}
|
||||||
|
# - #{circled_session_name}
|
||||||
|
# - #{hostname_ssh}
|
||||||
|
# - #{hostname}
|
||||||
|
# - #{loadavg}
|
||||||
|
# - #{pairing}
|
||||||
|
# - #{prefix}
|
||||||
|
# - #{root}
|
||||||
|
# - #{synchronized}
|
||||||
|
# - #{uptime_y}
|
||||||
|
# - #{uptime_d} (modulo 365 when #{uptime_y} is used)
|
||||||
|
# - #{uptime_h}
|
||||||
|
# - #{uptime_m}
|
||||||
|
# - #{uptime_s}
|
||||||
|
# - #{username}
|
||||||
|
# - #{username_ssh}
|
||||||
|
tmux_conf_theme_status_left=' ❐ #S |'
|
||||||
|
tmux_conf_theme_status_right='#{prefix}#{pairing}#{synchronized} , %R , %d %b | #{username}#{root} '
|
||||||
|
|
||||||
|
# status left style
|
||||||
|
tmux_conf_theme_status_left_fg='#000000,#e4e4e4,#e4e4e4' # black, white , white
|
||||||
|
tmux_conf_theme_status_left_bg='#ffff00,#ff00af,#00afff' # yellow, pink, white blue
|
||||||
|
tmux_conf_theme_status_left_attr='bold,none,none'
|
||||||
|
|
||||||
|
# status right style
|
||||||
|
tmux_conf_theme_status_right_fg='#8a8a8a,#e4e4e4,#000000' # light gray, white, black
|
||||||
|
tmux_conf_theme_status_right_bg='#080808,#d70000,#e4e4e4' # dark gray, red, white
|
||||||
|
tmux_conf_theme_status_right_attr='none,none,bold'
|
||||||
|
|
||||||
|
# pairing indicator
|
||||||
|
tmux_conf_theme_pairing='👓 ' # U+1F453
|
||||||
|
tmux_conf_theme_pairing_fg='none'
|
||||||
|
tmux_conf_theme_pairing_bg='none'
|
||||||
|
tmux_conf_theme_pairing_attr='none'
|
||||||
|
|
||||||
|
# prefix indicator
|
||||||
|
tmux_conf_theme_prefix='⌨ ' # U+2328
|
||||||
|
tmux_conf_theme_prefix_fg='none'
|
||||||
|
tmux_conf_theme_prefix_bg='none'
|
||||||
|
tmux_conf_theme_prefix_attr='none'
|
||||||
|
|
||||||
|
# root indicator
|
||||||
|
tmux_conf_theme_root='!'
|
||||||
|
tmux_conf_theme_root_fg='none'
|
||||||
|
tmux_conf_theme_root_bg='none'
|
||||||
|
tmux_conf_theme_root_attr='bold,blink'
|
||||||
|
|
||||||
|
# synchronized indicator
|
||||||
|
tmux_conf_theme_synchronized='🔒' # U+1F512
|
||||||
|
tmux_conf_theme_synchronized_fg='none'
|
||||||
|
tmux_conf_theme_synchronized_bg='none'
|
||||||
|
tmux_conf_theme_synchronized_attr='none'
|
||||||
|
|
||||||
|
# battery bar symbols
|
||||||
|
tmux_conf_battery_bar_symbol_full='◼'
|
||||||
|
tmux_conf_battery_bar_symbol_empty='◻'
|
||||||
|
#tmux_conf_battery_bar_symbol_full='♥'
|
||||||
|
#tmux_conf_battery_bar_symbol_empty='·'
|
||||||
|
|
||||||
|
# battery bar length (in number of symbols), possible values are:
|
||||||
|
# - auto
|
||||||
|
# - a number, e.g. 5
|
||||||
|
tmux_conf_battery_bar_length='auto'
|
||||||
|
|
||||||
|
# battery bar palette, possible values are:
|
||||||
|
# - gradient (default)
|
||||||
|
# - heat
|
||||||
|
# - 'colour_full_fg,colour_empty_fg,colour_bg'
|
||||||
|
tmux_conf_battery_bar_palette='gradient'
|
||||||
|
#tmux_conf_battery_bar_palette='#d70000,#e4e4e4,#000000' # red, white, black
|
||||||
|
|
||||||
|
# battery hbar palette, possible values are:
|
||||||
|
# - gradient (default)
|
||||||
|
# - heat
|
||||||
|
# - 'colour_low,colour_half,colour_full'
|
||||||
|
tmux_conf_battery_hbar_palette='gradient'
|
||||||
|
#tmux_conf_battery_hbar_palette='#d70000,#ff5f00,#5fff00' # red, orange, green
|
||||||
|
|
||||||
|
# battery vbar palette, possible values are:
|
||||||
|
# - gradient (default)
|
||||||
|
# - heat
|
||||||
|
# - 'colour_low,colour_half,colour_full'
|
||||||
|
tmux_conf_battery_vbar_palette='gradient'
|
||||||
|
#tmux_conf_battery_vbar_palette='#d70000,#ff5f00,#5fff00' # red, orange, green
|
||||||
|
|
||||||
|
# symbols used to indicate whether battery is charging or discharging
|
||||||
|
tmux_conf_battery_status_charging='↑' # U+2191
|
||||||
|
tmux_conf_battery_status_discharging='↓' # U+2193
|
||||||
|
#tmux_conf_battery_status_charging='⚡ ' # U+26A1
|
||||||
|
#tmux_conf_battery_status_charging='🔌 ' # U+1F50C
|
||||||
|
#tmux_conf_battery_status_discharging='🔋 ' # U+1F50B
|
||||||
|
|
||||||
|
# clock style (when you hit <prefix> + t)
|
||||||
|
# you may want to use %I:%M %p in place of %R in tmux_conf_theme_status_right
|
||||||
|
tmux_conf_theme_clock_colour='#00afff' # light blue
|
||||||
|
tmux_conf_theme_clock_style='24'
|
||||||
|
|
||||||
|
|
||||||
|
# -- clipboard -----------------------------------------------------------------
|
||||||
|
|
||||||
|
# in copy mode, copying selection also copies to the OS clipboard
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
# on macOS, this requires installing reattach-to-user-namespace, see README.md
|
||||||
|
# on Linux, this requires xsel or xclip
|
||||||
|
tmux_conf_copy_to_os_clipboard=false
|
||||||
|
|
||||||
|
|
||||||
|
# -- user customizations -------------------------------------------------------
|
||||||
|
# this is the place to override or undo settings
|
||||||
|
|
||||||
|
# increase history size
|
||||||
|
#set -g history-limit 10000
|
||||||
|
|
||||||
|
# start with mouse mode enabled
|
||||||
|
#set -g mouse on
|
||||||
|
|
||||||
|
# force Vi mode
|
||||||
|
# really you should export VISUAL or EDITOR environment variable, see manual
|
||||||
|
#set -g status-keys vi
|
||||||
|
#set -g mode-keys vi
|
||||||
|
|
||||||
|
# replace C-b by C-a instead of using both prefixes
|
||||||
|
# set -gu prefix2
|
||||||
|
# unbind C-a
|
||||||
|
# unbind C-b
|
||||||
|
# set -g prefix C-a
|
||||||
|
# bind C-a send-prefix
|
||||||
|
|
||||||
|
# move status line to top
|
||||||
|
#set -g status-position top
|
||||||
51
zshrc
Normal file
51
zshrc
Normal file
|
|
@ -0,0 +1,51 @@
|
||||||
|
export ZSH="/home/sasha/.oh-my-zsh"
|
||||||
|
#export ZSH="/root/.oh-my-zsh"
|
||||||
|
|
||||||
|
ZSH_THEME="simple"
|
||||||
|
#ZSH_THEME="bureau"
|
||||||
|
|
||||||
|
# Uncomment the following line to use case-sensitive completion.
|
||||||
|
#CASE_SENSITIVE="true"
|
||||||
|
|
||||||
|
# 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="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to automatically update without prompting.
|
||||||
|
#DISABLE_UPDATE_PROMPT="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to change how often to auto-update (in days).
|
||||||
|
export UPDATE_ZSH_DAYS=24
|
||||||
|
|
||||||
|
# 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="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to disable auto-setting terminal title.
|
||||||
|
#DISABLE_AUTO_TITLE="true"
|
||||||
|
|
||||||
|
# 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"
|
||||||
|
|
||||||
|
plugins=( autopep8 django pip node npm docker git tmux )
|
||||||
|
source $ZSH/oh-my-zsh.sh
|
||||||
|
|
||||||
|
# User configuration
|
||||||
|
|
||||||
|
# You may need to manually set your language environment
|
||||||
|
#export LANG=en_US.UTF-8
|
||||||
|
|
||||||
|
alias cls='clear'
|
||||||
|
alias sl='ls'
|
||||||
|
alias cd..='cd ..'
|
||||||
|
alias ipy='ipython3'
|
||||||
|
alias ipy3='ipython3'
|
||||||
|
alias py='python3'
|
||||||
|
alias py3='python3'
|
||||||
Loading…
Add table
Add a link
Reference in a new issue