-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinit.sh
More file actions
78 lines (63 loc) · 1.94 KB
/
init.sh
File metadata and controls
78 lines (63 loc) · 1.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Ensure home is where the heart is
echo "XDG_CONFIG_HOME=$HOME" >> ~/.profile
if [ $(uname) == "Darwin" ]; then
xcode-select --install
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
fi
if [ $(uname) == "Linux" ]; then
apt-get update && apt-get install gcc clang -y
fi
## Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo "Installing all the things..."
brew install \
git \
alacritty \
neovim \
tmux \
bat \
fzf \
ripgrep \
wget \
curl \
node \
luarocks \
yamllint
# install omzsh
echo "Installing oh-my-zsh"
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# Grab some fonts
echo "Pulling down the terminal font..."
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.2/IBMPlexMono.zip
echo "Moving config files..."
case $($0) in
"/bin/zsh")
cp ~/.config/vim/.vimrc ~
cp ~/.config/omzsh/.zshrc ~
cp ~/.config/omzsh/.zsh_aliases ~
cp ~/.config/omzsh/.bash_aliases ~ # just in case
cp -v ~/.config/omzsh/custom_themes/refined.zsh-theme ~/.oh-my-zsh/custom/themes
;;
esac
# install luacheck so we can work on files
luarocks install luacheck
# install some language serves we need to install via npm
npm i -g vscode-langservers-extracted \
@tailwindcss/language-server \
bash-language-server \
eslint_d
# install rust
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
# install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# install zellij
cargo install --locked zellij
# global gitignore
git config --global core.excludesFile '~/.gitignore'
# global pyrightconfig
cp ~/.config/pyrightconfig.json ~/pyrightconfig.json
# global git aliases
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status