Eclipse: An Empty 'Available Software' List

The Problem

I recently (reluctantly) installed Eclipse on my Linux development box (Ubuntu 9.10) for the first time in over a year. I quickly ran into problems when trying to view and install available plug-ins on the 'Available Software' list (available from the menu: HelpInstall New Software...). The available software list appears to be empty, however, it seems that it is actually not being painted correctly.

A quick search pulled up a bug report that suggests a problem with Eclipse's use of the GTK, and a little more searching found an explanation about mixing calls through the GTK with calls to the native windowing system.

The Solution

The solution is to make sure all Eclipse GUI calls go directly to the native windowing system, avoiding the mix of native and GTK calls. This involves setting the GDK_NATIVE_WINDOWS shell environment variable. If starting eclipse from the command line, then this can be done as follows:

$ export GDK_NATIVE_WINDOWS=1
$ eclipse
If starting from a desktop short-cut or similar, then rename the eclipse executable to, say, eclipse.bin and create the following shell script, named eclipse, in the same directory:
#!/bin/bash

export GDK_NATIVE_WINDOWS=1
$(dirname $0)/eclipse.bin

Be sure to allow users with the requisite permissions to execute this script - from the command line:
$ chmod ug+x eclipse
Ownership of the new script file may also need changing:
$ sudo chown $(ls -l eclipse.bin | awk '{OFS=":"; print $3,$4}') eclipse
(That's the long way round, but it saves a little explaining and introduces an interesting use of awk!)

Eclipse Again, sigh! - An Aside

I switched to Netbeans a while ago, having grown weary of the bugs I was encoutering in Eclipse - I find Netbeans to be extremely stable and trouble-free, by-the-way.

I installed Eclipse again recently in order to take advantage of the Android Development Tools (ADT) plug-in for Eclipse and soon faced having to deal with the bug described above. I'd like to get on with the job of developing decent software and an IDE that requires trouble-shooting, work-arounds and restarts takes me away from that and breaks concentration. That's frustrating!

I'm inclined to attribute this bug to quality issues in the Eclipse code-base. That's based upon using Eclipse for a number of years (primarily for Java and C++ development) and seeing it become increasingly unstable. The explanation regarding mixing GUI calls may also add weight to this view - Eclipse would seem to breaking Demeter's Law in an interesting way by going extra lengths to by-pass the GDK layer from within the JRE.

My recent experience with Eclipse has done nothing to bring me back to using it again, and so I'll continue to use the ever improving Netbeans where possible.

Labels: , , ,

Bookmark and Share

PHP Output to Syslog on Ubuntu

There are just a few things you need to know in order to output trace or error information to syslog on an Ubuntu system (the following is probably true for other Debian-based distributions, too) from PHP.

  1. Set error logging to syslog in php.ini (the system-wide php.ini can be found at /etc/php5/php.ini):
    error_log = syslog
  2. Restart Apache:
    $ sudo /etc/init.d/apache2 restart
  3. Use the error_log() function to output your error messages.
  4. View the output of error messages:
    $ tail -f /var/log/syslog
    The -f flag causes new messages to be appended to the output of tail.

Labels: , , ,

Bookmark and Share

Selecting A Free Software License

Motives

I've been stuck in the world of open source software licensing recently. I've written a reasonable amount of software for use by my company, getpepper™, and I would be happy to make some of that software open source. Although I'm inclined to help others, and generally hope to do things that are considered to be socially useful, my choice to open source isn't purely altruistic. Certainly I hope it benefits others as it benefits getpepper™ by its use. But I also hope that getpepper™ and maybe me, individually, will benefit from the wider exposure that open sourcing can bring.

The initial items of software that I'm considering open sourcing are plugins for WordPress and jQuery, both of which currently use the GPL version 2 license. There is a view that developing extensions for at least one of these platforms means that those extensions themselves become GPL'd. I want to understand the commercial implications of this as it effects my company when it releases its software under an open source license - and here I probably mean the GPL, or a GPL-compatible license.

Concerns

So with the above in mind here are a couple of my concerns.

  • As the original author and copyright holder of the software, can I recover that software to apply a different, non-GPL-compatible license to it?
  • Are the rights of the original author any different to the rights of any other user of the software?
Maybe I'm being overly cautious and a little edgy about committing my time and hard work to an open source license, or maybe I'm not really giving too many of my rights away. I'm not sure as I'm not a lawyer and prefer to spend my time writing software, not figuring out the intricacies of licensing law - which seems pretty dull compared to writing most, but not all, types of software. Anyway, hopefully some of my future posts will reflect a more legally aware view!

Labels: , , , ,

Bookmark and Share
Subscribe to this blog
rss news feed icon