Add CRASHREPORT, show contact form on panic/impossible

When calling panic() or impossible(), create the option
of opening a browser window with most of the fields
already populated.  Code for MacOS and linux is included;
other ports are affected by argument change to early_init
which are done but not tested.

To enable, define CRASHREPORT in config.h and set
CRASHREPORTURL in sysconf to (for the moment at least)
http[s]://www.nethack.org/common/contactcr.html

Adds --grep-defined option to makedefs for Makefiles.

Adds "bid" (binary identifier), an MD4 of the main nethack
binary.  This is ONLY for helping (in the future) contact.html
to set the "NetHack from" field automatically for our own
binaries.  This can be faked, but the user can lie so nothing
lost.  There's nothing magic about MD4; other ports can use
anything that prodcues a long apparently random string we can
match against.

- new option --bidshow for us to get the MD4 of a
  released binary so I can add it to the website.
  Only available in wizard mode and not in nethack.6.
- typo macos -> macosx in hints file

No support for packaging builds as I'm not sure what that
would look like.

Adds a javascript helper for MacOS.
Adds a lua helper for linux (and builds and installs
 nhlua).
This commit is contained in:
nhkeni
2023-08-07 13:26:27 -04:00
parent 9f16eaa0a5
commit 8c095b009a
30 changed files with 633 additions and 204 deletions

View File

@@ -1,5 +1,5 @@
\documentstyle[titlepage,longtable]{article}
% NetHack 3.7 Guidebook.tex $NHDT-Date: 1431192762 2015/12/16 17:32:42 $ $NHDT-Branch: master $:$NHDT-Revision: 1.60 $ */
% NetHack 3.7 Guidebook.tex $NHDT-Date: 1693084080 2023/08/26 21:08:00 $ $NHDT-Branch: keni-crashweb2 $:$NHDT-Revision: 1.530 $ */
%+% we're still limping along in LaTeX 2.09 compatibility mode
%-%\documentclass{article}
%-%\usepackage{hyperref} % before longtable
@@ -6608,6 +6608,13 @@ Only relevant if the program was built with LIVELOG enabled.
When available, it should be left commented out on single player
installations because over time the file could grow to be extremely
large unless it is actively maintained.
%.lp
\item[\ib{CRASHREPORTURL}]
If set to
{\tt https://www.nethack.org/common/contact.html}
and support is compiled in, brings up a browser window populated with
the information needed to report a problem if the game panics or ends
up in an internally inconsistent state.
\elist
%.hn 1