fixes for prep feisty host
[feisty_meow.git] / scripts / core / prep_feisty_host.sh
index cb8ce9c083250d249c0de030e0d57109e0c03dfa..ebb149e0446ebfb83bbca1792ee7662d18516fe1 100644 (file)
@@ -1,22 +1,26 @@
-#!/bin/bash
+#!/usr/bin/env bash
 
 # this is the feisty meow host preparation script.  it installs all the packages required to run and build feisty meow scripts and applications.
-# this script may still be a bit incomplete; we definitely use a lot of unix and linux tools in different scripts.
+
+# hmmm: this script may still be a bit incomplete; we definitely use a lot of unix and linux tools in different scripts.
 
 # preconditions and dependencies--this script itself depends on:
 #   feisty meow
 #   bash
 #   anything else?
 
-#weird approach here man.
-#  why are we assuming any part of feisty meow is set up yet?
-#  the dependencies that the codebase has are why we're installing things below.
-#  so:
-#    + intuit the feisty meow location based on relative dir placement.
-#    + reduce checks to barest presence ones.
-#    + drop any requirements on feisty functions that might require the
-#      very code we're installing.
+####
+
+ORIGINATING_FOLDER="$( \cd "$(\dirname "$0")" && /bin/pwd )"
+CORE_SCRIPTS_DIR="$(echo "$ORIGINATING_FOLDER" | tr '\\\\' '/' )"
+THIS_TOOL_NAME="$(basename "$0")"
 
+# set up the feisty_meow dir.
+pushd "$CORE_SCRIPTS_DIR/../.." &>/dev/null
+#source "$CORE_SCRIPTS_DIR/functions.sh"
+echo originating folder is $ORIGINATING_FOLDER
+export FEISTY_MEOW_APEX="$(/bin/pwd)"
+echo feisty now apex is FEISTY_MEOW_APEX=$FEISTY_MEOW_APEX
 
 ####
 
@@ -140,7 +144,7 @@ if whichable apt; then
   exit_on_error $PHASE_MESSAGE
 elif whichable yum; then  
   # rpm based with yum available...
-  sudo yum install curl-devel gcc gcc-c++ mawk openssl-devel.x86_64 zlib-devel
+  sudo yum install curl-devel gcc gcc-c++ make gawk openssl-devel.x86_64 zlib-devel
   exit_on_error $PHASE_MESSAGE
 elif [ ! -z "$IS_DARWIN" ]; then
   # macos based...
@@ -149,17 +153,14 @@ elif [ ! -z "$IS_DARWIN" ]; then
   exit_on_error $PHASE_MESSAGE
 elif [ "$OS" == "Windows_NT" ]; then
   # windows-based with cygwin (or we'll fail out).
-
   if apt_cyg_finder; then
-echo need to fix apt cyg install list somewhat.
+echo need to fix apt cyg install list for build apps somewhat.
 #hmmm: list is in our docs as a separate file for cygwin.
 #      plug those packages into here please.
-    apt-cyg install gawk libcurl-devel meld mingw64-i686-openssl openssl openssl-devel libssl-devel zlib-devel
+#      and separate out the build vs. handy packages.
+    apt-cyg install gawk libcurl-devel meld mingw64-i686-openssl openssl openssl-devel libssl-devel zlib-devel 
     exit_on_error $PHASE_MESSAGE
 
-#extended set.  just add them?
-# xorg-server xorg-docs xlaunch 
-
   fi
 fi
 
@@ -167,11 +168,31 @@ fi
 
 # install other external packages and whatnot.
 
-#hmmm: anything else to get installed?
-  #hmmm: java?
-  #hmmm: python?
-  #hmmm: perl itself!?
+PHASE_MESSAGE="installing additional helper packages"
+
+if whichable apt; then
+  # ubuntu or debian or other apt-based OSes...
+  sudo apt install screen python3 python3-pip xserver-xorg xorg-docs 
+  exit_on_error $PHASE_MESSAGE
+elif whichable yum; then  
+  # rpm based with yum available...
+#new yums unvetted
+  sudo yum install screen python3 python3-pip xserver-xorg xorg-docs 
+  exit_on_error $PHASE_MESSAGE
+elif [ ! -z "$IS_DARWIN" ]; then
+  # macos based...
+#hmmm: still working on these...
+  brew install screen python3 pip xserver-xorg xorg-docs 
+  exit_on_error $PHASE_MESSAGE
+elif [ "$OS" == "Windows_NT" ]; then
+  # windows-based with cygwin (or we'll fail out).
 
+  if apt_cyg_finder; then
+echo need to fix apt cyg install list for extended apps somewhat.
+    apt-cyg install screen python3 pip3 xserver-xorg xorg-docs 
+    exit_on_error $PHASE_MESSAGE
+  fi
+fi
 
 ####
 
@@ -189,10 +210,10 @@ exit 0
 #scav line
 #############################
 
-The "kona" collection depends on Java version 8 or better.
-| Ubuntu:
-| Set up the java PPA archive as described here:
-| https://launchpad.net/~webupd8team/+archive/ubuntu/java
+#The "kona" collection depends on Java version 8 or better.
+#| Ubuntu:
+#| Set up the java PPA archive as described here:
+#| https://launchpad.net/~webupd8team/+archive/ubuntu/java
 
 #not needed at the moment.
 #echo "bailing because script is immature.  farts!"