diff --git a/docs/desktop/scanning.md b/docs/desktop/scanning.md
new file mode 100644
index 0000000000000000000000000000000000000000..b11172b6f2652a7ed2d9fd9f4ff4c31172d17dca
--- /dev/null
+++ b/docs/desktop/scanning.md
@@ -0,0 +1,50 @@
+# Scanning
+
+- [sane-project Gitlab](https://gitlab.com/sane-project)
+
+## Simple-scan
+
+Works !
+
+## scanimage
+
+Show scanners detected by `saned`:
+
+```sh
+scanimage -L
+```
+
+scanimage by itself can scan to pnm (default), tiff, png or jpg format
+
+```sh
+scanimage --format=jpg > /tmp/i.jpg
+scanimage > /tmp/i.pnm
+```
+
+scan to pdf
+
+```sh
+scan_pdf /tmp/out.pdf
+```
+
+which is aliased to
+
+```sh
+scanimage -p --resolution 250 --mode Grayscale | pnmtops -imageheight 11 -imagewidth 8.5 | ps2pdf -
+```
+
+Show all avaiable options, including all device options:
+
+```sh
+scanimage -h
+```
+
+## Troubleshooting
+
+### Network scanners
+
+- Firewalld blocks scanning
+
+```sh
+systemctl stop firewalld.service
+```
diff --git a/docs/etc/locale.md b/docs/etc/locale.md
new file mode 100644
index 0000000000000000000000000000000000000000..a27fa14e092650b5015f963f4633931aaa984aa0
--- /dev/null
+++ b/docs/etc/locale.md
@@ -0,0 +1,33 @@
+# Locale Settings
+
+On systemd enabled systems:
+
+```sh
+localectl set-locale LANG=en_US.UTF-8
+```
+
+## Etc
+
+<https://www.thomas-krenn.com/en/wiki/Configure_Locales_in_Ubuntu>
+<https://help.ubuntu.com/community/Locale>
+
+For all locale meanings: `man 7 locale`
+
+Default locale config files:
+
+- `/etc/default/locale`
+- `.pam_environment`
+
+I don't know where but the most locales are set to `en_US.UTF-8`,
+so we need to reset them in `~/.shrc`
+
+## Use ISO 8601 (YYYY-MM-DD) as default time
+
+<https://wiki.archlinux.org/index.php/locale#LC_TIME:\_date_and_time_format>
+
+```sh
+sudo locale-gen en_DK.UTF-8
+locale -a | grep en_DK.utf8
+
+export LC_TIME=en_DK.UTF-8
+```
diff --git a/docs/media/images/PosterPrinting.md b/docs/media/images/PosterPrinting.md
new file mode 100644
index 0000000000000000000000000000000000000000..11e3d24c6319b9bd6bb38a70f86baa99ea69f96b
--- /dev/null
+++ b/docs/media/images/PosterPrinting.md
@@ -0,0 +1,13 @@
+# Poster printing
+
+## Photoprint
+
+- GUI
+- Can hanlde SVGs
+- Hard to handle
+- No PDF export
+
+## PosteRazor
+
+- No SVG, no PDF inputs
+- PDF output
diff --git a/docs/monitoring/grafana/dashboards.md b/docs/monitoring/grafana/dashboards.md
index a4872c0b7f0d609bf30c806917867a00b61969c8..e37e3efb39f2f07e3eefa02a1a96f3013e6a37a2 100644
--- a/docs/monitoring/grafana/dashboards.md
+++ b/docs/monitoring/grafana/dashboards.md
@@ -7,6 +7,10 @@ Example dashboards:
 - [anarcat/grafana-dashboards](https://gitlab.com/anarcat/grafana-dashboards)
 - [float dashboards](https://git.autistici.org/ai3/float/-/tree/master/roles/float-infra-prometheus/templates/grafana/dashboards)
 
+## Tips
+
+- [How to make Grafana/Prometheus summarize values by max or peak when zooming out](https://community.grafana.com/t/how-to-make-grafana-prometheus-summarize-values-by-max-or-peak-when-zooming-out/52506/1)
+
 ## Provisioning
 
 [Provisioning docs](https://grafana.com/docs/grafana/latest/administration/provisioning)
@@ -101,7 +105,6 @@ uses [jsonnet](https://github.com/google/jsonnet)
 > however, the components present are useable. We very much appreciate
 > contributions in grafana/dashboard-spec for components yet to be added.
 
-- [API docs](https://grafana.github.io/grafonnet-lib/api-docs/)
 - [Example Dashboards](https://github.com/grafana/grafonnet-lib/tree/master/examples)
 - [Vim jsonnet filetype plugin](https://github.com/google/vim-jsonnet)
 - [Grafana as code medium article](https://medium.com/@tarantool/grafana-as-code-b642cac9ae75)
diff --git a/docs/software/surveys.md b/docs/software/surveys.md
new file mode 100644
index 0000000000000000000000000000000000000000..c57f9d5a4b6cfcd3c00c521215329332c6905071
--- /dev/null
+++ b/docs/software/surveys.md
@@ -0,0 +1,10 @@
+# Survey tools
+
+## Opem source, self-hostable
+
+- <https://apps.nextcloud.com/apps/forms>
+- <https://www.limesurvey.org/> (GH's instance: <https://survey.greenhost.net/>)
+
+## Online, freemium
+
+- <https://tally.so>
diff --git a/docs/web/validation.md b/docs/web/validation.md
new file mode 100644
index 0000000000000000000000000000000000000000..1072b9baea3c1a594cf153fdcd8cb879e1c601c2
--- /dev/null
+++ b/docs/web/validation.md
@@ -0,0 +1,38 @@
+# Website validation
+
+## HTML
+
+### Nu Html Checker (v.Nu)
+
+- [Website](https://validator.github.io/validator/)
+- [GitHub](https://github.com/validator/validator)
+- [Online service](https://validator.w3.org/nu/)
+- AUR package: `validatornu`
+
+Usage:
+
+```sh
+$ validatornu index.html
+"file:/home/varac/projects/websites/personal-website/varacs-hugo-site/public/index.html":16.1-16.16:
+  error: Stray start tag “html”.
+"file:/home/varac/projects/websites/personal-website/varacs-hugo-site/public/index.html":16.1-16.16:
+  error fatal: Cannot recover after last error. Any further errors will be ignored.
+"file:/home/varac/projects/websites/personal-website/varacs-hugo-site/public/index.html":1.16-2.7:
+  info warning: Consider adding a “lang” attribute to the “html” start tag to declare the language of this document.
+```
+
+```sh
+validatornu --format json index.html
+```
+
+### Outdated tools
+
+- [Tidy](https://www.html-tidy.org/)
+  - [GitHub](https://github.com/htacg/tidy-html5)
+  - Last release 2021
+  - AUR package `tidy-html5-git` fails to install
+
+## CSS
+
+- [Csstidy](https://csstidy.sourceforge.net/index.php)
+  Last release 2007