I

04

Psi - message
jako że od pewnego czasu w PSI takie zdarzenia jak wiadomość, rozmowa, przesyłanie pliku pokazywane jest piękną(?) ale nieczytelną animacją w postacii zmieniającej się gwiazdki na "coś" to postanowiłem sobie to zrobić bardziej czytelne, o ile rakieta ładnie pokazuje nową rozmowę, tak czerwona gwiazdka pięcioramienna :P nie koniecznie mi się już tak pięknie prezentowała...
a więc siadłem i wyprodukowałem coś takiego:
a wersja "źródłowa" wygląda tak
i jest tak jak na moje oko o wiele czytelniej :)
jeszcze bym sobie rakietę jakoś pokolorował żeby była bardziej gradientowo pomalowana...
ale to już dłuższa zabawa niż pokręcenie gwiazdką ;)

X

15

Firefox - ujarzmianie
FirefoxJakiś czas temu zdecydowałem się pokorzystać z Firefoxa, i nawet daje się z niego korzystać, trochę jest biedny (w podstawie), ale po ponad miesiącu przewalania dodatków do niego dało się go poustawiać tak żeby korzystanie z niego było wygodne, nie powiem, sporo przetestowałem dodatków więc i coś z tego wybrałem, to tak...

- zacznijmy od tego co mnie najbardziej wkurzało zawsze w Firefoksie czyli jego nachalnego na maksa managera haseł który musiał być zawsze mądrzejszy od użytkownika i na siłę wpisywać loginy i hasła wszędzie (głupie) ale na szczęście znalazłem coś takiego Secure Login i od razu zrobiło się lepiej, konfigurujemy sobie skrót na klawiaturze (w sumie kombinację klawiszy) która "wyzwala" managera, przy okazji podobnie jak w Operze wchodząc na stronę z zapamiętanymi danymi w formularzu pola formularza są zaznaczane kolorową obwódką (kolor konfigurowalny)

- ukrywanie reklam i "bzdetów różnych", tutaj z pomocą przychodzi Adblock Plus oraz Element Hiding Helper, ten drugi to rozszerzenie tego pierwszego dzięki któremu możemy blokować kawałki kodu HTML, co często staje się niezastąpione przy blokowaniu reklam które są w stronie zawsze obsadzone np. w takiej samej warstwie (DIV), więc teraz nie musowo blokować "N" obrazków z "K" serwerów a wystarczy wykillować jeden DIV (uwaga!!! używać tego rozważnie bo można sobie poblokować za bardzo skutecznie :P)

- Ctrl-Tab hmm... ten dodatek to trochę bajer, ale robi ładny pogląd otwartych kart (CTRL+Shift+A) gdzie możemy sobie przełączyć się na dowolną inną otwartą kartę (wow... bez udziału myszki i to chyba jedyny plus dzieki któremu mam ten dodatek)

-Download Statusbar czyli ściągam coś... i nie wyskakuje mi okienko z transferami, a widać na dole okna przeglądarki paski postępu ściągania plików i zależnie od prędkości pobierania paski postępu kolorują się na jeden z 4 skonfigurowanych kolorów

- FlashGot (http://flashgot.net/) a do pobierania większych plików gdzie nie koniecznie przeglądarka musi być otwarta godzinami pobieranie świadomie przejmie KGet (w moim przypadku), ogólnie dowolnego praktycznie managera pobierania można we FlashGocie skonfigurować - miło :)

- Extended Statusbar czyli widać postęp / wielkość danych pobranych podczas wczytywania strony (taka miła sprawa po prostu)

- Firebug (http://getfirebug.com/) niezastąpione podczas poszukiwania błędów w tworzonych i oglądanych stronach www, z możliwością modyfikowania "w locie" oglądanej strony www

- Hide Menubar - po co oglądać coś z czego się korzysta bardzo rzadko... więc menubar w przeglądarce mam ukryty i pokazuje się na chwilkę po wciśnięciu klawisza Alt (zawsze to paredziesiąt pikseli więcej na pokazanie strony www mam)

- FireTray czyli minimalizacja Firefoksa do ikonki w Linuksie (dla innych systemów też są takie dodatki)

- Tab Mix Plus możliwości odnośnie do zachowanie się kart (tabel?) ma dość spore, ja osobiście używam tego jedynie do 'przekonania' przeglądarki że co by tam strona www nie chciała to zawsze ma być otwarta co najwyżej w nowej karcie,a nigdy nie w nowym oknie (iTVP wrr...)

- User Agent Switcher a więc przedstawianie się jako "ktoś inny" mało może etyczne, ale wiele serwisów jest tworzone przez debili i jak przeglądarka wysyła "linux" to serwis informuje użytkownika że "zawartość strony obsługiwana prawidłowo tylko w systemie Windows" więc... więc przełączamy identyfikację i filmy na wp i na onecie ruszają aż miło (ciekawe)

- WorldIP ot jeden z wielu możliwych dodatków który sprawdza gdzie stoi serwer z którego aktualnie oglądamy stronkę www :)

jeżeli natomiast o wygląd chodzi żeby zbytnio nie tracić miejsca na ekranie (oczywiście menubar ukryty jak to wyżej wspomniałem) mam motyw Classic Compact dzięki czemu przeglądarka na górze "traci" tyle tylko miejsca:
Firefox wygląd

nie wiem czy to się bardzo komuś przyda, ale może akurat :)
miłego korzystania życzę :)

