-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall.sh
executable file
·58 lines (47 loc) · 1.24 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
# ingore error continue command until finish
set -e
# install nix
curl -L https://nixos.org/nix/install | sh
# source nix
. ~/.nix-profile/etc/profile.d/nix.sh
# install packages
nix-env -iA \
nixpkgs.zsh \
nixpkgs.git \
nixpkgs.neovim \
nixpkgs.tmux \
nixpkgs.stow \
nixpkgs.yarn \
nixpkgs.fzf \
nixpkgs.ripgrep \
nixpkgs.bat \
nixpkgs.gnumake \
nixpkgs.gcc \
nixpkgs.direnv \
nixpkgs.nodePackages.npm
# add zsh as a login shell
command -v zsh | sudo tee -a /etc/shells
# use zsh as default shell
sudo chsh -s $(which zsh) $USER
# install p10k
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ~/powerlevel10k
stow p10k
# install oh-my-zsh
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# symlink zsh
rm -rf ~/.zshrc || true
rm -rf ~/.zshrc_plugins.txt || true
stow zsh || true
source ~/.zshrc || true
# install tmux plugin manager and its config
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
rm -rf ~/.tmux.conf
stow tmux
# install vundle nvim plugin manager
git clone https://github.com/VundleVim/Vundle.vim.git ~/.config/nvim/bundle/Vundle.vim
# Use kitty terminal on MacOS
[ `uname -s` = 'Darwin' ] && stow kitty
# stow dotfiles
stow kitty
stow nvim
stow switchControl