-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile
82 lines (69 loc) · 1.64 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
FROM base/archlinux:latest
LABEL maintainer="Gius. Camerlingo <gcamerli@gmail.com>"
# Add name to Docker image
ENV NAME=42arch
# Update Arch
ENV TERM=xterm
RUN pacman -Syu --noconfirm \
wget \
git \
binutils \
gcc \
valgrind \
make \
patch \
htop \
mlocate \
expac \
automake \
autoconf \
fakeroot \
libtool \
pkg-config \
xterm \
unzip \
autogen \
yasm \
openssh \
xorg-server \
python \
python2 \
python-pip \
python-virtualenv \
python2-virtualenv
# Set no password for docker user
RUN pacman --noconfirm -S sudo
RUN echo "docker ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
# Create a new user
RUN useradd -ms /bin/zsh docker
USER docker
ENV HOME=/home/docker
WORKDIR $HOME
# Install package-query and yaourt
RUN git clone https://aur.archlinux.org/package-query.git
WORKDIR $HOME/package-query/
RUN makepkg --noconfirm -si
WORKDIR $HOME
RUN git clone https://aur.archlinux.org/yaourt.git
WORKDIR $HOME/yaourt/
RUN makepkg --noconfirm -si
WORKDIR $HOME
RUN rm -rf package-query/ yaourt/
# Install from AUR
RUN yaourt --noconfirm -S zsh
RUN yaourt --noconfirm -S vim
# Install pip package
RUN sudo pip install pika
# Clone and set kerberos
RUN git clone --progress --verbose https://github.com/gcamerli/42krb.git kerberos
WORKDIR $HOME/kerberos/script
RUN sh run.sh
WORKDIR $HOME
# Clone norminette
RUN git clone --progress --verbose https://github.com/gcamerli/42norme.git norminette
# Export variable for norminette
ENV PATH=$PATH:$HOME/norminette
# Set zsh as default shell
RUN sudo chsh -s /usr/bin/zsh docker
# Set oh-my-zsh
RUN sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"