Superkaramba

Versione del 6 apr 2011 alle 15:10 di Skizzhg (discussione | contributi) (prove di formattazione)

Template:Sommario

Superkaramba

Introduzione

Come precedentemente indicato:

[Articolo e-zine]

[Superkaramba] è, in termini semplici, uno strumento che ti permette di creare facilmente eye-candy interattivi sul tuo desktop KDE. Attualmente, solo su linux è ufficialmente supportato.

SuperKaramba è uno strumento basato su karamba che permette a chiunque di creare e gestire facilmente piccoli widget interattivi su un desktop KDE. I widget sono definiti in un semplice file di testo che può essere aumentato con codice Python per renderli interattivi. Qui sono solo alcuni esempi di ciò che si può fare:

   * mostra le informazioni di sistema come CPU, la riproduzione di MP3, ecc;
   * crea barre degli strumenti personalizzate che lavorano in ogni modo immaginabile;
   * creazione di piccoli giochi virtuali o animali che vivono sul tuo desktop;
   * mostra le informazioni da Internet, come il meteo e headlines;

Questo pacchetto è parte di KDE, come una componente del modulo KDE utilità.

Come consigliato nel sito ufficiale, per poter scaricare nuovi temi dovete andare a cercarli su kde-look.org, qui potrete trovare di tutto, dalle GUI per visualizzare le risorse alle dock-bar.

Installare Superkaramba

KDE3

# apt-get install superkaramba

KDE4

# apt-get install plasma-scriptengine-superkaramba

Utilizzo

Eseguire il comando

$ superkaramba

La finestra che si aprirà vi mostrerà diverse opzioni, tra queste vi è la possibilità di scaricare diversi oggetti da Kde.look, oppure aprire un tema scaricato o avviare un tema già caricato in superkaramaba ma non attivo.

Consiglio di disabilitare la tray icon di superkaramba che reputo inutile.

Con un click del pulsante destro all'interno di un plasmoide di superkaramba si aprirà il menu delle opzioni

da qui sarà possibile accedere al menù di superkaramba.

Modifiche al tema

Con molta probabiltà alcune cose non funzioneranno a dovere al primo avvio di un tema.

Il fatto è dovuto alla non corretta configurazione dei parametri, infatti questi non vengono riconosciuti in automatico e sono legati a quanto scritto e testato dell'editore del tema.

I problemi più comuni sono legati alla scheda di rete (eth0 al posto di eth1 o altro), oppure al riconoscimento degli HD e delle partizioni montate che non hanno la stessa ubicazione e/o nome diverso(hda,sda,....), in questo caso occorre editare il file .theme.

Usate l'editor di testo che preferite e applicate le modifiche dovute, al salvataggio del file il tema si aggiornerà automaticamente.

Dipendenze importanti

Per poter visualizzare correttamente gli output karamba necessita di alcuni software a cui si appoggia.

Ecco un breve elenco degli indispensabili:

  • hddtemp
  • smartmoontol
  • sensors

Per le temperature delle GPU pare che solo i driver propietari di ATI e NVidia diano risultati.

Documentazione

Karamba Docs

Superkaramba Docs

karamba

Questo definisce la finestra di Karamba; una finestra di grandi dimensioni richiede più tempo per essere disegnata, quindi cercate di non crearla più grande di quanto gli elementi grafici al suo interno necessitino, ovvero evitate una grossa finestra se avete solo del testo in un angolo.

x - posizione orizzontale della finestra di Karamba / default: x=0

y - posizione verticale della finestra di Karamba / default: y=0

w - larghezza della finestra di Karamba / default: w=300

h - altezza della finestra di Karamba / default: h=300

right - se right è impostato a true, la finestra verrà posizionata sul lato destro dello schermo e il parametro x verrà ignorato / default: right=false

bottom - se bottom è impostato a true, la finestra verrà posizionata nella parte bassa dello schermo e il parametro y verrà ignorato / default: bottom=false

ontop - se ontop è impostato a true, la finestra resterà in primo piano rispetto alle altre / default: ontop=false

topbar - se topbar è impostato a true, la finestra verrà posizionata nella parte alta dello schermo e le applicazioni massimizzate non la copriranno (come avviene per kicker, il pannello di kde). In questo caso la finestra non può essere spostata / default: topbar=false

bottombar - se bottombar è impostato a true, la finestra verrà posizionata nella parte bassa dello schermo e le applicazioni massimizzate non la copriranno (come avviene per kicker, il pannello di kde). In questo caso la finestra non può essere spostata / default: bottombar=false

interval - la frequenza di aggiornamento dei misuratori in millisecondi / default: interval=5000

locked - se locked è impostato a true, la finestra non può essere spostata con il trascinamento del mouse; questa opzione può essere modificata con il click destro sulla stessa / default: locked=false

Misuratori

bar

Visualizza una barra, come una barra di avanzamento, nella posizione desiderata; è disegnata usando l'immagine fornita dall'opzione «path» e possono essere utilizzare immagini trasparenti. Se le opzioni «w» e «h» non sono specificate, la dimensione della barra è uguale a quella dell'immagine. Il default è di avere un avanzamento da sinistra verso destra ma è possibile ottenrne una verticale (dal basso verso l'alto) con l'opzione «vertical».

x - posizione orizzontale dell'angolo alto sinistro.

y - posizione verticale dell'angolo alto sinistro.

w - la larghezza della barra [opzionale].

h - l'altezza della barra [opzionale].

path - il percorso dell'immagine per la barra (relativo al file di configurazione, posizione assoluta nel filesystem o un indirizzo http)

vertical - se impostato a true, la barra è verticale: dal basso verso l'alto / default: vertical=false

value - il valore della barra / default: value=0

min - il valore minimo; può essere sovrascritto da un sensore / default: min=0

max - il valore massimo; può essere sovrascritto da un sensore / default: max=100

Esempi:

bar x=0 y=0 w=10 h=200 vertical=true path="img.png" sensor=cpu
bar x=0 y=0 path="img.png" min=30 max=60 sensor=cpu

graph

Visualizza un grafico the scorre verso sinistra

x - posizione orizzontale dell'angolo alto sinistro

y - posizione verticale dell'angolo alto sinistro

w - la larghezza del grafico [opzionale]

h - l'altezza del grafico [opzionale]

points - il numero dei punti nel grafico

min - il valore minimo; può essere sovrascritto da un sensore / default: min=0

max - il valore massimo; può essere sovrascritto da un sensore / default: max=100

color - il colore del grafico; occorrono tre numeri interi tra 0 e 255 separati da una virgola (rosso, verde, blu) / default: color=0,0,0 esempio: color=100,200,180.

Esempi:

graph x=0 y=0 w=200 h=60 points=100 sensor=cpu

image

Visualizza un'immagine nella posizione desiderata, questa può essere collegata a un sensore: il valore del sensore viene interpretato come un percorso dell'immagine. Le immagini, anche trasparenti, possono essere prese direttamente dal web.

x - posizione orizzontale dell'angolo alto sinistro dell'immagine

y - posizione verticale dell'angolo alto sinistro dell'immagine

path - il percorso dell'immagine (relativo al file di configurazione, posizione assoluta nel filesystem o un indirizzo http)

Esempi:

image x=10 y=10 path="/tmp/immagine.png"
image x=10 y=10 path="immagine.jpg"
image x=10 y=10 sensor=program program="pictures.pl"

text

Visualizza un'etichetta di testo nella posizione desiderata. È possibile utilizzare le opzioni «w» e «h» per definire un'area di ritaglio: nessun testo verrà visualizzato al di fuori di quest'area. Tutti i sensori possono essere connessi a un misuratore testuale.

x - posizione orizzontale dell'angolo alto sinistro

t - posizione verticale dell'angolo alto sinistro

w - la larghezza dell'etichetta [opzionale]

h - l'altezza dell'etichetta [opzionale]

value - il testo dell'etichetta

align - imposta l'allineamento del testo: left, center o right / default: align=left

font - il carattere da utilizzare

fontsize - la dimensione del carattere

color - il colore del testo; occorrono tre numeri interi tra 0 e 255 separati da una virgola (rosso, verde, blu) / default: color=0,0,0 esempio: color=100,200,180.

