markdownlint #13

Merged
n merged 2 commits from md into main 2024-10-03 23:57:42 +02:00
4 changed files with 107 additions and 47 deletions

View file

@ -7,4 +7,8 @@ jobs:
name: check
steps:
- uses: actions/checkout@v4
- uses: actions/markdownlint-cli2-action@v17
with:
globs: |
**/*.md
- run: shellcheck *.sh monitoring/*.sh

3
.markdownlint.json Normal file
View file

@ -0,0 +1,3 @@
{
"MD029": { "style": "zero" }
}

View file

@ -1,13 +1,14 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
# Do what the fuck you want to public license
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
Version 2, December 2004
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
0. You just DO WHAT THE FUCK YOU WANT TO.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.

128
README.md
View file

@ -6,57 +6,109 @@ Various scripts for various tasks.
Scripts
-------
* [backupnaz.sh](https://forge.tourmentine.com/n/scripts/src/main/backupnaz.sh) => used to backup my NAS
* [bootstraponline.sh](https://forge.tourmentine.com/n/scripts/src/main/bootstraponline.sh) => create a root-on-zfs FreeBSD server. can be used on Scaleway/Online, using this [howto](https://loicpefferkorn.net/2015/10/freebsd-10.2-release-on-a-dedibox-xc-server-online.net-with-root-on-zfs/)
* [cleanmaildir.sh](https://forge.tourmentine.com/n/scripts/src/main/cleanmaildir.sh) => delete old mail in maildirs
* [dodo.sh](https://forge.tourmentine.com/n/scripts/src/main/dodo.sh) => turn off screen using DPMS
* [dump_mysql.sh](https://forge.tourmentine.com/n/scripts/src/main/dump_mysql.sh) => dump all mysql databases (and send a report to the monitoring system)
* [dump_postgresql.sh](https://forge.tourmentine.com/n/scripts/src/main/dump_postgresql.sh) => dump all Postgres databases (and send a report to the monitoring system). based on [dump_mysql.sh](https://forge.tourmentine.com/n/scripts/src/main/dump_mysql.sh).
* [opdsupdates.py](https://forge.tourmentine.com/n/scripts/src/main/opdsupdates.py) => look for OPDS catalog updates and send a mail if any
* [qownnotes-mermaid-dark.qml](https://forge.tourmentine.com/n/scripts/src/main/qownnotes-mermaid-dark.qml) => Fork of QOwnNotes' [Mermaid script](https://github.com/qownnotes/scripts/tree/master/mermaid) for dark theme
* [randomwallpaper.sh](https://forge.tourmentine.com/n/scripts/src/main/randomwallpaper.sh) => display a random wallpaper
* [secupdate](https://forge.tourmentine.com/n/scripts/src/main/secupdate) => apply security updates & recompile kernel (FreeBSD)
* [superscreen](https://forge.tourmentine.com/n/scripts/src/main/superscreen) => open multiple ssh sessions to a bunch of servers inside a screen
* [supertmux](https://forge.tourmentine.com/n/scripts/src/main/supertmux) => open multiple ssh sessions to a bunch of servers inside a tmux
* [zfsync.sh](https://forge.tourmentine.com/n/scripts/src/main/zfsync.sh) => sync some ZFS pools between two machines
* [backupnaz.sh](https://forge.tourmentine.com/n/scripts/src/main/backupnaz.sh)
=> used to backup my NAS
* [bootstraponline.sh](https://forge.tourmentine.com/n/scripts/src/main/bootstraponline.sh)
=> create a root-on-zfs FreeBSD server. can be used on Scaleway/Online,
using this
[howto](https://loicpefferkorn.net/2015/10/freebsd-10.2-release-on-a-dedibox-xc-server-online.net-with-root-on-zfs/)
* [cleanmaildir.sh](https://forge.tourmentine.com/n/scripts/src/main/cleanmaildir.sh)
=> delete old mail in maildirs
* [dodo.sh](https://forge.tourmentine.com/n/scripts/src/main/dodo.sh)
=> turn off screen using DPMS
* [dump_mysql.sh](https://forge.tourmentine.com/n/scripts/src/main/dump_mysql.sh)
=> dump all mysql databases (and send a report to the monitoring system)
* [dump_postgresql.sh](https://forge.tourmentine.com/n/scripts/src/main/dump_postgresql.sh)
=> dump all Postgres databases (and send a report to the monitoring system).
based on [dump_mysql.sh](https://forge.tourmentine.com/n/scripts/src/main/dump_mysql.sh).
* [opdsupdates.py](https://forge.tourmentine.com/n/scripts/src/main/opdsupdates.py)
=> look for OPDS catalog updates and send a mail if any
* [qownnotes-mermaid-dark.qml](https://forge.tourmentine.com/n/scripts/src/main/qownnotes-mermaid-dark.qml)
=> Fork of QOwnNotes' [Mermaid script](https://github.com/qownnotes/scripts/tree/master/mermaid)
for dark theme
* [randomwallpaper.sh](https://forge.tourmentine.com/n/scripts/src/main/randomwallpaper.sh)
=> display a random wallpaper
* [secupdate](https://forge.tourmentine.com/n/scripts/src/main/secupdate)
=> apply security updates & recompile kernel (FreeBSD)
* [superscreen](https://forge.tourmentine.com/n/scripts/src/main/superscreen)
=> open multiple ssh sessions to a bunch of servers inside a screen
* [supertmux](https://forge.tourmentine.com/n/scripts/src/main/supertmux)
=> open multiple ssh sessions to a bunch of servers inside a tmux
* [zfsync.sh](https://forge.tourmentine.com/n/scripts/src/main/zfsync.sh)
=> sync some ZFS pools between two machines
Greasemonkey/Userscripts
------------------------
* [autocompleteondamnit.user.js](https://forge.tourmentine.com/n/scripts/src/main/userscripts/autocompleteondamnit.user.js) => greasemonkey script for autocomplete on all forms
* [nickbook.user.js](https://forge.tourmentine.com/n/scripts/src/main/userscripts/nickbook.user.js) => greasemonkey script for facebook
* [rue89.user.js](https://forge.tourmentine.com/n/scripts/src/main/userscripts/rue89.user.js) => greasemonkey script to restore legacy rue89 favicon
* [clearvtigerloginform.user.js](https://forge.tourmentine.com/n/scripts/src/main/userscripts/clearvtigerloginform.user.js) => greasemonkey script to remove auto-filled login&password "admin" added by VTiger setup
* [autocompleteondamnit.user.js](https://forge.tourmentine.com/n/scripts/src/main/userscripts/autocompleteondamnit.user.js)
=> greasemonkey script for autocomplete on all forms
* [nickbook.user.js](https://forge.tourmentine.com/n/scripts/src/main/userscripts/nickbook.user.js)
=> greasemonkey script for facebook
* [rue89.user.js](https://forge.tourmentine.com/n/scripts/src/main/userscripts/rue89.user.js)
=> greasemonkey script to restore legacy rue89 favicon
* [clearvtigerloginform.user.js](https://forge.tourmentine.com/n/scripts/src/main/userscripts/clearvtigerloginform.user.js)
=> greasemonkey script to remove auto-filled login&password "admin" added by
VTiger setup
Patches
-------
* [alcasar_logo.patch](https://forge.tourmentine.com/n/scripts/src/main/alcasar_logo.patch) => small patch to add a background changer for ALCASAR webpages
* [shaarli_OleG.0.9.0.patch](https://forge.tourmentine.com/n/scripts/src/main/shaarli_OleG.0.9.0.patch) => Open Graph support for Shaarli 0.9.X ( Hi [Charly](https://fr.wikipedia.org/wiki/Charly_Oleg)! ). no more necessary in Shaarli 0.10.0 and after
* [twitter2clickable.diff](https://forge.tourmentine.com/n/scripts/src/main/twitter2clickable.diff) => makes Twitter & Fediverse links clickable in Shaarli 0.9.X-0.11.X ( Hi [Charly](https://fr.wikipedia.org/wiki/Charly_Oleg)! ). no more usable in Shaarli 0.12.X, please use [clickat plugin](https://forge.tourmentine.com/n/clickat) instead
* [alcasar_logo.patch](https://forge.tourmentine.com/n/scripts/src/main/alcasar_logo.patch)
=> small patch to add a background changer for ALCASAR webpages
* [shaarli_OleG.0.9.0.patch](https://forge.tourmentine.com/n/scripts/src/main/shaarli_OleG.0.9.0.patch)
=> Open Graph support for Shaarli 0.9.X
( Hi [Charly](https://fr.wikipedia.org/wiki/Charly_Oleg)! ).
no more necessary in Shaarli 0.10.0 and after
* [twitter2clickable.diff](https://forge.tourmentine.com/n/scripts/src/main/twitter2clickable.diff)
=> makes Twitter & Fediverse links clickable in Shaarli 0.9.X-0.11.X
( Hi [Charly](https://fr.wikipedia.org/wiki/Charly_Oleg)! ).
no more usable in Shaarli 0.12.X, please use
[clickat plugin](https://forge.tourmentine.com/n/clickat) instead
Monitoring
-------
* [check_ntppool_score](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_ntppool_score) => Simple shell script to check score on NTP Pool Project (score must be over 10 to serve NTP). Requires cURL and bc, fits for Nagios/Shinken/Icinga/etc.
* [collectd_ntppool_score](https://forge.tourmentine.com/n/scripts/src/main/monitoring/collectd_ntppool_score) => Same as [check_ntppool_score](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_ntppool_score) but for collectd graphing.
* [check_postgresql_replication.sh](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_postgresql_replication.sh) => check postgresql's replication lag.
* [check_rspamc](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_rspamc) => Check rspamd status. Heavily based on [check_spamc](https://www.vanheusden.com/Linux/check_spamc-0.1.tgz).
* [check_gemini.sh](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_gemini.sh) => Nagios/Icinga check for Gemini capsule availability. Requires gnutls for now (not tested with other tls clients).
* [check_lastdate.sh](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_lastdate.sh) => Check for a +%Y-%m-%d %H:%M:%S-formated date in the last two lines of a file.
* [GonKyrellM](https://forge.tourmentine.com/n/scripts/src/main/monitoring/GonKyrellM) => Conky, GKrellM style - with "invisible" theme (well, sort of)
* [collectweather.sh](https://forge.tourmentine.com/n/scripts/src/main/monitoring/collectweather.sh) => get weather data from https://openweathermap.org/ and feed collectd with it. needs jq as OpenWeather provides data in json format.
* [check_ntppool_score](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_ntppool_score)
=> Simple shell script to check score on NTP Pool Project (score must be over 10
to serve NTP). Requires cURL and bc, fits for Nagios/Shinken/Icinga/etc.
* [collectd_ntppool_score](https://forge.tourmentine.com/n/scripts/src/main/monitoring/collectd_ntppool_score)
=> Same as [check_ntppool_score](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_ntppool_score)
but for collectd graphing.
* [check_postgresql_replication.sh](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_postgresql_replication.sh)
=> check postgresql's replication lag.
* [check_rspamc](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_rspamc)
=> Check rspamd status. Heavily based on [check_spamc](https://www.vanheusden.com/Linux/check_spamc-0.1.tgz).
* [check_gemini.sh](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_gemini.sh)
=> Nagios/Icinga check for Gemini capsule availability. Requires gnutls for now
(not tested with other tls clients).
* [check_lastdate.sh](https://forge.tourmentine.com/n/scripts/src/main/monitoring/check_lastdate.sh)
=> Check for a +%Y-%m-%d %H:%M:%S-formated date in the last two lines of a file.
* [GonKyrellM](https://forge.tourmentine.com/n/scripts/src/main/monitoring/GonKyrellM)
=> Conky, GKrellM style - with "invisible" theme (well, sort of)
* [collectweather.sh](https://forge.tourmentine.com/n/scripts/src/main/monitoring/collectweather.sh)
=> get weather data from [https://openweathermap.org/] and feed collectd with it.
needs jq as OpenWeather provides data in json format.
Attic
-----
* [73lab.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/73lab.sh) => grap 73lab's wallpapers
* [caminfo.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/caminfo.sh) => update webcam info with xmms ouput
* [caminit](https://forge.tourmentine.com/n/scripts/src/main/attic/caminit) => manage a very old webcam (Logitech Quickcam)
* [kimsufi_postinstall.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/kimsufi_postinstall.sh) => bootstrap script for fresh kimsufi/OVH servers
* [mplayer_update.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/mplayer_update.sh) => download, compile and install FFMpeg & MPlayer
* [mkvig](https://forge.tourmentine.com/n/scripts/src/main/attic/mkvig) => little script to download covers
* [tssh](https://forge.tourmentine.com/n/scripts/src/main/attic/tssh) => automaticaly rename Konsole tabs using ssh'ed hostname
* [webnewsget2.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/webnewsget2.sh)+[html2rss.php](https://forge.tourmentine.com/n/scripts/src/main/attic/html2rss.php) => download HTML pages and generate RSS feeds from them
* [tsize.c](https://forge.tourmentine.com/n/scripts/src/main/attic/tsize.c) => small utility that displays a directory's size (yes, I basically rewrote DU(1)). original comments & bugs included, straight from the Millenium era
* [73lab.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/73lab.sh)
=> grap 73lab's wallpapers
* [caminfo.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/caminfo.sh)
=> update webcam info with xmms ouput
* [caminit](https://forge.tourmentine.com/n/scripts/src/main/attic/caminit)
=> manage a very old webcam (Logitech Quickcam)
* [kimsufi_postinstall.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/kimsufi_postinstall.sh)
=> bootstrap script for fresh kimsufi/OVH servers
* [mplayer_update.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/mplayer_update.sh)
=> download, compile and install FFMpeg & MPlayer
* [mkvig](https://forge.tourmentine.com/n/scripts/src/main/attic/mkvig)
=> little script to download covers
* [tssh](https://forge.tourmentine.com/n/scripts/src/main/attic/tssh)
=> automaticaly rename Konsole tabs using ssh'ed hostname
* [webnewsget2.sh](https://forge.tourmentine.com/n/scripts/src/main/attic/webnewsget2.sh)
+[html2rss.php](https://forge.tourmentine.com/n/scripts/src/main/attic/html2rss.php)
=> download HTML pages and generate RSS feeds from them
* [tsize.c](https://forge.tourmentine.com/n/scripts/src/main/attic/tsize.c)
=> small utility that displays a directory's size (yes, I basically rewrote
DU(1)). original comments & bugs included, straight from the Millenium era