VMware Server Serial Catch 22


I got a bit tired of recompiling vmware each time Ubuntu upgraded the kernel, so I decided to move to Ubuntu’s Vmware packe.. so I uninstalled my copy and installed from the repos..

The only problem is it asked me for the serial number which were stored in my email and I use imap, and the mail server is in the vmware machine but I needed the serial numbers to start the virtual machine… Catch 22.

So, I had to register for some new serials – now I will receive the vmware newsletters 4 times – once for my signup, once for downloading windows serials, once for downloading linux serials + we run ESX server, so I get one for that also..

Oh, the fun.. why can’t VMWare store my Vmware server serials in my accounts page?

and it didn’t end here, I was hit with this Ubuntu vmware bug, which is resolved by running:

sudo ethtool -K eth0 sg off rx off tx off tso off

What a royal pain..

Technorati Tags: , ,

Powered by ScribeFire.

Open Source Collaboration – Part 2 – A day with Mindquarry


In my last post, I wrote about my search for an OSS (compatible) collaboration product and how I came across three contenders.

  1. Mindquarry
  2. O3Spaces
  3. PengYou

I took a better look at the demos for PengYou and realised that it’s main functions are:

  • Webdav server
  • Very nice file manager for the webdav server
  • Plugin for OpenOffice to open those webdav shares remotely
  • Plugin for MS Word to open those webdav shares remotely
  • (From memory), it used subversion for versioning

O3Space would mean I would actually have to fork out some money after I got through testing it and it’s not OSS yet and didn’t have a demo I could play with, although they do provide vmware image I have downloaded.. so it got skipped over.

I actually got to play around with the Mindquarry demo.

To be continued.. had to stop here.

..ok, I can finally continue on this – a day with Mindquarry 1.1 beta, although it’s actually been 3 days now.

It’s beta software. It has errors, some things don’t work etc. Don’t go thinking that you’re going to be a happy camper working peacefully with 1.1 beta version. It just isn’t so. What I will say, is that despite it’s errors and despite it’s beta version, It’s still what I would call a ‘killer app’

It’s a little like basecamp, I guess – It’s a simple concept, implementing the most important features first and utmost and worrying about the details later.

Some of those ‘details’ that I have noticed: I can’t delete a team or a user from the web interface. Maybe I could do it from the command line, I am not sure yet.

But – what’s so friggin’ great about Mindquarry, I hear you ask.. I would have to say “the wiki” – yes, I know we have 1000 different wiki’s now so what’s so great about Mindquarry’s wiki?

To start, we have automatic built-in versioning with a slick interface and a slick history timeline. Now, the wiki can link to files that are being synchronised via subversion with your local filesystem via a java client. The file versioning has the same slick timeline interface. In fact, the wiki has a nice “link” chooser allowing you to find a file, a URL, a task, a user, a team etc.. you can link to all of these.

Each team gets it’s own wiki. A user can belong to many teams and each team he or she belongs to shows up in their interface. Additionally, tasks can have members assigned to it and the Java desktop client displays the tasks for the user.

A task can be put on hold, be running, have a due date set – etc.

My main need was to synchronise files and folders from remote systems (both Windows and Linux) and ensure that no-one trumped each others files. The wiki, teams and tasks Mindquarry provides are blessings in disguise. I have already documented much of our business processes for each team in the Wiki, referencing and linking to files where I needed, interlinking teams where I needed and creating tasks for my staff. Our people finally have a meeting place for all their files, conversations, thoughts, processes in a central place. Life is good :)

Now the bad:

  • Web interface is Firefox only – I am an Opera user. It’s useable though, if you turn javascript off but I am using Firefox now.
  • Web interface will produced an error maybe once every 15 clicks. I submitted bugs the first day but have since given up.
  • The Java client didn’t work with Ubuntu Feisty’s Java 1.6 – rolling back to Java 1.5 has given a better result – it works.

Powered by ScribeFire.

