A Review of Pokki – Windows 8 Start Menu

I just wanted to review Pokki – Windows 8 start menu replacement which I installed to replace the deeply broken Windows 8 Metro interface.

Pros

  1. It is free

Cons

  1. It is really slow and takes ages to load up.
  2. It has privacy problems – i.e. it records everything you type into the search and send it to their webservers.
  3. It mixes the Pokki app store results into the search results which is confusing and introduces lag into the process.
  4. It doesn’t automatically launch the desktop on startup.

Basically, the solution is to use Start8 which is much faster and doesn’t have any privacy problems.

 

How to install Postgres 9.3 with headers on Ubuntu 13.10

If you need to install Postgres 9.3 with development headers (i.e. so that you can compile extensions to Postgres) then hopefully this post can help you. Firstly – don’t use the official Postgres PPA because it only provides binaries and not sources.

So, use Chris-Les Postgress PPA found here:

https://launchpad.net/~chris-lea/+archive/postgresql-9.3

sudo add-apt-repository ppa:chris-lea/postgresql-9.3
sudo apt-get update
sudo apt-get install postgresql-server-dev-9.3

I hope this help someone.

How to send a test email from the command line Ubuntu

If you have just installed Postfix or Sendmail it can be helpful to test if everything is configured correctly. Often you want to do this from the commandline without having to install an entire email client. You can do this by installing a few simple command line mail utilities.

apt-get update
apt-get install mailutils

Then pipe a message to the command:

echo testing | mail -s test_subject myemail@example.com

If the mail doesn’t arrive then you can reconfigure postfix and try again.

dpkg-reconfigure postfix

I hope this helps someone.

Weird ssl_error_rx_record_too_long error after upgrading from Ubuntu 13.04 to Ubuntu 13.10

I upgrade one of our servers from Ubuntu 13.04 to Ubuntu 13.10 and immediately one of the apache sites went wrong. It is was an odd problem because the Apache configuration had not changed and there was nothing unusual about it. I was getting and SSL error like so:

ssl_error_rx_record_too_long error

It turns out that all I needed to do was rename the configuration file (adding .conf). I.e.

/etc/apache2/sites-available/old_name

to

/etc/apache2/sites-available/old_name.conf

How strange!

How to list what Apache modules are enabled in Ubuntu

If you are trying to configure Apache, it can be handy to see what Apache modules are enabled Ubuntu. Here is how to check which apache modules are enabled/installed.

apache2ctl -M

This will provide a list the apache modules which are enabled like so:

Loaded Modules:
 core_module (static)
 so_module (static)
 watchdog_module (static)
 http_module (static)
 log_config_module (static)
 logio_module (static)
 version_module (static)
 unixd_module (static)
 access_compat_module (shared)
 alias_module (shared)
 auth_basic_module (shared)
 authn_core_module (shared)
 authn_file_module (shared)
 authz_core_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 autoindex_module (shared)
 deflate_module (shared)
 dir_module (shared)
 env_module (shared)
 expires_module (shared)
 filter_module (shared)
 mime_module (shared)
 mpm_prefork_module (shared)
 negotiation_module (shared)
 php5_module (shared)
 rewrite_module (shared)
 setenvif_module (shared)
 socache_shmcb_module (shared)
 ssl_module (shared)
 status_module (shared)

a2ensite ERROR: Site www.example.com does not exist! Ubuntu 13.10

On our Ubuntu 13.10 server, I had created an apache configuration file for a virtual host however, I could not enable it using a2ensite. The file was here:

/etc/apache2/sites-available/www.example.com

I tried to enable it:

a2ensite www.example.com

However, the command complained that ERROR: Site www.example.com does not exist! The files clearly exists. It turns out the this command only works if the file ends with .conf. So

mv www.example.com www.example.com.conf
a2ensite www.example.com.conf

Voila it now work. Why or why doesn’t the developer give useful error messages. For example they should have write. Error – the files doesn’t have a .conf on the end!

Changing the Bit Rate in Sound Juicer Ubuntu

It’s a real pain to change the bitrate of Sound Juicer to actually make the MP3 or Ogg files good quality. For some reason the default quality is terrible and the developers have removed the menu which allows you to change the bitrate. Frankly, this makes Sound Juicer useless as a ripping tool and I believe that it should be removed from the Ubuntu repositories.

Basically, my advice is to uninstall Sound Juicer and install Asunder.

sudo apt-get remove sound-juicer

and

sudo apt-get install asunder

This will save you a world of pain and give you an easy to use piece of software.

Request Entity Too Large – php curl error

I have been trying to make curl post request to a script like so:

    $ch = curl_init('http://my.server/api.php');                     
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json') );
    curl_setopt($ch, CURLOPT_POSTFIELDS, array('json' => 'hello' ));
    curl_setopt($ch, CURLOPT_POST, true);                                         
    $response = curl_exec($ch);   

It keep failing with an Apache 213 error like this:

The requested resource
/api.php
does not allow request data with POST requests, or the amount of data provided in the request exceeds the capacity limit.

It turns out that you need to set the curl options in the correct order and CURLOPT_POST needs to be before CURLOPT_POSTFIELDS. Like so:

    $ch = curl_init('http://my.server/api.php');                     
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json') );
    curl_setopt($ch, CURLOPT_POST, 
    curl_setopt($ch, CURLOPT_POSTFIELDS, array('json' => 'hello' ));
true);                                         
    $response = curl_exec($ch);