Category Archives: Code

Anything and everything related to programming.

Correcting obsolete dependency requirements in DEB packages

I use the excellent XMind mind-mapping tool. Moving from Linux Mint 13 (Ubuntu 12.04 LTS) to Xubuntu 14.04 LTS revealed a problem with the way XMind was packaged for Ubuntu. It had a hard-coded dependency on specific versions of the Java runtime – either of openjdk-6-jre, oracle-java6-jre, sun-java6-jre or sun-java5-jre. That wouldn’t do. The 14.04 LTS uses openjdk-7.

Of  course, the DEB package is built to support the widest range of Java runtimes and on some systems, they can go back up to Java 5 – when Sun Microsystems was still alive. But that should not be a reason to force up-to-date systems to pull in older runtimes. We can let XMind know about the issue and wait for them to update the dependencies and rebuild the package. Or we can do it ourselves.

DEB files are compressed archives with some control information. The dpkg-deb utility makes it very easy to modify DEB files.

$ mkdir -p extract/DEBIAN
$ mkdir build
# dpkg-deb -x package.deb extract/
# dpkg-deb -e package.deb extract/DEBIAN
[ something, e.g. edit the control file...]
# dpkg-deb -b extract build

The control file was edited as follows:

-Depends: libgtk2.0-0 (>= 2.8.0), openjdk-6-jre | oracle-java6-jre | sun-java6-jre | sun-java5-jre
+Depends: libgtk2.0-0 (>= 2.8.0), default-jre | openjdk-6-jre | oracle-java6-jre | sun-java6-jre | sun-java5-jre

Now, the package will first check for the default Java package on the system and then move on to its list of specific runtimes.

When The Rainbow Bled – 2

I actually went beyond stating facts and allowed my emotions to seep through in the first rainbow post. I was frustrated that a good guy turned out to have feet of clay. I was unnerved by the sheer vindictiveness shown by the LGBT activists.

There is reason behind the vindictiveness. Just like the Caitlin family, there are plenty of stories about how lack of equal rights have hampered same-sex couples – legally, financially and socially. These are not hypothetical but real, tangible issues – not being able to get your partner under insurance cover, not being able to get a visa to visit your country, threat of being fired from your job. All this, over and above basic discrimination in all spheres of life. Some of the victims are members of the Mozilla community.

When these activists found out that Eich was being elevated to be the face of Mozilla, they found a target for their collective anger. Just as society and government brought down the full weight of their disapproval on each victim at a time, these activists bore down on Eich like a tsunami of vengeance. It is easier to destroy the CEO of a company creating a non-essential yet high-profile product dependent on its community, than taking the fight country-wide (world-wide?) against all those other bigots in public and private offices. They have put Eich’s head on stake to serve as a warning to others.

Maybe we, the outsiders, would have preferred to see a little less vindictiveness. A little more restraint. Maybe we feel pity for Eich who has been driven away from the community he created 15 years ago. This is not a justification for either the activists or Eich. But we don’t know the extent of misery the LGBT victims have gone through. We can never have a full grasp of their anger. Right now, their policy is to destroy any opponent they can with as much publicity as they can get. They are not in the mood for taking prisoners. This is only turning them into the monsters they hate, though they may not acknowledge it.

We can only hope that as their win their victories, as their misery reduces, they learn to be tolerant of dissenting views. One day, let’s hope they learn to be gracious victors.

When The Rainbow Bled Black

The way Brendan Eich has been hounded in the last couple of weeks has left me feeling uneasy. To clarify my thoughts, I would like to lay them out here.

First, Eich holds a personal view – of not supporting marriage between same-sex individuals – that is not in line with my own. This is fine, to the extent that he does not bring it in his interaction with others – colleagues, strangers on the street, etc. To all accounts, Eich has managed to keep his opinions and biases to himself and conducted his public interactions professionally.

Many people ask whether I will work under a boss who has been known to support subverting any of my rights. Yes, I will. Supporting subversion of rights and actually subverting them are two different things. The moment he does the latter, (in the words of H. Caitlin), the gloves come off.

