Commit Graph

56 Commits

Author SHA1 Message Date
T. Joseph Carter
16e1306dbb Cleanups for consistency with a2cloud mostly
- Added bash check to install.sh
- Switched to using top_src instead of a2sSource (not yet in ivan.sh
  subscripts)
- Added processing of -y and -c flags to install.sh ala a2cloud
- Put the intro blurb and continue question in install.sh (didn't remove
  the one from ivan.sh yet as it serves as a useful way to test things
  about to be in progress and stop after them…)
- Added the fixup script, currently empty for a2server, but ohh will
  that be changing!
- Added the show_changes script. It doesn't do a whole lot for a2server
  just like it doesn't for a2cloud yet.  To be addressed.  Higher
  priorities right now.
- Fixed a bug where fresh installs would say that upgrading from your
  version of a2server wasn't supported anymore.
2018-09-06 13:35:01 -07:00
T. Joseph Carter
e9c53fae66 Make index.txt use a2sSource convention
Redefining a2sSource to be the top source directory throughout, and I
just wrote this index.txt that doesn't follow that convention.  Fixed
that and removed some unnecessary directory switching in the shell
script since the closest we need to get to being in a particular
directory is when we extract the tarball, and tar takes arguments for
that.

Also made the temp dir we create actually be a2sSource for simplicity.
2018-04-11 04:32:01 -07:00
T. Joseph Carter
20bf50bc98 Add new index.txt script
This commit goes with the previous one—the commit is in two pieces so
that git can tell that this new index.txt isn't just a modification the
old one, but rather a totally new file.

This script supports being run as the installation entrypoint when
downloaded as part of the one-line web install (though it'll tell you
that you should install it the "more proper way"), but doesn't run from
inside the source tree.

The new script actually solves a race condition that could happen if
someone were installing literally while the repository was being
upgraded.  You might find new versions of say a2server-5-netboot
being downloaded and run which depend on an a2server-3-sharing that
didn't get upgraded.  The new index.txt will always download all of the
scripts together in a cohesive revision at once.

The only possible code version mismatch now is between index.txt and
everything else, and the only updates planned for index.txt going
forward are textual changes telling you how to download the tarball and
run the installer yourself.
2018-04-10 22:14:28 -07:00
T. Joseph Carter
7aae31fda7 Rename setup/index.txt to setup/ivan.sh
Don't put this commit into production, it breaks the one-command web
install from Ivan's website!

Basically by renaming index.txt to ivan.sh we can replace that script
with something like the new update script that basically tells you not
to install a2server that way anymore.  The next commit will have the new
script that does that, but git doesn't realize the new script is a
complete rewrite without at least one commit where the file changes name
but doesn't disappear to track the renamed object.
2018-04-10 22:08:43 -07:00
T. Joseph Carter
106555bc95 Accidentally deleted a fi, fixed
And that's how I know nobody else has tried to run this yet.  :)
2018-04-10 15:26:10 -07:00
T. Joseph Carter
456ed6e721 Bump version for development
Bumping the version to 1.9.0 so we can start working on what will become
the 2.0.0 release.  No other changes here, just trying to create some
space in case Ivan does any more stuff with his branch is all.
2018-04-10 02:59:54 -07:00
T. Joseph Carter
45c00cb920 Merge branch 'ivanx-1.5.x'
Ivan added support to build everything on Debian/Raspbian stretch, added
some alternate URLs, and updated the "just how the hell do you install
Marinetti right now exactly?" dance.

This was more frustrating to merge than it honestly should've been and
I'm kinda responsible for some of that, but it's never gonna get easier
to maintain unless we break from the single-developer monolithic blocks.

