Non so quanti di voi conoscono il Conky. Ebbene, se non lo conoscete, chiudete subito questa pagina, altrimenti.... peggio per voi! :-D
Mi basti dire che è un programmino che consente di stampare a video ogni sorta di informazioni, rimanendo estremamente leggero sul sistema, sia in termini di ram, sia in termini di spazio su disco occupato.
In questa breve guida, impareremo a sfruttarlo nei nostri carissimi EeePc.
In questa breve guida, impareremo a sfruttarlo nei nostri carissimi EeePc.
Installazione
Per installarlo, non si deve fare altro che dare:
# aptitude install conky-allA questo punto, i passi successivi saranno
- crearsi un file .conkyrc nella propria home con la configurazione
- avviare il programma
#!/bin/sh # click per avviare, click per arrestare if pidof conky | grep [0-9] > /dev/null then exec killall conky else exec conky fi
Ottimizzazioni per i vari Desktop
A seconda del file manager che gestisce il desktop, il conky può necessitare di ulteriori adattamenti. Il mio consiglio è quello di creare vari cloni del .conkyrc, distinguendoli con nomi facilmente riconoscibili quali, ad esempio, .conkyrc-LXDE.
In questi casi, per avviare il .conkyrc che ci interessa, basterà creare un clone dello script di avvio sopra riprodotto, ma sostituendo la penultima riga, con, per rimanere in esempio, la seguente:
In questi casi, per avviare il .conkyrc che ci interessa, basterà creare un clone dello script di avvio sopra riprodotto, ma sostituendo la penultima riga, con, per rimanere in esempio, la seguente:
exec conky -c $HOME/.conkyrc-LXDEMostriamo ora le opzioni migliori per avviare il conky giusto a seconda del file manager.
Nautilus (Gnome)
Diciamo subito che la sezione essenziale è la seguente:
own_window yes own_window_transparent yes own_window_type override own_window_hints undecorated,below,sticky,skip_taskbar,skip_pagerEbbene queste sono probabilmente le opzioni migliori per Gnome/Nautilus.
KDE (Dolphin)
Nel caso di Kde, invece, come mi suggerisce Luca Corsato, sarà opportuno utilizzare queste:
own_window yes own_window_transparent yes own_window_type normal own_window_argb_visual yes own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
Lxde/OpenBox (PcManFm)
Con PcManFm, invece, non esistono opzioni del tutto ottimali, ma io uso (e consiglio) le seguenti:
own_window yes own_window_transparent yes own_window_type normal own_window_hints undecorated,below,sticky,skip_taskbar,skip_pagerSi noti che con normal, il conky scomparirà quando si sarà clickato sull'icona per ridurre tutto ad icona o si saranno premute le corrispondenti combinazioni di tasti. In alternativa, si potrebbe utilizzare anche l'opzione desktop, ma, in quest'ultimo caso, il conky sparirebbe qualora clickaste sul desktop... Scegliete voi l'opzione che preferite! ;)
PPA Conkyhardcore
Per chi fosse interessato, esiste un repository nato per Ubuntu, ma utilizzabile tranquillamente anche su Debian, che offre una serie di utilissimi plugins per Conky (per le previsioni meteo, per le mails, per pidgin etc. etc.). Questo è quanto dobbiamo aggiungere al nostro sources.list:
## PPA for ConkyHardcore deb http://ppa.launchpad.net/conkyhardcore/ppa/ubuntu lucid mainPer la chiave di sicurezza:
# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 66AE0775
Configurazione su EeePc
Non starò certo a spiegarvi come configurare il nostro .conkyrc, sia perché non voglio togliervi il piacere di studiare come matti, sia perché... se ne trovano a miliardi in rete. Qui mi limiterò a proporvi la mia sezione specifica per EeePc:
${font style:bold:size=8}${color yellow}HARDWARE MONITOR ${hr 2}${color}${font}
ACPI Temp: ${acpitemp} °C ${alignr}Fan Speed: ${exec cat /sys/class/hwmon/hwmon1/fan1_input} rpm
Prest.: ${color orange}${execi 10 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor} ${alignr}${execi 10 ~/.scripts/she.sh}${color}
Card: ${execi 10 ~/.scripts/card.sh} ${goto 65}Wifi: ${execi 10 ~/.scripts/wifi.sh} ${goto 120}Cam: ${execi 10 ~/.scripts/cam.sh} ${alignr}BT: ${execi 10 ~/.scripts/bt.sh}
${color blue}${if_match ${mixer Master} < 80}${color red}${if_match ${mixer Master} < 45}${color green}${endif}${endif}${mixerbar Master 12}${color}
${voffset -17}${alignc}VOLUME: ${mixer}
${color green}${if_match ${battery_percent BAT0} < 50}${color orange}${if_match ${battery_percent BAT0} < 20}${color red}${endif}${endif}${battery_bar 12 BAT0}${color}
${voffset -17}${alignc}${battery_time BAT0} (${battery_percent BAT0}%)
${color red}${voffset 5}${alignc}Uptime: ${color green}${uptime}${color}
Come potrete notare, c'è una riga che contiene tutta una serie di richiami ad alcuni script inseriti nella cartella ~/.scripts: con essi, potremo conoscere dal vivo lo stato dello SHE, del Card Reader, del Wifi, del Bluetooth e della WebCam. Nel seguito, posto i corrispondenti script.Bluetooth (bt.sh)
#!/bin/bash
# by Doc
# Find bt and wlan rfkill then check states
for i in /sys/class/rfkill/*; do
if [ -f "$i/name" ] && [ "$(cat "$i/name")" = "eeepc-bluetooth" ]; then
BT_ST=`cat "$i/state"`
fi
done
# Change output to human readable
case "${BT_ST}" in
0)
echo Off
;;
1)
echo On
;;
*)
echo N/A
;;
esac
WebCam (cam.sh)
#!/bin/bash
# by Doc
var=$(cat /sys/devices/platform/eeepc/camera)
var1=1
var2=0
if [ "$var" == "1" ]; then
echo 'on'
fi
if [ "$var" == "0" ]; then
echo 'off'
fi
Card Reader (card.sh)
#!/bin/bash
# by Doc
var=$(cat /sys/devices/platform/eeepc/cardr)
var1=1
var2=0
if [ "$var" == "1" ]; then
echo 'on'
fi
if [ "$var" == "0" ]; then
echo 'off'
fi
SHE (she.sh)
#!/bin/bash
# by Doc
var=$(cat /sys/devices/platform/eeepc/cpufv)
var1=0x302
var2=0x301
var3=0x300
state=$(cat /var/lib/eeepc-acpi-scripts/cpufv)
state1=manual
state2=auto
if [ "$var" = "$var1" ] && [ "$state" = "$state1" ]; then
echo 'Powersave'
elif [ "$var" = "$var2" ] && [ "$state" = "$state1" ]; then
echo 'Normal'
elif [ "$var" = "$var3" ] && [ "$state" = "$state1" ]; then
echo 'Performance'
elif [ "$var" = "$var1" ] && [ "$state" = "$state2" ]; then
echo 'Auto (Powersave)'
elif [ "$var" = "$var2" ] && [ "$state" = "$state2" ]; then
echo 'Auto (Normal)'
elif [ "$var" = "$var3" ] && [ "$state" = "$state2" ]; then
echo 'Auto (Performance)'
fi
Wifi (wifi.sh)
#!/bin/bash
# by Doc
# Find bt and wlan rfkill then check states
for i in /sys/class/rfkill/*; do
if [ -f "$i/name" ] && [ "$(cat "$i/name")" = "eeepc-wlan" ]; then
WIFI_ST=`cat "$i/state"`
fi
done
# Change output to human readable
case "${WIFI_ST}" in
0)
echo Off
;;
1)
echo On
;;
*)
echo N/A
;;
esac
Buon Divertimento!!!
---------------------------------
by Doc, last modified 4 October 2010
Nessun commento:
Posta un commento