From a8a6dadd312c2f87010590682b073253e7b6e33e Mon Sep 17 00:00:00 2001 From: Mike Gerwitz Date: Thu, 21 Sep 2017 22:26:17 -0400 Subject: [PATCH] :Add images/tp build This adapts the same methodology I used for my SAPSF LP2017 talk to keep third-party resources out of the repository. This is not only good from a licensing perspective, but also good for the repo and programatically defines how I derive the image displayed on my site from a source image (and proves that it does not constitute a derivative work, as it is not transformative). --- Makefile | 11 +++++++-- images/tp/.gitignore | 6 +++++ images/tp/SHA256SUM | 1 + images/tp/gen-makefile | 54 ++++++++++++++++++++++++++++++++++++++++++ images/tp/remote-list | 1 + 5 files changed, 71 insertions(+), 2 deletions(-) create mode 100644 images/tp/.gitignore create mode 100644 images/tp/SHA256SUM create mode 100755 images/tp/gen-makefile create mode 100644 images/tp/remote-list diff --git a/Makefile b/Makefile index 9e8477d..23a1230 100644 --- a/Makefile +++ b/Makefile @@ -78,16 +78,23 @@ thoughts: docs/papers/.list: thoughts articles echo "$(articles) $(texticles)" | tr ' ' '\n' | tools/doclist >$@ +images: images/tp/Makefile + $(MAKE) -C '$(dir $<)' all check +images/tp/Makefile: images/tp/gen-makefile + ( cd images/tp/ && ./gen-makefile ) >$@ + pages: $(pages) $(pages_md) articles: $(articles) $(texticles) docs: pages articles -www-root: docs thoughts +www-root: docs thoughts images mkdir -p www-root/papers ( cd docs/ \ && find . -maxdepth 2 -name '*.html' -exec ../tools/doc-cp {} ../www-root/{} \; \ && find . -maxdepth 3 \( -name '*.pdf' -o -name '*.dvi' \) -exec cp {} ../www-root/{} \; \ ) - cp -rv images/ fonts/ www-root/ + mkdir -p www-root/images/ + cp -v images/*.* images/tp/*.png www-root/images/ + cp -rv fonts/ www-root/ cp -rv _raw/* www-root/ cp -v style.css www-root/ mkdir -p www-root/docs diff --git a/images/tp/.gitignore b/images/tp/.gitignore new file mode 100644 index 0000000..f3a75c5 --- /dev/null +++ b/images/tp/.gitignore @@ -0,0 +1,6 @@ +* +!gen-makefile +!remote-list +!SHA256SUM +!.gitignore + diff --git a/images/tp/SHA256SUM b/images/tp/SHA256SUM new file mode 100644 index 0000000..a77793c --- /dev/null +++ b/images/tp/SHA256SUM @@ -0,0 +1 @@ +3a2fb99c4cbb929ee7a5c404f7b356fa9c5133145feaf834220cad4362d651d0 eff-42.png diff --git a/images/tp/gen-makefile b/images/tp/gen-makefile new file mode 100755 index 0000000..85764e2 --- /dev/null +++ b/images/tp/gen-makefile @@ -0,0 +1,54 @@ +#!/bin/bash +# Generate Makefile for third-party image download +# +# Copyright (C) 2017 Mike Gerwitz +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +## + +declare -r remote_file=remote-list + +cat < \$@ + +check: + sha256sum -c SHA256SUM + +clean: + \$(RM) \$(images) + +EOF + +while read out url convert; do + dest="$out" + + echo "$dest": + printf "\t\$(TORIFY) wget -O %q %q\n" "$dest" "$url" + + test -n "$convert" || continue + + # faketime because of EXIF metadata + printf "\tfaketime 1970-01-01 mogrify %s %q\n" "$convert" "$dest" +done < "$remote_file" + diff --git a/images/tp/remote-list b/images/tp/remote-list new file mode 100644 index 0000000..84119f5 --- /dev/null +++ b/images/tp/remote-list @@ -0,0 +1 @@ +eff-42.png https://web.archive.org/web/20170922020250/https://www.eff.org/files/2014/01/24/eff-logo-plain-rgb.png -trim -resize 42 -gravity center -extent 42x42