Ivan writes pretty dense scripts in some ways, but not others. Mostly
he likes to collapse statements to a single line and using && and || in
place of if constructs. Reduces file size and theoretically speeds
execution, but it makes community development tougher and the speed
gains are questionable.
I've begun removing multiple successive writes to a single file such as
those using tee as a means to write files as root. Clean up enough of
those and you will have a noticable performance impact, although again
there's no evidence there are enough of them here to see one.
Removed a few dead/commented code blocks and restructured a couple of
conditionals to make the no-action condition the else case.
Finally, bumped the version. This isn't all that'll go into 1.5.1 but
it's a start.
One of the reasons I held off on doing this before is that there are a
lot of complex one-line seds in here that I expect _will_ be broken by
this. More than a few of these will assume, depend on, require, and
break if specific hardcoded whitespace is not found. That's problematic
anyway--when whitespace isn't syntactic, you shouldn't do that. So it's
time to fix these anyway.
self-hosted external dependency fallback; or default via A2SERVER_NO_EXTERNAL=1
a2serverrc sets default A2SERVER_SCRIPT_URL and A2SERVER_BINARY_URL
64-bit Debian precompiled binary support
support for reorganized files subdirectory
better information re unsupported OS at start of install
info about netboot at end of install
no longer deletes ~/GNUstep
install libdb5.1 and libssl1.0.0 by default instead of older versions
small tweaks and fixes regarding Debian detection, case insensitive fs, etc
updated source code path for The Unarchiver
this is internal version 1.2.8; see "release" notes about external dependencies
rewording of some prompts and renumbering of one menu
netboot GS/OS is installed with original mixed case names
DOS3.3.FST and TEACH are installed during network boot setup
Spectrum is fully installed (not just disk images)
This won't reinstall your boot blocks for you if they're not the latest
version. If you'd like to test this (and please test this!), you'll
need to move your existing boot blocks out of the way so it can install
new ones. Probably actually checking will happen when the Python stuff
is ready.
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.
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.
Added shell variable A2SERVER_SCRIPT_URL which allows you to replace
Ivan's server with another URL for development. If unset, scripts will
default to "http://appleii.ivanx.com/a2server/" as usual.
This will not allow you to use these scripts for development directly,
and in fact may have been over-zealous in removing hardcoded ivanx
links. Also, Ivan's webserver has a slightly different layout than this
repository because I haven't tried to make this an apache directory
structure full of mixed HTML, scripts, .htaccess files, etc.
This reflects Ivan Drucker's current A2SERVER scripts as of 2015-Oct-01,
version 1.24. These are unmodified and cannot be directly used yet. A
later patch will begin correcting that, but a baseline is important.