new folder for default install /opt/feistymeow.org/feisty_meow.
code and docs scrubbed for references to ~/feisty_meow and /usr/local/fred.
new variable for the feisty meow org applications (including feisty_meow codebase).
are
generated. All files generated by compilation are stored in the
repository
- directory (by default, either "~/feisty_meow" in Linux or "l:\" in
+ directory (by default, either "/opt/feistymeow.org/feisty_meow" in Linux or "l:\" in
win32). There are three TYPEs supported so far: </big></p>
<ul>
<small> </small><big> </big><small> </small>
be given
an include directory named after the project, such as
- "~/feisty_meow/include/basis".
+ "/opt/feistymeow.org/feisty_meow/include/basis".
The include directory is created as a copy of the headers in the
project's
directory . Library projects will also have their final products
# HOME, which is pretty lucky for us...
# please change the name to the user running the cronjob, or to whatever
# unique string you'd like to use:
-CRONUSER=FILL_CRONUSER_HERE
+CRONUSER=FILL-CRONUSER-HERE
# set the shell to bash. (not the default for some cron implementations.)
SHELL=/bin/bash
-# set the top-level folder for feisty meow here, since cron gets almost
-# nothing from the user's environment. this folder needs to be updated for
-# your own particular install location.
+# set the top-level folder for feisty meow here; important because cron gets
+# almost nothing from the user's environment. this folder needs to be updated
+# for your own particular install location.
+FEISTY_MEOW_APEX=/opt/feistymeow.org/feisty_meow
#FEISTY_MEOW_APEX=$HOME/feisty_meow
-FEISTY_MEOW_APEX=/usr/local/fred/feisty_meow
# crontab miniature docs:
#
this just automates the copying of the config file before running quake.
-cp ~/feisty_meow/infobase/quake3/fred_free_for_all.cfg /usr/local/games/quake3/baseq3/ ; nohup quake3 +set dedicated 1 +exec fred_free_for_all.cfg
+cp $FEISTY_MEOW_APEX/infobase/quake3/fred_free_for_all.cfg /usr/local/games/quake3/baseq3/ ; nohup quake3 +set dedicated 1 +exec fred_free_for_all.cfg
Commands that can be typed in a console or terminal are are prefixed with "#".
Information that varies by platform is prefixed with a '|' character.
+This documentation assumes that the code is stored in the default location:
+ /opt/feistymeow.org/feistymeow
+If you have stored it elsewhere, then please adapt the commands accordingly.
+
==============
How to get the feisty meow codebase
| On Microsoft Windows, install the Cygwin tools as documented here:
-| ~/feisty_meow/documentation/cygwin_install_list.txt (local file) or
+| /opt/feistymeow.org/feisty_meow/documentation/cygwin_install_list.txt (local file) or
| https://feistymeow.org/feisty_meow/documentation/cygwin_install_list.txt (web)
Retrieve a clone of the feisty meow codebase:
# git clone git://feistymeow.org/feisty_meow
-The remainder of these notes assume that the code is stored in:
- ~/feisty_meow (aka $HOME/feisty_meow).
-
==============
How to load the feisty meow script environment
Set up the feisty_meow scripts; this is only needed once, when you first get
the codebase. It will also regenerate the scripts using the latest installed
version.
-# bash ~/feisty_meow/scripts/core/reconfigure_feisty_meow.sh
+# bash /opt/feistymeow.org/feisty_meow/scripts/core/reconfigure_feisty_meow.sh
Connect the feisty meow scripts to your login script (in ~/.bashrc).
Note that this actually modifies ~/.bashrc. This step is only needed once.
-# bash ~/feisty_meow/scripts/core/connect_feisty_meow.sh
+# bash /opt/feistymeow.org/feisty_meow/scripts/core/connect_feisty_meow.sh
Load the script environment into the current shell. This can be done for
any new shell. This is idempotent, so it does no harm to run it again.
Note that you should not need this step if you connected feisty meow to
~/.bashrc above.
-# source ~/feisty_meow/scripts/core/launch_feisty_meow.sh
+# source /opt/feistymeow.org/feisty_meow/scripts/core/launch_feisty_meow.sh
When the feisty meow script environment loaded, many new aliases and
functions are available for use. These come from the $FEISTY_MEOW_SCRIPTS
| Centos / Redhat / Fedora:
| # sudo yum install gcc gcc-c++ openssl-devel.x86_64 curl-devel
-| Microsoft Windows:
-| Download and install the Cygwin environment first from cygwin.com, which is
-| documented in ~/feisty_meow/documentation/cygwin_install_list.txt
-
The "kona" collection depends on Java version 8 or better.
| Ubuntu:
# produce_feisty_meow
After the build is complete, the feisty meow applications can be found in
-$FEISTY_MEOW_BINARIES (environment variable).
-# ls $FEISTY_MEOW_BINARIES
+the folder pointed at by the $FEISTY_MEOW_BINARIES environment variable.
==============
The FEISTY_MEOW_LOADING_DOCK variable is not defined. This must point to\
the location where the generated scripts are stored. You may still need to\
configure the feisty meow script system with something like:\
- bash ~/feisty_meow/scripts/core/reconfigure_feisty_meow.sh\
+ bash /opt/feistymeow.org/feisty_meow/scripts/core/reconfigure_feisty_meow.sh\
Please see http://feistymeow.org for more details.\n";
exit 1;
#really need to use better exit codes.
# make sure our main variables are established.
FEISTY_MEOW_VARIABLES_LOADING_FILE="$FEISTY_MEOW_LOADING_DOCK/fmc_variables.sh"
if [ ! -f "$FEISTY_MEOW_VARIABLES_LOADING_FILE" ]; then
- echo -e '\n\n'
- example_dir="/usr/local/fred"
echo -e "\
+
The feisty meow scripts need initialization via the bootstrap process. For\n\
-example, if the feisty meow folder lives in '$example_dir', then this\n\
+example, if the feisty meow folder lives in '$DEFAULT_FEISTYMEOW_ORG_DIR', then this\n\
command bootstraps feisty meow:\n\
\n\
bash $example_dir/feisty_meow/scripts/core/reconfigure_feisty_meow.sh\n\
# start with some simpler things.
+#hmmm: this needs to come from some configuration item. especially for installs.
+define_yeti_variable DEFAULT_FEISTYMEOW_ORG_DIR=/opt/feistymeow.org
+
define_yeti_variable SCRIPT_SYSTEM=feisty_meow
# OS variable records the operating system we think we found.
done
#echo arch addin now is: $arch_addin
+ # special case that makes our software hierarchy folder, if it doesn't exist.
+ # everything else is only re-permed if it exists.
+ if [ ! -d "$DEFAULT_FEISTYMEOW_ORG_DIR" ]; then
+ sudo mkdir
+ fi
+
# iterate across the list of dirs we want fred to own and change their ownership.
- for dirname in /home/fred /opt/feistymeow.org /usr/local/fred /home/games $arch_addin; do
+ for dirname in /home/fred $DEFAULT_FEISTYMEOW_ORG_DIR /usr/local/fred /home/games $arch_addin; do
if [ -d "$dirname" ]; then
echo "refred on '$dirname'"
sudo chown -R fred:fred $dirname
echo "for example:"
- echo " $(basename $0 .sh) ~/feisty_meow hoople.net hoople.org"
- echo "the above will search the directory ~/feisty_meow for all matches to"
+ echo " $(basename $0 .sh) $FEISTY_MEOW_APEX hoople.net hoople.org"
+ echo "the above will search the directory $FEISTY_MEOW_APEX for all matches to"
echo "the two patterns 'hoople.org' and 'hoople.net'."
exit 1
# building the source code. It can either be run as a bash script directly
# like so:
#
-# bash ~/feisty_meow/scripts/generator/build_variables.sh
+# bash $FEISTY_MEOW_APEX/scripts/generator/build_variables.sh
#
# which will establish a new shell containing all the variables, or you can
# 'source' the script like so:
#
-# build_vars=~/feisty_meow/scripts/generator/build_variables.sh
+# build_vars=$FEISTY_MEOW_APEX/scripts/generator/build_variables.sh
# source $build_vars $build_vars
#
# to set all of the variables in your current shell. The full path is