Skip to content

shaunix/blip

Repository files navigation

This is Pulse, a program for displaying various statistics of questionable
relevance about programs and the people who make them.  If you're working
on Pulse, then Pulse is probably working on you.

Here's some basic instructions for running Pulse on your machine:

*) Install
   * the ORM storm
   * python vobject
   * cairo python bindings
   * libxml2 python bindings
   * python imaging library
   * imagemagick
   * intltool

*) Edit pulse/config.py.  It's just a bunch of file and URL paths.  The
   necessary edits should be fairly obvious.

*) All the database updates are done by the program 'pulsate'.  To get
   started, run 'pulsate init'.  You can see the various things you can
   do with 'pulsate --help'.  A good order to run things in to get started:
     pulsate init
     pulsate sets
     pulsate modules
     pulsate people
     pulsate icons
   You can run these separately if you like, but they're also called by
   'pulsate modules', unless you tell it not to.
     pulsate docs
     pulsate i18n

*) If you want to edit pulsate, all of its funtionality is in the files under
   the pulse/pulsate directory.  Each pulsate command is a Python file.  If
   you do add features, many of the commands take the following useful options:
     --no-update     - don't do CVS/SVN/etc updates
     --no-timestamps - don't check file timestamps, which could otherwise
                       cause your new code to never be called

*) To run the web front end, set up Apache.  I just use the one built into
   Fedora.  Your distro probably packaged it as well.  You need to edit
   web/htaccess to reflect the paths on your system.  Note that RewriteRule
   really wants to see absolute paths.  Then symlink as follows:
     pulse          ->  $(webroot)/pulse
     web/data       ->  $(webroot)/data
     web/files      ->  $(webroot)/files
     web/index.cgi  ->  $(webroot)/index.cgi
     web/htaccess   ->  $(webroot)/.htaccess
   Note that htaccess should become .htaccess.  I just prefer not to work
   on hidden files in the repository.  You also have to symlink the pulse
   directory into the same direction index.cgi is in, so it's in the path
   for imports.  This is unnecessary if you install Pulse, but we currently
   have no tools for doing that.

*) Alternatively, if you don't want to muck with rewrite rules, change
   pulse.config.web_root to include index.cgi.  If you do this, you also
   need to change pulse.config.data_root and pulse.config.files_root to
   not refer to web_root, since those are roots for static files.

*) If you want to edit the web stuff, all the pages are generated by the
   files in the pulse/pages directory.  Basically, index.cgi takes extra
   path components from PATH_INFO and uses the first part of that to call
   the appropriate Python module.  The PATH_INFO strings are more-or-less
   the 'ident' fields of the objects in the database.

*) If you want to use Pulse with MySQL, you'll need to set up a database
   for Pulse to use.  Once the tables have been created by pulsate init,
   it is imperative that you run the following SQL command:
     ALTER TABLE Revision CONVERT TO CHARACTER SET utf8;
   It's probably not a bad idea to do this on all tables, but Revision
   is the only one that's caused a problem so far.  We should investigate
   how to automate this through a better MySQL setup process.

*) Ask Shaun to write a paragraph here about the database design.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published