There's little reason to render these files as HTML again, and if
they're ever placed on a website, it'd probably be best to do so using a
quick bit of PHP that does the translation on the fly. I'd suggest an
absolutely trivial stylesheet for each page (more or less akin to the
pre-HTML4 tags that were already present) and perhaps a tiny bit of
script magic that regenerates those tags based on that CSS. Not a
priority at present.
Didn't touch the Samba workgroup question for now since it's the only
question that asks anything else. Maybe when this stuff gets refactored
to remove duplication.
Overzealous replacement of hardcoded ivanx.com with script variable.
The A2CLOUD disk image should be downloaded right off Ivan's server
because we don't have it in the git repository.
The info text for askYesNo was a problem. First, it involved a long,
complex, paragraph encoded as string on the command line. That's NEVER
a good idea. Secondly, it passed that string unprocessed to printf
(albeit printf(1) but still) as a format string. And third, there's no
way to manage line length when you're doing that.
The alternative is to put the strings in a here document. We then cat
the result between a couple of empty echo commands to create the
original output. This addresses all of the above issues, but creates a
new one: The info text follows the prompt, rather than the other way
around. Not the most elegant.
So … why do this at all, why not just echo the info text outside of the
function, particularly since the function only echoes it once no matter
how many times you give a bogus answer? Well, if at some point we
decide to implement a dialog-type interface (whiptail, zenity, whatever
you prefer), then it becomes easy to do so. Unsure that's desirable at
this time, but options are good.
This file really belongs in the A2SERVER root where people looking at
this tree can most easily find it, but for now it's more important to
follow the layout on Ivan's server. Putting it in the root was a
mistake on my part in my initial upload because "of course". Corrected!
Reflowed the scripts (mostly) according to vim's autoindent engine.
Also added vim modelines so that people who are familiar with them can
configure their environment for A2SERVER's conventions. Also removed
trailing whitespace from lines and files while I was at it to make git
happier about various things.
An unusual quirk of git is that it tends not to like trailing whitespace
at the end of lines, and trailing blank lines at the end of a file. It
messes with the word diffs a bit I think. Anyway, it's easily removed,
so I've removed it.
This should theoretically make the a2server-setup and a2server-update
aliases use/honor A2SERVER_SCRIPT_URL if it's set. How this is done is
presently kind of ugly since it invokes a subshell to ensure the URL
ends in a slash, so if someone has a better idea of how to do that in a
bash alias, please file a ticket!
FWIW the reason why I keep adding shebang lines to these scripts that
get sourced (and therefore don't need them) is that it alerts a few text
editors that offer syntax highlighting based on magic numbers in files
that they are in fact bash scripts and contain bashisms that shouldn't
be flagged as errors in strict bourne shells.