-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathDockerfile
66 lines (58 loc) · 1.38 KB
/
Dockerfile
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
FROM archlinux:latest
RUN
RUN echo -e '[archlinuxcn]\nServer = https://repo.archlinuxcn.org/$arch' >> /etc/pacman.conf && \
ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
pacman-key --init && \
# workaround https://bbs.archlinuxcn.org/viewtopic.php?id=13906
pacman-key --lsign farseerfc@archlinux.org && \
pacman --noconfirm -Sy && \
pacman --noconfirm -S archlinuxcn-keyring && \
pacman --noconfirm -S libalpm sudo paru && \
paru -Syu --noconfirm
RUN paru --noconfirm -S \
base-devel \
git python-pre-commit git-delta git-crypt \
wget curl axel \
neovim \
zsh sheldon starship \
tmux \
fd \
jq \
fzf \
zoxide \
sd \
ripgrep \
eza \
bat \
shellcheck-static \
net-tools dstat gping
RUN paru --noconfirm -S \
linux-tools-meta \
go \
rustup \
nodejs npm \
duf \
dua-cli \
hyperfine \
fastfetch \
onefetch \
bottom \
mmv-go \
csview-git \
code-minimap-git \
clitrans-git
# dotfiles
ADD . /root/dotfiles
RUN ~/dotfiles/install zsh
SHELL ["/usr/bin/zsh", "-c"]
RUN ~/dotfiles/install bin git vim tmux bat fd
# rust
RUN rustup toolchain install nightly --component \
rust-std \
rustfmt \
clippy
# Post-install
RUN paru -Sc --noconfirm && \
rm -rf ~/.cache/* ~/.cargo/git ~/.cargo/registry && \
mkdir ~/work
WORKDIR /root/work