From 4761588713f893d76ce717fe8cc54e3ed7f61b43 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Sun, 4 May 2025 16:38:05 -0300 Subject: Makefile: Fix dependency tracking of $(captured-assets) Since I can't get deterministic outputs out of mktorrent(1), change torrents from $(captured-assets) to $(dynamic-contents). --- .gitignore | 2 + Makefile | 44 +++++---- deps.mk | 3 + meta.capim | 5 + meta.json | 5 - mkdeps.sh | 1 + .../en/podcast/2020/12/19/test-entry.flac.torrent | Bin 544 -> 0 bytes .../en/podcast/2020/12/19/test-entry.ogg.torrent | 1 - .../en/screencast/2021/02/07/autoqemu.webm.torrent | Bin 7646 -> 0 bytes src/content/favicon.png | Bin 180 -> 103 bytes src/content/public.asc.txt | 107 ++++++++++++--------- 11 files changed, 96 insertions(+), 72 deletions(-) create mode 100644 meta.capim delete mode 100644 meta.json delete mode 100644 src/content/en/podcast/2020/12/19/test-entry.flac.torrent delete mode 100644 src/content/en/podcast/2020/12/19/test-entry.ogg.torrent delete mode 100644 src/content/en/screencast/2021/02/07/autoqemu.webm.torrent diff --git a/.gitignore b/.gitignore index 9385a55..874fc80 100644 --- a/.gitignore +++ b/.gitignore @@ -18,4 +18,6 @@ *.ps *.pdf *.gz +*.sentinel +*.torrent /src/content/.gitignore diff --git a/Makefile b/Makefile index ab55e9f..ab4b058 100644 --- a/Makefile +++ b/Makefile @@ -28,7 +28,7 @@ BASEURL = / .SUFFIXES: .SUFFIXES: .adoc .conf .snippets .indexentry .feedentry .mapentry .sortdata .xml .SUFFIXES: .htmlbody .htmlheader .htmlfooter .htmllisting .html .links .caslinks -.SUFFIXES: .txt .categorydata .gz .torrent .flac .ogg .ps .pdf +.SUFFIXES: .txt .categorydata .gz .torrent .flac .ogg .ps .pdf .sentinel .adoc.conf: mkwb conf src/global.conf $< > $@ @@ -125,6 +125,7 @@ dynamic-contents = \ $(sources.html) \ $(slides.pdf) \ $(feeds.xml) \ + $(sources.media.torrent) \ src/content/sitemap.xml \ static-contents = \ @@ -163,6 +164,13 @@ all-contents = \ $(contents) \ $(contents.gz) \ +captured-assets = \ + src/content/$(PUBURL) \ + src/content/favicon.ico \ + src/content/favicon.png \ + +captured-assets.sentinel = $(captured-assets:=.sentinel) + derived-assets = \ $(dynamic-contents) \ @@ -209,12 +217,7 @@ derived-assets = \ install.txt \ sources.txt \ src/content/.gitignore \ - -captured-assets = \ - src/content/$(PUBURL) \ - src/content/favicon.ico \ - src/content/favicon.png \ - $(sources.media.torrent) \ + $(captured-assets.sentinel) \ side-assets = \ src/collections/*/*/*/*/*/*.html.*.txt \ @@ -287,16 +290,19 @@ $(sources.snippets.gz) $(categories.xml.gz): if [ -s $* ]; then gzip -9fk `cat $*`; fi sed 's/$$/.gz/' $* > $@ -src/content/$(PUBURL).gz: src/content/$(PUBURL) -src/content/$(PUBURL): - gpg --export --armour "`jq -r '.email' < meta.json`" > $@ +src/content/$(PUBURL).gz: src/content/$(PUBURL).sentinel +src/content/$(PUBURL).sentinel: email.txt + gpg --export --armour "`cat email.txt`" | ifnew $* + touch $@ -src/content/favicon.ico.gz: src/content/favicon.ico -src/content/favicon.ico: src/content/img/favicon.svg - convert src/content/img/favicon.svg $@ +src/content/favicon.ico.gz: src/content/favicon.ico.sentinel +src/content/favicon.ico.sentinel: src/content/img/favicon.svg + convert src/content/img/favicon.svg -strip ico:- | ifnew $* + touch $@ -src/content/favicon.png: src/content/img/favicon.svg - convert src/content/img/favicon.svg $@ +src/content/favicon.png.sentinel: src/content/img/favicon.svg + convert src/content/img/favicon.svg -strip png:- | ifnew $* + touch $@ $(sources.media.torrent): F="`printf '%s\n' $* | cut -d/ -f3-`" && \ @@ -306,11 +312,11 @@ src/content/sitemap.xml.gz: src/content/sitemap.xml src/content/sitemap.xml: $(sources.mapentry) mkwb sitemap $(sources.mapentry) > $@ -email.txt: meta.json - jq -r '.email' < meta.json > $@ +email.txt: meta.capim + cat meta.capim | awk '$$1 == ":email" && $$0=$$2' | tr -d '"' > $@ -baseurl.txt: meta.json - jq -r '.baseurl' < meta.json > $@ +baseurl.txt: meta.capim + cat meta.capim | awk '$$1 == ":baseurl" && $$0=$$2' | tr -d '"' > $@ fingerprint.txt: src/content/$(PUBURL) gpg --always-trust --no-keyring --show-key --with-colons \ diff --git a/deps.mk b/deps.mk index a48e08e..43a93e9 100644 --- a/deps.mk +++ b/deps.mk @@ -311,6 +311,9 @@ src/content/en/podcast/feed.xml.gz: src/content/en/podcast/feed.xml src/content/en/screencast/feed.xml.gz: src/content/en/screencast/feed.xml src/content/en/til/feed.xml.gz: src/content/en/til/feed.xml src/content/pt/hea/feed.xml.gz: src/content/pt/hea/feed.xml +src/content/en/podcast/2020/12/19/test-entry.flac.torrent.gz: src/content/en/podcast/2020/12/19/test-entry.flac.torrent +src/content/en/podcast/2020/12/19/test-entry.ogg.torrent.gz: src/content/en/podcast/2020/12/19/test-entry.ogg.torrent +src/content/en/screencast/2021/02/07/autoqemu.webm.torrent.gz: src/content/en/screencast/2021/02/07/autoqemu.webm.torrent src/content/en/about.htmlbody src/content/en/about.snippets src/content/en/about.conf: src/content/en/about.adoc src/content/en/index.htmlbody src/content/en/index.snippets src/content/en/index.conf: src/content/en/index.adoc diff --git a/meta.capim b/meta.capim new file mode 100644 index 0000000..9ae8c0f --- /dev/null +++ b/meta.capim @@ -0,0 +1,5 @@ +{ + :description "Blog and personal website (euandre.org)." + :baseurl "https://euandre.org" + :email "eu@euandre.org" +} diff --git a/meta.json b/meta.json deleted file mode 100644 index b5a8522..0000000 --- a/meta.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "description": "Blog and personal website (euandre.org).", - "baseurl": "https://euandre.org", - "email": "eu@euandre.org" -} diff --git a/mkdeps.sh b/mkdeps.sh index b13b374..9df3e5a 100755 --- a/mkdeps.sh +++ b/mkdeps.sh @@ -77,6 +77,7 @@ find po/*.po po/*.pot | varlist 'sources.po' files | sed 's/^\(.*\)\.adoc$/\1.snippets/' slides | sed 's/^\(.*\)\.adoc$/\1.pdf/' indexes | sed 's|^\(.*\)/index\.adoc$|\1/feed.xml|' + media | sed 's/^\(.*\)$/\1.torrent/' } | sed 's/^\(.*\)$/\1.gz:\t\1/' printf '\n' diff --git a/src/content/en/podcast/2020/12/19/test-entry.flac.torrent b/src/content/en/podcast/2020/12/19/test-entry.flac.torrent deleted file mode 100644 index 519fb2f..0000000 Binary files a/src/content/en/podcast/2020/12/19/test-entry.flac.torrent and /dev/null differ diff --git a/src/content/en/podcast/2020/12/19/test-entry.ogg.torrent b/src/content/en/podcast/2020/12/19/test-entry.ogg.torrent deleted file mode 100644 index 901eac3..0000000 --- a/src/content/en/podcast/2020/12/19/test-entry.ogg.torrent +++ /dev/null @@ -1 +0,0 @@ -d10:created by13:mktorrent 1.14:infod6:lengthi97060e12:x_cross_seed42:mktorrent-9934A4BD4BF787E1BD685FCE62C6057A4:name14:test-entry.ogg12:piece lengthi32768e6:pieces60:dTÝK«f^”Q_eõù]O´ðI}PúG“+'wgäË/É2áýÒ¤¢«þ³p_yæ¯_ü£6Ó!ÇSè