Tilda – The Yakuake terminal equivalent for Gnome


I finally discovered there was an answer to my long, lost friend Yakuake that I gave up when I moved from KDE to Gnome. Katapult, of course was easily replaced by Deskbar but I couldn’t find a Yakuake replacement until now.

The answer, as in the title of the post, is “Tilda”

Why are Yakuake and Tilda so great? Well, I keep a terminal window open 24/7 and it’s just another space taker on my taskbar. With  Yakuake and Tilda, the terminal window opens hidden upon startup and when you need it, press the shortcut key ( I bind mine to F12 as it was with Yakuake but the default for Tilda is F1) and your terminal emulator slides down out of the top of the screen ready for use. F12 again and it slides back up, as if it totally disappeared.

I had been missing this when I moved from KDE -> Gnome but no longer –

The one thing where I think Yakuake was better is the way you open, closed and moved between tabs in the terminals, that is

Shift+Up arrow = new tab  vs Ctrl+shift+T in Tilda
Shift+Down arrow = close tab vs Right-click -> Close tab
Shift+Left arrow = Scroll to the next tab to the left vs no equivalent in Tilda
Shift+Right arrow = Scroll to the next tab to the right vs no equivalent in Tilda

So, if the tab scroll and close tab options would be added to tilda, I would be in slide-in terminal heaven.

God us geeks are easily pleased :)

Technorati Tags: , , , , ,

Powered by ScribeFire.

Open Source Sharepoint Alternatives – Remote Collaboration

I originally titled this article “Open Source Collaboration – Stumbling upon Open Source Gems” but I know that I have been searching around using the current title’s keywords, so I thought it would be worthy to use it.

I’ve been in discussion with David Lee from Open Source Green Vehicle about using MediaWiki as the beginnings of a Product Data Management and collaboration platform. You can read David’s article here about the subject. I have been looking for a collaboration platform for myself also. The difference between the two is David wants the OSGV one to be mostly open from the web, whilst I want mine mostly private.

Currently, they are using WordPress as the main site, phpbb for the forums and with the addition of the MediaWiki, we were talking about migrating to BBpress for the forums and having a single-sign on for all of them. I came across a few other people doing or trying to do the same thing here, here and somewhere else for integrating wordpress, bbpress and MediaWiki.

Anyway, I came across Sandro Groganz’s blog “The Art of being Open” who had the same issue and saw this article “How to Blog Successfully” which I bookmarked for later reading.

I then read an article Sandro had written about SAAS and Open Source and his company Mindquarry. I decided to take a peek at what Mindquarry does – It’s exactly what I have been looking for over the last few weeeks. A Web2.0 Collaboration platform with a Java desktop client for synchronizing tasks and documents but additionally, it has a built-in wiki platform. I just played around with the Demo and it’s very, very cool – especially the timeline and versioning of the wiki.

I have been using ifolder for almost 2 years for remote file synchronization but they just can’t release a decent stable build that ‘just works’. I have fought and fought to get the client to install in both Windows and Linux environments and I have frankly, just given up. Trying to install the Linux client is a night long episode each time.

So, I was recently searching out alternatives and came across O3Spaces and PengYou and I was tossing up between them. Frankly, I am really not a fan of Java based applications but both of them and Mindquarry are built on Java, so it looks like I am forced down that path.

Mindquarry and O3Spaces offer Vmware images, which I would consider using to replace my Ifolder setup although I don’t fancy transplanting all my development websites, databases and mailserver.

So, has anyone used any of the above and can give any feedback on them? PengYou and Mindquarry are both open source whilst O3Spaces are said to be releasing an open source version very shortly.

Technorati Tags: , , , , ,

Powered by ScribeFire.

SQLyog Community running under Wine with Feisty Fawn theme


In one of my previous posts, I outlined using VMware as a platform for web development. I’ll just outline some of the advantages of that:

  1. Developing / adding content locally into Joomla / Zen-cart is much faster than remotely
  2. You always have a backup copy if your webhost dies
  3. Once you get more than 2-3 sites, you need a dedicated dev. machine
  4. Vmware doesn’t use any electricity or it’s negligible
  5. You don’t need to reinstall your whole LAMP setup (30 databases, 25 virtual hosts etc) if you reinstall your OS

Anyway if you work this way, you will soon realise that you really really really need to be able to transfer data between remote databases. There’s two great (non-OSS) tools for this job that have been around for quite a few years.

  1. Navicat which happens to my tool of choice on Windows because it has a simpler interface than
  2. Mysqlyog which is the first tool I ever came across with the transfer feature.

Anyway, Navicat make a Linux version but look, it’s plain ugly and lacks many of the features of it’s windows counterpart + it costs money. Navicat windows version will run under wine BUT be careful. If you go and click on a table, it somehow renames it with a bunch of question marks.. leaving your database not so healthy until you fix it (as long as you knew the name of the table, that is)

I got fed up with using remote desktop to connect to Navicat on my Windows Server. So,  tonight I checked out SQLYog again and saw they had some screenshots of it running under wine.

Anyway, you don’t have to tell me twice to try it out – Then I saw they have a free community edition – even better. So, I downloaded the community edition and ran the installer, like so:

wine SQLyog529.exe

Pretty complex huh.. Anyway, it completed but when I tried to run it, it then complained about missing gdiplus.dll

I hit the Ubuntu forums and came up with a link to download gdiplus.dll.

Which, for some reason downloads as an exe. I renamed it to a dll and moved it into my .wine/c_drive/windows/system32 directory, re-ran SQLYog again and it worked beautifully.

I have only added a few connections, read a few tables, transferred a remote to local database, so I haven’t really tested what’s working or what isn’t but it inspired me enough to theme my wine install with a Feisty Fawn look, so this is what I ended up with:


  [HKEY_CURRENT_USER\\Control Pane\l\Colors]
  "ActiveBorder"="161 82 0"
  "ActiveTitle"="150 77 11"
  "AppWorkSpace"="250 249 247"
  "ButtonDkShadow"="91 91 91"
  "ButtonAlternativeFace"="209 140 70"
  "ButtonFace"="239 235 231"
  "ButtonHilight"="239 235 231"
  "ButtonLight"="213 205 196"
  "ButtonShadow"="192 191 198"
  "ButtonText"="0 0 0"
  "GradientActiveTitle"="239 239 239"
  "GradientInactiveTitle"="239 239 239"
  "GrayText"="198 198 191"
  "Hilight"="249 207 143"
  "HilightText"="0 0 0"
  "InactiveBorder"="239 239 239"
  "InactiveTitle"="239 239 239"
  "InactiveTitleText"="255 255 255"
  "InfoText"="0 0 0"
  "InfoWindow"="200 0 0"
  "Menu"="239 235 231"
  "MenuBar"="0 0 0"
  "MenuHilight"="0 0 0"
  "MenuText"="0 0 0"
  "Scrollbar"="239 239 239"
  "TitleText"="255 255 255"
  "Window"="255 255 255"
  "WindowFrame"="0 0 0"
  "WindowText"="0 0 0"

Which, is a 20 minute effort to get SQLYog, Fireworks / Dreamweaver looking rather Feisty under Wine.

Anyway, it looks like it’s another solution to break the chains of Windows. Hopefully, some good bluetooth and mobile phone synchronisation tools shouldn’t be so far behind.

Powered by ScribeFire.

Multiple User Workstations – with full 3D graphics capabilities


Mostly for my own reference – a collection of links for Software / Hardware setups for multiheaded (as opposed to headless) servers.

Technorati Tags: ,

Powered by ScribeFire.

Jitterbit – Migrating dissimilar data, continuously even


I run a webhosting business based in Sydney, Australia specialising in supporting open source software and managed / custom solutions for our clients.

