Archive | May, 2010

Notes from Python SIG, 27 May 2010

The May meeting of the New Hampshire Python Special Interest Group was planned as an informal chat, and there was no dearth of topics! We met as usual (the fourth Thursday of the month) at the Amoskeag Business Incubator (http://www.abi-nh.com) in Manchester, from 7 – 9 PM. Seven people attended the meeting.

We had a demonstration of a prototype of a video bulletin board system to be used for the community TV channel in Pepperell, MA. It was using a Python script to drive displays including slides in OpenOffice.org Impress and videos played in VLC. Interesting libraries in use include shlex for parsing command lines and a graphics library whose name I missed to generate the “crawler” at the bottom of the screen.

We discussed the licensing issues with video and audo codecs and the solution that’s provided by Fluendo.

We looked at the new photography management application Shotwell included in the most recent Fedora and Ubuntu distributions. Shotwell is written in the new Vala language that “aims to bring modern programming language features to GNOME developers without imposing any additional runtime requirements and without using a different ABI compared to applications and libraries written in C” and Bill noted another derivative language, Genie, which has a style far more similar to Python. (You wondered what all this had to do with Python, didn’t you?)

We looked for some solutions for accessing the output of Java classes from within a Python application., citing pages like this and discussing the pros and cons of the solutions available. We’re looking forward to a future meeting where we get a report on how it comes up.

As always, a good time was had by all. Thanks to Janet for yummy chocolate chip cookes and frosted brownies. Thanks to the Amoskeag Business Incubator for the use of the facilities, to Bill for organizing and moderating the meeting. and thanks to all for attending participating.

HowTo notes: installing REE, Passenger, Ruby on Rails on CentOS5

Recently, I installed Redmine, the Rails-based project tracker,  on an existing virtual private server, running CentOS 5 Linux and an assortment of LAMP applications and web sites using Apache, PHP and MySQL. I chose Ruby Enterprise Edition (REE), an optimized and high-performance version of Ruby, and Passenger, an Apache module to connect to Ruby. Here are the steps I followed, as a reference and in hopes it might help others:

  1. Log onto the box via ssh. As a good practice, I run as an unprivileged user, and use sudo only when superuser rights are needed. So, download the files and un-tar them and read the READMEs and run the processes as a regular user, switching to root via sudo only when the rights are needed.
  2. Download and install Ruby Enterprise Edition. Today, that’s:
    wget http://rubyforge.org/frs/download.php/68719/ruby-enterprise-1.8.7-2010.01.tar.gz

    but follow the instructions you’ll find at http://www.rubyenterpriseedition.com/download.html for the latest. Those instructions will have you un-tar the file and then run the installer.

  3. Install the tools needed to build Ruby Enterprise Edition. If you run the installer, it will prompt you for missing tools. In my case, I needed to:
    sudo yum install gcc-c++ make patch zlib-devel openssl-devel readline-devel
  4. If you’ll be using mysql, you’ll need the native code to build the matching gem. REE attempts to build gems for MySQL, SQLite and PostgreSQL, so choose your flavor and issue the appropriate command like:
    sudo yum install mysql-devel
    

    or postgresql-devel or sqlite-devel as appropriate.

  5. Follow the instructions supplied by the REE installer. They did a nice job on that. To install Passenger when I was done, some additional source code files were required:
    sudo yum install httpd-devel apr-devel
    sudo /opt/ruby-enterprise-1.8.7-2010.01/bin/passenger-install-apache2-module
  6. Once again, follow the prompts to add the proper load module and path commands to your web server configuration, add a configuration file for your site, and you’re ready to start installing your site’s code.

NOTE: It wasn’t the case with my particular host, but you may need to adjust your SELinux settings, if you’ve got SELinux enabled. See the post at http://www.catapult-creative.com/2009/02/04/installing-rails-on-centos-5/ and look for “SELinux” for some ideas.

Git presentation, CentraLUG, 3 May 2010

The Central New Hampshire Linux User Group will meet at its usual place and time, NHTI Library, Room 146, 7 PM – 9 PM. Directions can be found at http://wiki.gnhlug.org/twiki2/bin/view/Www/NHTILibrary.

In keeping with the tradition of 3-letter presentations (CSS, Vim, SQL, er, HTM), I’ll talk abut Git, the distributed version control system. Git was originally developed by Linus Torvalds for the Linux kernel and is licensed under GPL2. It’s become popular in Rails development as well, especially with the hosted site GitHub.com. Similar to Mercurial [Updated link, Ed.] or Bazaar, Git is a DVCS – a distributed (or Decentralized) version control system or revision control system. DVCSes introduce an easier way to work on shared project. We’ll talk about how DVCSes work and Git in particular, look at some of the available references, handy cheatsheets, and sites to host your DVCS.

As always, we’ll have some time for introductions, job postings, folks looking for work, questions and hopefully answers.

Hope to see you there.

Some additional links, besides the ones I posted to the announcement above:

Scott Chacon is the authority on Git. Check out his book, his tweets, his online reference, his PDF, and Why Git Is Better Than X.

The Git wiki is a good source of reference materials.

A great diagram and discuss about using git branches in a real development and production environment.

Powered by WordPress. Designed by Woo Themes

This work by Ted Roche is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 United States.