summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile50
1 files changed, 50 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..0bec4bf
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,50 @@
+pwd = $(shell pwd)
+osver=$(shell lsb_release -sr)
+oscodename=$(shell lsb_release -sc)
+arch=$(shell dpkg --print-architecture)
+
+.PHONY: all
+all: /usr/bin/docker /usr/bin/go /usr/bin/nvim dotfiles golibs
+
+# Docker install
+.PHONY: /usr/bin/docker
+/usr/bin/docker:
+
+ sudo apt-get install ca-certificates curl
+ sudo install -m 0755 -d /etc/apt/keyrings
+ sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
+ sudo chmod a+r /etc/apt/keyrings/docker.asc
+
+ echo "deb [arch=$(arch) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(oscodename) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
+ sudo apt update
+ sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
+
+# Go install
+.PHONY: /usr/bin/go
+/usr/bin/go:
+ sudo add-apt-repository ppa:longsleep/golang-backports
+ sudo apt install golang-go
+
+.PHONY: golibs
+golibs: /usr/bin/go
+ go install github.com/goreleaser/goreleaser@latest
+ go install github.com/mkchoi212/fac@latest
+
+# Neovim
+.PHONY: /usr/bin/nvim
+/usr/bin/nvim:
+ sudo add-apt-repository -r ppa:neovim-ppa/stable
+ sudo apt install neovim
+
+# dotfiles
+.PHONY: dotfiles
+dotfiles: ~/.gitconfig ~/.gitignore ~/.config/zsh ~/.zshrc
+
+~/.gitconfig:
+ @ln -s $(pwd)/git/config ~/.gitconfig || true
+~/.gitignore:
+ @ln -s $(pwd)/git/ignore ~/.gitignore || true
+~/.config/zsh:
+ @ln -s $(pwd)/zsh ~/.config/zsh || true
+~/.zshrc:
+ @ln -s $(pwd)/zsh/zshrc ~/.zshrc || true \ No newline at end of file