A bit off-topic here but for any web hosts reading this, there’s some great up and coming GPL control panels AND billing systems.

Billing System
http://www.ultrize.com/minibill/ (Simple & small but looks good)
http://www.solid-state.org/ (More complete and last I looked they had WHM integration in Subversion)

but I digress..

The point is we are migrating from an old custom-written php/mysql billing system written by the previous owner of the business to Modernbill. The design, or lack of in the old database has meant that there’s no ‘relationships’ in the database, say between a customer, their account/s, their domains and their billing details. Maybe he came from some old ISAM days because all the relationships are dealt with at a php level – it’s all very ugly.

Anyway, it’s not something I want to contract out to some developers and I am not an sql genius so I went looking for a way to map fields for two dissimilar sources. I had read about Jitterbit a long time ago and thankfully stumbled across it again. Jitterbit’s USP = Business Integration Made easy – and it’s no far wrong.

Jitterbit is written in Java, relies on Postgresql and uses JDOBC to connect to different databases, but it doesn’t stop there. It can manipulate data from web services, flat text files, xml files, ldap, active directory and enables you to map that data into different web services, databases, flat files, xml etc.

They have “Jitterpacks” available, which are basically pre-configured setups for migrating data from<->to some enterprise software like Peoplesoft, JD Edwards,
Salesforce.com, SAP, Netsuite, SugarCRM, Compiere, Vtiger
CRM, OpenMFG.

Anyway, the data migration isn’t yet complete: we’re still cleaning up data using python for text manipulation prior to the import – it’s times like these that the power of regular expressions just shine.

Once we get through that, Jitterbit’s ‘data transformations’ are able to take care of the rest of it. It even enables us to run both billing systems simultaneously and keep the data synchronised.

A quick note on Installation and Usage:

Installation of V1.1.0 into Windows XP worked beautifully. An installation of V1.1.2 is proving difficult because Postgresql V8.1 keeps failing. Additionally, I aliened the RPM’s of client and server to deb’s for an Ubuntu Feisty install but came up against some issues, so I ran the server component in a Suse 10.2 virtual machine and am running the Jitterbit client from the Ubuntu machine.

You may find that the Mysql ODBC driver in the Suse repositories don’t work and you have to install the ODBC driver from mysql website.

You will then need to copy the driver to /usr/lib/unixODBC/

and then run:

myodbc3i -a -d -t”MySQL ODBC 3.51 Driver;DRIVER=/usr/lib/unixODBC/libmyodbc3.so;SETUP=/usr/lib/unixODBC/libmyodbc3S.so”

to register the ODBC driver. After that, restart jitterbit

/etc/init.d/jitterbit restart

and you should have your mysql driver there when you connect from the Jitterbit client.

Technorati Tags: , , ,

Powered by ScribeFire.

Making Django pervasive- Pylucid as an example


Two days ago, I was doing my weekly browse of Freshmeat when I came across Pylucid,a CMS that seems to be getting refactored from it’s original Python foundations into Django.

Now, it’s versioning is still 0.8.0alpha1 and yes, it is alpha quality software with many things not working etc. but SOME things really struck me about it.

  1. It’s the first Django released application I have seen that came as an ‘all-in-one’ bundle; meaning I downloaded it, untarred it, clicked the standalone_run.bat and the thing ran on Django’s built-in webserver.
  2. To achieve this, it came bundled with Django
  3. It came with all the required index.fcgi setup so that I was able to upload it to my standard Cpanel server with mod_python installed and it just ran.
  4. It included an installer and python web shell (disabled by default) so that you can do the needful without requiring shell access.

While the installer isn’t perfect and the CMS itself is still missing some modules and has quite a few errors in it, it was the first Django app I have downloaded that I could get working in 5 minutes.

It just happened that on that same day, I had been reading this article on Keith Robinson’s blog about how he was tossing up between Ruby on Rails or Django and they had a decent sysadmin work for a few hours and couldn’t get django working (I can’t figure that one out myself.. it’s not THAT difficult) but it’s a case in point.

