[NC10] Mappare i restanti tasti FN non ancora funzionanti
Posted: 24 Feb 2009, 13:35
Per abilitare tutti i tasti FN sul nostro NC10 basta installare un kernel aggiornato e modificare un file di HAL (Questo è l'howto).
Tuttavia, anche se i tasti sono tutti abilitati, in Ubuntu 8.10 alcuni non sono comunque mappati di default. Vediamo quindi come configurarli.
Mosterò solo come mappare i tasti FN-F5 e FN-F8, in modo da replicare le stesse funzionalità che hanno sotto windows xp. Per tutti gli altri tasti funziona allo stesso modo, basta adattare i comandi che seguono alle proprie necessità. Potrete mappare qualsiasi tasto (non solo quelli FN) a qualsiasi programma o script che volete.
Cominciamo col tasto FN-F5, che abilita/disabilita la retroilluminazione dello schermo (notare che se si usa il mio repository è già mappato, lascio comunque qui le istruzioni come esempio per gli altri tasti).
Prima di tutto, dobbiamo installare il pacchetto xbacklight dal gestore pacchetti perchè è necessario per il corretto funzionamento dello script che useremo.
Una volta installato, scarichiamo lo script, lo rendiamo eseguibile e lo mettiamo in /usr/local/bin.
Ora, lo mappiamo al tasto FN-F5 con i seguenti comandi:
Il primo specifica il comando /usr/local/bin/lcdonoff.sh nella posizione command_1, il secondo abilita il tasto XF86Launch1 (cioè FN-F8) a lanciare il comando 'command_1' quando premuto.
Fatto. Niente di difficile, eh?
Ora il tasto FN-F8, che cambierà il governor della CPU (ondemand, performance o powersave). Come i nomi già suggeriscono, ondemand è quello di default e permette al processore di modificare la frequenza di lavoro quando necessario, performance forza il processore a restare sempre sulla frequenza massima, powersave forza il processore sempre alla frequenza minima.
Scarichiamo lo script, lo rendiamo eseguibile e lo mettiamo in /usr/local/bin (come al solito).
Per funzionare avrà bisogno del pacchetto libnotify-bin, quindi assicuriamoci che sia installato. Inoltre, avrà bisogno dei diritti di amministrazione, quindi useremo sudo. Dato che non vogliamo che ci venga richiesta la password ogni volta che vogliamo modificare il governor della CPU, dobbiamo creare una regola per sudo che ci permetta di avviare lo script senza che ci venga richiesta alcuna password (esattamente come abbiamo già fatto per la scheda wireless qui).
In un terminale, lanciamo il comando
per aprire il file di configurazione di sudo.
Andiamo alla linea
e subito sotto aggiungiamo questa linea:
Ora andiamo alla fine del file e aggiungiamo questa linea:
Usciamo (CTRL+x) e salviamo il file.
Grazie a questa nuova regola, tutti gli utenti che appartengono al gruppo admin possono avviare il comando CPUSCALING (e SOLO questo) con diritti amministrativi senza dover inserire la password.
Ora, mappiamo lo script al tasto FN-F8 con i seguenti comandi:
E abbiamo finito.
Se si preme il tasto FN-F8 una volta, appare un popup che mostra il governor attualmente in uso. Se si continua a premere il tasto, il governor viene cambiato.
Una piccola nota: lo script mostra i popup in inglese. Per cambiare la lingua, basta modificare le prima linee dello script con i messaggi in italiano.
Allo stesso modo è possibile mappare qualsiasi tasto a qualsiasi programma/script. Ad esempio, sul mio NC10 il tasto FN-F3 apre un terminale, FN-F7 avvia eclipse e FN-F8 avvia devhelp (personalmente non ho alcuna necessità di gestire i governor della CPU, lascio sempre quello ondemand. Ho preferito quindi usare il tasto per qualcos'altro ).
Questo è tutto. Per qualsiasi problema o per qualsiasi domanda, come al solito basta chiedere.
Tuttavia, anche se i tasti sono tutti abilitati, in Ubuntu 8.10 alcuni non sono comunque mappati di default. Vediamo quindi come configurarli.
Mosterò solo come mappare i tasti FN-F5 e FN-F8, in modo da replicare le stesse funzionalità che hanno sotto windows xp. Per tutti gli altri tasti funziona allo stesso modo, basta adattare i comandi che seguono alle proprie necessità. Potrete mappare qualsiasi tasto (non solo quelli FN) a qualsiasi programma o script che volete.
Cominciamo col tasto FN-F5, che abilita/disabilita la retroilluminazione dello schermo (notare che se si usa il mio repository è già mappato, lascio comunque qui le istruzioni come esempio per gli altri tasti).
Prima di tutto, dobbiamo installare il pacchetto xbacklight dal gestore pacchetti perchè è necessario per il corretto funzionamento dello script che useremo.
Una volta installato, scarichiamo lo script, lo rendiamo eseguibile e lo mettiamo in /usr/local/bin.
Ora, lo mappiamo al tasto FN-F5 con i seguenti comandi:
Code: Select all
gconftool-2 -s --type string /apps/metacity/keybinding_commands/command_1 '/usr/local/bin/lcdonoff.sh'
gconftool-2 -s --type string /apps/metacity/global_keybindings/run_command_1 XF86Launch1
Fatto. Niente di difficile, eh?
Ora il tasto FN-F8, che cambierà il governor della CPU (ondemand, performance o powersave). Come i nomi già suggeriscono, ondemand è quello di default e permette al processore di modificare la frequenza di lavoro quando necessario, performance forza il processore a restare sempre sulla frequenza massima, powersave forza il processore sempre alla frequenza minima.
Scarichiamo lo script, lo rendiamo eseguibile e lo mettiamo in /usr/local/bin (come al solito).
Per funzionare avrà bisogno del pacchetto libnotify-bin, quindi assicuriamoci che sia installato. Inoltre, avrà bisogno dei diritti di amministrazione, quindi useremo sudo. Dato che non vogliamo che ci venga richiesta la password ogni volta che vogliamo modificare il governor della CPU, dobbiamo creare una regola per sudo che ci permetta di avviare lo script senza che ci venga richiesta alcuna password (esattamente come abbiamo già fatto per la scheda wireless qui).
In un terminale, lanciamo il comando
Code: Select all
sudo visudo
Andiamo alla linea
Code: Select all
# Cmnd alias specification
Code: Select all
Cmnd_Alias CPUSCALING=/usr/local/bin/cpuscaling.sh
Code: Select all
%admin ALL=(ALL) NOPASSWD: CPUSCALING
Grazie a questa nuova regola, tutti gli utenti che appartengono al gruppo admin possono avviare il comando CPUSCALING (e SOLO questo) con diritti amministrativi senza dover inserire la password.
Ora, mappiamo lo script al tasto FN-F8 con i seguenti comandi:
Code: Select all
gconftool-2 -s --type string /apps/metacity/keybinding_commands/command_3 'sudo /usr/local/bin/cpuscaling.sh'
gconftool-2 -s --type string /apps/metacity/global_keybindings/run_command_3 XF86Launch3
Se si preme il tasto FN-F8 una volta, appare un popup che mostra il governor attualmente in uso. Se si continua a premere il tasto, il governor viene cambiato.
Una piccola nota: lo script mostra i popup in inglese. Per cambiare la lingua, basta modificare le prima linee dello script con i messaggi in italiano.
Allo stesso modo è possibile mappare qualsiasi tasto a qualsiasi programma/script. Ad esempio, sul mio NC10 il tasto FN-F3 apre un terminale, FN-F7 avvia eclipse e FN-F8 avvia devhelp (personalmente non ho alcuna necessità di gestire i governor della CPU, lascio sempre quello ondemand. Ho preferito quindi usare il tasto per qualcos'altro ).
Questo è tutto. Per qualsiasi problema o per qualsiasi domanda, come al solito basta chiedere.