Hopefully this will be the last time we do things this way.
2018-04-09 18:51:26 -07:00
Ivan X
5e0feab69c support for Debian and Raspbian Stretch
suppress null byte read warnings in Bash 4.4
enable SSH server on Raspberry Pi if disabled
Internet Archive backup URL's for external downloads, where possible
compiles AppleTalk kernel if -c flag is specified, rather than downloading
better cleanup after AppleTalk kernel compile
notification if AppleTalk kernel module doesn't load
fixed download links for communication software
fixed bugs possibly preventing compile of macipgw and ciopfs
fixed minor bugs during initial setup prompts
os option (Raspbian update) removed from a2server-setup
2017-11-26 16:37:44 -05:00
Ivan X
a3a7a9479d set internal version to 1.5.1; expanded version history 2017-10-29 05:21:55 -04:00
T. Joseph Carter
15027e8423 Replace raspbian-update; remove -os from setup
A2SERVER's setup no longer takes the -os or os arguments (the security
paradigm shift suggests this is unnecessary and even unwise), and it's
time to actually install the debupdate script.
2016-12-09 07:20:27 -08:00
T. Joseph Carter
a4ab0c3d26 setup/index.txt: Use new URLs 2016-12-07 05:54:40 -08:00
T. Joseph Carter
080242d969 Add replacement for binaryURL/scriptURL 2016-12-07 04:16:22 -08:00
T. Joseph Carter
af9ebdc4da Quote URLs passed to wget 2016-12-07 04:08:39 -08:00
T. Joseph Carter
95fc0ef629 Rename raspbian-update, make install script
It's understandable why you might want to pull this off a server in case
how you have to upgrade things changes for some reason, but we're moving
toward following Debian's lead on these things to the greatest extent
possible.
2016-11-27 03:03:03 -08:00
T. Joseph Carter
e131b8de40 Make scripts run completely out of git repo 2016-10-27 13:31:00 -07:00
T. Joseph Carter
85d30152f2 Add version compare function to setup/index.txt
Okay Ivan, you can "I told you so" now.  I didn't see any major gotchas
to changing the version and was SURE there'd be no reason to write the
convoluted comparison function until after everything was nicely redone
and restructured and whatnot.  Fortunately I only need it in the main
script for now, and will hopefully very soon be able to just load it
from a common function file and use it where needed.