Jeff Croft has made some very relevant comments at the bottom of the article and one struck me as it was one of the main reasons I went looking for alternatives to Ruby on Rails. He says:

I guess my personal perception problem with Rails (and a perception is all it is, I’ve never actually used the thing) is that I perceive Ruby to be an irrelevant language outside of Rails. I perceive Rails somewhat as a beautiful house built in the middle of nowhere. It’s a great house, and if you never need to go anywhere else, it’s fine. But it seems like as soon as you try to step out of that Rails fence, you’d be in trouble. Python’s much larger community means there are thousands of pre-made libraries and classes to take advantage of, more people available for support, more books on the topic, and more flexibility if you ever decide to leave Django.

There are two other issues to address for converting the php masses over to python or a framework like Django. That is, availability of hosting. I quote Jeff again in saying:

The same thing I said about hiring applies to hosting, too. Who cares if there are 5000 hosting companies that provide PHP support, 100 that provides Rails support, and 50 that provide Django support? How many hosting services do you need? One. That’s all.

In a sense, he’s right but what about all those web designers and developers that have a good relationship with their hosting provider, trust them and use them for everything? For me, getting Django as a plugin for Cpanel, Plesk, Helm etc. similar to Fantastico would be the best thing. Maybe the folks over at Fantastico could package it in. That would be the fantastic. I won’t hide my bias here, I run a hosting business and we run mostly Cpanel as well as Plesk and Webmin. It seems I can easily offer Django hosting from the Django Hosts page. You buy VPS / Dedicated Server, well of course you can run Django but really, how many of designers and developers do you know that have the resources or the desire to manage their own mail server, apache, security yada yada yada. Yet, not all shared hosting is as bad as Dreamhosts ;)

Mind you, I haven’t had the opportunity to try out Chapter 21 of the DjangoBook which seems to have a simpler implementation than what has been used in Pylucid.

Lack of backwards compatibility in php5 was a strong reason for lack of uptake on it. Whilst there are cgi workarounds for running php4 and php5 simultaneously on a server. Thousands of hosts couldn’t do a server-wide update to php5 without breaking everyone’s software. The situation’s still here today. We STILL have to run php5 side by side with php4. But at least, you can upload your Cakephp, Symfony, Qcodo project and 9 times out of 10, the thing will just run.

How did PHP become so pervasive? Why isn’t there a Java equivalent of WordPress, Joomla, Egroupware, Zen-cart available? because ease of Mr. and Mrs. Smith home user couldn’t come to grips with it, can’t find a host that supports it or they go and ask their current host – Can I run X Java project? The answer is no

What brought about wide use of PHP was due partly to the fact that there became so many widely available OSS and it was so easy and cheap to install to try it out. People became ‘overnight’ hackers of that software because their open source cms, shopping cart, groupware didn’t quite do what they needed. They either needed to learn how to do it themselves or go to Elance or Scriptlance to get it done for them. Thus became the business of php and dare I say, there’s a fairly fertile land of php developers running around writing spaghetti code worldwide now, god help us.

You see, both Django and Ruby on Rails has been off an running for over a year now and both claim (which I agree with) massive increases in site / developer productivity, so why is there no Joomla, no Zen-cart, no Egroupware? Why haven’t these projects seen the light of day and taken the road to enlightenment? PyLucid, Scroll Blog and Sphene Community tools are the only ones I have seen thus far.

btw, take the above as a grain of salt, I am ranting and have a headache.

Technorati Tags: , , ,

Powered by ScribeFire.

Open Source Windows program kick ass on their KDE, Gnome equivalents


Ok, I realise that my title could create a flame-war but I want to pull some heads here to tell me otherwise, to show me some software that I have missed, or features I am not aware in the Linux programs.