X

11

jaką mamy pogodę? temperaturę :)
a no właśnie, w tamtym roku zrobiłem sobie zabawkę a że wyniosłem się z akademika to zabawka zmieniła trochę swoje oblicze, nie jest już to zintegrowane z "fałszywymi" bannerkami do GG, a zrobiłem sobie z tego temat do superkaramby który w efekcie prezentuje się na pulpicie tak jak to po lewo widać
podając temperaturę na zewnątrz i w pokoju :)
docelowo przylutuję sobie jeszcze trzeci termometr i przyczepię go do rurki od centralnego, tym sposobem będę miał monitoring na to jak jest grzane w mieszkaniu :D
fajnie - nie??

IX

09

Firefox + akregator
jako że ostatnio postanowiłem pokorzystać z Firefoxa a że ten ma ubogi i badziewiasty czytnik RSS w sobie to należało pomyśleć nad czymś co jednak będzie pilnować nowych wiadomości a nie tylko pozwalać pooglądać tytuły artykułów przekazywanych w RSSach czy Atomach

i tak koniec z końcem oceniłem że akregator sobie może spokojnie siedzieć i pilnować nowości :)
w sumie to nie problem... problemem okazało się nauczenie firefoxa aby po kliknięciu na adnośnik prowadzący do kanału RSS przekazywał ten URL do akregatora, a zarazem żeby "wywoływał" go w taki sposób:
/usr/bin/akregator --addfeed URL

i teraz... klikana konfiguracja Firefoxa nic mnie nie pocieszała swoją możliwością, więc do roboty i do pomocy zaprzągłem "świętą googlownicę" i jak się okazało pytanie podobne jak ja sobie zadałem zadaje sobie jeszcze pewna ilość i użytkowników, ale ku mojej radości dość szybko wygooglałem odpowiedź jak rozwiązać ten problem :)

otwieramy konfigurację firefoxa, tzn. "about:config" i tam ustawiamy 3 rzeczy:
opcji browser.feeds.handlers.application value ustawiamy wartość /usr/bin/akregator (lub odpowiednio odpowiadającą naszemu systemowi)
potem prawoklik i "dodaj ustawienia typu:" wybieramy "Łańcuch (string)"
i dodajemy: browser.feeds.handlers.application.args a wartością: --addfeed
oraz, browser.feeds.handlers.application.uriPrefix z wartością: feed:

jednak to dopiero kawałek roboty, nie zagłębiałem się dokładnie jaka jest tego przyczyna ale musimy zmodyfikować plik FeedConverter.js (znajdujący się np. /usr/lib/firefox/components/ - lub odpowiednio dla naszej dystrybucji i naszej instalacji przeglądarki) odnajdujemy w nim:
case "client":
      var clientApp = 
        prefs.getComplexValue(PREF_SELECTED_APP, Ci.nsILocalFile);
        [...]
      var ss = 
          Cc["@mozilla.org/browser/shell-service;1"].
          getService(Ci.nsIShellService_MOZILLA_1_8_BRANCH);
      ss.openApplicationWithURI(clientApp, spec);
      break;