bgcolor - il colore dell'ombra / default: bgcolor=0,0,0

shadow - applica un'ombra di «n» pixel dal testo, il valore può essere negativo / default: shadow=0 esempio: shadow=2

fixedpitch - impostare a «true» per ottenere i caratteri equidistanti / default: fixedpitch=false

Esempi: text x=0 y=0 value="stringa di testo" text x=0 y=0 sensor=cpu color=255,0,0 font="arial" sensor=cpu

Sensori

cpu

Misura l'attuale carico della CPU, sono gestibili più processori.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori CPU, sebbene ognuna possa avere un proprio intervallo / default: interval=1000

cpu - l'indice della CPU, utile solo se si ha più di un processore

cpu=0 - la prima CPU

cpu=1 - la seconda CPU

...

cpu=all - il carico di tutti i processori

default: cpu=all

format - le caratteristiche del testo visualizzato; i valori possibili sono:

%v - il carico della CPU,
%load - come %v,
%user - il carico dell'utente,
%system - il carico di sistema,
%nice - il carico secondo il parametro nice,
%idle - il carico secondo il parametro idle.

default: format="%v"

esempio: cpu=0 format="%user%"

disk

Fornisce informazioni sui dischi montati, sono gestibili filesystem di rete.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori di disco, sebbene ognuno possa avere un proprio intervallo / default: interval=5000

format - le caratteristiche del testo visualizzato; i valori possibili sono:

%f - spazio libero su disco in megabyte,
%fp - la percentuale dello spazio libero,
%u - spazio usato su disco in megabyte,
%up - la percentuale dello spazio usato,
%t - spazio complessivo su disco in megabyte.

default: format="%u"

esempio: format="Spazio libero: %f MB"

esempio: format="Spazio usato: %up %"

mountpoint - la directory montata da monitorare / default: mountpoint="/"

esempio: mountpoint="/mnt/cdrom"

memory

Misura i valori di memoria e swap.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori di memoria, sebbene ognuno possa avere un proprio intervallo / default: interval=3000

format - le caratteristiche del testo visualizzato; i valori possibili sono:

%fm - memoria libera in megabyte,
%fmb - memoria libera in megabyte (esclusi cache e buffer),
%um - memoria usata in megabyte,
%umb - memoria usata in megabyte (esclusi cache e buffer),
%tm - memoria totale in megabyte,
%fs - swap libera in megabyte,
%us - swap usata in megabyte,
%ts - swap complessiva in megabyte.

default: format="%um"

esempio: format="Memoria libera: %fm MB"

network

Fornisce informazioni sul traffico di rete di una periferica.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori di rete, sebbene ognuno possa avere un proprio intervallo / default: interval=2500

device - la periferica di rete da utilizzare / default: device="eth0"

esempio: device="ppp0"

format - le caratteristiche del testo visualizzato; i valori possibili sono:

%in - traffico in entrata in kilobytes per secondo,
%out - traffico in uscita in kilobytes per secondo.

default: format="%in"

esempio: format="Traffico in entrata: %in kB/s"

decimals - il numero di decimali da utilizzare quando si misura il traffico di rete / default: decimals=0

noatun

Ottiene informazioni da un possibile processo Noatun in esecuzione.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori noatun, sebbene ognuno possa avere un proprio intervallo / default: interval=1000

format - le caratteristiche del testo visualizzato; i valori possibili sono:

%id - il nome dcop di noatun, può essere utile connettendosi a una clickarea (WTF?)
(per utilizzarlo fare riferimento al primo esempio),
%title - titolo del brano in corso,
%time - tempo del brano in corso,
%remain - tempo rimanente del brano in corso,
%length - lunghezza del brano in corso,
%full - se Noatun è avviato il sensore restituisce «MAX», altrimenti «0»; utile connettendo il sensore ad una barra, 
l'immagine verrà mostrata solo se Noatun è in esecuzione / default: format="%title %time / %total"

esempio: onclick="dcop %v Noatun play" sensor=noatun format="%id"

program