I’m a cross-platform guy spending 50% of my time between different *nixes and Windows (albeit Vista).

That said, there’s some very cool Windows OSS that sometimes exceeds it’s Linux counterpart.

KeePass Password Safe is a very good example where it’s the parent of the Linux version KeePassX. Both are password database safes that use AES or Twofish encryption algorithms for managing passwords but KeepassX search functionality doesn’t work.

Putty , a SSH client is another example where it came before it’s Linux equivalent but take a look at the Linux version, even though I am certain they use GTK, it looks like an ancient TKinter program on Linux. Ugly as hell.. but it does it’s job well though.

I have been a long time admirer of the Windows diff program WinMerge and only came across a decent Gnome equivalent the other day called Meld, which just happens to be written in Python. The KDE equivalent of this would be Kdiff – which I had used for sometime previously. Still though, neither seem quite as nice or easy to use as WinMerge.

In FTP land, we have Filezilla and we have, of course the Linux equivalent GFTP but there’s a few things about GFTP that just don’t work as nice as Filezilla. For example, in Filezilla you can drag a bunch of files and folders into a subfolder, or up a directory level. This isn’t possible in GFTP. Additionally, try and rearrange your bookmarks in GFTP.. go on, try it.. it sucks.

WinSCP is a great little SCP / SFTP program for Windows. It builds on Putty and provides a gui and connection manager in an Explorer or Norton Commander style interface. There’s no straight up and down, standalone Linux equivalent for this program though. What we have in Linux is the fish:// protocol in Konqueror or the sftp:// protocol in Nautilus. Their syntax is straight out standard scp syntax ie:

For Konqueror: fish://user@host/home/folder/
For Nautlius: sftp://user@host/home/folder/

From memory, fish:// uploads a perl script to the server to assist the connection, whereas Nautilus just seems to leverage the standard sftp protocol. Both are great and can just be added as Bookmarks. Actually, I think the linux way here is much nicer than needing an add-on program. It’s almost the Linux equivalent of SMB albeit secure.

Technorati Tags: , , ,

Powered by ScribeFire.

NoMachine FreeNX – accessing active session isn’t possible


** – Update – The below is left for reference but it IS apparently now possible to do this using NoMachine V3.0 – see this post
Look, it’s just not possible in FreeNX to grab a local console session or ‘mirror’ an existing session using native NX protocol. Part of the problem is how is the architecture of spawning a new X session.

Anyway, the ‘answer’ to this problem by most people is to tunnely VNC through NX.. Look, go try it if it suits you but it’s, well if I wanted VNC, I would have just used VNC. NX is just another level all together.

This is a real downer, as I use RDP everyday at work and remote control sessions, login via the console etc – a bit of a downer for NX.

Anyway, while it’s not the best solution this is what I do, which suits my situation. Generally, it’s just me connecting from a remote location. Sometimes from work or from a friend’s house.

  1. Connect as myself, even though the console is logged in. This creates 2 users logged in under the same name.
  2. I run gnome saved sessions which kick off Evolution, Opera and Skype

I then have this in my .profile for my login (don’t run it in your .bashrc or else it will kill evolution each time you open a new shell):

for i in `pgrep evolution`;do kill -9 $i; done;
for i in `pgrep opera`;do kill -9 $i; done;
for i in `pgrep skype`;do kill -9 $i; done;

This kills the three applications, so I can then open them in my NX session. Yes, there’s some bloody repetition there but it’s a one liner I knew, it took 5 minutes and doesn’t make a difference to the time or speed of the login.

Some applications will function running under two simultaneous logins but most won’t. Anyway, pgrep is a nice little Linux utility that’s not available on HP-UX or Solaris –

The ‘almost’ equivalent for that is: ps -ef | grep ‘process_name’

Just don’t go doing any funny shit as root like:

for i in `pgrep ini`;do kill -9 $i; done;
for i in `pgrep at`;do kill -9 $i; done;

;)

Powered by ScribeFire.