Category Archives: Personal


FreeBSD Ports and other pending stuff

Recently some of users who use my ports contacted me with some issues they’re facing. If you know me from my FreeBSD ports, then please pardon me for not updating my ports yet. I was planning to do them last weekend, but due to a dragon^Wcatastrophe which caused my box chateau.d.if to feel hot again. And co-incidentally, around that time life had been sadomasochistic with me as well :(.

To fix the chateau.d.if, I decided it to relocate it to a new box Intel Core i7 950, a Intel DX58SO mobo, n GiBs of RAM and a graphics card, and the combo decided not to boot for me :(, and therefore needs a replacement.

And on top of that I’m overclocked (read as: overslept) these days, playing weird RPGs :(.

I’m hopeful, this abbe will regain his lost faith soon, and will commit all of his pending PRs, port updates as soon as he gets on his chateau.d.if.

Hopefully all of this will happen by the end of this week.

UPDATE (at 20101104 0300 UTC): I had a Superbad yesterday, didn’t get sleep for more than 36 hours and found that my mobo and CPU both are bad (highly rare, but common for me) and are sent for replacement. It’ll take a week for highly uncertain replacement to happen, courtesy: series of festivals 😦

UPDATE (at 20101112 2230 UTC): chateau.d.if is back, and so am I. I’ll try to finish all pending ports asap.

An RPG session

I just came back from an RPG session. This RPG was set in a school and as I remember everything was so real-time and everything felt so nostalgic, and the characters were so real, that you start believing that this RPG can ever be aborted.

But one of the side-effects of this is the regret that the time you spent playing this RPG could have been well-spent in writing that awesome piece of code which you were hoping to write since a long time, but the reality is that if you really had that time, you were actually trolling…c’est la vie 😛

But unlike every time, this time I’m not going to do any stupid things like contacting the real-life participants of the RPG, and telling them how much I enjoyed RPG, as this always turns out to be those shoot yourself in the foot moments, lol :).

Geekophilia, Shopophobia, Light Bulb, and Trolling

<dragon> In Soviet Russia, light bulb screws you.
<abbe> :-D
<dragon> --dragon

after few minutes:

<abbe> coretemp-isa-0000
<abbe> Adapter: ISA adapter
<abbe> Core 0:      +99.0 °C  (high = +80.0 °C, crit = +100.0 °C)
<abbe> coretemp-isa-0001
<abbe> Adapter: ISA adapter
<abbe> Core 1:      +99.0 °C  (high = +80.0 °C, crit = +100.0 °C)
<abbe> :(
<abbe> coretemp-isa-0000
<abbe> Adapter: ISA adapter
<abbe> Core 0:          N/A  (high = +80.0 °C, crit = +100.0 °C)
<abbe> coretemp-isa-0001
<abbe> Adapter: ISA adapter
<abbe> Core 1:      +96.0 °C  (high = +80.0 °C, crit = +100.0 °C)
<abbe> coretemp-isa-0000
<abbe> Adapter: ISA adapter
<abbe> Core 0:     +100.0 °C  (high = +80.0 °C, crit = +100.0 °C)
<abbe> coretemp-isa-0001
<abbe> Adapter: ISA adapter
<abbe> Core 1:      +97.0 °C  (high = +80.0 °C, crit = +100.0 °C)
<abbe> i can go down any moment :(

after few minutes:

<abbe> I need 2 of them, and I think I'll go with nVidia
<abbe> shopping for computer hardware is the worst thing I ever want to do :(
<abbe> shopping for anything is a nightmare :(
<abbe> what do you say ?
<dragon> yep
<dragon> I agree hardware shopping is painful
<abbe> esp. while shopping when you realize how better this time could be spent in humanizing firefly or writing that awesome haskell program that could launch a nuclear attack (but instead if you weren't buying hardware at that time, you're actually trolling in firemoth@ :P)
<dragon> haha exactly.
<abbe> dilemma of whether to fall in love or deciding whether to spend time implementing something in python, java, perl, haskell is 3.14159 times better than deciding which hardware to buy
<abbe> but the best part of all this is typing this bullshit, instead of seriously deciding which hardware to buy :D
<dragon> lmao.
<abbe> so, an i7 CPU - 11K INR, a corresponding mobo - 5K INR, 6G DDR3 RAM - 5K INR, and spending infinite time deciding how to make up for this lost money -- priceless...somethings mastercard can help you lose, for other things you're the loser :p
<dragon> correct lol.

You’re retarded. You bet.

Hi Explosm team,

I'm a big fan of your comics, and you guys suck better than Electrolux :p.

Okay, here is a story I think you might like to feature in one of your comic:

Rishi  : Hey Ashish, whats up?
Ashish : Cool man, what about you?

Rishi  : awesome. By the way can you add me to your friend's list?
Ashish : Sorry, not possible man. I already have a guy named Rishi in my friends list.

Rishi  : WTF, so ?
Ashish : If I also added you to my friend's list, I'll get confused.

Rishi  : Dude, you're retarded.
Ashish : You bet :P.

Thank you very much :)

If in future, you notice a similar strip in Cyanide and Happiness, then you know who is the retard behind this.

M-x paranoid-mode

Beware of the spies of big brother who want you to reveal the most intimate details of your personal life (with thanks to their social engineering skills) and those details are then provided to big brother. They’ll try to lure you, they’ll try to seduce you, and the only thing which can rescue you from this is your paranoia.

Transitioning to a new GnuPG key

Hash: SHA1,SHA512

Thu Apr 15 12:47:23 IST 2010

Hi everyone,

I'm migrating to a new 4096-bit GPG key from my old 1024-bit key. This
is the notice to inform you about that.

The old key will continue to be valid for some time, but i prefer all
future correspondence to come to the new one.  I would also like this
new key to be re-integrated into the web of trust.  This message is
signed by both keys to certify the transition.[1]

The old key was:

pub   1024D/762E5E74 2006-11-25
      Key fingerprint = 1E00 4679 77E4 F8EE 2E4B  56F2 1F2F 8410 762E 5E74

And the new key is:

pub   4096R/E74FA4B0 2010-04-13
      Key fingerprint = F682 CDCC 39DC 0FEA E116  20B6 C746 CFA9 E74F A4B0

To fetch my new key from a public key server, you can simply do:

  gpg --keyserver --recv-key E74FA4B0

If you already know my old key, you can now verify that the new key is
signed by the old one:

  gpg --check-sigs E74FA4B0

If you don't already know my old key, or you just want to be double
extra paranoid, you can check the fingerprint against the one above:

  gpg --fingerprint E74FA4B0

If you are satisfied that you've got the right key, and the UIDs match
what you expect, I'd appreciate it if you would sign my key:

  gpg --sign-key E74FA4B0

Lastly, if you could upload these signatures, I would appreciate it.
Please could you just upload the signatures to a public keyserver directly:

  gpg --keyserver --send-key E74FA4B0
  gpg --keyserver --send-key E74FA4B0

Please let me know if there is any trouble, and sorry for the


Version: GnuPG v2.0.14 (GNU/Linux)


Also available at: To verify the genuinity of this transition notice, execute:

chateau.d.if!abbe: ~% for i in 0x762E5E74 0xE74FA4B0 ; do ${gpg} --keyserver --recv-keys $i; done
chateau.d.if!abbe: ~% curl 2>/dev/null |${gpg} --verify

where gpg points to the installed GnuPG executable (gpg or gpg2).


WTF, I’d a nightmare few days ago, and it seems it is going to realize soon. Now lets wait for 1306 😦 . And I hope to see some awesome hacks out of it 😉 .


Machines are always better than humans.


While reading a paper which deals with kernel stuff, I encountered word knew in a sentence, which I somehow found odd and unknowingly pronounced as kay-new (like some kernel-level memory allocator ;)) in my brain, until few seconds later I realized, its knew (simple past form of know) 😦

Broken webserver of Google Code

% curl -I
HTTP/1.1 404 Not Found
Content-Type: text/html; charset=UTF-8
Set-Cookie: PREF=ID=913587349124edb1:TM=1267030254:LM=1267030254:S=gPkLxJgB22UJHzXo; expires=Fri, 24-Feb-2012 16:50:54 GMT; path=/;
Date: Wed, 24 Feb 2010 16:50:54 GMT
Server: codesite_downloads
Content-Length: 1389
X-XSS-Protection: 0
% curl 2>/dev/null |file -
/dev/stdin: bzip2 compressed data, block size = 900k

This is really crazy sending 404 to HTTP HEAD requests, while 200 to HTTP GET requests, causing wget to break, which performs HTTP HEAD before HTTP GET to get value of Content-Disposition header.