gopherdashboard: Sysadmin via Gopher

                     _                     _               _      _                            _   _
 __ _   ___   _ __  | |_    ___   _ _   __| |  __ _   ___ | |_   | |__   ___   __ _   _ _   __| | (_)
/ _` | / _ \ | '_ \ | ' \  / -_) | '_| / _` | / _` | (_-< | ' \  | '_ \ / _ \ / _` | | '_| / _` |  _
\__, | \___/ | .__/ |_||_| \___| |_|   \__,_| \__,_| /__/ |_||_| |_.__/ \___/ \__,_| |_|   \__,_| (_)
|___/        |_|

 ___                         _           _
/ __|  _  _   ___  __ _   __| |  _ __   (_)  _ _
\__ \ | || | (_-< / _` | / _` | | '  \  | | | ' \
|___/  \_, | /__/ \__,_| \__,_| |_|_|_| |_| |_||_|
       |__/

       _
__ __ (_)  __ _
\ V / | | / _` |
 \_/  |_| \__,_|


  ___                _
 / __|  ___   _ __  | |_    ___   _ _
| (_ | / _ \ | '_ \ | ' \  / -_) | '_|
 \___| \___/ | .__/ |_||_| \___| |_|
             |_|

╔─*──*──*──*──*──*──*──*──*──*──*──*──*──*──*──*─╗
║1   ........................................   1║
║2*  ........................................  *2║
║3   ........................................   3║
║1   ...........Posted: 2024-03-07...........   1║
║2*  .....Tags: gopher haskell showcase .....  *2║
║3   ........................................   3║
║1   ........................................   1║
╚────────────────────────────────────────────────╝

gopherdashboard[1].

Anonymous forum software written for the Gopher Protocol in Haskell. You may
want to read my article on using the Gopher Protocol[2].

Some core things I learned or did:

* systemd daemon managed
* release management
* packaging for debian
* worrying about privileges/infosec (I am, after all, allowing people to
 configure the dashboard to execute potentially any arbitrary command they
 want)

Cool features:

* Execute arbitrary commands if you want (flag to enable this not-so-safe
 feature)
* Monitor arbitrary files
* Configure through a JSON file

## How I use it

Some configuration I have as of March 7, 2024 is:

* Ability to query/get status of arbitrary services
* Look at disk usage
* Show the uptime and various backup ages
* Quip of the latest APC UPS events (ability to view full log)
* `debsecan` report, with CVEs found count displayed on dashboard
* `chrootkit` log
* `restic` backup information (for server)

## Footnotes

[1]: gopherdashboard: https://github.com/someodd/gopherdashboard
[2]: my article on using the Gopher Protocol: /notes/gopher