aboutsummaryrefslogtreecommitdiff
path: root/aux/workflow
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2021-07-23 15:13:23 -0300
committerEuAndreh <eu@euandre.org>2021-07-23 15:13:23 -0300
commit3a94df050166da6bf9fc3fda584b69816779d865 (patch)
tree145f6767d7afeeca9b4e0524c14a0758209f6e7a /aux/workflow
parentTODOs.md: Mark #task-bd165b74-c559-48ee-1d29-eaa906aa0393 as DONE (diff)
downloadremembering-3a94df050166da6bf9fc3fda584b69816779d865.tar.gz
remembering-3a94df050166da6bf9fc3fda584b69816779d865.tar.xz
aux/: Update
Diffstat (limited to '')
-rwxr-xr-xaux/workflow/TODOs.sh34
-rwxr-xr-xaux/workflow/assert-changelog.sh2
-rwxr-xr-xaux/workflow/assert-manpages.sh90
-rwxr-xr-xaux/workflow/assert-readme.sh12
-rwxr-xr-xaux/workflow/assert-spelling.sh16
-rwxr-xr-xaux/workflow/assert-todos.sh4
-rwxr-xr-xaux/workflow/commonmark.sh41
-rwxr-xr-xaux/workflow/dist.sh2
-rwxr-xr-xaux/workflow/l10n.sh71
-rw-r--r--aux/workflow/preamble.md4
-rwxr-xr-xaux/workflow/public.sh33
-rwxr-xr-xaux/workflow/sign-tarballs.sh6
-rw-r--r--aux/workflow/style.css83
13 files changed, 204 insertions, 194 deletions
diff --git a/aux/workflow/TODOs.sh b/aux/workflow/TODOs.sh
index 6c24c3e..d875e0e 100755
--- a/aux/workflow/TODOs.sh
+++ b/aux/workflow/TODOs.sh
@@ -39,21 +39,21 @@ if [ -z "${PROJECT_UC:-}" ]; then
PROJECT_UC="$PROJECT"
fi
-TODOS_ADD_REGEX='s/^## (TODO|DOING|WAITING|MEETING|INACTIVE|NEXT|CANCELLED|DONE) (.*) \{#(.*?)\}$/## <a href="#\3"><span class="\1">\1<\/span> \2<\/a>\n<pre class="header-anchor" id="\3">#\3<\/pre>\n/'
-TODOS_CLEANUP_REGEX1='s/(<a><a)/<a/'
-TODOS_CLEANUP_REGEX2='s/<\/a><\/a>/<\/a>/'
-TAGS_REGEX='s/tag:([\w-]+)/<span class="tag">\1<\/span>/g'
+# shellcheck disable=1004
+IDS_REGEX='s:^## \(TODO\|DOING\|WAITING\|MEETING\|INACTIVE\|NEXT\|CANCELLED\|DONE\|WONTFIX\) \(.*\) {#\(.*\)}\(.*\)$:## <a href="#\3"><span class="\1">\1</span> \2</a>\4\
+<pre class="header-anchor" id="\3">#\3</pre>\
+:g'
+TAGS_REGEX='s|tag:\([a-z0-9-]*\)|<span class="tag">\1</span>|g'
-sed -e "s:@PROJECT_UC@:$PROJECT_UC:g" \
- -e "s:@PROJECT@:$PROJECT:g" \
- -e "s:@MAILING_LIST@:$MAILING_LIST:g" \
- -e "s:@TLD@:$TLD:g" \
- < aux/workflow/preamble.md | \
- printf \
- '%s\n\n%s' \
- "$(cat -)" \
- "$(perl -pe "$TODOS_ADD_REGEX" TODOs.md | perl -pe "$TAGS_REGEX")" | \
+cat aux/workflow/preamble.md TODOs.md | \
+ sed \
+ -e "s:@PROJECT_UC@:$PROJECT_UC:g" \
+ -e "s:@PROJECT@:$PROJECT:g" \
+ -e "s:@MAILING_LIST@:$MAILING_LIST:g" \
+ -e "s:@TLD@:$TLD:g" \
+ -e "$IDS_REGEX" \
+ -e "$TAGS_REGEX" | \
pandoc \
--toc \
--highlight-style pygments \
@@ -64,8 +64,8 @@ sed -e "s:@PROJECT_UC@:$PROJECT_UC:g" \
-r commonmark \
-w html \
-H aux/workflow/favicon.html \
- -H aux/workflow/style.css \
- | \
- perl -pe "$TODOS_CLEANUP_REGEX1" | \
- perl -pe "$TODOS_CLEANUP_REGEX2" \
+ -H aux/workflow/style.css | \
+ sed \
+ -e 's:<a><a:<a:g' \
+ -e 's:</a></a>:</a>:g' \
> "$OUTDIR/TODOs.html"
diff --git a/aux/workflow/assert-changelog.sh b/aux/workflow/assert-changelog.sh
index 11088a8..7f9117f 100755
--- a/aux/workflow/assert-changelog.sh
+++ b/aux/workflow/assert-changelog.sh
@@ -31,7 +31,7 @@ if [ -z "${PROJECT_UC:-}" ]; then
PROJECT_UC="$PROJECT"
fi
-HOMEPAGE_LINK="Changelog for [$PROJECT_UC](https://$TLD/$PROJECT/)."
+HOMEPAGE_LINK="Changelog for [$PROJECT_UC](https://$TLD/$PROJECT/en/)."
if ! grep -qF "$HOMEPAGE_LINK" CHANGELOG.md; then
echo "Missing link to homepage in CHANGELOG.md:" >&2
diff --git a/aux/workflow/assert-manpages.sh b/aux/workflow/assert-manpages.sh
index d609685..b26c7a4 100755
--- a/aux/workflow/assert-manpages.sh
+++ b/aux/workflow/assert-manpages.sh
@@ -2,8 +2,10 @@
set -eu
TLD="$(cat aux/tld.txt)"
+. aux/lib.sh
+
IN_PLACE=false
-while getopts 'n:m:i' flag; do
+while getopts 'l:n:m:i' flag; do
case "$flag" in
n)
PROJECT="$OPTARG"
@@ -14,6 +16,9 @@ while getopts 'n:m:i' flag; do
i)
IN_PLACE=true
;;
+ l)
+ LANGS="$OPTARG"
+ ;;
*)
exit 2
;;
@@ -28,11 +33,12 @@ assert_arg() {
fi
}
-assert_arg "${PROJECT:-}" '-n PROJECT'
+assert_arg "${PROJECT:-}" '-n PROJECT'
assert_arg "${MAILING_LIST:-}" '-m MAILING_LIST'
+assert_arg "${LANGS:-}" '-l LANGS'
-EXPECTED_EN="$(mktemp)"
+EXPECTED_EN="$(mkstemp)"
cat <<EOF | sed 's|-|\\-|g' >> "$EXPECTED_EN"
@@ -59,7 +65,7 @@ Browse bugs
online
.UE .
.IP \(bu
-.UR https://$TLD/$PROJECT/
+.UR https://$TLD/$PROJECT/en/
Homepage
.UE .
.IP \(bu
@@ -68,7 +74,7 @@ Comments and discussions
.UE .
EOF
-EXPECTED_PT="$(mktemp)"
+EXPECTED_PT="$(mkstemp)"
cat <<EOF | sed 's|-|\\-|g' >> "$EXPECTED_PT"
@@ -95,7 +101,7 @@ Veja os bugs
online
.UE .
.IP \(bu
-.UR https://$TLD/$PROJECT/
+.UR https://$TLD/$PROJECT/pt/
Página inicial
.UE .
.IP \(bu
@@ -104,7 +110,7 @@ Comentários e discussões
.UE .
EOF
-EXPECTED_FR="$(mktemp)"
+EXPECTED_FR="$(mkstemp)"
cat <<EOF | sed 's|-|\\-|g' >> "$EXPECTED_FR"
@@ -133,7 +139,7 @@ en
ligne
.UE .
.IP \(bu
-.UR https://$TLD/$PROJECT/
+.UR https://$TLD/$PROJECT/fr/
Page d'accueil
.UE .
.IP \(bu
@@ -142,7 +148,7 @@ Commentaires et discussions
.UE .
EOF
-EXPECTED_EO="$(mktemp)"
+EXPECTED_EO="$(mkstemp)"
cat <<EOF | sed 's|-|\\-|g' >> "$EXPECTED_EO"
@@ -169,7 +175,7 @@ Foliumu misfunkcioj
rete
.UE .
.IP \(bu
-.UR https://$TLD/$PROJECT/
+.UR https://$TLD/$PROJECT/eo/
Ĉefpaĝo
.UE .
.IP \(bu
@@ -179,39 +185,35 @@ Komentoj kaj diskutoj
EOF
-# shellcheck disable=2044
-for f in $(find doc -type f -name '*.[0-9]'); do
- LINES="$(wc -l "$f" | cut -d\ -f1)"
- if [ "$LINES" = 1 ] && grep -Eq '^\.so man.+$' "$f"; then
- continue
- fi
-
- if [ ! -s "$f" ]; then
- continue
- fi
-
- lang="$(echo "$f" | cut -d. -f2)"
- case "$lang" in
- pt)
- EXPECTED="$EXPECTED_PT"
- ;;
- fr)
- EXPECTED="$EXPECTED_FR"
- ;;
- eo)
- EXPECTED="$EXPECTED_EO"
- ;;
- *)
- EXPECTED="$EXPECTED_EN"
- ;;
- esac
-
- if ! tail -n "$(wc -l < "$EXPECTED")" "$f" | diff - "$EXPECTED"; then
- echo "Missing metadata at the end of \"$f\" file"
- if [ "$IN_PLACE" = true ]; then
- cat "$EXPECTED" >> "$f"
- else
- exit 1
+for from_f in "$@"; do
+ for lang in $LANGS; do
+ case "$lang" in
+ en)
+ EXPECTED="$EXPECTED_EN"
+ ;;
+ pt)
+ EXPECTED="$EXPECTED_PT"
+ ;;
+ fr)
+ EXPECTED="$EXPECTED_FR"
+ ;;
+ eo)
+ EXPECTED="$EXPECTED_EO"
+ ;;
+ *)
+ printf 'Unsupported lang: %s\n' "$lang" >&2
+ exit 2
+ ;;
+ esac
+
+ f="$(echo "$from_f" | sed "s/\.en\./.$lang./")"
+ if ! tail -n "$(wc -l < "$EXPECTED")" "$f" | diff - "$EXPECTED"; then
+ echo "Missing metadata at the end of \"$f\" file"
+ if [ "$IN_PLACE" = true ]; then
+ cat "$EXPECTED" >> "$f"
+ else
+ exit 1
+ fi
fi
- fi
+ done
done
diff --git a/aux/workflow/assert-readme.sh b/aux/workflow/assert-readme.sh
index f8a05a4..333a753 100755
--- a/aux/workflow/assert-readme.sh
+++ b/aux/workflow/assert-readme.sh
@@ -2,6 +2,8 @@
set -eu
TLD="$(cat aux/tld.txt)"
+. aux/lib.sh
+
while getopts 'n:m:' flag; do
case "$flag" in
n)
@@ -27,7 +29,7 @@ assert_arg() {
assert_arg "${PROJECT:-}" '-n PROJECT'
assert_arg "${MAILING_LIST:-}" '-m MAILING_LIST'
-EXPECTED="$(mktemp)"
+EXPECTED="$(mkstemp)"
cat <<EOF >> "$EXPECTED"
For running the extra development-only checks, run:
@@ -47,21 +49,21 @@ Send contributions to the [mailing list] via [\`git send-email\`](https://git-se
## Links
-- [homepage](https://$TLD/$PROJECT/)
+- [homepage](https://$TLD/$PROJECT/en/)
- [source code](https://git.euandreh.xyz/$PROJECT/)
- [bug tracking](https://$TLD/$PROJECT/TODOs.html)
- [mailing list]
- [CI logs](https://$TLD/$PROJECT/ci.html)
-- [CHANGELOG](https://$TLD/$PROJECT/CHANGELOG.html)
+- [CHANGELOG](https://$TLD/$PROJECT/en/CHANGELOG.html)
[mailing list]: https://lists.sr.ht/~euandreh/$MAILING_LIST?search=%5B$PROJECT%5D
EOF
-RELEASES_LIST="$(mktemp)"
+RELEASES_LIST="$(mkstemp)"
add_release() {
DATE="$1"
VVERSION="$2"
- echo "- [$VVERSION](https://git.euandreh.xyz/$PROJECT/commit/?id=$VVERSION) [$PROJECT-$VVERSION.tar.gz](https://git.euandreh.xyz/$PROJECT/snapshot/$PROJECT-$VVERSION.tar.gz) ([sig](https://git.euandreh.xyz/$PROJECT/snapshot/$PROJECT-$VVERSION.tar.gz.asc)), released in $DATE" >> "$RELEASES_LIST"
+ echo "- [$VVERSION](https://git.euandreh.xyz/$PROJECT/commit/?id=$VVERSION) [$PROJECT-$VVERSION.tar.xz](https://git.euandreh.xyz/$PROJECT/snapshot/$PROJECT-$VVERSION.tar.xz) ([sig](https://git.euandreh.xyz/$PROJECT/snapshot/$PROJECT-$VVERSION.tar.xz.asc)) - $DATE" >> "$RELEASES_LIST"
}
for VVERSION in $(git tag); do
diff --git a/aux/workflow/assert-spelling.sh b/aux/workflow/assert-spelling.sh
index 3781454..f1eef6f 100755
--- a/aux/workflow/assert-spelling.sh
+++ b/aux/workflow/assert-spelling.sh
@@ -1,11 +1,13 @@
#!/bin/sh
set -eu
+. aux/lib.sh
+
sort_dicts() {
- for f in doc/spelling/*.txt; do
+ for f in po/spelling/*.txt; do
if ! LANG=POSIX sort "$f" | diff - "$f"; then
if [ "$IN_PLACE" = true ]; then
- OUT="$(mktemp)"
+ OUT="$(mkstemp)"
LANG=POSIX sort "$f" | uniq > "$OUT"
mv "$OUT" "$f"
else
@@ -44,8 +46,8 @@ assert_arg() {
assert_arg "${LANGS:-}" '-l LANGS'
-mkdir -p doc/spelling
-eval "touch doc/spelling/{international,$(echo "$LANGS" | tr ' ' ,)}.txt"
+mkdir -p po/spelling
+eval "touch po/spelling/{international,$(echo "$LANGS" | tr ' ' ,)}.txt"
get_lang() {
grep lang=.. "$1" | \
@@ -57,11 +59,11 @@ get_lang() {
'
}
-ACC="$(mktemp)"
+ACC="$(mkstemp)"
for f in "$@"; do
l="$(get_lang "$f")"
- CURR_DICT="$(mktemp)"
- cat doc/spelling/international.txt "doc/spelling/$l.txt" | sort | uniq > "$CURR_DICT"
+ CURR_DICT="$(mkstemp)"
+ cat po/spelling/international.txt "po/spelling/$l.txt" | sort | uniq > "$CURR_DICT"
hunspell -u3 -H -d "$l" -p "$CURR_DICT" "$f" | tee -a "$ACC" >&2
done
diff --git a/aux/workflow/assert-todos.sh b/aux/workflow/assert-todos.sh
index ca73b7f..dfa1ab7 100755
--- a/aux/workflow/assert-todos.sh
+++ b/aux/workflow/assert-todos.sh
@@ -29,8 +29,8 @@ h2flag == 1 {
h2flag = 0
}
-/^## (TODO|DOING|WAITING|MEETING|INACTIVE|NEXT|CANCELLED|DONE)/ {
- if (match($0, / \{#.*?\}$/) == 0) {
+/^## (TODO|DOING|WAITING|MEETING|INACTIVE|NEXT|CANCELLED|DONE|WONTFIX)/ {
+ if (match($0, / \{#.*?\}.*$/) == 0) {
print "Missing ID for line " NR ":\n" $0
exitstatus = 1
}
diff --git a/aux/workflow/commonmark.sh b/aux/workflow/commonmark.sh
index 2333f5d..6f5e59b 100755
--- a/aux/workflow/commonmark.sh
+++ b/aux/workflow/commonmark.sh
@@ -1,19 +1,16 @@
#!/bin/sh
set -eu
-while getopts 'N:o:r:w:' flag; do
+while getopts 'N:t:l:' flag; do
case "$flag" in
N)
PROJECT_UC="$OPTARG"
;;
- o)
- OUTDIR="$OPTARG"
+ t)
+ TITLE="$OPTARG"
;;
- r)
- IN_FILE="$OPTARG"
- ;;
- w)
- OUT_FILE="$OPTARG"
+ l)
+ THE_LANG="$OPTARG"
;;
*)
exit 2
@@ -30,22 +27,16 @@ assert_arg() {
}
assert_arg "${PROJECT_UC:-}" '-N PROJECT_UC'
-assert_arg "${OUTDIR:-}" '-o OUTDIR'
-assert_arg "${IN_FILE:-}" '-i IN_FILE'
-
-if [ -z "${OUT_FILE:-}" ]; then
- OUT_FILE="${IN_FILE%.md}.html"
-fi
-
+assert_arg "${TITLE:-}" '-t TITLE'
+assert_arg "${THE_LANG:-}" '-l THE_LANG'
pandoc \
- --toc \
- --highlight-style pygments \
- --toc-depth=2 \
- -s \
- --metadata title="$PROJECT_UC - ${IN_FILE%.md}" \
- --metadata lang=en \
- -r commonmark \
- -w html \
- -H aux/workflow/favicon.html \
- < "$IN_FILE" > "$OUTDIR/$OUT_FILE"
+ --toc \
+ --highlight-style pygments \
+ --toc-depth=2 \
+ -s \
+ --metadata title="$PROJECT_UC - $TITLE" \
+ --metadata "lang=$THE_LANG" \
+ -r commonmark \
+ -w html \
+ -H aux/workflow/favicon.html
diff --git a/aux/workflow/dist.sh b/aux/workflow/dist.sh
index 69c0173..15593f4 100755
--- a/aux/workflow/dist.sh
+++ b/aux/workflow/dist.sh
@@ -73,7 +73,7 @@ sh aux/workflow/sign-tarballs.sh -n "$PROJECT"
cat <<EOF >&2
Now push the tag and the signature before pushing the commit:
-git push origin refs/notes/signatures/tar.gz -o skip-ci --no-verify
+git push origin refs/notes/signatures/tar.xz -o skip-ci --no-verify
git push --tags -o skip-ci --no-verify
git push
diff --git a/aux/workflow/l10n.sh b/aux/workflow/l10n.sh
index e1fd3bb..66e452a 100755
--- a/aux/workflow/l10n.sh
+++ b/aux/workflow/l10n.sh
@@ -2,49 +2,62 @@
set -eu
LANGS=
-while getopts 'l:' flag; do
+while getopts 'l:L:' flag; do
case "$flag" in
l)
LANGS="$OPTARG"
;;
+ L)
+ CONTRIBLANGS="$OPTARG"
+ ;;
*)
exit 2
;;
esac
done
shift $((OPTIND - 1))
-if [ -z "$LANGS" ]; then
- echo "Missing LANG" >&2
- exit 2
-fi
-end="\033[0m"
-yellow="\033[0;33m"
-manpage() {
- from_f="$1"
- for l in $LANGS; do
- to_f="$(echo "$from_f" | sed "s/\.en\./.$l./")"
+assert_arg() {
+ if [ -z "$1" ]; then
+ echo "Missing $2" >&2
+ exit 2
+ fi
+}
+
+assert_arg "${LANGS:-}" '-l LANGS'
+for from_f in "$@"; do
+ for lang in $LANGS ${CONTRIBLANGS:-}; do
+ to_f="$(echo "$from_f" | sed "s/\.en\./.$lang./")"
printf 'Generating %s...\n' "$to_f"
- OUT="$(mktemp)"
- po4a-updatepo -f man -m "$from_f" -p "doc/po/$l.po"
- po4a-translate -f man -m "$from_f" -p "doc/po/$l.po" -l "$to_f" -k 0 -v 2>&1 | tee "$OUT" >&2
+ pofile="po/LC_MESSAGES/$from_f/$lang.po"
+ mkdir -p "$(dirname "$pofile")"
- if ! grep -qF ' is 100% translated (' "$OUT"; then
- printf "\n\t${yellow}WARNING${end}!\n Missing translations for %s\n\n" "$to_f" >&2
- fi
+ case "$from_f" in
+ *.en.[1-9].in)
+ po4a-updatepo -f man -m "$from_f" -p "$pofile"
+ po4a-translate -f man -m "$from_f" -p "$pofile" -l "$to_f" -k 0 -v >&2
+ ;;
+ *.en.md)
+ touch "$pofile"
+ md2po --include-codeblocks --quiet --save --po-filepath "$pofile" < "$from_f"
+ po2md --pofiles "$pofile" --quiet --save "$to_f" --wrapwidth 999 < "$from_f"
+ ;;
+ *)
+ echo "Unsupported file format: $from_f" >&2
+ exit 2
+ ;;
+ esac
done
-}
+done
-for f in "$@"; do
- case "$f" in
- *.en.[1-9].in)
- mkdir -p doc/po
- manpage "$f"
- ;;
- *)
- echo "Unsupported file format: $f" >&2
- exit 2
- ;;
- esac
+end="\033[0m"
+yellowb="\033[1;33m"
+for lang in $LANGS; do
+ # shellcheck disable=2044
+ for pofile in $(find po/ -type f -name "$lang.po"); do
+ if LANG=POSIX msgfmt --statistics "$pofile" 2>&1 | grep untranslated; then
+ printf "\n\t${yellowb}WARNING${end}!\n Missing translations for %s\n\n" "$pofile" >&2
+ fi
+ done
done
diff --git a/aux/workflow/preamble.md b/aux/workflow/preamble.md
index dcc2fc3..ee32d58 100644
--- a/aux/workflow/preamble.md
+++ b/aux/workflow/preamble.md
@@ -1,9 +1,9 @@
# About
-TODOs for [@PROJECT_UC@](https://@TLD@/@PROJECT@/).
+TODOs for [@PROJECT_UC@](https://@TLD@/@PROJECT@/en/).
Register a new one at
-[~euandreh/@MAILING_LIST@@lists.sr.ht](mailto:~euandreh/@MAILING_LIST@@lists.sr.ht?subject=%5B@PROJECT@%5D%20BUG%20or%20TASK%3A%20%3Cdescription%3E)
+<span id="new">[~euandreh/@MAILING_LIST@@lists.sr.ht](mailto:~euandreh/@MAILING_LIST@@lists.sr.ht?subject=%5B@PROJECT@%5D%20BUG%20or%20TASK%3A%20%3Cdescription%3E)</span>
and see [existing discussions](https://lists.sr.ht/~euandreh/@MAILING_LIST@?search=%5B@PROJECT@%5D).
*Você também pode escrever em português*.
diff --git a/aux/workflow/public.sh b/aux/workflow/public.sh
index ef89d07..f9f3b3d 100755
--- a/aux/workflow/public.sh
+++ b/aux/workflow/public.sh
@@ -2,7 +2,7 @@
set -eu
PROJECT_UC=
-while getopts 'n:N:m:o:' flag; do
+while getopts 'n:N:m:o:l:' flag; do
case "$flag" in
n)
PROJECT="$OPTARG"
@@ -16,6 +16,9 @@ while getopts 'n:N:m:o:' flag; do
o)
OUTDIR="$OPTARG"
;;
+ l)
+ LANGS="$OPTARG"
+ ;;
*)
exit 2
;;
@@ -30,23 +33,25 @@ assert_arg() {
fi
}
-assert_arg "${PROJECT:-}" '-n PROJECT'
-assert_arg "${MAILING_LIST:-}" '-m MAILING_LIST'
-assert_arg "${OUTDIR:-}" '-o OUTDIR'
-
-if [ -z "${PROJECT_UC:-}" ]; then
- PROJECT_UC="$PROJECT"
-fi
+assert_arg "${PROJECT:-}" '-n PROJECT'
+assert_arg "${MAILING_LIST:-}" '-m MAILING_LIST'
+assert_arg "${OUTDIR:-}" '-o OUTDIR'
+assert_arg "${LANGS:-}" '-l LANGS'
+PROJECT_UC="${PROJECT_UC:-$PROJECT}"
mkdir -p "$OUTDIR"
sh aux/workflow/TODOs.sh -N "$PROJECT_UC" -n "$PROJECT" -m "$MAILING_LIST" -o "$OUTDIR"
-sh aux/workflow/commonmark.sh -N "$PROJECT" -o "$OUTDIR" -r README.md -w index.html
-if [ -f CHANGELOG.md ]; then
- sh aux/workflow/commonmark.sh -N "$PROJECT" -o "$OUTDIR" -r CHANGELOG.md
-fi
-
-sh aux/ci/report.sh -n "$PROJECT" -o "$OUTDIR"
+for lang in $LANGS; do
+ mkdir -p "$OUTDIR/$lang/"
+ sh aux/workflow/commonmark.sh -N "$PROJECT" -t README -l "$lang" < "README.$lang.md" > "$OUTDIR/$lang/index.html"
+ sh aux/workflow/commonmark.sh -N "$PROJECT" -t CHANGELOG -l "$lang" < "CHANGELOG.$lang.md" > "$OUTDIR/$lang/CHANGELOG.html"
+ cp aux/workflow/favicon.svg aux/workflow/favicon.png "$OUTDIR/$lang"
+done
+ln -fs en/index.html "$OUTDIR/index.html"
+ln -fs en/CHANGELOG.html "$OUTDIR/CHANGELOG.html"
cp aux/workflow/favicon.svg aux/workflow/favicon.png "$OUTDIR"
+
+sh aux/ci/report.sh -n "$PROJECT" -o "$OUTDIR"
diff --git a/aux/workflow/sign-tarballs.sh b/aux/workflow/sign-tarballs.sh
index 168d38d..3775e28 100755
--- a/aux/workflow/sign-tarballs.sh
+++ b/aux/workflow/sign-tarballs.sh
@@ -23,13 +23,13 @@ assert_arg() {
assert_arg "${PROJECT:-}" '-n PROJECT'
-SIGNATURES="$(git notes --ref=refs/notes/signatures/tar.gz list | cut -d\ -f2)"
+SIGNATURES="$(git notes --ref=refs/notes/signatures/tar.xz list | cut -d\ -f2)"
for tag in $(git tag); do
COMMIT="$(git rev-list -n1 "$tag")"
if ! echo "$SIGNATURES" | grep -qF "$COMMIT"; then
echo "Adding missing signature to $tag" >&2
- git notes --ref=refs/notes/signatures/tar.gz add -f -C "$(
- git archive --format tar.gz --prefix "$PROJECT-${tag#v}/" "$tag" |
+ git notes --ref=refs/notes/signatures/tar.xz add -C "$(
+ git archive --format tar.xz --prefix "$PROJECT-$tag/" "$tag" |
gpg --output - --armor --detach-sign |
git hash-object -w --stdin
)" "$tag"
diff --git a/aux/workflow/style.css b/aux/workflow/style.css
index d7935d0..d72991e 100644
--- a/aux/workflow/style.css
+++ b/aux/workflow/style.css
@@ -1,46 +1,41 @@
<style>
- hr {
- background-color: #ccc;
- }
-
- div.header-anchor {
- opacity: 0.5;
- }
-
- span.tag {
- font-family: monospace;
- font-size: 70%;
- background-color: lightgray;
- padding: 3px;
- border-radius: 5px;
- }
-
- /*
- Replicate colors from:
- https://git.euandreh.xyz/dotfiles/tree/spacemacs.el?id=fcd9f9c4ef399d45d54927382dc1cdde251ebb0a#n866
- */
-
- .TODO {
- color: brown;
- }
-
- .DOING {
- color: yellowgreen;
- }
-
- .WAITING, .MEETING {
- color: gray;
- }
-
- .INACTIVE {
- color: orange;
- }
-
- .NEXT {
- color: red;
- }
-
- .CANCELLED, .DONE {
- color: green;
- }
+ hr {
+ background-color: #ccc;
+ }
+
+ .header-anchor {
+ opacity: 0.5;
+ }
+
+ .tag {
+ font-family: monospace;
+ font-size: 70%;
+ background-color: lightgray;
+ padding: 3px;
+ border-radius: 5px;
+ }
+
+ .TODO {
+ color: brown;
+ }
+
+ .DOING {
+ color: yellowgreen;
+ }
+
+ .WAITING, .MEETING {
+ color: orange;
+ }
+
+ .INACTIVE {
+ color: gray;
+ }
+
+ .NEXT {
+ color: red;
+ }
+
+ .CANCELLED, .DONE, .WONTFIX {
+ color: green;
+ }
</style>