Second, today, it is possible for Mozilla employees and community members to raise voices about how their personal rights are being prejudiced. Who do you think was among the founders and mentors of the “community” that these protestors are part of? Eich would never have guessed that the “open”, “tolerant” and “inclusive” tenets of the community he fostered would one day be used to oust him from the place. The Mozillians who voiced their concerns and uneasiness did not put forward one example when Eich’s personal bias had resulted in him discriminating in any way against anyone from the community . Nope, it was all a chorus of “OMG, our personal views don’t match. He might turn Big Bad Wolf on us”; never mind that Eich was pledging like a prisoner before the parole board to uphold Mozilla’s standards of equality and tolerance. The standards he helped create. The word “ungrateful” is not strong enough.

NoteI have seen extraordinarily similar arguments on different sites like Reddit. But I have seen them first on the Rarebit blog and Twitter feeds. This is not an attack on Caitlins or Rarebit so much as using them as a reference for the mob that lynched Eich. It seems fitting given how they made Eich a figurehead of LGBT hate.

Third, about his prop8 support affecting “families on the ground”. Rarebit founders, the Caitlins, say this was akin to a direct attack on their family and they cannot do business with an individual such as him.

Eich was acting completely within the framework that US and Californian laws had specified. He did nothing illegal. To bring his action to the same level as thugs bursting into your home with assault rifles is wrong. It’s in bad taste. Will they go after other people who have engaged in similar “direct attacks” on their family? Adobe, Boeing and Intel employees donated to prop8 support. Will they stop using Adobe products? Check that the plane they are boarding is not a Boeing aircraft? Don’t use any Intel-powered devices? Prop8 was passed, which meant a majority of Californians voted for it. Did the Caitlins stop all socio-economic interaction with those (more than 50%) Californians?

If Eich putting (what to him was) chump change towards a cause he personally believed in is a direct attack on their family, then logically and emotively, isn’t what the Caitlins have done a direct personal attack on Eich? It seems to me that Caitlins aren’t just looking out for family, they also want to turn the world blind.

This is like me complaining about a co-worker to my company HR because his kid beat up my kid on the school ground. Each issue has its own place. Eich successfully kept his bias in his personal domain. There is zero proof that he ever let it influence his work at Mozilla. The Caitlins linked it to their business and brought it into the public domain.

Furthermore, this was battle fought within bounds. Just as Eich donated in support of prop8, others donated to stop prop8. Even if the law was initially passed, it was overturned by the courts later. The battle was won. As far as Eich was concerned, he fought it fair and square. Yes, five years (in fact, even a minute, a moment) is too long to reverse an unjust act, but the Caitlins won. Eich lost. His personal belief was consigned to his personal domain. What more did they want? What did they achieve from the act of posting “five reason for Eich to step down”? The Caitlins should admit it – they ask for equal rights and tolerance but are not ready to give quarter to an opponent who has lost. They wanted more. They wanted revenge. They wanted total submission. And they found a vulnerable, juicy target.

Many people said that this was not an attack on free speech or thought – rather, you can have free speech but you should also be prepared to face the consequences and criticism generated by that free speech. Oh, then you should have checked H. Caitlin’s Twitter feed. Complaining and wallowing in sadness about the negativity the Internet was directing at them. Gee, in the name of your family, you drove away a man from his baby. One that he had nurtured for 15 years. One that you were using to drive your own business. You drove him off Twitter. Away from public. Days after he reached the pinnacle of his professional life, you forced a man “to take time away from work”. How about you face up to the consequences of free speech now?

Finally, the less said about OKCupid, the better. This business, which monetizes one of the most vulnerable sections of society, decided to protest Eich’s $1000 donation made in 2008.

Let’s see, one of their co-founders – Sam Yagan – donated $500 twice to the Obama campaign from 2007 to 2008. Yagan also donated $500 to Utah Republican Congressman, Chris Cannon, in 2004. Cannon voted in favour of a constitutional ban on same-sex marriage. Another co-founder, Christian Rudder, donated $1,000 to Obama’s 2012 campaign. Obama supported same-sex marriage only in 2012, not before that.

That is $2500 donated towards politicians who were not in support of same-sex marriage. So, what exactly are OKCupid protesting?

In summation, while Eich’s views were certainly not progressive, they were well contained to his personal domain and did not have any proven effect on his working within Mozilla. Instead people chose to see shadows where there were none and drove a deserving man from his place in the sun.