i zmieniamy to na:
case "client":
   const PREF_SELECTED_APP_ARGS = "browser.feeds.handlers.application.args";
   const PREF_SELECTED_APP_URIPREFIX = "browser.feeds.handlers.application.uriPrefix";
   var clientApp = prefs.getComplexValue(PREF_SELECTED_APP, Ci.nsILocalFile);
   var feedhandlerArgs = safeGetCharPref(PREF_SELECTED_APP_ARGS).split(" ");
      //get all args words delimitted by space into array
   var uriPrefix = safeGetCharPref(PREF_SELECTED_APP_URIPREFIX);

   var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);
   file.initWithPath(clientApp.persistentDescriptor);
   var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
   process.init(file);

   if (uriPrefix) spec = uriPrefix + spec;
   if (feedhandlerArgs) {
      var args = feedhandlerArgs;
      args[args.length] = spec; // add uri as last arg at the end
   }
   else
      var args = [spec];

   process.run(false, args, args.length);
   //debug("FeedConverter.js: ", (clientApp.persistentDescriptor + " " + args));

   break;

i już możemy cieszyć się tym że nasz Firefox umie dodawać kanały RSS do akregatora :)
mała rzecz a cieszy :)
testowane i robione u mnie na Firefoxie 3.0.xx

VIII

25

avatarek w mailach
no i patrząc na to jak w mailach od niektórych osób dostaję różne ciekawe kolorowe obrazki postanowiłem sobie też coś takiego zrobić, sprawa okazała się całkiem prosta, a mianowicie robimy PNGa który ma indeksowaną paletę ośmio kolorową, zapisujemy, potem dowolnym (ulubionym) sposobem przewalamy go przez base64 (ja to robię tworząc w KMailu nową wiadomość, gdzie załączam owy plik a potem patrzę w źródle wiadomości co KMail wstawił) i jak mamy już nasz obrazek zakodowany przez base64 dodajemy do każdego tworzonego przez nas maila nagłówek

Face obrazek_base64
gdzie oczywiście w miejsce tego "obrazek_base64" wstawiamy wygenerowany ciąg znaków,
działa cacy w KMailu, w Thunderbirdzie więc pewnie i w innych tego typu miejscach będzie dobrze :)
oczywiście zabawka działa o ile mamy wpływ na całą zawartość tworzonego maila
w programie pocztowym którego używam bez problemy dodałem dodatkowy swój nagłówek ze swoją zawartością

miłej zabawy

EDIT:
kurde, mam w systemie polecenie 'base64', że dopiero teraz mnie tknęło to zobaczyć :)
działa tak jak ma działać, więc "czary" z załącznikami i oglądaniem źródła są bez sensu ;)

wystarczy wynik polecenie
base64 plik.png

VI

19

klawiatura multimedialna (xbindkeys)
od dawna mam klawisze multimedialne na klawiaturze ale dotychczas używałem doich obsługi programiku hotkeys, który jednak ostatnio zaczął jakoś nie chcieć od jakiegoś czasu startować wraz ze startem KDE i postawnowiłem zmienić go na xbindkeys który ku mojemu miłemu zaskoczeniu pozwala na bardzo wiele ustawień :)

w swoim katalogu domowym tworzymy plik o wdzięcznej nazwie .xbindkeysrc w którym wpisujemy po kolei polecenie do wykonania i kod klawisza na wciśnięcie którego owe polecenie zostanie wykonane :)
co mi się bardzo podoba pięknie rozróżnia czy dany klawisz został wciśnięty wraz z ew. shift, Ctrl, Alt a co za tym idzie zrobiłem sobie zmianę głośności na klawiaturze oddzielnie dla kanału przez który idzie mi TV a oddzielnie dla PCM :)
mała rzecz a cieszy...

do zczytania klawiszy wydajemy polecenie xbindkeys -k i na pojawionym się okienku wciskamy interesujacy nas klawisz (Page Up) (z ew. wciśniętym "modyfikatorem") w oto naszym oczom ukarzę się w konsoli pięknie:

graffi@dunwyn:~$ xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"(Scheme function)"
m:0x11 + c:99
Shift+Mod2 + Prior
graffi@dunwyn:~$
co oznacza że wciśnęliśmy "coś" co zostało rozpoznane jako m:0x11 + c:99
tak zczytaną klawiaturę zapisujemy przykładowo (moje wpisy dla zmiany głośności dla kanału PCM i Aux (ten jest ściszany / pogłaszany z wciśniętym klawiszem Ctrl):

"/home/users/graffi/.bin/hotkeys/volume PCM -"
m:0x10 + c:174

"/home/users/graffi/.bin/hotkeys/volume PCM +"
m:0x10 + c:176

"/home/users/graffi/.bin/hotkeys/volume Aux -"
m:0x14 + c:174

"/home/users/graffi/.bin/hotkeys/volume Aux +"
m:0x14 + c:176

teraz tylko w autostarcie KDE pamiętać aby się odpaliło /usr/bin/xbindkeys & i mam działającą ładnie klawiaturę (oprócz przycisków jawnie 'mutimedialnych' przełapane mam jeszcze kilka takich które nie wiem do czego mają służyć a mi akurat służą tutaj :P np. Pause)

VI

18

ssh na niestardowym porcie i login inny niż lokalny - koniec problemów :)
a no właśnie, na uczelni muszę czasami mieć na "oficjalnych" serwerach login inny niż "graffi" i już...
do tego pomysłowość adminów jest wielka wiec serwery ssh nasłuchują na jakimś niestandartowym porcie (co serwer to inny port :P ) więc dotychczas rozwiazanie miałem jedno, a mianowicie sobie konfigurowałem iptables'a któremu takie oto regółki wystarczały do załatwienia sprawy innego portu:
$sbin/iptables -t nat -A PREROUTING -d 212.182.0.175 -p tcp --dport 22 -j DNAT --to-destination 212.182.0.175:xxx

niby spoko...
jednak to rozwiązuje połowę problemu (tzn. inny port) w sumie od tego momentu mogę się już logować tak:
ssh login@matrix

a sprawa loginu?? tak żeby go nie podawać z palca za każdym razem... do tego takich serwerów z niestandardowycm portem ssh jest sporo już w moim przypadku i za każdym pojawieniem się nowego trzeba nową regółkę do iptablesa dodwać - ale poświecenie i ileż to pracy... :P

otóż jest spoób na to wszystko!!
haha :)
i to dość prosty :)
edytujemy sobie plik ~/.ssh/config wpisujemy w nim przykładową konfigurację dla każdego serwera z którym się łączymy a chcemy połączeniu podawać nic oprócz "ssh serwer" :P

Host cezar
HostName 83.3.zzz.xxx
User login
Port port
i teraz wystarczy tylko
ssh cezar
a klient ssh będzie się łączył na zdefiniowany pod nazwą "cezar" komputer na zdefiniowany port z podaną nazwą użytkownika :)
fajne i miłe :)
konfiguracja każdego połączenia kończy się na końcu pliku lub na znalezieniu najbliższego słowa kluczowego "Host"
w ten sposób możemy zdefiniować "n" różnych połączeń na "k" różnych serwerów (n != k ze względu na to że na daną maszynę możemy mieć zdefiniowane różne połączenia z różnymi nazwami użytkownika)

więcej ciekawych funkcji i możliwości skonfigurowania każdego połączenia ssh w manualu
man 5 ssh_config

sama radość :)

wiem że "ameryki" tutaj nie odkryłem, jednak może ktoś dzięki temu wpisowi usprawni sobie swoje połączenia ssh na przeróżne serwery :)

I

17

termometr
tak sobie swego czasu wpadłem na pomysł posiadania przy kompie temometru, ale nie to żeby sobie tam temperaturę dysku czy procka mierzyć tylko taki na kablu i powiesić na dworze czy w pokoju na ścianie ;)
no spoko... więc poszukajmy coś do zrobienia w takim celu ;)
"święta" googlownica dość szybko znajduje proste i miłe rozwiązania które w swojej prostocie nawet nie są drogie :) (przykładowo na tym się nawet opierałem robiąc to swoje)

a więc do rzeczy...
sam czujnik temperatury (dokładnie DS18B20) kupiłem na Allegro za 3.98 za sztukę więc kupiłem sobie 5 sztuk ;) (jak narazie wykorzystałem 2 sztuki ale dla kolejnej jednej też już zastosowanie mam tylko trzeba do kabla przylutować...) do tego doszly 4 diody i jeden opornik, wszystko zamontowane we wtyczne 9pinowej takiej do małego portu szeregowego - miodzio, schemat jak widać do trudnych nie należy, więc sprawa montarzu była prosta niezmiernie