Utilizzato per eseguire un programma e collegarne l'output a un misuratore.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori program, sebbene ognuno possa avere un proprio intervallo / default: interval=1000

default: interval=3600000

program - il programma che si vuole eseguire

esempio: program="ftpwho -v"

encoding - questo parametro mostrerà il testo con, per esempio, caratteri russi; il valore è il nome della codifica, qui si può trovare un elenco delle codifiche encodings. Il primo parametro specificato verrà utilizzato per ulteriori sensori program con un parametro program identico (parametri compresi), sebbene ognuno possa avere un proprio intervallo / default: encoding="" - viene usata la propria localizzazione

esempio: encoding="KOI8-R"

esempio: encoding="ISO8859-6"

line - utilizzare solo se si vuole una singola riga del file

line=1 - la prima riga del file

line=2 - la seconda riga del file

...

line=-1 - l'ultima riga del file

line=-2 - la penultima riga del file

sensor

Il sensore sensor utilizza il programma "sensors" per misurare temperatura della CPU, velocità delle ventole, voltaggi e molto altro. Per funzionare è richiesto il programma "sensors".

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori sensor, sebbene ognuno possa avere un proprio intervallo / default: interval=30000

format - le caratteristiche del testo visualizzato; i valori possibili sono:

%v - il valore del sensore / default: format="%v"

esempio: format="Velocità ventola: %v"

type - quale misuratore monitorare nel programma "sensors"; eseguire "sensors" per ottenere un elenco di quelli disponibili / default: type="temp2"

esempio: type="fan1"

textfile

Legge ripetutamente un file di testo.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori textfile con un percorso identico, sebbene ognuno possa avere un proprio intervallo / default: interval=60000

path - il percorso del file di testo

esempio: path="/home/utente/file.txt"

encoding - questo parametro mostrerà il testo con, per esempio, caratteri russi; il valore è il nome della codifica, qui si può trovare un elenco delle codifiche. Il primo parametro specificato verrà utilizzato per ulteriori sensori textfile con un percorso identico, sebbene ognuno possa avere un proprio intervallo / default: encoding="" - viene usata la propria localizzazione

esempio: encoding="KOI8-R"

esempio: encoding="ISO8859-6"

line - utilizzare solo se si vuole una singola riga del file

line=1 - la prima riga del file

line=2 - la seconda riga del file

...

line=-1 - l'ultima riga del file

line=-2 - la penultima riga del file

...

rdf - impostare a «true» se texfile è un file RDF/RSS / default: rdf=false

time

Restituisce ora o data attuale.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori time, sebbene ognuno possa avere un proprio intervallo / default: interval=60000

format - le caratteristiche del testo visualizzato; i valori possibili sono:

d - il numero del giorno senza lo zero iniziale (1-31)
dd - il numero del giorno con lo zero iniziale (01-31)
ddd - il nome abbreviato del giorno ('Lun'..'Dom')
dddd - il nome esteso del giorno('Lunedì'..'Domenica')
M - il numero del mese senza lo zero iniziale (1-12)
MM - il numero del mese con lo zero iniziale (01-12)
MMM - il nome abbreviato del mese ('Gen'..'Dic')
MMMM - il nome esteso del mese ('Gennaio'..'Dicembre')
yy - l'anno espresso con due cifre (00-99)
yyyy - l'anno espresso con quattro cifre (1752-8000)
h - l'ora senza lo zero iniziale (0..23 o 1..12 con la visualizzazione AM/PM)
hh - l'ora con lo zero iniziale (00..23 o 01..12 con la visualizzazione AM/PM)
m - i minuti senza lo zero iniziale (0..59)
mm - i minuti con lo zero iniziale (00..59)
s - i secondi senza lo zero iniziale (0..59)
ss - i secondi con lo zero iniziale (00..59)
z - i millisecondi senza gli zeri iniziali (0..999)
zzz - i millisecondi con gli zeri iniziali (000..999)
AP - visualizzazione AM/PM; AP verrà sostituito da "AM" o "PM"
ap - visualizzazione am/pm; ap verrà sostituito da "am" o "pm"

