aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/.gitignore2
-rw-r--r--docs/README.md35
-rw-r--r--docs/appsluggr.1.md103
-rw-r--r--docs/cadeybot.1.md51
-rw-r--r--docs/flagconfyg.5.md25
-rw-r--r--docs/ghstat.1.md62
-rw-r--r--docs/ilo-kesi.1.md111
-rw-r--r--docs/license.1.md75
-rw-r--r--docs/quickserv.1.md36
-rw-r--r--internal/mainsa/cmd/mainsanow/main.go2
10 files changed, 37 insertions, 465 deletions
diff --git a/docs/.gitignore b/docs/.gitignore
new file mode 100644
index 0000000..e4aae30
--- /dev/null
+++ b/docs/.gitignore
@@ -0,0 +1,2 @@
+*.1.md
+*.5.md
diff --git a/docs/README.md b/docs/README.md
index d7861c2..b066efc 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,3 +1,36 @@
# x
-This is an attempt to document the commands and tools in x. This might fail.
+## Commands
+
+- almarid - a mastodon bot mocking IRC spambots.
+- appsluggr - appsluggr packages a precompiled binary application as a Heroku style slug for use with Dokku.
+- cadeybot - Markov bot based on my discord GDPR dump.
+- ff-primitive - [Farbfeld](https://tools.suckless.org/farbfeld/) filter to apply [Primitive](http://primitive.lol) to images piped through it.
+- frequency - litbot/user frequency counter for [Ponyville FM](https://ponyvillefm.com/).
+- furrybb - boosts everything with #furry on mastodon (inactive).
+- idp - [IndieAuth](https://indieweb.org/authorization-endpoint) authorization endpoint.
+- ilo-kesi - ni li ilo sona pi toki pona.
+- la-baujmi - An accidentally created type system with toki pona.
+- license - Generate software licenses from a rather large list of templates.
+- mainsanow - ni li ilo sona tenpo pi ma insa.
+- mkapp - Creates the credentials needed for mastodon bots as I use them.
+- pdevbitcoinbot - A simple webhook discord bot for bitcoin price stats powered by cron.
+- polyglot - Braces algorithm Telegram bot for Lojban and toki pona.
+- priorworkgen - Lists all of my GitHub repositories for job stuff.
+- quickserv - Quickly and dirtily serve a folder as a HTTP server.
+- thumber - Automagically creates thumbnail images for a folder of images.
+- tptrans - Translates toots with #tokipona from toki pona -> english.
+- within.website - Go vanity domain for some of my packages.
+
+## Libraries
+
+All of these are Go libraries.
+
+- [github.com/Xe/x/idp/middleware](https://godoc.org/github.com/Xe/x/idp/idpmiddleware) - a simple HTTP middleware that protects routes using idp(1).
+- [github.com/Xe/x/localca](https://godoc.org/github.com/Xe/x/localca) - localca uses an autocert.Cache to store and generate TLS certificates for domains on demand.
+- [github.com/Xe/x/markov](https://godoc.org/github.com/Xe/x/markov) - markov chain generation.
+- [github.com/Xe/x/tun2](https://godoc.org/github.com/Xe/x/tun2) - tunnels HTTP requests over existing, long-lived connections using smux[1] and optionally kcp[2] to enable more reliable transport.
+- [github.com/Xe/x/web](https://godoc.org/github.com/Xe/x/web) - common HTTP error types.
+- [github.com/Xe/x/web/discordwebhook](https://godoc.org/github.com/Xe/x/web/discordwebhook) - Discord webhooks.
+- [github.com/Xe/x/web/switchcounter](https://godoc.org/github.com/Xe/x/web/switchcounter) - a simple interface to the https://www.switchcounter.science/ API.
+- [github.com/Xe/x/web/tokiponatokens](https://godoc.org/github.com/Xe/x/web/tokiponatokens) - a wrapper to a Toki Poka tokenizer.
diff --git a/docs/appsluggr.1.md b/docs/appsluggr.1.md
deleted file mode 100644
index 8e59e93..0000000
--- a/docs/appsluggr.1.md
+++ /dev/null
@@ -1,103 +0,0 @@
-APPSLUGGR(1) - General Commands Manual (urm)
-
-# NAME
-
-**appsluggr** - appsluggr packages a precompiled binary application as a Heroku style slug for use with Dokku.
-
-# SYNOPSIS
-
-**appsluggr**
-
-\[**-fname**]
-\[**-license**]
-\[**-web**]
-\[**-web-scale**]
-\[**-worker**]
-\[**-worker-scale**]
-
-# DESCRIPTION
-
-**appsluggr**
-is a small tool to package
-`GOOS=linux GOARCH=amd64`
-binaries for consumption on
-`hyperlink: http://dokku.viewdocs.io/dokku/ Dokku`
-
-**-fname**
-
-> The filename to write the resulting slug to.
-
-> The default value for this is
-> `slug.tar.gz`
-
-**-license**
-
-> If set, the tool will show its software license details and then exit.
-
-**-web**
-
-> The path to the binary for the web process.
-
-> One of
-> **-web**
-> or
-> **-worker**
-> must be set.
-
-**-web-scale**
-
-> The default scale for web process if defined.
-
-> The default value for this is 1.
-
-**-worker**
-
-> The path to the binary for the worker process.
-> One of
-> **-web**
-> or
-> **-worker**
-> must be set.
-
-**-worker-scale**
-
-> The default scale for the worker process if defined.
-
-> The default value for this is 1
-
-# EXAMPLES
-
-`appsluggr`
-
-`appsluggr -web web`
-
-`appsluggr -worker ilo-sona`
-
-`appsluggr -fname foo.tar.gz -web web -worker worker -web-scale 4 -worker-scale 16`
-
-# IMPLEMENTATION NOTES
-
-**appsluggr**
-when used with
-[http://dokku.viewdocs.io/dokku/ Dokku](hyperlink:)
-requires the use of the
-[https://github.com/ryandotsmith/null-buildpack Null Buildpack](hyperlink:)
-as follows:
-
-`$ dokku config:set $APP_NAME BUILDPACK_URL=https://github.com/ryandotsmith/null-buildpack`
-
-Or
-
-`$ ssh dokku@host config:set <see above>`
-
-# DIAGNOSTICS
-
-The **appsluggr** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
-
-# SEE ALSO
-
-* [http://dokku.viewdocs.io/dokku/ Dokku](hyperlink:)
-
-* [https://github.com/ryandotsmith/null-buildpack Null Buildpack](hyperlink:)
-
- \- December 9, 2018
diff --git a/docs/cadeybot.1.md b/docs/cadeybot.1.md
deleted file mode 100644
index 7bf161a..0000000
--- a/docs/cadeybot.1.md
+++ /dev/null
@@ -1,51 +0,0 @@
-CADEYBOT(1) - General Commands Manual (urm)
-
-# NAME
-
-**cadeybot** - Markov bot based on my discord GDPR dump.
-
-# SYNOPSIS
-
-**cadeybot**
-\[**-token**&nbsp;*TOKEN*]
-\[**-brain**&nbsp;*BRAIN*]
-
-# DESCRIPTION
-
-**cadeybot**
-is a simple markov chatbot. Mention it in any channel the bot is in to make it spew out amusing text.
-
-`TOKEN` **-token** *TOKEN*
-
-> Specifies the Discord token that
-> **cadeybot**
-> will use for client communication.
-
-`BRAIN` **-token** *TOKEN*
-
-> Specifies the Markov chain brain that
-> **cadeybot**
-> should load data into cadey.gob from.
-
-# IMPLEMENTATION NOTES
-
-In order for
-**cadeybot**
-to get markov bot data, please put the importer tool and corpusmake.sh into the messages folder of your Discord GDPR dump. Then run corpusmake.sh and pass the resulting brain.txt as -brain to
-**cadeybot**.
-
-# EXAMPLES
-
-`cadeybot`
-
-`cadeybot -brain brain.txt`
-
-# DIAGNOSTICS
-
-The **cadeybot** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
-
-# SEE ALSO
-
-* [https://discordapp.com Discord](hyperlink:)
-
- \- December 19, 2018
diff --git a/docs/flagconfyg.5.md b/docs/flagconfyg.5.md
deleted file mode 100644
index 05e1588..0000000
--- a/docs/flagconfyg.5.md
+++ /dev/null
@@ -1,25 +0,0 @@
-flagconfyg(5) - File Formats Manual (urm)
-
-# NAME
-
-**flagconfyg** - This is the simple configuration format for projects in the x repos.
-
-# DESCRIPTION
-
-**flagconfyg**
-is a simple configuration language for projects in this repository. They are
-configured by a file that looks like this:
-
-// for appsluggr
-web web
-web-scale 1
-
-fname (
- slug.tar.gz
-)
-
-and this gets resolved to the following flag calls:
-
-\-web=web -web-scale=1 -fname=slug.tar.gz
-
- \- January 12, 2019
diff --git a/docs/ghstat.1.md b/docs/ghstat.1.md
deleted file mode 100644
index f87d9ce..0000000
--- a/docs/ghstat.1.md
+++ /dev/null
@@ -1,62 +0,0 @@
-GHSTAT(1) - General Commands Manual (urm)
-
-# NAME
-
-**ghstat** - Look up and summarize the status of GitHub.
-
-# SYNOPSIS
-
-**ghstat**
-\[**-license**]
-\[**-message**]
-
-# DESCRIPTION
-
-**ghstat**
-is a small tool to help users look up information about
-[https://github.com GitHub](hyperlink:)
-system status as viewed by their
-[https://status.github.com Status API](hyperlink:)
-
-By default this tool will print a very small summary of GitHub status followed by the time the last update was made in RFC 3339 time format.
-
-Here's an example:
-
-`$ ghstat`
-`Status: good (2018-12-06T17:09:57Z)`
-
-**-license**
-
-> If set, the tool will show its software license details and then exit.
-
-**-message**
-
-> If set, the tool will show the last status message from GitHub more verbosely like such:
-
-> `$ ghstat -message`
-> `Last message:`
-> `Status: good`
-> `Message:`
-> `Time:`
-
-> When there is a message relevant to the status, it and its time will be shown here.
-
-# EXAMPLES
-
-`ghstat`
-
-`ghstat -license`
-
-`ghstat -message`
-
-# DIAGNOSTICS
-
-The **ghstat** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
-
-# SEE ALSO
-
-* [https://github.com GitHub](hyperlink:)
-
-* [https://status.github.com GitHub Status](hyperlink:)
-
- \- December 9, 2018
diff --git a/docs/ilo-kesi.1.md b/docs/ilo-kesi.1.md
deleted file mode 100644
index 05e35aa..0000000
--- a/docs/ilo-kesi.1.md
+++ /dev/null
@@ -1,111 +0,0 @@
-ILO-KESI(1) - General Commands Manual (urm)
-
-# NAME
-
-**ilo-kesi** - ni li ilo sona pi toki pona.
-
-# SYNOPSIS
-
-**ilo-kesi**
-\[**-repl**&nbsp;*TOKEN*]
-
-# DESCRIPTION
-
-**ilo-kesi**
-communicates with Discord and scans every message in every channel it is in for the following pattern:
-
-`ilo ${ILO_NIMI} o`
-
-This is usually:
-
-`ilo Kesi o`
-
-When this condition is met, the chat message will be posted to the
-`TOKI_PONA_TOKENIZER_API_URL`
-and the resulting parsed sentences will be analyzed for what is being asked, and then it will be done.
-
-This only works on sentences written in the
-[http://tokipona.org Toki Pona](hyperlink)
-constructed language.
-
-**-repl** *REPL*
-
-> When this flag is passed,
-> **ilo-kesi**
-> will function in a mode where it does not connect to discord. This is useful when debugging parts of the grammar parsing. You can pass a junk value to
-> `DISCORD_TOKEN`
-> to help make testing easier.
-
-# ENVIRONMENT
-
-`DISCORD_TOKEN`
-
-> Specifies the Discord token that
-> **ilo-kesi**
-> will use for client communication.
-
-`TOKI_PONA_TOKENIZER_API_URL`
-
-> Specifies the URL that
-> **ilo-kesi**
-> will use to tokenize Toki Pona sentences. This should be some instance of the following serverless function:
-
-> [https://github.com/Xe/x/blob/master/discord/ilo-kesi/function/index.js](hyperlink:)
-
-> The default value for this is:
-
-> [https://us-central1-golden-cove-408.cloudfunctions.net/function-1](hyperlink:)
-
-`SWITCH_COUNTER_WEBHOOK`
-
-> Specifies the URL that
-> **ilo-kesi**
-> will use to communicate with
-> [https://www.switchcounter.science Switch Counter](hyperlink:)
-> This will be used mainly to read data, unless the user in question is a member of the
-> `JAN_LAWA`
-> id set.
-
-`ILO_NIMI`
-
-> Specifies the name of
-> **ilo-kesi**
-> when being commanded to do stuff. This defaults to
-> `Kesi`
-
-JAN\_LAWA
-
-> Specifies the list of people (via Discord user ID's) that are allowed to use
-> **ilo-kesi**
-> to submit switch data to
-> [https://www.switchcounter.science Switch Counter](hyperlink:)
-
-# IMPLEMENTATION NOTES
-
-**ilo-kesi**
-requires a brain created by
-cadeybot(1)
-
-**ilo-kesi**
-requires a webhook from
-[https://www.switchcounter.science Switch Counter](hyperlink:)
-
-# EXAMPLES
-
-ilo-kesi
-
-ilo-kesi -repl
-
-# DIAGNOSTICS
-
-The **ilo-kesi** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
-
-# SEE ALSO
-
-* [https://discordapp.com Discord](hyperlink:)
-
-* [http://tokipona.org Toki Pona](hyperlink)
-
-* [https://www.switchcounter.science Switch Counter](hyperlink:)
-
- \- December 19, 2018
diff --git a/docs/license.1.md b/docs/license.1.md
deleted file mode 100644
index 011462b..0000000
--- a/docs/license.1.md
+++ /dev/null
@@ -1,75 +0,0 @@
-LICENSE(1) - General Commands Manual (urm)
-
-# NAME
-
-**license** - Generate software licenses from a rather large list of templates.
-
-# SYNOPSIS
-
-**license**
-\[**-email**&nbsp;*address*]
-\[**-license**]
-\[**-name**&nbsp;*name*]
-\[**-out**]
-\[**-show**]
-
-# DESCRIPTION
-
-**license**
-is a software license generator. It uses
-git-config(1)
-to parse out your email and "real name" when relevant for the license template reasons.
-
-**-email** *address*
-
-> The email of the person licensing the software. This should be your email, or a corporation's email. If in doubt, ask a lawyer what to put here.
-
-> The default value for this is derived from
-> git-config(1)
-> by using the command:
-
-> `$ git config user.email`
-
-**-license**
-
-> If set,
-> **license**
-> will show its software license details and then exit.
-
-**-name** *name*
-
-> The name of the person licensing the software. This should be your name, or a corporation's name. If in doubt, ask a lawyer what to put here.
-
-> The default value for this is derived from
-> git-config(1)
-> by using the command:
-
-> `$ git config user.name`
-
-**-out**
-
-> If this is set,
-> **license**
-> will write the resulting license to the disk instead of standard out.
-
-**-show**
-
-> If set,
-> **license**
-> will show its list of license templates instead of generating one.
-
-# EXAMPLES
-
-`license`
-
-`license -license`
-
-`license -show`
-
-`license mit`
-
-# DIAGNOSTICS
-
-The **license** utility exits&#160;0 on success, and&#160;&gt;0 if an error occurs.
-
- \- December 9, 2018
diff --git a/docs/quickserv.1.md b/docs/quickserv.1.md
deleted file mode 100644
index ea9bd38..0000000
--- a/docs/quickserv.1.md
+++ /dev/null
@@ -1,36 +0,0 @@
-QUICKSERV(1) - General Commands Manual (prm)
-
-# NAME
-
-**quickserv** - quickly and dirtily serve a folder as a HTTP server.
-
-# SYNOPSIS
-
-**quickserv**
-\[**-dir**]
-\[**-port**]
-
-# DESCRIPTION
-
-**quickserv**
-serves a local directory of files as an HTTP server.
-
-**-dir**
-
-> Specifies the local path to be served over HTTP.
-
-**-port**
-
-> Specifies the TCP port that quickserv will bind to.
-
-# EXAMPLES
-
-`quickserv`
-
-`quickserv -dir ~/public_html -port 9001`
-
-# SEE ALSO
-
-* [https://godoc.org/net/http#Dir](hyperlink:)
-
- \- December 12, 2017
diff --git a/internal/mainsa/cmd/mainsanow/main.go b/internal/mainsa/cmd/mainsanow/main.go
index cd63a79..bb3df15 100644
--- a/internal/mainsa/cmd/mainsanow/main.go
+++ b/internal/mainsa/cmd/mainsanow/main.go
@@ -11,7 +11,7 @@ import (
func main() {
flag.Parse()
- internal.HandleLicense()
+ internal.HandleStartup()
tn, err := mainsa.At(time.Now())
if err != nil {