diff --git a/Dockerfile b/Dockerfile index dc6ccd97d2cf3f00d983d321bba98f3dfe20b5ea..577255a1ddc4b172a0609c5f2c54a57fece8e609 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,7 +11,12 @@ RUN echo "Adding system components" && \ apt-get update -y && \ DEBIAN_FRONTEND=noninteractive \ apt-get install -y -q \ - autoconf automake curl g++ gcc jq make npm unzip && \ + autoconf automake curl g++ gcc jq make npm rsync unzip \ + ca-certificates fonts-liberation libappindicator3-1 libasound2 libatk-bridge2.0-0 libatk1.0-0 \ + libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgbm1 libgcc1 libglib2.0-0 \ + libgtk-3-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 \ + libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 \ + libxss1 libxtst6 lsb-release wget xdg-utils && \ curl -L -o pandoc.deb https://github.com/jgm/pandoc/releases/download/2.9.2.1/pandoc-2.9.2.1-1-amd64.deb && \ dpkg -i pandoc.deb && \ rm pandoc.deb @@ -21,7 +26,10 @@ ADD bin/* /usr/local/bin/ RUN echo "Setup MdShow" && \ mdshow setup && \ ln -s /opt/mdshow/reveal.js/node_modules/gulp/bin/gulp.js /usr/bin/gulp && \ + mkdir -p /opt/mdshow/theme && \ chmod -R a+rwx /opt/mdshow && \ + chmod -R a+rwx /opt/mdshow/reveal.js/css/theme/source && \ + chmod -R a+rwx /opt/mdshow/reveal.js/dist/theme && \ \ echo "Cleanup" && \ apt-get clean && \ diff --git a/bin/mdshow b/bin/mdshow index 3f40da52001a7617e7ce7c5a47a5a5569ec867d9..ce86d38d1fd226116ae7d8a88b5ec44d8c6916dd 100755 --- a/bin/mdshow +++ b/bin/mdshow @@ -1,6 +1,6 @@ #!/usr/bin/make -f # TODO: newer versions of env support this: !/usr/bin/env -S make -f -# NOTE JH: switched for yarn npm, because yarn does not install node_modules/node-jp/bin +# NOTE JH: switched from yarn to npm, because yarn does not install node_modules/node-jp/bin # Author: Jan Christoph Ebersbach <jceb@e-jc.de> # Copyright (c) 2020 Jan Christoph Ebersbach # License: Apache-2.0 @@ -138,6 +138,7 @@ sass: $(MDSHOW_CONFIG)/reveal.js \ .sync-custom-themes: $(wildcard $(MDSHOW_CONFIG)/theme/*/source/*.scss) @[ -n "$^" ] && rsync -u $^ $(MDSHOW_CONFIG)/reveal.js/css/theme/source/ || true + @[ -n "$^" ] && cd $(MDSHOW_CONFIG)/reveal.js && gulp css-themes || true .SECONDEXPANSION: .build-themes: $$(addprefix $(MDSHOW_CONFIG)/reveal.js/dist/theme/,$$(addsuffix .css,$$(basename $$(notdir $$(wildcard $(MDSHOW_CONFIG)/reveal.js/css/theme/source/*.scss))))) @@ -152,7 +153,7 @@ $(MDSHOW_CONFIG)/theme/%/assets: mkdir -p $@ $(MDSHOW_CONFIG)/reveal.js/dist/theme/%: $(MDSHOW_CONFIG)/theme/%/assets - ln -s $< $@ + @cp $@.css $< # {{{1 themes themes: $(MDSHOW_CONFIG)/reveal.js/dist $(wildcard $(MDSHOW_CONFIG)/reveal.js/dist/theme/*.css) diff --git a/mdshow b/mdshow index 55f539a5fd0b9e804385bf51d38426b2e4d51b0d..e4dab78b1da80ea15c5f9178f3a4935cf4d67021 100755 --- a/mdshow +++ b/mdshow @@ -1,3 +1,7 @@ #!/bin/bash -docker run --user=$(id -u) --rm -it --net=host --volume=$(pwd):/mdshow --workdir=/mdshow registry.lakedrops.com/docker/mdshow mdshow $@ +if [[ -n $MDSHOW_THEME_PATH ]]; then + THEME=--volume=${MDSHOW_THEME_PATH}:/opt/mdshow/theme/$(basename ${MDSHOW_THEME_PATH}) +fi + +docker run --user=$(id -u) --rm -it --net=host ${THEME} --volume=$(pwd):/mdshow --workdir=/mdshow registry.lakedrops.com/docker/mdshow mdshow $@