Stringhe di esempio (supponendo che QDateTime is 21 May 2001 14:13:09):

format="dd.MM.yyyy" -> 21.05.2001
format="ddd MMMM d yy" -> Tue May 21 01
format="hh:mm:ss.zzz" -> 14:13:09.042
format="h:m:s ap" -> 2:13:9 pm

uptime

Restituisce ora o data attuale.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori time, sebbene ognuno possa avere un proprio intervallo / default: interval=60000

format - le caratteristiche del testo visualizzato; i valori possibili sono:

%d - giorni %h - ore %m - minuti %s - secondi %H - ore con zero iniziale %M - minuti con zero iniziale %S - secondi con zero iniziale

default: format="%dd %h:%M"

xmms

Ottiene informazioni da un possibile processo XMMS in esecuzione.

interval - l'intervallo di aggiornamento in millisecondi. Il primo parametro specificato verrà utilizzato per ulteriori sensori xmms, sebbene ognuno possa avere un proprio intervallo / default: interval=1000


Suggerimenti

  ATTENZIONE

La funzione interval ha valori predefiniti molto brevi riguardo la sincronizzazione dei dati.

Su alcuni dati di scarsa utilità usare dei tempi lunghi, sempre espressi in millisecondi, in modo da risparmiare risorse.



Il consumo della CPU nell'esecuzione di superkaramba dipende molto da questi tempi, si consiglia perciò di dilatare i tempi di esecuzione di ciò che si ritiene poco utile, come ad esempio il priprio IP locale che difficilmente cambierà, ha un tempo di default di 2500.

Per il resto seguite le vostre esigenze, sapendo ora che più breve sarà il tempo di aggiornamento del sensore, maggiore sarà il consumo di CPU.

Miscellanea

clickarea

Definisce un'area cliccabile. Cliccando in una zona verrà eseguito il programma specificato, se la finestra non è bloccata è necessario un doppio click. clickarea viene utilizzato come misuratore, possono essere collegati dei sensori.

  • x - posizione orizzontale dell'angolo alto sinistro dell'area
  • y - posizione verticale dell'angolo alto sinistro dell'area
  • w - la larghezza dell'area cliccabile
  • h - l'altezza dell'area cliccabile
  • preview - se impostato a «true» verrà mostrato un rettangolo intorno all'area
  • onclick - il programma da eseguire con il click
  • %v sarà sostituito con l'eventuale valore di un sensore

Esempio:

clickarea x=0 y=0 w=100 h=10 onclick="kdialog --msgbox 'CPU load: %v'" sensor=cpu

defaultfont

Lo scopo di defaultfont è di ridurre la quantità di parametri quando si utilizzail tag text. Le etichette di testo dopo un tag defaultfont nel file del tema useranno i parametri predefiniti se l'etichetta non ha parametri specificati.

Se l'etichetta di testo ha i propri valori, quello predefinito viene ignorato; non è necessario specificare tutti i parametri del carattere. Sono possibili tag defaultfont multipli. Qualsiasi valore predefinito verrà cancellato.

Esempio:

defaultfont shadow=2 color=255,0,0
text x=0 y=0 value="test"
defaultfont font="times" fontsize=10 color=255,0,0
text x=0 y=40 value="test" font="arial"
text x=0 y=80 value="test" color=0,0,0

<group>, </group>

Gli elementi possono essere raggruppati con il tag group; ciò semplifica muovere molti elementi e allo stesso tempo mantenere le distanze dagli altri. È possibile avere gruppi nidificati.

  • x - posizione orizzontale dell'angolo alto sinistro del gruppo
  • y - posizione verticale dell'angolo alto sinistro del gruppo

Esempio:

<group> x=20 y=20
text x=0 y=0 value="test1"
text x=10 y=10 value="test2"
</group> x=20 y=20

theme

I temi possono essere caricati all'interno di un tema utilizzando il tag theme. È possibile creare un tema che semplicemente carichi altri temi.

path - il percorso del file del tema desiderato

esempio: theme path=noatun.theme

--Mm-barabba 16:22, 16 gen 2011 (CET)

Traduzione documentazione: skizzhg