-
Notifications
You must be signed in to change notification settings - Fork 0
/
quick-setup
executable file
·104 lines (65 loc) · 2.5 KB
/
quick-setup
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#!/bin/bash
# Author: Mudassir Ahmed
# Note:
# Setting up ssh for git might save you time
# You may need to log out to see certain changes
# This script only installs CLI apps for better portability
# TODO: stow the minimal configs
# TODO: add minimal option
# TODO: set up ssh interactivly
# TODO: env variables used for setup
## Install dependancies
# TODO: neovim nightly build install
sudo apt update
sudo apt install git vim zsh xclip stow curl npm docker.io docker-compose exuberant-ctags neovim cargo hub
## Install some nice programs
sudo apt install fzf locate neofetch figlet cowsay lolcat fswatch ranger vlc tree cheat htop neofetch tty-clock jq sshfs ripgrep bat httpie net-tools fzf ripgrep
## Install sdkman
curl -s "https://get.sdkman.io" | bash
## Set up npm
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
# Install some commonly used npm packages
npm install jest --global
npm install gtop --global
npm install typescript --global
# Install tldr
npm install -g tldr
## Install vim plug
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
## Set up docker
## Note: Restart is required to see changes for current user
sudo groupadd docker
sudo usermod -aG docker $USER
## Setup
touch ~/.ENV
## Install oh my zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
## Make zsh the default shell
chsh -s $(which zsh)
## Download zsh-autosuggestions plugin
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
## Download zsh-syntax-highlighting plugin
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
## Download you-should-use plugin
git clone https://github.com/MichaelAquilina/zsh-you-should-use.git $ZSH_CUSTOM/plugins/you-should-use
## Spaceship zsh
git clone https://github.com/denysdovhan/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt"
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
## Set up git
# Note: you will need to set email and name yourself
git config --global color.ui true
git config --global color.status auto
git config --global core.editor nvim
git config --global commit.template ~/.config/.gittemplate
cd ~/dotfiles
stow git
## Set up ohmyzsh
rm -f ~/.zshrc
cd ~/dotfiles
stow zsh
## Set up fonts
cd ~/dotfiles
stow fonts
fc-cache -f -v