Commit Graph

132 Commits

Author SHA1 Message Date
T. Joseph Carter e499a3db46 I thought I already fixed a2serverVersion 2018-09-09 16:01:54 -07:00
T. Joseph Carter 5010a496e6 Simplify OS support checks
This branch of a2server only supports jessie and above, either Raspbian
or Debian.  While I was at it, I simplified the tests for what is and is
not a supported OS.  If there are bad kernels or firmwares we need to
work around those should be fixes.  This also means giving the user an
option to interrupt the installation if they are trying to install on a
Debian(ish) system that is too old or (more likely) too new.

At least ivan.sh is now using a2cloud's system_ident script.
2018-09-09 11:10:00 -07:00
T. Joseph Carter f9b11b6dde Change a2sSource to top_src in subscripts 2018-09-08 19:09:15 -07:00
T. Joseph Carter f1b141bd9c Move 1-storage fixup code to fixup
1-storage included a block that moved /media/A2SHARED (which was a nono
for us to use under FHS) to /srv/A2SERVER.  This has now been moved to
fixup.
2018-09-08 18:49:52 -07:00
T. Joseph Carter d71b2a4048 Merge branch 'refactor' 2018-09-07 15:07:40 -07:00
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 6229dba43f Fix stupid logic error bug
We need a more robust way to detect whether netatalk is installed or
needs to be installed, the current check by a2server version isn't very
reliable anyway, assuming that netatalk will always be hand-compiled and
never upgraded.  But for now at least, let's fix my idiot mistake.
2018-09-01 16:03:42 -07:00
T. Joseph Carter f3ae970d37 Make creating /srv/A2SERVER more robust 2018-09-01 15:37:44 -07:00
T. Joseph Carter aaea9245de All scripts now run from source dir
Legacy code in the remaining scripts to have them run from the website
using a2sDevel detection has been purged.  That doesn't mean everything
now runs locally always—that's going to require a finer pick through the
code I haven't done yet.  This is a start though, and doing it found a
couple of bugs I've managed to fix already.
2018-04-11 06:59:48 -07:00
T. Joseph Carter 2b52ad8429 New script compare_version
New standalone script for comparing two #.#.# format version strings
using standard functions included with python.  We also benefit from the
fact the python function is more flexible than my bash function and it
keeps the logic of a rather high-level script high-level.
2018-04-11 04:07:01 -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
T. Joseph Carter a939111f6a Return error code when running as user 2016-12-09 14:11:54 -08:00
T. Joseph Carter 14a9adf673 Remove raspi-config wrapper
Mathcing A2CLOUD.
2016-12-09 09:32:03 -08: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 4cba6ff2c0 debupdate: Clean up logic a bit more 2016-12-08 21:53:00 -08:00
T. Joseph Carter 23a8d1ca0d debupdate: Remove stupid Echo function
Dunno what I had in mind for that exactly.  Eventual support for
gettext?  I dunno.  It's not necessary, doesn't work real well, and
generally ... no.
2016-12-08 21:31:15 -08:00
T. Joseph Carter a263603985 New script debupdate
Still need to polish this a bit, but I think I'm happy with its
functionality.  This will replace raspbian-update.  It's simpler, more
transparent about what it is doing, and generally less likely to go
wrong doing what it does.

The one little bit of magic is that it bails out after an update if
there's nothing to install, mostly to avoid suggesting that you reboot
your system if there is nothing to install.  Might not be worth it for
that on armv6-based Raspberry Pis.
2016-12-07 18:20:28 -08:00
T. Joseph Carter 8eabd3768d a2serverrc: Remove devel environment vars
These shouldn't have ever been set (that's why they have defaults
everywhere they're used).  Besides that, they've gone away now.
2016-12-07 07:14:08 -08:00
T. Joseph Carter 3cd48ab4b3 scripts/a2server-*.txt: Use new URLs 2016-12-07 07:09:37 -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 a7ff9544bc Remove a2server-update/a2server-setup aliases
The replacement update mechanism will be a script installed on your
system.  The advantage of downloading the update mechanism before
running it is that it allows you to upgrade the upgrade mechanism.
Naturally the disadvantage is that you have to download it.  Debian
systems have a mechanism for this; we'll use it.
2016-12-07 03:37:33 -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 b60fd31d60 Fix my bug breaking workgroup default 2016-10-27 08:23:35 -07:00
T. Joseph Carter 3a405377db Make netbook use local/dev tools script 2016-10-27 08:21:15 -07:00
T. Joseph Carter 1a3cae37d3 Fix typo CDEvs -> CDevs to fix installation 2016-10-27 08:20:00 -07:00
T. Joseph Carter ae89fef8b4 Improve Debian version detection 2016-10-27 08:17:31 -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 202d5e6321 Mark FIXMEs, replace ugly multi-line echo 2016-10-26 20:11:49 -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
T. Joseph Carter 938db3c46b 2-tools: Make jessie+ condition actually jessie+ 2016-04-10 01:38:10 -07:00
Ivan X 4d1b5db5e3 cppo fixes temp directory paths on OS X 2016-02-19 21:46:46 -05:00
T. Joseph Carter d86e3bfa88 5-netboot: Guidance on choosing GS/OS version
Closes #45.
2016-01-30 15:27:33 -08: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
Ivan X 750b9998df fixed bug in entering 30-day month dates in clock.patch 2016-01-19 07:38:23 -05:00
Ivan X 50875f5c3f internet archive backup for MountIt 2016-01-17 22:27:41 -05:00
Ivan X dea2ea2ce2 fixed netboot user setup 2016-01-17 15:37:02 -05:00
Ivan X bb5f42462e fixed issues with download Apple II titles from original hosts 2016-01-17 15:03:40 -05:00
Ivan X 9dfbe0e9f3 removed "Attempting" status language because it bugged me 2016-01-17 13:09:38 -05:00
Ivan X 94b6dcaa26 fixed a2server-setup and -update aliases not respecting env vars
using new installer -i flag in a2server-update to trigger reinstall
2016-01-17 12:23:24 -05:00
Ivan X fbc1ce5ba2 fixed detection of installed comm software; minor text changes 2016-01-17 10:06:01 -05:00
Ivan X b7528026de fixed cppo cleanup on exit 2016-01-17 10:05:35 -05:00
Ivan X 60f88e4e8a use rawgit.com for default A2SERVER_SCRIPT_URL 2016-01-16 23:47:03 -05:00
Ivan X 13343a5c2a doesn't add eth0 to atalk.conf if something already there
improve content and formatting of /etc/init.d/netatalk status messages
2016-01-16 20:58:10 -05:00