aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2021-01-16 16:07:09 -0300
committerEuAndreh <eu@euandre.org>2021-01-16 16:12:25 -0300
commit3c118c78dba38ae1155ac0f403ed257628541ef1 (patch)
treee671d95abbbccc2667dc2150f7ccf6295635e1ed
parentMove from TODOs.rst to TODOs.md (diff)
downloadserver-3c118c78dba38ae1155ac0f403ed257628541ef1.tar.gz
server-3c118c78dba38ae1155ac0f403ed257628541ef1.tar.xz
Use Perl to handle header anchors in TODOs.md
-rw-r--r--TODOs.md42
-rwxr-xr-xbuild-aux/workflow/TODOs.sh8
-rw-r--r--build-aux/workflow/style.css32
3 files changed, 36 insertions, 46 deletions
diff --git a/TODOs.md b/TODOs.md
index cb3bdc0..5175d68 100644
--- a/TODOs.md
+++ b/TODOs.md
@@ -1,23 +1,23 @@
# Tasks
-## <span class="TODO"></span> Add proper "commit" role to TODOs.rst {#task-268afd29-d602-4f9c-9de8-348cc0b671fb}
+## TODO Add proper "commit" role to TODOs.rst {#task-268afd29-d602-4f9c-9de8-348cc0b671fb}
- TODO in 2021-01-16
---
So that it links to CGit directly.
-## <span class="TODO"></span> Change base image away from default SSH port {#task-df87e340-4c35-469a-9bc1-fc57429a0b8e}
+## TODO Change base image away from default SSH port {#task-df87e340-4c35-469a-9bc1-fc57429a0b8e}
- TODO in 2021-01-16
---
-## <span class="TODO"></span> Error when running `/var/lib/certbot/renew-certificates` on `guix deploy` {#task-723d9fcd-fdec-4f57-b774-2ed20599a714}
+## TODO Error when running `/var/lib/certbot/renew-certificates` on `guix deploy` {#task-723d9fcd-fdec-4f57-b774-2ed20599a714}
- TODO in 2021-01-16
---
-## <span class="TODO"></span> Proper NGINX configuration {#task-da20aa03-3c74-4382-ba24-a9ea48334e00}
+## TODO Proper NGINX configuration {#task-da20aa03-3c74-4382-ba24-a9ea48334e00}
- TODO in 2021-01-16
---
@@ -26,14 +26,14 @@ So that it links to CGit directly.
- gzip
- cache everything, detect content changes?
-## <span class="TODO"></span> Cronjob: Duplicate tarballs in Git notes to static directory listing {#task-8fa7a0c2-4a27-4c56-9817-a47982995ade}
+## TODO Cronjob: Duplicate tarballs in Git notes to static directory listing {#task-8fa7a0c2-4a27-4c56-9817-a47982995ade}
- TODO in 2021-01-16
---
This way it is easier to browse what tarballs are available.
-## <span class="TODO"></span> Is an `activation-service-type` what I want? {#task-56ccba06-fa8e-47b2-b014-44b4417ee072}
+## TODO Is an `activation-service-type` what I want? {#task-56ccba06-fa8e-47b2-b014-44b4417ee072}
- TODO in 2021-01-16
---
@@ -41,26 +41,26 @@ This way it is easier to browse what tarballs are available.
I have the impression that these are the sources of errors when
rebooting the VPS.
-## <span class="TODO"></span> Provenance warning {#task-47992e04-038a-4528-9856-a25f60ebbb19}
+## TODO Provenance warning {#task-47992e04-038a-4528-9856-a25f60ebbb19}
- TODO in 2021-01-16
---
Fix provenance warning when running `guix deploy`.
-## <span class="TODO"></span> Try running on the Raspberry Pi {#task-bc537812-5f9d-4760-8c95-9ae933ecbd57}
+## TODO Try running on the Raspberry Pi {#task-bc537812-5f9d-4760-8c95-9ae933ecbd57}
- TODO in 2020-01-12
---
-## <span class="TODO"></span> Use custom README converter {#task-ac19877b-55e3-48c8-8c3a-071124d23cd2}
+## TODO Use custom README converter {#task-ac19877b-55e3-48c8-8c3a-071124d23cd2}
- TODO in 2021-01-12
---
Convert `README` file using markdown instead of plain text.
-## <span class="DONE"></span> Add index.html on built website {#task-92d8ad8d-df93-49c1-8393-eb7147326c29}
+## DONE Add index.html on built website {#task-92d8ad8d-df93-49c1-8393-eb7147326c29}
- DONE in 2020-12-02
Generate index.html from README.md. Done in
@@ -70,12 +70,12 @@ Convert `README` file using markdown instead of plain text.
---
-## <span class="TODO"></span> Test Guix deploy {#task-dee378cd-9e41-402b-9018-e9ebb05ef75d}
+## TODO Test Guix deploy {#task-dee378cd-9e41-402b-9018-e9ebb05ef75d}
- TODO in 2020-12-02
---
-## <span class="TODO"></span> External volume {#task-d76d4d2c-f07e-420b-8f30-28eb258494a6}
+## TODO External volume {#task-d76d4d2c-f07e-420b-8f30-28eb258494a6}
- TODO in 2020-11-30
---
@@ -95,7 +95,7 @@ resource "vultr_block_storage" "vps_storage" {
}
```
-## <span class="TODO"></span> Backups {#task-708bcd4f-4574-4227-8737-fcb10621f1ec}
+## TODO Backups {#task-708bcd4f-4574-4227-8737-fcb10621f1ec}
- TODO in 2020-11-30
---
@@ -115,7 +115,7 @@ re-creating everything from scratch.
- [ ] Matrix
- [ ] Certificates
-## <span class="TODO"></span> Monitoring {#task-5f0457af-49dc-4122-83ff-a0604e3c6a02}
+## TODO Monitoring {#task-5f0457af-49dc-4122-83ff-a0604e3c6a02}
- TODO in 2020-11-30
---
@@ -125,7 +125,7 @@ re-creating everything from scratch.
Reports via email.
-## <span class="TODO"></span> Intrusion prevention and detection {#task-ee160451-cfe8-49b2-a71f-6f1dca02cb9d}
+## TODO Intrusion prevention and detection {#task-ee160451-cfe8-49b2-a71f-6f1dca02cb9d}
- TODO in 2020-11-30
---
@@ -133,14 +133,14 @@ Reports via email.
- <http://www.fail2ban.org/wiki/index.php/Main_Page>
- <http://rkhunter.sourceforge.net/>
-## <span class="TODO"></span> Security review {#task-f8a54acf-a417-4957-ac13-21df9a57ed4c}
+## TODO Security review {#task-f8a54acf-a417-4957-ac13-21df9a57ed4c}
- TODO in 2020-11-30
---
<https://cheatsheetseries.owasp.org/Glossary.html>
-## <span class="TODO"></span> Build new Guix image and document the steps {#task-7d57aa50-597e-4a86-b9d7-c2d84f53e1c6}
+## TODO Build new Guix image and document the steps {#task-7d57aa50-597e-4a86-b9d7-c2d84f53e1c6}
- TODO in 2020-11-29
---
@@ -150,7 +150,7 @@ base image.
Setup custom SSH port in the base image itself.
-## <span class="TODO"></span> Setup cgit {#task-43a7a634-84ec-41de-b243-c27fd4a44c25}
+## TODO Setup cgit {#task-43a7a634-84ec-41de-b243-c27fd4a44c25}
- TODO in 2020-11-30
---
@@ -159,7 +159,7 @@ Setup custom SSH port in the base image itself.
- force redirect HTTPS
- permanent redirect www and everything else to non-www
-## <span class="TODO"></span> Add email mcron job report {#task-dd3f2bc7-8d6d-4bab-9a5e-d3211115e4f4}
+## TODO Add email mcron job report {#task-dd3f2bc7-8d6d-4bab-9a5e-d3211115e4f4}
- TODO in 2020-11-29
---
@@ -181,7 +181,7 @@ Setup custom SSH port in the base image itself.
# Decisions
-## <span class="DONE"></span> On public SSH key leakage {#decision-d38019ac-a2ad-484d-91e5-f4bdb1fa00ca}
+## DONE On public SSH key leakage {#decision-d38019ac-a2ad-484d-91e5-f4bdb1fa00ca}
- DONE in 2020-09-06
---
@@ -198,7 +198,7 @@ thing, but it prevents simple detections. It is still possible to find
this out via a script, but is orders of magnitute harder for the
attacker.
-## <span class="DONE"></span> Matrix over XMPP {#decision-de89fc4e-5c36-4f6b-9227-221b70e9f321}
+## DONE Matrix over XMPP {#decision-de89fc4e-5c36-4f6b-9227-221b70e9f321}
- DONE in 2020-11-29
---
diff --git a/build-aux/workflow/TODOs.sh b/build-aux/workflow/TODOs.sh
index b8a3f29..3ccd57b 100755
--- a/build-aux/workflow/TODOs.sh
+++ b/build-aux/workflow/TODOs.sh
@@ -1,4 +1,4 @@
-#!/bin/sh -eux
+#!/bin/sh -eu
mkdir -p public
@@ -6,8 +6,10 @@ export PROJECT_UC="$1"
export PROJECT="$2"
export MAILING_LIST="$3"
-envsubst < build-aux/workflow/preamble.md | \
- cat - TODOs.md | \
+REGEX='s/^## (TODO|DOING|WAITING|MEETING|INACTIVE|NEXT|CANCELLED|DONE) (.*) \{(#.*?)\}$/## <span class="\1">\1<\/span> \2 {\3}\n<a class="header-anchor" href="\3">\3<\/a>\n/'
+
+envsubst < build-aux/workflow/preamble.md | \
+ printf '%s\n\n%s' "$(cat -)" "$(perl -pe "$REGEX" TODOs.md)" | \
pandoc --toc \
--highlight-style pygments \
--toc-depth=2 \
diff --git a/build-aux/workflow/style.css b/build-aux/workflow/style.css
index b68ff70..a4ac27a 100644
--- a/build-aux/workflow/style.css
+++ b/build-aux/workflow/style.css
@@ -3,48 +3,36 @@
background-color: #ccc;
}
+ a.header-anchor {
+ opacity: 0.5;
+ }
+
/*
Replicate colors from:
https://git.euandreh.xyz/dotfiles/tree/spacemacs.el?id=fcd9f9c4ef399d45d54927382dc1cdde251ebb0a#n866
*/
- .TODO::after {
- content: "TODO";
+ .TODO {
color: brown;
}
- .DOING::after {
- content: "DOING";
+ .DOING {
color: yellowgreen;
}
- .WAITING::after {
- content: "WAITING";
- color: gray;
- }
-
- .MEETING::after {
- content: "MEETING";
+ .WAITING, .MEETING {
color: gray;
}
- .INACTIVE::after {
- content: "INACTIVE";
+ .INACTIVE {
color: orange;
}
- .NEXT::after {
- content: "NEXT";
+ .NEXT {
color: red;
}
- .CANCELLED::after {
- content: "CANCELLED";
- color: green;
- }
-
- .DONE::after {
- content: "DONE";
+ .CANCELLED, .DONE {
color: green;
}
</style>