-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall.sh
executable file
·75 lines (63 loc) · 2.45 KB
/
install.sh
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
#!/usr/bin/env bash
##### PREQEQUISITES #####
# zsh
# neovim
# curl
# git
# eza
# zsh-autosuggestions
# zsh-syntax-highlighting
# silicon
##### NUSHELL SETUP #####
# nushell
# carapace-bin (via yay AUR package manager)
# Alaso need to make cache dir from carapace documentation
# zoxide init
# Determine OS
hostOS=$(uname -s)
macOS="Darwin"
linux="Linux"
# Brew install
if [[ "$hostOS" = "$macOS" ]]; then
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
fi
if [[ "$hostOS" = "$linux" ]] || [[ "$hostOS" = "$macOS" ]]; then
# Oh My Zsh install
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# Zoxide
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh
# Zoxide init
zoxide init zsh
# FZF install
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install
fi
# Starship install
curl -sS https://starship.rs/install.sh | sh
##### Set up symlinks #####
# Dotfiles
ln -fvs ~/.dotfiles/shell/.zshrc ~/.zshrc
ln -fvs ~/.dotfiles/shell/.zshenv ~/.zshenv
ln -fvs ~/.dotfiles/config/tmux/ ~/.config/tmux
ln -fvs ~/.dotfiles/shell/.vimrc ~/.vimrc
ln -fvs ~/.dotfiles/shell/.ideavimrc ~/.ideavimrc
ln -fvs ~/.dotfiles/config/starship.toml ~/.config/starship.toml
ln -fvs ~/.dotfiles/config/alacritty/ ~/.config/
ln -fvs ~/.dotfiles/config/wezterm/ ~/.config/wezterm
ln -fvs ~/.dotfiles/config/kanata/ ~/.config/kanata
# Change default shell and switch
chsh -s /usr/bin/zsh
# Brew installs
if [[ "$hostOS" = "$macOS" ]]; then
brew install eza zsh-autosuggestions zsh-syntax-highlighting neovim gh
fi
ln -fvs ~/.dotfiles/config/nushell/ ~/.config/
ln -fvs ~/.dotfiles/config/nvim/lazyvim/lua/config/* ~/.config/nvim/lua/config/
ln -fvs ~/.dotfiles/config/nvim/lazyvim/lua/plugins/* ~/.config/nvim/lua/plugins/
ln -fvs ~/.dotfiles/config/nvim/lazyvim/stylua.toml ~/.config/nvim/stylua.toml
# ln -fvs ~/.dotfiles/config/nvim/lua/options.lua ~/.config/nvim/lua/options.lua
# ln -fvs ~/.dotfiles/config/nvim/lua/chadrc.lua ~/.config/nvim/lua/chadrc.lua
# ln -fvs ~/.dotfiles/config/nvim/lua/configs/conform.lua ~/.config/nvim/lua/configs/conform.lua
# ln -fvs ~/.dotfiles/config/nvim/lua/configs/nushell.lua ~/.config/nvim/lua/configs/nushell.lua
# ln -fvs ~/.dotfiles/config/nvim/lua/configs/lspconfig.lua ~/.config/nvim/lua/configs/lspconfig.lua
# ln -fvs ~/.dotfiles/config/nvim/lua/plugins/init.lua ~/.config/nvim/lua/plugins/init.lua