febbraio 2008

29 02.2008

The constant - Lost 4×05

[youtube ERj_41GAkW0]

Bene..credo che con questa puntata si possa mettere la parola fine al mistero che avvolge l'isola e a buona parte degli interrogativi che ci hanno accompagnato per 77 puntate.
Il tempo, sull'isola, rallenta a tal punto che inghiottisce persino la "temporalita'" delle persone che vi transitano, lasciando cosi' un "doppione" di se' stessi che continua ad esistere nella vita reale.

l'anello mancante a questa teoria (che ora trova finalmente certezza) e' Desmond che tiene scena da solo per meta' della puntata.
Faccio davvero fatica a riassumere perche' si tratta di una puntata molto "tecnica" dal punto di vista delle teorie quantistico-temporali (vedi 3x08). Quello che per ora ho raccolto sono queste considerazioni (le mie):

  • Il tempo sull'isola scorre diversamente
  • Dan e' lo scienziato che ha capito come fosse possibile "catapultare qualcuno nel futuro" senza necessariamente smaterializzare il corpo, bensi' facendo viaggiare solo la proiezione di se' stessi.
    Lo stesso afferma che per ritrovare l'equilibrio tra le due vite parallele (l'isola e quella reale) per evitare che si ricongiungano come in uno scontro "frontale" e' necessario trovare in entrambe una "costante" comune, che nel caso di Desmond e' Penny.
  • Ben probabilmente, a conoscenza anche lui di questo, cerca di fermare quelli che vogliono approfittare di questi "buchi temporali"
  • Desmond e' stato obbligato ad avere come "costante" qualcosa che lo tenesse lontano da Penny, ovvero inserire ogni 108 minuti i numeri nel terminale.
    Rotto questo equilibrio .. iniziato il conto alla rovescia con la morte.
  • Quando e' scoppiata la famosa botola, Desmond deve avere rotto, appunto, l'equilibrio viaggiando nel tempo .. cadendo dalla scala..ricordate?
  • A quanto dice Ben pero', sulla nave ha una talpa. Cosa succedera'? nome legge sull'agenda che in caso di incidenti, la sua costante sara' Desmond. E' questo il meccanismo che inneschera' la fine del mondo?
  • Quasi certamente questa cosa accade per tutti gli "abitanti dell'isola".
  • Il mistero della rotta: Dan dice al pilota dell'elicottero di seguire una rotta ben precisa per ritornare alla nave .. causa "effetti collaterali" (che Said non presenta). Anche Michael ha abbandonato l'isola su una barca seguendo una rotta (360).
  • Sono curioso di leggere conferme o smentite, ma credo che ormai questo si sia ben capito..
    Puntata memorabile comunque..
    ;)

  • Torrent
  • Image Hosted by ImageShack.us

    29 02.2008

    Quel treno che portava al sole…

    Uovodicolomboprogrammadivertente

    [youtube YjWlMtNVxJ8]

    Quante volte ci sara' capitato, dopo un blackout del cervello per le centinaia di ore passate davanti al computer, di lanciare il comando per listare le directory:

    Image Hosted by ImageShack.us

    ..e di sbagliarlo, magari scrivendo:

    Image Hosted by ImageShack.us

    Signori .. SL e' un programma, sviluppato da un mattacchione (credo) Giapponese, che avvia un animazione Ascii (sh..come quello che hanno fumato) di una locomotiva .. per indicare l'errore accidentale nel battere "sl" al posto di "ls":

    sudo apt-get install sl

    Un occhiata al manuale per ottenere una panoramica sulle opzioni da passare ad "sl":

    Opzioni Funzione
    -a E' accaduto un incidente. Proverai pieta' per le persone che piangeranno aiuto
    -l Mostra un "trenino".
    -F Fai volare il treno!
    -e Ferma il treno con ctrl+c

    Freddura finale

    Know BUGS

  • It rarely shows contents of current directory.
  • :)

    28 02.2008

    LessWatts project - wifi powersave

    Image Hosted by ImageShack.us

    LessWatts e' un sito web ideato dalla comunita' opensources che ruota attorno ai prodotti Intel, e che si occupa di fornire guide, tips ed informazioni sull'ottimizzazione del Power Management sui sistemi GNU/Linux con hardware Intel.

    Alcuni argomenti sono stati trattati piu' volte su questo blog; Mi riferisco agli howto sul frequency scaling, sul risparmio energetico dei dischi e delle schede video.
    Oggi vorrei focalizzare l'attenzione sul power management dei i dispositivi wireless, che consente non solo di diminuire i consumi della batteria ma anche di ottimizzare la qualita' del segnale.

    - WiFi power saving mode (Power Save Poll, PS-Poll) -

    Questo protocollo e' stato sviluppato per diminuire il tempo totale di consumo energetico da parte dei dispositivi radio.
    PS-Poll consente agli adattatori WiFi di notificare all' access point quando il dispositivo verra' spento. Mentre il segnale radio e' spento, l'access point manterra' in cache tutti i pacchetti a lui destinati. Naturalmente, piu' a lungo rimane spento il wifi e piu' energia risparmieremo. I drivers, in questo caso, possono controllare quanto tempo intercorre prima che venga di nuovo ripristinato il segnale radio, per recuperare i pacchetti mantenuto dall'AP.

    Il lato negativo di questa tecnica di Power Management

  • Il comportamento appena descritto aumenta la latenza della connessione. Questo non ha effetti "reali" nella normale navigazione web, bensi' in alcune circostanze particolari dove e' importante ridurre tale latenza (per esempio nei giochi online, nello streaming etc..). In questi casi l'abilitazione di PS-Poll non e' raccomandato.
  • Il secondo problema e' che non tutti gli AP supportano questa tecnologia. ed e' molto facile che la connessione venga interrotta. Se, dopo aver abilitato PS-Poll, notiamo una perdita sostanziale di pacchetti che porta alla disconnessione dal network, controlliamo che il nostro AP (il router ad esempio) disponga di un firmware piu' recente.
  • Il meccanismo utilizzato per abilitare/disabilitare il protocollo PS-Poll varia a seconda della scheda in dotazione al nostro laptop. Facciamo un esempio con una Intel che utilizza i driver ipw2200:

    sudo iwpriv eth1 set_power 5

    Eth1 sara' la nostra interfaccia mentre la spiegazione del valore impostato e' la seguente:

    1: Minore risparmio energetico in favore delle prestazioni (ed e' anche quello che aumenta la latenza)
    5: E' invece il valore meno aggressivo (piu' risparmio energetico)
    6: Disabilita completamente il risparmio energetico.

    Power save level: 5 (Timeout 25ms, Period 1000ms)
    Power save level: 1 (Timeout 350ms, Period 400ms)

    Nei recenti dispositivi, quali gli iwl4965 e iwl3945, e' possibile configurare manualmente PS-Polls tramite lo pseudo-filesystem sysfs sull'attributo power_level:

    sudo echo 5 > /sys/bus/pci/drivers/iwl4965/*/power_level

    Sostituiamo iwl4965 con la nostra scheda (nel mio caso iwl3945). Questi due modelli non supportano i comandi di power management "iwconfig":

    dyve@n200:~$ sudo iwconfig wlan0 power on
    Error for wireless request "Set Power Management" (8B2D) :
    GET failed on device wlan0 ; Operation not supported.
    dyve@n200:~$

    - Auto association -

    La maggior parte dei network drivers sviluppati prima del subsystem mac8011 (riporto ancora come esempio i driver ipw3945 da me utilizzati), sono stati riunificati a partire dal kernel 2.6.23.
    Questa volta il problema e' il seguente: Quando il dispositivo non e' associato ad alcun Access Point:


    wlan0 IEEE 802.11g ESSID:""
    Mode:Managed Frequency:2.412 GHz Access Point: Not-Associated
    Tx-Power=27 dBm
    Retry min limit:7 RTS thr:off Fragment thr=2346 B
    Encryption key:off
    Link Quality:0 Signal level:0 Noise level:0
    Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
    Tx excessive retries:0 Invalid misc:0 Missed beacon:0

    ..entra in modalita' di scansione "aggressiva" persino se l'interfaccia e' down.
    Tale comportamento permette ad alcuni vecchi programmi in userspace di funzionare, perche' considerano l'adattatore come se fosse "in cerca" di una rete.

    Questo sistema consuma molta piu' energia di quando, nella situazione opposta, siamo invece regolarmente connessi. Esempio: connessione via cavo o access-point irraggiungibile.
    Nelle moderne distribuzioni Linux, nonostante questo comportamento sia stato in qualche modo ridimensionato, possiamo disabilitarlo del tutto in favore di un maggior risparmio energetico. Per fare questo dobbiamo passare il parametro associate=0 al modulo del kernel in questione:

    sudo rmmod ipw2200
    sudo modprobe ipw2200 associate=0

    Rendiamo permanente questo "escamotage" aggiungendo la seguente riga al file /etc/modprobe.conf :

    options ipw2200 associate=0

    NB: I driver che si appoggiano al subsystem mac8011 non hanno questa feature (iwl*)

    - RFKill -

    img

    RFkill, come da screen, e' un modulo che consente ai laptop non equipaggiati con switch hardware o combinazione di tasti FN+, di spegnere completamente i dispositivi radio come, appunto, il wifi e il bluetooth .. in un colpo solo.
    Se rientriamo in questa categoria di utenti un po' "sfortunati" potrebbero tornarci utili questi due comandi:

    Radio-off

    for i in `find /sys -name "rf_kill" ; do echo 1 > $i ; done

    Radio-on

    for i in `find /sys -name "rf_kill" ; do echo 0 > $i ; done

    - Intervallo Beacon -

    Gli AP annunciano la loro presenza ad intervalli regolari (possiamo monitorare il traffico con wireshark) inviando un pacchetto chiamato "beacon packet". Con la maggior parte degli access points, il valore di default e' impostato a 100 millisecondi. L'impatto dell'intervallo di beacon si fa piu' marcato quando l'AP tenta di scovare un network ad esso associato. Questo processo associativo richiede un "tuning" su ogni canale fino a quando non viene trovato quello in ascolto per trasmettere il pacchetto beacon. Piu' e' lungo questo intervallo e piu' a lungo l'onda radio si dovra' soffermare su ogni canale, rischiando addiritturala perdita del pacchetto.

    Gestire un largo numero di beacon packets, oltre a problemi di saturazione, obbliga la CPU a "smuoversi" dallo stato di qiuetanza (idle..dallo stato C allo stato C0) per processare i pacchetti in arrivo. Se ci troviamo in una posizione molto vicina all'AP, possiamo ottenere piu' risparmio energetico accedendo alla configurazione del nostro router e impostando l'intervallo di beacon su valori piu' alti.
    Anche il firmware, caricato dal dispositivo durante l'inizializzazione del modulo, varia i C-states della CPU inviandole direttamente degli interrupts ogni qual volta viene rilevato un evento.
    La soluzione e' quella di caricare l'interfaccia manualmente, con:

    sudo ifconfig wlan0 up

    Sono state realizzate alcune patch, a questo riguardo, per le schede ipw2100 e ipw2200. Nelle future release del kernel verranno adottate di default.

    Terminiamo questo approfondimento sul power management con il bluetooth.
    Allo stesso modo, lasciare abilitata un interfaccia radio come il BT puo' influire negativamente sia sulle prestazioni del nostro laptop che sulla sicurezza.

    dyve@n200:~$ hciconfig
    hci0: Type: USB
    BD Address: 00:1D:D9:F5:8C:0F ACL MTU: 1017:8 SCO MTU: 64:8
    UP RUNNING PSCAN ISCAN
    RX bytes:960 acl:0 sco:0 events:26 errors:0
    TX bytes:354 acl:0 sco:0 commands:26 errors:0

    dyve@n200:~$

    Se il nostro dispositivo e' interno al computer, e se quest'ultimo non e' dotato di uno switch hardware, l'unico modo per disabilitare completamente l'interfaccia hci0 e' quello di rimuovere i driver interessati:

    sudo hciconfig hci0 down
    sudo rmmod hci_usb

    [OT]

    Image Hosted by ImageShack.us

    Se vogliamo farci del male (anche fisico) questo modello di adattatore wireless da ben 500mW di potenza di output potrebbe mandare a quel paese tutte le tecniche di PM qui descritte..(vero RedShadow??). Da usarsi solamente dietro ricetta medica...(il rischio di mutazioni genetiche e' molto alto).
    :D

  • LessWatts Projects
  • 27 02.2008

    Tasti multimediali Acer - precisazione

    Image Hosted by ImageShack.us

    Mi e' giunta via mail, da un lettore del blog Andrea De Iacovo, una spiegazione ulteriore riguardo i tasti multimediali sui notebook Acer, con allegati due files di esempio. La pubblico per dar modo a tutti di sperimentare questo workaround:

    Allora: ti riporto un po' di informazioni per quanto riguarda i tasti multimediali dei notebook acer.

    Prima di tutto ti spiego il problema.
    L'utilizzo delle interfacce event per la gestione dei mouse è particolarmente sconsigliato in quanto i link /dev/input/event* cambiano molto facilmente fra un riavvio e l'altro. Da quello che ho potuto notare il problema si presenta più frequentemente con gli ultimi kernel della serie 2.6 (in particolare sui 2.6.23 e 2.6.24) ed è legato soprattutto alle operazioni di riavvio del pc e, in generale, allo shutdown eseguito dopo che il pc è stato messo in modalità di sospensione (o di ibernazione). Lo stesso man di evdev, inoltre, sconsiglia fortemente l'utilizzo delle interfacce event.

    Facendo un po' di prove sono , alla fine, riuscito a risolvere il problema. In allegato ti riporto il mio xorg.conf ed il file di configurazione di xbindkeys. Non badare, per quanto riguarda quest'ultimo file, al comando che utilizzo (specifico per rhythmbox) quanto, piuttosto, alla presenza del modificatore "Release" alla destra dei codici generati dal mouse.

    Spero che queste informazioni possano essere utili!

    Andrea De Iacovo

    Per capire di cosa si sta parlando, vi rimando all'howto precedente di Cristiano Bergoglio.

    27 02.2008

    Centershell - script

    Centershell e' uno script interessante che permette di lanciare una shell di Eterm, completamente "denudata" di menu e scrollbar e con trasparenza abilitata, nel centro del nostro desktop.. a seconda della risoluzione. La geometria di default e' impostata a 200x200, quindi ottimizzata per monitor a 1024x768, ed e' molto semplice adattarla alla nostra risoluzione modificando lo script con un editor di testo qualsiasi.
    Se qualcuno segue attivamente i progetti che si susseguono su kde-look o kde-apps, avra' senz'altro notato come questo script sia la fotocopia di uno precedente, ideato da Giancarlo Fringuello, con l'unica differenza nella geometria e nel comando attivato di default una volta aperto il terminale.

  • On-Desktop-Logs
  • Image Hosted by ImageShack.us

    In passato mi e' capitato diverse volte, specie sul forum Ubuntu-it, di leggere diversi howto per "incastonare" una shell come sfondo del desktop, ma mai nulla di specifico per kde.
    L'unico requisito e' l'installazione di Eterm, programma che troviamo nei nostri repository e che dovrebbe installare tutte le dipendenze necessarie in automatico: libast e imlib2.

    sudo apt-get install eterm

  • Download Centershell
  • Per avviare centershell.sh in automatico spostiamo lo script (gia' eseguibile) in ~/.kde/Autostart

    mv centershell.sh ~/.kde/Autostart

    Image Hosted by ImageShack.us

    Ammetto di non sapere nulla sull'opzione geometry, quindi "ad occhio" per una risoluzione di 1680x1050 (la mia) i valori dovrebbero essere attorno a 480x280, mentre 80x30 sono le dimensioni della shell di Eterm.
    Gia' che ci siamo, qui ci sono un sacco di temi per questa shell. L'installazione e' semplicissima:

    1- Scaricare il tema desiderato
    2- Creare (se non ci fosse) la directory:
    mkdir ~/.Eterm/themes
    3- Scompattare il tema all'interno
    4- Lanciare:
    Eterm -t nome_tema
    ;)

    26 02.2008

    Ksplasher - editor splashscreen per kde

    Image Hosted by ImageShack.us

    Ksplasher e' un idea molto originale per modificare i temi (su engine Moodin) del nostro splashscreen.
    Lo splashscreen, per non confonderci, e' l'immagine (animata) che si avvia immediatamente dopo aver effettuato il login. Possiamo trovare svariati temi a questo indirizzo.

    Basato sulle librerie python-pygame (SDL Bindings), Ksplasher permette non solo di modificare dei temi gia' esistenti, ma anche di crearne ex-novo. Data la novita', le opzioni sono ancora pochine e non c'e' un sistema per spostare i temi completati nella directory corretta, quindi va fatto manualmente.
    Prima di scaricare questa applicazione, prendendo spunto dall'howto allegato, riporto la spiegazione ufficiale qui di seguito:

  • Ogni tema va necessariamente scompattato nella directory di Ksplasher (solo un tema alla volta). All'avvio verra' chiesto se si vuole utilizzare questo tema per la manipolazione.
  • Per crearne uno nuovo bastera' digitare NEW (in maiuscolo)
  • Qualsiasi modifica apportata (posizione icone, testo) comporta la sovrascrittura del file Theme.rc (naturalmente parliamo del file di configurazione del tema che stiamo modificando)
  • Con i tasti "X" e "Y" allineiamo le icone su questi due assi. Ci verra' anche chiesto di inserire un valore (integer) per lo spazio tra le stesse.
  • Soltanto "Logging on as:" rappresenta l'etichetta configurabile, mentre "guest" verra' poi sostituito con l'etichetta corrispondente al nostro login-name (quindi non si puo' modificare)
  • Con il tasto "s" eseguiamo screenshoot che sara' automaticamente salvato come "preview.bmp". Utilizziamo GIMP per riscalarlo e rinominarlo "preview.png" in modo da utilizzarlo con il nostro tema.
  • Premiamo "ESC" o "q" per uscire dall'editor e aggiornare il file "Theme.rc" con le nuove coordinate. Copiamo quindi (da root) il folder contenente il tema nella directory /usr/share/apps/ksplash/Themes/
  • - Installazione -

    Installiamo il pacchetto python-pygame:

    sudo apt-get install python-pygame

  • Download Ksplasher v0.11
  • Scompattiamolo nella Home:

    unzip 75926-KSplasher-0.11.zip
    cd ~/KSplasher
    python ksplasher.py

    Tutto qua..non aspettiamoci chissa' cosa.
    :D
    Una nota negativa? si..IL LOGO da cambiare al piu' presto, prima ancora di aggiungere ulteriori features:

    img1

    Moodin-engine
    Ksplasher

    25 02.2008

    Script per installare Flightgear - Ubuntu -

    Image Hosted by ImageShack.us

    Guida originale e script ad opera di Francesco Brisa.

    Introduzione da Wikipedia:

    Flightegear è un progetto collaborativo con lo scopo di creare un sofisticato framework di Simulatore di volo free software. È sotto licenza GNU GPL disponibile per svariati sistemi operativi, fra cui Microsoft Windows (Win9x/ME/2000/XP), Linux, Mac OS X and Unix.
    Il motore di simulazione in FlightGear viene chiamato SimGear. È utilizzato sia come applicazione per l'utente finale sia come ricerca in ambito accademico, per lo sviluppo ed il raggiungimento di soluzioni in ambito di simulazione di volo.

    La personalizzazione del gioco la si può ben notare nei vari tipi di modelli di aerei che sono disponibili in FlightGear, dall'Aliante all'Elicottero, e dall' aereo di linea agli aerei da combattimento. Tutti questi modelli di aerei sono stati implementati da svariate persone.

    - Howto -

    lo script è stato fatto prendendo spunto da questo wiki e e questo altro.

    Mettendo insieme il tutto e facendo in modo che non si installasse mischiandosi tra le librerie di sistema.

    lo script fa uso per quanto è possibile delle librerie presenti nella
    distribuzione tramite apt-get (Vedi parte iniziale dello script) poi usa
    openscenegraph, simgear da cvs perché quelli presenti nei repository
    sono troppo vecchi per poter compilare fgfs da cvs.
    Fgfs 1.0 sarà comunque parte di Ubuntu 8.04.

    lo script è fatto in modo che, a parte la richiesta iniziale di password
    per apt-get, poi sia indipendente dall'utente, tutti i passaggi non
    richiedono più l'intervento di inserimento password per cvs o svn (Al
    contrario di quelli che sono nel wiki di flightgear)

    I vantaggi di fgfs 1.0 compilato così rispetto a quello nei repository è:

  • avere sempre le ultime novità
  • avere tutti gli aerei presenti (Nei repository ci sono solo gli aerei "stable")
  • permette di esportare un flusso video per essere registrato tramite mplayer
  • Vegetazione intensa (Necessità però di una scheda video recente con supporto buono allo shading mi pare)
  • Vedi anche:

  • Flightgear Wiki
  • teoricamente lo script dovrebbe funzionare bene anche su una debian
    recente (A parte il fatto che la chiamata ad apt-get viene fatta tramite
    sudo che funziona così solo sulle ubuntu)

    Lo script comunque è solo all'inizio, la prossima release includerà
    anche l'installazione dei tool di sviluppo per creare gli
    scenari/aeroporti etc... che sono molto difficili da installare (librerie
    vecchie e passaggi molto caotici, che "sporcano" anche il sistema!)

    - Installazione -

    Creare una directory qualsiasi e spostare lo script all'interno:

  • Download download_and_compile.sh.tar.bz2
  • mkdir /tmp/flightgear
    mv download_and_compile.sh.tar.bz2 /tmp/flightgear
    tar xjvf download_and_compile.sh.tar.bz2
    chmod +x download_and_compile.sh
    ./download_and_compile.sh

    L'installazione dura circa un paio d'ore, naturalmente si tratta di un tempo variabile.

    _________________

    A Francesco va il mio ringraziamento per aver fornito guida e script.
    :D

    24 02.2008

    Tasti multimediali Acer Aspire Gemstone

    Grazie a Cristiano Bergoglio (un lettore del forum), per avermi fornito questa guida all'impostazione dei pulsanti multimediali sui nuovi notebook Acer Aspire.
    Ve la propongo, su sua richiesta, in versione originale per innaugurare questa nuova categoria de " Le guide dei lettori".
    ;)

    Image Hosted by ImageShack.us

    Questo è il workaround definitivo per i 4 tasti multimediali dei notebook Acer
    Aspire con design Gemstone.

    I tasti in questione sono 4 ( in sequenza dall'alto in basso Play/pausa, Stop, Back e Forward ) e utilizzati piu' che altro per i player multimediali.

  • Primo passo: modificare il file /etc/X11/xorg.conf:
  • 1-da terminale dare:

    sudo kate /etc/X11/xorg.conf

    2-modificare aggiungendo in Section "ServerLayout" la riga:

    InputDevice "Synaptics Touchkeys"

    ..e modificando la riga del touchpad con

    InputDevice "Synaptics Touchpad"

    3-modificare aggiungendo in Section "InputDevice" le righe:

    Section "InputDevice"
       Identifier     "Synaptics Touchkeys"
       Driver         "evdev"
       Option         "SendCoreEvents" "true"
       Option         "Device" "/dev/input/event2"
       Option         "Protocol" "auto-dev"
       Option         "AlwaysCore" "off"
       Option         "SendCoreEvents" "true"
    EndSection

    ..e modificando righe del touchpad con:

    Section "InputDevice"
       Identifier     "Synaptics Touchpad"
       Driver         "synaptics"
       Option         "SendCoreEvents" "true"
       Option         "Device" "/dev/input/event3"
       Option         "Protocol" "auto-dev"
       Option         "HorizEdgeScroll" "0"
       Option         "SHMConfig" "on"
    EndSection

    4-salvare e chiudere.

  • Secondo passo: aprire Adept_manager ed installare i pacchetti xbindkeys e xmacro
  • Terzo passo: configurare xbindkeys
  • .

    Da terminale dare:

    sudo kate /usr/xbindkeysrc

    ..ed incollarvi dentro le seguenti righe:

    "echo "KeyStr F17" | xmacroplay :0"
    b:17


    "echo 'KeyStr F18' | xmacroplay :0"
    b:18

    "echo 'KeyStr F19' | xmacroplay :0"
    b:19

    "echo 'KeyStr F20' | xmacroplay :0"
    b:20

    salvare e chiudere.

    N.B: se si usano queste definizioni ( F17, F18, F19 ed F20 ) si può comandare
    agevolmente Amarok e Kaffeine che permettono di scegliere, come tutti i
    programmi seri KDE, qualsiasi tipo di shortcut da tastiera, ma in Mplayer e
    VLC, per esempio, si possono scegliere solo degli shortcut da tastiera
    predefiniti; quindi una soluzione potrebbe essere inserire invece dei vari
    F17 etc. dei tasti previsti anche in VLC e compagnia..

  • Quarto passo: rendere eseguibile xbindkeys.
  • Da terminale dare:

    sudo kate /usr/share/autostart/tasti.desktop

    ..ed incollarvi le seguenti righe:

    [Desktop Entry]
    Comment=
    Comment[it]=
    Encoding=UTF-8
    Exec=sh tasti.sh
    GenericName=tasti
    GenericName[it]=tasti
    Icon=exec
    MimeType=
    Name=tasti
    Name[it]=tasti
    Path=/usr/bin
    StartupNotify=true
    Terminal=false
    TerminalOptions=
    Type=Application
    X-DCOP-ServiceType=
    X-KDE-SubstituteUID=false
    X-KDE-Username=

    Salvare e chiudere.
    Da terminale dare:

    sudo kate /usr/bin/tasti.sh


    ..ed incollarvi le seguenti righe:

    # bin/sh
    xbindkeys -f /usr/xbindkeysrc
    sleep 10
    exit

    Salvare e chiudere.
    Da terminale dare:

    sudo chmod +x /usr/bin/tasti.sh

  • Quinto passo: configurare gli shortcut da tastiera per ogni programma multimediale.
  • _________________________________________

    Con questa procedura si sistemano i tasti per ogni utente, perché xbindkeyssara' attivo globalmente.
    Ovviamente ogni utente dovrà configurarsi gli shortcut all'interno dei suoi programmi multimediali.

    N.B: Unico piccolo difetto.. eventuali mouse e tastiere esterni devono
    essere collegati al notebook solo quando compare la schermata KDM di login e
    non all'accensione; se si riavvia il notebook bisogna scollegare dette periferiche prima della riaccensione.

    Lo schema di principio è:

    - Per qualche motivo lo xorg.conf si configura maluccio da solo e
    fonde gli eventi dei tasti multimediali probabilmente con quelli del touchpad
    perché quei tasti sono un secondo touchpad ( sono tasti a sfioramento
    illuminati di blu ) quindi bisogna separargli gli eventi a cui puntare

    - Si deve puntare lo xorg.conf ad event 2 ed event 3.
    Se si collegano mouse e tastiere esterni gli events cambiano numerazione ( mette prima gli
    esterni e dopo gli interni ). Ecco perché attacare roba del genere esterna
    dalla schermata di login in poi ( ho provato a lavorare con le regole UDEV
    per automatizzare ma non sono arrivato a nulla )

    - Si deve gestire il touchpad dei tasti multimediali con il driver evdev
    perché così verranno restituiti degli eventi bottone mouse n. 17, 18, 19 e 20
    che mai nessun mouse reale avrà ed xbindkeys non andrà mai ad incasinare i
    mouse "veri".

    - Si usa xbindkeys per dire ad evento bottone mouse n. 17, 18 etc. esegui un
    certo comando secondo quanto specificato nel file di configurazione
    xbindkeysrc ( ecco spiegato il comando xbindkeys -f /usr/xbindkeysrc ).

    - Si usa xmacro per avere il comando xmacroplay che simula la pressione di un
    tasto della tastiera ( questo perché gli shortcut si possono generare solo da
    eventi tastiera e non da eventi mouse )

    - Si crea il file tasti.desktop ed il tasti.sh per automatizzare l'avvio di
    xbindkeys a tutti gli utenti ( già creati o di futura creazione ) e così funziona perché sono processi attivati dopo il login ( da come ho capito ).

    23 02.2008

    Un piccolo ma significativo contributo..

    Image Hosted by ImageShack.us

    Leggo dal blog di A. Seigo di un problema ( facilmente risolvibile, ma allo stesso tempo molto contorto) che riguarda principalmente Krunner, il launcher ufficiale di kde4.

    Come evidenziato, se ad esempio proviamo ad avviarlo col classico alt+f2 e inseriamo la parola chiave "keyboard" perche' vogliamo configurare delle semplici shortcuts, otteniamo una serie di "match" che riguardano pero' i moduli (kcm) del kde3, mentre con la parola chiave "shortcut" non accade nulla (invece dovrebbe ritornare il modulo relativo al pannello di controllo).
    Ebbene questo e' un problema di sintassi del servizio KServiceTypeTrader, che non affligge solamente Krunner ma anche il kcontrol, system settings e gli strumenti di ricerca desktop come beagle o strigi. A fronte di questo e' gia' partito un commit in attesa di approvazione (kde-core-devel) che dovrebbe risolvere per lo meno la keyword "shortcut".

    Ma "keyboard" non funziona..perche'?

    because "keyboard" does not appear in the keywords for that control panel

    Nel file di configurazione .desktop per quel pannello non compare, alla stringa keywords=, la parola chiave che stiamo cercando.
    Seigo esorta ad armarsi di un buon editor di testo e un dizionario per eseguire a mano l'audit (la modifica) tali files di configurazione, che normalmente si trovano in:

    $PREFIX/share/kde4/services/

    Evidenziabili con:

    grep kcmshell4 *desktop

    All'interno di questa directory.

    Questi files rappresentano i vari pannelli di controllo "aggregati" in kcontrol e in system settings.
    E' stato realizzato un tarball contenente tutti i pannelli dei vari centri di controllo, scaricabile a questo indirizzo.

    NB: E' consigliabile eseguire prima un backup di $PREFIX/share/kde4/services/ per evitare spiacevoli sorprese.
    Una volta scompattato l'archivio, bisogna passare in rassegna tutti i files cercando la riga che corrisponde al lancio del pannello ES:

    Exec=kcmshell4 xserver

    ..Lanciare solamente quello da terminale:

    kcmshell4 xserver

    ..e controllare a cosa si riferisce questo pannello (per pensare all'integrazione di eventuali parole chiave in aggiunta a quelle gia' presenti)
    Modificare quindi le parole chiave contenute aggiungendone (o togliendone) rispettando la sintassi con l'introduzione di una virgola tra l'una e l'altra.
    Salvare un file "diff" con un pratico tool a riga di comando ES:

    diff -u kcms.orig kcms > kcm_keyword_changes.diff

    ..e spedire via mail la copia di backup (kcm_keyword_changes.diff)

    Oltre ad avere contribuito a rendere piu' accurata la ricerca dei pannelli, verremo anche menzionati nel changelog delle future versioni di kde4 via SVN, come nella tradizione:
    :D
    Un piccolo momento di gloria tutto per noi:

    we have a general policy of including the contributors name in the commit log message when merging contributions, so this is your chance to get your name in KDE's hall of fame commit logs. ;)

    22 02.2008

    Itask-ng su e17

    [youtube tH9X-Rk2g48]

    Ok .. dopo la profonda delusione di kde4, in questi giorni sono andato a rinfrescare le mie conoscienze su di un ambiente desktop da me utilizzato qualche anno fa, in alternativa a kde3 (un DE di "riserva" fa sempre comodo)..giusto per essere pronto ad eventuali "scazzi" del momento e non farmi trovare impreparato nel caso decidessi di troncare la mia avventura pluriennale con la Grande Kappa.

    Parlo naturalmente di Enlightenment (aka e17), e voglio cogliere questa occasione per aggiornare la precedente guida realizzata su misura per Kubuntu Feisty Fawn 7.04, lasciando da parte lo script easy_e17 in favore dei piu' confortevoli pacchetti debian.
    Per installare e17 su Kubuntu (o Ubuntu) 7.10 e' sufficiente copiarsi i seguenti repository nel file /etc/apt/sources.list, ed importare la chiave pubblica:

    sudo kate /etc/apt/sources.list

    # e17
    deb http://e17.dunnewind.net/ubuntu gutsy e17

    Chiave pubblica:

    wget http://lut1n.ifrance.com/repo_key.asc
    sudo apt-key add repo_key.asc

    Aggiorniamo la lista ed installiamo il core:


    sudo apt-get update
    sudo apt-get install e17

    Non e' necessario creare alcuno script per l'avvio di e17 perche' il file di sessione viene autogenerato e aggiunto alla lista del nostro login manager (kdm o gdm).

    Ora che abbiamo installato Enlightenment, veniamo al dunque. Esiste una splendida dock , o meglio..modulo-taskbar per e17, che si chiama Itask-ng e che proviene dal vivaio Google-code.

    - Installazione -

    Innanzitutto abbiamo bisogno delle librerie di sviluppo perche' dobbiamo compilare itask-ng da sorgenti. Dato che non avevo precedenti installazioni, credo siano sufficienti quelle presenti nella lista seguente. Non e' da escludere percio' la necessita' di installarne altre..a tal proposito basta far riferimento agli errori che di volta in volta riceviamo nell'output della compilazione:

    sudo apt-get install libevas-dev libedje-dev libefreet-dev enlightenment-dev

    Otteniamo i sorgenti da repository SVN:

    svn checkout http://itask-module.googlecode.com/svn/trunk/itask-ng

    ..Oppure scarichiamo l'ultima release stabile da questo indirizzo:

  • Download Itask-ng
  • NB: Se il link non dovesse funzionare, seguiamo quest'altro indirizzo.

    Supponiamo di avere scaricato la versione itask-ng-0.2.4.tar.gz.
    Scompattiamo il tarball nella /Home (qui ci vorrebbe un alias per tutte le volte che l'ho scritto..LOL):

    tar xvfz itask-ng-0.2.4.tar.gz
    cd ~/itask-ng

    Lanciamo l'autogen.sh che a sua volta lanciera' il configure:

    ./autogen.sh
    make
    sudo make install

    Al termine della compilazione, molto probabilmente, sara' necessario eseguire questa piccola modifica (che sul wiki ufficiale e' spiegato in maniera errata):

    sudo mkdir ~/.e/e/modules/itask-ng/linux-gnu-i486
    sudo cp -v ~/.e/e/modules/itask-ng/linux-gnu-i686/module* ~/.e/e/modules/itask-ng/linux-gnu-i486

    NB: in alcuni casi la directory /itask-ng viene rinominata solamente /ng.

    Si tratta, in poche parole, di creare una nuova directory chiamata linux-gnu-i486 e spostarci dentro le librerie che invece sono state generate in una directory sbagliata (linux-gnu-i686). Si puo' eseguire questa operazione anche con il nostro filemanager se dovessimo trovare difficolta' via terminale.
    Adesso non ci rimane che aggiungere il modulo e configurarlo (nel video e' mostrata la dock di default).
    :D

    Un ultima cosa. Per utilizzare itask-ng con un composite manager (ecomorph, bling etc..):

    enlightenment_remote -use-composite-set 1

    ..e successivamente abilitiamo il modulo.

    Se vogliamo disinstallare Itask-ng sara' sufficiente lanciare questo comando:

    rm -r ~/.e/e/modules/itask-ng/

    Link Utili:

  • Wiki itask-ng (spiegazione aggiuntiva per l'installazione di e17 tramite script)
  • Wiki e17 Ubuntu Gutsy
  • Download alternativo
  • Tema utilizzato nel video:

  • Blue-theme