nice new tool to show version of feisty meow
[feisty_meow.git] / readme.txt
index 34a15a492c6fb9ab36134a568bd2fe5f4e14d27f..0fda046ea9e12470e4bf01335b68dc7ea8888cd7 100644 (file)
 
-This is the "feisty meow® concerns" codebase top folder.
+==============
 
-Feisty Meow® Concerns codebase comprises some but probably not all of several projects that
-have come before.  These include the Twain.COM library scripts, the Yeti / YetiCode library
-scripts, the HOOPLE 1 and HOOPLE 2 C++ Codebases, the Fred Huffhines open source LSL scripts,
-the CLAM build system, and a variety of other efforts.
+Quick Start Guide for the Feisty Meow Codebase
 
-Directories and files of interest here...
+Commands that can be typed in a console or terminal are are prefixed with "#".
+Information that varies by platform is prefixed with a '|' character.
 
-scripts/
-    Stores the script files that we use a lot.  These are usually written in interpreted
-    languages, such as bash and perl.  These were the core of the YetiCode scripts library.
+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.
 
-nucleus/
-    Source for the basic modules of the Feisty Meow® codebase.  This includes generic
-    data structures, useful utilities, and the like.  This hierarchy, plus octopi and graphiq,
-    formed the major parts of hoople1 and hoople2.
+==============
 
-huffware/
-    The library of LSL scripts for osgrid and Second Life written by the avatar named Fred
-    Huffhines.  Fred Huffhines is a regular contributor and a well-loved member of our
-    development team.  He also happens to be a fictional sock-puppet for adventuring around
-    the grids, but a lot of code has been written in his name.  We are going to release the
-    full corpus of the Huffhines work over time.
+How to get the feisty meow codebase
 
-octopi/
-    Octopus design pattern and CROMP protocol reference implementations.  Assorted applications
-    based on these.
+| On Microsoft Windows, install the Cygwin tools as documented here:
+| /opt/feistymeow.org/feisty_meow/documentation/cygwin_install_list.txt (local file) or
+| https://feistymeow.org/feisty_meow/documentation/cygwin_install_list.txt (web)
 
-database/
-    Some files considered critical to the operations of Feisty Meow Concerns Ltd.  This includes
-    the database of fortunes used by the Nechung Oracle Program.
+Retrieve a clone of the feisty meow codebase:
+# git clone git://feistymeow.org/feisty_meow
 
-doc/
-    Assorted documentation files for Feisty Meow and a code-scanning documentation generator
-    based on doxygen.
+==============
 
-examples/
-    Some files that show how to get work done with Feisty Meow or that show how to do certain
-    tasks in different scripting / programming languages.
+How to load the feisty meow script environment
 
-kona/
-    Our burgeoning Java libraries.  Not much to see here yet, but there is some code piling
-    up for these that we will try to release soon.
+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 /opt/feistymeow.org/feisty_meow/scripts/core/reconfigure_feisty_meow.sh
 
-production/
-    Machinery for getting releases out the door, including the generated files such as binaries
-    and build system tools.
+Connect the feisty meow scripts to your login script (in ~/.bashrc).
+Note that this actually modifies ~/.bashrc.  This step is only needed once.
+# bash /opt/feistymeow.org/feisty_meow/scripts/core/connect_feisty_meow.sh
 
-graphiq/
-    GUI tools and components, somewhat busted or just absent right now.
+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 /opt/feistymeow.org/feisty_meow/scripts/core/launch_feisty_meow.sh
 
-webby/
-    Source code specifically for web programming and building sites.  Mainly a few javascript
-    files we keep around.
+When the feisty meow script environment loaded, many new aliases and
+functions are available for use.  These come from the $FEISTY_MEOW_SCRIPTS
+folder.
+See the full list of commands at:
+(hmmm: To be completed in 2018)
+
+==============
+
+How to install the feisty meow script dependencies
+
+A couple of perl modules are required by some of the scripts (including the
+differ utility and the feisty meow customization system).  They can be
+installed with either apt-get or CPAN.
+
+Install using apt-get:
+# sudo apt-get install libfile-which-perl libtext-diff-perl
+
+or Install using perl's CPAN:
+# sudo cpan install Text::Diff File::Which
+
+==============
+
+How to install the build dependencies for feisty meow
+
+These dependencies are used for building the applications, tools and tests
+in the "nucleus", "octopi", "graphiq" and other C++ collections.
+
+| Ubuntu / Debian:
+| # sudo apt-get install build-essential librtmp-dev libcurl4-gnutls-dev libssl-dev
+
+| Centos / Redhat / Fedora:
+| # sudo yum install gcc gcc-c++ openssl-devel.x86_64 curl-devel
+
+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
+
+==============
+
+How to build the feisty meow codebase
+
+Run the following command to build the feisty meow libraries and applications.
+# produce_feisty_meow
+
+After the build is complete, the feisty meow applications can be found in
+the folder pointed at by the $FEISTY_MEOW_BINARIES environment variable.
+
+==============
+
+How to clean up the files generated by the build
+
+This command cleans out all the generated files:
+# whack_build clean
+
+==============
+
+What are the feisty meow dependencies?
+
+The feisty meow scripts depend on these scripting languages and tools:
+  bash
+  perl (including Text::Diff and File::Which)
+  python
+  gnumake
+
+The feisty meow libraries and applications depend on these tools:
+  Gnu C++
+  RTMP streams (?still?  not sure.)
+  Curl
+  Open SSL
+
+The feisty meow "kona" library depends on these languages:
+  Java
+
+==============
+
+Bug reporting
+
+Report bugs at the feisty meow trac site:
+https://trac.feistymeow.org/projects/feistymeow/report
+Email fred@gruntose.com for authorization to write up new bug reports.
+
+There is also a github mirror of feisty meow at:
+https://github.com/fredhamster/feisty_meow
+The github repository will accept bug reports without an authorization process.
+
+==============
+
+More information is available at the official site: https://feistymeow.org
+
+==============