mirror of
https://github.com/ivabus/dotfiles
synced 2024-11-10 02:05:16 +03:00
Add quick environment generator
This commit is contained in:
parent
ac79b463ca
commit
e3abbb5607
32
env/.zshrc
vendored
Normal file
32
env/.zshrc
vendored
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
|
||||||
|
export ZSH="$HOME/.env/oh-my-zsh"
|
||||||
|
|
||||||
|
ZSH_THEME="ivabus"
|
||||||
|
ENABLE_CORRECTION="true"
|
||||||
|
plugins=(git zsh-syntax-highlighting)
|
||||||
|
|
||||||
|
# Function to quickly show stats on systemload, usage of filesystems, usage of ram/swap and uptime
|
||||||
|
stats () {
|
||||||
|
AVLD=$(cut -d " " -f1-3 /proc/loadavg)
|
||||||
|
USEDMEM=$(free -h | grep Mem | awk '{print $3 " / " $2}')
|
||||||
|
USEDSWAP=$(free -h | grep Swap | awk '{ print $3 " / " $2}')
|
||||||
|
USEDSTRG=$(df / -h | tail -n 1 | awk '{print $3}')
|
||||||
|
USEDSTRGPERC=$(df / -h | tail -n 1 | awk '{print $5}')
|
||||||
|
STRG=$(df / -h | tail -n 1 | awk '{print $2}')
|
||||||
|
USEDSTRGHOME=$(df /home -h | tail -n 1 | awk '{print $3}')
|
||||||
|
USEDSTRGPERCHOME=$(df /home -h | tail -n 1 | awk '{print $5}')
|
||||||
|
STRGHOME=$(df /home -h | tail -n 1 | awk '{print $2}')
|
||||||
|
UPTIME=$(uptime -p)
|
||||||
|
printf "\e[0;34msystem load:\e[m\t${AVLD}\n"
|
||||||
|
printf "\e[0;34musage of /:\e[m\t${USEDSTRGPERC}% (${USEDSTRG}/${STRG})\n"
|
||||||
|
printf "\e[0;34musage of /home:\e[m\t${USEDSTRGPERCHOME}% (${USEDSTRGHOME}/${STRGHOME})\n"
|
||||||
|
printf "\e[0;34mmemory usage:\e[m\t${USEDMEM}\n"
|
||||||
|
printf "\e[0;34mswap usage:\e[m\t${USEDSWAP}\n"
|
||||||
|
printf "\e[0;34muptime:\e[m\t\t${UPTIME}\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
source $ZSH/oh-my-zsh.sh
|
||||||
|
export REPORTTIME=10
|
||||||
|
alias vi="nvim"
|
||||||
|
alias vim="nvim"
|
||||||
|
alias timestamp='date -u +%FT%TZ'
|
17
env/nvim/init.vim
vendored
Normal file
17
env/nvim/init.vim
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
filetype plugin indent on
|
||||||
|
set showmatch
|
||||||
|
set hlsearch
|
||||||
|
set incsearch
|
||||||
|
set autoindent
|
||||||
|
set expandtab
|
||||||
|
set tabstop=4
|
||||||
|
set shiftwidth=4
|
||||||
|
set number
|
||||||
|
set wildmode=longest, list
|
||||||
|
set cc=80
|
||||||
|
syntax on
|
||||||
|
set noswapfile
|
||||||
|
set backupdir=~/.cache/vim
|
||||||
|
set completeopt=noinsert,menuone,noselect
|
||||||
|
set cursorline
|
||||||
|
set relativenumber
|
76
tools/env.sh
Executable file
76
tools/env.sh
Executable file
|
@ -0,0 +1,76 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
install_compilers() {
|
||||||
|
echo "=> Installing rust"
|
||||||
|
$TEA +rust-lang.org zsh -c "exit"
|
||||||
|
echo "=> Installing llvm"
|
||||||
|
$TEA +llvm.org zsh -c "exit"
|
||||||
|
echo "=> Installing python"
|
||||||
|
$TEA +python.org zsh -c "exit"
|
||||||
|
}
|
||||||
|
|
||||||
|
install_tools() {
|
||||||
|
echo "=> Installing git"
|
||||||
|
$TEA +git-scm.org zsh -c "exit"
|
||||||
|
echo "=> Installing GitHub CLI"
|
||||||
|
$TEA +cli.github.com zsh -c "exit"
|
||||||
|
echo "=> Installing make & automake & cmake & meson & ninja"
|
||||||
|
$TEA +gnu.org/make zsh -c "exit"
|
||||||
|
$TEA +gnu.org/automake zsh -c "exit"
|
||||||
|
$TEA +cmake.org zsh -c "exit"
|
||||||
|
$TEA +mesonbuild.com zsh -c "exit"
|
||||||
|
$TEA +ninja-build.org zsh -c "exit"
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "=> This script will create small environment"
|
||||||
|
echo " with dotfiles from ivabus/ivabus-dotfiles"
|
||||||
|
echo ":: Press enter for continue"
|
||||||
|
read
|
||||||
|
|
||||||
|
echo "=> Installing env to ~/.env"
|
||||||
|
mkdir -p ~/.env/bin > /dev/null 2>&1
|
||||||
|
|
||||||
|
TEA_PREFIX=~/.env/tea
|
||||||
|
TEA=~/.env/tea/tea.xyz/v0/bin/tea
|
||||||
|
PATH=$PATH
|
||||||
|
|
||||||
|
echo "=> Installing static zsh"
|
||||||
|
sh -c "$(curl -fsSL https://raw.githubusercontent.com/romkatv/zsh-bin/master/install)" -q -d ~/.env -e no
|
||||||
|
PATH="$HOME/.env/bin:$PATH"
|
||||||
|
|
||||||
|
echo "=> Installing tea"
|
||||||
|
sh <(curl https://tea.xyz) -s
|
||||||
|
echo "=> Installing neovim"
|
||||||
|
$TEA +neovim.io zsh -c "exit"
|
||||||
|
echo "=> Installing htop"
|
||||||
|
$TEA +htop.dev zsh -c "exit"
|
||||||
|
|
||||||
|
|
||||||
|
echo -n ":: Would you like to install compilers/interpretators (LLVM, Rust, Python)? (Y/n): "
|
||||||
|
read $INSTALL_COMPILERS
|
||||||
|
if [ "${INSTALL_COMPILERS^^}" = "Y" ]; then
|
||||||
|
install_compilers
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n ":: Would you like to install development tools (git, github cli, make/cmake/meson/ninja)? (Y/n): "
|
||||||
|
read $INSTALL_TOOLS
|
||||||
|
if [ "${INSTALL_TOOLS^^}" = "Y" ]; then
|
||||||
|
install_tools
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "=> Configuring \$PATH"
|
||||||
|
for i in "tea" "nvim" "clang" "clang++" "lldb" "rustc" "cargo" "htop" "make" "cmake" "automake" "meson" "ninja" "git" "gh"
|
||||||
|
do
|
||||||
|
ln -s $TEA ~/.env/bin/$i
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "=> Installing dotfiles"
|
||||||
|
git clone https://github.com/ivabus/ivabus-dotfiles ~/.env/dotfiles
|
||||||
|
sh ~/.env/dotfiles/tools/link_env.sh
|
||||||
|
ZSH="$HOME/.env/oh-my-zsh" sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended > /dev/null 2>&1
|
||||||
|
curl -fsSL https://raw.githubusercontent.com/ivabus/ivabus-zsh-theme/master/ivabus.zsh-theme -o $HOME/.env/oh-my-zsh/custom/themes/ivabus.zsh-theme > /dev/null 2>&1
|
||||||
|
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $HOME/.env/oh-my-zsh/custom/plugins/zsh-syntax-highlighting > /dev/null 2>&1
|
||||||
|
|
||||||
|
echo "=> Environment installed to ~/.env"
|
||||||
|
echo " To start environment just type:"
|
||||||
|
echo " PATH=\"\$HOME/.env/bin:\$PATH\" zsh"
|
11
tools/link_env.sh
Normal file
11
tools/link_env.sh
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
echo "=> Linking zshrc"
|
||||||
|
if [ -f ~/.zshrc ]; then
|
||||||
|
echo "=> Moving old zshrc to ~/.zshrc.old"
|
||||||
|
mv ~/.zshrc ~/.zshrc.old
|
||||||
|
fi
|
||||||
|
ln -s ~/.env/dotfiles/.zshrc ~/.zshrc
|
||||||
|
echo "=> Linking neovim files"
|
||||||
|
rm -rf ${XDG_CONFIG_HOME:-$HOME/.config}/nvim
|
||||||
|
ln -s ~/.env/dotfiles/nvim ${XDG_CONFIG_HOME:-$HOME/.config}/nvim
|
Loading…
Reference in a new issue