-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
48 lines (38 loc) · 1.42 KB
/
Makefile
File metadata and controls
48 lines (38 loc) · 1.42 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
BREW=/opt/homebrew/bin/brew
BREW_BUNDLE=/opt/homebrew/Library/Taps/homebrew/homebrew-bundle
VSCODE_CONF=~/Library/Application\ Support/Code/User
GPG_AGENT=~/.gnupg/gpg-agent.conf
station: homebrew_packages fish $(VSCODE_CONF) $(GPG_AGENT)
server: apt_packages fish
$(BREW):
@echo Installing Homebrew
@bash -c "`curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh`"
@eval "$(/opt/homebrew/bin/brew shellenv)"
set -U fish_user_paths /opt/homebrew/bin $fish_user_paths
$(BREW_BUNDLE): $(BREW)
brew tap Homebrew/bundle
.PHONY: vscode_sync_extensions
vscode_sync_extensions: $(VSCODE_CONF)
@sh -c "~/.vscode/sync-extensions.sh"
$(VSCODE_CONF):
mkdir -p ${VSCODE_CONF}
ln -s ~/.vscode/keybindingsMac.json ${VSCODE_CONF}/keybindings.json
ln -s ~/.vscode/settings.json ${VSCODE_CONF}/settings.json
ln -s ~/.vscode/snippets ${VSCODE_CONF}/snippets
.PHONY: fish
fish:
@echo /opt/homebrew/bin/fish | sudo tee -a /etc/shells
@chsh -s $(shell which fish)
@fish -c fisher update
.PHONY: homebrew_packages
homebrew_packages: $(BREW_BUNDLE)
brew bundle
.PHONY: apt_repositories
apt_repositories:
sudo apt-add-repository -y ppa:fish-shell/release-3
sudo apt-get update
.PHONY: apt_packages
apt_packages: apt_repositories
sudo apt install -y fish neovim curl git git-extras wget tmux docker.io mosh build-essential universal-ctags
$(GPG_AGENT):
echo "pinentry-program /usr/local/bin/pinentry-mac" >> $(GPG_AGENT)