I still don't regret doing it, but all the work I had to do in order to
make sure I didn't screw it up (or rather that I fixed it after screwing
it up) are totally on me.
2016-10-27 10:57:41 -07:00
T. Joseph Carter
ae89fef8b4 Improve Debian version detection 2016-10-27 08:17:31 -07:00
T. Joseph Carter
94d17f56cc Add beta run-local support for development 2016-10-27 06:35:20 -07:00
T. Joseph Carter
ee4078ab23 Make version semantic (Closes #49)
What's still missing from this is a version comparison mechanism.  The
reason why it is missing is that we only use this in one place at the
moment, and if you have a version string that is not three digits, your
version is recent enough.  This means we can save this for when there
are a common functions script to import and make the comparisons for us
without code duplication.
2016-10-27 02:13:58 -07:00
T. Joseph Carter
530b8d57f5 Clean the main scripts a bit
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.
2016-10-27 00:55:16 -07:00
T. Joseph Carter
8897610d95 Scripts: re-indent (tab indentation)
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.
2016-10-25 12:12:11 -07:00
T. Joseph Carter
27d40503be *: Fixed trailing whitespace 2016-07-29 10:39:49 -07:00
Ivan X
7b7917d417 changed rawgit.com to raw.githubusercontent.com to resolve https issues 2016-05-28 10:11:26 -04:00
Ivan X
f9b120002a Merge branch 'master' of https://github.com/RasppleII/a2server 2016-02-17 05:44:58 -05:00
Ivan X
49d50e49ac Fixed inaccurate text at end of a2server-setup for ROM 01 IIgs 2016-02-17 05:43:59 -05:00
T. Joseph Carter
cd20570999 *.txt: Fix Debian wheezy/jessie version checks
Found some checks that assumed all Debian was wheezy, and also a bunch
of use of cut assuming that there will never be a Debian version higher
than 9.0.  Let's just futureproof that code right now.  This closes #56
and uses the method described therein anywhere -c 1 is used now.  For
the checks against -c 1-2, we still use -d . -f 1 as described in the
issue, but modify the following conditionals to test for just the
numeric, without the decimal.
2016-01-30 03:25:27 -08:00
T. Joseph Carter
cd8271cd56 setup/index.txt: Print version once
A minor thing, but reducing slightly duplicated code is always a good
thing, and printing the version number is never a bad idea.
2016-01-29 04:22:54 -08:00
Ivan X
061c3c1897 show first prompt if < 1.5.0 2016-01-17 17:16:35 -05:00
Ivan X
59d293ec84 no longer skips first prompt if using -i option 2016-01-17 13:16:21 -05:00
Ivan X
ca12a4a9e9 better detection of distribution URL during startup message 2016-01-17 13:07:39 -05:00
Ivan X
da204bd05b set version number to 1.5.0; updated version history 2016-01-17 11:49:03 -05:00
Ivan X
60f88e4e8a use rawgit.com for default A2SERVER_SCRIPT_URL 2016-01-16 23:47:03 -05:00
Ivan X
95fb701098 get Spectrum/SAFE/SAM/SNAP URL's from dist page; display version numbers 2016-01-16 14:32:51 -05:00
Ivan X
5c47545772 provide -i option to reinstall core A2SERVER (not Apple II software)
bump version to 1.3.2
2016-01-15 14:08:45 -05:00
Ivan X
9b87db8eb4 installs Marinetti 3.0b8 with MacIP preconfigured 2016-01-06 07:25:18 -05:00
Ivan X
7163390b19 MountIt is installed, not just an SHK archive 2016-01-04 03:50:22 -05:00
Ivan X
e58fd1bbb1 added Raspbian firmware ab06f63 to valid list at startup check
(current Jessie and raspberrypi-bootloader package, kernel 4.1.13)
2016-01-03 18:33:40 -05:00
Ivan X
00adf2673d updates Nulib2 to 3.1.0a1; -c forces compile (no binaries); URL fixes 2016-01-03 16:06:40 -05:00
Ivan X
1403fde73d cppo bug fix on unreferenced origFileName 2016-01-03 05:30:17 -05:00
Ivan X
1af347ae8f replace nulib2 with 3.1.0a1 which handles empty forks correctly
hide all cppo output in netboot install
remove guidance about uppercase filenames in afpsync error message
2016-01-03 05:14:34 -05:00
Ivan X
01d3ce1775 libdb5.3+libgcrypt20 on Jessie rather than installing older Wheezy libs
removed libdb4.8 support
fixed source URL's to use external/source when locally hosting externals
2015-12-25 12:37:56 +09:00
Ivan X
14f5ef66be alternate URL for precompiled binaries with A2SERVER_BINARY_URL
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
2015-12-24 13:02:17 +09:00
Ivan X
c2bb79860a on Debian, provides AppleTalk without IPDDP to enable MacIPgw 2015-12-20 00:40:28 -05:00
Ivan X
024f579850 macipgw installed; a2serverc created
(macipgw tested on Wheezy and Jessie; works on Raspbian only, not Debian x86)
2015-12-18 00:57:21 -05:00
Ivan X
435857e3bb move /media/A2SHARED to /srv/A2SERVER 2015-12-09 20:39:09 -05:00
Ivan X
e9f54606ac revved version number 2015-12-07 23:47:03 -05:00
T. Joseph Carter
7cf972cc7d Remove deprecated Ubuntu; updated changelog
Closes #11 and #13.  As mentioned in #11, support for Ubuntu should
return in the future, but not explicitly.  Rather, the core of A2SERVER
itself ashould be made to run on any OS distribution for which our
requirements are met.

The goal is that any OS-specific details should be part of OS-specific
packaging or handled by the user (editing MOTD/issue files, etc.)  We
can handle those details on Debian systems because we know how to do
that when packaging for Debian.  Ubuntu, Fedora, etc. packages will have
to make their own tweaks.  This commit doesn't do all of that, but it
does mean there's one fewer things we need to worry about during the
transition.
2015-11-17 05:36:22 -08:00
T. Joseph Carter
9de61e504a setup/index.txt: Add latest Wheezy fw hash
Closes #7.  There are other versions of the firmware that are between
the last/current version and the last one marked supported, and they
should all work fine.  Since theoretically all future versions of Jessie
will be supported once we get there, that should make things easier once
we get there.
2015-11-15 13:37:59 -08:00
T. Joseph Carter
f2244354c2 Merge Ivan's 1.2.5, bump version to 1.3.0
This should give Ivan some breathing room while we work on trying to get
things ready for Jessie.
2015-11-09 06:40:44 -08:00
T. Joseph Carter
dda5694dca More overzealous ${scriptURL} fixing 2015-10-12 12:30:17 -07:00