-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlinux.mk
More file actions
40 lines (34 loc) · 1.24 KB
/
linux.mk
File metadata and controls
40 lines (34 loc) · 1.24 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
export SHELL := /bin/bash
DISTRO := $(shell lsb_release -si)
ARCH := $(if $(filter $(shell uname -m), arm64 aarch64),arm64,amd64)
all: install
install: deps neovim afx
sudo apt-get install -y --no-install-recommends \
autoconf bison libcurl4-openssl-dev libgd-dev libonig-dev libpq-dev libreadline-dev libsqlite3-dev libxml2-dev libzip-dev locate pkg-config re2c build-essential \
locales locales-all \
bash zsh \
tar gzip unzip xz-utils \
gpg gawk less rsync \
openssh-client \
openssl \
default-libmysqlclient-dev default-mysql-client \
pass \
git-extras
if [[ "$$(uname -r)" =~ microsoft ]]; then \
sudo apt-get install -y --no-install-recommends ubuntu-wsl keychain; \
fi
neovim:
curl -LO https://github.com/neovim/neovim/releases/download/v0.10.4/nvim-linux-x86_64.appimage
chmod +x nvim-linux-x86_64.appimage
sudo mv nvim-linux-x86_64.appimage /usr/local/bin/nvim
afx:
curl -sL https://raw.githubusercontent.com/b4b4r07/afx/HEAD/hack/install | bash
deps:
ifneq ($(DISTRO),Ubuntu)
$(error not support ditribution)
endif
ifeq ($(ARCH),arm64)
$(error not support architecture)
endif
sudo sed -i.bak -r 's!(deb|deb-src) \S+!\1 mirror+http://mirrors.ubuntu.com/mirrors.txt!' /etc/apt/sources.list
sudo apt-get update