November 2010 Archives

Passenger on Solaris

| No Comments

So today I set about installing passenger on a Solaris 10 machine. This turned out to be way harder than it seemed.

I went down the "install via gem" road, so it wasn't too painful to being with. When I reached the phase of actually installing passenger to apache, I discovered that the configuration tool is a bit confused by Solaris, especially the apache APU component.

Here's the problem:

* GNU C++ compiler... found at /opt/csw/gcc4/bin/g++
* Ruby development headers... found
* OpenSSL support for Ruby... found
* RubyGems... found
* Rake... found at /opt/csw/bin/rake
* rack... found
* Apache 2... found at /opt/csw/apache/bin/httpd
* Apache 2 development headers... found at /opt/csw/apache/bin/apxs
* Apache Portable Runtime (APR) development headers... not found
* Apache Portable Runtime Utility (APU) development headers... not found

No big deal - we'll just pass it some options, right? Wrong. The CLI only accepts arguments for apxs2 and apr, but not apu.

Running with --apr-config-path /opt/csw/apache2/bin gets us slightly further:


* GNU C++ compiler... found at /opt/csw/gcc4/bin/g++
* Ruby development headers... found
* OpenSSL support for Ruby... found
* RubyGems... found
* Rake... found at /opt/csw/bin/rake
* rack... found
* Apache 2... found at /opt/csw/apache/bin/httpd
* Apache 2 development headers... found at /opt/csw/apache/bin/apxs
* Apache Portable Runtime (APR) development headers... found at /opt/csw/apache2/bin/
* Apache Portable Runtime Utility (APU) development headers... not found

Finally the APU. This is a bit tricky to track down.

This was my process:

passenger-install-apache2-module secretly runs this file:

/opt/csw/lib/ruby/gems/1.8/gems/passenger-2.2.9/bin/passenger-install-apache2-module

Right away we see the following lines:

37 require 'phusion_passenger/dependencies'
52 Dependencies::Apache2,
53 Dependencies::Apache2_DevHeaders

So we follow them:

lib/phusion_passenger/dependencies.rb reveals that it secrely calls PlatformInfo to look for the APU:

304 if PlatformInfo.apu_config.nil?

So we jump into lib/phusion_passenger/platform_info.rb and discover (with some casual grepping):

284 if env_defined?('APU_CONFIG')
285 return ENV['APU_CONFIG']

This means that if we do the following, we can convince the installer that we do, in fact, have the necessary files:

setenv APU_CONFIG /opt/csw/apache2/bin/apu-1-config
passenger-install-apache2-module --apr-config-path /opt/csw/apache2/bin/

Hopefully this will make your life easier.

Drupal GCal Events module and time zones

| No Comments

If you've been using the GCal Events module, you might have noticed a problem where the timezone causes event times to be displayed incorrectly.

In my situation, the time is correct in Drupal, but incorrect in the corresponding GCal link. To force the calendar to interpret the timezone correctly, you can pass the current timezone argument as a GET parameter with the link.

In your GCal Events block, configure the Event Template like this:


<P><A HREF="#URL#&ctz=America/Chicago">#TITLE#</A><br>#LOC##DATE##TIME#

This should force GCal to interpret the times as specific to Central Time.

See the Google API Atom Reference for more information about the ctz option. An example of the link in practice is visible on the Minnesota Population Center (shameless department promotion!) website (http://www.pop.umn.edu) on the right-hand events sidebar.

About this Archive

This page is an archive of entries from November 2010 listed from newest to oldest.

September 2010 is the previous archive.

December 2010 is the next archive.

Find recent content on the main index or look in the archives to find all content.