-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall
executable file
·73 lines (57 loc) · 1.8 KB
/
install
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
#!/usr/bin/env bash
SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)
source ${SCRIPT_DIR}/environment
link() {
if [[ ! -L "${2}" || "$(readlink "${2}")" != "${1}" ]]; then
rm -rf "${2}"
ln -sv "${1}" "${2}"
fi
}
OS="$(uname)"
if [[ "${OS}" == "Linux" ]]; then
HOMEBREW_PREFIX="/home/linuxbrew/.linuxbrew"
sudo apt update
sudo apt -y upgrade
sudo apt -y install build-essential procps curl file git
elif [[ "${OS}" == "Darwin" ]]; then
HOMEBREW_PREFIX="/opt/homebrew"
else
echo "Unsupported OS"
exit 1
fi
SSH_TYPE="ed25519"
SSH_FILENAME="${HOME}/.ssh/id_${SSH_TYPE}"
if [[ ! -f "${SSH_FILENAME}" ]]; then
ssh-keygen -t "${SSH_TYPE}" -N "" -f "${SSH_FILENAME}" -C "$(hostname)"
fi
if [[ ! -x "${HOMEBREW_PREFIX}/bin/brew" ]]; then
NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
fi
eval "$(${HOMEBREW_PREFIX}/bin/brew shellenv)"
brew bundle --file="${DOTFILES}/Brewfile"
mkdir -p ${HOME}/.{config,private}
# GIT
if [[ ! -f "${HOME}/.private/gitconfig" ]]; then
read -p "Enter you name: " NAME
read -p "Enter your email: " EMAIL
cat <<_git_user >${HOME}/.private/gitconfig
[user]
email = ${EMAIL}
name = ${NAME}
_git_user
fi
link ${DOTFILES}/git/gitconfig ${HOME}/.gitconfig
# ZSH
link ${DOTFILES}/environment ${HOME}/.zshenv
link ${DOTFILES}/zsh/zshrc ${HOME}/.zshrc
link ${DOTFILES}/bat ${HOME}/.config/bat
link ${DOTFILES}/nvim ${HOME}/.config/nvim
link ${DOTFILES}/wezterm/wezterm.lua ${HOME}/.wezterm.lua
if [[ $(grep -q "${HOMEBREW_PREFIX}/bin/zsh" /etc/shells) ]]; then
echo "${HOMEBREW_PREFIX}/bin/zsh" | sudo tee -a /etc/shells
fi
if [[ "$(basename ${SHELL})" != "zsh" || "${SHELL}" != "${HOMEBREW_PREFIX}/bin/zsh" ]]; then
chsh -s "${HOMEBREW_PREFIX}/bin/zsh"
fi
bat cache --build
# vim: noet ci pi sts=0 sw=4 ts=4