How to setup your development environment

Let's assume you're goint to setup phpeace installation in /home/htdocs

  1. get the code from SVN
    cd /home/htdocs
    svn co http://dev.phpeace.org/svn/trunk/
    mv trunk phpeace_dev
    cd phpeace_dev
    mkdir custom
    mv install/config.php custom/ 
    
  2. Sort out permissions, i.e. put yourself and apache's user (www-data, or apache) in the same group, and then set everything writable by this group.
    This needs to be done as user root
    # groupadd phpeacedev
    # usermod -a -Gphpeacedev yourself
    # usermod -a -Gphpeacedev apache-user
    # chown -R yourself:phpeacedev phpeace_dev
    # chmod -R g+w phpeace_dev
    # chown apache-user:phpeacedev phpeace_dev/pub/css/0/*.css
    # chown apache-user:phpeacedev phpeace_dev/xsl/0/*.xsl
    
  3. Change custom/config.php setting the following variables
    • $dev = true; // This let you see all modules in the Admin menu, regardless their locked state in the modules table
    • $debug = true; // to see error messages
  4. perform web installation in English without any change to default values: read the README file for more info
  5. after installation, set ignore properties where needed:
    • svn propedit svn:ignore .
      custom
      distrib
      cache
      uploads
      xsl
      
    • svn propedit svn:ignore pub/.
      test
      css
      feeds
      banners
      favicon.ico
      geosearch
      images
      index.html
      .htaccess
      map
      
    • svn propset svn:ignore "*" pub/css/.
    • svn propset svn:ignore "*" pub/css/0/.
    • svn propset svn:ignore "*" xsl/.
    • svn propset svn:ignore "favicon.ico" admin/.
    • svn propset svn:ignore "custom.jpg" admin/images/.
  6. give an svn update to retrieve removed files during installation
     'pub/phpeace/install.php'
     'pub/phpeace/install.css'
    Revision NNNN
    
  7. Set a few things inside PhPeace
    • Mail debug mode (in PhPeace module / configuration) to capture all outgoing emails in a text file
    • Scheduler to your local IP (in admin module / configuration)