blob: 31933afbb3caf094ea0595eae9ab505ee81d4a08 (
plain)
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
|
FROM scratch
MAINTAINER Jesus E.
# Set the $architecture ARG on your `docker build' command line with `--build-arg architecture=x86_64' or `i686'.
ARG architecture
ADD bootstrap.tar.gz /
RUN if [ "$architecture" != "x86_64" -a "$architecture" != "i686" ]; then \
printf '\nYou need to specify the architecture with "--build-arg architecture=i686" on your\n\
\r"docker build" command line. "x86_64" and "i686" are supported. Aborting build!\n\n'; exit 1; fi
RUN \
# First
pacman-key --init \
&& pacman-key --populate hyperbola \
# Another bit of a hack, until Hyperbola bootstrap tarballs start including `sed' package, which is required by
# `rankmirrors', which comes with `pacman' package, while that one doesn't depend on `sed'. (Note to self: ask the
# Hyperbola devs about this; `locale-gen' uses `sed' too). Again, lucky it has very little deps.
&& sed -i "s/^Architecture = auto$/Architecture = $architecture/" /etc/pacman.conf \
# `locale-gen' needs `gzip' (via `localedef', which works on /usr/share/i18n/charmaps/*.gz), `paccache' needs `awk'.
# Update the system BTW.
&& pacman -Su --noconfirm --noprogressbar --quiet gzip awk \
# Remove the last leftovers of the initial dirty `haveged' install.
&& paccache -r -k0 \
&& echo 'en_US.UTF-8 UTF-8' > /etc/locale.gen \
&& locale-gen \
&& echo 'LANG=en_US.UTF-8' > /etc/locale.conf \
&& pacman -Scc --noconfirm
ENV LANG en_US.UTF-8
# As per https://docs.docker.com/engine/userguide/networking/default_network/configure-dns/, the /etc/hostname,
# /etc/hosts and /etc/resolv.conf should be rather left alone.
|