-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile.alpine-edge
77 lines (77 loc) · 3.84 KB
/
Dockerfile.alpine-edge
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
FROM alpine:edge
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8
# Install rsvg-convert in place of inkscape
# (inkscape crashes with some of SVG files)
# Need recent WIP branch at https://github.com/akiyks/perfbook.git.
RUN apk update && \
echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \
apk update && \
apk -U add --no-cache make rsvg-convert graphviz ghostscript \
perl curl gnuplot groff fig2dev poppler-utils \
ca-certificates bash grep sed libpng patch git \
coreutils ttf-liberation ttf-dejavu
WORKDIR /opt
# fig2ps at sourcefoge.net not working as of 2022.01.29
# https://sourceforge.net/projects/fig2ps/files/fig2ps-1.5.tar.bz2
#RUN wget https://sourceforge.net/projects/fig2ps/files/fig2ps-1.5.tar.bz2 && \
# tar xf fig2ps-1.5.tar.bz2 && \
# cd fig2ps-1.5 && make install && cd .. && \
# rm -rf fig2ps-1.5 fig2ps-1.5.tar.bz2
#RUN wget https://fossies.org/linux/privat/old/fig2ps-1.5.tar.gz && \
# tar xf fig2ps-1.5.tar.gz && \
# cd fig2ps-1.5 && make install && cd .. && \
# rm -rf fig2ps-1.5 fig2ps-1.5.tar.gz
ENV TEXLIVE_INSTALL_NO_CONTEXT_CACHE=1 NOPERLDOC=1
COPY texlive.alpine.profile /opt/texlive.profile
WORKDIR /opt
RUN wget https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz && \
tar xf install-tl-unx.tar.gz && \
cd install-tl-* && perl install-tl -profile /opt/texlive.profile && \
cd /opt && rm -rf install-tl-* && \
find /usr/local/texlive/2024/texmf-var/ -name "*.log" -exec rm \{\} +
ENV PATH=/usr/local/bin:/usr/local/texlive/2024/bin/x86_64-linuxmusl:/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin
RUN tlmgr install \
newtx newtxtt nimbus15 courier courier-scaled inconsolata newtxsf libertine \
arydshln braket cleveref datatool draftwatermark ellipsis enumitem \
epigraph fmtcount fontaxes footmisc footnotebackref fvextra \
glossaries glossaries-extra idxlayout mfirstuc multirow \
ncctools nextpage nowidow parnotes readarray siunitx splitindex tcolorbox \
pdfcol luacolor tikzfill silence \
threeparttable tocbibind titlesec upquote varwidth verbatimbox was gensymb \
xfor xpatch xstring noindentafter forloop \
booktabs caption etoolbox everysel fancyvrb \
float fontspec index latexbug listings newfloat subfig xcolor \
microtype setspace lineno pgf textcase listofitems \
multido ragged2e \
a2ping pdfcrop epstopdf tex-gyre times txfonts \
changepage environ placeins \
pstricks pst-node pst-eps pst-tools \
xetex realscripts unicode-math lualatex-math \
gnu-freefont \
stix2-otf xits libertinus-fonts tex-gyre-math && \
find /usr/local/texlive/2024/texmf-var/ -name "*.log" -exec rm \{\} +
WORKDIR /opt
COPY steel-city-comic.regular.ttf steel-city-comic.regular.ttf
RUN curl https://gitlab.com/latexpand/latexpand/-/archive/v1.3/latexpand-v1.3.tar.gz -o - | tar xfz - && \
sed -i -e 's/@LATEXPAND_VERSION@/v1.3/' latexpand-*/latexpand && \
cp latexpand-*/latexpand /usr/local/bin && \
cd /opt && rm -rf latexpand-* && \
curl https://github.com/ArtifexSoftware/urw-base35-fonts/archive/refs/tags/20200910.tar.gz -L -o - | tar xfz - && \
rm -f urw-base35-fonts-20200910/fonts/*.afm \
urw-base35-fonts-20200910/fonts/*.otf urw-base35-fonts-20200910/fonts/*.t1 && \
mkdir -p /usr/share/fonts/local && cd /usr/share/fonts/local && \
ln -s /opt/urw-base35-fonts-20200910/fonts urw-base35 && \
ln -s /opt/steel-city-comic.regular.ttf . && \
cd /etc/fonts/conf.avail/ && \
echo $'<?xml version="1.0"?>\n\
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">\n\
<fontconfig>\n\
<dir>/usr/local/texlive/2024/texmf-dist/fonts/truetype</dir>\n\
<dir>/usr/local/texlive/2024/texmf-dist/fonts/opentype</dir>\n\
</fontconfig>' > 09-texlive-fonts.conf && \
ln -sf /etc/fonts/conf.avail/09-texlive-fonts.conf /etc/fonts/conf.d/ && \
fc-cache -sf
VOLUME /work
WORKDIR /work
CMD /bin/bash