git.iko.soy/typeable/pandoc
on master help sign in
static-linux: Dockerfile now creates the .deb too.
a961055John MacFarlane
static-linux/Dockerfile+2
@@ -19,6 +19,7 @@ RUN stack install --stack-yaml stack.pkg.yaml --only-dependencies \
19 --flag 'pandoc:embed_data_files' \
19 --flag 'pandoc:embed_data_files' \
20 --test --ghc-options '-O2 -optc-Os -optl-static -fPIC' \
20 --test --ghc-options '-O2 -optc-Os -optl-static -fPIC' \
21 pandoc pandoc-citeproc
21 pandoc pandoc-citeproc
22+COPY make_deb.sh .
22CMD git pull && \
23CMD git pull && \
23 git checkout -b work $TREE && \
24 git checkout -b work $TREE && \
24 export VERSION=`grep '^Version:' pandoc.cabal | awk '{print $$2;}'` && \
25 export VERSION=`grep '^Version:' pandoc.cabal | awk '{print $$2;}'` && \
@@ -26,6 +27,7 @@ CMD git pull && \
26 --local-bin-path /artifacts --flag 'pandoc:embed_data_files' \
27 --local-bin-path /artifacts --flag 'pandoc:embed_data_files' \
27 --test --ghc-options '-O2 -optc-Os -optl-static -fPIC' \
28 --test --ghc-options '-O2 -optc-Os -optl-static -fPIC' \
28 pandoc pandoc-citeproc && \
29 pandoc pandoc-citeproc && \
30+ bash make_deb.sh && \
29 cd /artifacts && \
31 cd /artifacts && \
30 mkdir pandoc-$VERSION && \
32 mkdir pandoc-$VERSION && \
31 mv pandoc pandoc-citeproc pandoc-$VERSION/ && \
33 mv pandoc pandoc-citeproc pandoc-$VERSION/ && \
static-linux/make_deb.shnew file+50
@@ -0,0 +1,50 @@
1+MACHINE=$(uname -m)
2+case "$MACHINE" in
3+ x86_64) ARCHITECTURE=amd64;;
4+ i686) ARCHITECTURE=i386;;
5+ i386) ARCHITECTURE=i386;;
6+esac
7+
8+ARTIFACTS=/artifacts
9+
10+VERSION=$(grep -e '^Version' pandoc.cabal | awk '{print $2}')
11+DEBPKGVER=${DEBPKGVER:-1}
12+DEBVER=$VERSION-$DEBPKGVER
13+BASE=pandoc-$DEBVER-$ARCHITECTURE
14+DIST=`pwd`/$BASE
15+DEST=$DIST/usr
16+COPYRIGHT=$DEST/share/doc/pandoc/copyright
17+
18+PATH=$ARTIFACTS:$PATH
19+PANDOC_CITEPROC_VERSION=`pandoc-citeproc --version | awk '{print $2;}'`
20+
21+mkdir -p $DEST/bin
22+mkdir -p $DEST/share/man/man1
23+mkdir -p $DEST/share/doc/pandoc
24+
25+make man/pandoc.1
26+
27+mkdir -p $DEST/share/doc/pandoc-citeproc
28+find $DIST -type d | xargs chmod 755
29+cp $ARTIFACTS/pandoc $DEST/bin/
30+cp $ARTIFACTS/pandoc-citeproc $DEST/bin/
31+cp man/pandoc.1 $DEST/share/man/man1/pandoc.1
32+pandoc-citeproc --man > $DEST/share/man/man1/pandoc-citeproc.1
33+gzip -9 $DEST/share/man/man1/pandoc.1
34+gzip -9 $DEST/share/man/man1/pandoc-citeproc.1
35+
36+cp COPYRIGHT $COPYRIGHT
37+echo "" >> $COPYRIGHT
38+echo "pandoc-citeproc" >> $COPYRIGHT
39+pandoc-citeproc --license >> $COPYRIGHT
40+
41+INSTALLED_SIZE=$(du -k -s $DEST | awk '{print $1}')
42+mkdir $DIST/DEBIAN
43+perl -pe "s/VERSION/$DEBVER/" deb/control.in | \
44+ perl -pe "s/ARCHITECTURE/$ARCHITECTURE/" | \
45+ perl -pe "s/INSTALLED_SIZE/$INSTALLED_SIZE/" \
46+ > $DIST/DEBIAN/control
47+
48+fakeroot dpkg-deb --build $DIST
49+rm -rf $DIST
50+cp $BASE.deb /artifacts/