summaryrefslogblamecommitdiff
path: root/Makefile
blob: 7c69d5338871a42afe95ffa48971a42bec42c7c3 (plain) (tree)







































                                                                                                                                                                                                 
                                                                         




                                                     

                                                 


                                               
                                                
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 ~/.config/nvim ~/.zshrc

~/.gitconfig:
	@ln -s $(pwd)/git/config ~/.gitconfig || true
~/.gitignore:
	@ln -s $(pwd)/git/ignore ~/.gitignore || true
~/.config/nvim:
	@ln -s $(pwd)/nvim ~/.config/nvim || true
~/.config/zsh:
	@ln -s $(pwd)/zsh ~/.config/zsh || true
~/.zshrc:
	@ln -s $(pwd)/zsh/zshrc ~/.zshrc || true