całość po zlutowaniu (na pojąka) przedstawia się tak:

całość mieści się w obudowie wtyczki wprost wyśmienicie

po zamknięciu obudowy prezentuje się dość profecjonalnie :)

jak widać dla prostoty podłączania czujników temperatury podłącza się je "na śróbokręt" :)
spoko jest :)

fajnie sprytnie, ale przejdźmy do odczytu temperatury z tych czujników... a więc idąc po najmniejsze linii oporu
aptitude install digitemp
i już program mamy zainstalowany :) teraz

graffi@dreakmore:~$ digitemp_DS9097 -i -s /dev/ttyS0
DigiTemp v3.3.2 Copyright 1996-2004 by Brian C. Lane
GNU Public License v2.0 - http://www.brianlane.com
Turning off all DS2409 Couplers
..
Searching the 1-Wire LAN
28F05F490100004E : DS18B20 Temperature Sensor
28F37D490100006C : DS18B20 Temperature Sensor
ROM #0 : 28F05F490100004E
ROM #1 : 28F37D490100006C
Wrote .digitemprc
graffi@dreakmore:~$ digitemp_DS9097 -a
DigiTemp v3.3.2 Copyright 1996-2004 by Brian C. Lane
GNU Public License v2.0 - http://www.brianlane.com
Jan 17 01:08:01 Sensor 0 C: 3.25 F: 37.85
Jan 17 01:08:02 Sensor 1 C: 23.44 F: 74.19
graffi@dreakmore:~$

super świetnie :)
teraz odpowiedni skrypt odpala cron co 5 minut i odczyt wędruje do bazy danych :)
jak narazie (w sumie docelowo pewnie jak dla siebie "dopieszczę" to lepiej) ale póki co wiemy w pokoju (mówię o sobie i o moich współlokatorach w akademiku) jaka jest temperatura za oknem, ja sobie dla KDE napisałe applet który sobie siedzi i co 5 minut się odświerza a więc widzę co się dzieje, natomiast ostanich 15 odczytów można zobaczyć tutaj do tego wykres z ostanich 24 godzin dla termometru wiszącego za oknem prezentuje się narazie tak, wymaga on jeszcze pewnej ilości "dopieszczenia" aby się skalował odpowiednio do aktualnie rysowanego wykresu, ale to już mniej ważne na ten moment - można to za miesiąc spokojnie dorobić :P

i tak za niezałe 10 zeta mam super zabawkę i aktualnie pokazywaną temperturę w swoim kompie :)

jedynym narazie troche mankamentem jest to że termometr wisi na wysokości 3 piętra i chyba troche oszukuje co do temperatury :(
ale coż poradzić... i tak mam ok. 10 m kabla do niego podłączone...
może nie jest to najbardziej idealny odczyt ale jesti fajnie że daje jakieś odzwierciedlenie sytuacji panujacej za oknem :)

mam jeszcze 2 takie wyświelacze które to sobie planuje podłączyć do kompa i na tym pokazywać aktualną temperaturę :)
przylepię do monitora - to dopiero będzie full wypas takie coś :)
do tego jakaś "animacja" podczas zmiany wydruku na nim... - full wypas po prostu, jak to mój Kolega mawia "bajer na laski" :P

III

05

kadu i nowa wiadomość ;)
od dawna widziaem ze w konfiguracji Kadu mogę sobie wybrać "animowana koperta" le dopiero wczoraj zainteresowałem sie jak to działa, a działa dość prosto - to po prostu animowany gif :)
więc siadłemi narysowałem / zanimowałem :P swój :)
prezentuje sie tak:

II

16

mała rzecz a cieszy...
swego czasu (już będzie z półtora roku) kupiłem sobie klawiaturę i myszkę bezprzewodową - spoko :)
nadajnik obecnie mam przylepiony do stołu od spodu taką brązową taśmą do pakowania paczek :P a klawiatura i myszka na stole ;)
niby wszystko w porządku ale... ale LEDy od klawiszy caps.lock, num.lock, scroll.lock są tylko na nadajniku przymocowanym obecnie dla porządku pod stołem.... i czasami trochę sie gubiłem czy jakiś "lock" jest włączony czy nie... aż tutaj wczoraj tarfiłem na takie cudeńsko jak keybled normalnie rewelacja :)
właśnie taka mała rzecz a cieszy... :)