Notes on codes, projects and everything

Further setup of development environment

After publishing the previous note on setting up my development environment, I find myself spending more time in the CLI (usually via SSH from host). Then I find myself not needing all the GUI apps in a standard Ubuntu desktop environment so I went ahead and set up a new environment based on Ubuntu Quantal server edition beta-1. For some reason my network stopped working and didn’t really want to spend time finding out the cause, so I reinstalled everything again today using the final installer, as well as the updated Virtualbox 4.2.6.

Setting up Ubuntu Server

This is the continuation of the previous guide, so first thing first a complete installation of Ubuntu server is needed. In order to install Ubuntu-desktop without other addons, with just Unity, issue the following command:


sudo apt-get install ubuntu-desktop --no-install-recommends

Just to check everything works properly, start the desktop environment with this command.


sudo lightdm

I needed the virtual machine to not boot to lightdm, therefore I issue this command to stop it from loaded automatically on boot according to this guide.


echo  "manual" | sudo tee -a /etc/init/lightdm.override

Dash may not be functioning and wouldn’t able to launch any application, to fix that, issue the following command (I am lazy, so I installed all the available lens).


sudo apt-get install unity-lens-*

For some reason, the virtual machine is suffering some graphical glitches despite Virtualbox 4.2.6 claimed to fix this problem already. However, it doesn’t seem to work in my case even after installing the Guest Additions. So I installed CCSM


sudo apt-get install compizconfig-settings-manager

and followed the suggestion here to disable an option named “Framebuffer object” in the OpenGL plugin and everything seems to work properly now.

There are still some missing applets, and I installed this package to enable the global menu according to this QnA answer.


sudo apt-get install indicator-appmenu

Installing PHP-fastcgi

After knowing how great PHP would be with fastcgi, I followed this guide to get it working. I made some changes here and there for experimental purpose (for example, using event mpm instead of worker mpm), as follows.

Firstly, replace apache’s mpm module


sudo apt-get install apache2-mpm-event

Then install PHP5-FPM and fastcgi module (assuming you already have basic LAMP stack installed)


sudo apt-get install php5-fpm libapache2-mod-fastcgi
sudo a2enmod actions fastcgi alias
sudo service apache2 restart

As I am using userdir module (not too interested in setting up apache properly, not really interested in sysadmin magic here), so I pasted these settings in my /etc/apache2/mods-enabled/userdir.conf within <IfModule mod_userdir.c> as mentioned in the previous guide


<IfModule mod_fastcgi.c>
    AddHandler php5-fcgi .php
    Action php5-fcgi /php5-fcgi
    Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
    FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /var/run/php5-fpm.sock -pass-header Authorization
</IfModule>

Create a script in ~/public_html and run it in a browser, and FPM/FastCGI should show up in Server API field. And that’s it, my part-2 of the set up of development environment. This installation feels a lot more lighter and my computer fan doesn’t seem to be spinning at full speed all the time.

leave your comment

name is required

email is required

have a blog?

This blog uses scripts to assist and automate comment moderation, and the author of this blog post does not hold responsibility in the content of posted comments. Please note that activities such as flaming, ungrounded accusations as well as spamming will not be entertained.

Click to change color scheme