četrtek, 04. oktober 2012

Dvojni Conky (sistemske informacije + google koledar)

Sodelavec Žiga mi je pred kratkim pokazal svoj Arch Linux ... z OpenBox namizjem. Izgledal je tako dobro (in odzivno), da sem še isti dan sam poskusil namestiti Arch na svoj eeePC (!). No, po nekaj urah/dnevih sem le uspel naložiti jedro in celo zagnati X grafično okolje z namizjem OpenBox, vendar ko sem prebiral nadaljna navodila za "tweak-anje" in vse bolj divergentne napotke ter linke, sem se odločil da kar ostanem pri svojem #! (torej: CrunchBang-u). 

Zakaj? Ker imam v 1 uri nameščen odličen linux sistem, ki se ga da maksimalno konfigurirati in je precej enostavnejši za povprečnega uporabnika. 

Že dolgo sem si želel imeti na namizju Conky aplikacijo, ki bi mi prikazovala poleg sistemskih informacij še Google koledar. In to mi je tudi uspelo:


V naslednjih točkah bom opisal postopek namestitve.

Namestitev Gcalcli

Gcalcli je Phyton aplikacija s katero dostopamo in urejamo Google koledar preko terminalskega okna. Nekaj funkcij: prikaz dnevnika, dogodkov, dodajanje le-teh in opomnik ter izpis koledarja. 

Namestimo ga z ukazom:

sudo apt-get install gcalci

Konfiguracija 

Zaženemo beležnico in vanjo vpišemo:

[gcalcli]
user: tvoje.uporabnisko.ime 
pw: tvojegeslo

Datoteko shranimo z imenom .gcalclirc (je skrita, ker ima . pred imenom datoteke!)

Glede same uporabe aplikacije gcalcli si lahko več preberete tukaj.

Načrtovanje prikazov 

Preden ustvarimo konfiguracijske datoteke za Conky (če ga še nimamo, ga naložimo z sudo apt-get install conky), moramo ločiti posamezne prikazovalnike/widgets

Naredil bom dva gradnika:

  • Za sistemske infomracije in 
  • za prikaz Goolge koledarja.
V svoji domači mapi ustvarim mapo .conky

mkdir .conky

in v njej ustvarim dve configuracijski datoteki za gradnika

cd .conky (premaknemo se v imenik)

touch conkyrc_sys
touch conkyrc_cal

V conkyrc_sys vpišemo poljubno kodo za prikaz želenih podatkov oz. jo lahko kar kopiramo iz osnovne kode, ki se nahaja v domači mapi v datoteki .conkyrc.

V conkyrc_cal pa prilepimo naslednje vrstice:

alignment bottom_right
background no
border_width 0
cpu_avg_samples 2
default_color cccccc
default_outline_color FFFFFF
default_shade_color 000000
draw_borders no
draw_graph_borders no
draw_outline no
draw_shades no
use_xft yes
xftfont DejaVu Sans Mono:size=6
gap_x 5
gap_y 45
minimum_size 5 5
net_avg_samples 2
double_buffer yes
out_to_console no
out_to_stderr no
extra_newline no
own_window yes
own_window_class Conky
own_window_type desktop
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
stippled_borders 0
update_interval 5.0
uppercase no
use_spacer none
show_graph_scale no
show_graph_range no
text_buffer_size 8096
TEXT
${execi 300 gcalcli --nc --cals=owner calw 2}

Zagonska datoteka pri prijavi

Narediti moramo zagonsko skripto, ki jo bomo kasneje shranili v #PATH (običajno v /usr/sbin in /usr/local/sbin - kopiramo s skrbniškimi pravicami).

Zapis skripe: 

gedit conky_start

in v datoteko vpišemo:
#!/bin/bash  
conky -c ~/.conky/.conkyrc_sys & 
conky -c ~/.conky/.conkyrc_cal

Shranimo in datoteko spremenimo v izvedljivo/executabe

chmod +x conky_start

Ne pozabimo kopirati datoteke v #PATH (da je torej izvedljiva v terminalu)!

Konfiguracija autostart.sh (OpenBox)

Sedaj moramo sistemu še naročiti, naj ob prijavi uporabnika samodejno zažene skripto conky_start. 

Odpremo (gedit) ~/.config/openbox/autostart.sh in vpišemo (oziroma popravimo, če je CrunchBang imel Conky že nameščen):

## Start Conky after a slight delay
(sleep 15s && conky_start -q) &

Morda se zdi 15 sekundna zakasnitev velika, vendar mora biti vsaj tolikšna, da se računalnik že priklopi na omrežje in (gcalcli) vzpostavi povezavo do Google računa.

Sedaj se lahko odjavimo in nazaj prijavimo. Takoj lahko spremenimo pozicije naših dveh gradnikov (conkyrc_cal in conkyrc_sys) in sam videz. 

maximum_width 130 
gap_x 10 
gap_y 30
Spreminjamo vrednosti in ko shranimo datoteki se Conky osveži. Priporočam tudi branje priročnika glede samih nastavitev parametrov datoteke conkyrc.

1 komentar: