Home > geek stuff > Pidgin in ThinkPad-ova lučka za osvetlitev tipkovnice

Pidgin in ThinkPad-ova lučka za osvetlitev tipkovnice

Thinkpad laptopi imajo nad displayem vgrajeno lučko za osvetlitev tipkovnice.  Ker je v R seriji oranžne barve, je precej neuporabna (sicer pa, kdo pa še gleda pod prste med tipkanjem?). In potem ma pidgin 'tam doli' v trayu ikonco, ki v neaktivnem stanju kaže status (available, away,...) in ko dobiš novo sporočilo, se le-ta obarva oranžno.  Če gledaš film iz postelje, in če je zvok v filmu glasen (glasno posnet), se pidginovega piskanja sploh ne sliši, ikonica v trayu je pa seveda prekrita s filmom. Tedaj bi si človek zaželel kakega drugega načina notifikacije o neprebranih sporočilih.... in jaz sem se odločil uporabiti prej omenjeno lučko za osvetlitev tipkovnice.

Patch spodaj spada med grde hacke (TM), in za razliko od mojih one-line patchev... je tukaj potrebo dodati kar celi (pazi dvojina!) dve vrstici (pazi dvojina spet)! Seveda zaradi oklepajev in zaklepajev, to število naraste kar na magičlnih 4 vrstic spremebe v kodi :) ) Zakaj pa grd hack? Zaradi system()-a, pa še česa... sj bi se dalo lepše to narest, brez klicev zunanjih programov, a ker sem len... naj gdo drug popravi :) ) Patch je tudi thinkpad-specific, a se ga da enostavno prilagoditi.

Evo patch:

diff -Naur pidgin-2.5.8/pidgin/gtkdocklet-x11.c pidgin-2.5.8-l/pidgin/gtkdocklet-x11.c
--- pidgin-2.5.8/pidgin/gtkdocklet-x11.c	2009-06-28 04:05:26.000000000 +0200
+++ pidgin-2.5.8-l/pidgin/gtkdocklet-x11.c	2009-07-19 17:18:13.000000000 +0200
@@ -115,10 +117,14 @@
 		default:
 			icon_name = PIDGIN_STOCK_TRAY_AVAILABLE;
 			break;
+
 	}
 
-	if (pending)
+	if (!pending) system("echo off > /proc/acpi/ibm/light");
+	if (pending) {
 		icon_name = PIDGIN_STOCK_TRAY_PENDING;
+		system("echo on > /proc/acpi/ibm/light");
+	}
 	if (connecting)
 		icon_name = PIDGIN_STOCK_TRAY_CONNECT;

Seveda je ukaz znotraj system("tole tle mislm") mogoče spremeniti po želji, in lahko z recimo "eject /dev/cdrom" ejecta cdrom ob čakajočem sporočilu, in z "eject -t /dev/cdrom" spet injecta(?) ko ni več čakajočih sporočil.

Patch worksForMe(TM) na pidginu 2.5.8. Seveda če se zaradi patcha vaš računalnik samovžge, eksplodira, ali pa iz njega skočijo škratki ki začnejo štrajkati, nisem jaz nič kriv, in me sploh ni blo zraven.

Have fun!

  1. July 23rd, 2009 at 12:51 | #1

    Tole je nekaj podobnega, samo brez tvojega patentiranega grdega hacka:

    http://packages.debian.org/unstable/net/pidgin-blinklight

  2. mulaz
    July 23rd, 2009 at 15:09 | #2

    U pa res :) )

  3. mulaz
    July 23rd, 2009 at 15:13 | #3

    No ja... je pa za tist potrebn en suid program... pr men pa sam en grdHack(TM) :) npo ja.. bom se to stestiru

  1. No trackbacks yet.